Hi Wang, Lun,

I agree with this concern. I think the draft becomes much easier to review
if the extended path is described as a deterministic responder algorithm,
not as a collection of fallback heuristics.

The way I would frame it is:

   1. The responder first computes the strict RFC 9370 outcome, if one
   exists.
   2. If no strict outcome exists, the responder may enter an explicitly
   configured extended-policy path.
   3. That extended path still needs a deterministic selection rule for the
   same input, not implementation-local guesswork.
   4. The output of the extended path must be checked against a local
   minimum-security policy before the responder accepts it.
   5. The implementation should be able to report which path was used:
   strict RFC 9370, extended-policy accepted, or rejected.

That keeps the compatibility goal, but avoids making fallback behavior
invisible. It also gives the interop matrix a useful shape: same initiator
proposal, same responder capability, strict outcome, extended outcome,
selected path, and whether the local security floor permits it.

I would be cautious about implicit NONE handling unless the draft makes the
policy gate very explicit. Otherwise it may look like a robust-negotiation
feature while actually changing the expected number or class of KEM
contributions.

Best,
Songbo

On Thu, 11 Jun 2026 21:19:31 +0000, Wang Xi [email protected] wrote:

Hi Lun,

Thanks for sharing the draft.

I wanted to raise one question regarding the security implications of
introducing an extended-policy fallback in addition to the strict RFC 9370
behavior.

My main concern is not about classical downgrade attacks in the traditional
sense, but rather whether the introduction of an additional
“extended-policy outcome” path may affect the determinism of the
negotiation outcome defined in RFC 9370.

Particularly, for a given initiator proposal and responder capability, the
draft seems to allow two semantically different classes of outcomes:

a strict RFC 9370-compliant deterministic selection, and
a policy-driven fallback selection (e.g., duplicate resolution or implicit
NONE handling)

If different implementations apply different fallback heuristics or
thresholds, this could lead to situations where the same input results in
different security-relevant outcomes across implementations.

I am wondering whether this introduces a potential selection surface where
an active attacker could influence which valid processing path is taken,
for example by shaping proposals that trigger fallback behavior in some
implementations but not others.

To be clear, I am not suggesting that this directly weakens the
cryptographic strength of RFC 9370, but rather that it may complicate the
assumption of a single deterministic security outcome per valid input,
which is a key property in many IKEv2 negotiation designs.

Happy to discuss further or help refine the interop matrix idea if useful.

Best,
Wang Xi

-----Original Message-----
From: Songbo Bu [email protected]
Sent: Wednesday, June 10, 2026 6:50 PM
To: [email protected]
Cc: [email protected]
Subject: [IPsec] New I-D:
draft-li-ipsecme-extensions-for-robust-negotiation// Re: Triggering
discussion on RFC 9370 ADDKE algorithm selection and potential issues

Hi Lun,

Thanks for posting this. I think the draft is useful because it turns a
real configuration/interoperability failure into something the WG can
reason about.

One point that might make the mechanism easier to review: I would separate
the “find a valid RFC 9370 outcome” case from the “compatibility fallback”
case.

My read is:

   - First, the responder should try a holistic selection over the ADDKE
   transform types and prefer a valid, non-duplicated set when one exists.
   - Only if no such set exists, local compatibility policy could decide
   whether to accept a weaker outcome, such as duplicate use of the same KEM
   or an implicit NONE.
   - That fallback should be gated by an explicit local minimum-security
   policy, so the responder never silently turns a multi-KEM intent into
   something below its configured floor.

This framing may also make Section 6 easier to turn into an interop
matrix: initiator proposal, responder capability, strict RFC 9370 outcome,
extended-policy outcome, and the security threshold that allowed or
rejected it.

If useful, I can help sketch that matrix or a short responder-processing
checklist for the Vienna discussion.

Best,
Songbo Bu

On Tue, 9 Jun 2026 07:04:15 +0000, “lilun (F)”
[email protected] wrote:

Dear all,

I’ve posted a new individual draft to address some robust negotiation
issues found during multi-KEM migration in IKEv2.

