Alternative Elliptic Curve Representations
draft-ietf-lwig-curve-representations-12

Document Type Active Internet-Draft (lwig WG)
Author Rene Struik 
Last updated 2020-10-20 (latest revision 2020-08-24)
Replaces draft-struik-lwig-curve-representations
Stream IETF
Intended RFC status Informational
Formats plain text pdf htmlized (tools) htmlized bibtex
Reviews
Stream WG state Submitted to IESG for Publication
Document shepherd Mohit Sethi
Shepherd write-up Show (last changed 2019-09-19)
IESG IESG state Waiting for Writeup
Consensus Boilerplate Yes
Telechat date
Responsible AD Erik Kline
Send notices to Mohit Sethi <mohit.m.sethi@ericsson.com>
IANA IANA review state IANA OK - Actions Needed
IANA expert review state Expert Reviews OK
lwig                                                           R. Struik
Internet-Draft                               Struik Security Consultancy
Intended status: Informational                           August 24, 2020
Expires: February 25, 2021

               Alternative Elliptic Curve Representations
                draft-ietf-lwig-curve-representations-12

Abstract

   This document specifies how to represent Montgomery curves and
   (twisted) Edwards curves as curves in short-Weierstrass form and
   illustrates how this can be used to carry out elliptic curve
   computations using existing implementations of, e.g., ECDSA and ECDH
   using NIST prime curves.  We also provide extensive background
   material that may be useful for implementers of elliptic curve
   cryptography.

Requirements Language

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
   "OPTIONAL" in this document are to be interpreted as described in BCP
   14 [RFC2119] [RFC8174] when, and only when, they appear in all
   capitals, as shown here.

Status of This Memo

   This Internet-Draft is submitted in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at https://datatracker.ietf.org/drafts/current/.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   This Internet-Draft will expire on February 25, 2021.

Struik                  Expires February 25, 2021               [Page 1]
Internet-Draft         lwig-curve-representations            August 2020

Copyright Notice

   Copyright (c) 2020 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents
   (https://trustee.ietf.org/license-info) in effect on the date of
   publication of this document.  Please review these documents
   carefully, as they describe your rights and restrictions with respect
   to this document.  Code Components extracted from this document must
   include Simplified BSD License text as described in Section 4.e of
   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.

Table of Contents

   1.  Fostering Code Reuse with New Elliptic Curves . . . . . . . .   5
   2.  Specification of Wei25519 . . . . . . . . . . . . . . . . . .   6
   3.  Use of Representation Switches  . . . . . . . . . . . . . . .   6
   4.  Examples  . . . . . . . . . . . . . . . . . . . . . . . . . .   7
     4.1.  Implementation of X25519  . . . . . . . . . . . . . . . .   7
     4.2.  Implementation of Ed25519 . . . . . . . . . . . . . . . .   8
     4.3.  Specification of ECDSA25519 . . . . . . . . . . . . . . .   8
     4.4.  Other Uses (Wei448, ECDH448, ECDSA448, and Others)  . . .   9
   5.  Caveats . . . . . . . . . . . . . . . . . . . . . . . . . . .   9
     5.1.  Wire Format . . . . . . . . . . . . . . . . . . . . . . .  10
     5.2.  Representation Conventions  . . . . . . . . . . . . . . .  10
     5.3.  Domain Parameters . . . . . . . . . . . . . . . . . . . .  10
   6.  Implementation Considerations . . . . . . . . . . . . . . . .  11
   7.  Implementation Status . . . . . . . . . . . . . . . . . . . .  12
   8.  Security Considerations . . . . . . . . . . . . . . . . . . .  13
   9.  Privacy Considerations  . . . . . . . . . . . . . . . . . . .  14
   10. Using Wei25519 and Wei448 with COSE and JOSE  . . . . . . . .  14
     10.1.  Using Wei25519 and Wei448 Keys with COSE and JOSE  . . .  14
       10.1.1.  Encoding of Short-Weierstrass Curves with COSE . . .  15
       10.1.2.  Encoding of Short-Weierstrass Curves with JOSE . . .  16
     10.2.  Using ECDSA25519 and ECDSA448 with COSE and JOSE . . . .  16
       10.2.1.  Encoding of ECDSA Instantiations with COSE . . . . .  17
       10.2.2.  Encoding of ECDSA Instantiations with JOSE . . . . .  18
     10.3.  Using ECDH25519 and ECDH448 with COSE and JOSE . . . . .  19
       10.3.1.  Encoding of co-factor ECDH with COSE . . . . . . . .  20
       10.3.2.  Encoding of co-factor ECDH with JOSE . . . . . . . .  20
   11. IANA Considerations . . . . . . . . . . . . . . . . . . . . .  20
     11.1.  IANA Considerations for Wei25519 . . . . . . . . . . . .  21
       11.1.1.  COSE Elliptic Curves Registration  . . . . . . . . .  21
       11.1.2.  COSE Algorithms Registration (1/2) . . . . . . . . .  21
       11.1.3.  COSE Algorithms Registration (2/2) . . . . . . . . .  21

Struik                  Expires February 25, 2021               [Page 2]
Show full document text