ネットワーク暗号技術によるセキュリティ対策を理解する上での重要項目ネットワーク暗号技術によるセキュリティ対策を理解する上での重要項目である対象暗号、公開鍵暗号、一方向ハッシュ関数、メッセージ認証コード、デジタル署名、証明書を説明しています。※この文章は2009年5月に作成されました。また、文章の完全性、信頼性は保証しかねます。 1.対象暗号(共通鍵暗号) 特徴: 2者間で共通の鍵を持ち、その鍵で文章を暗号化、復号化する。 種類: DES、3DES、AES(Rijndael)など 問題点: 鍵を送付する際に鍵を傍受される可能性。 2.公開鍵暗号 特徴: 暗号鍵(公開鍵)と復号鍵(プライベート鍵)を分ける。まず受信者が暗号鍵と復号鍵を生成し、暗号鍵を送信者に送る。暗号化された文章は暗号鍵では復号できない。数十桁もの素数の組み合わせによって鍵を生成することで、暗号鍵-復号鍵を別のものにすることができ、また現実的な時間では解読不能なものとなっている。共通鍵を暗号化する際にも利用される(ハイブリッド暗号システム) 種類: RSAなど 問題点: 暗号化、復号化に時間がかかるため、大きな文章やファイルなどには使えない。また、攻撃者が送信者になりすまして文章の暗号鍵、復号鍵を作成した場合に、その鍵や文章がちゃんとした送信者からなのか攻撃者からなのか判別できなかったり(なりすまし)、オリジナル文章が改竄されたかどうかの判別ができない。 3.一方向ハッシュ関数 特徴: 文章の指紋のようなもので、オリジナルと同様の文章で改竄されたものではないということが分かる。どのような長さでも特定のビット数になる。 種類: MD4, MD5, SHA-1, SHA-256, SHA-384, SHA-512, RIPEMD-160など 問題点: なりすましの問題は解決できない。 4.メッセージ認証コード 特徴: 当事者同士でキーをもつような感じ。キーを使うことで、当事者同士のちゃんとした文章かが判別できる。 種類: IPsec, SWIFT, SSL/TSL 問題点: 第3者から見た場合に、ちゃんとした送信者から送られたものであるかどうかわからない。 5.デジタル署名 特徴: 普通の手書きの署名とは異なり、メッセージ毎に異なる値になる。公開鍵暗号とは逆で、プライベート鍵を署名用に使い、公開鍵を署名の検証用に用いる。メッセージに直接署名する方式とハッシュ値に署名する方式がある。これにより、改竄やなりすまし、否認(私送ってません、あなたが自分で送ったのではないですか?と言われること)の問題を解決できる。 種類: SSL/TSL、RSAなど 問題点: 文章の送信者と公開鍵の両方が「なりすまし」である可能性を否定できない。 6.証明書 特徴: 送信者が公開鍵が正しいものであるかどうかを証明するもの。公開鍵に認証局(CA: Certification Authority)がプライベート鍵でデジタル署名をしたものが証明書である。送信者は認証局の公開鍵で、受信者の公開鍵が正しい受信者からのものであることが確認できる(ややこしいので2も確認のこと)。証明書は認証局のリポジトリ(PKIのデータベース)から入手できる。 認証局: ベリサインなど 公開鍵基盤(PKI): PKCS, RFCなど 問題点: 認証局が信用できるかどうかは本人の気持ちに関わる。
|