Re: [auth48] AUTH48: RFC-to-be 9496 <draft-irtf-cfrg-ristretto255-decaf448-08> for your review

Mike Hamburg <mike@shiftleft.org> Tue, 24 October 2023 16:04 UTC

Return-Path: <mike@SHIFTLEFT.ORG>
X-Original-To: auth48archive@ietfa.amsl.com
Delivered-To: auth48archive@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id B19DEC151082; Tue, 24 Oct 2023 09:04:07 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.106
X-Spam-Level:
X-Spam-Status: No, score=-2.106 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_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=unavailable autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=shiftleft.org
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 aI-nYoOVtmxb; Tue, 24 Oct 2023 09:04:03 -0700 (PDT)
Received: from wanderer.shiftleft.org (wanderer.shiftleft.org [45.79.68.162]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 57DB8C151548; Tue, 24 Oct 2023 09:04:03 -0700 (PDT)
Received: from smtpclient.apple (80-60-215-5.fixed.kpn.net [80.60.215.5]) (Authenticated sender: mike) by wanderer.shiftleft.org (Postfix) with ESMTPSA id 6DABF4347C; Tue, 24 Oct 2023 16:03:58 +0000 (UTC)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=shiftleft.org; s=sldo; t=1698163440; bh=shiRdBjHvpJGbW4LqjSGW9hh/82pTPecnkzD5zG+Mp8=; h=From:Subject:Date:In-Reply-To:Cc:To:References:From; b=dy3QdZw3ernkwXK+frtyJXNPXM6d0zx8iQzsEmOa1NjOBUqpgTewJmDm4fx25cOgK 0CR50NfeEyhH1YDZ9yRpqNOfIV3TCuif9ojNTlqC6uSNjKwljHgrECUWW6Wimm52RX Nq5vtqtgiNQNPcZShZNvGKbBnAuyf5c742HD6CTo=
From: Mike Hamburg <mike@shiftleft.org>
Message-Id: <F704A033-9CCB-4AAE-9647-8039F1A6CF8A@shiftleft.org>
Content-Type: multipart/alternative; boundary="Apple-Mail=_D942FBF0-8DA4-4335-A795-B4DE56F457F3"
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.200.41\))
Date: Tue, 24 Oct 2023 18:03:34 +0200
In-Reply-To: <CA+jiKjM5_PTHvxLX+nG9v9LBtHK=YkShLsD5P9HYeLXf_Z5wMw@mail.gmail.com>
Cc: Jack Grigg <ietf@jackgrigg.com>, auth48archive@rfc-editor.org, Christopher Wood <caw@heapingbits.net>, ietf@shiftleft.org, ietf@filippo.io, ietf@en.ciph.re, ietf@gtank.cc, Internet Research Steering Group <irsg@irtf.org>, RFC Editor <rfc-editor@rfc-editor.org>
To: Henry de Valence <ietf@hdevalence.ca>
References: <20231013234718.C898513BB4C3@rfcpa.amsl.com> <CAPC=aNVj8KgnWQZccZmKB_6+YDQS36RpN_JDwfycQL2+dBx=9g@mail.gmail.com> <CA+jiKjM5_PTHvxLX+nG9v9LBtHK=YkShLsD5P9HYeLXf_Z5wMw@mail.gmail.com>
X-Mailer: Apple Mail (2.3774.200.41)
Archived-At: <https://mailarchive.ietf.org/arch/msg/auth48archive/eUqGJf33ZzdXX4wl4X69PbyByzA>
Subject: Re: [auth48] AUTH48: RFC-to-be 9496 <draft-irtf-cfrg-ristretto255-decaf448-08> for your review
X-BeenThere: auth48archive@rfc-editor.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: "Archiving AUTH48 exchanges between the RFC Production Center, the authors, and other related parties" <auth48archive.rfc-editor.org>
List-Unsubscribe: <https://mailman.rfc-editor.org/mailman/options/auth48archive>, <mailto:auth48archive-request@rfc-editor.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/auth48archive/>
List-Post: <mailto:auth48archive@rfc-editor.org>
List-Help: <mailto:auth48archive-request@rfc-editor.org?subject=help>
List-Subscribe: <https://mailman.rfc-editor.org/mailman/listinfo/auth48archive>, <mailto:auth48archive-request@rfc-editor.org?subject=subscribe>
X-List-Received-Date: Tue, 24 Oct 2023 16:04:07 -0000

I approve publication.

(ietf@shiftleft.org <mailto:ietf@shiftleft.org> redirects to this address).

