Friday, October 10, 2008

Obfuscate your code to protect software

Sometimes you want to obfuscate your code to protect your software, for example, protecting the serial number in your software. If you are using something like:

if (registrykey !=”3F5HFA43...”)

{

showDialogue(“wrong serial number”);

}

The cracker can find your serial number “3F5HFA43....” easily. An idea is to hide the data into algorithm, for example, the algorithm to search path in the maze:

If (registrykey!=mazPathFind())

//…

This will make the cracking harder.

IE6 and IE7 bug for Proxy NTLM authentication

We are using Squid as a proxy with NTLM authentication. There is a web site send 10K-100K POST requests for each page load. The IE6 and IE7 intermittently have the difficulties to load these pages. The further investigation shows some misbehavior of the IE. When the browser received “407 authentication Required” from the proxy, they should always send the request again. But that is not always happening in IE6 and IE7.