Title

  Test IKEv2.EN.I.1.1.6.10: Response with inconsistent proposal for CHILD_SA
  Part A: (BASIC)


Purpose

  To verify an IKEv2 device properly handles a response with a SA payload which is
  inconsistent with one of its proposals.


References

  * [RFC 4306] - Sections 2.7 and 3.3


Test Setup

  * Network Topology
      Connect the devices according to the Common Topology.
  * Configuration
      In each part, configure the devices according to the Common Configuration.
  * Pre-Sequence and Cleanup Sequence
      IKEv2 on the NUT is disabled after each part.


Procedure

   NUT                  TN1
(End-Node)           (End-Node)
    |                    |
    |------------------->| IKE_SA_INIT request (HDR, SAi1, KEi, Ni)
    |                    | (Judgement #1)
    |<-------------------| IKE_SA_INIT Response (HDR, SAr1, KEr, Nr)
    |                    | (Packet #1)
    |                    |
    |------------------->| IKE_AUTH request (HDR, SK {IDi, AUTH, N, SAi2, TSi, TSr})
    |                    | (Judgement #2)
    |<-------------------| IKE_AUTH Response (HDR, SK {IDr, AUTH, N, SAr2, TSi, TSr})
    |                    | (Packet #2)
    |                    |
    |<-------------------| IPSec {Echo Request}
    |                    | (Packet #3)
    |----------X         | IPSec {Echo Reply}
    |                    | (Judgement #3)
    |                    |
    V                    V
  
 N: USE_TRANSPORT_MODE
Packet #1 See Common Packet #2
Packet #2 See below
Packet #3 See Common Packet #19
Packet #1: IKE_SA_INIT response
IPv6 Header Same as the Common Packet #4
UDP Header Same as the Common Packet #4
IKEv2 Header Same as the Common Packet #4
E Payload Same as the Common Packet #4
IDr Payload Same as the Common Packet #4
AUTH Payload Same as the Common Packet #4
N Payload Same as the Common Packet #4
SA Payload See below
TSi Payload Same as the Common Packet #4
TSr Payload Same as the Common Packet #4

SA Payload Next Payload 44 (TSi)
Critical 0
Reserved 0
Payload Length 44
Proposal #1 SA Proposal Next Payload 0 (last)
Reserved 0
Proposal Length 40
Proposal # 1
Protocol ID 3 (ESP)
SPI Size 4
# of Transforms 3
SA Transform See below
SA Transform Next Payload 3 (more)
Reserved 0
Transform Length 8
Transform Type 3 (INTEG)
Reserved 0
Transform ID 2 (HMAC_SHA1_96)
SA Transform Next Payload 0 (last)
Reserved 0
Transform Length 8
Transform Type 5 (Extended Sequence Number)
Reserved 0
Transform ID 0 (No Extended Sequence Number)
SA Transform Next Payload 3 (more)
Reserved 0
Transform Length 12
Transform Type 1 (ENCR)
Reserved 0
Transform ID 12 (AES_CBC)
SA Attribute Attribute Type 14 (Key Length)
Attribute Value 128
  Part A: (BASIC)
     1. NUT starts to negotiate with TN1 by sending IKE_SA_INIT request.
     2. Observe the messages transmitted on Link A.
     3. TN1 responds with an IKE_SA_INIT response to the NUT.
     4. Observe the messages transmitted on Link A.
     5. TN1 responds with an IKE_AUTH response to the NUT. But the response includes a SA
         payload which has a different Transform ID from the proposed one.
     6. TN1 transmits an Echo Request with IPsec ESP using ENCR_AES_CBC and
         AUTH_HMAC_SHA1_96.
     7. Observe the messages transmitted on Link A.


Observable Result

  Part A
       Step 2: Judgment #1
       The NUT transmits an IKE_SA_INIT request including "ENCR_AES_CBC",
       "PRF_HMAC_SHA1", "AUTH_HMAC_SHA1_96" and "D-H group 2" as proposed
       algorithms.
       Step 4: Judgment #2
       The NUT transmits an IKE_AUTH request including "ENCR_3DES",
       "AUTH_HMAC_SHA1_96" and "No Extended Sequence Numbers" as proposed algorithms.
       Step 7: Judgment #3
       The NUT never transmits an Echo Reply with IPsec ESP using ENCR_AES_CBC and
       AUTH_HMAC_SHA1_96.


Possible Problems

  * Step 7
    The NUT may transmit or retransmit an IKE_AUTH request. And the NUT may notify
    INVALID_SPI.