I finally managed to finish my G-IKEv2 review. Here are my comments:

----------------------------------------------------------------------
2.3.4.  GCKS Registration Operations

                                                The GAP MAY also be
   included to provide the ATD and/or DTD (Section 4.4.3.1.1) specifying
   activation and deactivation delays for SAs generated from the TEKs.

expand ATD and DTD, this is first time they are used, so they should
be expanded here.

--

2.4.3.  Deletion of SAs

   The GCKS MAY specify the remaining active time of the policy by using
   the GAP_DTD attribute in the GSA GAP substructure.  If a GCKS has no
   further SAs to send to group members, the GSA and KD payloads MUST be
   omitted from the message.

What is this text related to? This deletion of SA Figures 12 and 13,
do not include GSA or KD payloads.

--

3.4.  SA Keys

   algorithm is used for encryption, then SK_a key will not be used (GM
   can use the formula above assuming the length of SK_a is zero).

I think the SA_a should GSK_a here.

--

4.4.1. Group Policies

Having terms Group Security Association Policy (GSA Policy) and Group
associated Policy (GAP are bit difficult to read, as those two are so
similar. Perhaps Group Policy (GP) and Group Security Association
Policy (GSAP)?

--

4.4.2.  Group Security Association Policy Substructure

The SPI size for the IKE is 16, not 8, like in standard RFC7296 IKEv2.
As the 8-first octets of the IKE SPI is the initiator SPI and it is
only one part that is used to identify the Rekey SA, so I think it
could be possible to just send 8-octets, i.e., the initiator SPI, and
simply say that the Responder SPI of the Rekey SA is simply ignored,
i.e., receipient MUST use the Inititor SA to find the rekey SA, and
ignore the Responder SPI on recipient (and either that Initiator MUST
or SHOULD use the responder SPI static for all Rekey SA messages).

Or we could define we send SPIi, and the SPIr will always be same as
SPIi, so each rekey SA will have identical SPIi and SPIr.

Similar changes for the section 4.5.2.

--

4.4.2.1.3.  Replay Protection Transform

Add titles for [RFC4302] and [RFC4303], or just change "described in
[RFC4302] and [RFC4303]" to "described in the AH and ESP RFCs".

It might be good idea to explain the "Not used" value for RP registry
here too. Currently that value is only defined in sections 2.6 and
9.2, but there is no text describing what that option really means
(section 2.6 just says that such value was added, and 9.2 adds it but
no functional description is given for it.

Also there have been discussion of making changes to ESP, so that we
would send full ESN in the header, and in that case the ESN can be
used with G-IKEv2.

To allow that change the:

                                                        For this
   reason extended sequence numbers MUST NOT be used for multicast Data-
   Security SAs and thus the value "Extended Sequence Numbers" (1) for
   the Replay Protection transform type MUST NOT be used in the GSA
   Payload.


to

                                                        For this
   reason the value "Extended Sequence Numbers" (1) for the Replay
   Protection transform type MUST NOT be used in the GSA Payload.

--

4.4.2.2.  GSA Attributes

                In the table, attributes that are defined as TV are
   marked as Basic (B); attributes that are defined as TLV are marked as
   Variable (V).

It would be better to use TV and TLV in the table, and not use IKEv1
terms B(asic) and V(ariable) at all.

Same for 4.4.3.1, 4.5.2, 4.5.3 and 9.

Also the IANA tables in uses column "Format" to specify whether
attribute is TV or TLV.

--


4.4.2.2.1.  GSA_KEY_LIFETIME Attribute

Why is this attribute needed? The senders should take cere of the
rekeying the SA before too much data is sent over it, so there is no
security reason for this. Is this just to allow clients to clean up
extra SAs in case they loose connectivity, but why then this MUST be
sent.

I think we could just remove this attribute.

--

4.4.2.2.2.  GSA_INITIAL_MESSAGE_ID Attribute

Could we use similar method to transport the upper 32-bits of the ESN?
This would of course only work in case the GCKS is actually either
part of the group or knows the current upper 32-bits of the ESN using
some other method (for example if it is the sender to that SA).

Should we provide method for this even if would not work always?

--

6.1.  Mixing Preshared Keys in IKEv2 for Post-quantum Security

This sentence needs to say something that if implementations cares
those issues then it needs to:

   For these reasons the GCKS MUST NOT send GSA and KD payloads in the
   GSA_AUTH response message and MUST return a new notification
   REKEY_IS_NEEDED instead.  

As you noted the GSK_w is protected, so store now, decrypt later
attack is already not applicable. The IKEv2 with PPK is not
really designed to be safe against the attackers who can do online
real time QC attacks on the exchanges, and break the for example
authentication used in the IKEv2. The IKEv2 with PPK is designed to
protect against the attacks, where someone stores traffic now, and
then when they do get quantum computes they can decrypt the data.

G-IKEv2 is as safe against such attacks as is standard IKEv2.

It attacker can break encryption and authentication of the G-IKEv2
messages it still can't affect the multicast traffic keys which are
protected using GSK_w which is derived from SK_d.

It can send messages that changes the keys to random keys which will
cause DoS attacks, but it can do DoS most likely anyways even without
breaking the encryption and authentication.

--

6.1.  Mixing Preshared Keys in IKEv2 for Post-quantum Security

   The GM starts the IKE_SA_INIT exchange requesting using PPK, and the
   GCKS responds with agreement to do it, or aborts according to its
   "mandatory_or_not" flag:

This text is confusing, if the initiator proposes PPK then responder
do not have flag mandatory_or_not, it might have flag "PPK_disabled",
which would cause it to abort, but describing that is not needed here.

Remove the text starting ", or aborts ..." to end of paragraph.

Typo in Figure 22, it says "DR, SAr1,..." when it should say "HDR,
SAr1, ..."

--

8.2.4.  Replay/Reflection Attack Protection

Hmm... actually if the attacker can break the IKEv2 encryption and
authentication it can most likely create the replayed GSA_REKEY
messages, which are using the keys from the previous messages (which
the attacker does not know as they are protected by GSK_w), but it
might be able to cause them to be reused unless the key wrap algorithm
also includes the Message ID of the message containing it to the
authentication part it has. I.e., attacker might cause sender to reuse
keys that it has used before.

--

Appendix A.  Use of LKH in G-IKEv2

How does one specify that it will use LKH? I do not think we have any
way of specifying it anymore? If so remove the whole appendix A.

----------------------------------------------------------------------

Comments about RFC references without names of the documents:

----------------------------------------------------------------------

1.  Introduction and Overview

Add RFC title before the RFC number, i.e., change

                                                         A group key
   management protocol provides IPsec keys and policy to a set of IPsec
   devices which are authorized to communicate using a Group Security
   Association (GSA) defined in [RFC3740].

to

                                                         A group key
   management protocol provides IPsec keys and policy to a set of IPsec
   devices which are authorized to communicate using a Group Security
   Association (GSA) defined in Multicat Group Security Architecture
   [RFC3740]. 

--

1.2.  Terminology

                                                        This
   document uses a notation and conventions from [RFC7296] for

to

                                                        This
   document uses a notation and conventions from IKEv2 [RFC7296] for

--

   The following key terms are used throughout this document (mostly
   borrowed from [RFC3740], [RFC5374] and [RFC6407]).

to

   The following key terms are used throughout this document (mostly
   borrowed from Multicast Group Security Architecture [RFC3740],
   Multicast Extensions to Security Architecture [RFC5374] and GDOI
   [RFC6407]).


--

   Group Security Association (GSA)

      A collection of Data-Security SAs and Rekey SA necessary for a
      Group Member to receive key updates. A GSA describes the working
      policy for a group. Refer to [RFC4046] for additional
      information.

to

   Group Security Association (GSA)

      A collection of Data-Security SAs and Rekey SA necessary for a
      Group Member to receive key updates. A GSA describes the working
      policy for a group. Refer to MSEC Group Key Management
      Achtecture [RFC4046] for additional information.

--

   Logical Key Hierarchy (LKH)
      A group management method defined in Section 5.4 of [RFC2627].

to

   Logical Key Hierarchy (LKH)
      A group management method defined in Section 5.4 of Key
      Management for Multicast: Issues and Architectures [RFC2627]. 

--

2.1.  G-IKEv2 Integration into IKEv2 Protocol

   It is assumed that readers are familiar with the IKEv2 protocol, so
   this document skips many details that are described in [RFC7296].

to

   It is assumed that readers are familiar with the IKEv2 protocol, so
   this document skips many details that are described in IKEv2
   [RFC7296]. 

--

2.1.1.  G-IKEv2 Transport and Port

   As IKEv2 extension, G-IKEv2 SHOULD use the IKEv2 ports (500, 4500).
   G-IKEv2 MAY also use TCP transport for registration (unicast) IKE SA,
   as defined in [RFC9329].

to

   As IKEv2 extension, G-IKEv2 SHOULD use the IKEv2 ports (500, 4500).
   G-IKEv2 MAY also use TCP transport for registration (unicast) IKE SA,
   as defined in TCP Encapsulation of IKEv2 and IPsec [RFC9329].

-

   Section 2.23 of [RFC7296] describes how IKEv2 supports paths with

to

   Section 2.23 of IKEv2 [RFC7296] describes how IKEv2 supports paths with

--

2.3.  G-IKEv2 Member Registration and Secure Channel Establishment

   ... IKEv2 extensions based on [RFC9242] ...

to

   ... IKEv2 extensions based on IKE_INTERMEDIATE exchange [RFC9242] ...

--

2.3.1.  GSA_AUTH exchange

                                                (like [RFC6467]) can
   also be used with the GSA_AUTH exchange.

to

                                                (like Secure Password
   authentication [RFC6467]) can also be used with the GSA_AUTH
   exchange. 

--

2.3.3.  GM Registration Operations

                                                ... In particular,
   the restriction from Section 3.3 of [RFC7296] that AEAD and
   non-AEAD ...

to

                                                ... In particular,
   the restriction from Section 3.3 of IKEv2 [RFC7296] that AEAD and
   non-AEAD ...

-

   ... described in Section 1.3.2 of [RFC7296]. ...

to

   ... described in Section 1.3.2 of IKEv2 [RFC7296]. ...

--

2.3.4.  GCKS Registration Operations

   [RFC5374] defines two modes of operation for multicast Data-Security

to

   Multicastd Extensions to the Security Architecture [RFC5374]
   defines two modes of operation for multicast Data-Security

--

2.4.1.  GSA_REKEY

   windowing mechanism described in Section 2.3 of [RFC7296] MUST NOT be

to

   windowing mechanism described in Section 2.3 of IKEv2 [RFC7296]
   MUST NOT be 

--
2.4.1.1.  GSA_REKEY Messages Authentication

   Length and the Integrity Checksum Data fields (see 3.14 of [RFC7296]

to

   Length and the Integrity Checksum Data fields (see 3.14 of IKEv2 [RFC7296]

-

   filled in, see [RFC7427].

to

   filled in, see  Authentication in IKEv2 [RFC7427].

--

2.4.1.2.  IKE Fragmentation

   IKE fragmentation [RFC7383] can be used to perform fragmentation of

to

   IKEv2 fragmentation [RFC7383] can be used to perform fragmentation of

-

      waiting for response.  Section 2.5.1 of [RFC7383] contains

to

      waiting for response.  Section 2.5.1 of IKEv2 fragmentation
      [RFC7383] contains 

-

   *  PMTU mechanism, defined in Section 2.5.2 of [RFC7383], cannot be

to

   *  PMTU mechanism, defined in Section 2.5.2 of IKEv2 fragmentation
      [RFC7383], cannot be 

--

2.4.2.  GSA_INBAND_REKEY Exchange

   Because this is a normal IKEv2 exchange, the HDR is treated as
   defined in [RFC7296].

to

   Because this is a normal IKEv2 exchange, the HDR is treated as
   defined in IKEv2 [RFC7296].

--

2.4.3.  Deletion of SAs

   changed.  Deletion of SAs is accomplished by sending the G-IKEv2
   Delete Payload [RFC7296], section 3.11 as part of the GSA_REKEY

to

   changed.  Deletion of SAs is accomplished by sending the G-IKEv2
   Delete Payload as described in section 3.11 of IKEv2 [RFC7296] as
   part of the GSA_REKEY 

--

2.5.  Counter-based modes of operation

   *  The GCKS uses the method described in [RFC6054], which assigns

to

   *  The GCKS uses the method described in Using Counter Modes with
      ESP and AH to Protect Group Traffic [RFC6054], which assigns 

--

2.6.  Replay Protection for Multicast Data-Security SAs

   possible to achieve (see Section 6.1 of [RFC3740]).  In particular,

to

   possible to achieve (see Section 6.1 of Multicast Group Security
   Architecture[RFC3740]).  In particular, 

-

   ESP header (see Section 2 of [RFC4303]) thus making it impossible for

to

   ESP header (see Section 2 of ESP [RFC4303]) thus making it
   impossible for 

-

   Numbers" transform, defined in Section 3.3.2 [RFC7296].  This

to

   Numbers" transform, defined in Section 3.3.2 IKEv2 [RFC7296].  This

--

2.7.  Encryption Transforms with Implicit IV

   [RFC8750] for details).  It requires replay protection to be enabled

to

   Implicit IV for Counter-Based Ciphers in ESP [RFC8750] for
   details).  It requires replay protection to be enabled 

--

4.4.2.  Group Security Association Policy Substructure

Add title for [RFC5374] in Source & Destination Traffic selectors
description. 

--

4.4.2.1.1.  Authentication Method Transform

Add title for [RFC5280] and [RFC7427].

--

4.4.3.1.2.  GAP_SENDER_ID_BITS Attribute

Add title for [RFC6054].

--

4.5.3.2.  AUTH_KEY Attribute

Add titles for [RFC5280], [RFC8017], [RFC3279], and [RFC5480].

--

4.5.4.  Key Wrapping

Add titles for [RFC5649] and [ARX-KW].

--

7.  GDOI Protocol Extensions

Add titles for [RFC6407], [RFC8052] and [RFC8263].
-- 
kivi...@iki.fi

_______________________________________________
IPsec mailing list -- ipsec@ietf.org
To unsubscribe send an email to ipsec-le...@ietf.org

Reply via email to