rfc9867v3.txt | rfc9867.txt | |||
---|---|---|---|---|
skipping to change at line 180 ¶ | skipping to change at line 180 ¶ | |||
Initiator Responder | Initiator Responder | |||
------------------------------------------------------------------ | ------------------------------------------------------------------ | |||
HDR, SAi1, KEi, Ni, | HDR, SAi1, KEi, Ni, | |||
N(INTERMEDIATE_EXCHANGE_SUPPORTED), | N(INTERMEDIATE_EXCHANGE_SUPPORTED), | |||
N(USE_PPK_INT) ---> | N(USE_PPK_INT) ---> | |||
<--- HDR, SAr1, KEr, Nr, [CERTREQ,] | <--- HDR, SAr1, KEr, Nr, [CERTREQ,] | |||
N(INTERMEDIATE_EXCHANGE_SUPPORTED), | N(INTERMEDIATE_EXCHANGE_SUPPORTED), | |||
N(USE_PPK_INT) | N(USE_PPK_INT) | |||
The USE_PPK_INT is a Status Type IKEv2 notification. Its Notify | The USE_PPK_INT is a Status Type IKEv2 notification. Its Notify | |||
Message Type is 16445; the Protocol ID and Security Parameter Index | Message Type is 16445; the Protocol ID is set to 0; the Security | |||
(SPI) Size are both set to 0. This specification does not define any | Parameter Index (SPI) is absent, so the SPI Size is set to 0 too. | |||
data that this notification may contain, so the Notification Data is | This specification does not define any data that this notification | |||
left empty. However, future extensions of this specification may | may contain, so the Notification Data is left empty. However, future | |||
make use of it. Implementations MUST ignore any data in the | extensions of this specification may make use of it. Implementations | |||
notification that they do not understand. | MUST ignore any data in the notification that they do not understand. | |||
Note that this negotiation is independent from the negotiation of | Note that this negotiation is independent from the negotiation of | |||
using PPKs as specified in [RFC8784]. An initiator that supports | using PPKs as specified in [RFC8784]. An initiator that supports | |||
both the use of PPKs in IKE_AUTH [RFC8784] and IKE_INTERMEDIATE MAY | both the use of PPKs in IKE_AUTH [RFC8784] and IKE_INTERMEDIATE MAY | |||
include both the USE_PPK_INT and USE_PPK notifications if configured | include both the USE_PPK_INT and USE_PPK notifications if configured | |||
to do so. However, if the responder supports both specifications and | to do so. However, if the responder supports both specifications and | |||
is configured to use PPKs, it has to choose one to use; thus, it MUST | is configured to use PPKs, it has to choose one to use; thus, it MUST | |||
return either a USE_PPK_INT or a USE_PPK notification in the response | return either a USE_PPK_INT or a USE_PPK notification in the response | |||
but not both. | but not both. | |||
skipping to change at line 207 ¶ | skipping to change at line 207 ¶ | |||
IKE_SA_INIT request and the responder's policy mandates protecting | IKE_SA_INIT request and the responder's policy mandates protecting | |||
initial IKE SA with a PPK, then the responder MUST return the | initial IKE SA with a PPK, then the responder MUST return the | |||
NO_PROPOSAL_CHOSEN notification. | NO_PROPOSAL_CHOSEN notification. | |||
If the negotiation was successful, the initiator includes one or more | If the negotiation was successful, the initiator includes one or more | |||
PPK_IDENTITY_KEY notifications in the IKE_INTERMEDIATE request with | PPK_IDENTITY_KEY notifications in the IKE_INTERMEDIATE request with | |||
PPK identities that the initiator believes are appropriate for the | PPK identities that the initiator believes are appropriate for the | |||
IKE SA being created. | IKE SA being created. | |||
The PPK_IDENTITY_KEY is a Status Type IKEv2 notification. Its Notify | The PPK_IDENTITY_KEY is a Status Type IKEv2 notification. Its Notify | |||
Message Type is 16446; the Protocol ID and SPI Size fields are both | Message Type is 16446; the Protocol ID and the SPI Size fields are | |||
set to 0. The format of the Notification Data is shown below in | both set to 0. The format of the Notification Data is shown below in | |||
Figure 1. | Figure 1. | |||
1 2 3 | 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 | 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 | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | | | | | |||
~ PPK_ID ~ | ~ PPK_ID ~ | |||
| | | | | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | | | | | |||
skipping to change at line 279 ¶ | skipping to change at line 279 ¶ | |||
--------------------------------------------------------------- | --------------------------------------------------------------- | |||
<--- HDR, SK { ... N(PPK_IDENTITY, PPK_ID_i)} | <--- HDR, SK { ... N(PPK_IDENTITY, PPK_ID_i)} | |||
In this case, the IKE_AUTH exchange is performed as defined in | In this case, the IKE_AUTH exchange is performed as defined in | |||
IKEv2 [RFC7296]. However, the keys for the IKE SA are computed | IKEv2 [RFC7296]. However, the keys for the IKE SA are computed | |||
using PPK, as described in Section 3.1.1. If the responder | using PPK, as described in Section 3.1.1. If the responder | |||
returns a PPK identity that was not proposed by the initiator, | returns a PPK identity that was not proposed by the initiator, | |||
then the initiator MUST treat this as fatal and abort the IKE SA | then the initiator MUST treat this as fatal and abort the IKE SA | |||
establishment. | establishment. | |||
2. If the responder does not have a PPK with ID that matches any of | 2. If the responder does not have a PPK with an ID that matches any | |||
IDs sent by the initiator, or if the responder has some of the | of IDs sent by the initiator, or if the responder has some of the | |||
proposed PPKs but their values are mismatched from the | proposed PPKs but their values are mismatched from the | |||
initiator's PPKs (based on the information from the PPK | initiator's PPKs (based on the information from the PPK | |||
Confirmation field), and if using PPK is mandatory for the | Confirmation field), and if using PPK is mandatory for the | |||
responder, then it MUST return an AUTHENTICATION_FAILED | responder, then it MUST return an AUTHENTICATION_FAILED | |||
notification and abort creating the IKE SA. | notification and abort creating the IKE SA. | |||
Initiator Responder | Initiator Responder | |||
--------------------------------------------------------------- | --------------------------------------------------------------- | |||
<--- HDR, SK {... N(AUTHENTICATION_FAILED)} | <--- HDR, SK {... N(AUTHENTICATION_FAILED)} | |||
End of changes. 3 change blocks. | ||||
10 lines changed or deleted | 10 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. |