Re: [openpgp] [PATCH 1/2] Make it possible to parse arbitrary PKESKv6 packets.

Daniel Kahn Gillmor <dkg@fifthhorseman.net> Thu, 18 May 2023 19:36 UTC

Return-Path: <dkg@fifthhorseman.net>
X-Original-To: openpgp@ietfa.amsl.com
Delivered-To: openpgp@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 17307C1519B4 for <openpgp@ietfa.amsl.com>; Thu, 18 May 2023 12:36:03 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.796
X-Spam-Level:
X-Spam-Status: No, score=-2.796 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, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, 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=neutral reason="invalid (unsupported algorithm ed25519-sha256)" header.d=fifthhorseman.net header.b="/wgQg/QE"; dkim=pass (2048-bit key) header.d=fifthhorseman.net header.b="Xo0YOCl1"
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 57k6Ab1HQ8IS for <openpgp@ietfa.amsl.com>; Thu, 18 May 2023 12:35:58 -0700 (PDT)
Received: from che.mayfirst.org (che.mayfirst.org [IPv6:2001:470:1:116::7]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 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 36001C151075 for <openpgp@ietf.org>; Thu, 18 May 2023 12:35:58 -0700 (PDT)
DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/simple; d=fifthhorseman.net; i=@fifthhorseman.net; q=dns/txt; s=2019; t=1684438556; h=from : to : subject : in-reply-to : references : date : message-id : mime-version : content-type : from; bh=lnTagx/tQbncAVOu6kZqYobtpo0a3o6oQp1x0FhNdTk=; b=/wgQg/QEZ336E1Fq6YL/Mf0RpgqX+cYeOK7Ig0J3zpJOag2+hTlGxggJr0Q4gzad4js1z 7s3UNR0mRctnJ4xDg==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=fifthhorseman.net; i=@fifthhorseman.net; q=dns/txt; s=2019rsa; t=1684438556; h=from : to : subject : in-reply-to : references : date : message-id : mime-version : content-type : from; bh=lnTagx/tQbncAVOu6kZqYobtpo0a3o6oQp1x0FhNdTk=; b=Xo0YOCl199jj/uP/BKTu6aQ/349MdFRcABVGPQizoYrr3P8wEivJjuioBW5Y7IQlYTXYO KO3ti+HeNLfmpd6WRlg+BPt2cJt/jap8KZi0VoqLD099BQS5sXQ4DHGX0i8v4z+GvQ7NxjT ix1n/DYNwq8fAGoNITkRbCRV4TKiexZsXgnUEHaRBlLVt96VzO4ixbd3RgN9DI/Pf5+mA+r gjhScGhXCNCqMvFOf7bYfzOt7IV+g2jBXj5DXHxKOPs/t/sq59skrQfuqiJIYz3/Hkg981N A6YjZ4vP1srYv35PxzPA9hfLxZQ9chGRCq81ASInLmTUkxNtIi8jC641tM0w==
Received: from fifthhorseman.net (unknown [38.109.115.130]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) server-digest SHA384) (No client certificate requested) by che.mayfirst.org (Postfix) with ESMTPSA id 68730F9AE for <openpgp@ietf.org>; Thu, 18 May 2023 15:35:56 -0400 (EDT)
Received: by fifthhorseman.net (Postfix, from userid 1000) id D8CEE20D12; Thu, 18 May 2023 14:58:54 -0400 (EDT)
From: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
To: openpgp@ietf.org
In-Reply-To: <20230508180119.1705651-2-justus@sequoia-pgp.org>
References: <20230508180119.1705651-1-justus@sequoia-pgp.org> <20230508180119.1705651-2-justus@sequoia-pgp.org>
Autocrypt: addr=dkg@fifthhorseman.net; prefer-encrypt=mutual; keydata= mDMEX+i03xYJKwYBBAHaRw8BAQdACA4xvL/xI5dHedcnkfViyq84doe8zFRid9jW7CC9XBiI0QQf FgoAgwWCX+i03wWJBZ+mAAMLCQcJEOCS6zpcoQ26RxQAAAAAAB4AIHNhbHRAbm90YXRpb25zLnNl cXVvaWEtcGdwLm9yZ/tr8E9NA10HvcAVlSxnox6z62KXCInWjZaiBIlgX6O5AxUKCAKbAQIeARYh BMKfigwB81402BaqXOCS6zpcoQ26AADZHQD/Zx9nc3N2kj13AUsKMr/7zekBtgfSIGB3hRCU74Su G44A/34Yp6IAkndewLxb1WdRSokycnaCVyrk0nb4imeAYyoPtBc8ZGtnQGZpZnRoaG9yc2VtYW4u bmV0PojRBBMWCgCDBYJf6LTfBYkFn6YAAwsJBwkQ4JLrOlyhDbpHFAAAAAAAHgAgc2FsdEBub3Rh dGlvbnMuc2VxdW9pYS1wZ3Aub3JnL0Gwxvypz2tu1IPG+yu1zPjkiZwpscsitwrVvzN3bbADFQoI ApsBAh4BFiEEwp+KDAHzXjTYFqpc4JLrOlyhDboAAPkXAP0Z29z7jW+YzLzPTQML4EQLMbkHOfU4 +s+ki81Czt0WqgD/SJ8RyrqDCtEP8+E4ZSR01ysKqh+MUAsTaJlzZjehiQ24MwRf6LTfFgkrBgEE AdpHDwEBB0DkKHOW2kmqfAK461+acQ49gc2Z6VoXMChRqobGP0ubb4kBiAQYFgoBOgWCX+i03wWJ BZ+mAAkQ4JLrOlyhDbpHFAAAAAAAHgAgc2FsdEBub3RhdGlvbnMuc2VxdW9pYS1wZ3Aub3Jnfvo+ nHoxDwaLaJD8XZuXiaqBNZtIGXIypF1udBBRoc0CmwICHgG+oAQZFgoAbwWCX+i03wkQPp1xc3He VlxHFAAAAAAAHgAgc2FsdEBub3RhdGlvbnMuc2VxdW9pYS1wZ3Aub3JnaheiqE7Pfi3Atb3GGTw+ jFcBGOaobgzEJrhEuFpXREEWIQQttUkcnfDcj0MoY88+nXFzcd5WXAAAvrsBAIJ5sBg8Udocv25N stN/zWOiYpnjjvOjVMLH4fV3pWE1AP9T6hzHz7hRnAA8d01vqoxOlQ3O6cb/kFYAjqx3oMXSBhYh BMKfigwB81402BaqXOCS6zpcoQ26AADX7gD/b83VObe14xrNP8xcltRrBZF5OE1rQSPkMNy+eWpk eCwA/1hxiS8ZxL5/elNjXiWuHXEvUGnRoVj745Vl48sZPVYMuDgEX+i03xIKKwYBBAGXVQEFAQEH QIGex1WZbH6xhUBve5mblScGYU+Y8QJOomXH+rr5tMsMAwEICYjJBBgWCgB7BYJf6LTfBYkFn6YA CRDgkus6XKENukcUAAAAAAAeACBzYWx0QG5vdGF0aW9ucy5zZXF1b2lhLXBncC5vcmcEAx9vTD3b J0SXkhvcRcCr6uIDJwic3KFKxkH1m4QW0QKbDAIeARYhBMKfigwB81402BaqXOCS6zpcoQ26AAAX mwD8CWmukxwskU82RZLMk5fm1wCgMB5z8dA50KLw3rgsCykBAKg1w/Y7XpBS3SlXEegIg1K1e6dR fRxL7Z37WZXoH8AH
Date: Thu, 18 May 2023 14:58:53 -0400
Message-ID: <87wn15h3f6.fsf@fifthhorseman.net>
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-="; micalg="pgp-sha256"; protocol="application/pgp-signature"
Archived-At: <https://mailarchive.ietf.org/arch/msg/openpgp/lOcM68xylbBmJWGpywSIDESK_6U>
Subject: Re: [openpgp] [PATCH 1/2] Make it possible to parse arbitrary PKESKv6 packets.
X-BeenThere: openpgp@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: "Ongoing discussion of OpenPGP issues." <openpgp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/openpgp>, <mailto:openpgp-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/openpgp/>
List-Post: <mailto:openpgp@ietf.org>
List-Help: <mailto:openpgp-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/openpgp>, <mailto:openpgp-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 18 May 2023 19:36:03 -0000

