We sell our code to a company that they can run our code 100 times a month. We need to do a few things before giving the code to the company.
Hide our logic (we can hide our logic by code obfuscation)
excessive usage (no more execution of our code than 100 time)
redistribution (the company we sold the code to can't use it on more than 1 machine or give it to others)
Constraints: we do not have any connection or control over the code after we gave the code to the company so we cannot keep track of anything or block anything. Everything has to be done before giving the code.
Kindly share your thoughts and any suggestions on it.
No license, no MAC address binding solutions needed. Hint: the person who asked this question gave a hint that both excessive usage and redistribution have one solution.
Edit: We are selling our machine learning code to a company. We only want the code to be run a specific number of times and only on a specific machine. The company that we sold the code to has their firewalls implemented so that we cannot connect or make code to send any information back to us.
My question is how can we restrict excessive usage and redistribution of our code in this case.