Homomorphic Multiplication for X25519 and X448
draft-barnes-cfrg-mult-for-7748-00
|
Document |
Type |
|
Active Internet-Draft (individual)
|
|
Last updated |
|
2019-11-04
|
|
Stream |
|
(None)
|
|
Intended RFC status |
|
(None)
|
|
Formats |
|
plain text
xml
pdf
htmlized
bibtex
|
Stream |
Stream state |
|
(No stream defined) |
|
Consensus Boilerplate |
|
Unknown
|
|
RFC Editor Note |
|
(None)
|
IESG |
IESG state |
|
I-D Exists
|
|
Telechat date |
|
|
|
Responsible AD |
|
(None)
|
|
Send notices to |
|
(None)
|
Network Working Group R. Barnes
Internet-Draft Cisco
Updates: 7748 (if approved) J. Alwen
Intended status: Informational Wickr
Expires: May 7, 2020 S. Corretti
IOHK
November 04, 2019
Homomorphic Multiplication for X25519 and X448
draft-barnes-cfrg-mult-for-7748-00
Abstract
In some contexts it is useful for holders of the private and public
parts of an elliptic curve key pair to be able to independently apply
an updates to those values, such that the resulting updated public
key corresponds to the updated private key. Such updates are
straightforward for older elliptic curves, but for X25519 and X448,
the "clamping" prescribed for scalars requires some additional
processing. This document defines a multiplication procedure that
can be used to update X25519 and X448 key pairs. This algorithm can
fail to produce a result, but only with negligible probability.
Failures can be detected by the holder of the private key.
Note to Readers
Source for this draft and an issue tracker can be found at
https://github.com/bifurcation/draft-barnes-cfrg-mult-for-7748 [1].
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 May 7, 2020.
Barnes, et al. Expires May 7, 2020 [Page 1]
Internet-Draft Multiplication November 2019
Copyright Notice
Copyright (c) 2019 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. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Updating X25519 / X448 key pairs . . . . . . . . . . . . . . 3
3. Failure Cases . . . . . . . . . . . . . . . . . . . . . . . . 4
3.1. X25519 . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.2. X448 . . . . . . . . . . . . . . . . . . . . . . . . . . 5
4. Protocol Considerations . . . . . . . . . . . . . . . . . . . 6
5. Security Considerations . . . . . . . . . . . . . . . . . . . 6
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 7
7. References . . . . . . . . . . . . . . . . . . . . . . . . . 7
7.1. Normative References . . . . . . . . . . . . . . . . . . 7
7.2. Informative References . . . . . . . . . . . . . . . . . 7
7.3. URIs . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Appendix A. Test Vectors . . . . . . . . . . . . . . . . . . . . 7
A.1. X25519 . . . . . . . . . . . . . . . . . . . . . . . . . 8
A.2. X448 . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Appendix B. Acknowledgements . . . . . . . . . . . . . . . . . . 10
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 10
1. Introduction
In some contexts it is useful for holders of the private and public
parts of an elliptic curve key pair to be able to independently apply
an updates to those values, such that the resulting updated public
key corresponds to the updated private key. [[ TODO: Cite examples
(e.g. HKD like BIP32, Tor Hidden Service Identity Blinding, MLS),
security properties]]
Such updates are straightforward with traditional elliptic curve
groups, such as the NIST and Brainpool curve groups
[NISTCurves][RFC5639], or with the proposed Ristretto groups
[I-D.hdevalence-cfrg-ristretto]. In these groups, multiplication of
Barnes, et al. Expires May 7, 2020 [Page 2]
Show full document text