关闭
搜索
搜索
本版
帖子
用户
热搜:
程序员
简洁模式
高级模式
用户组: 游客
消息
提醒
新听众
我关注的
帖子
道具
勋章
任务
设置
退出
请
登录
后使用快捷导航
没有帐号?
立即注册
设为首页
收藏本站
开启辅助访问
切换到窄版
登录
or
立即注册
快捷导航
搜索
首页
论坛
BBS
MCU单片机技术
程序员交流
UENC公链DPOW算法中的随机数如何实现?
[复制链接]
作者:
二马三水
版块:
›
嵌入式操作系统
›
linux
发布时间:
2021-3-13 09:17:08
1028
0
返回列表
二马三水
当前离线
中级会员
中级会员, 积分 316, 距离下一级还需 184 积分
中级会员
中级会员, 积分 316, 距离下一级还需 184 积分
积分
316
发消息
楼主
电梯直达
二马三水
发表于 2021-3-13 09:17:08
|
只看该作者
|
倒序浏览
|
阅读模式
UENC公链采用随机选取、分片验证的方式进行交易确认,确保了长期而言,每个节点参与验证的概率是均等的。那么UENC中的随机数是真的随机吗?
UENC的随机数选取字硬件节点的Linux系统中的随机数,严格来讲是真随机数,而不是伪随机数。因此,UENC所用的随机数真正能够确保公平性,以下为大家展开论述:
此外,随机数在许多领域都有重要应用,如Monte Carlo模拟、密码学和网络安全。随机数的质量直接关系到网络安全系统的可靠性和安全性,关系到 Monte Carlo模拟结果的可信度。自从计算机诞生起,寻求用计算机产生高质量的随机数序列的研究就一直是个长期受到关注的课题。Linux内核从 1.3.30版本开始实现了一个高强度的随机数发生器,本文根据Linux 2.6.10内核的原理,简述随机数是如何产生的。
Linux内核采用熵来描述数据的随机性。熵(entropy)是描述系统混乱无序程度的物理量,一个系统的熵越大则说明该系统的有序性越差,即不确定性越大。在信息学中,熵被用来表征一个符号或系统的不确定性,熵越大,表明系统所含有用信息量越少,不确定度越大。
计算机本身是可预测的系统,因此,用计算机算法不可能产生真正的随机数。但是机器的环境中充满了各种各样的噪声,如硬件设备发生中断的时间,用户点击鼠标的时间间隔等是完全随机的,事先无法预测。Linux内核实现的随机数产生器正是利用系统中的这些随机噪声来产生高质量随机数序列。
内核维护了一个熵池用来收集来自设备驱动程序和其它来源的环境噪音。理论上,熵池中的数据是完全随机的,可以实现产生真随机数序列。为跟踪熵池中数据的随机性,内核在将数据加入池的时候将估算数据的随机性,这个过程称作熵估算。熵估算值描述池中包含的随机数位数,其值越大表示池中数据的随机性越好
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有帐号?
立即注册
收藏
0
相关帖子
•
Linux操作系统应用试题
•
缅怀那些年盗版XP系统:不仅埋葬了我的青春,还弄坏了我的电脑
•
Linux5.14内核主线预计可与RaspberryPi400兼容
•
INTEWELL案例为智慧风电保驾护航
•
怎样参与鸿蒙?
•
风河正在引领RTOS进入“现代化”创新期
•
关于鸿蒙系统HarmonyOS,我有话说
•
Android面试必备:System、App、Activity启动过程
•
麒麟操作系统什么来头?为什么可随中国航天“上天”
回复
使用道具
举报
返回列表
高级模式
B
Color
Image
Link
Quote
Code
表情
@朋友
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖后跳转到最后一页
快速回复
返回顶部
返回列表