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

1. Introduction (はじめに)

1. Introduction (はじめに)

IP Security (IPsec, IPセキュリティ) は, IPデータグラムに機密性, データ完全性, アクセス制御, およびデータ送信元認証を提供します。これらのサービスは, IPデータグラムの送信元と宛先の間で共有状態を維持することによって提供されます。この状態は, データグラムに提供される特定のサービス, サービスを提供するために使用される暗号化アルゴリズム, および暗号化アルゴリズムへの入力として使用される鍵などを定義します。

この共有状態を手動で確立することは, 拡張性に欠けます。したがって, この状態を動的に確立するプロトコルが必要です。この文書はそのようなプロトコル, すなわちInternet Key Exchange (IKE, インターネット鍵交換) を記述します。IKEのバージョン1はRFC 2407 [DOI], 2408 [ISAKMP], および2409 [IKEV1]で定義されました。IKEv2はこれらすべてのRFCを置き換えました。IKEv2は[IKEV2] (RFC 4306)で定義され, [Clarif] (RFC 4718)で明確化されました。この文書はRFC 4306およびRFC 4718を置き換えて更新します。IKEv2は後方互換性のないIKEプロトコルへの変更でした。対照的に, 現在の文書はIKEv2の明確化を提供するだけでなく, IKEプロトコルへの最小限の変更を行います。RFC 4306とこの文書との間の重要な違いのリストは, セクション1.7に示されています。

IKEは二者間で相互認証を実行し, 共有秘密情報を含むIKEセキュリティアソシエーション (IKE security association, SA) を確立します。この情報は, Encapsulating Security Payload (ESP, カプセル化セキュリティペイロード) [ESP]またはAuthentication Header (AH, 認証ヘッダー) [AH]のSAを効率的に確立するために使用でき, またSAがその通信トラフィックを保護するために使用する暗号化アルゴリズムのセットを含みます。この文書では, 「suite」または「cryptographic suite」という用語は, SAを保護するために使用される完全なアルゴリズムセットを指します。イニシエータは, 組み合わせてスイートにできるサポートされているアルゴリズムをリストすることにより, 1つ以上のスイートを提案します。IKEは, ESPまたはAH SAに関連してIP Compression (IPComp, IP圧縮) [IP-COMP]の使用を交渉することもできます。そのIKE SAを通じて設定されるESPまたはAHのSAを「Child SAs (子SA)」と呼びます。

すべてのIKE通信は, メッセージのペアで構成されます: リクエストとレスポンス。このペアは「exchange (交換)」と呼ばれ, 「request/response pair (リクエスト/レスポンスペア)」と呼ばれることもあります。IKE SAを確立する最初のメッセージ交換は, IKE_SA_INITおよびIKE_AUTH交換と呼ばれます。後続のIKE交換は, CREATE_CHILD_SAまたはINFORMATIONAL交換と呼ばれます。一般的なケースでは, IKE SAと最初の子SAを確立するために, 1回のIKE_SA_INIT交換と1回のIKE_AUTH交換 (合計4つのメッセージ) があります。例外的なケースでは, これらの交換のそれぞれが複数回ある場合があります。すべてのケースで, すべてのIKE_SA_INIT交換は他の交換タイプの前に完了しなければならず, 次にすべてのIKE_AUTH交換が完了しなければならず, その後, 任意の数のCREATE_CHILD_SAおよびINFORMATIONAL交換が任意の順序で発生する可能性があります。一部のシナリオでは, IPsecエンドポイント間で単一の子SAのみが必要であり, したがって追加の交換はありません。後続の交換は, 同じ認証されたエンドポイントのペア間で追加の子SAを確立し, ハウスキーピング機能を実行するために使用される場合があります。

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

IKEセッションの最初の交換であるIKE_SA_INITは, IKE SAのセキュリティパラメータを交渉し, ノンスを送信し, Diffie-Hellman値を送信します。

2番目の交換であるIKE_AUTHは, IDを送信し, 2つのIDに対応する秘密の知識を証明し, 最初の (そして多くの場合唯一の) AHまたはESP子SAのSAを設定します (AHまたはESP子SAの設定に失敗した場合を除き, この場合IKE SAは子SAなしで確立されます)。

後続の交換のタイプは, CREATE_CHILD_SA (子SAを作成) とINFORMATIONAL (SAを削除, エラー条件を報告, またはその他のハウスキーピングを実行) です。すべてのリクエストにはレスポンスが必要です。ペイロードを含まない (構文で要求される空の暗号化ペイロード以外) INFORMATIONALリクエストは, 生存性チェックとして一般的に使用されます。これらの後続の交換は, 初期交換が完了するまで使用できません。

以下の説明では, エラーが発生しないことを前提としています。エラーが発生した場合のフローの変更については, セクション2.21で説明します。