🔐 Zero-Knowledge-Proof

Mathematischer Beweis mit diskreten Logarithmen

📐 Das Protokoll

Szenario: Alice kennt ein Geheimnis x und möchte Bob beweisen, dass sie es kennt, ohne x zu verraten.
Schritt 1: Öffentliche Parameter wählen
p muss eine Primzahl sein für die mathematische Sicherheit
Schritt 2: Alice's öffentlicher Schlüssel

Alice wählt geheimes x und berechnet:

öffentlicher_schlüssel = gx mod p
Schritt 3: Der Zero-Knowledge-Beweis

1. Commitment: Alice wählt zufälliges r und sendet:

commitment = gr mod p

2. Challenge: Bob sendet zufällige Herausforderung c ∈ {0, 1}

3. Response: Alice antwortet mit:

antwort = r + c · x

4. Verifikation: Bob überprüft:

gantwort mod p = commitment · öffentlicher_schlüsselc mod p