Cryptology Academy · Lektion

PAKE-Protokolle und ihre Eigenschaften

Erhalten Sie einen Überblick über die Familie der Password-Authenticated-Key-Exchange-Protokolle, einschließlich OPAQUE und SPAKE2.

Lektion 3 von 413 Schritte

PAKE-Protokolle und ihre Eigenschaften 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.

Einführung in die PAKE-Familie

Password Authenticated Key Exchange (PAKE) bezeichnet eine Familie von Protokollen, die es zwei Parteien ermöglichen, die nur ein Passwort mit geringer Entropie gemeinsam haben, einen Sitzungsschlüssel mit hoher Entropie und gegenseitiger Authentifizierung zu etablieren. Anders als die herkömmliche Passwortauthentifizierung bietet PAKE Forward Secrecy und Schutz vor Offline-Wörterbuchangriffen, ohne das Passwort zu übertragen.

Balanced PAKE und Augmented PAKE

Balanced PAKE (B-PAKE) behandelt beide Parteien symmetrisch: Client und Server besitzen dasselbe Geheimnis (das Passwort oder eine symmetrische Transformation davon). Augmented PAKE (A-PAKE) ist asymmetrisch: Der Server besitzt nur einen aus dem Passwort abgeleiteten öffentlichen Verifier, sodass eine Kompromittierung des Servers keine katastrophalen Folgen für die Sicherheit des Clients hat.

SPEKE-Protokoll

Simple Password Exponential Key Exchange (SPEKE) ist ein Balanced PAKE, bei dem beide Parteien das Passwort verwenden, um einen Gruppengenerator g = H(password) zu definieren. Der anschließende Austausch ist ein Diffie-Hellman-Schlüsselaustausch mit diesem aus dem Passwort abgeleiteten Generator. Dadurch können ihn nur Parteien abschließen, die das Passwort kennen.

J-PAKE-Protokoll

Password Authenticated Key Exchange by Juggling (J-PAKE), RFC 8236, verwendet Zero-Knowledge-Proofs, damit zwei Parteien aus einem gemeinsamen Passwort einen Sitzungsschlüssel erzeugen können. J-PAKE wird in Thread (einem IoT-Netzwerkprotokoll) verwendet und wurde in OpenSSL implementiert. Das Protokoll ist patentfrei und bietet die Eigenschaften eines Balanced PAKE.

OPAQUE: Asymmetrisches PAKE

OPAQUE (ein IETF-Entwurf, draft-irtf-cfrg-opaque) ist ein Augmented PAKE mit starken Sicherheitseigenschaften. Bei der Registrierung verwendet der Client eine Oblivious PRF (OPRF), um aus dem Passwort einen Schlüssel abzuleiten, ohne dass der Server das Passwort erfährt. Der Server speichert ein verschlüsseltes Envelope, das den privaten Schlüssel des Clients enthält.

Die OPAQUE-Anmeldephase

Während der OPAQUE-Anmeldung führen Client und Server ein OPRF-Protokoll aus, um den Schlüssel des Clients zu rekonstruieren, ohne dass der Server das Passwort erfährt. Anschließend verwendet der Client diesen Schlüssel, um das Envelope zu entschlüsseln und Zugangsdaten für den Abschluss eines Schlüsselaustauschs abzurufen. Der Server sieht das Passwort in keiner Phase.

Schutz von OPAQUE vor Vorberechnung

OPAQUE bietet Schutz vor Vorberechnung: Selbst wenn ein Angreifer den Server kompromittiert und alle gespeicherten Daten erlangt, kann er keinen Offline-Wörterbuchangriff auf die gespeicherten Werte durchführen, ohne für jeden Rateversuch eine neue OPRF-Interaktion zu simulieren. Dies ist eine stärkere Garantie als bei SRP.

SPAKE2 und SPAKE2+

SPAKE2 (RFC 9382) ist ein einfaches Balanced PAKE auf Grundlage von Diffie-Hellman mit durch das Passwort verschleierten öffentlichen Schlüsseln. SPAKE2+ ist die Augmented-Variante, bei der der Server getrennte Werte für die Client- und Serverrolle speichert. Apple verwendet SPAKE2+ in HomeKit zum Koppeln von Geräten; außerdem wird es in mehreren Protokollen zur Inbetriebnahme von IoT-Geräten eingesetzt.

CPace-PAKE

CPace (RFC-9380-Komponente) ist ein von Haase und Labrique entwickeltes, komponierbares PAKE und wurde als Balanced-PAKE-Standard der IETF übernommen. CPace ist dafür ausgelegt, mit nachfolgenden Schritten zur Schlüsselbestätigung kombiniert zu werden, und wird für neue Protokolle empfohlen, die ein Balanced PAKE benötigen. Es ist das vom CFRG ausgewählte B-PAKE neben OPAQUE als A-PAKE.

Vergleich der PAKE-Sicherheitseigenschaften

Alle PAKEs bieten Authentifizierung und Schlüsselaustausch. A-PAKEs bieten zusätzlich Schutz bei einer Kompromittierung des Servers. OPAQUE bietet über den Schutz bei einer Serverkompromittierung hinaus auch Schutz vor Vorberechnung. FIDO2 bietet eine Bindung an den Ursprung, die Phishing verhindert. Die Wahl hängt davon ab, ob eine passwortbasierte Authentifizierung erforderlich ist oder durch Public-Key-Zugangsdaten ersetzt werden kann.

Überlegungen zur Bereitstellung von PAKE

PAKE-Protokolle sind schwieriger korrekt zu implementieren als einfaches Passwort-Hashing und sollten aus auditierten Bibliotheken stammen. Die IETF-CFRG hat CPace (B-PAKE) und OPAQUE (A-PAKE) als empfohlene Optionen für neue Protokolle standardisiert. SRP wird weiterhin in bestehenden Bereitstellungen eingesetzt, aber für neue Designs wird OPAQUE bevorzugt.

Prüfung der PAKE-Eigenschaften

Welche Eigenschaft unterscheidet Augmented PAKE (A-PAKE) von Balanced PAKE (B-PAKE)?

Lektionszusammenfassung: PAKE-Protokolllandschaft

PAKE-Protokolle ermöglichen eine passwortbasierte gegenseitige Authentifizierung mit Schlüsselaustausch. B-PAKEs (CPace, SPAKE2, J-PAKE) sind symmetrisch. A-PAKEs (SRP, OPAQUE, SPAKE2+) speichern nur serverseitige Verifier. OPAQUE bietet die stärksten Garantien, einschließlich des Schutzes vor Vorberechnung. Die IETF hat CPace und OPAQUE als empfohlene moderne Optionen standardisiert.

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 „PAKE-Protokolle und ihre Eigenschaften“ kostenlos?

Ja — der vollständige Text von „PAKE-Protokolle und ihre Eigenschaften“ 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 „PAKE-Protokolle und ihre Eigenschaften“?

Erhalten Sie einen Überblick über die Familie der Password-Authenticated-Key-Exchange-Protokolle, einschließlich OPAQUE und SPAKE2. 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 „PAKE-Protokolle und ihre Eigenschaften“?

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 grundlegende Problem der Passwortauthentifizierung
  2. SRP: Secure Remote Password Protocol
  3. PAKE-Protokolle und ihre Eigenschaften
  4. Passwortlose Authentifizierung: WebAuthn und FIDO2
← Zurück zu Cryptology Academy