Title: Consideration of Robust Multi-KEM Negotiation within IKEv2
URL:
https://datatracker.ietf.org/doc/draft-li-ipsecme-extensions-for-robus
t-negotiation/

The draft discusses scenarios where initiators send redundant or
overlapping KEM algorithm lists across different ADDKE transform types (RFC
9370) based on our PoC best practice. To prevent interoperability
fragmentation and unexpected negotiation failures on the wire, this
document introduces deterministic extended selection logic for responders
(such as duplicate selection).

Please review the document and feel free to share your thoughts on the
mailing list.

I would also like to be considered having chance to request a presentation
slot at the upcoming Vienna meeting to introduce this I-D to the group.

Regards,

Lun Li

-----Original message-----
From: [email protected] [email protected]
Sent: June 5, 2026, 16:30
To: lilun (F) [email protected]
Subject: New Version Notification for>
draft-li-ipsecme-extensions-for-robust-negotiation-00.txt

A new version of Internet-Draft
draft-li-ipsecme-extensions-for-robust-negotiation-00.txt has been
successfully submitted by Lun Li and posted to the IETF repository.

Name: draft-li-ipsecme-extensions-for-robust-negotiation
Revision: 00
Title: Consideration of Robust Multi-KEM Negotiation within IKEv2
Date: 2026-06-03
Group: Individual Submission
Pages: 11
URL:
https://www.ietf.org/archive/id/draft-li-ipsecme-extensions-for-robu
st-negot
iation-00.txt
Status:
https://datatracker.ietf.org/doc/draft-li-ipsecme-extensions-for-rob
ust-negoti
ation/
HTMLized:
https://datatracker.ietf.org/doc/html/draft-li-ipsecme-extensions-fo
r-robust-
negotiation

Abstract:

RFC 9370 specifies a framework for multiple additional key exchanges
(ADDKE) in the Internet Key Exchange Protocol Version 2 (IKEv2) to
support post-quantum cryptography migration. Under this framework,
an initiator can propose multiple ADDKE transform types. In
deployment scenarios, initiators may send proposals that contain
redundant or overlapping lists of Key Encapsulation Mechanism (KEM)
algorithms across different ADDKE transform types. This contribution
discusses the implications of these proposals and specifies extended
procedures for handling proposed transforms, which may improve
negotiation robustness and interoperability by allowing the
responder to select a valid set of algorithms without altering the
security properties defined in RFC 9370.

The IETF Secretariat

-----Original message-----
From: Lilun (F) [email protected]
Sent: April 30, 2026 15:25
To: Valery Smyslov [email protected]; [email protected]
Subject: [IPsec] Re: Triggering discussion on RFC 9370 ADDKE
algorithm selection and potential issues.> Hi Valery,

Thanks for the explain. I think generally the ADDKE algorithm
selection is an interesting topic and worth to re-visit.
I am about to prepare an individual draft to further illustrate this
topic for the reference.

Regards,
Lun

-----Original message-----
From: Valery Smyslov [email protected]
Sent: April 29, 2026 20:52
To: lilun (F) [email protected]; Wang Guilin
[email protected]; [email protected]
Subject: RE: [IPsec] Re: Triggering discussion on RFC 9370 ADDKE
algorithm
selection and potential issues>
Hi Lun,

The intended use of multiple ADDKE transforms was that each of
these transforms would contain KE methods based on different
mathematical properties. For example, the initiator can put all
lattice-based KEMs to ADDKE1, all code-based KEMs to ADDKE2 etc.
(we have plenty of spare transforms for the future).

It is a little point for the initiator to populate all ADDKE
transforms with the
same
set of algorithms - just a waste of message space in IKE_SA_INIT,
where it is often limited. It is the responder who can have a
policy allowing *any* supported KEM in *any* ADDKE, since this
policy is not transferred on the wire and
does not
eat space.
In this case, the responder does not care the order of KEMs, but
should
make
sure that
a needed set of KEMs is proposed.

But this is just a good way of using RFC 9370, the specification
does not
prohibit
other scenarios.
The only restriction is a prohibition of multiple use of the same
KE method,
since
it makes no sense
from security PoV and is a waste of resources.

