Title

  Test IKEv2.EN.R.1.1.8.1: INVALID_IKE_SPI
  Part B: Different IKE_SA Responder's SPI (BASIC)


Purpose

  To verify an IKEv2 device properly handles IKE messages outside the context of IKE_SA.


References

  * [RFC 4306] - Sections 2.21


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)
    |                    | (Packet #1)
    |------------------->| IKE_SA_INIT Response (HDR, SAr2, KEr, Nr)
    |                    | (Judgement #1)
    |                    |
    |<-------------------| IKE_AUTH request (HDR, SK {IDi, AUTH, N+, SAi2, TSi, TSr})
    |                    | (Packet #2)
    |------------------->| IKE_AUTH Response (HDR, SK {IDr, AUTH, N+, SAr2, TSi, TSr})
    |                    | (Judgement #2)
    |                    |
    |<-------------------| CREATE_CHILD_SA request (HDR, SK {N, N+, SA, Ni, TSi, TSr})
    |                    | (Packet #3)
    |---------X          | CREATE_CHILD_SA response (HDR, SK {N+, SA, Nr, TSi, TSr})
    |                    |   or
    |------------------->| CREATE_CHILD_SA response (HDR, SK { N(INVALID_IKE_SPI) })
    |                    | (Judgement #3)
    |                    |
    V                    V

N: REKEY_SA N+: USE_TRANSPORT_MODE
Packet #1 See Common Packet #1
Packet #2 See Common Packet #3
Packet #3 See below

* Packet #3: CREATE_CHILD_SA request (Part B)
IPv6 Header Same as the Common Packet #13
UDP Header Same as the Common Packet #13
IKEv2 Header Other fields are same as the Common Packet #13
IKE_SA Initiator's SPI The IKE_SA Initiator's SPI value used by this IKE message
IKE_SA Responder's SPI The IKE_SA Responder's SPI value used by this IKE message plus 1
E Payloa Same as the Common Packet #13
N Payload Same as the Common Packet #13
N Payload Same as the Common Packet #13
SA Payload Same as the Common Packet #13
Ni, Nr Payload Same as the Common Packet #13
TSi Payload Same as the Common Packet #13
TSr Payload Same as the Common Packet #13
  Part B: Different IKE_SA Responder's SPI (BASIC)
       7. TN1 starts to negotiate with NUT by sending IKE_SA_INIT request.
       8. Observe the messages transmitted on Link A.
       9. After a reception of IKE_SA_INIT response from the NUT, TN1 transmits IKE_AUTH
          request to the NUT.
      10. Observe the messages transmitted on Link A.
      11. After reception of IKE_AUTH response from the NUT, TN1 transmits
          CREATE_CHILD_SA request which contains different IKE_SA Responder's SPI value
          from IKE_SA Responder's SPI value in the IKE_AUTH request in Step 4.
      12. Observe the messages transmitted on Link A.


Observable Result

  Part B
    Step 8: Judgment #1
      The NUT transmits an IKE_SA_INIT response including "ENCR_3DES",
      "PRF_HMAC_SHA1", "AUTH_HMAC_SHA1_96" and "D-H group 2" as accepted
      algorithms.
  
    Step 10: Judgment #2
      The NUT transmits an IKE_AUTH response including "ENCR_3DES",
      "AUTH_HMAC_SHA1_96" and "No Extended Sequence Numbers" as accepted algorithms.
  
    Step 12: Judgment #3
      The NUT does not transmits any packets or transmits a CREATE_CHILD_SA response
      including a Notify payload of type INVALID_IKE_SPI.


Possible Problems

  * None.