Extrahieren Sie den SHA1-Hash aus einer Torrent-Datei
Ich habe einen Blick herum für die Antwort, aber ich kann mir nur zu sein scheinen in der Lage zu finden, eine software, die es für Sie tut. Weiß jemand, wie man über das tun dies in python?
InformationsquelleAutor der Frage | 2010-04-03
Du musst angemeldet sein, um einen Kommentar abzugeben.
Schrieb ich ein Stück python-code, der überprüft die Hashwerte von heruntergeladenen Dateien gegen das, was in einem .torrent-Datei. Angenommen, Sie wollen prüfen, einen download für Korruption können Sie diese nützlich finden.
Müssen Sie die bencode-Paket zu verwenden. Bencode ist das Serialisierungsformat verwendet .torrent-Dateien. Es kann Marschall Listen, dictionaries, Zeichenketten und zahlen so etwas wie JSON.
Den code nimmt die hashes enthalten in der
info['pieces']
string:Dieser string enthält eine Abfolge von 20 byte hashes (eine für jedes Stück). Diese hashes werden dann im Vergleich mit dem hash-Wert der Stücke auf der Festplatte die Datei(en).
Der einzige komplizierte Teil dieses Codes ist der Umgang mit multi-Datei torrents, da bei einem einzelnen torrent Stück umfassen kann mehr als eine Datei (intern BitTorrent behandelt multi-Datei-downloads als einzelne zusammenhängende Datei). Ich bin mit der generator-Funktion
pieces_generator()
zu Abstrakt, entfernt.Möchten Sie vielleicht Lesen Sie die BitTorrent-spec zu verstehen, das in mehr details.
Vollständigen code unten:
InformationsquelleAutor der Antwort Alexandre Jasmin
Hier, wie ich die extrahierten HASH-Wert aus der torrent-Datei:
Es ist das gleiche wie Befehl:
Hoffe, es hilft 🙂
InformationsquelleAutor der Antwort grundic
Laut diesesollten Sie in der Lage, die md5-Summen der Dateien, indem Sie für den Teil der Daten, die wie folgt aussieht:
d[...]6:md5sum32:[hash is here][...]e
(SHA ist nicht Teil der Spezifikation)
InformationsquelleAutor der Antwort Brendan Long