R_A_RFC2409_5_13_2 - [Responder Test]Key Exchange Payload Format check(DH2)
End-Node
R_A_RFC2409_5_13_2.seq [-tooloption ...] -pkt R_A_RFC2409_5_13_2.def -tooloption : v6eval tool option
See also ike_common.def and ike_ipsec.def and ike_addr.def and ike_pkt_ph1_recv.def and ike_pkt_ph2_recv.def
HOST-2(TN):initiator
|3ffe:501:ffff:101::11
|
Net-y --+--------+------------------------ 3ffe:501:ffff:101::/64
|
|
ROUTER-1(TN)
|3ffe:501:ffff:100::11
|
Net-z --+--------+------------------------ 3ffe:501:ffff:100::/64
|
|3ffe:501:ffff:100:XXXX
NUT:responder
XXXX: EUI64 address
Verification Points
KE Payload Format
Next Payload field
Place the value of the Next Payload in the Next Payload field.
RESERVED Fields
All RESERVED fields in the ISAKMP protocol MUST be set to zero (0).
Place the value zero (0) in the RESERVED field.
Payload Length field
Place the length (in octets) of the payload in the Payload Length
field.
Key Exchange Data field
The Diffie-Hellman public value passed in a KE payload MUST be
the length of the negotiated Diffie-Hellman group enforced.
(In this test, this field length must be 1024 bit)
Configuration
Initiator and Responder IKE parameter
At least, following parameter must be included in proposal.
| Machine |
Src |
Dest |
Phase I |
Phase II |
| Ex mode |
Key Value |
Enc Alg |
Hash Alg |
Auth Method |
DH Group |
PH1 Lt |
IDx |
Proto ID |
Trans ID |
Mode |
Auth Alg |
PH2 Lt |
Upper |
| NUT |
NUT addr |
HOST-2 addr |
Aggressive |
IKE-TEST |
3DES |
SHA |
pre-shared key |
2 |
8 Hour |
NUT addr |
PROTO_IPSEC_ESP |
ESP_3DES |
Transport |
HMAC-SHA |
8 Hour |
any |
| HOST-2 |
HOST-2 addr |
NUT addr |
Aggressive |
IKE-TEST |
3DES |
SHA |
pre-shared key |
2 |
8 Hour |
HOST-2 addr |
PROTO_IPSEC_ESP |
ESP_3DES |
Transport |
HMAC-SHA |
8 Hour |
any |
*Ex Mode = Exchange mode
*IDx = identity payload(FQDN or user FQDN can also be chosen as IDx)
*Enc Alg = IKE Encryption Algorithm
*Hash Alg = IKE Authentication Algorithm
*Key Value = pre-shared key value
*PH1 Lt = Phase-1 Lifetime
*PH2 Lt = Phase-2 Lifetime
*Proto ID = Protocol Identifier
*Trans ID = Transform Identifier
*Mode = Encapsulation Mode
*Auth Alg = Authentication Algorithm
*Auth Method = Authentication Method
*DH Group = Diffie-Hellman Group
*Upper = Upper Layer Protocol
*NUT addr = NUT address
*HOST-2 addr = HOST-2 address
This test check is following.
AGGRESSIVE EXCHANGE
# Initiator(TN) Direction Responder(NUT)
(1) HDR; SA, KE, Ni, IDii ========>
(2) <======== HDR; SA, KE, Nr, IDir, HASH_R
Judgement (Check *1)
1. Send the first message from TN
In the first message (1), the initiator generates a proposal it
considers adequate to protect traffic for the given situation. The
Security Association, Proposal, and Transform payloads are included
in the Security Association payload (for notation purposes).
Keying material used to arrive at a common shared secret and random
information which is used to guarantee liveness and protect against
replay attacks are also transmitted. Additionally, the initiator
transmits identification information.
2. Receive the second message from NUT
In the second message (2), the responder indicates the protection
suite it has accepted with the Security Association, Proposal, and
Transform payloads.
Keying material used to arrive at a common shared secret and random
information which is used to guarantee liveness and protect against
replay attacks is also transmitted.Additionally, the responder
transmits identification information and the results of the agreed
upon authentication function(hash function).
The first message must be accepted.
And the second message's Key Exchange Payload Format must be base
on description of RFC(see above Verification Points).
And must conform to above Configuration.
Clean up SAD and SPD
RFC2408
5.3 Generic Payload Header Processing
When creating any of the ISAKMP Payloads described in sections 3.4
through 3.15 a Generic Payload Header is placed at the beginning of
these payloads. When creating the Generic Payload Header, the
transmitting entity (initiator or responder) MUST do the following:
1. Place the value of the Next Payload in the Next Payload field.
These values are described in section 3.1.
2. Place the value zero (0) in the RESERVED field.
3. Place the length (in octets) of the payload in the Payload Length
field.
4. Construct the payloads as defined in the remainder of this
section.
(omit)
5.7 Key Exchange Payload Processing
When creating a Key Exchange Payload, the transmitting entity
(initiator or responder) MUST do the following:
1. Determine the Key Exchange to be used as defined by the DOI.
2. Determine the usage of the Key Exchange Data field as defined by
the DOI.
3. Construct a Key Exchange payload.
4. Transmit the message to the receiving entity as described in
section 5.1.
(omit)
RFC2409
5. Exchanges
(omit)
The Diffie-Hellman public value passed in a KE payload, in either a
phase 1 or phase 2 exchange, MUST be the length of the negotiated
Diffie-Hellman group enforced, if necessary, by pre-pending the value
with zeros.
(omit)
perldoc V6evalTool
IKE.html IKE Test Common Utility