Trying to find the best way to protect a .NET dll.
Yes - I know there are many obfuscators / encryptors which will prevent decompilers from retrieving the source code.
However, in addition to that - (btw, would like to hear feedback about those obfuscators as well) - I would like to set an expiration for the dll. This dll is a development helper which will be provided to freelance developers working with us. However, after a certain period of time, i'd like that dll to be useless for them, and they will need a new version. So basically they wouldn't get it "forever".
Options we've thought of:
1. Expire according to date & time - but worried about methods of hacking this, such as changing computer's time & date - or perhaps even other methods exist?
2. Need to activate against our server on every run - if you think this is a good method, please suggest how to do it in the best way to prevent hacking. Don't forget it will be developers using this dll!!...
If you guys have any other ideas, by all means let me know!