2

私は自分のトレントトラッカーを作成しようとしていますが、トレントを追跡するためにinfo_hash使用される生成方法がわかりませんxbtt

これはphpで可能ですか?

私はこの関数を使用してhttp://paste.lisp.org/display/17178をベンコードおよびデコードしています

これは正しいハッシュですか?

$nn = file_get_contents('my.torrent');
$file = bdecode($nn);
$hash = sha1( bencode($file[info]) );

ありがとうございました。

4

1 に答える 1

1

bittorrent仕様によると、info_hashは、Metainfoファイルのinfoキーの値のurlencoded20バイトSHA1ハッシュです

関数を使用してphpで文字列のsha1ハッシュを計算し、sha1関数を使用してurlエンコードを行うことができurlencodeます。

アップデート:

あなたの方法は正しくありません。すでに実行したトレントファイルをbdecodeする必要があります。ただし、Metainfo (トレント)ファイル情報キーのに基づいてinfo_hashを計算する必要があります。それを行った後でも、結果をurlencodeする必要がありますが、これも現在の実装から欠落しているようです。

于 2010-04-08T15:18:45.177 に答える