Well, traditionally serial numbers are serial numbers. So, the first example from the production line has sn 0001, then the next 0002, and the next - 0003. I think most people can solve this algorithm.
I think that you are really asking about product keys that use a similar mechanism for signing a public key message - the product key is an encrypted value, the program has a public key that allows you to verify that the key is valid, but only the software provider has a secret key to "sign" the product key. The wikipedia article in digital signatures has a common mechanism; the only condition is that to enter the key by the user, it must be slightly shorter than PGP.
If you are limited to a very short serial number, then it is unlikely to be large enough to save the result of a typical signing mechanism, in which case it is quite common to use some kind of checksum on it. The disadvantage is that it is easy to reconstruct - security - this is because the algorithm is "secret", and not because of any cryptographic properties. Each product will have its own algorithm, and they usually crack quickly.
If you have 5 blocks of 5 characters, you have 36 ^ 25 combinations that are larger than 2 ^ 128, so you can use one of the standard digital signature algorithms that generates 128 bits and then converts this value to base 36.
Pete Kirkham Apr 03 '09 at 19:18 2009-04-03 19:18
source share