Regards,
Valery.

Hi Guilin,

I agree with your assessment of the current RFC 9370 text.
redundant
proposals don’t provide additional security.

I think the motivation for bringing this to the WG is the gap
between the
specification and best practice reflecting,
particularly in large-scale deployments.

In practice, IKEv2 configurations are often managed by
developers who
might
perhaps populate ADDKE slots with
the same algorithm list. Currently, this redundancy causes a
hard
negotiation
failure. I hope to raise is whether we
should allow the responder to be more resilient. If a secure
connection
can still
be established.

Furthermore, different implementations may have handled these
edge
cases in
different ways to consider
robustness. However, this could potentially lead to interoperability issues.
it is
not to encourage redundant configs
in specification level, but to explore if the protocol can be
more resilient
during
PQC migration.

Regards,

Lun

-----Original Message-----
From: Wang Guilin [email protected]
Sent: 24 Apr 2026 17:56
To: lilun (F) [email protected]; [email protected]; Tobias
Brunner
[email protected]
Cc: [email protected]; Wang Guilin
[email protected]
Subject: RE: [IPsec] Re: Triggering discussion on RFC 9370 ADDKE
algorithm
selection and potential issues
As I understand, your case “ADDKE1 [A, B], ADDKE2 [A, B], ADDKE3
[A,
B]” is
not allowed mainly because, from
the security view point, such proposal does not enhance security
while
increases the complexity for both side (to
run the same algorithm twice or more).

For such a proposal, as requiring to select select one algorithm
in each
ADDKE,
the responder has to select
something like “ADDKE1 [A], ADDKE2 [B], ADDKE3 [A]”. However,
such
an
answer is not allowed according to
2.2.1 in RFC 9370. So, a failure will happen.

2.2.1
“The responder performs the negotiation using the standard IKEv2
procedure
described in Section 3.3 of
[RFC7296]. However, for the ADDKE Transform Types, the
responder’s
choice MUST NOT contain duplicated
algorithms (those with an identical Transform ID and
attributes), except
for the
Transform ID of NONE.”

So, to prepare aproposal, the initiator may need to do as follows:

   - If the initiator wants the responder to select either A or B,
   the proposal
   should
   be: “ADDKE1 [A, B]”.
   - If the initiator wants the responder to select A and B, the
   proposal
   should be:
   "ADDKE1 [A], ADDKE2 [B] ".
   - If the initiator wants the responder to select A OR (A and B),
   the
   proposal
   should be: “ADDKE1 [A], ADDKE2 [B,
   None]”.
   - If the initiator wants the responder to select None OR A OR B
   OR (A and
   B),
   the proposal should be: “ADDKE1
   [A, None], ADDKE2 [B, None]”.
   - …

Guilin

-----Original Message-----
From: lilun (F) [email protected]
Sent: Friday, 24 April 2026 4:12 pm
To: [email protected]; Tobias Brunner [email protected]
Cc: [email protected]
Subject: [IPsec] Re: Triggering discussion on RFC 9370 ADDKE
algorithm
selection and potential issues

Hi Thanks Tobias, and all work group,

Thank you for the reply. I think strongSwan already does an
excellent job
implementing RFC 9370, and your
example illustrates the cases we are encountering.

Actually but, my main point is whether we could explore a
potential
specification draft/update/extension to handle
these redundant scenarios more gracefully. Reviewing some of our
failed
test
cases, I am wondering if we could
relax or clarify the restrictions.

In practice, many developers might configure ADDKEs by simply
filling
them
with the exact same list of supported
algorithms. For example, an initiator might send:
ADDKE1 [A, B], ADDKE2 [A, B], ADDKE3 [A, B] Currently, this
redundant
configuration leads to negotiation failure.
It would be much more robust if the responder could tolerate the
redundancy
and intelligently select algorithms—
for example, selecting A for ADDKE1, B for ADDKE2, and another A
for
ADDKE3—thus still resulting in a
successful hybrid exchange.

