Help - Search - Members - Calendar
Full Version: Wie Berechnet Sich Der Userhash?
Official eMule-Board > Deutsch > German General
Pages: 1, 2
-=KrazyKenny=-
Ich frag mich ja schon länger wie das geht. Geht das nach Pc-Ausstattung oder wird einfach nur zufällig irgendwas genommen (da kanns ja dann auch doppelte geben)


Bitte für die Frage nicht schlagen sad.gif
sambal-olek
CODE
void CPreferences::CreateUserHash(){
for (int i = 0;i != 8; i++){
 uint16 random = rand();
 memcpy(&userhash[i*2],&random,2);
}
// mark as emule client. that will be need in later version
userhash[5] = 14;
userhash[14] = 111;
}
Technoboy
kann es da nicht schonmal vorkommen, dass eMule einen Hash kreirt, der schon existiert? Ich meine 16 Zahlen sind schon ne Menge aber genau so groß kann auch die Wahrscheinlichkeit sein das mein Nachbar den selben Hash hat wie ich oder etwa nicht?
-=KrazyKenny=-
QUOTE (sambal-olek @ Apr 19 2003, 12:00 PM)
CODE
void CPreferences::CreateUserHash(){
for (int i = 0;i != 8; i++){
 uint16 random = rand();
 memcpy(&userhash[i*2],&random,2);
}
// mark as emule client. that will be need in later version
userhash[5] = 14;
userhash[14] = 111;
}

huh.gif blink.gif Da ich nichts mit solchen Programmcodes anfangen kann, bitte etwas einfacher ausdrücken sad.gif
sambal-olek
Es werden nacheinander 8 16Bit(= 2 Byte) große Zufallszaheln erzeugt. Dieser werden aneinadergefügt.

Man erhält also einen 16 Byte großen Zufallswert. Das entspricht 281.474.976.710.656 unterschiedlichen Kombinationen (abzüglich der Bytes 5 und 14, die feste Werte erhalten bleiben also noch 4.398.046.511.104 Kombinationen übrig)
-=KrazyKenny=-
Danke, so versteh sogar ich es
Flow de
und was bedeutet:
QUOTE
// mark as emule client. that will be need in later version
userhash[5] = 14;
userhash[14] = 111;


mfg flow de
Technoboy
Ich denke mal das sind die Bytes 5 und 14, die einen festen Wert erhalten in dem Fall 14 und 111. Das geht je bereits aus Sambals Erklärung hervor.

P.S.: Sambal-Olek schmeckt gut. laugh.gif
devil_jo
QUOTE (sambal-olek @ Apr 19 2003, 10:46 AM)
Es werden nacheinander 8 16Bit(= 2 Byte) große Zufallszaheln erzeugt. Dieser werden aneinadergefügt.

Man erhält also einen 16 Byte großen Zufallswert. Das entspricht 281.474.976.710.656 unterschiedlichen Kombinationen (abzüglich der Bytes 5 und 14, die feste Werte erhalten bleiben also noch 4.398.046.511.104 Kombinationen übrig)

Also ich weiss ja nicht was Du für einen Taschenrechner hast, aber bei mir ist 8 Werte a 16 Bit eine Zahl mit 128 Bit. Und 2 hoch 128 ist deutlich mehr als 281.474.976.710.656.

BTW: die rand-Funktion liefert nur 15-Bit Integer.
sambal-olek
QUOTE (devil_jo @ Apr 19 2003, 01:42 PM)
Also ich weiss ja nicht was Du für einen Taschenrechner hast, aber bei mir ist 8 Werte a 16 Bit eine Zahl mit 128 Bit. Und 2 hoch 128 ist deutlich mehr als 281.474.976.710.656.

Jo, ich Trottel hab ohne nachzudenken nur 8^16 eingetippt statt 2^128. Danke für den Hinweis.

Dann sinds halt 3,9402006196394479212279040100144 *10^115 mögliche Kombinationen ph34r.gif
Sony666
256^14
die beiden festen bytes sind dazu da um eMules (fast) sicher identifizieren zu können
devil_jo
Es scheint, unsere Rechner kommen tatsächlich auf unterschiedliche Ergebnisse:
Bei mir ist 2^128 = 3,4028236692093846346337460743177*10^38 wink.gif

