There are a few easy things you can do to make it harder to crack. 

* Obfuscate module/method/variable names, instead of a method like 
"RegistrationCheck(username as
string, serial as string)" use something like "PreferenceStore(str1 as string, 
str2 as string)" or
some other non-obvious name

* Set up a bunch of dummy methods with obvious names, make them look fairly 
easy to crack. And
remember to call them somewhere in your app so they will get compiled. The more 
time someone
spends trying to figure out how to crack your program, the less likely it will 
be done. 

* Don't use a static serial number. If your serial number scheme requires 
people to enter an email
address and their full name (as you would receive in a paypal payment for 
example) it will deter
people from "sharing" the serial number publicly. At least until someone cracks 
your serial
generator.

* Obfuscate registration related text as this hints at where you registration 
code is in the
binary. "thank you" strings, "wrong serial number" strings etc. Any kind of 
obfuscation is better
than none.

Another idea is to use a registration server and have the program check with 
that server to make
sure the registration information is acceptable. Personally I think this is a 
bad idea in the long
run. It punishes those without an internet connection, and years after your 
company has gone out
of business, changed hands, etc, people won't be able to use the software that 
they paid for.



Hope that helps,
~ Tomis


--- Robert Carroll <[EMAIL PROTECTED]> wrote:

> Hi,
> 
> I've been spending some time recently trying to build a tighter  
> registration scheme to control access to the demo version of my  
> application. This has led to some concern over what information can  
> be read easily from the compiled application file. ie. serial numbers  
> etc.
>
> ...

__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 
_______________________________________________
Unsubscribe or switch delivery mode:
<http://www.realsoftware.com/support/listmanager/>

Search the archives of this list here:
<http://support.realsoftware.com/listarchives/lists.html>

Reply via email to