[Acme] Re: Update: draft-geng-acme-public-key-05

Ilari Liusvaara <ilariliusvaara@welho.com> Thu, 02 April 2026 17:37 UTC

Return-Path: <ilariliusvaara@welho.com>
X-Original-To: acme@mail2.ietf.org
Delivered-To: acme@mail2.ietf.org
Received: from localhost (localhost [127.0.0.1]) by mail2.ietf.org (Postfix) with ESMTP id EE366D5A987E for <acme@mail2.ietf.org>; Thu, 2 Apr 2026 10:37:24 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ietf.org; s=ietf1; t=1775151444; bh=kRWNmwX8fULKLsOyvmrwh8V6+zp5tlu4+3dkxyAQX/U=; h=Date:From:To:Subject:References:In-Reply-To; b=NlvLxO9zBqSrK1uZ0gE8r1IgDxLRjZZBPHfaYUrdJqxeJsHBRd8EwxtrcrM51GH81 9CRVCQhnmBXTJEBobuawoguE3/meFPJiKY84t54y36wRSRoP0yDqc8NLCimct8gcO/ akb3szv7Ve1O5fTDlb9l+Swwf1Jsr4MLHjayEaqY=
X-Virus-Scanned: amavisd-new at ietf.org
X-Spam-Flag: NO
X-Spam-Score: -2.099
X-Spam-Level:
X-Spam-Status: No, score=-2.099 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_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_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=welho.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 QgE54dhUJ--t for <acme@mail2.ietf.org>; Thu, 2 Apr 2026 10:37:24 -0700 (PDT)
Received: from smtp.dnamail.fi (sender001.dnamail.fi [83.102.40.178]) (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 F1407D5A9876 for <acme@ietf.org>; Thu, 2 Apr 2026 10:37:23 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1]) by smtp.dnamail.fi (Postfix) with ESMTP id E8AAB2113E1B for <acme@ietf.org>; Thu, 2 Apr 2026 20:37:22 +0300 (EEST)
X-Virus-Scanned: X-Virus-Scanned: amavis at smtp.dnamail.fi
Received: from smtp.dnamail.fi ([83.102.40.178]) by localhost (dmail-psmtp01.s.dnaip.fi [127.0.0.1]) (amavis, port 10024) with ESMTP id bYN6nDAHMZjL for <acme@ietf.org>; Thu, 2 Apr 2026 20:37:22 +0300 (EEST)
Received: from LK-Perkele-VII2 (87-92-117-27.bb.dnainternet.fi [87.92.117.27]) (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) (Authenticated sender: hliusvaa@dnamail.internal) by smtp.dnamail.fi (Postfix) with ESMTPSA id 570862113E19 for <acme@ietf.org>; Thu, 2 Apr 2026 20:37:22 +0300 (EEST)
DKIM-Filter: OpenDKIM Filter v2.11.0 smtp.dnamail.fi 570862113E19
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=welho.com; s=2025-03; t=1775151442; bh=pZJpIxkCG4hD3hHEc595xQJ15Ts3NzcwFIzrl7xI7i8=; h=Date:From:To:Subject:References:In-Reply-To:From; b=d8XCQnFLarQQ6B3qAonzDXSj8LDZdKEazsrW2Z6+9RHnISPNidmsqpTPKGJgmwFzL UTy28v3Y65W3oPXUYTNH3b2wkXbdfMoHjuheRrZ1kYaIQcGz6Hynw2dB0746NjNPJq 9RvD/sCmH83fS85ZqCbYp6O+ZYXbYKyN2RnGAm8X33wDFOcY9kt/VmlJHfzcBOilXi Y20cfDslVk9/DCCBD2qOFYNkePPkJrpxar045Q5tD7Fr2KHX2EUvzLK3TTobN7UkZ2 f1Q1BLiFxpyEGAmPRyrv/BNELGYAvb5MdB8AdNSglwFqHdTOX5qQEtt0wZCqD6zrTh d7LPnDXTFemWA==
Date: Thu, 02 Apr 2026 20:37:22 +0300
From: Ilari Liusvaara <ilariliusvaara@welho.com>
To: IETF ACME <acme@ietf.org>
Message-ID: <ac6pUlXmhEOFYmFB@LK-Perkele-VII2.locald>
References: <CAB=Y13dw+m7Oc4JPi+dk77tNZ=xJf05WRefd2fjRdOvz_qJjyA@mail.gmail.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <CAB=Y13dw+m7Oc4JPi+dk77tNZ=xJf05WRefd2fjRdOvz_qJjyA@mail.gmail.com>
Sender: ilariliusvaara@welho.com
Message-ID-Hash: RQEEG2OJMQTU2S3VGVF4L7ERQ3EMH5K2
X-Message-ID-Hash: RQEEG2OJMQTU2S3VGVF4L7ERQ3EMH5K2
X-MailFrom: ilariliusvaara@welho.com
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-acme.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: [Acme] Re: Update: draft-geng-acme-public-key-05
List-Id: Automated Certificate Management Environment <acme.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/acme/Hw2nRqD3jXZRD4Domk2wOn-NM2Y>
List-Archive: <https://mailarchive.ietf.org/arch/browse/acme>
List-Help: <mailto:acme-request@ietf.org?subject=help>
List-Owner: <mailto:acme-owner@ietf.org>
List-Post: <mailto:acme@ietf.org>
List-Subscribe: <mailto:acme-join@ietf.org>
List-Unsubscribe: <mailto:acme-leave@ietf.org>

