# Functions
GenerateKeys returns a new key pair, with the private and public key encoded in PEM format.
Sign computes the hash of data and signs it with the private key, returning a signature in PEM format.
Verify computes the hash of data and compares it to the signature using the given public key.