/dev/urandomでどのプロセスがどのように多くのエントロピーを使用しているかを確認する方法

/dev/urandomでどのプロセスがどのように多くのエントロピーを使用しているかを確認する方法

これにより、fuser -v /dev/urandom現在開いているプロセスが何であるかがわかりますが、/dev/urandomそれ以上ではありません。時間の経過とともに各人が消費したエントロピーの量を確認する方法はありますか?たとえば、あるプロセスは毎分約1ビットのエントロピーを消費し、他のプロセスは毎秒約8ビットを消費します。

ベストアンサー1

エントロピーが消費されないため、短い答えはゼロです。

一つある一般的な誤解エントロピーが消費されます。ランダムなビットを読み出すたびに、ランダムなソースからいくつかのエントロピーが削除されます。これは間違っています。エントロピーを「消費」しません。。はい、Linux文書が正しくありません。

Linuxシステムのライフサイクルは2つの段階に分けられます。

  1. 最初はエントロピーが足りません。/dev/random十分なエントロピーが蓄積したと思うまでブロックします。/dev/urandom低いエントロピーデータを提供します。
  2. しばらくすると、ランダムジェネレータプールに十分なエントロピーが表示されます。/dev/random偽の「エントロピーリーク」比率を割り当て、時々/dev/urandom暗号化品質のランダムデータを提供することを嬉しく思います。

FreeBSDの主張は正しいです。 FreeBSDでは/dev/random(または/dev/urandom同じです)、エントロピーが十分でない場合はブロックし、エントロピーが十分であれば、ランダムなデータを引き出し続けます。 Linuxでは、どちらもあまり役に立ちませ/dev/random/dev/urandom

実際に/dev/urandom使用してシステムを構成するときは、エントロピープール(ディスク、ネットワークとマウスのアクティビティ、ハードウェアソース、外部システムなど)を提供していることを確認してください。

読み取ったバイト数を読み取ろうとしますが、/dev/urandomこれは完全に意味がありません。読み取りは/dev/urandomエントロピープールを使い果たしません。各消費者は、指定された時間単位にゼロビットのエントロピーを使用します。

おすすめ記事