Из этого примера статьи ISC BIND:
https://kb.isc.org/article/AA-00626/0/Inline-Signing-in-ISC-BIND-9.9.0-Examples.html
$ dnssec-keygen example.com
Generating key pair........................+++++
...............++++++
Kexample.com.+005+17262
$ dnssec-keygen -fk example.com
Generating key pair.....................................+++++
........................................................+++
Kexample.com.+005+44139
Я попробовал их на Centos 5 (x64) и увидел, что dnssec-keygen работает так медленно.
Если я добавлю еще один аргумент, он сразу сработает.
Пример:
dnssec-keygen -r random.data example.com
В ОС Windows этого не происходит.
После попытки отладки я вижу, что он застревает в
RSA_generate_key_ex(rsa, key->key_size, e, &cb))
в
lib\dns\opensslrsa_link.c
Я попытался отправить письмо в ISC, но они больше не отвечают.
У тебя есть идеи?
Вероятно, это недостаток энтропии, что не редкость, особенно в виртуализированных и / или простаивающих системах.
Без проверки кода может случиться так, что случайный ввод, необходимый для генерации правильных ключей, извлекается из / dev / random, что отличается от IIRC / dev / urandom тем, что блокируется, когда доступна недостаточная энтропия (т.е. случайность). Вы можете проверить количество битов, доступных в /proc/sys/kernel/random/entropy_avail
.
Вы можете помочь увеличить количество энтропии, генерируя прерывания (нажмите на клавиатуру, поиграйте с мышью, запустите find /, скомпилируйте новое ядро и т. Д.), Получите аппаратный генератор случайных чисел или, если ваши требования безопасности не очень high install rngd-tools и используйте / dev / urandom в качестве обходного решения для увеличения количества псевдоэнтропии: rngd -r /dev/urandom -o /dev/random -b
.