Zum Hauptinhalt springen

1. Introduction (Einführung)

1. Introduction (Einführung)

Seit der ersten Standardisierung der Elliptic Curve Cryptography (ECC [RFC6090]) in [SEC1] wurden bedeutende Fortschritte sowohl in Bezug auf Effizienz als auch Sicherheit von Kurven und Implementierungen erzielt. Bemerkenswerte Beispiele sind Algorithmen, die gegen bestimmte Seitenkanalangriffe geschützt sind, verschiedene "spezielle" Primzahlformen, die schnellere modulare Arithmetik ermöglichen, und eine größere Auswahl an Kurvenmodellen. Es gibt auch Bedenken in der Community bezüglich der Generierung und potenzieller Schwächen der von NIST [NIST] definierten Kurven.

Dieses Memo spezifiziert zwei elliptische Kurven ("curve25519" und "curve448"), die sich für konstante-Zeit-Implementierung und eine ausnahmefreie Skalarmultiplikation eignen, die gegen eine breite Palette von Seitenkanalangriffen resistent ist, einschließlich Timing- und Cache-Angriffen. Es handelt sich um Montgomery-Kurven (wobei v^2 = u^3 + Au^2 + u), und sie haben daher birational äquivalente Edwards-Versionen. Edwards-Kurven unterstützen die schnellsten (derzeit bekannten) vollständigen Formeln für elliptische Kurvengruppenoperationen, insbesondere die Edwards-Kurve x^2 + y^2 = 1 + dx^2y^2 für Primzahlen p wenn p = 3 mod 4, und die twisted Edwards-Kurve -x^2 + y^2 = 1 + dx^2*y^2 wenn p = 1 mod 4. Die Abbildungen von/zu den Montgomery-Kurven zu ihren (twisted) Edwards-Äquivalenten werden ebenfalls angegeben.

Dieses Memo spezifiziert auch, wie diese Kurven mit dem Diffie-Hellman-Protokoll für Schlüsselvereinbarung verwendet werden können.