linux系统中的/dev/random

本文探讨了随机数在密码学中的重要性,特别是对于RSA和DH等算法的关键作用。介绍了计算机系统如何通过用户交互如键盘敲击和鼠标移动来收集熵,并生成随机数,解释了/dev/random的工作机制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

随机数对于密码密钥来说是很重要的,比如RSA算法,比如DH算法,那么如何产生随机数呢,我们不能指望机器能产生随机数,真正随机的是人,只有人才是真正随机的,人们可以通过不确定的对电脑的行为才产生随机,比如键盘敲击,比如鼠标点击和鼠标位移,以及两次敲击和点击之间的间隔,这些都可以被认为是随机的根源,并且也可以认为只有这这样是随机的。/dev/random就是为这一过程服务的,每当有键盘或者鼠标以及诸如此类的事件发生的时候,随机值就会进入一个随机池,然后用新的随机变量搅拌整个池,然后将结果加入池,如果有用户取随机数,那么就从池中取,如果随机数已经没有了,就只有等待键盘或者鼠标或者别的什么中断再次填满随机池,因此如果你从/dev/random读取随机数,那么可能会阻塞,如果你疯狂的打一阵子键盘,那么随机数可能会很快出现。最后,不要指望机器会产生随机数,真正产生随机数的是人!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值