naprogramujes si, vymyslis si. Keby bol algoritmus znamy tak to overovanie tam vobec nemusis davat to by si kazdy vygeneroval kluc vlastny.
Mozes si vymyslet cokolvek nejake xory rotacie pricitavanie atd.
Serioznejsie (podlozene vedeckym a matematickym backgroundom) sa to da tak ze napr. zakryptujes nejake poradove cislo pomocou AES (alebo 3DES, blowfish, janeviem, pozor na patenty!), privatny kluc by som mal len ja, verejny kluc by bol v programe tym by sa to dekryptovalo a vznklo by poradove cislo licencie. Tie by si vytvaral nejakym svojim tajnym sposobom aby t onebolo tak jednoduche t.j. nie 000001, 000002 ale napr. ze by som to poradove cislo rotoval dolava najprv potom tam nieco pricital, a XOR-ol to nejakym danym cislom a potom zas rotoval zas neico pricital a zas xorol. To je uplne vratna operacie (pri dekodovani xor a odratat axor a odratat). A pri overovani licencie by som potom testoval ze ci vysledok zodpoveda mojmu formatu napr. ze to uricte je mensie jak 1000000 ale celkovo by som to cislo urobil napr. 20ciferne apod.To by malo stacit na to aby ani po dekodovani AES z toho nikto nebol mudry :)
inac ked sa takto pytas tak asi nemas moc sajnu o zabezpecovani proti debuggingu takze ti to crackne do tyzdna hocktory rusky manik.