Is aber auch egal. Auf jeden Fall ist es wahrscheinlicher, auf zwei hintereinanderfolgenden Samstagen 6 Richtige mit Zusatzzahl zu erhalten als dass zwei gleiche Userhashs auftreten.
sambal-olek
QUOTE (devil_jo @ Apr 19 2003, 02:08 PM)
Es scheint, unsere Rechner kommen tatsächlich auf unterschiedliche Ergebnisse:
Bei mir ist 2^128 = 3,4028236692093846346337460743177*10^38 wink.gif

Ich gebs auf sad.gif Weiß der Geier auf welche Tasten ich da gepatscht habe, aber du hast natürlich recht. (und nein: ich hab heute noch nix gesoffen)
kreegee
QUOTE (sambal-olek @ Apr 19 2003, 12:10 PM)
ich hab heute noch nix gesoffen

vieleicht liegts ja daran rolleyes.gif
Flow de
QUOTE (Technoboy @ Apr 19 2003, 11:32 AM)
Ich denke mal das sind die Bytes 5 und 14, die einen festen Wert erhalten in dem Fall 14 und 111. Das geht je bereits aus Sambals Erklärung hervor.

P.S.: Sambal-Olek schmeckt gut. laugh.gif

schon klar, ich wolte aber wissen warum diese werte festgesetzt werden!

QUOTE
// mark as emule client. that will be need in later version
userhash[5] = 14;
userhash[14] = 111;
devil_jo
Das hat etwas mit dem Erkennen des Clients zu tun. Anhand der festen Werte werden einige Typen (eMule, MLDonkey, usw) und machmal auch Versionen erkannt. Wenn eMule einen anderen als eMule erkennt, schickt er Telegramme aus dem sogenannte Extented (eMule) Protocol, die die anderen ja gar nicht kennen. Darüber läuft z.B. der Quellenaustausch.
Flow de
Hey Danke! rolleyes.gif
AndiHoffi
QUOTE (devil_jo @ Apr 19 2003, 01:08 PM)
Is aber auch egal. Auf jeden Fall ist es wahrscheinlicher, auf zwei hintereinanderfolgenden Samstagen 6 Richtige mit Zusatzzahl zu erhalten als dass zwei gleiche Userhashs auftreten.

Das glaube ich nicht, da es nicht möglich ist, 6 Richtige mit Zusatzzahl zu haben. Höchstens 6 Richtige mit Superzahl tongue.gif

SCNR

Andreas
devil_jo
Mist! Ich wußte, ich wollte da noch etwas ändern, konnte mich aber nicht mehr erinnern wo. wink.gif
awaw
whistling.gif *uraltthreadwiederherkram* whistling.gif

und wie sieht das ganze mit dateien aus?
das muss ja anders gehen, da wenn ich eine datei in den share gebe, die schon existiert, dann der hash ja gleich ist confused.gif

(p.s.:suche und docs habe ich nichts gefunden)
buzz
Die werden logischerweise nach ihrem Inhalt berechnet....


Es ist ein komplizierter Algorithmus, der das ganze File durchliest und am Schluss den Datei-hash ausspuckt.
sambal-olek
Einfach mal die Suchmaschine deines Vertrauens mit "MD5" füttern.
awaw
thx thumbup.gif

für alle dies interessiert: google hat mir diese Seite gefunden, die meiner Meinung nach das ganze ganz gut erklärt.
allerdings sollten nur profis sich den algorithmus am schluss ansehen confused.gif

ganz nette fakten von dort habe ich:

md5 hat einen hashwert von 128
bei einer länge von 64 dauert es 600.000 Jahre eine Datei zu finden, die gleich ist. whistling.gif
MTX
Ich dachte eMule nutzt MD4?!

de MTX
sambal-olek
Selbst wenn, das Prinzip ist ja gleich smile.gif
Esel4711
Wenn das stimmt...
QUOTE (devil_jo @ Apr 19 2003, 01:42 PM)
BTW: die rand-Funktion liefert nur 15-Bit Integer.
...ist das falsch
QUOTE (Sony666 @ Apr 19 2003, 02:02 PM)
256^14

