Key generators (keygens) use reverse engineering to recreate registration algorithms. Software developers use mathematical validation to confirm purchase keys.