ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

linux – GPG密钥生成器*不*使用熵

2019-08-12 07:52:58  阅读:261  来源: 互联网

标签:linux debian pgp gpg


我正在尝试在Ubuntu 16.10上生成一个GPG密钥,而GPG正在永远.

我google了一下,发现了一些网站,包括StackExchange上的一些问题,建议运行像rngd这样的熵生成器来帮助系统更快地生成随机数.

其中一些网站还鼓励检查/ proc / sys / kernel / random / entropy_avail,声明在他们的系统上,它在运行GPG之前报告了四位数字,在运行时报告了两位到一位数字.

我目前正在我的电脑上运行GPG;它已经运行了至少半个小时,我得到了这个

$cat /proc/sys/kernel/random/entropy_avail 
3644

这个数字会随着时间的推移而增加,并且很少会减少(在写完这句话之后它是3801).我没有运行任何随机数生成器.实际上,如果我尝试运行一个(例如sudo rngd -fr / dev / random,它会降到50左右;如果我使用/ dev / urandom,它会保持在3000左右).

任何人都可以帮我弄清楚我的系统到底出了什么问题?

我在Linux 4.8.0-37-generic,gpg(GnuPG)2.1.15,libgcrypt 1.7.2-beta.

解决方法:

在升级到Debian 9后,我最近遇到了类似的问题.一些依赖于随机数的程序在最近的Linux版本中更改了源代码/随机生成器例程,这使得它们更依赖于系统的熵.

安装守护进程似乎提供了一致的随机数池.这样做:

sudo apt-get install haveged

现在,需要熵的不同程序需要伪造的守护进程,尤其是在熵通常较低的VM和iOT(例如树莓等)中.

从男人的愤怒:

NAME
haveged – Generate random numbers and feed Linux’s random device.

DESCRIPTION
haveged generates an unpredictable stream of random numbers harvested
from the indirect effects of hardware events on hidden processor state
(caches, branch predictors, memory translation tables, etc) using the
HAVEGE (HArdware Volatile Entropy Gathering and Expansion) algorithm.
The algorithm operates in user space, no special privilege is required
for file system access to the output stream.

Linux pools randomness for distribution by the /dev/random and
/dev/urandom device interfaces. The standard mechanisms of filling the
/dev/random pool may not be sufficient to meet demand on systems with
high needs or limited user interaction. In those circumstances, haveged
may be run as a privileged daemon to fill the /dev/random pool whenever
the supply of random bits in /dev/random falls below the low water mark
of the device.

标签:linux,debian,pgp,gpg
来源: https://codeday.me/bug/20190812/1641732.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有