[openpgp] Re: Encryption subkey selection

Justus Winter <justus@sequoia-pgp.org> Tue, 15 April 2025 02:15 UTC

Return-Path: <justus@sequoia-pgp.org>
X-Original-To: openpgp@mail2.ietf.org
Delivered-To: openpgp@mail2.ietf.org
Received: from localhost (localhost [127.0.0.1]) by mail2.ietf.org (Postfix) with ESMTP id CE7141BFC2B3 for <openpgp@mail2.ietf.org>; Mon, 14 Apr 2025 19:15:50 -0700 (PDT)
X-Virus-Scanned: amavisd-new at ietf.org
X-Spam-Flag: NO
X-Spam-Score: -2.1
X-Spam-Level:
X-Spam-Status: No, score=-2.1 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, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=unavailable autolearn_force=no
Authentication-Results: mail2.ietf.org (amavisd-new); dkim=pass (4096-bit key) header.d=sequoia-pgp.org
Received: from mail2.ietf.org ([166.84.6.31]) by localhost (mail2.ietf.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id yutUOLnpfSKZ for <openpgp@mail2.ietf.org>; Mon, 14 Apr 2025 19:15:50 -0700 (PDT)
Received: from mailgate02.uberspace.is (mailgate02.uberspace.is [IPv6:2a00:d0c0:200:0:1c7b:a6ff:fee0:8ea4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-256) server-digest SHA256) (No client certificate requested) by mail2.ietf.org (Postfix) with ESMTPS id C9EAA1BFB935 for <openpgp@ietf.org>; Mon, 14 Apr 2025 19:15:07 -0700 (PDT)
Received: from harrington.uberspace.de (harrington.uberspace.de [185.26.156.85]) by mailgate02.uberspace.is (Postfix) with ESMTPS id 037F41800B6 for <openpgp@ietf.org>; Mon, 14 Apr 2025 17:39:57 +0200 (CEST)
Received: (qmail 12397 invoked by uid 500); 14 Apr 2025 15:39:56 -0000
Authentication-Results: harrington.uberspace.de; auth=pass (plain)
Received: from unknown (HELO unkown) (::1) by harrington.uberspace.de (Haraka/3.0.1) with ESMTPSA; Mon, 14 Apr 2025 17:39:56 +0200
From: Justus Winter <justus@sequoia-pgp.org>
To: Daniel Huigens <d.huigens=40protonmail.com@dmarc.ietf.org>
In-Reply-To: <dI4YtuyWCyCqKizRafc2sNHBFSRSuQEt-03l8CBI-bRD4SPN7701nRDLFYtu0hwve96cG3Q4kIglx6oVTIAiJbVJseQRzLrt2AoKpSLes28=@protonmail.com>
References: <87h631mvol.fsf@thinbox> <dI4YtuyWCyCqKizRafc2sNHBFSRSuQEt-03l8CBI-bRD4SPN7701nRDLFYtu0hwve96cG3Q4kIglx6oVTIAiJbVJseQRzLrt2AoKpSLes28=@protonmail.com>
Date: Mon, 14 Apr 2025 17:39:55 +0200
Message-ID: <87ecxupx9w.fsf@europ.lan>
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-="; micalg="pgp-sha512"; protocol="application/pgp-signature"
X-Rspamd-Bar: ----
X-Rspamd-Report: BAYES_HAM(-1.91355) SIGNED_PGP(-2) MIME_GOOD(-0.2)
X-Rspamd-Score: -4.11355
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=sequoia-pgp.org; s=uberspace; h=from:to:cc:subject:date; bh=LGtyhUYgXhZbyklsf5SQVH9goMSan+5LoGRmIuS334w=; b=MiAizH/GtnHOF9KLDnU0ob2IxYsJlVe+VgBrM3A9XbJNgykyjB28zDRU+GgcNWt0QBerJPt0+X dnmKbHP3Zt04rCPwONXpqBlVBQOt1RGNiawvDOcOoBwtcqL6fQhY73/bqolM/PELbXdIijtdI6+W 43ungDmFXGvgRLk2+YtYWtP92GKpUeosUqWmG21hBnE3bFlUi9M//kpS3uDJ9UWdTlHf7WZhZuDE D6LjdU5J2zkIPxQ3YDpmcCBJD/5HE058tOIEYLzZOlndRz0EShxQmR09vpoCJZp50tCFBVUenMJY Mq+omfsqwi1auJPZcpi+fPAfJKtx6Jb/n0hNfxHQjURLMcpv58y2nsHmaZmb4/CfrD/YhBLH5+pH YW+N9tvJukz+gJ7ej7wbqisCXrtzRGkBHNsX6iP3ogeW1UYHw2uFtuRG8LThw0c+1BG6HTBr5OfJ f1Tz3s6RdsYRvPdXhtHe2xhTf4NjxGvZgjIzB9lEqFQAnAMMzFue2P1YeWt9eLquuQWX5DjGbL00 yV6rS257cyQD4by1PCrgJbw8ExFIhLEoSZIto0ffZDa4b8cVY86j//sx39gd8dsQ0zW3D0cbYTDw QzxOh5stRhHxQClpHO5dhkMNVTYahQp+rRhBZ6jZ1yLQ5X9eBNU3090yZvqgUX6S5EB0j2+UTKnE g=
Message-ID-Hash: 64H6XCPVKVS5WQTKE3YCIUVIGUPCNFY2
X-Message-ID-Hash: 64H6XCPVKVS5WQTKE3YCIUVIGUPCNFY2
X-MailFrom: justus@sequoia-pgp.org
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-openpgp.ietf.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
CC: openpgp@ietf.org
X-Mailman-Version: 3.3.9rc6
Precedence: list
Subject: [openpgp] Re: Encryption subkey selection
List-Id: "Ongoing discussion of OpenPGP issues." <openpgp.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/openpgp/OujqRVNXVd3K0sW9ClpNGYlgX4U>
List-Archive: <https://mailarchive.ietf.org/arch/browse/openpgp>
List-Help: <mailto:openpgp-request@ietf.org?subject=help>
List-Owner: <mailto:openpgp-owner@ietf.org>
List-Post: <mailto:openpgp@ietf.org>
List-Subscribe: <mailto:openpgp-join@ietf.org>
List-Unsubscribe: <mailto:openpgp-leave@ietf.org>

Hey list :)

