Pidginが私の秘密鍵を生成しようとするたびに動作が停止するため、PidginがOTRを実行する際にいくつかの問題がありました。 これかなり古いブログ投稿は、「/dev/urandomを/dev/randomのエントロピープールに供給する」ことで、正しい方向(またはむしろ「キー生成を許可する」)を伝えました。
これにより、watch cat /proc/sys/kernel/random/entropy_avail
<50という数字が表示されます。 / dev / urandomをエントロピープールに入力している間、この数字は最大2000まで上昇し、その後キーを生成できました。
私のエントロピー値が50ビット(?)未満であるのが正常ですか?私が使用しているデスクトップシステムはデフォルトでFirefox、Thunderbird、Pidginを実行し、LANから音楽をストリーミングします。
OTR用のキーを生成できないのがPidginのバグですか、それともArch Linuxのインストールによって低いエントロピーが発生しますか?
PS:わかりましたこの答えは、エントロピーと(P)RNGに関する多くの誤解を説明しています。。
修正する:すでに解決されていないエラーがあります。OTRバグトラッカーそして発射台この問題について。エディタで任意のテキストを作成することもキーの生成に役立ちます。
答え1
「入力/dev/urandom
エントロピープール/dev/random
」はトリックです。実際、データはRNGの現在の状態から決定論的に導き出され、新しいエントロピーを提供するふりをする。幸いなことに、ご指摘したように、あなたが欺くルールは役に立たない。 Linuxカーネルの偽装に関係なく、エントロピーは実際には減少しません。
Linuxの低エントロピー推定は/dev/random
一般的であり、ほぼ常に偽の肯定です。見積もりが保守的すぎます。
/dev/urandom
キー生成は安全ですだから(ブロックすることができ、しばしば/dev/urandom
ブロックする)代わりにPidginを使用する必要があります(ブロックしない)。/dev/random
/dev/random
システムに実際に十分なエントロピーがないため、ブロックが正当な場合は1つだけです。言い換えれば、システムがエントロピーを蓄積するにはあまりにも新しい場合です。 Linuxシステムは通常、次の再起動のためにエントロピーを保存するため、非常に低いエントロピーは次の2つの状況でのみ発生します。
- 新規インストールの場合 - これは、最初にオンにしたときにキーを生成する組み込みデバイスで特に問題になります。
- リアルタイムシステムで。
非難する対象がどこにあるかは有効な考慮事項ではありませんが、必ずしなければならない場合は、Arch Linuxとあなたは完全に無実です。 Pidginはメソッドを使用する/dev/urandom
か、少なくとも提供する必要があるため、いくつかの非難を受けます。 Linuxカーネルは、実際に暗号化品質のランダム性を保証し、エントロピーが不足している場合にのみブロックするインターフェースを提供する必要があります(FreeBSDの場合のように/dev/random
)。