 RE: IP Protection Cpt. Vince Protecting IP falls into three categories. The basics are these: 1) IP that can be hacked by a casual user - Example: the user modifies an .ini file to gain features not intended to be allowed a simple user can do this with little knowledge. 2) IP that can be hacked by the enthusiast/hobbyist/professional - Requires more in-depth knowledge on how things work - Example: reading the code from memory, modifying the file to enable features, and reloading the code. 3) IP that can be hacked with expensive methods - Requires in-depth knowledge and sophisticated equipment. - Example: UV laser to disable the firmware lock bit. When protecting your IP from these hackers, you must determine who you are trying to thwart. Type 3 requires the highest level of prevention techniques: including (tiny) explosives to obliterate the IP upon tampering detection. Type 3 hackers are usually backed by organized criminals or government agencies with plenty of funding. IP protected against type 3 hacking is usually reserved for very high-tech stuff. Almost all IP protection efforts falls into the type 2 category. The type 1 hacker is fairly easy to thwart in the design process, and usually pushes the IP protection methods into the type 2 category. The type 2 category goal is to make the reverse engineering process more costly than the re-development process that would be required to replicate your IP. Since your library will be a type 2, you must expect that there will be an attempt to hack into it since your intended users are knowledgeable enough to do so. Your goal is to make that reverse engineering process difficult, hence costly. In your case, you might think about non-standard methods of accessing data or functions just to make them more confusing. Possibly by using function pointers, an index table into data stores, etc. to make the process of stepping through your linked library complicated and a pain to decipher. This will most likely slow your IP solutions down. But again, it is the cost of reverse engineering versus the sale price of your library. If your library costs $15,000 then you'll have an impossible tasks preventing people from hacking into it. If it cost only $15, then your customer base won't bother with hacking it. Nothing is fully protected against hacking. Just make the cost of reverse engineering higher than your sale price... and remember, in some countries, the labor cost is cheap. This information was off the top of my head, so if you research IP protection methods, you'll find a more comprehensive explanation of these basic categories: and much better examples. --Cpt. Vince Foster 2nd Cannon Place Fort Marcy Park, VA P.S. I'm back from vacation, and just got caught up on the threads. I hope you all had a good Christmas, and plan on having a sane new-years celebration. |