解決策 1:
RNGを見たことがありますか?
Fedora/Rh/Centos タイプ:sudo yum install rng-tools
deb タイプ:sudo apt-get install rng-tools
設定します。
次に sudo rngd -r /dev/urandom
を実行します キーを生成する前に。
参照:http://it.toolbox.com/blogs/lim/how-to-generate-enough-entropy-for-gpg-key-generation-process-on-fedora-linux-38022
解決策 2:
でキーを生成できました
apt-get install rng-tools
別の SSH ウィンドウを開く
gpg --gen-key
最初の SSH セッションに戻り、
を実行しますsudo rngd -r /dev/urandom
gpg が鍵を生成するまでこれを実行してください!
解決策 3:
現在利用可能なエントロピーのバイト数を確認するには、
cat /proc/sys/kernel/random/entropy_avail
エントロピー バケットは 4096 バイトの大きさで、すぐに枯渇する可能性があります。
この小さな「readspeed」ツール (http://1wt.eu/tools/readspeed/) を使用すると、エントロピー バケットがさまざまな方法で満たされる速さを測定できます。
たとえば、次のように起動します:
$ ./readspeed < /dev/random
マウスを動かします。エントロピー バケットがいっぱいになるとすぐに「readspeed」がエントロピー バケットを空にし、マウスを動かすと少しいっぱいになることがわかります。
さまざまな方法を試してみると、そのバケツを補充するには、キーボード入力とマウスの動きが最も効率的であるようです。ネットワーク転送とハード ドライブのコピーはあまり影響しません。
最後に、http://www.entropykey.co.uk/ のような、利用可能なエントロピー生成デバイスがあります。
解決策 4:
+1 rng-tools
私のような状況で立ち往生している場合-入力ハードウェア(サウンドカード、キーボード、マウス)が実質的に接続されていないヘッドレスサーバーに新しいソフトウェア(rng-tools)をインストールする権限がありません。この単純なコードを別の端末から実行して、同じサーバーに接続し、エントロピーを追加できます。 gpg --gen-key
を開始する前または後にこれを実行し始めるかどうかは問題ではありません
$ nice -n 19 bash
$ until [ $COUNT -lt 1 ]; do
let COUNT=`cat /proc/sys/kernel/random/entropy_avail`
echo "`date` COUNTER $COUNT"
done
最初の行は、優先度の低い新しい bash シェルを開始することです (多くのユーザーが共有するサーバーでうまくやる必要がありました)。 until ループは無限なので、キーが生成されたら忘れずにブレークしてください。ネットワークトラフィックがエントロピーを増加させます。また、entropy_avail カウンターを監視して、gpg によって反対側でどのように満たされ、空にされるかを示します。私の場合、カウンターはすぐに 64 までいっぱいになり、空になって 0 に戻りました (gpg が 64 のチャンクを拾うと思います)。サーバーで 3 時間以上 4096 ビットのキー生成を待っていました。このスクリプトの実行を開始してから、5 分以内に完了しました。
解決策 5:
gpg --gen-key
で 4096 キーを生成するために、ヘッドレス Ubuntu 14.04 サーバーでエントロピーを生成することにしました。
haveged というエントロピーを生成するパッケージがあります。インストール例:
sudo apt-get install haveged
sudo apt-get install rng-tools
しなければならなかった これは次のテストの依存関係であるためです。
haveged によってエントロピーが生成されるかどうかを確認するテストの例:
cat /dev/random | rngtest -c 1000
任意の乱数ジェネレーターで非常に少量の失敗は許容されますが、hovered を使用すると、998 ~ 1000 回の成功が非常に頻繁に見られると予想できます。
ここのチュートリアルでそれについて知りました:
https://www.digitalocean.com/community/tutorials/how-to-setup-additional-entropy-for-cloud-servers-using-haveged
gpg --gen-key
を実行した後、キーを取得しました