Cryptology Academy · Lektion

ECDH: Elliptische Kurven für den Schlüsselaustausch

Wenden Sie die skalare Multiplikation auf elliptischen Kurven für eine ECDH-Schlüsselvereinbarung an.

Lektion 3 von 413 Schritte

ECDH: Elliptische Kurven für den Schlüsselaustausch ist eine kostenlose Cryptology Academy-Lektion auf CoddyKit. Dies ist Lektion 3 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Cryptology Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Cryptology Academy-Kurs umfasst insgesamt 4 Lektionen.

Willkommen

ECDH ersetzt die multiplikative Gruppe von DH durch eine Gruppe auf einer elliptischen Kurve. Das Ergebnis: vergleichbare Sicherheit mit zehnmal kleineren Schlüsseln und zehnmal schnelleren Operationen.

Operationen in EC-Gruppen

Bei ECDH ist die „Multiplikation“ die skalare Multiplikation auf einer elliptischen Kurve: Einen Punkt P mit einem Skalar k zu multiplizieren bedeutet, P k-mal zu sich selbst zu addieren: k×P. Dies ist das EC-Gegenstück zu g^k mod p.

ECDH-Protokoll

Einigen Sie sich auf die Kurve E und den Basispunkt G (öffentlich). Alice: privater Schlüssel a, öffentlicher Schlüssel A = a×G Bob: privater Schlüssel b, öffentlicher Schlüssel B = b×G Alice: S = a×B = a×b×G Bob: S = b×A = b×a×G Beide leiten denselben Punkt S ab.

ECDLP

Gegeben ist A = a×G auf einer elliptischen Kurve; gesucht ist a. Dies ist das diskrete Logarithmusproblem auf elliptischen Kurven. Für allgemeine Kurven ist kein subexponentieller Algorithmus bekannt, wodurch ECDLP bei gleicher Schlüssellänge schwieriger als DLP ist.

Curve25519

Von Bernstein 2005 entworfen. Montgomery-Form: y²=x³+486662x²+x über der Primzahl 2^255-19. Die Kurve wurde auf hohe Geschwindigkeit und Widerstandsfähigkeit gegen Implementierungsfehler ausgelegt. Sie wird in WireGuard, Signal und SSH verwendet.

X25519-Schlüsselaustausch

X25519 ist die ECDH-Funktion, die Curve25519 verwendet. Es wird nur die x-Koordinate des gemeinsamen Punkts verwendet (die Multiplikation mit dem Kofaktor behandelt Sonderfälle). RFC 7748 standardisierte X25519 und X448.

ECDH in Python

from cryptography.hazmat.primitives.asymmetric.x25519 import X25519PrivateKey alice_priv = X25519PrivateKey.generate() bob_priv = X25519PrivateKey.generate() alice_pub = alice_priv.public_key() bob_pub = bob_priv.public_key() shared_alice = alice_priv.exchange(bob_pub) shared_bob = bob_priv.exchange(alice_pub) assert shared_alice == shared_bob

Vom gemeinsamen Punkt zum symmetrischen Schlüssel

Der gemeinsame Punkt wird nicht direkt als Schlüssel verwendet (er ist nicht gleichmäßig verteilt). Verwenden Sie HKDF, um einen geeigneten symmetrischen Schlüssel abzuleiten: from cryptography.hazmat.primitives.kdf.hkdf import HKDF key = HKDF(SHA256, 32, salt, info).derive(shared_secret)

ECDH- und DH-Schlüssellängen

Sicherheitsniveau 128 Bit: - DH: 3072-Bit-Primzahl - ECDH: 256-Bit-Kurve Verhältnis der Schlüssellängen: etwa 12:1. Öffentlicher ECDH-Schlüssel: 32 Byte (Curve25519). Öffentlicher DH-Schlüssel: 384 Byte. Operationen mit privaten ECDH-Schlüsseln sind etwa 50-mal schneller.

Kofaktor-Angriff auf unsichere Kurven

Angriffe auf kleine Untergruppen nutzen Kurven mit nichttrivialen Kofaktoren aus. Curve25519 hat den Kofaktor 8, aber X25519 behandelt dies korrekt. NIST-P-Kurven haben den Kofaktor 1. Verwenden Sie immer standardisierte Implementierungen.

ECDH in TLS 1.3

TLS 1.3 unterstützt X25519, X448, P-256, P-384 und P-521 für den Schlüsselaustausch. X25519 wird am häufigsten verwendet – es ist schnell, sicher und arbeitet in konstanter Zeit. Beide Kommunikationspartner erzeugen für jede Sitzung kurzlebige Schlüssel.

Kurze Überprüfung

Was ist der wichtigste Vorteil von ECDH gegenüber dem klassischen Diffie-Hellman?

Zusammenfassung

ECDH ist geschafft! Als Nächstes erfahren Sie mehr über Forward Secrecy und warum ein kurzlebiger Schlüsselaustausch in TLS unverzichtbar ist.
Kostenlos starten

Lerne Cryptology Academy mit einem KI-Tutor — kostenlos

Schreibe und führe echten Code in deinem Browser aus, bekomme sofortige Hilfe von einem 24/7 KI-Tutor und setze dein Lernen im Web oder in der App fort.

Kurse
67
Lektionen
261

Häufig gestellte Fragen

Ist die Lektion „ECDH: Elliptische Kurven für den Schlüsselaustausch“ kostenlos?

Ja — der vollständige Text von „ECDH: Elliptische Kurven für den Schlüsselaustausch“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Cryptology Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Cryptology Academy-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „ECDH: Elliptische Kurven für den Schlüsselaustausch“?

Wenden Sie die skalare Multiplikation auf elliptischen Kurven für eine ECDH-Schlüsselvereinbarung an. Du übst Cryptology Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um Cryptology Academy zu starten?

Keine Vorkenntnisse erforderlich. Cryptology Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 3 von 4.

Wie lange dauert die Lektion „ECDH: Elliptische Kurven für den Schlüsselaustausch“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser Cryptology Academy-Lektion Code schreiben und ausführen?

Ja. Jede Cryptology Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. Das Problem der Schlüsselverteilung
  2. Mathematik des Diffie-Hellman-Schlüsselaustauschs
  3. ECDH: Elliptische Kurven für den Schlüsselaustausch
  4. Forward Secrecy und ephemerer Schlüsselaustausch
← Zurück zu Cryptology Academy