From: Akinori MUSHA Date: 2007-10-09T19:39:01+09:00 Subject: [ruby-dev:31990] Re: securerandom.rb for 1.8 --pgp-sign-Multipart_Tue_Oct__9_19:39:03_2007-1 Content-Type: text/plain; charset=ISO-2022-JP At Wed, 3 Oct 2007 12:49:20 +0900, Tanaka Akira wrote: > securerandom.rb を 1.8 に追加し、cgi/session.rb に使わせたい > のですが、どうでしょうか。  いいと思います。ライブラリ名も明示的で納得できます。ただ、 メソッド名に random_ が付いたり付かなかったりする点が気になり ます。  ruby-dev の議論は読んだんですが、メソッド名が決まった経緯は 追い切れませんでした。こういうのはいまいちでしょうか。 random_number(i) -> integer random_number(f=1.0) -> float random_bytes(n) -> binary_string / string hex(n) -> hex_string base64(n) -> base64_string > cgi/session.rb に限りませんが、session cookie の生成には暗号 > 学的にそれなりに安全な乱数が必要です。 > > しかし、現状の Ruby ではそのような安全な乱数を得る簡単な API > が用意されていないため、安全なんかどうなのかよくわからない怪 > しげなコードで session cookie を生成することがあります。 > > やはり、そういう難しい暗号の話は、餅は餅屋ということで外部 > (OpenSSL や /dev/urandom) にまかせるのがいいのではないでしょ > うか。  そうですね。有用な場面は多いと思います。 -- / /__ __ Akinori.org / MUSHA.org / ) ) ) ) / FreeBSD.org / Ruby-lang.org Akinori MUSHA aka / (_ / ( (__( @ iDaemons.org / and.or.jp "Different eyes see different things, Different hearts beat on different strings -- But there are times for you and me when all such things agree" --pgp-sign-Multipart_Tue_Oct__9_19:39:03_2007-1 Content-Type: application/pgp-signature Content-Transfer-Encoding: 7bit -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.7 (FreeBSD) iD8DBQBHC1pHkgvvx5/Z4e4RAtu3AJ9jc6+CPXQ/9LBXA9j7BOv1odrDggCg3VDf NoXEDoME4pp93FBu0GYCPaA= =eQw6 -----END PGP SIGNATURE----- --pgp-sign-Multipart_Tue_Oct__9_19:39:03_2007-1--