Re: [openpgp] Question on Signature Expiration

Daniel Huigens <d.huigens@protonmail.com> Wed, 19 January 2022 12:13 UTC

Return-Path: <d.huigens@protonmail.com>
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 521583A1B29 for <openpgp@ietfa.amsl.com>; Wed, 19 Jan 2022 04:13:22 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.097
X-Spam-Level:
X-Spam-Status: No, score=-2.097 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, FREEMAIL_FROM=0.001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=protonmail.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id o4xuxrKXtUqb for <openpgp@ietfa.amsl.com>; Wed, 19 Jan 2022 04:13:18 -0800 (PST)
Received: from mail-4322.protonmail.ch (mail-4322.protonmail.ch [185.70.43.22]) (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 DB7053A18C4 for <openpgp@ietf.org>; Wed, 19 Jan 2022 04:13:17 -0800 (PST)
Date: Wed, 19 Jan 2022 12:13:12 +0000
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com; s=protonmail2; t=1642594394; bh=Qan3MO9syO69Tw7kIujxKVdlgS+ffMfhrW8Ey5jkUHE=; h=Date:To:From:Cc:Reply-To:Subject:Message-ID:In-Reply-To: References:From:To:Cc; b=Az/jzff8tY+Gask6MQmSCjn4TZ1F6dgMkQJfSz7Z6lefBxANlS/9LeI1AZx1lVhp6 AO1xZjg/T+Oo1WT4df7Q2Zy45GIIwejnmwlC4wamZEDpxeu0hoMGWbDzFnxao/ihJK NlPvniUOBdEXVAM8lhdmgW++FCzrpwuRZxZPwh1jzF/9LwOvbDij2I9aCrpEZEcHrL lGR/DyiyrH5oqCl7cjEEIpy9J4R1Zxy3KVIhdoBJQQi0NLrFcONcpn8wrPROsU/gSq RKVgnFnIc0+nORgoa1eU5ipbHNIKAAKDplYEOZ7E4oqtdrLC0RvskCG5/agDKFrjcQ n1PNeXJHJ7R+A==
To: Paul Schaub <vanitasvitae@fsfe.org>
From: Daniel Huigens <d.huigens@protonmail.com>
Cc: openpgp@ietf.org
Reply-To: Daniel Huigens <d.huigens@protonmail.com>
Message-ID: <QE0n7mqLAGgilIsOvVnfugQhfEaknQan6SJS1X7xUKt3rZaR94SEvk0u6mVLNx6Sygt6Dgdv7KEPxL8_-7A5t-_-UfCNRW6tOjUq9xTd-B4=@protonmail.com>
In-Reply-To: <4af3dfef-8376-5f73-55c3-a960e6840c6e@fsfe.org>
References: <4af3dfef-8376-5f73-55c3-a960e6840c6e@fsfe.org>
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
Archived-At: <https://mailarchive.ietf.org/arch/msg/openpgp/5WyONHw0dj0fxvQ6QbOGFTA0UGk>
Subject: Re: [openpgp] Question on Signature Expiration
X-BeenThere: openpgp@ietf.org
X-Mailman-Version: 2.1.29
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: Wed, 19 Jan 2022 12:13:22 -0000

Hi Paul,

I know this is a fairly late response, but for the record, there's
some somewhat-related discussion on key expiration and signature
expiration in [0].

FWIW, I think your interpretation is correct; in order to shorten the
expiration time of a user ID, the signature needs to be revoked first,
and a new one created.

Technically speaking, the spec doesn't guarantee that the last
self-signature (and thus key expiration date) for a key is taken,
either (though I do think most implementations behave that way), so
arguably, for shortening key expiration, a revocation should be
created too. From [1]:

> ```
> An implementation that encounters multiple self-signatures on the
> same object may resolve the ambiguity in any way it sees fit, but it
> is RECOMMENDED that priority be given to the most recent self-
> signature.
> ```
>
> IMO this should be a hard MUST. (...)

... which I agree with, btw.

As I said in [0], I wouldn't be opposed to a "Subject Expiration Time"
subpacket, which applies to whatever is being signed (key or user ID),
which (together with making the above a MUST) would allow you to
change the expiration time of both keys and user IDs without a
revocation, though this is probably out of scope for the current
crypto refresh charter.

Best,
Daniel Huigens

[0]: https://gitlab.com/openpgp-wg/rfc4880bis/-/issues/71#note_814223590
[1]: https://mailarchive.ietf.org/arch/msg/openpgp/F9U95U2GOcjPR9DIoF5LNc4pLAU/