Münzwurf via Telefon?

8 Antworten

Das Commitment funktioniert für gewöhnlich über eine kryptographische Hashfunktion, also eine Funktion die für beliebige Eingaben einen Wert fester Länge errechnet, bei der man aber durch den errechneten Wert nicht auf die Eingabe schließen kann (außer durch ausprobieren).

Alice legt sich nun fest, zum Beispiel auf Kopf. Damit Bob nicht im vorhinein testen kann, was sie gewählt hat hängt sie noch ein paar zufällige Zeichen an. Die so erhaltene Zeichenfolge (z.B. Kopf174at) wirft sie nun in eine kryptographische Hashfunktion. Den errechneten Hash teilt sie Bob mit. Jetzt kann Bob werfen, er teilt das Wurfergebnis Alice mit und sie sagt ihm, dass sie Kopf gewählt hat und ihr Hash deshalb zu Kopf174at gehört. Bob rechnet das nach und sieht, dass Alice tatsächlich Kopf gewählt hatte.

Alice entscheidet sich für eine Hashverfahren, dass Bob auch zur Verfügung steht.

Ein Hashwert ist ein errechnete Zahl, die eindeutig zu einer Zeichenfolge errechnet werden kann. Es ist nicht möglich, aus dem Hash-Wert die ursprüngliche Zeichenfolge zu bestimmen.

Beide könnten zum Beispiel einen frei verfügbaren Hashgenerator nutzen, online gibt es diesen hier https://hashgenerator.de/

Alternativ könnten sie eigene Hash-Regeln festlegen, z.B. Buchstaben in Zahlen transformieren, diese nach bestimmten Regeln mathematisch verändern (addieren, subtrahieren, potenzieren..

Alice schickt Bob dann nur den Hashwert, z.B. 1ec8c2e47a44c3bb765ae3a0f56e99f97f6e54e5.

Bob macht den Münzwurf und teilt Alice das Ergebnis mit.

Alice sagt jetzt, ich habe folgendes festgelegt: Ich wähle Kopf!

Bob ermittelt für diesen Satz den Hashwert nach dem vereinbarten Verfahren. Ist der Hashwert identisch zum vorher durchgegebenen, kann er für sich bestätigen, dass Alice sich tatsächlich auf "Kopf" festgelegt hat.

Wenn Alice nur "Kopf" oder "Zahl" zum Ermitteln des Hashwertes verwendet hätte, wäre das Verfahren nicht sicher.

Bob könnte beide Varianten ausprobieren und schauen welche Variante den von Alice übermittelten Hash-Wert ergibt.

Nichts anderes machen viele Passwortknacker, wenn Passwörter nur als Hashwert vorliegen. Für bereits irgendwann mal verwendete Passwörter gibt es riesige Tabellen mit bereits passenden Hashwerten nach den gängigen Verfahren.

Schützen kann man sich davor, wenn die Passwörter vor dem Hash einen neuen Zusatz erhalten, der so auch den Hash verändert (Salt).

Eine einfache Methode wäre es eigentlich auch, wenn beide eine Münze werfen. Anschließend sagen beide gleichzeitig ihr Ergebnis. Ist es gleich, gewinnt Person A, ist es unterschiedlich, gewinnt Person B. Müsste doch auch eine 50/50 Chance sein, nicht?

Person A wirft eine Münze, Person A und B schreiben eine SMS die um eine bestimmte Uhrzeit gesendet werden müssen. Nur wenn beide SMSen die gleiche Uhrzeit haben gilt das.

Per Skype oder Videotelefonat, wenn's live ist, kann keiner schummeln

derLordselbst  20.02.2018, 12:46

stand da nicht irgendwas von "nur telefonischen Kontakt" ^^

0