phpbar.de logo

Mailinglisten-Archive

[php] AW: [php] eindeutigkeit von md5(uniqid(rand()))

[php] AW: [php] eindeutigkeit von md5(uniqid(rand()))

Kar-Wing Lau kar-wing_(at)_kwlau.de
Mon, 13 Nov 2000 19:07:39 +0100


hallo,

> Eine MD5-Püfsumme gibt ein Ergebnis mit 128 Bit zurück. Das Ergebnis
> wird von PHPs MD5-Funktion als Hexadezimalzahl mit 32 Stellen
> ausgegeben, d.h. es gibt für den MD5-String
> 340.282.366.920.938.463.463.374.607.431.768.211.456 Möglichkeiten. Du
> kannst also theoretisch jedem Erdenbürger mehrere Billionen eindeutiger
> MD5-Strings zuordnen...

vielleicht ein etwas ot, aber mal kurz dazu angemerkt: aber von der
microtime ausgehend ist das problem der parallelen zugriffe vorhanden,
welches durch uniqid() durch weitere modifikationen aber weitesgehend
abgehandelt wird. hinzu kommt dann noch, dass microtime eine bestimmte zeit
beschreibt. wenn nun z.b. time-saving auf windows aktiviert ist, und der
winter naht, müsste da nicht eine stunde zweimal durchlaufen werden und
damit eine verschwindend geringfügig höhere wahrscheinlichkeit einer zweiten
id vorkommen? (<- stimmt das überhaupt?)

natürlich sind *sauviele* möglichkeiten vorhanden. aber d.h. noch lange
nicht, dass eine ebenso gleichmässige verteilung vorhanden ist. obwohl ein
würfel sechs seiten hat, könnte rein theoretisch hundert mal hintereinander
die sechs gewürfelt werden. dies stellt keine unmöglichkeit in der
wahrscheinlichkeit dar. nur es wird mit der anzahl der kombinationen
laienhaft sozusagen "unwahrscheinlicher".

letzten endes ist es aber schon sehr sicher. selbst das mit dem time-saving
relativiert sich alleine durch die umstellung um 3 uhr nachts, da um diese
uhrzeit wohl weniger neue ids erstellt werden.

sorry für den kleinen ausflug.

viele grüsse,
kar-wing



php::bar PHP Wiki   -   Listenarchive