一般的なLinuxユーザーの場合は、/dev/randomにエントロピーがないかほとんどないことがセキュリティの観点や他の関連の観点から悪いと見なされるかどうか疑問に思います。
編集:乱数を生成する必要はありません(パスワード生成とディスク暗号化にも/ dev / urandomを使用します)。楽しみにして、/dev/randomからランダムな文字列を生成するbashスクリプトがあります。もちろんしばらく使用すると、/dev/randomにエントロピーがなくブロックされます。 IRCではこれを行うのが「悪い」と言われましたが、理由は示されていません。一般的なLinuxユーザーが/dev/randomを使用して自動的にランダムなエントリを生成するので、これは悪いですか?では、どのような手順が必要ですか?
私は/dev/randomにエントロピーを残さない限り、数値生成が決定的であることを知っています。しかし、繰り返しますが、私のコンピュータ(通常のLinuxユーザー)には本当に乱数が必要ですか?
編集2:約3分間毎秒/ dev / randomのエントロピーレベルを監視し、監視の開始時にエントロピーを使用してランダムな文字列を生成するbashスクリプトを起動しました。計画を立てました。エントロピーレベルが何らかの方法で振動するのを見ることができるので、私のコンピュータのいくつかのプログラムは/ dev / randomを使ってコンテンツを生成しています。 /dev/randomファイルを使用してすべてのプログラムを一覧表示する方法はありますか?
また、エントロピープールが空になると、「許容可能なレベル」のエントロピーを生成するのに1分もかかりません。
ベストアンサー1
エントロピーは入力速度がかなり遅いため、/dev/random
使用するプログラムを使用すると/dev/random
エントロピーが低くなるのが一般的です。
Linuxのエントロピー定義を信じても、低いエントロピーはセキュリティ上の問題ではありません。/dev/random
エントロピーが十分になるまでブロックします。エントロピーが低いと、ランダム性を失うことなくマウスを動かすのを待つアプリケーションが得られます。
実際、エントロピーに対するLinuxの定義に欠陥があります。これは理論的レベルのランダム性を達成しようとする非常に保守的な定義ですが、実際には役に立ちません。実際、エントロピーは決してなくなりません。一度エントロピーが十分であれば十分です。残念ながら、Linuxには乱数を取得するための2つのインタフェースしかありません。ブロックして/dev/random
はいけないときにブロックするインターフェイスと/dev/urandom
絶対にブロックしないインターフェイスです。幸いなことに、実際には/dev/urandom
ほぼ常に正しいこれは、システムがすぐに十分なエントロピーを収集するためです。/dev/urandom
常に可能(暗号化キー生成などの用途を含む)。
問題が発生する唯一の/dev/urandom
ケースは、新規インストールを初めて起動するとき、Live CDを起動した後、または仮想マシンを複製した後など、システムにエントロピーがまだ十分でない場合です。この場合、/proc/sys/kernel/random/entropy_avail
約200に達するまで待ってください。その後、/dev/urandom
必要に応じて使用できます。