我目前正在gpg --genkey
Linux VM上进行测试。不幸的是,该软件似乎依赖于/dev/random
收集熵,并礼貌地要求用户在密码随机输入的屏幕之后手动键入屏幕,因此最终可能会生成密钥,而且我发现没有命令行参数可以告诉用户使用另一个文件作为熵源(该视频中的家伙遇到了同样的问题...)。
但是,用户应该可以自由选择使用它,/dev/urandom
因为它没有任何问题。它主要是让人回想起较旧的PRNG算法,从加密的角度来看,这些算法较弱。例如,尽管NetBSD联机帮助页承认该区别在启动初期仍可能有用,但它描述了诸如“民俗学”和“仅防御幻想威胁模型的假想理论”之类的区别。既没有人同意此命令所要求的熵的数量,也没有人同意GPG手册(“请不要使用此命令,除非您知道自己在做什么,否则可能会删除系统中的宝贵信息!” )。
我已经读过有关人们安装rngd
守护程序并将其配置为/dev/urandom
用作馈送的熵源的文章/dev/random
,但是我发现这种做法非常肮脏。
我试图通过以FreeBSD方式解决该问题,方法是删除/dev/random
并链接到该问题/dev/urandom
:
rm /dev/random
ln -s /dev/urandom /dev/random
我将其视为告诉“我信任/dev/urandom
作为熵源”的设置。
我担心会遇到某种错误,但这似乎可以提供预期的结果,因为命令现在可以立即成功返回。
我的问题是:在FreeBSD系统上默认情况下,在Linux系统上进行链接有没有任何已知,实用和错误的副作用?/dev/random
/dev/urandom
还是可以设想永久设置此设置(例如,在启动过程结束时在脚本中进行设置),以防由于/dev/random
锁定某些服务而导致重复性问题?