硬汉嵌入式论坛

 找回密码
 立即注册
查看: 533|回复: 1
收起左侧

开源随机数硬件设计

[复制链接]

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115651
QQ
发表于 2025-3-4 06:37:29 | 显示全部楼层 |阅读模式
https://github.com/gabrielguerrer/rng_rava

程序员可能会使用某种rand()函数,但这些伪随机数在加密场景中并不适用。为此,需要一个真正的随机数生成器(RNG),而这款开源硬件RNG采用了我们见过的最佳方法之一。

基于一种在许多电子设备中常见的特性——雪崩击穿。雪崩击穿发生在反向偏置方向施加高电压(在本例中约为25V)时,该设备使用了一对齐纳二极管。当施加高电压时,电子会发生“雪崩”现象,使二极管在反向偏置时导通。然而,这并不是一个恒定的电流;随着时间的推移,电流会有微小的变化,这些变化可以被放大并用作随机数生成器。噪声通过一系列运算放大器放大后,传输到ATmega32U4微控制器,从而为用户提供136.0 Kbit/s的随机数据。





与其他随机数生成器不同,这款设备基于一种被广泛认为是真正随机的方法。不仅如此,由于它基于离散硬件,因此在出现故障时可以直接访问、监控和更换,而其他方法更像是“黑匣子”,其过程更加不透明,难以审计。

有关更多信息可以查看这篇IEEE论文

https://ieeexplore.ieee.org/document/10295491


回复

使用道具 举报

0

主题

34

回帖

34

积分

新手上路

积分
34
发表于 2025-3-4 09:31:10 | 显示全部楼层
非常好的资料,可以学习研究一下。RAVA设备的主要功能是:
1.高质量的熵:产生无偏见和独立的随机位,而没有后处理算法。
2.差异设计:通过比较两个相似和独立的噪声源,旨在实现对环境条件的免疫力。
3.双熵核心:合并两个平行和独立的熵通道,同时产生随机字节。双重设计提供了采用条件/控制设计的实验的冗余,双输出速率或独特的功能。
4.完整的透明度:作为一个开源项目,可完整访问电路设计,固件和用户端软件,包括驱动程序,库和实用程序。在硬件级别上,监视标头允许在操作过程中实时检查电压和噪声源。
5.可定制性:提供与其他电路,传感器和集成电路(IC)组件集成的接口标头。用户通过通信接口发送命令可以完全控制设备的操作。此外,作为一个开源项目,可以更新固件以修改电路的行为并实施新功能。
可访问性:作为一个离散电路,采用低成本IC组件和SMD电阻和尺寸为0805的电容器。确保设备保持负担得起,并且可以通过将组件手动焊接到印刷电路板上的手动焊接来组装。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2025-5-9 15:21 , Processed in 0.228087 second(s), 24 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表