> On Oct 23, 2023, at 11:22 PM, Henry de Valence <ietf@hdevalence.ca> wrote:
> 
> Hey all,
> 
> Thanks all for the editorial questions and to Jack for the thoughtful comments, all of which I agree with.
> 
> One minor point: the authors list is rendered as
> 
> 
> Author(s)        : H. Valence, J. Grigg, M. Hamburg, I. Lovecruft, G. Tankersley, F. Valsorda
> 
> My last name should be written "de Valence", i.e., "H. de Valence". Is this an artifact of the document rendering, or is it possible to correct the document metadata to reflect this?
> 
> Cheers,
> Henry
> 
> 
> On Fri, Oct 13, 2023 at 10:36 PM Jack Grigg <ietf@jackgrigg.com <mailto:ietf@jackgrigg.com>> wrote:
> >
> > Hi all,
> >
> > Thank you RFC Editor/sg/ap for your work! I will perform my final review next week, but in the interim I can respond to some of the questions.
> >
> > For clarity, this email is NOT suggesting any immediate changes to the text (I will make my own suggestions after my review).
> >
> > On Sat, Oct 14, 2023 at 12:47 PM <rfc-editor@rfc-editor.org <mailto:rfc-editor@rfc-editor.org>> wrote:
> >>
> >> Authors,
> >>
> >> While reviewing this document during AUTH48, please resolve (as necessary) the following questions, which are also in the XML file.
> >>
> >> 1) <!-- [rfced] Please insert any keywords (beyond those that appear in the title) for use on https://www.rfc-editor.org/search. -->
> >>
> >>
> >> 2) <!-- [rfced] Please ensure that the guidelines listed in Section 2.1 of RFC 5743
> >> have been adhered to in this document.  See
> >> https://www.rfc-editor.org/rfc/rfc5743.html#section-2.1.
> >> -->
> >>
> >>
> >> 3) <!-- [rfced] Please consider including a reference for "Discrete Log Hardness".
> >> We do not see this phrase in RFCs and we did not find directly matching hits via
> >> our general searches.  Is this the same as the "hardness of the discrete logarithm
> >> problem"? 
> >>
> >> Original:
> >>    This means the group has a cofactor
> >>    of 1, and all elements are equivalent from the perspective of
> >>    Discrete Log Hardness.
> >> -->
> >>
> >
> > I think that "Discrete Log Hardness" and "hardness of the discrete logarithm problem" could be used interchangeably here.
> >  
> >>
> >>
> >> 4) <!-- [rfced] We have updated the following for readability.  Please review to
> >> ensure we have not altered the meaning.
> >>
> >> Original:
> >>    Edwards curves provide a number of implementation benefits for
> >>    cryptography, such as complete addition formulas with no exceptional
> >>    points and formulas among the fastest known for curve operations.
> >>
> >> Current:
> >>    Edwards curves provide a number of implementation benefits for
> >>    cryptography, such as complete addition formulas with no exceptional
> >>    points and formulas known to be among the fastest for curve
> >>    operations.
> >> -->
> >>
> >>
> >> 5) <!-- [rfced] Is "hash_to_curve" considered an algorithm? RFC 9380 refers to
> >> it as an encoding function.
> >>
> >> Original:
> >>    In some contexts this property would be a weakness, but it is
> >>    important in some contexts: in particular, it means that a
> >>    combination of a cryptographic hash function and the element
> >>    derivation function is suitable for use in algorithms such as
> >>    hash_to_curve [draft-irtf-cfrg-hash-to-curve-16].
> >> -->
> >>
> >
> > A "hash-to-curve algorithm" is something we would have referred to, yes. This specific reference should be adjusted however, because the now-published RFC 9380 specifically constrains the definition of hash_to_curve, and in Appendix B defines hash_to_ristretto255 with the same security properties and interface (and similarly for decaf448 in Appendix C). I'll think about a suggestion during my review.
> >
> > Relatedly, I notice that RFC 9380 refers to an old version of this RFC-to-be. Once RFC 9496 is published, I presume that RFC 9380's reference will be fixed? Their reference link is the one that implementers will be following more (our reference here is effectively an informational backlink).
> >  
> >>
> >>
> >> 6) <!-- [rfced] To what does "its" refer in the last sentence?
> >>
> >> Original (the paragraph is provided for context):
> >>    Since ristretto255 is a prime-order group, every element except the
> >>    identity is a generator, but for interoperability a canonical
> >>    generator is selected, which can be internally represented by the
> >>    Curve25519 basepoint, enabling reuse of existing precomputation for
> >>    scalar multiplication.  This is its encoding as produced by the
> >>    function specified in Section 4.3.2:
> >> -->
> >>
> >
> > "its" in the last sentence refers to "a canonical generator" in the previous sentence.
> >  
> >>
> >>
> >> 7) <!-- [rfced] May we change "reflect" to "note" here?
> >>
> >> Original:
> >>    Implementations SHOULD reflect that: the
> >>    type representing an element of the group SHOULD be opaque to the
> >>    caller, meaning they do not expose the underlying curve point or
> >>    field elements.
> >>
> >> Suggested:
> >>    Implementations SHOULD note that the
> >>    type representing an element of the group SHOULD be opaque to the
> >>    caller, meaning they do not expose the underlying curve point or
> >>    field elements.
> >> -->
> >>
> >
> > I don't think so, assuming that "note" is meant in the sense "to take notice of". The SHOULD applies as-written to implementations, not implementers. An implementation reflects what its implementer has noted.
> >
> > I will consider during my review whether in context "Implementations SHOULD reflect" or "Implementers SHOULD note" makes more sense.
> >  
> >>
> >>
> >> 8) <!--[rfced] May we clarify "allowed operations" as follows?
> >>
> >> Original:
> >>    The decoding
> >>    function always returns a valid internal representation, or an error,
> >>    and allowed operations on valid internal representations return valid
> >>    internal representations.
> >>
> >> Perhaps:
> >>    The decoding
> >>    function always returns a valid internal representation, or an error,
> >>    and operations that are allowed on valid internal representations return valid
> >>    internal representations.
> >> -->   
> >>
> >>
> >> 9) <!-- [rfced] FYI, we have alphabetized the references. Please let us know
> >> of any objections.
> >> -->
> >>
> >>
> >> 10) <!-- [rfced] The sourcecode in Appendices A.1, A.2, and A.3 extend
> >> beyond the 69-character margin.  Please let us know how the lines may
> >> be broken. 
> >> -->
> >>
> >
> > As these are not actual source code with established parsing rules, breaking the lines must be done carefully to ensure that adjacent test vectors are correctly separated. I'll make a suggestion to this effect in my review.
> >  
> >>
> >>
> >> 11) <!-- [rfced] Please review whether any of the notes in this document
> >> should be in the <aside> element. It is defined as "a container for
> >> content that is semantically less important or tangential to the
> >> content that surrounds it" (https://authors.ietf.org/en/rfcxml-vocabulary#aside).
> >> -->
> >>
> >>
> >> 12) <!-- [rfced] Please review the "Inclusive Language" portion of the online
> >> Style Guide <https://www.rfc-editor.org/styleguide/part2/#inclusive_language>
> >> and let us know if any changes are needed.
> >>
> >> For example, please consider whether "whitespace" should be updated.
> >> -->
> >>
> >
> > "Whitespace" here means any character that represents horizontal or vertical space in typography (https://en.wikipedia.org/wiki/Whitespace_character). To my knowledge there are no "positive or less harmful" connotations associated with this term (unlike other historic terms of art in computer science), and I don't know of another term that denotes the same set. But really all we need here is a concise way to say "if you're copy-pasting these hex strings into your code, any spaces, tabs, newlines, or whatever else the rendered version of this RFC happens to put into those gaps can be ignored and must be removed, and the position of them is irrelevant".
> >
> > Cheers,
> > Jack
> >  
> >>
> >>
> >> Thank you.
> >>
> >> RFC Editor/sg/ap
> >>
> >>
> >> On Oct 13, 2023, at 4:46 PM, rfc-editor@rfc-editor.org <mailto:rfc-editor@rfc-editor.org> wrote:
> >>
> >> *****IMPORTANT*****
> >>
> >> Updated 2023/10/13
> >>
> >> RFC Author(s):
> >> --------------
> >>
> >> Instructions for Completing AUTH48
> >>
> >> Your document has now entered AUTH48.  Once it has been reviewed and
> >> approved by you and all coauthors, it will be published as an RFC. 
> >> If an author is no longer available, there are several remedies
> >> available as listed in the FAQ (https://www.rfc-editor.org/faq/).
> >>
> >> You and you coauthors are responsible for engaging other parties
> >> (e.g., Contributors or Working Group) as necessary before providing
> >> your approval.
> >>
> >> Planning your review
> >> ---------------------
> >>
> >> Please review the following aspects of your document:
> >>
> >> *  RFC Editor questions
> >>
> >>    Please review and resolve any questions raised by the RFC Editor
> >>    that have been included in the XML file as comments marked as
> >>    follows:
> >>
> >>    <!-- [rfced] ... -->
> >>
> >>    These questions will also be sent in a subsequent email.
> >>
> >> *  Changes submitted by coauthors
> >>
> >>    Please ensure that you review any changes submitted by your
> >>    coauthors.  We assume that if you do not speak up that you
> >>    agree to changes submitted by your coauthors.
> >>
> >> *  Content
> >>
> >>    Please review the full content of the document, as this cannot
> >>    change once the RFC is published.  Please pay particular attention to:
> >>    - IANA considerations updates (if applicable)
> >>    - contact information
> >>    - references
> >>
> >> *  Copyright notices and legends
> >>
> >>    Please review the copyright notice and legends as defined in
> >>    RFC 5378 and the Trust Legal Provisions
> >>    (TLP – https://trustee.ietf.org/license-info/).
> >>
> >> *  Semantic markup
> >>
> >>    Please review the markup in the XML file to ensure that elements of 
> >>    content are correctly tagged.  For example, ensure that <sourcecode>
> >>    and <artwork> are set correctly.  See details at
> >>    <https://authors.ietf.org/rfcxml-vocabulary>.
> >>
> >> *  Formatted output
> >>
> >>    Please review the PDF, HTML, and TXT files to ensure that the
> >>    formatted output, as generated from the markup in the XML file, is
> >>    reasonable.  Please note that the TXT will have formatting
> >>    limitations compared to the PDF and HTML.
> >>
> >>
> >> Submitting changes
> >> ------------------
> >>
> >> To submit changes, please reply to this email using ‘REPLY ALL’ as all
> >> the parties CCed on this message need to see your changes. The parties
> >> include:
> >>
> >>    *  your coauthors
> >>
> >>    *  rfc-editor@rfc-editor.org <mailto:rfc-editor@rfc-editor.org> (the RPC team)
> >>
> >>    *  other document participants, depending on the stream (e.g.,
> >>       IETF Stream participants are your working group chairs, the
> >>       responsible ADs, and the document shepherd).
> >>
> >>    *  auth48archive@rfc-editor.org <mailto:auth48archive@rfc-editor.org>, which is a new archival mailing list
> >>       to preserve AUTH48 conversations; it is not an active discussion
> >>       list:
> >>
> >>      *  More info:
> >>         https://mailarchive.ietf.org/arch/msg/ietf-announce/yb6lpIGh-4Q9l2USxIAe6P8O4Zc
> >>
> >>      *  The archive itself:
> >>         https://mailarchive.ietf.org/arch/browse/auth48archive/
> >>
> >>      *  Note: If only absolutely necessary, you may temporarily opt out
> >>         of the archiving of messages (e.g., to discuss a sensitive matter).
> >>         If needed, please add a note at the top of the message that you
> >>         have dropped the address. When the discussion is concluded,
> >>         auth48archive@rfc-editor.org <mailto:auth48archive@rfc-editor.org> will be re-added to the CC list and
> >>         its addition will be noted at the top of the message.
> >>
> >> You may submit your changes in one of two ways:
> >>
> >> An update to the provided XML file
> >>  — OR —
> >> An explicit list of changes in this format
> >>
> >> Section # (or indicate Global)
> >>
> >> OLD:
> >> old text
> >>
> >> NEW:
> >> new text
> >>
> >> You do not need to reply with both an updated XML file and an explicit
> >> list of changes, as either form is sufficient.
> >>
> >> We will ask a stream manager to review and approve any changes that seem
> >> beyond editorial in nature, e.g., addition of new text, deletion of text,
> >> and technical changes.  Information about stream managers can be found in
> >> the FAQ.  Editorial changes do not require approval from a stream manager.
> >>
> >>
> >> Approving for publication
> >> --------------------------
> >>
> >> To approve your RFC for publication, please reply to this email stating
> >> that you approve this RFC for publication.  Please use ‘REPLY ALL’,
> >> as all the parties CCed on this message need to see your approval.
> >>
> >>
> >> Files
> >> -----
> >>
> >> The files are available here:
> >>    https://www.rfc-editor.org/authors/rfc9496.xml
> >>    https://www.rfc-editor.org/authors/rfc9496.html
> >>    https://www.rfc-editor.org/authors/rfc9496.pdf
> >>    https://www.rfc-editor.org/authors/rfc9496.txt
> >>
> >> Diff file of the text:
> >>    https://www.rfc-editor.org/authors/rfc9496-diff.html
> >>    https://www.rfc-editor.org/authors/rfc9496-rfcdiff.html (side by side)
> >>
> >> Diff of the XML:
> >>    https://www.rfc-editor.org/authors/rfc9496-xmldiff1.html
> >>
> >>
> >> Tracking progress
> >> -----------------
> >>
> >> The details of the AUTH48 status of your document are here:
> >>    https://www.rfc-editor.org/auth48/rfc9496
> >>
> >> Please let us know if you have any questions. 
> >>
> >> Thank you for your cooperation,
> >>
> >> RFC Editor
> >>
> >> --------------------------------------
> >> RFC9496 (draft-irtf-cfrg-ristretto255-decaf448-08)
> >>
> >> Title            : The ristretto255 and decaf448 Groups
> >> Author(s)        : H. Valence, J. Grigg, M. Hamburg, I. Lovecruft, G. Tankersley, F. Valsorda
> >> WG Chair(s)      :
> >> Area Director(s) :
> >>
> >>