3.14. Encrypted ペイロード
3.14. Encrypted Payload
Encrypted ペイロードは、暗号化されたペイロードデータを含む。このペイロードは、IKE SA の暗号化アルゴリズムと鍵を用いて暗号化される。
Encrypted ペイロードの形式は以下の通り:
1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Next Payload |C| RESERVED | Payload Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Initialization Vector (IV) | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | ~ Plaintext Encrypted Payload ~ | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | ~ Integrity Checksum Data ~ | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 18: Encrypted ペイロード形式
o Initialization Vector (IV) (可変長) - 暗号化アルゴリズムが必要とする初期化ベクトル。その長さは交渉された暗号化アルゴリズムによって決まる(例:AES-CBC の IV は 16 オクテット)。
o Plaintext Encrypted Payload (可変長) - 暗号化されたペイロードデータ。一連の暗号化された IKE ペイロードを含む。
o Integrity Checksum Data (可変長) - IKE SA の完全性アルゴリズムを用いて計算される完全性検証データ。その長さは交渉された完全性アルゴリズムによって決まる(例:HMAC-SHA1 は 12 オクテット、HMAC-SHA256 は 16 オクテット)。
注意:Encrypted ペイロードは、IKE_AUTH、CREATE_CHILD_SA、および INFORMATIONAL 交換における主要なペイロードである。IKE_SA_INIT 交換以降、すべての IKE メッセージ本体は Encrypted ペイロード内にカプセル化される。
暗号化の手順は以下の通り:
- 平文の構築:一連の IKE ペイロード(最初のペイロードヘッダから開始)。
- 必要に応じ、平文を暗号化アルゴリズムのブロックサイズの倍数となるようパディングする。
- IKE SA の暗号化アルゴリズムと鍵を用いて平文を暗号化する。
- IKE SA の完全性アルゴリズムと鍵を用いて、平文(または暗号文。アルゴリズムによる)の完全性検証値を計算する。
- IV、暗号文、および完全性検証データを連結して Encrypted ペイロードとする。
受信側は相当する鍵を用いて復号し、完全性を検証する。完全性検証が失敗した場合、そのメッセージを破棄しなければならない(MUST)。