なんでWinnyはSSLを使わないの?
警察はWinnyの暗号を解読済みという記事 (via TECHSIDE)
という記事がでていて、自分もなんでSSL使わないのか不思議に思っていたのですが(SSLは、要するに公開鍵暗号でワンタイムパスワードを交換して、その後は効率のよい秘密鍵暗号を使って通信する仕組みです。たぶん。)
SSLみたいな仕組みを使わないのは、鍵交換だけでも負荷が大きすぎるからではないか、という記事が、
でもFreenetはやってるっぽいという記事が次の日に
Freenetが実際どうやって暗号化してるのかは調べたんですけどよくわかりませんでした……。
暗号についての基本的なことは、IBM Developer Worksの「安全なソフトウェアを作成する」っていう連載が非常によかったです。(IBMのサイトに記事一覧がみつからないので、発見できたURLだけリストにしておきます)
1 つの包括的な推奨事項が、暗号化のすべての使用に適用されます。不幸なことに、これはソフトウェア開発者によって無視されがちなことの 1 つでもあります。その推奨事項とは、暗号を決して自分で作成してはならない ということです。
- http://www-6.ibm.com/jp/developerworks/security/001013/j_tried.html
- http://www-6.ibm.com/jp/developerworks/security/001117/j_hashing.html
- http://www-6.ibm.com/jp/developerworks/security/000818/j_playing.html
- http://www-6.ibm.com/jp/developerworks/security/000818/j_playing.html
- http://www-6.ibm.com/jp/developerworks/security/overflows-index-j.html
- http://www-6.ibm.com/jp/developerworks/security/000616/j-buffer-defend.html
- http://www-6.ibm.com/jp/developerworks/security/000721/j_smash.html
- http://www-6.ibm.com/jp/developerworks/security/assurance.html
- http://www.radiumsoftware.com/wiki/moin.cgi/DataEncryption
- http://mars.elcom.nitech.ac.jp/Research/MM/security/
id:winnyさんに、Winnyの暗号アルゴリズムはRC4(秘密鍵暗号化方式)だということを教えていただきました。ありがとうございますー。なんか上の引用は嫌なほのめかし、みたいになっていますが、Winnyは既存のアルゴリズムを使用しているとのことです。ごめんなさい。上のダメ日記さんにも、Freenetの記事の直下にRC4の記述がありました。読んで無さすぎ。
で、RC4の鍵はどうやって交換してるのかな……。