2.2. Use of Sequence Numbers for Message ID (Message ID のシーケンス番号)
2.2. Use of Sequence Numbers for Message ID (Message ID のシーケンス番号)
すべての IKE メッセージは固定ヘッダの一部として Message ID を含む. Message ID はリクエストとレスポンスの対応付けおよびメッセージの再送識別に用いられる. メッセージの再送は元のメッセージと同じ Message ID を使わなければならない.
Message ID は 32 ビット量であり, IKE_SA_INIT メッセージ (COOKIE や INVALID_KE_PAYLOAD などの応答による再試行を含む) ではゼロであり, 以降の各交換ごとに増分される. したがって最初の IKE_AUTH の対は ID 1, 2 番目 (EAP 使用時) は 2, となる. IKE SA 再鍵化後, 新 IKE SA では Message ID はゼロにリセットされる.
IKE Security Association の各エンドポイントは 2 つの "現在" Message ID を保持する: 自らが開始する次のリクエスト用と, 相手からのリクエストで次に期待するものである. これらのカウンタはリクエストの生成と受信に応じて増える. レスポンスは常に対応するリクエストと同じ Message ID を含む. したがって初期交換の後, 各整数 n は 4 種類の異なるメッセージの Message ID として現れうる: 元の IKE initiator からの n 番目のリクエスト, 対応するレスポンス, 元の IKE responder からの n 番目のリクエスト, 対応するレスポンス. 両端でリクエスト数が大きく異なれば両方向の Message ID は大きく食い違いうる. ただしメッセージヘッダの Initiator と Response フラグが 4 種のどれかを指定するため, メッセージに曖昧さはない.
本書全体で "initiator" は記述している交換を開始した当事者を指す. "original initiator" は常に現在の IKE SA をもたらした交換を開始した当事者を指す. 言い換えれば "original responder" が IKE SA の再鍵化を始めた場合, その当事者は新 IKE SA の "original initiator" となる.
Message ID は暗号的に保護されメッセージリプレイへの耐性を与える. Message ID が 32 ビットに収まらなくなる稀な場合, IKE SA を閉じるか再鍵化しなければならない.