The invention discloses a hardware based distributed multi-party random number generation method and system, the method comprises the following steps: dividing a time slice into multiple periods, sorting at least two random number generation nodes in the current period; selecting the true random number for the first random number generation node in the current period and broadcasting it to other random number generation nodes; currently following The machine number generating node receives and verifies the true random number broadcast by the last random number generating node. When the verification is passed, the true random number generated by this node and the true random number broadcast by the last random number generating node are combined and signed, and the signed true random number is broadcast to other random number generating nodes. The invention adopts the mechanism of making protocol among multiple parties to make multiple sections The combination of random numbers generated by points generates the final random number, which is no longer solely dependent on a specific hardware chip, and can prevent malicious parties from tampering with the random number without permission.
【技术实现步骤摘要】
一种基于硬件的分布式多方随机数生成方法及系统
本专利技术属于密码学随机数生成
,更具体地,涉及一种基于硬件的分布式多方随机数生成方法及系统。
技术介绍
随机数作为密码协议的基础,在计算机系统中被广泛使用。如何产生安全可信的随机数一直是学术界和工业界很活跃的话题。随机数包括真随机数和伪随机数,真随机数是使用物理现象产生的:比如使用物理器件的噪音、抖动,热噪声、量子现象等等,这些物理现象理论上是无法被控制的,因此产生的随机数具有不可预测性,这样的随机数发生器叫做物理性随机数发生器;传统的基于计算机硬件的随机数生成器可根据硬件的环境,如CPU电压、温度、时钟信号的抖动等因素由单一的生产者产生真随机数。伪随机数是由计算机或计算器产生的,是一种“近似”随机的数,实际上它们是通过一个固定的、可以重复的计算方法产生的。由于真随机数具有不可控、不可预知等优点,因此在信息安全等领域发挥着极为重要的作用。随机源的质量决定了随机数的质量,目前真随机数的产生依赖于某一特定硬件芯片;虽然由于硬件随机源为不可控、不可预知的、不可重复,其产生的随机数具有真随机数性,但是硬件随机数产生器由于缺乏透明性、中心化和生产者的单一性,导致其产生的真随机数无法被验证,无法被验证进一步导致随机数不可信,即存在被私自篡改的可能性。
技术实现思路
针对现有技术的至少一个缺陷或改进需求,本专利技术提供了一种基于硬件的分布式多方随机数生成方法及系统,不再单一依赖于某一特定硬件芯片,而是将每个硬件芯片产生的真随机数组合生成最终的随机数, ...
【技术保护点】
1.一种基于硬件的分布式多方随机数生成方法,其特征在于,包括以下步骤:/nS1:将时间片划分为多个周期,在当前周期内对至少两个随机数生成节点进行排序;/nS2:当前周期内的第一个随机数生成节点选择真随机数并将其广播至其他的随机数生成节点;/nS3:当前随机数生成节点接收上一随机数生成节点广播的真随机数并进行验证,当验证通过后根据预置的组合规则将本节点生成的真随机数与上一随机数生成节点广播的真随机数进行组合和签名,并广播签名后的真随机数至其他的随机数生成节点;/nS4:重复步骤S3,直至当前周期内的最后一个随机数生成节点产生真随机数并验证通过。/n
【技术特征摘要】
1.一种基于硬件的分布式多方随机数生成方法,其特征在于,包括以下步骤:
S1:将时间片划分为多个周期,在当前周期内对至少两个随机数生成节点进行排序;
S2:当前周期内的第一个随机数生成节点选择真随机数并将其广播至其他的随机数生成节点;
S3:当前随机数生成节点接收上一随机数生成节点广播的真随机数并进行验证,当验证通过后根据预置的组合规则将本节点生成的真随机数与上一随机数生成节点广播的真随机数进行组合和签名,并广播签名后的真随机数至其他的随机数生成节点;
S4:重复步骤S3,直至当前周期内的最后一个随机数生成节点产生真随机数并验证通过。
2.如权利要求1所述的分布式多方随机数生成方法,其特征在于,步骤S3中所述的验证还包括:除上一随机数生成节点之外的其他各随机数生成节点共同对上一随机数生成节点广播的真随机数进行全局验证。
3.如权利要求2所述的分布式多方随机数生成方法,其特征在于,其他各随机数生成节点通过共识算法对上一随机数生成节点广播的真随机数进行验证,当不少于预设个数的随机数生成节点验证通过时,表示上一随机数生成节点广播的真随机数是正确的随机数。
4.如权利要求1或3所述的分布式多方随机数生成方法,其特征在于,若上一随机数生成节点广播的真随机数验证未通过,则当前随机数生成节点选择上一随机数生成节点之前的随机数生成节点广播的真随机数与本节点生成的真随机数进行组合。
5.如权利要求4所述的分布式多方随机数生成方法,其特征在于,步骤S3中所述的验证包括:对真随机数的签名进行验证,以及验证产生所述真随机数的随机数生成节点是否属于当前周期。
6.如权利要求1或5所述的分布式多方随机数生成方法,其特征在于,步骤S2中,若当前周期是第一个周期,则第一个随机数生成节点以...
【专利技术属性】
技术研发人员:李汝佳,汪晓明,娄山林,柳枫,
申请(专利权)人:上海朝夕网络技术有限公司,
类型:发明
国别省市:上海;31
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。