OpenPGP
オリジナルの「PGP」(Pretty Good Privacy)は1991年にフィリップ・ジマーマン(Philip R. Zimmermann Jr.)氏が開発・公開したソフトウェアで、公開鍵暗号と共通鍵暗号を組み合わせ、メッセージを効率よく暗号化して安全に配送することができる。OpenPGPはPGPの仕様を標準化したもので、様々なソフトウェア間で暗号メッセージを交換できるようにする。
OpenPGPが定義する暗号化の手順はPGPと同じで、ランダムに生成した共通鍵でメッセージを暗号化し、送信相手の公開鍵を取り寄せて共通鍵を暗号化、両者を合わせて相手に送信する。受信者は自分の秘密鍵で共通鍵を復号し、これを用いてメッセージ本体を復号する。
共通鍵暗号アルゴリズムとしてはIDEAやトリプルDES、CAST5、Blowfish、AES、Twofish、Camelliaが利用でき、公開鍵暗号アルゴリズムとしてはRSA、ElGamal暗号、DSA、ECDSA(楕円曲線DSA)、ECDH(楕円曲線ディフィー・ヘルマン鍵交換)などが利用できる。オプションでデータ圧縮を利用することができ、圧縮方式としてZip、zlib、bzip2を選択できる。
最初の規格はIETFによって1998年にRFC 2440として公開された。その後、RFC 4880やRFC 5581、RFC 6637などによって更新され、暗号方式の追加などが行われている。
(2023.1.1更新)