Well, I finished an English essay at 3 in the morning and still have some studying to do, but I was taking a break and thought I’d inform noobie programmers on how to make a secure serial.
Now, in the real world, there’s no such thing as a truly “secure” serial. Anything can be disassembled and anything can be figured out, hence why there is so much computer piracy going on because all you have to do is disassemble the program, follow the serial functions, and remake them yourselves. But, to make a secure serial or password, you want to do a few things.
When I say serial, I’m referencing a password in a sense, a password that allows the user to use the software. Some prefer to set a password as a way to use the program, all in good health, you just want to send a hash or whatever as the method of access, hash the password and check the hash against a stored hash. This way, the hacker could find the pass’ hash, but not know the actual password itself that generates that hash. You NEVER want to store a pass to the program in plain text, too easy for the hacker to read and use. Always use as many independent variables as you can (user entered information).
For serial generation, of course you’ll need a method to generate many different serials and with as little collisions as possible (generation of the same serial). The way this is done is by doing a few things, generating a random number, hashing, encrypting, etc etc. all done wifin the serial itself.
I supplied a serial generation program that uses a basic technique based off random generation, hashes, and XOR. You can make it even more complex as scrambling the bytes or changing positions or whatever.