Re: [IPsec] comments on draft-ietf-ipsecme-g-ikev2-07

Valery Smyslov <smyslov.ietf@gmail.com> Thu, 22 December 2022 08:56 UTC

Return-Path: <smyslov.ietf@gmail.com>
X-Original-To: ipsec@ietfa.amsl.com
Delivered-To: ipsec@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 37B75C14CE29 for <ipsec@ietfa.amsl.com>; Thu, 22 Dec 2022 00:56:46 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.098
X-Spam-Level:
X-Spam-Status: No, score=-2.098 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id wDOojSg0BnMQ for <ipsec@ietfa.amsl.com>; Thu, 22 Dec 2022 00:56:45 -0800 (PST)
Received: from mail-lj1-x235.google.com (mail-lj1-x235.google.com [IPv6:2a00:1450:4864:20::235]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 9D2DDC14EB1C for <ipsec@ietf.org>; Thu, 22 Dec 2022 00:56:45 -0800 (PST)
Received: by mail-lj1-x235.google.com with SMTP id y4so1220916ljc.9 for <ipsec@ietf.org>; Thu, 22 Dec 2022 00:56:45 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-language:thread-index:content-transfer-encoding :mime-version:message-id:date:subject:in-reply-to:references:to:from :from:to:cc:subject:date:message-id:reply-to; bh=Xi0GXLmPOSWLxefShv/mVi7E56YeWA+OFXCDGFPj4oc=; b=i7F2a/rNzfu0TZFXULmIZlImTd5NfhUtNkmWHuk11XMvpP3cZzDNqedZJgp/diRS65 2+4b0EsDL4Wp6vznfoPHEQbPOEwfPDmN/c3WQ8Bl+4bA0nuKQgpChdGYYc0UhSlD78ly bjBQfJsL+Kt1Ju/mNbv4kS36BL3Sst8AqY3itNINBw15+FknmDE6hzfLsqbwPO8ObAxl 0SsyJ9Q1N5C4nZ56uOUJLPtlTyf2QfyJzuIjnW+g/R9iYVJNr4/8nvzxzCJVsbdatdPm gUIRJzriIC7DKTiZDGYTfHDzafshNz+HwkLn25aJRNWC5N2D/LAgPRgIGBoEAoTftdPx esLg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-language:thread-index:content-transfer-encoding :mime-version:message-id:date:subject:in-reply-to:references:to:from :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=Xi0GXLmPOSWLxefShv/mVi7E56YeWA+OFXCDGFPj4oc=; b=HxUy2PlilcA1TVqIOlZyuHLltT5kiS+N6jzgtdg4m4aCcdJ/PI4J6mFc4OtcJSbtT9 XHhJfasfFlI7qIVscVe1AKW5Amdq6aDhTZSebcqQrrVGTywupsiE+6S2Ac/c49aP9PyW HuqcZBiF9Oj8XVTOlQCtI/WlQegc2XJCq/OPt2eCrk1ZvSsBI2sRBT6Z8Kw2hT8ZnsDH nHbTWQEBezIJR/dKmYhkptJ9DTJXIeTrOt0UXAsc1JQ8+exaRFVPRjnhnUTBvavtPJbJ 3KuMIqbz8jcFRhxl1dLzuFv564GACG2Sa1AJmu2YYlorHG444F3+EXdlK32yimI4J03q Krcw==
X-Gm-Message-State: AFqh2krcau/nODlSGe32W8tJbqC2cDcZeGgYIcrbjcIOkeZAoFNQJ7CE O0D9qmfJzvmX0wX3E+BJmnZ3Zk/Y7OA=
X-Google-Smtp-Source: AMrXdXuYXlXlFGIA1mAzfe8MZmu+7uiIRFLMvWLe38+yatX7tCqFfneLpsk8p/9Y4UvGMQIJWShOtA==
X-Received: by 2002:a2e:be06:0:b0:26f:db35:d205 with SMTP id z6-20020a2ebe06000000b0026fdb35d205mr3064175ljq.17.1671699403227; Thu, 22 Dec 2022 00:56:43 -0800 (PST)
Received: from buildpc ([93.188.44.204]) by smtp.gmail.com with ESMTPSA id bf38-20020a2eaa26000000b00277045dcb5bsm1562487ljb.97.2022.12.22.00.56.42 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 22 Dec 2022 00:56:42 -0800 (PST)
From: Valery Smyslov <smyslov.ietf@gmail.com>
To: 'Michael Richardson' <mcr+ietf@sandelman.ca>, ipsec@ietf.org, bew.stds@gmail.com
References: <11505.1671563270@localhost> <257b01d9151c$a16579f0$e4306dd0$@gmail.com> <9470.1671641738@localhost>
In-Reply-To: <9470.1671641738@localhost>
Date: Thu, 22 Dec 2022 11:56:43 +0300
Message-ID: <261c01d915e3$50ef2670$f2cd7350$@gmail.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQKeBWC6qo76WkEy8zM45q+l9j6TWgGzCTsyAnEMrYeszm2VEA==
Content-Language: ru
Archived-At: <https://mailarchive.ietf.org/arch/msg/ipsec/z5JMN74_B-7v-q83sSvZ9KCsd8g>
Subject: Re: [IPsec] comments on draft-ietf-ipsecme-g-ikev2-07
X-BeenThere: ipsec@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: Discussion of IPsec protocols <ipsec.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ipsec>, <mailto:ipsec-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/ipsec/>
List-Post: <mailto:ipsec@ietf.org>
List-Help: <mailto:ipsec-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ipsec>, <mailto:ipsec-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 22 Dec 2022 08:56:46 -0000

Hi Michael,

>     > I think it must be pre-configured (just as, for example, using TCP
>     > encapsulation in IKEv2).  Should we add some text?
> 
> If it's an arbitrary port that someone has to configure, then please include
> no ports.
>
> I don't think it should be that way.
> 
> I think that it should be port 500.
> I don't know if the option to also listen on port 848 matters.
> That reflects my preference that this work be an IKEv2 extension,
> rather than a new protocol like the IKEv1 version.

I think the text can be changed to indicate that using IKE ports is RECOMMENDED
and udp/848 is MAY (to allow compatibility with GDOI).

>     >> Section 2.2 recaps the payload acronyms.  I suggest a third column
>     >> telling us where they are defined.
> 
>     > Perhaps it's better to split the table into to - existing IKEv2
>     > payloads and newly defined G-IKEv2-specific payloads. Does it work for
>     > you?
> 
> No, I'd rather see it all in one table.

Thus, what do you want to see in the third column? 
"Defined in RFC 7296"/"Defined in this document"?

>     >> Can I do unicast IKE_CHILD_SA echanges in the same PARENT_SA as I do
>     >> G-IKEv2?  I can imagine use cases where there is both multicast and
>     >> unicast traffic that needs to be protected.  I guess not, beacuse
>     >> GSA_AUTH is not IKE_AUTH.
> 
>     > You cannot create unicast IPsec SA at the time the G-IKEv2 SA is being
>     > established (since GSA_AUTH cannot do it). It's an open question
>     > whether you can create them once it is up (via CREATE_CHILD_SA). It is
>     > not explicitly prohibited now, but would prefer not to do it - use
>     > G-IKEv2 SA for group key management traffic only and create a separate
>     > IKEv2 SA if the GCKS acts as a GW too.
> 
> I don't understand GSA_AUTH vs IKE_AUTH. I think that's an IKEv1-ism to split it.

Why? When you need to substantially modify the behavior of the exchange
you have two options - either indicate its purpose with some notify
or introduce a new dedicated exchange. GSA_AUTH substantially differs
from IKE_AUTH, so what's wrong with introducing a new exchange type for it?
After all, we did it before (IKE_SESSION_RESUME, IKE_FOLLOWUP_KE).

>     >> Use of IPCOMP seems really difficult.  I guess it can't be used until
>     >> every receiver supports it.  Is that common?  Are the target use cases
>     >> (probably video?) even compressible?
> 
>     > With multicast architecture for any single feature used, every receiver
>     > have to support it, IPcomp is not an exception. Using IPcomp is defined
>     > for completeness.  No target use cases were considered (I think there
>     > may be few of them).
> 
> I'd consider leaving it out, or discouraging it.
> Obviously, one can just never compress, but it seems like it's been a PITA to implement.

IPcomp is optional, you don't need to implement it. It can be useful if the traffic
is compressible, especially taking into consideration that multicast is always udp
and IP fragmentation may be an issue. On the other hand, if IPcomp is used
for some group SA and later an GM is joined which doesn't support it,
then a sufficiently clever GCKS could immediately rekey the SA with IPcomp off
(taking a risk of IP fragmentation).

>     >> I guess 2.4.1 answers that question.  Maybe just leave the comment to
>     >> 2.4.1.
> 
> > Can you suggest some wording?
> 
> remove: "This is not a real IKEv2 exchange, since no response messages are sent."

OK. I also added some clarification to this para:

         The GSA_REKEY is a pseudo-exchange, consisting of a one-
         way IKEv2 message sent by the GCKS, where the rekey policy is
         delivered to group members using IP multicast as a transport.
         This method is valuable for large and dynamic groups, and where
         policy may change frequently and a scalable rekeying method is
         required.  When the GSA_REKEY is used, the IKE SA protecting
         the member registration exchanges is usually terminated, and
         group members await policy changes from the GCKS via the
         GSA_REKEY messages.

Is it better?

>     >> Are these IKEv2 messages sent in the normal port 500/848/4500 channel?
>     >> Or?  I don't understand this part at all.  There are implications that
>     >> it's multicast, but clearly, it can't be?
> 
>     > GSA_REKEY is sent over multicast (that's why it is unacknowledged).
>     > The port it is sent to is specified by the GCKS in the GSA_AUTH
>     > exchange (it can be any UDP port).
> 
>     > Can you be more specific of the text that is not clear and perhaps
>     > propose some clarification text?
> 
> It seems that GSA_RSAKEY is not an IKEv2 message at all then.

Why? It is a one-way IKEv2 message (but not an IKEv2 exchange!).
It follows the format for IKEv2 messages and it is processed
very much as usual, except that no response is sent.

Note, that RFC 7296 includes a concept of one-way IKEv2 messages
(for error notification in case no IKE SA exists).

>     >> "SID" is now rather overloaded in the IETF (CORE/YANG, SR6...), and
>     >> perhaps another TLA could be considered :-)
> 
>     > This term was used in the draft from its early versions :-) Perhaps
>     > change to SenderID? Or SENDER_ID? Or is it overloaded too?
> 
> SenderID is way better.
> (CORE/YANG has Schema ID, SR6 has SegmentID)

