Re: [CFRG] More custom kem combiners: ML-KEM and ECDH with P-256

"Dang, Quynh H. (Fed)" <quynh.dang@nist.gov> Mon, 26 February 2024 12:40 UTC

Return-Path: <quynh.dang@nist.gov>
X-Original-To: cfrg@ietfa.amsl.com
Delivered-To: cfrg@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id B442EC14F6AC for <cfrg@ietfa.amsl.com>; Mon, 26 Feb 2024 04:40:22 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -8.106
X-Spam-Level:
X-Spam-Status: No, score=-8.106 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FROM_GOV_DKIM_AU=-0.999, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=nist.gov
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 kme8YKxwEsNa for <cfrg@ietfa.amsl.com>; Mon, 26 Feb 2024 04:40:18 -0800 (PST)
Received: from GCC02-BL0-obe.outbound.protection.outlook.com (mail-bl0gcc02on20601.outbound.protection.outlook.com [IPv6:2a01:111:f403:241a::601]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 20E4FC14F6AB for <cfrg@irtf.org>; Mon, 26 Feb 2024 04:40:17 -0800 (PST)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=lhiwGEd54s7hjsq3Lm19lk0AMZCiSO3cOJOtGZZG82rnL2ENgI2bj5xPiLKTyATa6S3fq93gyQX24xbBr/J3/OPg8mOM5NEFI5I9dXTYFLbfhkYPiaHuwv7uDjVMd3vjcRLf1onk/0xUYvkPVdhNIm1aRNTtZKD5j6uM3HQHRWPBpzLMf8jIEHduZKd9uuloVLRCxi5CTuKqyEb7aMAo9hIArJSisDLnQ9KaTHp4LYuVXVrmA7P8UpIN+AzfxTvpztunI/yoHT/ifGwnAjtdpaUdc7+edg7meP1Hjb8eauByPTtU/oMi4SQXzamBbM/LO+YgJz6YUZozVeor/wCAVA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=fiRQZRaWTjchCsmIacyYws5/CdYbqOfBMMO3QVeXQKs=; b=V660ot2RuvYkLgbB2LyRqam95XNwno8VC9wsctDSLQqIrvJF0jjp5Hl7oW2fr0n5ypaMeVHButOgrtKvQdUMDDkBblNNRABr1XXTTt05aWOLBFNa60W3jl1EypoI5FwBbdTTRgf16jhBsoMzBS+g5vgDPzqfgChMSFS+ubWeQK2hSkdswaSx2U8cIeNENo0b9orvJo4dSsoR6o8rLqzpQEnOHXsjuFn7SjsQ/RZ7kpdprUInkZHoSeworM/S2AeiCi/Ta059w6pqjQEa4EB9HqZXTBmdNYY/tdwcXJq/jGbjd5w6eiXqVpJ2/TbdWNnfj0ytC4W7q+ZezwYpCr4GoA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nist.gov; dmarc=pass action=none header.from=nist.gov; dkim=pass header.d=nist.gov; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nist.gov; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=fiRQZRaWTjchCsmIacyYws5/CdYbqOfBMMO3QVeXQKs=; b=amypuj7R7gRSV6yHuk9Gz0y67dEU/P/jrxHmsiQS6hmuXzZbbPSFcYlAUfQmOMtZGydU7ATcx7/l3ff072ADbDRtcQ4KrFR+W+REGiz9oyo6xvWtXM782sKLLpSHsg/qwFvoiLPdw7y6R5QU7oFAfAsdFZc4mSiad3QPBK/qxFLBhuY+AZBVyKvGdxSgcfVPg2dNp7H4VtiRzE1D/xYNcwdhj3jNKPk6lPKKSxWyjSsp8UwogXMB9HOD8wZam+bAws7sGrTzK1MMPryjab5m51gRQ/Tcu9eVUKP06LycsqXjZ9xl4u9T49d9nKbilhJYNDI+yv57ykO0txD6LwKf6g==
Received: from MW4PR09MB10059.namprd09.prod.outlook.com (2603:10b6:303:1fc::22) by SJ0PR09MB9570.namprd09.prod.outlook.com (2603:10b6:a03:46b::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7316.36; Mon, 26 Feb 2024 12:40:13 +0000
Received: from MW4PR09MB10059.namprd09.prod.outlook.com ([fe80::876a:69a6:756f:8fd4]) by MW4PR09MB10059.namprd09.prod.outlook.com ([fe80::876a:69a6:756f:8fd4%3]) with mapi id 15.20.7316.035; Mon, 26 Feb 2024 12:40:13 +0000
From: "Dang, Quynh H. (Fed)" <quynh.dang@nist.gov>
To: Deirdre Connolly <durumcrustulum@gmail.com>, Neil Madden <neil.e.madden@gmail.com>
CC: CFRG <cfrg@irtf.org>
Thread-Topic: [CFRG] More custom kem combiners: ML-KEM and ECDH with P-256
Thread-Index: AQHaZOnKTEwFJrKbWUCBMYl1fKA64bEVKMSAgAAiPACAB0vFoA==
Date: Mon, 26 Feb 2024 12:40:13 +0000
Message-ID: <MW4PR09MB10059A974487DD32735658E8AF35A2@MW4PR09MB10059.namprd09.prod.outlook.com>
References: <CAN8C-_Jo5YF6j9xG9dmHyuHEegkpWyEAZHRsk-P4GGGdRixfig@mail.gmail.com> <9D4E5BFF-E948-4460-94C1-BF1E77D641FE@gmail.com> <CAFR824zaZFXXat1w0JaAo=7QDGRxyt3VqCHP=L7Mm_yf9zPnAQ@mail.gmail.com>
In-Reply-To: <CAFR824zaZFXXat1w0JaAo=7QDGRxyt3VqCHP=L7Mm_yf9zPnAQ@mail.gmail.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nist.gov;
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: MW4PR09MB10059:EE_|SJ0PR09MB9570:EE_
x-ms-office365-filtering-correlation-id: afd67877-aad2-43b4-962b-08dc36c813ca
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: DUa866k+Rz0uVDoIi5w8r6gP7CFhekWkuwLcSA6MIUmS+8ACgumMifMUrF85iDs+bjyYAGK8JcsRWDhSMDNj7MSwXDZbLMqpurnr3kGpbpAlupVSSp8f/34v0f1M6HQ8tO5K9YMSz2XuWBdg9unCR08y30EPCq34+OWB++eWxao9fKz9wImqZXejMzQ7SKmCEU4pCeJp2fI9Gc3Mdisx7FX2fv2o1eHEghyNoFNEege5fftW6olsnlolPohYlpn/SLjwjxh4Od1HPrh5HYgzKysXWRI3Pd942Mzj4OEbhqBxzqzmn1FgoFPZbAvpIb4jHaY3gjoMe/4pNkW3nqqTLiwo0Q8OaJYwMqzyhMI75zOfZJ2TvsgX/cD/qt/H4a2JEggIJ1S3l9/hezy6BVf3pUjlImNZkFL0ROIYgJ+JtJatcaQJn0s+TxMOWwzAp3EgiLbNAqHNKp6CmGF2IP1+phrzNxAbD+7TBtlUmI8+w0UMNsuhuBpb9VfepoMwjH+s37OhCTXGv9zcxuwqQNyqU3OEF8SPNf5JX+Ho1YebzF6pqfu1m5q48OtwMWJPjyzbYl7GB6vRq45fjx5AfVrbb0Hg9orIxSGxKlYC3k8W0i+aa2++7k4BIGdpqjJMPHJuOGuQmcfHU1DzW+YrSdrYJ5T3CmNPtnmcpXEj/2xCMeBeVMLmW/elLXUySeabUhK5ay6Goi8hOknopA7jc7iKhQ==
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:MW4PR09MB10059.namprd09.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230031)(38070700009); DIR:OUT; SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: cZWPGxMsvSlbKBK6jLCxHcHnvMKLMi40G0skdr+4IGRzw3WMC3w1HQX3Wf6wOd9Ts2xhdWMb5+E0IClxkWf4z6JcXzqbbVYi8VPwexH9OfBOU8DREMOHJhwsU1VoeYePxfwCvCod1UuL/0WpCJjvlyFx2xrKDapDygbXcmE9ViWy2EJFstkfxtqYrSLAun2geouvgo5ss/CMMsmCrx3Gk0h3LRAYZLSNu28HHShg1EAJBoTE55uyIkiRugZWjuc+73w9H9Zw9566CSF/VVrwVL/qNSQvC37KSG47VcTdaji4GAB4Od2ISAejiyBLHBUtg98zCvk2QktnVl6A9WuwyLromz1M4njh12lsPPiInQzNhiAOO1ZElS/0f4WY0so4Gm33/mLZMCFeW8Uml2hsERTP+7nLuyUMm7RB/Ail7JC1PjrbvPxBfcDRut9mnqylViJYxGIhOUXoJYdaczz/xIRpxdrCdK8cpkyEK14OrXG/R6IkBVbjdmCsbVu7dQZGVsyL0FlXrbsLXjfvOOV6dMGa93hYhPoZh3HqJkxUJ7rZ/zlLmCqRQXzit9o85opzKVRrB/qd/FMHStZpVpZMeHe+zaA/rtqttsdjLGACJ1jgCbnInf+v3jZuftBSIuh05F+OIafbsXCjcrXbBqh1DlFNmWHBsMSrfI9+Ak/PTTT8+urBwTrl/9q3V0h+lduxxe1bvMbfGtEsRJ5K9/4Ii5XO45PPvoAOiLsFS59BeRfl1eIcoICYZ0p+JvVuhRqESSCPwPINyLoSJxtCAyOnJ2KWxAoQZTInZcXTd9dJ0jsQwcNNkgxMdlof16axWuActajDeDaruwx+uRdzvysg33UwmtEwN+vr95vpmMD2nuiJdW8/+7gNSL7IVgiXu4vUQ/PIuFAp6LDi6E/t9vkfsix9YFOSyXZdMFAJFBsZFTfAru2P8SJQXfs5+ua+Zx79CML/4+wfFJ5NvQ2TWJa2jNXK0Tz1IDlJwimBq1x67Jb23+BqGVfAn73cYBDNrkKIFXLxtlZIzYYUh6qWVmtbSi4AAR4LrO9QcWogLFysAPFcIEv1NvAaZX1t2KbvBMimBgAPsOUEUyeXXb/OyRexxw7VH32rszQ7ieNLbLFiWUlAjz0H6g0sicoKpFjUYJP18ySRLZyFcVZUYpZ58MdwYDB1Vjnjz1jmRoSE9OAVYsnmX8j3wEFQIcKwQ73ZO/WvJl0S+unq7Ho7WcPCBvsJlBeBxwxo3X7RInebgwsQd35SgFnYWtyPZQDQrZ2QSqaaEICgYHEyp6dGPTQKddV2EzWegfAY9IAHX59UlIWd5wZ/38og4mqaTEEyQ4n4JEm4VOkmdGtgL+K3FkoZZKrjoe3xZHR+SmsR7lKx4m3YpfEVDQ7INrStjJlxXA/wEjmUf300Jb7EY1hRzbp6hUNQ8nEg1OGLSb2SWy515VQdfoXKOU21JTfvSwfiYq/k/CLjsu2J0JdEZ5YNtRklzQI0INJSuKPt4sHIwwP3l8MN8Wju/fPCPRyKOvQ5R2YjaQAHQtJVaXSnpDUJn+X5VwsKFanr+JsITm7y44+e657SuVM=
Content-Type: multipart/alternative; boundary="_000_MW4PR09MB10059A974487DD32735658E8AF35A2MW4PR09MB10059na_"
MIME-Version: 1.0
X-OriginatorOrg: nist.gov
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: MW4PR09MB10059.namprd09.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: afd67877-aad2-43b4-962b-08dc36c813ca
X-MS-Exchange-CrossTenant-originalarrivaltime: 26 Feb 2024 12:40:13.2840 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 2ab5d82f-d8fa-4797-a93e-054655c61dec
X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR09MB9570
Archived-At: <https://mailarchive.ietf.org/arch/msg/cfrg/ekYT9JzGRgjnk8gxHHeyARqpxew>
Subject: Re: [CFRG] More custom kem combiners: ML-KEM and ECDH with P-256
X-BeenThere: cfrg@irtf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: Crypto Forum Research Group <cfrg.irtf.org>
List-Unsubscribe: <https://mailman.irtf.org/mailman/options/cfrg>, <mailto:cfrg-request@irtf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/cfrg/>
List-Post: <mailto:cfrg@irtf.org>
List-Help: <mailto:cfrg-request@irtf.org?subject=help>
List-Subscribe: <https://mailman.irtf.org/mailman/listinfo/cfrg>, <mailto:cfrg-request@irtf.org?subject=subscribe>
X-List-Received-Date: Mon, 26 Feb 2024 12:40:22 -0000


From: CFRG <cfrg-bounces@irtf.org> On Behalf Of Deirdre Connolly
Sent: Wednesday, February 21, 2024 4:11 PM
To: Neil Madden <neil.e.madden@gmail.com>
Cc: CFRG <cfrg@irtf.org>
Subject: Re: [CFRG] More custom kem combiners: ML-KEM and ECDH with P-256

Ah good, someone else noticed!

> They are using HKDF and chaining things via the salt parameter, which AFAICT is what WireGuard, Signal,

Signal PQXDH<https://signal.org/docs/specifications/pqxdh/#sending-the-initial-message> (their hybrid update to X3DH) used HKDF with the salt parameter encoding the hash output length in bytes and the input key material as the common concatenated shared secrets with some other information as input; it doesn't look like they are chaining that invocation of HKDF by including prior secret material in the salt parameter.

Apple<https://security.apple.com/assets/files/Security_analysis_of_the_iMessage_PQ3_protocol_Stebila.pdf> is chaining 2 HKDF-Extracts and then a final HKDF-Expand (binding session information and transcript material via the label), and uses the whole thing as a KDF.

Is this design possibly informed by results on HMAC as a dual-PRF<https://eprint.iacr.org/2023/861.pdf>?
[Dang, Quynh H. (Fed)] I am not sure I understood the question above.  Is this paper https://eprint.iacr.org/2023/861.pdf  a good one to go over ?

Regards,
Quynh.

On Wed, Feb 21, 2024 at 2:08 PM Neil Madden <neil.e.madden@gmail.com<mailto:neil.e.madden@gmail.com>> wrote:
On 21 Feb 2024, at 17:16, Orie Steele <orie@transmute.industries<mailto:orie@transmute.industries>> wrote:

Looks like Apple just announced they are going to use a custom kem combiner with ML-KEM and ECDH with P-256.

https://security.apple.com/blog/imessage-pq3/

Here is the security analysis paper: https://security.apple.com/assets/files/Security_analysis_of_the_iMessage_PQ3_protocol_Stebila.pdf

(The “KEM combiner” is in section 3.5.2).

They are using HKDF and chaining things via the salt parameter, which AFAICT is what WireGuard, Signal, Noise, TLS, IPSec, and now apparently iMessage all do. I’ve actually been surprised that that hasn’t been proposed here, as it seems like a de facto standard.

You might object that they all do this for *PSKs*, not for KEM combining, but at least the WireGuard author has explicitly stated that they intended the PSK mechanism exactly for mixing in the result of a post-quantum key exchange:

https://www.reddit.com/r/linux/comments/hzyu8j/comment/fzmd983/

(You might even say this *is* a PSK, it just happens to have been “pre-shared” very recently… during the same handshake…)



It's not obvious to me if this is using a DHKem like those registered in HPKE or if it's some custom construction.

It’s using ECDH, not a KEM, for the DH part. (I mean DHKEM basically is ECIES, so it’s not like there’s a massive difference).

— Neil
_______________________________________________
CFRG mailing list
CFRG@irtf.org<mailto:CFRG@irtf.org>
https://mailman.irtf.org/mailman/listinfo/cfrg