=> 128^14 tongue.gif
awaw
das habe ich gerade in der fixed-Liste gefunden:

QUOTE
Kleine Optimierungen um mit MD4 Hashs effektiver zu arbeiten
sambal-olek
Dann zieh von meiner Antwort ne "1" ab wink.gif
awaw
äähm, auf dieser seite (siehe einer meiner vorherigen Beiträge) stand, dass md4 knackbar wäre.

wäre es dann nicht klug auf md5 umzusteigen? oder verliert man dann die kompatibilität vollkommen? unsure.gif
MTX
Alle jetzigen eD2K-Links wären unbrauchbar.

de MTX
awaw
wäre es nciht so, dass man die alten zwar noch lesen könnte, aber die Benutzer von eMule<neuesten Version und eDonkey(,....) mit den neuen nichts mehr anfangen könnten? unsure.gif
MTX
Der Aufwand, einen MD4 Hash zu fälschen (eine Datei mit gleichem Hash zu generieren) ist immer noch so groß, dass es nicht rechtfertigt, eMule völlig umzubauen und somit keine Kompatibilität zum restlichen eD2K Netzwerk zu haben.

de MTX

PS: Das wäre ein Thema, wenn massenweise Dateien-Hashes gefakt werden - Hab ich aber bisher noch NIE erlebt.
serawan
QUOTE (MTX @ Jun 25 2004, 08:09 PM)
Der Aufwand, einen MD4 Hash zu fälschen (eine Datei mit leichen Hash zu generieren) ist immer noch so groß, dass es nicht rechtfertigt, eMule völlig umzubauen und somit keine Kompatibilität zum restlichen eD2K Netzwerk zu haben.

de MTX

PS: Das wäre ein Thema, wenn massenweise Dateien-Hashes gefakt werden - Hab ich aber bisher noch NIE erlebt.

Am eigenen Leib erfahren:

Release versehentlich gelöscht. Neu gerippt (gleiches Proggy, gleicher Rechner) und gerart, gleiche kb-Menge UND anderer hash. Was blieb mir übrig?? Hab das Release zurückgesaugt.

Interessehalber: Könnt ich mit irgendwas denn hashes faken. (Mir ist nämlich schon wieder was abhanden gekommen. sad.gif )
awaw
QUOTE (serawan @ Jun 25 2004, 10:24 PM)
Interessehalber:  Könnt ich mit irgendwas denn hashes faken.  (Mir ist nämlich schon wieder was abhanden gekommen.  sad.gif  )

dazu müsstest du die datei wieder ändern.

allerdings würde das die datein der leute verfälschen, die von dir saugen, da

1) die datei ja bereits von dir verändert ist (==> anderer hash)

2) du die datei wie ja gesagt erneut verändern müsstest, verm. sosehr, dass sie unbrauchbar wird

ich vermute also, dass du denen höchstens die datei verpfuscht und ihnen nix gutes tust



ich würde dir eher empfehlen, zu versuchen den urspr. zustand wiederherzustellen, falls das geht unsure.gif
sambal-olek
QUOTE (awaw @ Jun 25 2004, 09:56 PM)
äähm, auf dieser seite (siehe einer meiner vorherigen Beiträge) stand, dass md4 knackbar wäre.

wäre es dann nicht klug auf md5 umzusteigen? oder verliert man dann die kompatibilität vollkommen? unsure.gif

Hier geht es ja nicht um Sicherheit wie z.b. bei Passwörtern, sondern um die eindeutige Identifizierbarkeit, da langt MD4 sicher auch noch ne Weile.
awaw
QUOTE (sambal-olek @ Jun 26 2004, 12:59 AM)
QUOTE (awaw @ Jun 25 2004, 09:56 PM)
äähm, auf dieser seite (siehe einer meiner vorherigen Beiträge) stand, dass md4 knackbar wäre.

wäre es dann nicht klug auf md5 umzusteigen? oder verliert man dann die kompatibilität vollkommen?  unsure.gif

Hier geht es ja nicht um Sicherheit wie z.b. bei Passwörtern, sondern um die eindeutige Identifizierbarkeit, da langt MD4 sicher auch noch ne Weile.

