CN112115508A - 应用于区块链的乱数产生方法、装置及乱数产生器 - Google Patents

应用于区块链的乱数产生方法、装置及乱数产生器 Download PDF

Info

Publication number
CN112115508A
CN112115508A CN202010931353.9A CN202010931353A CN112115508A CN 112115508 A CN112115508 A CN 112115508A CN 202010931353 A CN202010931353 A CN 202010931353A CN 112115508 A CN112115508 A CN 112115508A
Authority
CN
China
Prior art keywords
random number
number seed
seed
random
parameter
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202010931353.9A
Other languages
English (en)
Other versions
CN112115508B (zh
Inventor
李宜青
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hanshunlian Electronic Technology Nanjing Co ltd
Original Assignee
Hanshunlian Electronic Technology Nanjing Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hanshunlian Electronic Technology Nanjing Co ltd filed Critical Hanshunlian Electronic Technology Nanjing Co ltd
Priority to CN202010931353.9A priority Critical patent/CN112115508B/zh
Priority claimed from CN202010931353.9A external-priority patent/CN112115508B/zh
Publication of CN112115508A publication Critical patent/CN112115508A/zh
Application granted granted Critical
Publication of CN112115508B publication Critical patent/CN112115508B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

本发明实施例提供一种应用于区块链的乱数产生方法、装置及乱数产生器,乱数产生器包括储存组件与被动组件,通过获取基于储存组件生成的第一乱数种子,以及基于被动组件生成的第二乱数种子,然后混合第一乱数种子与第二乱数种子,得到第三乱数种子,并对第三乱数种子进行加密处理后,即可得到目标乱数。本发明实施例中,由于储存组件与被动组件所产生的两种乱数种子本身就具较高的随机性,在将这两种乱数种子混合后,所生成的第三乱数种子便会具有更高的随机性,因此能够有效保证利用第三乱数种子生成的目标乱数具有较高的乱度,且不可预测,有助于提升区块链的保密性与安全性。

Description

应用于区块链的乱数产生方法、装置及乱数产生器
技术领域
本发明实施例涉及乱数技术领域,尤其涉及一种应用于区块链的乱数产生方法、装置及乱数产生器。
背景技术
近年来,区块链、物联网、智慧城市与新金融技术服务逐渐成为新兴应用发展的主力,进而对于数位货币、数位签章、加密资讯、个人资料保密及资讯安全性上,有着愈来愈严苛的需求。
目前,在各种不同的加密方式中,为确保资料的机密性、完整性、不可否认性及可用性,会先透过乱数产生器产生出一组乱数,然后以此乱数产生金钥或区块链种子来进行加密与解密。
然而,目前乱数产生器产生乱数的方式,所产生的乱数的乱度较低,容易被攻击者破解,进而威胁加密信息的安全性。
发明内容
本发明实施例提供一种应用于区块链的乱数产生方法、装置及乱数产生器,以克服目前区块链中产生乱数的方式所产生的乱数乱度较低的技术问题。
第一方面,本发明实施例提供一种应用于区块链的乱数产生方法,基于乱数产生器,所述乱数产生器包括储存组件与被动组件,所述方法包括:
获取基于所述储存组件生成的第一乱数种子;
获取基于所述被动组件生成的第二乱数种子;
混合所述第一乱数种子与所述第二乱数种子,得到第三乱数种子;
对所述第三乱数种子进行加密处理,得到目标乱数。
在一种可行的设计中,所述获取基于所述储存组件生成的第一乱数种子,包括:
采集所述储存组件在运行过程中的运行参数;
基于所述运行参数,生成所述第一乱数种子。
在一种可行的设计中,所述运行参数包括所述储存组件的存储区域参数、表更新参数、闪存块页参数、电流参数、坏块表格参数中的一项或多项。
在一种可行的设计中,所述被动组件包括振荡电路,所述获取基于所述被动组件生成的第二乱数种子,包括:
采集所述振荡电路在运行过程中产生的振荡信号;
基于所述振荡信号,生成所述第二乱数种子。
在一种可行的设计中,所述混合所述第一乱数种子与所述第二乱数种子,得到第三乱数种子,包括:
混合所述第一乱数种子与所述第二乱数种子,并对混合后的乱数种子进行加扰,得到所述第三乱数种子。
在一种可行的设计中,所述对所述第三乱数种子进行加密处理,得到目标乱数,包括:
调用预设的哈希加密算法对所述第三乱数种子进行加密处理,得到所述目标乱数。
第二方面,本发明实施例提供一种应用于区块链的乱数产生装置,基于乱数产生器,所述乱数产生器包括储存组件与被动组件,所述装置包括:
第一获取模块,用于获取基于所述储存组件生成的第一乱数种子;
第二获取模块,用于获取基于所述被动组件生成的第二乱数种子;
混合模块,用于混合所述第一乱数种子与所述第二乱数种子,得到第三乱数种子;
加密模块,用于对所述第三乱数种子进行加密处理,得到目标乱数。
在一种可行的设计中,所述第一获取模块,包括:
第一采集模块,用于采集所述储存组件在运行过程中的运行参数;
第一生成模块,用于基于所述运行参数,生成所述第一乱数种子。
在一种可行的设计中,所述运行参数包括所述储存组件的存储区域参数、表更新参数、闪存块页参数、电流参数、坏块表格参数中的一项或多项。
在一种可行的设计中,所述被动组件包括振荡电路,所述第二获取模块,包括:
第二采集模块,用于采集所述振荡电路在运行过程中产生的振荡信号;
第二生成模块,用于基于所述振荡信号,生成所述第二乱数种子。
在一种可行的设计中,所述混合模块用于:
混合所述第一乱数种子与所述第二乱数种子,并对混合后的乱数种子进行加扰,得到所述第三乱数种子。
在一种可行的设计中,所述加密模块,用于:
调用预设的哈希加密算法对所述第三乱数种子进行加密处理,得到所述目标乱数。
第三方面,本发明实施例提供一种应用于区块链的乱数产生器,包括:储存组件、被动组件与至少一个处理器和存储器;
所述存储器存储计算机执行指令;
所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如第一方面所提供的应用于区块链的乱数产生方法。
第四方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如第一方面所提供的应用于区块链的乱数产生方法。
本发明实施例所提供的应用于区块链的乱数产生方法、装置及乱数产生器,乱数产生器包括储存组件与被动组件,通过获取基于储存组件生成的第一乱数种子,以及基于被动组件生成的第二乱数种子,然后混合第一乱数种子与第二乱数种子,得到第三乱数种子,并对第三乱数种子进行加密处理后,即可得到目标乱数。本发明实施例中,由于储存组件与被动组件所产生的两种乱数种子本身就具较高的随机性,在将这两种乱数种子混合后,所生成的第三乱数种子便会具有更高的随机性,因此能够有效保证利用第三乱数种子生成的目标乱数具有较高的乱度,且不可预测,有助于提升区块链的保密性与安全性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中提供的应用于区块链的乱数生成方法的流程示意图一;
图2为本发明实施例中提供的一种储存组件的架构示意图;
图3为本发明实施例中提供的一种振荡电路的电路结构示意图一;
图4为本发明实施例中提供的一种振荡电路的电路结构示意图二;
图5为本发明实施例中提供的应用于区块链的乱数生成方法的流程示意图二;
图6为本发明实施例中提供的应用于区块链的乱数生成装置的模块示意图;
图7为本发明实施例中提供的一种应用于区块链的乱数产生器的硬件结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
其中,本发明实施例中的术语“第一”、“第二”、“第三”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例,例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。
目前,区块链中产生乱数的方式所产生的乱数的乱度较低,容易被攻击者破解,进而威胁区块链中加密信息的安全性。为了解决该技术问题。本发明实施例提供了一种应用于区块链的乱数产生方法,该方法基于乱数产生器(也叫随机数产生器)实现。其中,该乱数产生器用来产生包含若干个数字或字符的乱数序列(也叫随机数序列)。具体的,该乱数产生器包括储存组件与被动组件,本发明通过获取基于储存组件生成的第一乱数种子,以及基于被动组件生成的第二乱数种子,然后混合第一乱数种子与第二乱数种子,得到第三乱数种子,并对第三乱数种子进行加密处理后,即可得到目标乱数。由于储存组件与被动组件所产生的两种乱数种子本身就具较高的随机性,在将这两种乱数种子混合后,所生成的第三乱数种子便会具有更高的随机性,因此能够有效保证利用第三乱数种子生成的目标乱数具有较高的乱度,且不可预测,有助于提升区块链的保密性与安全性。
其中,储存组件可以采用包括多个存储单元的存储器,例如高速随机存取存储器存储器(Random Access Memory,简称RAM)、非易失性存储器(Non-volatile memory,简称NVM)、磁盘存储器等。另外,还可以为USB闪存盘(简称U盘)、移动硬盘、只读存储器、磁盘或光盘等。被动组件又称为无源组件,可以由电阻、电容及电感等元件组成。其自身不消耗电能,只需输入信号,不需要外加电源就能正常工作。
参照图1,图1为本发明实施例提供的应用于区块链的乱数生成方法的流程示意图一。本发明实施例中,上述应用于区块链的乱数产生方法包括:
步骤S101,获取基于所述储存组件生成的第一乱数种子。
其中,储存组件作为一种记忆部件,只要开始运行,其内部的运行参数就会发生变化,例如随着储存组件老化造成的数据储存单元改变、不同数据的读取与写入、不同区块的数据储存位置改变等原因,其内部的运行参数都会发生变化。因此,通过采集上述不断发生变化的运行参数,即可得到高质量、高随机性的乱数种子。
即在本发明实施例中,可以将储存组件作为一个乱数种子生成装置,来生成第一乱数种子。
步骤S102,获取基于所述被动组件生成的第二乱数种子。
其中,上述被动组件作为一种由物理器件组成的组件,其输出信号只与输入信号与自身的物理特性有关,不受计算机程序的控制,具有较强的抗干扰能力。通常是通过重复采样统计学随机的“噪声”讯号,来生成一系列的随机数种子,整个过程在理论上是完全不可预测的。
即在本发明实施例中,可以将被动组件作为一个乱数种子生成装置,来生成第二乱数种子。
应当理解的是,上述步骤S101与S102之间并无先后顺序关系,在本发明可行的实施例中,可以先获取基于储存组件生成的第一乱数种子,再获取基于被动组件生成的第二乱数种子;也可以先获取基于被动组件生成的第二乱数种子,再获取基于储存组件生成的第一乱数种子;还可以同时获取基于储存组件生成的第一乱数种子与基于被动组件生成的第二乱数种子。
步骤S103,混合所述第一乱数种子与所述第二乱数种子,得到第三乱数种子。
可以理解的是,由于第一乱数种子与所述第二乱数种子本身就具有较高的随机性,因此在将第一乱数种子与第二乱数种子混合之后,所得到的第三乱数种子在理论上要比第一乱数种子与第二乱数种子具有更高的随机性。
本发明实施例中,将第一乱数种子与第二乱数种子混合在一起后,还可以对混合后的乱数种子进行扰乱,从而进一步提升第三乱数种子的随机性。
步骤S104,对所述第三乱数种子进行加密处理,得到目标乱数。
其中,可以将上述第三乱数种子作为乱数生成器的初始数值,然后利用特定的算法进行加密运算,即可产生高乱度的乱数序列。
其中,上述乱度用于表示乱数的混乱程度,乱度越高,表示乱数的随机性越好。
本发明实施例所提供的应用于区块链的乱数产生方法,基于乱数产生器,该乱数产生器包括储存组件与被动组件,通过获取基于储存组件生成的第一乱数种子,以及基于被动组件生成的第二乱数种子,然后混合第一乱数种子与第二乱数种子,得到第三乱数种子,并对第三乱数种子进行加密处理后,即可得到目标乱数。由于储存组件与被动组件所产生的两种乱数种子本身就具较高的随机性,在将这两种乱数种子混合后,所生成的第三乱数种子便会具有更高的随机性,因此能够有效保证利用第三乱数种子生成的目标乱数具有较高的乱度,且不可预测,有助于提升区块链的保密性与安全性。
在本发明一种可行的实施例中,上述步骤S101中获取基于储存组件生成的第一乱数种子,包括:
采集储存组件在运行过程中的运行参数,基于该运行参数,生成第一乱数种子。
其中,上述运行参数包括储存组件的存储区域参数、表更新参数、闪存块页参数、电流参数、坏块表格参数中的一项或多项。
具体的,参照图2,图2为本发明实施例中提供的一种储存组件的架构示意图。在本发明实施例中,上述储存组件包括逻辑层(Logic layer)、软件中间层(Flash translationlayer,简称FTL)以及物理层(Physical layer)。
采集储存组件在读写数据过程中产生的运行参数包括获取逻辑层中的逻辑定位信息,如获取数据的写入位置、“Unit”(自定义的逻辑单位)和相对应的表更新参数等;以及获取FTL层中的物理定位信息,如实际写下的闪存块页(Flash Block Page)的数据、电气特性(包括电流值、电压值等)、表深度(table depth)、存储深度(Current Depth)、块结束计数(Block end count)、坏块表格参数等。
在本发明一种可行的实施例中,被动组件包括振荡电路,上述步骤S102中获取基于被动组件生成的第二乱数种子,包括:
采集振荡电路在运行过程中产生的振荡信号,基于该振荡信号,生成第二乱数种子。
其中,上述振荡电路可以采用RLC振荡电路。
在本发明一种可行的实施例中,上述振荡电路可以由多个金属氧化物半导体场效应管(metal oxide semiconductor,简称mos管)、电阻等器件经过串联和/或并联组成。
为了更好的理解本发明实施例,参照图3与图4,图3为本发明实施例中提供的一种振荡电路的电路结构示意图一,图4为本发明实施例中提供的一种振荡电路的电路结构示意图二。
在图3中,R表示电阻,Iin表示输入信号,Iout表示输出的振荡信号,I表示电流。
在图4中,Iin表示输入信号,Iout表示输出的振荡信号,IQ表示电流,Vb表示基准电压,CLK表示时钟信号,C表示电容。
在本发明另一种可行的实施例中,步骤S103中混合第一乱数种子与第二乱数种子,得到第三乱数种子,具体包括:
混合第一乱数种子与第二乱数种子,并对混合后的乱数种子进行加扰,得到第三乱数种子。
其中,加扰可以理解为采用扰码或伪随机数,与上述混合后的乱数种子进行特定的运算,从而得到上述第三乱数种子。
例如,本实施例中,可以将加法运算用于加扰运算。在基于加法运算的加扰运算中,先确定一组扰码,然后在该扰码与上述混合后的乱数种子之间进行加法运算,生成的新乱数种子即可确定为上述第三乱数种子。
本发明实施例中,通过混合上述第一乱数种子与第二乱数种子,并进行加扰操作,可以进一步改变第一乱数种子与第二乱数种子的随机性,从而使得到的第三乱数种子能够具有更高的随机性,且不可预测,有助于提升区块链的保密性与安全性。
在本发明一种可行的实施例中,上述步骤S104中对第三乱数种子进行加密处理,得到目标乱数,包括:
调用预设的哈希加密算法对第三乱数种子进行加密处理,得到目标乱数。
其中,哈希加密算法可以把任意长度的第三乱数种子作为输入,通过散列算法将该输入变换成固定长度的输出,重新建立一个哈希值作为上述目标乱数。其中,哈希值通常用一个短的随机字母和数字组成的字符串来代表。
本发明实施例中,通过调用预设的哈希加密算法对第三乱数种子进行加密的优势在于:不需要对第三乱数种子提前进行加密,在没有碰撞或溢位的情况下,只需一次读取数据即可找到需要的数据,且搜寻速度与数据量的大小无关;另外,还具有保密性高、节省存储空间等优势。
基于上述实施例描述的内容,为了更好的理解本发明实施例中提供的应用于区块链的乱数产生方法,参照图5,图5为本发明实施例中提供的应用于区块链的乱数生成方法的流程示意图二。
在本发明实施例中,先采集储存装置中的运行参数,基于该运行参数生成第一乱数种子,以及采集被动元件中的振荡信号,并基于该振荡信号生成第二乱数种子,然后将第一乱数种子与第二乱数种子混合为第三乱数种子后,对第三乱数种子进行加密处理,即可得到目标乱数。由于储存组件与被动组件所产生的两种乱数种子本身就具较高的随机性,在将这两种乱数种子混合后,所生成的第三乱数种子会具有更高的随机性,因此能够有效保证利用第三乱数种子生成的目标乱数具有较高的乱度。
进一步的,本发明实施例中还提供一种应用于区块链的乱数产生装置,该装置基于乱数产生器,该乱数产生器包括储存组件与被动组件。参照图6,图6为本发明实施例中提供的乱数生成装置的模块示意图。本发明实施例中提供的乱数产生装置60包括:
第一获取模块601,用于获取基于储存组件生成的第一乱数种子。
第二获取模块602,用于获取基于被动组件生成的第二乱数种子。
混合模块603,用于混合第一乱数种子与第二乱数种子,得到第三乱数种子。
加密模块604,用于对第三乱数种子进行加密处理,得到目标乱数。
本发明实施例提供的应用于区块链的乱数产生装置60,其所记载的技术方案与上述图1中所描述的应用于区块链的乱数产生方法中的技术方案,其实现原理和技术效果类似,具体可以参见前述实施例中的相关描述,本实施例此处不再赘述。
本发明实施例所提供的应用于区块链的乱数产生装置60,由于储存组件与被动组件所产生的两种乱数种子本身就具较高的随机性,在将这两种乱数种子混合后,所生成的第三乱数种子便会具有更高的随机性,因此能够有效保证利用第三乱数种子生成的目标乱数具有较高的乱度,且不可预测,有助于提升区块链的保密性与安全性。
在本发明一种可行的实施例中,第一获取模块601包括:
第一采集模块,用于采集储存组件在运行过程中的运行参数,和第一生成模块,用于基于上述运行参数,生成第一乱数种子。
在本发明一种可行的实施例中,上述运行参数包括储存组件的存储区域参数、表更新参数、闪存块页参数、电流参数、坏块表格参数中的一项或多项。
在本发明一种可行的实施例中,上述被动组件包括振荡电路,第二获取模块602包括:
第二采集模块,用于采集振荡电路在运行过程中产生的振荡信号,和第二生成模块,用于基于上述振荡信号,生成第二乱数种子。
在本发明一种可行的实施例中,混合模块603用于:
混合第一乱数种子与第二乱数种子,并对混合后的乱数种子进行加扰,得到第三乱数种子。
在本发明一种可行的实施例中,加密模块604用于:
调用预设的哈希加密算法对第三乱数种子进行加密处理,得到目标乱数。
本发明实施例所提供的应用于区块链的乱数产生装置60,先采集储存装置中的运行参数,基于该运行参数生成第一乱数种子,以及采集被动元件中的振荡信号,并基于该振荡信号生成第二乱数种子,然后将第一乱数种子与第二乱数种子混合为第三乱数种子后,对第三乱数种子进行加密处理,即可得到目标乱数。由于储存组件与被动组件所产生的两种乱数种子本身就具较高的随机性,在将这两种乱数种子混合后,所生成的第三乱数种子会具有更高的随机性,因此能够有效保证利用第三乱数种子生成的目标乱数具有较高的乱度。
进一步的,本发明实施例中还提供一种应用于区块链的乱数产生器。参照图7,图7为本发明实施例中提供的一种应用于区块链的乱数产生器的硬件结构示意图。如图7所示,本实施例提供的应用于区块链的乱数产生器70包括储存组件701、被动组件702与至少一个处理器703和存储器704。
其中,储存组件701与被动组件702即为上述各实施例中所描述的储存组件与被动组件。
存储器704存储计算机执行指令;上述至少一个处理器703执行存储器704存储的计算机执行指令,使得上述至少一个处理器703执行如上述各实施例中所描述的应用于区块链的乱数产生方法,具体可以参见前述实施例中的相关描述,此处不再赘述。
可选地,存储器704既可以是独立的,也可以跟储存组件701或处理器703集成在一起。
当存储器602独立设置时,该乱数产生器70还包括总线705,用于连接储存组件701、被动组件702、处理器703和存储器704。
本发明实施例还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如上所述的应用于区块链的乱数产生方法。
在本发明所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。例如,以上所描述的设备实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个单元中。上述模块成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能模块的形式实现的集成的模块,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(英文:processor)执行本申请各个实施例所述方法的部分步骤。
应理解,上述处理器可以是中央处理单元(英文:Central Processing Unit,简称:CPU),还可以是其他通用处理器、数字信号处理器(英文:Digital Signal Processor,简称:DSP)、专用集成电路(英文:Application Specific Integrated Circuit,简称:ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合发明所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
存储器可能包含高速RAM存储器,也可能还包括非易失性存储NVM,例如至少一个磁盘存储器,还可以为U盘、移动硬盘、只读存储器、磁盘或光盘等。
总线可以是工业标准体系结构(Industry Standard Architecture,ISA)总线、外部设备互连(Peripheral Component,PCI)总线或扩展工业标准体系结构(ExtendedIndustry Standard Architecture,EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,本申请附图中的总线并不限定仅有一根总线或一种类型的总线。
上述存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。存储介质可以是通用或专用计算机能够存取的任何可用介质。
一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于专用集成电路(Application Specific Integrated Circuits,简称:ASIC)中。当然,处理器和存储介质也可以作为分立组件存在于电子设备或主控设备中。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (13)

1.一种应用于区块链的乱数产生方法,其特征在于,基于乱数产生器,所述乱数产生器包括储存组件与被动组件,所述方法包括:
获取基于所述储存组件生成的第一乱数种子;
获取基于所述被动组件生成的第二乱数种子;
混合所述第一乱数种子与所述第二乱数种子,得到第三乱数种子;
对所述第三乱数种子进行加密处理,得到目标乱数。
2.根据权利要求1所述的方法,其特征在于,所述获取基于所述储存组件生成的第一乱数种子,包括:
采集所述储存组件在运行过程中的运行参数;
基于所述运行参数,生成所述第一乱数种子。
3.根据权利要求2所述的方法,其特征在于,所述运行参数包括所述储存组件的存储区域参数、表更新参数、闪存块页参数、电流参数、坏块表格参数中的一项或多项。
4.根据权利要求1所述的方法,其特征在于,所述被动组件包括振荡电路,所述获取基于所述被动组件生成的第二乱数种子,包括:
采集所述振荡电路在运行过程中产生的振荡信号;
基于所述振荡信号,生成所述第二乱数种子。
5.根据权利要求1至4任意一项所述的方法,其特征在于,所述混合所述第一乱数种子与所述第二乱数种子,得到第三乱数种子,包括:
混合所述第一乱数种子与所述第二乱数种子,并对混合后的乱数种子进行加扰,得到所述第三乱数种子。
6.根据权利要求5所述的方法,其特征在于,所述对所述第三乱数种子进行加密处理,得到目标乱数,包括:
调用预设的哈希加密算法对所述第三乱数种子进行加密处理,得到所述目标乱数。
7.一种应用于区块链的乱数产生装置,其特征在于,基于乱数产生器,所述乱数产生器包括储存组件与被动组件,所述装置包括:
第一获取模块,用于获取基于所述储存组件生成的第一乱数种子;
第二获取模块,用于获取基于所述被动组件生成的第二乱数种子;
混合模块,用于混合所述第一乱数种子与所述第二乱数种子,得到第三乱数种子;
加密模块,用于对所述第三乱数种子进行加密处理,得到目标乱数。
8.根据权利要求7所述的装置,其特征在于,所述第一获取模块,包括:
第一采集模块,用于采集所述储存组件在运行过程中的运行参数;
第一生成模块,用于基于所述运行参数,生成所述第一乱数种子。
9.根据权利要求8所述的装置,其特征在于,所述运行参数包括所述储存组件的存储区域参数、表更新参数、闪存块页参数、电流参数、坏块表格参数中的一项或多项。
10.根据权利要求7所述的装置,其特征在于,所述被动组件包括振荡电路,所述第二获取模块,包括:
第二采集模块,用于采集所述振荡电路在运行过程中产生的振荡信号;
第二生成模块,用于基于所述振荡信号,生成所述第二乱数种子。
11.根据权利要求1至4任意一项所述的装置,其特征在于,所述混合模块用于:
混合所述第一乱数种子与所述第二乱数种子,并对混合后的乱数种子进行加扰,得到所述第三乱数种子。
12.根据权利要求11所述的装置,其特征在于,所述加密模块,用于:
调用预设的哈希加密算法对所述第三乱数种子进行加密处理,得到所述目标乱数。
13.一种应用于区块链的乱数产生器,其特征在于,包括:储存组件、被动组件与至少一个处理器和存储器;
所述存储器存储计算机执行指令;
所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如权利要求1至6任一项所述的应用于区块链的乱数产生方法。
CN202010931353.9A 2020-09-07 应用于区块链的乱数产生方法、装置及乱数产生器 Active CN112115508B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010931353.9A CN112115508B (zh) 2020-09-07 应用于区块链的乱数产生方法、装置及乱数产生器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010931353.9A CN112115508B (zh) 2020-09-07 应用于区块链的乱数产生方法、装置及乱数产生器

Publications (2)

Publication Number Publication Date
CN112115508A true CN112115508A (zh) 2020-12-22
CN112115508B CN112115508B (zh) 2024-07-12

Family

ID=

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116301721A (zh) * 2022-12-27 2023-06-23 北京海泰方圆科技股份有限公司 一种随机数生成方法、装置、电子设备及介质

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103309825A (zh) * 2012-02-22 2013-09-18 慧荣科技股份有限公司 存取快闪存储器的方法与快闪存储器控制器
CN103399726A (zh) * 2013-07-15 2013-11-20 哈尔滨工程大学 一种流水线化的组合式伪随机数发生器
US20140344321A1 (en) * 2013-05-15 2014-11-20 Elliptic Technologies Inc. Automatic control system and method for a true random number generator
CN105005462A (zh) * 2015-09-06 2015-10-28 电子科技大学 一种混合式随机数发生器及其产生随机数的方法
US20180176013A1 (en) * 2015-07-14 2018-06-21 Fmr Llc Firmware Extension For Secure Cryptocurrency Key Backup, Restore, and Transaction Signing Platform Apparatuses, Methods and Systems
CN108958707A (zh) * 2017-05-22 2018-12-07 旺宏电子股份有限公司 具有puf及随机数产生器的电路及其操作方法
TWM574715U (zh) * 2018-11-20 2019-02-21 樹德科技大學 真亂數產生器裝置
EP3503463A1 (en) * 2017-12-22 2019-06-26 The Boeing Company Systems and methods implementing countermeasures to phase tracking attacks on ring oscillator based entropy sources
CN110113058A (zh) * 2019-06-04 2019-08-09 翰顺联电子科技(南京)有限公司 编译码方法、装置、设备及计算机可读存储介质
CN110249299A (zh) * 2017-12-13 2019-09-17 深圳市汇顶科技股份有限公司 生成随机数的方法、芯片和电子设备
CN110321103A (zh) * 2019-06-27 2019-10-11 北京信息科技大学 一种基于物理设备的真随机数生成方法及设备
TWI690847B (zh) * 2018-11-20 2020-04-11 樹德科技大學 真亂數產生器裝置及其真亂數產生之方法
CN111193446A (zh) * 2020-01-13 2020-05-22 珠海格力电器股份有限公司 调制参数的生成方法及装置、逆变器

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103309825A (zh) * 2012-02-22 2013-09-18 慧荣科技股份有限公司 存取快闪存储器的方法与快闪存储器控制器
US20140344321A1 (en) * 2013-05-15 2014-11-20 Elliptic Technologies Inc. Automatic control system and method for a true random number generator
CN103399726A (zh) * 2013-07-15 2013-11-20 哈尔滨工程大学 一种流水线化的组合式伪随机数发生器
US20180176013A1 (en) * 2015-07-14 2018-06-21 Fmr Llc Firmware Extension For Secure Cryptocurrency Key Backup, Restore, and Transaction Signing Platform Apparatuses, Methods and Systems
CN105005462A (zh) * 2015-09-06 2015-10-28 电子科技大学 一种混合式随机数发生器及其产生随机数的方法
CN108958707A (zh) * 2017-05-22 2018-12-07 旺宏电子股份有限公司 具有puf及随机数产生器的电路及其操作方法
CN110249299A (zh) * 2017-12-13 2019-09-17 深圳市汇顶科技股份有限公司 生成随机数的方法、芯片和电子设备
EP3503463A1 (en) * 2017-12-22 2019-06-26 The Boeing Company Systems and methods implementing countermeasures to phase tracking attacks on ring oscillator based entropy sources
TWM574715U (zh) * 2018-11-20 2019-02-21 樹德科技大學 真亂數產生器裝置
TWI690847B (zh) * 2018-11-20 2020-04-11 樹德科技大學 真亂數產生器裝置及其真亂數產生之方法
CN110113058A (zh) * 2019-06-04 2019-08-09 翰顺联电子科技(南京)有限公司 编译码方法、装置、设备及计算机可读存储介质
CN110321103A (zh) * 2019-06-27 2019-10-11 北京信息科技大学 一种基于物理设备的真随机数生成方法及设备
CN111193446A (zh) * 2020-01-13 2020-05-22 珠海格力电器股份有限公司 调制参数的生成方法及装置、逆变器

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
沈春来: "随机数发生器的研究及其设计", 《中国优秀硕士学位论文全文数据库 信息科技辑》, no. 07, 15 July 2012 (2012-07-15), pages 138 - 27 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116301721A (zh) * 2022-12-27 2023-06-23 北京海泰方圆科技股份有限公司 一种随机数生成方法、装置、电子设备及介质
CN116301721B (zh) * 2022-12-27 2023-09-19 北京海泰方圆科技股份有限公司 一种随机数生成方法、装置、电子设备及介质

Similar Documents

Publication Publication Date Title
US9736142B2 (en) Tokenization using multiple reversible transformations
US20080025506A1 (en) Memory access control apparatus and method, and communication apparatus
US9727755B2 (en) Processing information
WO2006033531A1 (en) Random keycode security
US20080098231A1 (en) Data transmission method using an acknowledgement code comprising hidden authentication bits
CN102693385A (zh) 基于sd可信计算模块的嵌入式终端及实现方法
US7599492B1 (en) Fast cryptographic key recovery system and method
CN111966328A (zh) 使用多个熵源的随机数生成器和用于生成随机数的方法
JP2017195595A (ja) 暗号化/復号装置及びその電力解析保護方法
Van Herrewege et al. Software only, extremely compact, Keccak-based secure PRNG on ARM Cortex-M
CN101243389A (zh) 用于rsa密钥产生的电路装置和方法
US20100031088A1 (en) Method and system for processing information
CN110515591B (zh) 基于区块链的随机数生成方法及装置
CN112115508A (zh) 应用于区块链的乱数产生方法、装置及乱数产生器
CN112115508B (zh) 应用于区块链的乱数产生方法、装置及乱数产生器
US8347113B2 (en) System and method for encrypting an electronic file in a mobile electronic device
JP4863279B2 (ja) メモリシステム及びメモリアクセス方法
CN114826560B (zh) 一种轻量级分组密码cref实现方法及系统
JP2000242470A (ja) 乱数生成装置および方法および記録媒体
Kömürcü et al. Enhanced challenge‐response set and secure usage scenarios for ordering‐based ring oscillator‐physical unclonable functions
CN114499465A (zh) 散列算法及电路、电子设备
Zelenoritskaya et al. Possible modifications of RC4 stream cipher
EP4154135A1 (en) Method to secure computer code
CN109471809B (zh) 一种芯片的flash加密保护方法、装置、flash控制器及芯片
JP2006025366A (ja) 暗号化装置及び半導体集積回路

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant