Zum Inhalt springen
ecdsa.com
EmpfohlenTwisted Edwards

edwards25519

Edwards25519 ist die Twisted-Edwards-Form von Curve25519 und die Kurve der Ed25519-Signaturen.

edwards25519 ist eine Twisted-Edwards-Kurve ax² + y² = 1 + dx²y² über einem 255-Bit-Primkörper mit einer 253-Bit-Untergruppe von Primordnung und dem Kofaktor 8; das geschätzte Sicherheitsniveau beträgt 128 Bit. Status: empfohlen für Neuentwicklungen.

Edwards25519 ist −x² + y² = 1 + dx²y² über 2^255 − 19 mit d = −121665/121666. Die Kurve ist birational äquivalent zu Curve25519, daher teilen sich beide eine Gruppe der Ordnung 8·n. Das Additionsgesetz ist vollständig – es gibt keine Ausnahmefälle –, was zeitkonstanten Code vereinfacht.

Ed25519-Signaturen (RFC 8032 §5.1) sind 64 Byte lang, die öffentlichen Schlüssel 32 Byte, und die Signaturen sind deterministisch: Die Nonce wird aus dem privaten Schlüssel und der Nachricht abgeleitet, sodass ein schwacher Zufallszahlengenerator den Schlüssel nicht preisgeben kann. Ed25519 wird von SSH (ssh-ed25519), TLS 1.3, DNSSEC (Algorithmus 15), JOSE und COSE (Ed25519, RFC 9864), Solana und den Onion-Diensten von Tor verwendet, und FIPS 186-5 lässt es zu.

Weil die Gruppe den Kofaktor 8 hat, sind sich Bibliotheken in Grenzfällen uneinig – ob die Prüfung mit dem Kofaktor multipliziert und welche nicht kanonischen Kodierungen von Punkten sie akzeptieren –, sodass dieselbe Signatur in einer Bibliothek als gültig gelten und in einer anderen abgelehnt werden kann (Chalkias, Garillot und Nikolaenko, „Taming the many EdDSAs“).

Namen in Standards

StandardName
RFC 8032edwards25519
RFC 8032 / RFC 8410Ed25519

Object Identifier

Domainparameter

255-Bit-Primkörper · etwa 128-Bit-Sicherheit

Primzahl p des Körpers
0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed
Koeffizient a
0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec
Koeffizient d
0x52036cee2b6ffe738cc740797779e89800700a4d4141d8ab75eb4dca135978a3
x-Koordinate des Basispunkts
0x216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a
y-Koordinate des Basispunkts
0x6666666666666666666666666666666666666666666666666666666666666658
Ordnung n des Basispunkts
0x1000000000000000000000000000000014def9dea2f79cd65812631a5cf5d3ed
Kofaktor h
0x8

Verwendet in

  • SSH (ssh-ed25519)
  • TLS 1.3 (ed25519)
  • DNSSEC (algorithm 15)
  • JOSE (Ed25519, EdDSA)
  • Solana
  • Signify / minisign
  • Tor onion services

Kennungen in Registern

TLS-Signaturverfahren
ed25519 0x0807
JOSE-Algorithmen
Ed25519
JWK-Kurven
Ed25519
COSE-Algorithmen
Ed25519 -19
Elliptische Kurven für COSE
Ed25519 6
SSH-Algorithmen für öffentliche Schlüssel
ssh-ed25519ssh-mldsa44-ed25519
DNSSEC-Algorithmusnummern
ED25519 15

Standards und Quellen

Alle Kurven