2

info_hash 値を実際のハッシュに「変換」する方法を理解するのに問題があります。これは、トラッカーに通知しているときに uTorrent から得ているものの例です。

{
passkey: "77ec6a27adcc441648d66d0b873550e4",
info_hash: "YNvÿ@p",
peer_id: "-UT3430-89 ",
port: "54790",
uploaded: "0",
downloaded: "491520",
left: "24928863",
corrupt: "0",
key: "A2DD5E96",
numwant: "200",
compact: "1",
no_peer_id: "1"
}

私が理解しようとしているのは、この奇妙な値「YNvÿ@p」を取得し、情報ハッシュをsha1として取得する方法です(例: 594E98760099B1CFC3BFAA4070C0CC02F6C1AA90)? サーバーでPHPを使用しています。

今、私はすでに次の声明を読みました:

info_hash

metainfo ファイルの情報値のベンコード形式の 20 バイトの sha1 ハッシュ。これは metainfo ファイルの部分文字列であることに注意してください。情報ハッシュは、無効であるかどうかに関係なく、.torrent ファイルにあるエンコードされた形式のハッシュでなければなりません。この値は、ほぼ確実にエスケープする必要があります。

しかし、何が起こっているのかを理解するのにはあまり役に立ちませんでした。

4

2 に答える 2