0

 

Hallo,

ich habe die folgende Aufgabe, die eine Variante zum Geburtstagsparadox darstellt.
Doch irgendwie komme ich mit der analogen Anwendung des Rechenbeispiels des Geburtstagsparadox (kleine Zahlen), nicht wirklich zurecht.

Hier die Aufgabe:
Gegeben Sei eine Hash-Funktion H, die gut streuende Zufallswerte zwischen 1 und 14 000 000
liefert. Die Wahrscheinlichkeit, dass die Hashfunktion einen gegebenen Hashwert liefert ist
also 1/14 000 000 und in etwa so groß wie die Wahrscheinlichkeit, 6 Richtige im Lotto zu
haben.
a) Gegeben sei nun eine Nachricht n mit Hashwert H(n). Wieviele zufällige Eingaben e
müssen Sie generieren, damit die Wahrscheinlichkeit, dass H(e) = H(n) gilt größer
als 50 Prozent wird?
b) Wieviele zufällige Eingaben e müssen Sie erzeugen, damit die Wahrscheinlichkeit, dass
zwei beliebige Eingaben e1 und e2 denselben Hashwert haben größer als 50 Prozent
wird?

Ich habe nun folgendes "ausprobiert":

Für a)  Bei einer Eingabe liegt die Wahrscheinlichkeit, dass NICHT die gleiche Eingabe generiert wird bei:

 

13.999.999/14.000.000=0,99999992857142857142857142857143

 

Bei zwei Eingaben (13.999.999/14.000.000)^2=0,99999985714286224489795918367347‬

 

Gesucht n mit (13.999.999/14.000.000)^n <= 0,5

Ich muss 9.704.100  zufällige Eingaben e generieren, damit die Wahrscheinlichkeit H(e)=H(n) > 50%.

 

 

Für b) 

Umgekehrte Wahrscheinlichkeit aus a)

 

Keine zwei gleichen Eingaben: [14.000.000 x 13.999.999 x … x (14.000.000 - n+1)]/14.000.000^n

 

(14000000*13999999)/2=97.999.993.000.000 mögliche Paare

Wertebereich der Hashfunktion ist von 0…14.000.000.

14.000.000 = 2^n - 1

14.000.001 =2^n

 

 

Ist das richtig?

Und wie löse ich das jetzt auf?

Kann im Moment wohl nicht mehr "klar" denken ;)

 

VG, Adrian

 

 

Diese Frage melden
gefragt

Punkte: 22

 
Kommentar schreiben
0 Antworten