Wie wurde hier eine Base16 Hash generiert?

Zeboo

Lt. Commander
Registriert
Juli 2008
Beiträge
1.562
Hallo,

frage mich gerade wie man zum Beispiel hier: http://torrentexpress.net/2e6ce06a5aee96adb04ebd93649f459d9218a3e5 auf dem gezeigtem Base16 Hashgekommen ist?

Hat man die Torrent Datei genommen und daraus dann die Werte 2E6CE06A5AEE96ADB04EBD93649F459D9218A3E5 generiert oder hat man die eigentliche Datei, das nach dem fertig laden per Torrent da ist genommen und die Hashwerte daraus bekommen? Und wäre Methode 2 sicherer? (Sehe Methode 1 als unsicher weil: man kann über das Hash aus gehen, dass man zwar das richtige Torrent hat - aber irgendwie - wurde die eigentlich Datei was runtergeladen wird eventuell modifiziert. Und wenn dazu kein hash gibt sondern nur zu der Torrent Datei, dann sehe ich das als kritisch. Nicht?)

Noch etwas: wo gibt es so einen File to Base16 tool? Finde Tools für Sha und MD5 Generierung, aber nicht viel zu Base16.
 
Zuletzt bearbeitet: (Titel falsch)
Base16 heißt einfach zur Basis 16. Und 16 unterschiedliche Ziffern hat die hexadezimale Notation. Diese wird von SHA, MD5 u.a. Algorithmen verwendet. Such dir also einen passenden Algorithmus aus der passt und vergleiche.
 
Ups. Dann habe ich das falsch verstanden. Jetzt müsste man also raten ob die dort angegebenen Haswerte MD5, Sha-x oder was auch immer sind?
 
Zuletzt bearbeitet:
Ich würde mal auf SHA1 schätzen, da der String 40 Byte lang ist. MD5 ist 32 Byte lang.
 
Danke. Sehe jetzt wenn man den Maus über den Magnet Link legt, das dort unter anderem was von xt=urn:btih steht. Laut wiki ist das dann:

BTIH (BitTorrent Info Hash)
These are hex encoded SHA1 hash sums of the "info" sections of BitTorrent metafiles as used by BitTorrent to identify downloadable files or sets of files. For backwards compatibility with existing links, clients should also support the Base32 encoded version of the hash.[2]
xt=urn:btih:[ BitTorrent Info Hash (Hex) ]
Some clients require Base32 of info_hash (Vuze for ex.).

Kann jetzt aber nach einem Download immer noch nicht auf dem Hash kommen (weder bei der Torrent Datei noch beim Fertigen Inhalt) was immer auf der Seite steht. "These are hex encoded SHA1 hash sums of the "info" sections of BitTorrent metafiles" - das wird zumindest gemacht, wenn ich das richtig verstanden habe. Aber wie.
 
Willst einen eigenen Client entwickeln, oder wieso fragste? Musste halt einfach weiter suchen. Z.B. nach "torrent info hash OR metafile". Dann sollte sich das ganze ja recht einfach auflösen können. Oder direkt mal auf Bittorrent.com nachschauen, etc..
 
Ich will zuerst einfach mal auf dem Hashwert kommen was immer bei allen magnetlinks angegeben wurde :)

Die Idee ist einfach: ich habe irgend ein Torrent Datei und Inhalt, jetzt möchte man nachvollziehen ob das wirklich das original ist. Sprich, man generiert daraus den gleichen hash das auch online immer beim torrentmagnet angezeigt wird. Hat man das kann man ja davon ausgehen, dass alles stimmt. Ist das nicht so, stimmt irgendwas nicht.
 
Du kannst davon ausgehen, dass der Inhalt immer passend zum Torrent ist. Wenn man den Inhalt verändert, muss auch ein neuer Torrent erzeugt werden, und damit auch ein neuer Hash.

Nun kommt der Haken bei sämtlichen Hashmethoden: die Kollision, bzw. Hashduplikate. Bspl.:
Hash(0) = 1
Hash(7) = 1

Ich kann mir aber vorstellen, dass bei Torrentssolch Art von Angriffen erschwert wird, da die einzelnen Chunks manipuliert werden müssten.

Wenn man auf Nummer sicher gehen will, prüft man die Signatur der Dateien mit den der Erzeuger (die Checksummen, die teilweise mit dabei stehen).
 
Ok. Ich habe mir halt folgendes vorgestellt:
Jemand kommt und gibt mir eine Datei und sagt "hej das habe ich von der und der Torrentquelle, das ist Offiziell bla bla"
Dann, wenn ich sicher ausgehen will ob das wirklich stimmt, prüfe ich die Hashwerte was auf der Seite zum angeblichen Torrent steht und die Datei das mir mitgegeben wurde. Stimmen die Werte überein, ist wirklich alles ok. Dachte das ist hier der Sinn der Hashes (bzw. generell der Sinn).

Ist jetzt nichts Weltbewegendes und habe auch nichts vor, wollte nur einiges mehr verstehen.
 
Praxisbeispiel 1: Du legst die Datei, die du bekommen hast, in das Download-Verzeichnis eines Torrent-Clients. Du nimmst oder suchst die passende Torrent-Datei. Der Client sollte dann entweder anfangen zu Seeden, wenn es die korrekte Datei ist oder gibt ggfs. eine Fehlermeldung aus, wenn die Checksumme nicht übereinstimmt.

Praxisbeispiel 2: Hier finden sich sowohl die Checksummen als auch die Torrents zu den ISOs: http://vesta.informatik.rwth-aachen.de/ftp/pub/comp/Linux/debian-cd/7.1.0/amd64/bt-dvd/
 
Zurück
Oben