it-swarm-ko.com

GPG에 엔트로피가 충분하지 않습니다

충분한 엔트로피를 얻으려고 백그라운드에서 수많은 프로세스가 실행되고 있지만 여전히 실패합니다.

**We need to generate a lot of random bytes. It is a good idea to perform
some other action (type on the keyboard, move the mouse, utilize the
disks) during the prime generation; this gives the random number
generator a better chance to gain enough entropy.
Not enough random bytes available.  Please do some other work to give
the OS a chance to collect more entropy! (Need 210 more bytes)**

작동하는 키를 생성하는 방법이 필요합니다. 내가하려는 일이 분명히 실패합니다.

87
Joey BagODonuts

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

115
Danny Staple

나는 키를 생성 할 수 있었다

apt-get install rng-tools

다른 SSH 창에서

 gpg --gen-key

첫 번째 SSH 세션으로 돌아가서 실행하십시오.

Sudo rngd -r /dev/urandom

Gpg가 키를 생성 할 때까지 이것을 실행 시키십시오!

29
Joey BagODonuts

현재 사용 가능한 엔트로피 바이트 양을 확인하려면

cat /proc/sys/kernel/random/entropy_avail

엔트로피 버킷의 크기는 4096 바이트이므로 매우 빨리 고갈 될 수 있습니다.

이 작은 '읽기 속도'도구 ( http://1wt.eu/tools/readspeed/ )를 사용하여 엔트로피 버킷이 다른 방법으로 채워지는 속도를 측정 할 수 있습니다.

예를 들어, launch :

$ ./readspeed < /dev/random

마우스를 움직입니다. 'readspeed'는 엔트로피 버킷이 채워지는 즉시 비우고 마우스를 움직이면 약간 채워진다는 것을 알 수 있습니다.

다른 방법을 시도하면 키보드 입력과 마우스 움직임이 해당 버킷을 보충하는 가장 효율적인 것으로 보입니다. 네트워크 전송 및 하드 드라이브 사본은 큰 영향을 미치지 않습니다.

마지막으로 다음과 같은 엔트로피 생성 장치를 사용할 수 있습니다. http://www.entropykey.co.uk/ .

14
Julien Vehent

rng- 도구의 경우 +1

입력 하드웨어 (사운드 카드, 키보드, 마우스)가 거의 연결되지 않은 헤드리스 서버에 새 소프트웨어 (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 쉘을 시작하는 것입니다 (많은 사용자가 공유하는 서버에서 Nice가 필요했습니다). until 루프는 무한하므로 키가 생성되면 반드시 루프를 해제하십시오. 네트워크 트래픽으로 인해 엔트로피가 증가하고 있습니다. 또한 entropy_avail 카운터를 모니터링하여 다른 쪽에서 gpg 단위로 채워지고 비워지는 방법을 보여줍니다. 내 경우에는 카운터가 64로 빠르게 채워지고 다시 0으로 비워졌습니다 (gpg는 64 개의 덩어리로 픽업됩니다). 서버에서 3 시간 이상 4096 비트 키 생성을 기다리고있었습니다. 이 스크립트 실행을 시작한 후 5 분 안에 완료되었습니다.

9
Raj

gpg --gen-key로 4096 키를 생성하기 위해 헤드리스 Ubuntu 14.04 서버에서 엔트로피를 생성하기로 결심했습니다.

Haveged라고하는 엔트로피를 생성하는 패키지가 있습니다. 설치 예 :

Sudo apt-get install haveged

다음 테스트에서 종속성이므로 Sudo apt-get install rng-tools해야했습니다.

엔트로피가 발생했는지 확인하는 테스트의 예 :

cat /dev/random | rngtest -c 1000

임의의 숫자 생성기에서 매우 적은 양의 실패가 허용되지만 호버링을 사용할 때 998-1000 개의 성공을 매우 자주 볼 수 있습니다.

나는 튜토리얼에서 그것을 발견했다 :

https://www.digitalocean.com/community/tutorials/how-to-setup-additional-entropy-for-cloud-servers-using-haveged

gpg --gen-key를 실행 한 후 키가 생겼습니다.

7
dmmfll

haveged가 가장 좋은 방법이지만 아무것도 설치할 수 없으면 엔트로피를 수동으로 생성 할 수 있습니다. 이 방법은 gpg --gen-ken 내 컴퓨터에서 1-2 분 안에 완료됩니다 (haveged를 사용하여 10 초와 비교). 약 10 배 더 느립니다.

다른 터미널에서 gpg --gen-key가 실행 중입니다.

while true; do
    # print entropy available
    cat /proc/sys/kernel/random/entropy_avail
    # write a 1 MB stream of zeros to /tmp/foo
    # "conv=fdatasync" flushes the disk cache
    dd bs=1M count=1 if=/dev/zero of=/tmp/foo conv=fdatasync
done

짧막 한 농담:

while true; do cat /proc/sys/kernel/random/entropy_avail; dd bs=1M count=1 if=/dev/zero of=/tmp/foo conv=fdatasync; done
1
wisbucky

글쎄, 여기에 제시된 솔루션에 비해 생각보다 쉽습니다.

ls -R /

RSA/4096 키 쌍을 생성하는 데 필요한 엔트로피를 제공하기 위해 위의 명령으로 제공된 임의 바이트가 충분했습니다.

에서 가져온 것 : https://www.thingy-ma-jig.co.uk/blog/22-01-2010/generate -엔트로피 -gnupg

0
ivanleoncz

Arch에서 pacman-key --init를 실행할 때이 문제가 발생했습니다. 여기에있는 다른 솔루션은 나에게 잘 작동하지 않았지만 라우터를 플러딩 (ping-ping)하는 것만으로도 훌륭하게 작동한다는 것을 알았습니다. ping -f ip.of.my.router

0
Yona Appletree