If there is interest in exploring this in the Work Group for
algorithm
selection
issues and more, I would be very
happy to request a presentation slot at IETF 126 to elaborate
above
content
and some deep thinking.

Best regards,

Lun Li

-----Original Message-----
From: Tobias Brunner [email protected]
Sent: April 16, 2026 18:54
To: lilun (F) [email protected]; [email protected]
Cc: [email protected]; [email protected]
Subject: Re: [IPsec] Triggering discussion on RFC 9370 ADDKE
algorithm
selection and potential issues On
16.04.26 12:18, lilun (F) wrote:

Hi Everyone,

Following our earlier research in the PQUIP WG regarding PQC
migration
in telecom systems, our team have recently been implementing
IKEv2 migration based on RFC 9370. During this process, we
encountered
some
negotiation failures related to ADDKEs that I would like to
bring to the WG’s attention for discussion.

During our PoC testing, we observed that IKE configuration
errors— specifically, configuring the same algorithm
redundantly in ADDKE payloads during IKE negotiation—frequently lead to
negotiation failures.

According to RFC 9370, Section 2.2.1 (which also references
RFC 7296, Section 2.7), the implementation shall be strictly limited:

/“the responder MUST select one of the algorithms proposed
using this type… the responder’s choice MUST NOT contain
duplicated algorithms (those with an identical Transform ID
and attributes), except for the Transform ID of NONE.”/

The important part there is “responder’s choice”. It’s perfectly
fine to
configure as well as send the same
algorithms in ADDKEs as initiator.
The responder just has to make sure its proposal selection
process does
result in a unique algorithm for each
ADDKE (except for NONE).

Based on feedback from our testing, some errors may be
occurred frequently in the configuration, and they were negotiation failed.
After troubleshooting, We found that the error was due to the
same algorithm being configured in ADDKEs during IKE in a
redundance. For example, placing ML-KEM-768 in multiple ADDKEs

I would like to start a discussion on whether these strict in
2.2.1 limitations for ADDKEs could have consideration for
future releases (for instance, in PQC-specific profiles like
ML-KEM). Considering the
real- world possibility of configuration redundancies.

Interestingly, also as part of our research verification, we
found that some open-source implementations (e.g., strongSwan)
handle
ADDKE
differently. Instead of strict responder selection, the
algorithm negotiation is often simplified to finding the
intersection of multiple ADDKEs between peers.

Yes, we have simplified the process a bit in so far that we only
check
individual
ADDKEs (sequentially) and avoid
duplicates overall. So we currently can’t handle situations like
ADDKE1[A, B],
ADDKE2[B, C] with a local config of
ADDKE1[B, A], ADDKE2[B, A]. We’d select ADDKE1[B] (preferring
the
local
config and order by default) but that
prevents selecting it for ADDKE2, so no valid proposal results.
However,
ADDKE1[A], ADDKE2[B] would
technically be acceptable by both peers (in this particular
example
disabling
prefer_configured_proposals would
make it work).

Regards,
Tobias

IPsec mailing list – [email protected] To unsubscribe send an
email to [email protected]

IPsec mailing list – [email protected] To unsubscribe send an
email to [email protected]

IPsec mailing list – [email protected] To unsubscribe send an email to
[email protected]

IPsec mailing list – [email protected]
To unsubscribe send an email to [email protected]

IPsec mailing list – [email protected]
To unsubscribe send an email to [email protected]

*** Please note that this message and any attachments may contain
confidential and proprietary material and information and are intended only
for the use of the intended recipient(s). If you are not the intended
recipient, you are hereby notified that any review, use, disclosure,
dissemination, distribution or copying of this message and any attachments
is strictly prohibited. If you have received this email in error, please
immediately notify the sender and destroy this e-mail and any attachments
and all copies, whether electronic or printed. Please also note that any
views, opinions, conclusions or commitments expressed in this message are
those of the individual sender and do not necessarily reflect the views of
Fortinet, Inc., its affiliates, and emails are not binding on Fortinet and
only a writing manually signed by Fortinet’s General Counsel can be a
binding commitment of Fortinet to Fortinet’s customers or partners. Thank
you. ***
_______________________________________________
IPsec mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to