メインコンテンツまでスキップ

1. Introduction (はじめに)

1. Introduction (はじめに)​

IP Security (IPsec) は, IP データグラムに対して機密性, データ完全性, アクセス制御, データソース認証を提供する. これらのサービスは, IP データグラムのソースとシンクの間で共有状態を維持することによって提供される. この状態は, 他にも, データグラムに提供される具体的なサービス, サービス提供に用いる暗号アルゴリズム, 暗号アルゴリズムへの入力として用いる鍵などを定義する.

この共有状態を手作業で確立するのはスケールしない. したがって, この状態を動的に確立するプロトコルが必要である. 本ドキュメントはそのようなプロトコル, すなわち Internet Key Exchange (IKE) を記述する. IKE のバージョン 1 は RFC 2407 [DOI], 2408 [ISAKMP], 2409 [IKEV1] で定義された. IKEv2 はこれらすべての RFC に取って代わった. IKEv2 は [IKEV2] (RFC 4306) で定義され, [Clarif] (RFC 4718) で明確化された. [RFC5996] は RFC 4306 と 4718 に取って代わり更新した. 本ドキュメントは RFC 5996 に取って代わる. RFC 4306 に記載の IKEv2 は, 後方互換でない IKE プロトコルへの変更であった. RFC 5996 は RFC 4306 を改訂し, IKEv2 の明確化を行い, IKEv2 プロトコルへの変更は最小限にとどめた. 本ドキュメントは RFC 5996 に取って代わり, Internet Standard への前進にふさわしいようわずかに改訂する. RFC 4306 と 5996 の間の重要な差異の一覧は第 1.7 節に, 本ドキュメントと RFC 5996 の差異は第 1.8 節に示す.

IKE は当事者間で相互認証を行い, Encapsulating Security Payload (ESP) [ESP] または Authentication Header (AH) [AH] の SA を効率的に確立するのに用いられる共有秘密情報と, それらの SA が運ぶトラフィックを保護する暗号アルゴリズムの集合を含む IKE Security Association (SA) を確立する. 本ドキュメントでは, 用語 "suite" または "cryptographic suite" は, SA を保護するために用いるアルゴリズムの完全な集合を指す. イニシエータは, サポートするアルゴリズムを列挙してミックスアンドマッチ方式でスイートに組み合わせることにより, 1 つ以上のスイートを提案する. IKE は ESP または AH SA に関連して IP Compression (IPComp) [IP-COMP] の利用も交渉できる. その IKE SA を通じて確立される ESP または AH の SA を本ドキュメントでは "Child SA" と呼ぶ.

すべての IKE 通信はメッセージのペア, すなわちリクエストとレスポンスから成る. このペアは "exchange" と呼ばれ, "request/response pair" と呼ばれることもある. IKE SA を確立する最初の 2 つのメッセージ交換は IKE_SA_INIT 交換と IKE_AUTH 交換と呼ばれ, それ以降の IKE 交換は CREATE_CHILD_SA 交換または INFORMATIONAL 交換と呼ばれる. 通常は, IKE_SA_INIT 交換と IKE_AUTH 交換がそれぞれ 1 回ずつ (合計 4 メッセージ) で IKE SA と最初の Child SA が確立される. 例外的に, これらの交換はそれぞれ複数回あってもよい. いずれの場合も, すべての IKE_SA_INIT 交換は他の交換タイプの前に完了しなければならない (MUST), 次にすべての IKE_AUTH 交換が完了し, その後 CREATE_CHILD_SA と INFORMATIONAL 交換を任意の順序で任意の回数行ってよい (MAY). 一部のシナリオでは IPsec エンドポイント間に単一の Child SA で足り, 追加の交換はない. 後続の交換は, 同じ認証済みエンドポイントのペア間で追加の Child SA を確立したり, ハウスキーピング機能を実行するために用いてよい (MAY).

IKE メッセージフローは常にリクエストに続くレスポンスから成る. 信頼性を確保するのはリクエスタの責任である. タイムアウト間隔内にレスポンスが受信されない場合, リクエスタはリクエストを再送するか (または接続を放棄するか) する必要がある.

IKE セッションの最初の交換 IKE_SA_INIT は, IKE SA のセキュリティパラメータを交渉し, nonce を送り, Diffie-Hellman 値を送る.

2 番目の交換 IKE_AUTH はアイデンティティを伝送し, 2 つのアイデンティティに対応する秘密の知識を証明し, 最初の (しばしば唯一の) AH または ESP Child SA の SA を設定する (AH または ESP Child SA の設定に失敗した場合を除き, その場合 IKE SA は Child SA なしで確立される).

後続の交換のタイプは CREATE_CHILD_SA (Child SA を作成) と INFORMATIONAL (SA を削除, エラー条件の報告, その他のハウスキーピング) である. すべてのリクエストにはレスポンスが必要である. 構文で要求される空の Encrypted ペイロード以外にペイロードのない INFORMATIONAL リクエストは, 生存確認によく用いられる. これらの後続交換は初期交換が完了するまで使用できない.

以下の説明では, エラーが発生しないと仮定する. エラー発生時のフローの変更は第 2.21 節に記載する.

Contents​