パスワードを忘れた? アカウント作成
11813512 submission
プログラミング

OpenBSDが故意にPOSIX違反をしてrandを強化

タレコミ by Anonymous Coward
あるAnonymous Coward 曰く、
乱数が欲しいとき、言語の標準関数にrandやrandomという名前の関数があればそれを使うのは自然であろう。しかし、Cのrandはランダムではない。むしろ規定されているのはランダムネスではなく、その逆、srandによる予測可能性である。それにも関わらず余りにも多くのコード定数やpidや現在時刻をシードにして安心しきっている。OpenBSDはPOSIXを破って、そのアホなコードでもランダムになるよう変更した。今後しばらくOpenBSDでsrandによる再現可能性を必要とする場合にはsrand_deterministicを呼ぶ必要がある (srandのユースケースをすべて調査したあとで元に戻す可能性はあるが)。このような乱暴な手法でセキュリティを実現しようとする独善的態度には批判もありそうだ。

情報元へのリンク
この議論は、 ログインユーザだけとして作成されたが、今となっては 新たにコメントを付けることはできません。
typodupeerror

「毎々お世話になっております。仕様書を頂きたく。」「拝承」 -- ある会社の日常

読み込み中...