ich meinte ja nur, dass einer der absichtilich leichen und fakes erstellt auch gefallen daran haben könnte, files die in ordnung sind zu verpfuschen ph34r.gif
serawan
QUOTE (awaw @ Jun 25 2004, 08:45 PM)
QUOTE (serawan @ Jun 25 2004, 10:24 PM)
Interessehalber:  Könnt ich mit irgendwas denn hashes faken.  (Mir ist nämlich schon wieder was abhanden gekommen.  sad.gif  )

dazu müsstest du die datei wieder ändern.

allerdings würde das die datein der leute verfälschen, die von dir saugen, da

1) die datei ja bereits von dir verändert ist (==> anderer hash)

2) du die datei wie ja gesagt erneut verändern müsstest, verm. sosehr, dass sie unbrauchbar wird

ich vermute also, dass du denen höchstens die datei verpfuscht und ihnen nix gutes tust



ich würde dir eher empfehlen, zu versuchen den urspr. zustand wiederherzustellen, falls das geht unsure.gif

Wenn ich eine DAtei genauso rippe und packe, wie vor langer Zeit und dies auf dem selben Rechner, dann müßten die Datei und Ihr Vorgänger doch eigentlich identisch sein. Was macht den Unterschied?? Das Erstellungsdatum (sekundengenau) oder gibts da noch eine Zufallskomponente bei der md4-Erstellung?

Rein thereotisch: Könnte ich den alten hash über die neue DAtei stülpen, ohne ein fake zu produzieren. Wenn ja, sagt Ihr mir sicher nicht wie das geht, weil Ihr es entweder nicht könnt oder nicht wollt.

Zur Not gibts ja noch pm. wink.gif
awaw
QUOTE (serawan @ Jun 26 2004, 11:05 PM)
1)Was macht den Unterschied?? Das Erstellungsdatum (sekundengenau) oder gibts da noch eine Zufallskomponente bei der md4-Erstellung?

2)Rein thereotisch: Könnte ich den alten hash über die neue Datei stülpen, ohne ein fake zu produzieren. Wenn ja, sagt Ihr mir sicher nicht wie das geht, weil Ihr es entweder nicht könnt oder nicht wollt.

zu 1) das würde md# total unnütz machen, denn wozu brauchst du es dann noch?

zu 2) da hätte ich eine idee, die möchte ich allerdings hier nicht posten /wäre nur mit relativ großen aufwand möglich.

warum andrer hash? vielleicht neue version des rip-programmes? = verbesserter Algorithmus = andere Datei = anderer Hash
Esel4711
Wenn es sich bei der Quell-CD/DVD um Audio oder Video handelt, kann es sein, daß beim zweiten Rippen (andere) interpolierte Lesefehler entstanden sind als beim ersten Mal -> anderer Hash
seppl12
Sera, vor längerem, ich glaub wüstenbrot wars, hatte er files auf CD ausgelagert und anschließend wieder auf Platte kopiert und im muli eingelesen. Ergebniss war anderer filehash. Ich glaub, da kannst du nichts dagegen machen.
Esel4711
Also, bei 'ner Daten-CD sollte das wirklich nicht passieren (außer man hat 'ne beknackte CD-Firmware, die Datenlesefehler unterschlägt). Der Hash wird doch auch nur über den Datei-Inhalt gebildet (also unabhängig vom Änderungsdatum). Entweder sind da Bits gekippt oder der Hash muß der gleiche werden.
serawan
Also beim Zurückspulen eines Releases von CD auf Platte hatte ich erst 1xPech: Eine mp3 wurde im hash verändert. (gebrannt als Daten-CD) Seitdem packe ich alles und jeden, selbst wenn es nicht nötig wäre.

Schade, daß es nicht so einfach ist, eine Datei zu rekonstruieren. Wäre gut zur Leichen-Bekämpfung. So muß man bei reshare-Anfragen ein neues Release starten, obwohl zum alten noch einige chunks evtl. vorhanden sind
StarShaper
Es ist nicht unwahrscheinlich das beim rippen eines Filmes oder sonstiger Bearbeitung der anschließende Hashvorgang einen anderen Hashwert erzeugt als urprünglich erwartet. Der Algorithmus zur Berechnung ist dahingehend ausgerichtet möglichst kollisionsfrei Hashwerte zu erzeugen. Es reicht bereits ein kleiner Unterschied in der Bitfolge, der sich weder auf die Dateigröße noch auf den sichtbaren Inhalt auswirkt und es ergibt sich ein anderer Hash. Der Dateiname und das Datum haben auf den Hash keine Auswirkung. Emule verwendet einen abgewandelten md4 Hashvorgang.

