アカウント名:
パスワード:
例えば、javaの乱数生成のドキュメントでもセキュリティ目的では使用できず、安全なSecureRandomの使用を進めているけど [oracle.com]、
使用する部品の仕様書を逐一確認するのは大変だし、ましてやセキュリティ関連になると、ますます難しい。
セキュリティで食っている会社でもなきゃ、そういったミスは仕方ないんじゃないかなね?カスペルスキーさん トレンドマイクロさん [security.srad.jp]
いや、この脆弱性の本質は、非暗号論的な疑似乱数(今回のケースではメルセンヌ・ツイスタ)を使ったことではなくて、その種がシステム時刻でしかなく、それによって推測しやすくなっていたことでは。
php で言えば、ほとんどの人は mt_rand をそのまま使っていると思いますね。
mt_rand ではランダムの種に現在時刻とプロセスIDを使っているということです(参考資料 [lovepeers.org])ので時刻だけよりかはだいぶマシですが、もっとバレにくくするにはコレ [hatenablog.com]とか参考になると思います。
いやー、実は私も、この事件を知って始めて openssl_random_pseudo_bytes を知った。あぶねー、あぶねー。
mt_randは暗号論的乱数として使えるように設計されていないから使ってはいけないというのは常識だと思ってた
常識と言ってもここ数年くらいのことじゃないですかねそもそも openssl_random_pseudo_bytes が使えるようになったのがPHP 5.3以降(2009年リリース)なのでPHPの全盛期に作られたプログラムやその頃に学んだ人は mt_rand しか知らない
暗号学的乱数が必要な場面をそうと判断できる人は、言語組み込みの汎用乱数をそのまま使ったりはしない。ライブラリか外部モジュールに投げるかスクラッチする。
言語組み込みでの実装が提供されるくらいになったのは比較的最近、と評すべきだろうなその事例は。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
アレゲは一日にしてならず -- アレゲ見習い
これは仕方がないミス (スコア:3, おもしろおかしい)
例えば、javaの乱数生成のドキュメントでも
セキュリティ目的では使用できず、安全なSecureRandomの使用を進めているけど [oracle.com]、
使用する部品の仕様書を逐一確認するのは大変だし、
ましてやセキュリティ関連になると、ますます難しい。
セキュリティで食っている会社でもなきゃ、そういったミスは仕方ないんじゃないかな
ね?カスペルスキーさん トレンドマイクロさん [security.srad.jp]
Re: (スコア:2, すばらしい洞察)
いや、この脆弱性の本質は、非暗号論的な疑似乱数(今回のケースではメルセンヌ・ツイスタ)を使ったことではなくて、
その種がシステム時刻でしかなく、それによって推測しやすくなっていたことでは。
Re: (スコア:2)
php で言えば、ほとんどの人は mt_rand をそのまま使っていると思いますね。
mt_rand ではランダムの種に現在時刻とプロセスIDを使っているということです(参考資料 [lovepeers.org])ので時刻だけよりかはだいぶマシですが、もっとバレにくくするにはコレ [hatenablog.com]とか参考になると思います。
いやー、実は私も、この事件を知って始めて openssl_random_pseudo_bytes を知った。
あぶねー、あぶねー。
Re: (スコア:0)
mt_randは暗号論的乱数として使えるように設計されていないから使ってはいけないというのは常識だと思ってた
Re: (スコア:0)
常識と言ってもここ数年くらいのことじゃないですかね
そもそも openssl_random_pseudo_bytes が使えるようになったのがPHP 5.3以降(2009年リリース)なので
PHPの全盛期に作られたプログラムやその頃に学んだ人は mt_rand しか知らない
Re:これは仕方がないミス (スコア:0)
暗号学的乱数が必要な場面をそうと判断できる人は、
言語組み込みの汎用乱数をそのまま使ったりはしない。
ライブラリか外部モジュールに投げるかスクラッチする。
言語組み込みでの実装が提供されるくらいになったのは比較的最近、
と評すべきだろうなその事例は。