PGP という言葉は、Pretty Good Privacy の略語です。これは、オンライン通信システムにプライバシー、セキュリティ、認証を提供するために設計された暗号化ソフトウェアです。 Phil Zimmerman は最初の PGP ソフトウェアの所有者であり、彼によると、プライバシーに対する社会的要求の高まりにより、このソフトウェアは無料で利用できるようになりました。
1991 年の創設以来、PGP の多くのバージョンが作成されてきました。1997 年に Phil Zimmerman は、オープン ソースの PGP 標準を作成する提案を Internet Engineering Task Force (IETF) に提出しました。その後、この提案は受け入れられ、暗号化キーとメッセージの標準形式を定義する OpenPGP プロトコルの作成につながりました。
PGP は当初、メールと添付ファイルを保護するためにのみ使用されていましたが、現在ではデジタル署名、フルディスク暗号化、ネットワーク保護などの幅広いユースケースに適用されています。
PGP は当初 PGP Inc が所有していましたが、後に Network Associates Inc に買収されました。 2010 年に Symantec Corp. が PGP を 3 億ドルで買収し、この用語は現在、同社の OpenPGP 互換製品に使用される商標となっています。
どのように機能するのでしょうか?
PGP は、公開キー暗号化を実装した最初の広く利用可能なプログラムの 1 つです。対称暗号化と非対称暗号化を使用して高いセキュリティレベルを実現するハイブリッド暗号化システムです。
テキストを暗号化する単純なプロセスでは、平文 (明確に理解できるデータ) が暗号文 (判読できないデータ) に変換されます。 ただし、ほとんどの PGP システムは、暗号化の前にプレーン テキスト ファイルを圧縮してデータを送信することで、ディスク容量と送信時間を節約し、同時にセキュリティも向上します。
ファイルを圧縮した後、実際の暗号化プロセスが開始されます。この時点で、圧縮されたプレーン テキスト ファイルは、セッション キーと呼ばれる使い捨てキーを使用して暗号化されます。このキーは対称暗号化を使用してランダムに生成され、各 PGP 接続セッションには一意のセッション キーがあります。
次に、セッション キー自体が非対称暗号化を使用して暗号化されます (1)。目的の受信者 (Bob) は、セッション キーを暗号化できるように、自分の公開キー (2) をメッセージ送信者 (Alice) に提供します。この手順により、アリスはセキュリティ条件に関係なく、インターネット経由でセッション キーをボブと安全に共有できるようになります。

セッション キーの非対称暗号化は、通常、RSA アルゴリズムを使用して行われます。 インターネットの大部分を保護するトランスポート層セキュリティ (TLS) プロトコルなど、他の多くの暗号化システムでは RSA が使用されています。
メッセージの暗号文と暗号化されたセッション キーが送信されると、ボブは自分の秘密キー (3) を使用してセッション キーを復号化し、そのセッション キーを使用して暗号文を元の平文に復号します。

暗号化と復号化の基本プロセスとは別に、PGP はデジタル署名もサポートしており、少なくとも 3 つの機能を果たします。
認証: ボブは、メッセージの送信者がアリスであることを確認できます。
誠実さ: ボブはメッセージが変わっていないことを確信できます。
否認防止: メッセージにデジタル署名した後、アリスは自分がメッセージを送信していないと主張することはできません。
ユースケース
PGP の最も一般的な用途の 1 つは、電子メールを保護することです。 PGP で保護された電子メールは、判読できない文字列 (暗号文) に変換され、対応する復号キーを使用しないと復号できません。仕組みはテキスト メッセージを保護する場合と実質的に同じです。他のアプリケーションの上に PGP を実装して、安全でないメッセージング サービスに暗号化システムを効果的に追加できるソフトウェア アプリケーションもいくつかあります。
PGP は主にインターネット接続のセキュリティを確保するために使用されますが、個々のデバイスの暗号化にも適用できます。これは、PGP がコンピュータまたはモバイル デバイスのディスク パーティションに適用される可能性があることを意味します。つまり、ハードドライブが暗号化されている場合、ユーザーはシステムを起動するたびにパスワードの入力を求められます。
メリットとデメリット
対称暗号化と非対称暗号化を組み合わせて使用することで、PGP を使用すると、ユーザーはインターネット上で情報と暗号化キーを安全に共有できます。 PGP は、ハイブリッド システムとして、非対称暗号化のセキュリティと対称暗号化の速度の両方のメリットを享受できます。 デジタル署名は、セキュリティと速度に加えて、データの完全性と送信者の信頼性も保証します。
統一された競争環境と PGP ソリューションの出現を可能にする OpenPGP プロトコルは、現在多くの企業や組織によって提供されています。 ただし、OpenPGP 標準に準拠するすべての PGP プログラムは相互に互換性があります。これは、あるプログラムで作成されたファイルとキーを他のプログラムでも問題なく使用できることを意味します。
欠点としては、PGP システムは、特に技術的な知識がほとんどないユーザーにとっては使いにくく、理解するのも簡単ではありません。また、公開鍵の長さが長いことは、多くの人にとって比較的不便であると考えられています。
2018 年に、EFAIL と呼ばれる重大な脆弱性が電子フロンティア財団 (EFF) によって公開されました。 EFAIL により、攻撃者は暗号化された電子メール内のアクティブな HTML コンテンツを悪用して、暗号化されていないバージョンのメッセージにアクセスすることができました。
しかし、EFAIL によって説明された懸念の一部は、1990 年代後半から PGP コミュニティによってすでに知られていました。 実際、これらの脆弱性は PGP 自体ではなく、メール クライアント側のさまざまな実装に関連しています。したがって、迷惑で誤解を招く見出しにもかかわらず、PGP は依然として非常に安全です。
まとめ
PGP はデータ保護に不可欠なツールとなっており、1991 年の創設以来、現在では幅広いアプリケーションで使用されており、多くの通信システムやデジタル サービス プロバイダーにプライバシー、セキュリティ、認証を提供しています。
2018 年に EFAIL の欠陥が発見されたことにより、プロトコルの実現可能性について大きな懸念が生じましたが、基盤となるテクノロジーは暗号的に堅牢で健全であると依然として考えられています。また、PGP の実装が異なれば、提供されるセキュリティのレベルも異なる場合があることにも注意してください。

