PublicKeys and PrivateKeys are generated in matched pairs in PublicKeyEncryption. The PublicKey can decrypt anything encrypted with its PrivateKey and visa-versa, but the public key is unable to decrypt anything it encrypts itself and the private key is unable to decrypt anything it encrypts itself. This enables the creation of a Signature, in which a CryptographicHash of a message is created, encrypted with the private key and appended to the message. Anybody with the public key can decrypt the signature and run the cryptographic hash of a message (without the appended signature) and check that they are the same, but only someone with the private key could have created it. This is the basis of all PublicKey Cryptography.

Standards for the use of PublicKeys include SSL X509 and OpenPGP, systems include: OpenSSL, SSH, PGP and GPG.

Part of CategoryCryptography