On Thu, Apr 02, 2026 at 10:15:48PM +0800, 吴攀雨 wrote:
> 
> Here’s a summary of the main changes from -04 to -05:
> 
> 
> *1. Challenge type consolidation*
> 
> The six challenge types in -04 (pk-dns-01, pk-http-01, pk-tls-alpn-01,
> pk-email-01, pk-csr-01, pk-cert-01) are now unified into a single pk-01
> challenge. Delivery is negotiated via supported_delivery / delivery fields
> in the challenge object.

Having that kind of method overloading seems messy.


> *3. Unified PoP signing formula*
> 
> All delivery methods now use a consistent signature construction with
> domain separation and identifier binding:
> 
>   to_sign = "ACME-pk-01\x00" || keyAuthorization || "." || identifier

Because that signs with key that is likely used in TLS, it should use
the TLS 1.3 signature format (but with its own context). This can be
done by prepending 0x20 (space) byte repeated 64 times to that.
 
 
> *4. New ALPN identifier “acme-pk/1”*
> 
> Defined a new TLS ALPN protocol identifier independent of RFC 8737
> (“acme-tls/1”).
> 
> In sync mode, the TLS handshake directly returns the raw proof bytes as
> application data, without requiring a self-signed X.509 certificate with
> the acmeValidation extension. An IANA registration has been requested per
> RFC 7301.

- What is <domain>? A single order can have names from multiple domains.
- If the ACME client is supposed to compute the PoP, why not return it
  directly? Much simpler for client and ACME server.
  * E.g. .onion validation can use direct return.


> *5. Security enhancements*
> 
> Added defenses against:
> 
>     •Unknown Key Share (UKS) via identifier binding

Is this because of indirect PoP return?


>     •Cross-protocol attacks via “ACME-pk-01\x00” domain separation

Should be using TLS 1.3-compatible format, instead of new format that
risks cross-protocol attacks.


>     •Authorization reuse via SPKI-level binding checks.

It is not clear to me why this is needed. 

It seems to be just stating that the authorization can not be reused
between different keys, which is obvious.

 
> *6. Post-quantum (PQC) considerations*
> 
> Added motivation for PQC transition. Noted that PQ signatures may exceed
> DNS TXT limits, and recommend using sync mode (pop_mode: "sync", TLS-ALPN
> delivery) for PQ scenarios.

Base64-encoded ML-DSA-87 signatures are ~6kB, which is well below DNS TXT
limits. And DNS TXT is 8-bit clean, so Base64 is not needed.




-Ilari