next up previous contents
Next: 7.3 IPsecの実際 Up: 7.2 IPsecの概略 Previous: 7.2.5 セキュリティアソシエーション

7.2.6 鍵交換

ここまで見てきたように、IPsecでは秘密鍵を必ず用います。従って、 その鍵をどうやって第三者には分からないように共有するかが問題に なります(その他にSAのパラメータなども共有します)。IPsecでもっとも 複雑なのが、この鍵交換の仕組みであると言っても良いでしょう。 勿論、秘密鍵ですから、ネットワークを使わずに手紙などで交換する ということもありえます。例えば、固定した2点間での通信にIPsecを 用いたい場合などでは、手動でこの秘密鍵を設定することも考えられ ます。しかし、もしも、ホストがモバイルなどの場合には必ず一つの ノードは固定アドレスではないので、秘密鍵は最初から持っていたと しても、何らかの形でSAのパラメータを交換する必要がありますので、 結局はネットワーク上での秘密鍵やパラメータの安全な交換方法が必要 となります。こうしたネットワーク上での、しかも自動化された鍵交換 システムをIKE (Internet Key Exchange)と言います。

IKEでは、IPsecが利用できる前ですので、安全で認証された通信を自前で 確立させる必要があります(IKEでは UDP 500番を使います)。 これを、IKE SA と言い、IKE SA はIPsecの SAと違い、双方向に利用できます。IKE SAを確立するまでを、フェーズ 1と呼び、相互に認証を行うために以下のような方法が利用されます。

  1. 事前共有鍵認証(パスワード認証)
  2. 公開鍵認証
  3. 電子署名認証 or PKI(Public Key Infrastructure)

事前共有鍵は第三者に知られないようにしていなければなりませんが、 設定としては簡単です。

公開鍵認証では、事前に通信相手の公開鍵を入手して、設定しておく必要 があります。しかし、パスワード認証に比べて、公開鍵の公開は文字通り 簡単です。

PKIは、公開鍵暗号における公開鍵の管理や配布、廃棄まで含めて運用する ためのシステムやインフラなどを全て含んだ概念です。簡単には、公開鍵 証明書を安全に管理して、公開鍵での認証をパブリックに行うシステムだと 考えれば良いでしょう。しかし、当然こうしたシステムにおいては、 社会的に信頼しうる登録システムや認証システムが必要で、実際には 実装があってもそうした社会的なインフラ整備の問題があります。

次に、これらの相手との通信の安全性は秘密鍵を共有するIKE SAの確立に依存 しますが、そのために Diffie-Hellman 交換と呼ばれる方法を使って、 秘密鍵を共有します。このDiffie-Hellman交換は、離散対数問題というRSA暗号 で用いられている素因数分解と同じ位計算が難しいとされている問題を利用し、 安全でない通信路を使って秘密鍵の共有を可能にする方法です(通信路でやりとり される値だけを使って秘密鍵を計算することが非常に困難な方法です)。

以上のようにして、IKEでは相手との IKE SA を確立し、その上でIPsecに必要な 鍵や、パラメータを交換します(フェーズ2)。 そのために、IKE を使うと、SAの設定が自動化 されるために、手動での設定は必要ありません。



Noriyo Kanayama