Original Post
Hey guys, I've been writing a very simple serial key generator for fun (and in case I want to protect shareware I write in the future) and I've come to a dilema that perhaps some of the uber-smarty pants menz here could help me out with. Basically I have most of the key already generated with some basic information about the program (app id, key expiration, features unlocked) but I want this to be a general key that doesn't encode user information so I don't have to rely on user name for instance. What I'm wondering is what information can be encoded to ensure a unique key (or at least up to 32-bits of unique keys) while still looking seemingly random and being difficult to deciper. I suppose I could just CRC the index of the generated key (ie. 0, 1, 2, 3...) but that seems a little too predictable. I'd rather be able to have a number that is not part of a linear sequence but can be easily replicated when reading back the key (primes??). Please don't reply if you want to tell me things I already know, i.e. no protection is safe. I have more of a casual deterent idea in mind than save all software protection. Thanks very much for any input!