[openpgp] Algorithms vs packets in forwarding and PSK

Daniel Huigens <d.huigens@protonmail.com> Tue, 19 August 2025 14:27 UTC

Return-Path: <d.huigens@protonmail.com>
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 9957A55FBA7C for <openpgp@mail2.ietf.org>; Tue, 19 Aug 2025 07:27:10 -0700 (PDT)
X-Virus-Scanned: amavisd-new at ietf.org
X-Spam-Flag: NO
X-Spam-Score: -0.197
X-Spam-Level:
X-Spam-Status: No, score=-0.197 tagged_above=-999 required=5 tests=[BAYES_20=-0.001, 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_MSPIKE_H5=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: mail2.ietf.org (amavisd-new); dkim=pass (2048-bit key) header.d=protonmail.com
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 SOwTfdwh-uAn for <openpgp@mail2.ietf.org>; Tue, 19 Aug 2025 07:27:10 -0700 (PDT)
Received: from mail-10630.protonmail.ch (mail-10630.protonmail.ch [79.135.106.30]) (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 10C8255FBA63 for <openpgp@ietf.org>; Tue, 19 Aug 2025 07:27:09 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com; s=protonmail3; t=1755613628; x=1755872828; bh=AvFatZAw/MgFRp/fI7DmqsN31HGU/qttHT6lDF8yYPE=; h=Date:To:From:Subject:Message-ID:Feedback-ID:From:To:Cc:Date: Subject:Reply-To:Feedback-ID:Message-ID:BIMI-Selector; b=ybSWa28awm8DCHb60dPo3XTFae9zRlxkmMWnkLXAxTxCXX/YrhAEzTlV5ABnc7F+8 J710VDKDtz/qWUNt30avhgxggWBHeplxmNHuhJlL9NG4By/EEP8gmeqpNGXq7fBLJg jHLLuSTtvzdoSH9A0zHe7afocTDqa9cY7JsyeULbZhe2yhUhba0GrOL8hekDGOT8nq QXn+l4KMtwGdoXEoDDaXdiLz5Eyg2wZI0ktUSG1ujhVBNnBRnV6Eeu7jv1jMUHkkjs 7XObI0UpV7yIRKFTiKGJozgRDyHoMqqlUrEaFh3u/94ZWCMzfLZ3YEenAqKYsb0a+T E3D1j8ELPymRQ==
Date: Tue, 19 Aug 2025 14:27:02 +0000
To: IETF OpenPGP WG <openpgp@ietf.org>
From: Daniel Huigens <d.huigens@protonmail.com>
Message-ID: <Hc3ISJioGLKTY8w-xL2U4-c2UDlDmBR6QZ2IJ_s_PzKT7kpnG9tc1yV0doyJZe9E-X8yvsiJDiyVyvmuQ-iDC03tpNtVnAl2YDHZ9-FJKys=@protonmail.com>
Feedback-ID: 2934448:user:proton
X-Pm-Message-ID: 3cea3cc09a0f4fbd35d5d1fc0f7a9dffd6e21ef3
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
Message-ID-Hash: CNEI23UVYCRNFSPGZSJTDPZOJ7FHEXO7
X-Message-ID-Hash: CNEI23UVYCRNFSPGZSJTDPZOJ7FHEXO7
X-MailFrom: d.huigens@protonmail.com
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
X-Mailman-Version: 3.3.9rc6
Precedence: list
Subject: [openpgp] Algorithms vs packets in forwarding and PSK
List-Id: "Ongoing discussion of OpenPGP issues." <openpgp.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/openpgp/cwq54HKCOEPgy02MFGibv99qbaY>
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>

Hi all,

Last month we had two parallel threads about whether to define new
algorithms or new packet(s) in the forwarding and persistent symmetric
keys drafts.

My informal impression is that the direction folks are leaning in is
to define new algorithms for forwarding, and a new key packet for
persistent symmetric keys (but reuse the other packets).

Yesterday I had a call with Aron and we both agreed that it would look
slightly strange to be inconsistent here, though we didn't reach a
conclusion beyond that, so we thought we'd ask the WG again to make
sure :)

We basically have a 3x3 grid of options:

A) Forwarding
   1. Define new algorithms; reuse private key and PKESK packets
   2. Define a new key packet and a new FKESK packet
   3. Define a new FKESK packet, reuse the private key packet
B) Persistent symmetric keys
   1. Define new algorithms; reuse private key, PKESK and signature
      packets
   2. Define all new packets
   3. Define a new key packet, reuse other packets, also define new
      algorithms or the special value 0

(When reusing packets, we should probably introduce new key flags,
to be able to distinguish the uses of the key.)

Of course, there are some semantic differences between forwarding and
persistent symmetric keys, that could potentially lead to a different
decision making sense for both.

In particular, for forwarding:
- The key can be used to decrypt forwarded messages, but not encrypt
  directly (only via the forwarding parameter)
- The key parameters are the same as those of existing algorithms for
  all algorithms we care about, though this may not always be the case
- The message parameters are the same plus some additional ones

For persistent symmetric keys:
- The key can be used to encrypt and decrypt, or "sign" and "verify",
  respectively
- The key parameters are new
- The message parameters are also new

In both cases, there's no corresponding public key.

For those that have followed or are interested in both discussions,
please let us know what your preferred option is. If your preferred
option differs between the two drafts, please also indicate which
factor makes you prefer a different outcome :)

Thanks!

Best,
Daniel