PGP は Pretty Good Privacy の略です。これは、オンライン通信システムにプライバシー、セキュリティ、認証を提供するように設計された暗号化ソフトウェアです。最初の PGP プログラムの考案者は Phil Zimmerman 氏で、彼によると、プライバシーに対する社会的な要求の高まりにより、PGP は無料で利用できるようになったそうです。

1991 年に作成されて以来、PGP ソフトウェアの多くのバージョンが作成されました。1997 年、Phil Zimmerman は、インターネット エンジニアリング タスク フォース (IETF) に、オープン ソースの PGP 標準の作成を提案しました。この提案は受け入れられ、暗号化キーとメッセージの標準形式を定義する OpenPGP プロトコルの作成につながりました。

PGP は当初、電子メール メッセージと添付ファイルのセキュリティ保護にのみ使用されていましたが、現在ではデジタル署名、フルディスク暗号化、ネットワーク保護など、幅広い用途に適用されています。

PGP は当初 PGP Inc という会社が所有していましたが、後に Network Associates Inc に買収されました。2010 年に Symantec Corp. が 3 億ドルで PGP を買収し、現在この用語は同社の OpenPGP 準拠製品に使用される商標となっています。


どのように機能しますか?

PGP は、公開鍵暗号化を実装した最初の広く利用可能なソフトウェアの 1 つです。これは、対称暗号化と非対称暗号化の両方を使用して高度なセキュリティを実現するハイブリッド暗号システムです。

テキスト暗号化の基本的なプロセスでは、プレーンテキスト (明確に理解できるデータ) が暗号テキスト (判読できないデータ) に変換されます。ただし、暗号化プロセスを実行する前に、ほとんどの PGP システムではデータ圧縮が実行されます。プレーンテキスト ファイルを転送前に圧縮することで、PGP はディスク領域と転送時間の両方を節約し、セキュリティも向上します。

ファイルの圧縮に続いて、実際の暗号化プロセスが始まります。この段階では、圧縮されたプレーンテキスト ファイルは、セッション キーと呼ばれる使い捨てキーで暗号化されます。このキーは対称暗号化を使用してランダムに生成され、各 PGP 通信セッションには一意のセッション キーがあります。

次に、セッションキー(1)自体が非対称暗号化を使用して暗号化されます。つまり、受信者(ボブ)はメッセージの送信者(アリス)に公開キー(2)を提供し、アリスがセッションキーを暗号化できるようにします。このステップにより、アリスはセキュリティ条件に関係なく、インターネットを介してボブとセッションキーを安全に共有できます。

What Is PGP?

セッション キーの非対称暗号化は、通常、RSA アルゴリズムを使用して行われます。インターネットの大部分を保護するトランスポート層セキュリティ (TLS) プロトコルなど、他の多くの暗号化システムでも RSA が使用されています。

メッセージの暗号文と暗号化されたセッションキーが送信されると、ボブは自分の秘密鍵(3)を使用してセッションキーを復号化し、そのセッションキーを使用して暗号文を元の平文に復号化できます。

What Is PGP?

暗号化と復号化の基本的なプロセスとは別に、PGP はデジタル署名もサポートしており、少なくとも次の 3 つの機能を果たします。

  • 認証: ボブはメッセージの送信者がアリスであることを確認できます。

  • 整合性: ボブはメッセージが改ざんされていないことを確信できます。

  • 否認不可: メッセージがデジタル署名された後、アリスは自分がそのメッセージを送信していないと主張できなくなります。


ユースケース

PGP の最も一般的な用途の 1 つは、電子メールのセキュリティ保護です。PGP で保護された電子メールは、判読不可能な文字列 (暗号文) に変換され、対応する復号化キーでのみ解読できます。テキスト メッセージのセキュリティ保護の場合も動作メカニズムは実質的に同じです。また、他のアプリの上に PGP を実装できるソフトウェア アプリケーションもいくつかあり、セキュリティ保護されていないメッセージング サービスに暗号化システムを効果的に追加できます。

PGP は主にインターネット通信のセキュリティ保護に使用されますが、個々のデバイスの暗号化にも適用できます。このコンテキストでは、PGP はコンピューターまたはモバイル デバイスのディスク パーティションに適用できます。ハード ディスクを暗号化すると、ユーザーはシステムを起動するたびにパスワードを入力する必要があります。


長所と短所

PGP は対称暗号化と非対称暗号化を組み合わせて使用​​することで、ユーザーがインターネットを介して情報と暗号化キーを安全に共有できるようにします。ハイブリッド システムである PGP は、非対称暗号化のセキュリティと対称暗号化の速度の両方の利点を享受します。セキュリティと速度に加えて、デジタル署名により、データの整合性と送信者の信頼性が保証されます。

OpenPGP プロトコルにより、標準化された競争環境が生まれ、現在では複数の企業や組織によって PGP ソリューションが提供されています。ただし、OpenPGP 標準に準拠するすべての PGP プログラムは相互に互換性があります。つまり、あるプログラムで生成されたファイルとキーは、別のプログラムでも問題なく使用できます。

欠点としては、PGP システムは、特に技術的な知識があまりないユーザーにとっては、使用したり理解したりするのがそれほど簡単ではありません。また、公開鍵の長さが長いため、多くの人が非常に不便だと考えています。

2018 年、電子フロンティア財団 (EFF) によって EFAIL と呼ばれる重大な脆弱性が公開されました。EFAIL により、攻撃者は暗号化された電子メール内のアクティブな HTML コンテンツを悪用して、メッセージのプレーンテキスト バージョンにアクセスできるようになりました。

しかし、EFAIL が述べた懸念の一部は、1990 年代後半から PGP コミュニティではすでに認識されており、実際、脆弱性は電子メール クライアント側のさまざまな実装に関連するものであり、PGP 自体に関連するものではありません。そのため、警告的で誤解を招くような見出しにもかかわらず、PGP は破られておらず、引き続き非常に安全です。


最後に

PGP は 1991 年の開発以来、データ保護に不可欠なツールであり、現在ではさまざまなアプリケーションで使用され、さまざまな通信システムやデジタル サービス プロバイダーにプライバシー、セキュリティ、認証を提供しています。

2018 年に EFAIL の欠陥が発見されたことで、プロトコルの実行可能性について大きな懸念が生じましたが、コア技術は依然として堅牢で暗号的に健全であると見なされています。異なる PGP 実装では、セキュリティ レベルが異なる可能性があることに留意してください。