2005-11-11 (金)
*授業::コンピュータ通信
もうちょっと,偽Winnyを弄る.検索キーワードや流れているキーの情報の一部を表示するように.キー情報のファイル名は2重に暗号化されているので,どうにかしないと.どうも実際のファイル名より2バイトデータが長くなってるので,先頭か最後にキーが入っているようです.多分アルゴリズムはRC4ですが,先頭と最後の2バイトを使って復号化できないか試しても駄目でした.1バイトはヌル文字ということもあり得るか.
Winnyを逆アセンブルしたソースって何処にやったかな.見つからない.通信系のかなりの部分をCで書き直したものがあったはずなのだけど.もう同じ作業はやりたくない.
…と思ったのですが,適当にUpフォルダに色々なファイル名のファイルを置いて,検索時のデータを眺めていたら,先頭の2バイトと元ファイル名の文字列長に何らかの相関関係があるような…….これはもしやと思ったら,ビンゴ.キャッシュの暗号化の時と同じことをやってますね.
というわけで,検索リンク上を流れているデータは殆ど処理できるようになりました.一応,検索も掛けられるけど,まだちょっと怪しい.前作ったノードリストの復号化プログラムもあったので,適当にノードリストを突っ込んで暫く実際のWinnyネットワークに繋いでみる.流れているデータが凄いですね.色々な意味で.
……というのは授業中に見た夢だった気がしないでもないです.