We have a very high profile windows application written in VB.NET with a php and MySQL database backend.
We release updates to our software weekly, and have implemented many security features such as SSL authentication, saving critical settings server side, code signing and obfuscation, etc, but every week the hackers/crackers get by our security and make a full version crack available for download. We want to put a stop to that.
The best solution that we have to this problem is the following:
Create a C++ loader that downloads an encrypted package after user authentication from our website - then dynamically compiles it on the fly and injects it into the exe.
If cracker doesn't know the keys to decrypt the chunked package to save it statically on the machine + change the routine to load it locally they will have no chance of cracking it.
If you have other suggestions please put them forward before bidding so we can discuss them. But trust me, we've tried MANY things and they've all been cracked, so the solution above seems to be the best one. There is a competing software in the market which uses that C++ loader solution and it has yet to be cracked.
The software usually gets cracked within 2 months of release, so payment will be made after 2 month if cracks don't come out, to make sure the software was protected enough. If a crack comes out within 2 months, the programmer is expected to refine the security until it is secure, with a one month waiting period each time to confirm no cracks.
I can hold 100% of the money in escrow with elance just to give you peace of mind.
We need a expert in this type of software development to make this work. Please post any questions, comments or concerns and they will be addressed.