random - 如何在没有 X 和硬件 RNG 的情况下填充内核熵?
问题描述
我有一个运行 Linux 的微型嵌入式设备,但没有硬件 RNG 驱动程序,也没有 X 服务器(没有鼠标,没有键盘......)。
/dev/random
块非常快。
cat /proc/sys/kernel/random/entropy_avail
报告的数字非常低(~10)。
该系统处理相机,因此存在真正的熵源。如何将熵输入内核?
解决方案
从您的相机中获取数据流,使用像 BLAKE2b 或 SHA2 之类的东西对其进行哈希处理,然后将其输入/dev/random
.
一旦熵计数是>=256
你很好去。
从那时起只能从/dev/urandom/
.
/dev/urandom
256
一旦系统有可用的熵位,就会很高兴地喷出适合密钥材料的加密安全伪随机数据。
在你收集到这个数量之后用完熵是一个神话。使用/dev/urandom
,真的,完全没问题。
推荐阅读
- html - 如何通过 LAN 流式传输 360 视频文件并将其嵌入到我的 HTML 网站中?
- python-3.x - 如何在另一个函数中访问我的 gui 类中的条目变量?
- c - 如何从控制台为 getc 输入十六进制值
- java - 确定将 JedisPool 与布尔变量一起使用
- javascript - 如何将道具/状态从 React Link 传递到功能组件?
- angular - environment 与 useValue 的常量
- emacs - Emacs speedbar 不显示所有文件类型,例如 .bin
- ssh - 带有输出流的并行 ssh (pssh)
- linux - 如何从特定行grep文本?
- c# - 如果两个列表包含任何公共值,则返回 true