OK.

>     >> I think that the end of section 2.6, aout reusing Extended Sequence
>     >> Number should probably have more widespread review within the WG.
>     >> This is not just a key mgmt issue, but an 4301 update I think.
> 
>     > Actually, the current text in the draft is misleading.  It is not about
>     > reusing, the transform meaning is generalized and a new value for
>     > transform ID is added.  We'll try to make the text more clear.
> 
>     > I'm not sure it is an update to 4301, since it requires no code change
>     > for existing implementations.
> 
> Is the KWK part of IKEv2 or is it part of ESP?

It is part of IKEv2 (precisely - G-IKEv2). 

>     >> I'm not sure if section 6.1 belongs here.
> 
>     > Why? It describes how PPK can be used (well, how complicated is to use
>     > it :-)) with G-IKEv2 and also has some justification for alternative
>     > way of using PPK (defined in drft-smyslov-ipsecme-ikev2-qr-alt).
> 
> It seems like it belongs in smyslov-ipsecme-ikev2-qr-alt.
> I don't feel strongly.

I disagree. This section mostly discusses the cumbersomeness of 
getting the QC protection for multicast keys by using RFC 8784. 
smyslov-ipsecme-ikev2-qr-alt is only mentioned as more suitable alternative.

>     >> Who has implemented?
> 
>     > As far as I know early versions of the draft (incompatible with the
>     > current one) were implemented by Cisco and by Tobias Heider and Tobias
>     > Guggemos.  The current version is partially implemented by myself.
> 
>     >> Or maybe I should instead ask: who cares?
> 
>     > I believe that there is some interest in this work.  I cannot estimate
>     > how strong it is :-)
> 
> We shouldn't waste resources publishing documents that nobody plans to deploy.
> (We have enough to do...)

I cannot speak for others, but I'm planning to implement it.
And as far as I know, draft 05 version of the IEEE Std 802.15.9 standard 
(March 2021) specifies that G-IKEv2 is used for group key distribution 
(but I'm not involved in this work).

Regards,
Valery.

> --
> Michael Richardson <mcr+IETF@sandelman.ca>   . o O ( IPv6 IøT consulting )
>            Sandelman Software Works Inc, Ottawa and Worldwide
> 
> 
>