Daniel Huigens <d.huigens=40protonmail.com@dmarc.ietf.org> writes:

> I agree that it would be good to reach a consensus on this, and that
> if we assume that we want to support one-subkey-per-device setups
> (e.g. for use with integrated HSMs, to be able to generate a key
> on each of your devices in hardware), which seemed to be the
> conclusion from the multi-device session at the summit,
> then we probably need some mechanism for that.
>
> _However_, I want to raise one specific potential solution that
> Patrick Brunschwig proposed in that session, which is a variant of
> "List of sets of subkeys", but rather than introducing some new
> encoding for this, we could simply say: each certificate is such
> a list of subkeys. In other words, we pick the first certificate,
> see if it's usable, if so use all valid encryption subkeys in that
> certificate. If not, try the next certificate. And so on.
>
> This means that, to migrate to a new encryption algorithm, you also
> need to generate a new certificate. Often we want to do that anyway:
> in the migration from RSA to ECC, and ECC to PQC, we've introduced
> both new encryption algorithms and new signing algorithms.
>
> I know this goes a bit against what I've said previously and also
> conflicts with the concept of "certificate equivalence" in the
> key replacement draft (because multiple subkeys across linked certs
> would then not behave the same as multiple subkeys in a single cert).
> _But_ if we all agree that we need some mechanism for this then
> I think it's best to pick the simplest possible mechanism.

That indeed sounds like a simple solution.  And I agree that we should
get more comfortable with primary key rotations, so I'm not too worried
with tying subkey rotations with primary key rotations.

Best,
Justus