共通鍵暗号方式
暗号化・復号に同じ鍵を使う。鍵の配送問題(第三者に鍵が漏洩することなく鍵を交換することができるか)がある。これを解決するのが DH 法(ディフィー・ヘルマン法)。
AES(Advanced Encryption Standard)
ブロック暗号の 1 つ。
- 平文 M をブロック単位(例: 128 ビット)に分割する。
- 各ブロックに対して共通鍵 K を使い、暗号化または復号を行う。
公開鍵暗号方式
暗号化・復号に異なる鍵を使う。鍵の配送問題がない。共通鍵暗号方式に比べて処理が遅い。
ハイブリッド暗号方式
共通鍵の暗号化は公開鍵暗号方式を使用し、メッセージの暗号化は共通鍵暗号方式を使用する。公開鍵暗号方式は処理が遅いので共通鍵暗号方式の弱点である鍵配送のみで使用し、それ以降の通信は共通鍵暗号方式で行う。
DH 法
共通鍵暗号方式において共通鍵をやり取りすることなく共有する方法。離散対数問題が安全性を保証する。分類は公開鍵暗号方式に属する。
デジタル署名
メッセージの送信者の正当性を保証する。
- メッセージが改ざんされていないこと(完全性)
- メッセージの送信者を担保する(否認防止)
流れ
- 送信者は公開鍵を受信者に送信する。
- 送信者はメッセージをハッシュ化する。
- 送信者はハッシュ値を秘密鍵で暗号化(デジタル署名)する。
- 送信者はメッセージとデジタル署名を送信する。
- 受信者はメッセージをハッシュ化し、デジタル署名を公開鍵で復号する。
- 受信者はメッセージのハッシュ値とデジタル署名の復号結果を比較する。
ハッシュ値によって完全性が担保される。秘密鍵を持っているのは送信者だけなので、復号できることによって否認防止が担保される。
デジタル証明書
デジタル署名の流れ 1 はインターネットを通じて行われる。したがって公開鍵が正しいかどうか確認する必要がある。その手段がデジタル証明書。つまりデジタル証明書は公開鍵の正当性を保証する。
デジタル証明書の中に公開鍵が含まれているため、公開鍵はデジタル証明書を使って渡す。なおデジタル証明書の規格は X.509。
公開鍵基盤(PKI: Public Key Infrastructure)
公開鍵と秘密鍵の対応関係を保証する仕組み。デジタル証明書の中に認証局(CA)がある。認証局は公開鍵の信頼性を保証する第三者機関。
- サーバはデジタル証明書を発行するため、使用する公開鍵と申請情報を認証局に送る。
- 認証局はデジタル証明書を発行する(詳細は「デジタル証明書の発行」参照)。
- サーバはデジタル証明書をサーバにセットする。
- クライアントはサーバにアクセスし、デジタル証明書を取得する。
- クライアントはデジタル証明書からデジタル証明書を発行した認証局を確認し、信頼できる認証局であることを確認する。
デジタル証明書の発行
認証局は署名前証明書(証明書バージョンや有効期間、所有者名など)を作成し、それを認証局の秘密鍵で暗号化(デジタル署名)する。
CRYPTREC(Cryptography Research and Evaluation Committees)
電子政府推奨暗号の安全性を評価・監視し、暗号技術の適切な実装法・運用法を調査・検討するプロジェクト。