Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

Bösewicht

unregistriert

1

12.12.2014, 13:05

Wahrscheinlichkeit Kollisionsangriff

Hey, ich stehe gerade vor einem kleinen Problem. Ich bereite mich gerade auf die Klausur in Kryptographie vor und komme bei
folgender Aufgabe nicht so recht weiter:


Betrachten Sie eine Hashfunktion h mit einer Ausgabelänge von 16 Bit sowie eine bestimmte Nachricht
M mit Hashwert h(M). Ein Angreifer versucht nun, eine Nachricht
M' mit dem selben Hashwert
h(M') = h(M) zu finden, indem er wiederholt den
Hashwert einer zufälligen Nachricht berechnet.
Wieviele Runden muss er ausführen,
um auf eine Erfolgswahrscheinlichkeit von mindestens 50% zu kommen?

Mein Ansatz war nun:

§ \frac {1}{2^{16}} + \frac {1 - \frac {1}{2^{16}}}{2^{16} - 1} + \frac {(1 - \frac {1}{2^{16}}) * (1 - \frac {1}{2^{16} - 1})}{2^{16} - 2} \dots = 0.5 §

Idee dahinter: Wenn der Hash kollisionsfrei ist, muss man §2^{16}§ Nachrichten ausprobieren. Die Wahrscheinlichkeit, dass
die erste Nachricht direkt den Hash generiert ist
§\frac {1}{2^{16}}§
für die zweite Nachricht ist die Wahrscheinlichkeit also §\frac {1 - \frac {1}{2^{16}}}{2^{16} - 1}§ usw. die
Gesamtwahrscheinlichkeit muss dann 0,5 betragen.


Meine Frage wäre: Wie kann man das kombinatorisch in eine Sinnvolle Formel bringen und nach n umformen und
ist meine Überlegung soweit überhaupt korrekt?

PS: Sorry, dass das Erstellen so lange gedauert hat, musste mir noch Latex angucken xD

Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von »Bösewicht« (12.12.2014, 13:33)


David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

2

12.12.2014, 13:41

Meiner Meinung nach ist die Wahrscheinlichkeit jedes mal gleich, nämlich 1/65536. Es ist also ein Zufallsexperiment der Art "Ziehen mit Zurücklegen".

Toemsel

Treue Seele

Beiträge: 310

Wohnort: OÖ

Beruf: Student und Programmierer

  • Private Nachricht senden

3

12.12.2014, 14:33

David hat recht. Die Wahrscheinlichkeit ist stochastisch unabhängig. Nur weil der erste Versuch erfolglos war, heist das nicht, dass beim zweiten mal eine höhere Wahrscheinlichkeit besteht ;)
Somit liegt die Wahrscheinlichkeit bei jedem Versuch bei 1/2^16. (Wie du bereits richtig erkannt hast)

Edit: Schlägt ein Versuch fehl und du schließt diesen anschließend aus den 2^16 Möglichkeiten aus, dann N! / (N - k)! wenn ich mich nicht täusche.

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »Toemsel« (12.12.2014, 14:44)


TGGC

1x Rätselkönig

Beiträge: 1 799

Beruf: Software Entwickler

  • Private Nachricht senden

4

12.12.2014, 14:51

Einfach mal Aufgabe lesen: "Hashwert einer zufälligen Nachricht". Es reicht also nicht aus 2^16 Nachrichten auszuprobieren, es koennte auch zufaellig 2^16 mal die gleiche Nachricht sein.

Bösewicht

unregistriert

5

12.12.2014, 17:35

Zitat

Die Annahme, dass die Hashfunktion kollisionsfrei ist, ist
unsinnig, denn sowas gibt es erstens gar nicht, und zweitens geht es
in der Aufgabe ja gerade darum, eine Kollision zu finden.

Das ist wahr, das "Kollisionsfrei" hab ich aus der letzten Teilaufgabe übernommen. Aber, wenn es nicht kollisionsfrei wäre, würde das ja theoretisch bedeuten, dass man einfach nicht
wissen kann, wie viele Nachrichten man erzeugen muss um auf den gleichen Hashwert zu kommen.

Zitat

Einfach mal Aufgabe lesen: "Hashwert einer zufälligen Nachricht". Es
reicht also nicht aus 2^16 Nachrichten auszuprobieren, es koennte auch
zufaellig 2^16 mal die gleiche Nachricht sein.
Das würde ich so nicht sagen, ich denke das man schon davon ausgehen kann, dass der Angreifer nicht so dumm ist ständig die gleiche Nachricht auszuprobieren, auch wenn da "zufällig" steht.

Deswegen habe ich "Ziehen ohne Zurücklegen" angenommen.

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

6

12.12.2014, 18:47

Es werden aber höchstens Nachrichten "nicht zurückgelegt", nicht Hash-Werte. Da hast du einen Denkfehler.

TGGC

1x Rätselkönig

Beiträge: 1 799

Beruf: Software Entwickler

  • Private Nachricht senden

7

15.12.2014, 15:06

Nein, die Aufgabe ist in diesem Punkt eindeutig. Mit diesem Rechenweg kann man also nicht die Loesung der Aufgabe berechnen.

Werbeanzeige