極楽せきゅあブログ

ときどきセキュリティ

リバース・エンジニアリングと暗号通信

Winnyの暗号通信がパフォーマンス重視という理由でしょぼいというのはほとんど周知ですよね。ではその暗号が、多少パフォーマンスを犠牲にしてでも強固なものだったとしたらどうなったかっていうと、まーリバース・エンジニアリングで解析すりゃー一緒といえば一緒だったかもしれないですね。暗号通信を正面から解析するよりはかなり楽に解析できるからねえ。
それに対しては、コードを読ませないようにする対抗策があるわけですが、ここらはもういたちごっこ的な世界で、そのときは都合がよい難読化がなされていたとしても、その技術が陳腐化したら解析されてしまう。暗号の作り出し方が知られてしまったとしたらもうその通信ネットワークは丸裸。これに対抗するにはWinnypのように下位互換性?を犠牲にするアプローチしかなさそう。でも普通のユーザー、いや、大多数のユーザーはバージョンアップとかしないだろうしね。バージョンアップして互換性の無いネットワークに移行しても、コンテンツが少ないからねえ。
じゃあ、リバース・エンジニアリングを「規制」するのか、という話もある。でもそんなことしたら、ウイルス解析が滞っちゃうだろね。ここらのアンビバレントはウイルス作成罪と同じ図式だよなあ。
規制が行われないとしたら、いたちごっこで少しでもリードするしかない。そのリードが保てている間は暗号の中身を覗かれずにすむ、ということなんだろうか。