From: "NARUSE, Yui" Date: 2011-08-15T17:54:01+09:00 Subject: [ruby-dev:44391] Re: [Ruby 1.8 - Bug #5105] CGI::Session#session_id の生成方法について 2011年8月15日12:55 KOSAKI Motohiro : >> forking server だと request ごとに消費しちゃうというのが嫌な感じなのですが、 >> OS 自体の消費に対して線形ならいいかなぁと思いつつも、 >> >>> 加えて、現在攻撃側に経って考えると usec/nsec * pid あたりが予測不可能性を担保しているところ、 >>> これって 100万~1億 * 6万なわけで、42bit くらいしか空間ありませんよね。 >>> ちょっと seed が弱いと思うんです。 >> >> これは違います。 >> RAND_seed() はその時点の種にデータを混ぜるものなので、 >> 最初に openssl が /dev/urandom から読んだ種が消えるわけではありません。 >> >> RAND_add(3SSL): >> RAND_add() mixes the num bytes at buf into the PRNG state. > > おっと。僕はここを誤解していました。 > なので先の主張は撤回したいと思います。 わたしも誤解していました。 しばらく考えたんですが前出のパッチ適用後は攻撃できる気がしないので撤回します。 -- NARUSE, Yui