Eu tenho vários processos em execução em segundo plano para tentar obter entropia suficiente, mas ainda estou falhando.
**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)**
Eu preciso de um método para gerar a chave que funciona, porque o que estou tentando fazer está aparentemente falhando.
sudo apt-get install rng-tools
se estiver no Ubuntu, em vez desudo yum install rng-utils
como eles têm para o Fedora, já que nenhumrng-utils
pacote existe para o Ubuntu.rng-tools
no Fedora e no EL6, então eu suspeito de um erro de digitação no artigo vinculado. BTW, é uma boa idéia fornecer as partes essenciais da resposta aqui e o link para referência, caso o link fique inoperante no futuro.Consegui gerar a chave
Em outra janela SSH aberta
Volte para sua primeira sessão SSH e execute
Deixe isso correr até que o gpg gere suas chaves!
fonte
/dev/urandom
para gerar chaves de qualquer importância./dev/random
é um erro de design. Ele deve sempre bloquear na primeira (sempre) invocação (na primeira inicialização) quando nenhuma entropia foi coletada. Como acontece em outros sistemas operacionais. Em vez disso, temos duas piscinas agora. Apenas nunca use,/dev/random
não tem vantagens.Para verificar a quantidade de bytes de entropia disponíveis atualmente, use
O intervalo de entropia tem 4096 bytes de tamanho, que pode ser esgotado muito rapidamente.
Usando esta pequena ferramenta 'readspeed' ( http://1wt.eu/tools/readspeed/ ), você pode medir a rapidez com que o balde de entropia é preenchido com diferentes métodos.
Por exemplo, inicie:
e mova o mouse. Você verá que a 'velocidade de leitura' esvazia o balde de entropia assim que é preenchido e, quando você move o mouse, ele se enche um pouco.
Tentando métodos diferentes, parece que a entrada do teclado e os movimentos do mouse são os mais eficazes para reabastecer esse balde. As transferências de rede e as cópias do disco rígido não têm muita influência.
Finalmente, existem dispositivos de geração de entropia disponíveis, como este: http://www.entropykey.co.uk/ .
fonte
+1 para ferramentas de rng
Caso você esteja preso na situação como eu, não tenho permissão para instalar um novo software (rng-tools) em um servidor sem cabeça, praticamente sem hardware de entrada (placa de som, teclado, mouse) conectado. Você pode executar esse código simples a partir de outro terminal conectado ao mesmo servidor, para adicionar à entropia. Não importa se você começar a executar isso antes ou depois de iniciar
gpg --gen-key
A primeira linha é iniciar um novo shell bash, com prioridade mais baixa (eu precisava ser legal em um servidor compartilhado por muitos usuários). O loop até é infinito; lembre-se de quebrá-lo quando a chave for gerada. Tudo o que está fazendo é fazer com que o tráfego da rede aumente a entropia. Ele também monitora o contador entropy_avail para mostrar como ele é preenchido e esvaziado no outro lado pelo gpg. No meu caso, o contador encheu rapidamente para 64 e foi esvaziado de volta para 0 (acho que o gpg pega em um pedaço de 64). Eu estava esperando a geração de chaves de 4096 bits por mais de 3 horas no servidor. Depois de começar a executar esse script, ele foi concluído em menos de 5 minutos.
fonte
[ $COUNT -lt 0 ]
. Porque para um sistema com realmente menos entropia, chega a 0 às vezes e para. O GPG está realmente com fome de entropia.Eu estava vinculado e determinado a gerar entropia no meu servidor Ubuntu 14.04 decapitado, a fim de gerar uma chave 4096 com
gpg --gen-key
Existe um pacote para gerar entropia chamado haveged. Exemplo de instalação:
sudo apt-get install haveged
Eu tive que,
sudo apt-get install rng-tools
uma vez que é uma dependência no teste a seguir.Exemplo de um teste para ver se a entropia é gerada por haveged:
cat /dev/random | rngtest -c 1000
Eu descobri sobre isso em um tutorial aqui:
https://www.digitalocean.com/community/tutorials/how-to-setup-additional-entropy-for-cloud-servers-using-haveged
Agora tenho chaves depois de executar
gpg --gen-key
fonte
Corri para este problema ao executar
pacman-key --init
em arco. As outras soluções aqui não funcionaram bem para mim, mas descobri que simplesmente fazer ping no meu roteador funcionava bem:ping -f ip.of.my.router
fonte
Bem, é mais fácil do que eu pensava, comparado às soluções apresentadas aqui:
Os bytes aleatórios fornecidos pelo comando acima foram suficientes para fornecer a entropia necessária para gerar um par de chaves RSA / 4096.
Retirado de: https://www.thingy-ma-jig.co.uk/blog/22-01-2010/generate-entropy-gnupg
fonte
haveged
é a melhor maneira, mas se você não conseguir instalar nada, poderá gerar entropia manualmente. Este método permitiugpg --gen-ken
concluir em 1-2 minutos na minha máquina (em comparação aos 10s comhaveged
). Portanto, é cerca de 10x mais lento.Execute isso em outro terminal enquanto
gpg --gen-key
estiver em execução:Um forro:
fonte