Re: [COSE] draft-prorock-cose-post-quantum-signatures [Was: Re: Call for COSE Agenda Items for IETF 113 in Vienna]
David Waite <david@alkaline-solutions.com> Tue, 15 March 2022 06:49 UTC
Return-Path: <david@alkaline-solutions.com>
X-Original-To: cose@ietfa.amsl.com
Delivered-To: cose@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1])
by ietfa.amsl.com (Postfix) with ESMTP id 3C2BB3A1940
for <cose@ietfa.amsl.com>; Mon, 14 Mar 2022 23:49:03 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.107
X-Spam-Level:
X-Spam-Status: No, score=-7.107 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, HTML_MESSAGE=0.001,
RCVD_IN_DNSWL_HI=-5, SPF_HELO_NONE=0.001, SPF_PASS=-0.001,
T_SCC_BODY_TEXT_LINE=-0.01, UNPARSEABLE_RELAY=0.001,
URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key)
header.d=alkaline-solutions.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 J5XBzQW6CJqI for <cose@ietfa.amsl.com>;
Mon, 14 Mar 2022 23:48:58 -0700 (PDT)
Received: from caesium6.alkaline.solutions (caesium6.alkaline.solutions
[157.230.133.164])
(using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits))
(No client certificate requested)
by ietfa.amsl.com (Postfix) with ESMTPS id 596913A11EB
for <cose@ietf.org>; Mon, 14 Mar 2022 23:48:57 -0700 (PDT)
Received: from authenticated-user (PRIMARY_HOSTNAME [PUBLIC_IP])
by caesium6.alkaline.solutions (Postfix) with ESMTPA id 017872066C5;
Tue, 15 Mar 2022 06:48:53 +0000 (UTC)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=alkaline-solutions.com;
s=dkim; t=1647326935;
h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
to:to:cc:cc:mime-version:mime-version:content-type:content-type:
in-reply-to:in-reply-to:references:references;
bh=2pmuICLLGNsoKEZCKpDVX4+IXEfVHeeNB9wyPigJlDU=;
b=fs0SxtTDhz3x+s6TUdK+C8o2qpIGVq7FmSsyuY4SLJXPNMRK/BbnVwswVRJoyxob6MHl8Y
sBrc/JmzqmJ15LY2yzdPu8X7Sg8cfxd7bGAuYB9Blh+YchFH98hbAM3btESathiwFmWGUf
xwg6TQ0kUyx+ncZKz5AkvkKtWxEkJOw=
From: David Waite <david@alkaline-solutions.com>
Message-Id: <3053B653-6F26-421F-8498-1002030F3CD8@alkaline-solutions.com>
Content-Type: multipart/alternative;
boundary="Apple-Mail=_796DF117-E7A6-40CC-B136-1D8C2B722297"
Mime-Version: 1.0
Date: Tue, 15 Mar 2022 00:48:52 -0600
In-Reply-To: <CAN8C-_Jo_-=Jpava0db6BgR4j_BEyZp_3hN6VEv7MJuBwCsPQA@mail.gmail.com>
Cc: Mike Jones <Michael.Jones@microsoft.com>,
Ilari Liusvaara <ilariliusvaara@welho.com>,
Russ Housley <housley@vigilsec.com>, "cose@ietf.org" <cose@ietf.org>
To: Orie Steele <orie@transmute.industries>
References: <SA2PR00MB1002DE43864B01F70546A691F50F9@SA2PR00MB1002.namprd00.prod.outlook.com>
<CAN8C-_Jo_-=Jpava0db6BgR4j_BEyZp_3hN6VEv7MJuBwCsPQA@mail.gmail.com>
Authentication-Results: caesium6.alkaline.solutions;
auth=pass smtp.mailfrom=david@alkaline-solutions.com
X-Spamd-Bar: /
Archived-At: <https://mailarchive.ietf.org/arch/msg/cose/P3aEP-ebCx9uVpbM9cQpfBd7hhY>
Subject: Re: [COSE] draft-prorock-cose-post-quantum-signatures [Was: Re:
Call for COSE Agenda Items for IETF 113 in Vienna]
X-BeenThere: cose@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: CBOR Object Signing and Encryption <cose.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/cose>,
<mailto:cose-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/cose/>
List-Post: <mailto:cose@ietf.org>
List-Help: <mailto:cose-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/cose>,
<mailto:cose-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 15 Mar 2022 06:49:04 -0000
> On Mar 14, 2022, at 2:19 PM, Orie Steele <orie@transmute.industries> wrote: <snip> > So for a dilithium example: > > kty: PQK (required) > pset: CRYD3 (required) > x: ... (required) > alg: CRYD3 (optional) Would you expect additional parameters (say “s1” and “s2”) for private keys? Is X consistent within a parameter set, or is there variability (such as the algorithm to generate the matrix from a seed value, or the option to include a full matrix) > Obviously JWK thumbprint will need to be aware of all required fields, and will need to drop all optional fields in order to be useful. And if those rules aren’t generic and simple, it is possible we have rolled multiple key types into one “kty”. The “EC” key type allowed just “X” coordinates for other curves, but my interpretation is that “OKP” was still created because the public value for Edwards curves was defined with a different packed binary format. I posit it is better to have experimental key types for experimental key formats, vs the potential for a complex set of key forms in future production deployments. That is not to say that I have an informed opinion on stability of any proposal. > If we don't define something like "pset" and we don't make "alg" required for "kty:PQK"... the only optional will be to explode based on mismatched keys / signatures... unless I am missing something... we have the same problem with P-256 keys today... when "alg" is not present, you can't tell if the key is for "signing" or "key agreement"... which means that any JWE / JWS can target that key, and the key representation won't catch what the key was intended for... unless "alg" and "use" are present... which nobody can rely on, because they are marked optional. Parameter set seems appropriate, as long as it is the term of art for the category of key type, and (for a given parameter set name) is in a non-extensible format. WRT the usage of “alg” - there can be multiple algorithms that leverage the same underlying key object, which means a subtype is a different level of restrictiveness/specificity than specifying an algorithm. A single instantiated key of a subtype can be used with multiple algorithms (“RS” and “PS” families), and a single algorithm can be used with multiple key subtypes - such as “ECDH-ES” and “EdDSA”. This would make the subtype of a key and its algorithmic usage restrictions orthogonal. > Take a look at: https://auth0.com/docs/secure/tokens/json-web-tokens/json-web-key-set-properties <https://auth0.com/docs/secure/tokens/json-web-tokens/json-web-key-set-properties> > > Notice that they include "alg" and "use"... if both are optional, why include them in such an example? > FWIW I think making "alg" required is the best thing to do for new key types moving forward (it addresses future ambiguity / explicit over implicit makes me feel safer). The “alg” and “use” parameters are restrictions on key object usage, rather than specifying the key object cryptographic properties themselves. IMHO, one needs an underlying PKI or just blanket immutability which restricts a party from changing such parameters over time for them to have value. Historically these have not been “self asserted”, but rather asserted by an authority in a PKI system who has made an integrity protected statement about the key (e.g. a public certificate). In this case they may not be self-imposed restrictions, but restrictions by the trust broker, such as “they can’t act as a sub-CA” or “check here to see if the authority marked this key as revoked”. Likewise, key usage restrictions are systems-specific. An example would be key operations (also specified in the JWK RFC, distinct from “use”). Verification relationships in decentralized identifier documents are arguably another example of operational restrictions, albeit in a graph rather than a simple broker hierarchy. -DW
- [COSE] Call for COSE Agenda Items for IETF 113 in… Mike Jones
- Re: [COSE] Call for COSE Agenda Items for IETF 11… Mike Jones
- Re: [COSE] Call for COSE Agenda Items for IETF 11… Mike Jones
- Re: [COSE] Call for COSE Agenda Items for IETF 11… Anders Rundgren
- Re: [COSE] Call for COSE Agenda Items for IETF 11… Mike Prorock
- Re: [COSE] Call for COSE Agenda Items for IETF 11… Hannes Tschofenig
- [COSE] draft-prorock-cose-post-quantum-signatures… Ilari Liusvaara
- Re: [COSE] draft-prorock-cose-post-quantum-signat… Anders Rundgren
- Re: [COSE] draft-prorock-cose-post-quantum-signat… Mike Prorock
- Re: [COSE] draft-prorock-cose-post-quantum-signat… Russ Housley
- Re: [COSE] draft-prorock-cose-post-quantum-signat… Mike Jones
- Re: [COSE] draft-prorock-cose-post-quantum-signat… Anders Rundgren
- Re: [COSE] draft-prorock-cose-post-quantum-signat… Ilari Liusvaara
- Re: [COSE] draft-prorock-cose-post-quantum-signat… Mike Prorock
- Re: [COSE] Call for COSE Agenda Items for IETF 11… Göran Selander
- Re: [COSE] draft-prorock-cose-post-quantum-signat… Orie Steele
- Re: [COSE] draft-prorock-cose-post-quantum-signat… Orie Steele
- Re: [COSE] draft-prorock-cose-post-quantum-signat… Anders Rundgren
- Re: [COSE] draft-prorock-cose-post-quantum-signat… Mike Prorock
- Re: [COSE] draft-prorock-cose-post-quantum-signat… Mike Jones
- Re: [COSE] draft-prorock-cose-post-quantum-signat… Mike Prorock
- Re: [COSE] draft-prorock-cose-post-quantum-signat… Ilari Liusvaara
- Re: [COSE] draft-prorock-cose-post-quantum-signat… Ilari Liusvaara
- Re: [COSE] draft-prorock-cose-post-quantum-signat… Rafael Misoczki
- Re: [COSE] draft-prorock-cose-post-quantum-signat… John K
- Re: [COSE] draft-prorock-cose-post-quantum-signat… Anders Rundgren
- Re: [COSE] draft-prorock-cose-post-quantum-signat… Ilari Liusvaara
- Re: [COSE] draft-prorock-cose-post-quantum-signat… Ilari Liusvaara
- Re: [COSE] draft-prorock-cose-post-quantum-signat… Russ Housley
- Re: [COSE] draft-prorock-cose-post-quantum-signat… Anders Rundgren
- Re: [COSE] draft-prorock-cose-post-quantum-signat… Rafael Misoczki
- Re: [COSE] draft-prorock-cose-post-quantum-signat… Russ Housley
- Re: [COSE] draft-prorock-cose-post-quantum-signat… Anders Rundgren
- Re: [COSE] draft-prorock-cose-post-quantum-signat… Ilari Liusvaara
- Re: [COSE] draft-prorock-cose-post-quantum-signat… Russ Housley
- Re: [COSE] draft-prorock-cose-post-quantum-signat… Orie Steele
- Re: [COSE] draft-prorock-cose-post-quantum-signat… Mike Jones
- Re: [COSE] draft-prorock-cose-post-quantum-signat… Orie Steele
- Re: [COSE] draft-prorock-cose-post-quantum-signat… Anders Rundgren
- Re: [COSE] draft-prorock-cose-post-quantum-signat… David Waite
- Re: [COSE] draft-prorock-cose-post-quantum-signat… Mike Prorock
- Re: [COSE] draft-prorock-cose-post-quantum-signat… Anders Rundgren
- Re: [COSE] draft-prorock-cose-post-quantum-signat… Russ Housley
- Re: [COSE] draft-prorock-cose-post-quantum-signat… Orie Steele
- Re: [COSE] draft-prorock-cose-post-quantum-signat… Mike Prorock
- Re: [COSE] draft-prorock-cose-post-quantum-signat… Mike Prorock
- Re: [COSE] draft-prorock-cose-post-quantum-signat… Mike Prorock
- Re: [COSE] draft-prorock-cose-post-quantum-signat… Ilari Liusvaara
- Re: [COSE] draft-prorock-cose-post-quantum-signat… Ilari Liusvaara
- Re: [COSE] draft-prorock-cose-post-quantum-signat… Russ Housley
- Re: [COSE] draft-prorock-cose-post-quantum-signat… Mike Prorock
- Re: [COSE] draft-prorock-cose-post-quantum-signat… Michael Richardson
- Re: [COSE] draft-prorock-cose-post-quantum-signat… Mike Jones
- Re: [COSE] draft-prorock-cose-post-quantum-signat… Mike Jones