PS: Wenn es leicht wäre den Hash zu rekonstruieren, wäre er wohl sinnlos. Es gab zum Thema Hash bereits einen guten Thread in diesem Board. Eigenartigerweise lässt sich dieser über die Suche nicht mehr finden. Scheint, aus welchem Grund auch immer, gelöscht worden zu sein.

cu
seppl12
QUOTE (StarShaper @ Jun 28 2004, 10:34 AM)
Es gab zum Thema Hash bereits einen guten Thread in diesem Board. Eigenartigerweise lässt sich dieser über die Suche nicht mehr finden. Scheint, aus welchem Grund auch immer, gelöscht worden zu sein.

Ging mir auch schon häufig so, das die suche ältere topics nicht findet. Sie sind aber noch da! Wenn du weist, wer in dem topic gepostet hat, so kannst du über dessen Postarchiv den topic wiederfinden, ist halt etwas mühselig.
StarShaper
QUOTE
Ging mir auch schon häufig so, das die suche ältere topics nicht findet. Sie sind aber noch da! Wenn du weist, wer in dem topic gepostet hat, so kannst du über dessen Postarchiv den topic wiederfinden, ist halt etwas mühselig.


Naja, das ist es ja. Ich selbst hatte dazu was gepostet und versucht über das Postarchiv den Thread wiederzufinden. Leider ergebnislos. Auch eine explizite Suche nach einem im Thread enthaltenen Schlüsselwort blieb ohne Erfolg. Daher gehe ich davon aus dass das Posting tatsächlich gelöscht wurde. confused.gif

cu
serawan
QUOTE (StarShaper @ Jun 28 2004, 10:34 AM)


PS: Wenn es leicht wäre den Hash zu rekonstruieren, wäre er wohl sinnlos. Es gab zum Thema Hash bereits einen guten Thread in diesem Board. Eigenartigerweise lässt sich dieser über die Suche nicht mehr finden. Scheint, aus welchem Grund auch immer, gelöscht worden zu sein.

cu

Ja, schon klar. Dafür ist der hash ja auch da: Zur eindeutigen Identifizierung.

Ich für meinen Teil brauch Trick 17 (erstmal) doch nicht, hab die releases wieder gefunden. Hab die CD einfach nicht dahin gepackt, wo sie sein sollte und per Zufall vorhin entdeckt. smile.gif
seppl12
QUOTE (serawan @ Jun 28 2004, 06:53 PM)
Ich für meinen Teil brauch Trick 17 (erstmal) doch nicht, hab die releases wieder gefunden. Hab die CD einfach nicht dahin gepackt, wo sie sein sollte und per Zufall vorhin entdeckt. smile.gif

Und ich dachte schon, dein Hundenachwuchs hätte sie als Kautraining benutzt - also immer schön alles hoch genug hängen laugh.gif
fluke667
QUOTE (seppl12 @ Jun 28 2004, 05:26 PM)
Ging mir auch schon häufig so, das die suche ältere topics nicht findet. Sie sind aber noch da! Wenn du weist, wer in dem topic gepostet hat, so kannst du über dessen Postarchiv den topic wiederfinden, ist halt etwas mühselig.

schon mal daran gedacht bei "Search posts from..." auf "any date" zu klicken whistling.gif unsure.gif
sambal-olek
QUOTE (fluke667 @ Jun 29 2004, 12:32 AM)
schon mal daran gedacht bei "Search posts from..." auf "any date" zu klicken whistling.gif unsure.gif

Das ist doch voreingestellt angel_not.gif
fluke667
QUOTE (sambal-olek @ Jun 29 2004, 12:42 AM)
Das ist doch voreingestellt angel_not.gif

das war doch nicht immer so ? unsure.gif shock.gif
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2008 Invision Power Services, Inc.