DO NOT USE A SERIAL NUMBER SYSTEM ON ITS OWN!
The best solution is for the trial version to distribute a version that doesn't even have the levels inside it or code etc. that are only in the "Full Registered" version, so it cannot be unlocked. Then give a website address to your site.
When the user registers, send them a secret URL for a page to download the full version, which they then enter a serial number into to unlock.
I have found from past experience that if someone has to pay for software they will not bother to crack it then redistribute it. Most people will not go to the effort of cracking a program if they already have the full version (they wouldn't gain much by doing it)
Exe packers are useless as for every major one out there, there is an equivilent decryptor.
As part of my ongoing project of working on a CDR protector, research into shareware programs showed that the ones least often defeated were those that lacked some essential features in the demo and the full version was a seperate download.
what is a signature?