hey folks--

This change was proposed over a week ago.  it adjusts only the wire
format of the v6 PKESK packet (with no implications on any of the
cryptographic dataflows), with a goal of making it easier to parse
unknown fingerprint versions:

On Mon 2023-05-08 20:01:19 +0200, Justus Winter wrote:
> diff --git a/crypto-refresh.md b/crypto-refresh.md
> index 7842a68..e102325 100644
> --- a/crypto-refresh.md
> +++ b/crypto-refresh.md
> @@ -994,9 +994,13 @@ The v6 PKESK packet consists of:
>  
>  - A one-octet version number with value 6.
>  
> -- A one octet key version number and N octets of the fingerprint of the public key or subkey to which the session key is encrypted.
> +- A one-octet size of the following two fields.
> +  The size may also be zero, and the key version and fingerprint omitted for an "anonymous recipient" (see {{pkesk-notes}}).
> +
> +- A one octet key version number.
> +
> +- The fingerprint of the public key or subkey to which the session key is encrypted.
>    Note that the length N of the fingerprint for a version 4 key is 20 octets; for a version 6 key N is 32.
> -  The key version number may also be zero, and the fingerprint omitted (that is, the length N is zero in this case), for an "anonymous recipient" (see {{pkesk-notes}}).
>  
>  - A one-octet number giving the public-key algorithm used.
>  
> @@ -1104,7 +1108,7 @@ In this case, the symmetric algorithm used MUST be AES-128, AES-192 or AES-256 (
>  
>  ### Notes on PKESK {#pkesk-notes}
>  
> -An implementation MAY accept or use a Key ID of all zeros, or a key version of zero and no key fingerprint, to hide the intended decryption key.
> +An implementation MAY accept or use a Key ID of all zeros, or an omitted key fingerprint, to hide the intended decryption key.
>  In this case, the receiving implementation would try all available private keys, checking for a valid decrypted session key.
>  This format helps reduce traffic analysis of messages.

This is represented in MR !304
(https://gitlab.com/openpgp-wg/rfc4880bis/-/merge_requests/304)

We haven't heard any objections on list here, or in the issue tracker,
so i think this can be merged.

   --dkg