OpenPGP

概要

OpenPGPとは、公開鍵暗号を応用してファイルやメッセージを暗号化してやり取りするための技術標準の一つ。電子メール暗号化ソフト「PGP」の仕様を整理して標準化したもの。

オリジナルの「PGP」(Pretty Good Privacy)は1991年にフィリップ・ジマーマン(Philip R. Zimmermann Jr.)氏が開発・公開したソフトウェアで、公開鍵暗号と共通鍵暗号を組み合わせ、メッセージを効率よく暗号化して安全に配送することができる。OpenPGPはPGPの仕様を標準化したもので、様々なソフトウェア間で暗号メッセージを交換できるようにする。

OpenPGPが定義する暗号化の手順はPGPと同じで、ランダムに生成した共通鍵でメッセージを暗号化し、送信相手の公開鍵を取り寄せて共通鍵を暗号化、両者を合わせて相手に送信する。受信者は自分の秘密鍵で共通鍵を復号し、これを用いてメッセージ本体を復号する。

共通鍵暗号アルゴリズムとしてはIDEAやトリプルDES、CAST5、Blowfish、AES、Twofish、Camelliaが利用でき、公開鍵暗号アルゴリズムとしてはRSA、ElGamal暗号DSAECDSA楕円曲線DSA)、ECDH(楕円曲線ディフィー・ヘルマン鍵交換)などが利用できる。オプションでデータ圧縮を利用することができ、圧縮方式としてZip、zlibbzip2を選択できる。

最初の規格はIETFによって1998年にRFC 2440として公開された。その後、RFC 4880やRFC 5581、RFC 6637などによって更新され、暗号方式の追加などが行われている。

(2023.1.1更新)

電子メールの用語一覧