I'd imagine a good way that license keys might work would be to generate a cryptographic signature, using a private RSA key, then use the corresponding public key in the application to verify that signature.