CN110780848B - 基于区块链分布式随机过程的双随机生成方法和监管*** - Google Patents

基于区块链分布式随机过程的双随机生成方法和监管*** Download PDF

Info

Publication number
CN110780848B
CN110780848B CN201910983905.8A CN201910983905A CN110780848B CN 110780848 B CN110780848 B CN 110780848B CN 201910983905 A CN201910983905 A CN 201910983905A CN 110780848 B CN110780848 B CN 110780848B
Authority
CN
China
Prior art keywords
random
block
code
blockchain
private
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.)
Active
Application number
CN201910983905.8A
Other languages
English (en)
Other versions
CN110780848A (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.)
Shanghai Chaindo Technology Co ltd
Original Assignee
Shanghai Chaindo Technology 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 Shanghai Chaindo Technology Co ltd filed Critical Shanghai Chaindo Technology Co ltd
Priority to CN201910983905.8A priority Critical patent/CN110780848B/zh
Publication of CN110780848A publication Critical patent/CN110780848A/zh
Application granted granted Critical
Publication of CN110780848B publication Critical patent/CN110780848B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • G06F7/588Random number generators, i.e. based on natural stochastic processes
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)

Abstract

本发明提供了一种基于区块链分布式随机过程的双随机生成方法和监管***,包括随机过程参与者在本地生成第一随机私***,对第一随机私***进行一次hash处理得到hash值;将生成的hash值提交至区块链;将所有随机过程参与者的第一随机私***异或,得到联合随机公共码;随机过程参与者在本地生成第二随机私***,对第二随机私***以及联合随机公共码进行异或,得到合并值M;将合并值M进行hash处理后提交至区块链;将所有随机过程参与者参与者的第二随机私***异或,得到联合随机码;将两次随机过程得到的联合随机码根据区块链上预置的智能合约生成最终的随机码。本发明能得到可信的随机结果,保证全程可证明得以实现。

Description

基于区块链分布式随机过程的双随机生成方法和监管***
技术领域
本发明涉及计算机技术领域,具体地,涉及一种基于区块链分布式随机过程的双随机生成方法和监管***。
背景技术
在生活中,经常可以接触到各种由随机产生的决策结果,比如抽检、抽查、抽奖、抽车牌号、抽手机号、抽房号等等。这些结果的产生是否是真正的随机,是否有人为的控制,很难判断。
现有的可称为真随机的生成方式大多是以基础物理量如热力学噪声、光电效应和量子现象等,通过将小信号放大再经过随机算法获取真随机。此种方式得到的真随机依赖于此硬件***的标准可信,但生成的结果也是无法证明的,用户只能相信此***及其硬件厂家的可信、可靠。
近年来,随着国家推行“双随机、一公开”的抽查检测制度,随机的生成将影响到众多相关者的利益得失问题。如何生成随机、证明随机的公平公正,变成了所有人所关注的技术焦点。目前传统检测***的双随机生成方式主要是使用***的随机函数进行生成,此种方式受制于单机和独立***的可信性。以往通过中间机构进行担保,但并没有公开的证明方式,不能保证***是否受到人为的干扰。
计算机***中的随机函数,线性同余发生器
Figure BDA0002236102820000011
The desired sequence of random numbers<Xn>is then obtained by setting
Xn+1=(aXn+c)mod m,n≥0.  (2)
其中m、a、c为算法的初始固定值,通过***函数初始化一个X0,可以得到一个随机序列,如果一开始的随机种子X0已知,那么后续所有的随机数都可以被推测。使用***随机时,无法保证随机种子的安全性和保密性,则生成的随机数无法保证其可信性。所以,现有的***生成方式,有赖于设备的安全可靠性,有赖于操作人员的规范性。并且,生成的随机数据无法得到有效的证明。
为了提高检测***的可信度,一种公开、可证明的随机过程变得极为重要。一些专利文献如CN 104699451A公开了一种真随机数生成方法,将采用并行执行机制的干扰程序***软件程序,干扰程序被激活后与伪随机数生成程序重叠运行生成真随机数,干扰程序退出运行。通过灵活选取***点和***时机,利用纯软件机制生成真随机数,生成的真随机数具有随机性、不可预测性、良好的正态分布性,但仍未能完全解决上述的缺陷。
发明内容
针对现有技术中的缺陷,本发明的目的是提供一种基于区块链分布式随机过程的双随机生成方法和监管***。
根据本发明提供的一种基于区块链分布式随机过程的双随机生成方法,包括:
第一随机私***生成步骤:随机过程参与者在本地生成第一随机私***,对第一随机私***进行一次hash处理得到hash值;
第一提交步骤:将生成的hash值提交至区块链;
联合随机公共码生成步骤:将所有随机过程参与者的第一随机私***异或,得到联合随机公共码;
第二随机私***生成步骤:随机过程参与者在本地生成第二随机私***,对第二随机私***以及联合随机公共码进行异或,得到合并值M;
第二提交步骤:将合并值M进行hash处理后提交至区块链;
联合随机码生成步骤:将所有随机过程参与者参与者的第二随机私***异或,得到联合随机码;
双随机生成步骤:将两次随机过程得到的联合随机码根据区块链上预置的智能合约生成最终的随机码。
优选地,所述区块链包括:
出块节点:进行区块数据的打包生成;
同步节点:同步检验已经打包生成的区块数据;
智能合约:固化在区块链上的、可被运行并验证的程序代码;
出块委员会:实际控制所述出块节点的用户群。
优选地,出块节点根据权限指数进行轮询出块,每个出块节点的权限指数根据当前块号的变化而变化;
权限指数为Q,出块委员会人数为n,块号为m,出块节点在委员会中的序号为x,则:
q=(m mod n)-x
如果q<0,则q=n+q;
Q=n-q。
优选地,同步节点根据Q值大小对出块时间域进行排序,在同一区块下,时间段的排序根据Q值大小进行排序;
每个出块节点在出块后的(n/3)个区块之内失去出块权利,(n/3)个区块之后恢复出块权利。
优选地,两次随机过程的发起者、参与者均不同。
根据本发明提供的一种基于区块链分布式随机过程的双随机生成监管***,包括:
第一随机私***生成模块:随机过程参与者在本地生成第一随机私***,对第一随机私***进行一次hash处理得到hash值;
第一提交模块:将生成的hash值提交至区块链;
联合随机公共码生成模块:将所有随机过程参与者的第一随机私***异或,得到联合随机公共码;
第二随机私***生成模块:随机过程参与者在本地生成第二随机私***,对第二随机私***以及联合随机公共码进行异或,得到合并值M;
第二提交模块:将合并值M进行hash处理后提交至区块链;
联合随机码生成模块:将所有随机过程参与者的第二随机私***异或,得到联合随机码;
双随机生成模块:将两次随机过程得到的联合随机码根据区块链上预置的智能合约生成最终的随机码。
优选地,所述区块链包括:
出块节点:进行区块数据的打包生成;
同步节点:同步检验已经打包生成的区块数据;
智能合约:固化在区块链上的、可被运行并验证的程序代码;
出块委员会:实际控制所述出块节点的用户群。
优选地,出块节点根据权限指数进行轮询出块,每个出块节点的权限指数根据当前块号的变化而变化;
权限指数为Q,出块委员会人数为n,块号为m,出块节点在委员会中的序号为x,则:
q=(m mod n)-x
如果q<0,则q=n+q;
Q=n-q。
优选地,同步节点根据Q值大小对出块时间域进行排序,在同一区块下,时间段的排序根据Q值大小进行排序;
每个出块节点在出块后的(n/3)个区块之内失去出块权利,(n/3)个区块之后恢复出块权利。
优选地,两次随机过程的发起者、参与者均不同。
与现有技术相比,本发明具有如下的有益效果:
本发明包含随机生成过程的原理、算法和可证明性,以及基于本方法的双随机检测***的原理和可证明性。本方法在底层通讯、随机数计算和生成的过程中使用区块链技术来保证安全、公平,从而得到可信的随机结果。采用本方法的双随机检测***进一步基于分布式验证技术,保证每个生成过程采用的随机因素的客观证明性。通过对所有随机因素的组合保证了生成方法、生成结果的随机性,以及过程和结果的区块链记录和公开,从而保证全程可证明得以实现。本发明中区块链的特性保证了计算过程、计算因子和计算结果的可回溯证明并且不可更改,这样生成的结果唯一、可信,也同时保证了本发明实现的双随机检验***的执行、决策和结果具有高度的随机安全性。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显。
图1为本发明的整体流程图。
图2为双随机生成流程图。
图3为区块与数据状态的更迭原理图。
图4为链的出块过程示意图。
图5为一次随机数的随机生成过程示意图。
图6为完整随机过程图。
图7为区块链***结构图。
图8为双随机的用户操作流程示意图。
图9为双随机的***流程。
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。
如图1和图2所示,本发明提供的一种基于区块链分布式随机过程的双随机生成方法,包括:
第一随机私***生成步骤:随机过程参与者在本地生成第一随机私***,对第一随机私***进行一次hash处理得到hash值;
第一提交步骤:将生成的hash值提交至区块链;
联合随机公共码生成步骤:将所有随机过程参与者的第一随机私***异或,得到联合随机公共码;
第二随机私***生成步骤:随机过程参与者在本地生成第二随机私***,对第二随机私***以及联合随机公共码进行异或,得到合并值M;
第二提交步骤:将合并值M进行hash处理后提交至区块链;
联合随机码生成步骤:将所有随机过程参与者的第二随机私***异或,得到联合随机码;
双随机生成步骤:将两次随机过程得到的联合随机码根据区块链上预置的智能合约生成最终的随机码。两次随机过程的发起者、参与者均不同。
在上述一种基于区块链分布式随机过程的双随机生成方法的基础上,本发明还提供一种基于区块链分布式随机过程的双随机生成监管***,包括:
第一随机私***生成模块:随机过程参与者在本地生成第一随机私***,对第一随机私***进行一次hash处理得到hash值;
第一提交模块:将生成的hash值提交至区块链;
联合随机公共码生成模块:将所有随机过程参与者的第一随机私***异或,得到联合随机公共码;
第二随机私***生成模块:随机过程参与者在本地生成第二随机私***,对第二随机私***以及联合随机公共码进行异或,得到合并值M;
第二提交模块:将合并值M进行hash处理后提交至区块链;
联合随机码生成模块:将所有随机过程参与者参与者的第二随机私***异或,得到联合随机码;
双随机生成模块:将两次随机过程得到的联合随机码根据区块链上预置的智能合约生成最终的随机码。
实施例:
在这个区块链***中,有以下元素组成:
·出块节点,负责区块数据的打包生成
·同步节点,只能同步检验已经打包生成的区块数据
·智能合约,固化在链上可被运行并检验的程序代码
·交易,由链上用户向全网络广播的执行指令,该数据被其用户签名认证
·P2P网络,保证节点与节点之间通讯的去中心化网络
·共识算法,保证节点数据的一致性及安全的出块策略
·出块委员会,实际控制出块节点的用户群
·随机过程参与者,参与随机的生成过程
区块与数据状态的更迭如图3所示
链的出块过程如图4所示
委员会的节点根据权限指数进行轮询出块,每个节点的权限指数根据当前块号的变化而变化。
出块节点根据权限指数进行轮询出块,每个出块节点的权限指数根据当前块号的变化而变化;
权限指数为Q,出块委员会人数为n,块号为m,出块节点在委员会中的序号为x,则:
q=(m mod n)-x
如果q<0,则q=n+q;
Q=n-q。
所有其它同步节点根据Q值的大小,对出块时间域进行排序,在同一区块下,时间段的排序按照Q值的大小进行排序。如果所有节点都按照正确的时间顺序,则区块数据不会产生冲突。
每个节点在出块后的(n/3)之内将失去出块权力,(n/3)个区块之后将恢复权力。这样恶意节点数如果未达到(n/3+1)时,无法分叉整条链。
如果有恶意节点抢占出块时间域,则会产生过长的时间等待并且链的权重下降,后续节点将替代恶意节点进行出块,而恶意节点则失去了本应该有的出块权力。
普通节点用户的权力
普通节点对区块链有着同步验证的权力,每(n*2/3)个区块是一个确认周期(T),超过此周期区块的重写将被普通节点拒绝。如果主链确实重写了超过周期的数据,则代表出块节点中至少已经有(n/3+1)以上的节点为恶意节点,同步节点无法再同步数据,此条链不再可信,可以发起对此联盟链不可信的检举。检举的方式可以在链上和线下同时进行。
链上的检举可以打断链的运行,需要初始化新的委员会并设定启动区块位置才能继续运行。
验证逻辑
Sig(n)=ECC(Blk(hash(n-1),hash(n),…))
Ecrec(Sig(n))∈Committee[m0,m1,m2,……]
Time(n-1)<Time(n)<now
BlkDiff(now)>0
BlkDiff(n)>BlkDiff(n-1)
Delay(n)=K*Distance(m)
Time(n)>Time(n-1)+Delay(n)
一次随机数的随机生成过程如图5所示
所有的随机委员会可选人员必须为联盟链中具有相关资格的注册账号,这些账号可以是通过相关机构或组织信誉担保获得。
在第二次联合随机过程最终揭秘之前退出者,将在联盟链内根据影响度做出一定量的惩罚,如禁用账号一段时间的功能等。
在第二次联合随机过程最终揭秘过程中拒绝揭秘的,可以认为其为恶意干扰,应当对其进行处罚并追究其相关责任。s
Hash码具有均有的分布特性,其碰撞概率为:
Figure BDA0002236102820000081
n为尝试碰撞的次数,d为取值范围数量
为了确保极难的碰撞概率,d的取值较大,可根据现有的科技水平设定该值。本发明的建议取值是:
随机委员会参与者的选择,可以根据本次随机生成的利益相关方设定参与人员。人员确定后,可由发起方开始随机码的生成
详细过程如图6所示
操作中可以设置操作超时周期为t,超时未操作的可以认为主动退出本次流程。
使用最终的随机码通过转换可得到最终的结果,转换的方式必须在链上为确定统一的方式,并且在发起随机过程前就已被所有委员会成员确认。
结果的生成方式是通过预置的智能合约生成,保证了结果的一致统一。
生成与验证逻辑
rh=randH=sha(rand)私有hash(保密)
H(0)=sha(rh)
H(1)=sha(h(0))
H(2)=ecc(H(1))
Hpriv=H(1)
Hpub=Hpriv(1)⊕Hpriv(2)⊕Hpriv(3)…
kh=BHash任务开始时的区块hash
H(3)=sha(rh+kh)
H(4)=ecc(H(3))
H(5)=sha(Hpub+H(3))
H(5)为公***,可反向验证私***
通过公布的私***,计算生成随机数
Hret=rh(1)⊕rh(2)⊕rh(3)…
Rand1=fun(Hret)通过转换函数获取随机数
***架构实现如图7所示
服务层(分布式接入服务、托管服务、计算服务)
业务层(用户终端DAPP:参与者管理、随机任务管理、私钥管理)
***参与者的管理
***中的用户需要通过实名认证***获得***的准入条件,通过实名后将获得区块委员会内的多方签名认证生成多签证书,使用该证书即可获得***的使用准入。
私钥管理
私钥的管理分为授权托管管理和用户自备管理。
托管管理方式是将用户的账户私钥交由受信的托管服务节点管理,帮助用户维护账户的安全性,保证账户交易的稳定性。
用户自备管理是用户使用智能终端设备进行私钥的私有管理,私钥的安全由用户本人负责。
随机任务管理
智能终端通过读取链上信息,定时更新随机任务列表,通过任务的状态反馈当前的可操作状态。终端***可根据相关条件查看历史任务执行状况及随机过程的结果。
托管服务
对于需要保证随机过程中永久在线的用户,可以将随机任务的参与权托管至受信的托管节点。托管节点将根据用户设置的条件进行自动处理相关随机任务,用户上线时可关闭此功能。
分布式接入
用户在使用终端接入网络时,可通过P2P网络自由选择当前状况良好的分布式节点完成业务接入。当部分服务无法使用时,用户终端仍可实时的自动切换服务接入点,保证业务的正常运行不断开。
随机数计算
随机数计算式本***的主要功能业务,用户使用终端设备即可发起或参与随机的计算过程。
智能合约
智能合约由业务设计方将程序代码固化发布在链上的方式,具有可验证及不可变更性。
区块链API
区块链API为链上提供给分布式应用接入的去中心化接口,任何节点都提供了同样的接口。业务程序可建立在此基础之上进行相关设计。
算法可信验证
发布在链上的算法运算过程可以通过链的回溯进行计算验证,所欲节点都保存了同等状态和输入数据,通过执行运算过程即可完成结果的一致性验证。
作弊的检测
同步节点可以根据同步到的数据对原酸结果进行验证,当结果发生问题时,可以通过链上数据证明数据的真伪。节点的违法操作可以通过数据的冲突得到检测证明。
用户的管理
用户需要通过实名认证***获得***的准入条件,通过实名后将获得区块委员会内的多方签名认证生成多签证书,使用该证书即可获得***的使用准入。
节点的管理
节点的接入需要对应的接入许可管理,接入的许可信息将以链上投票的方式进行,通过委员会成员的投票完成节点的准入许可。新的节点在加入时需要提供自身的节点信息,多方认证后可进入许可网络。
共识机制
节点间的通讯采用共识协议完成数据运算的一致性,通过共识保障数据计算的可靠性、安全性和可用性。
分布式存储
链上的业务数据网络采用分布冗余存储的方式保证数据的可靠性,每个数据分片都有多个互相校验的分片在不同的网络节点中共同组成。网络中的任意节点数据的遗失都不会对整个网络造成影响,保证用户业务数据的即时可用。
数据加密
用户数据将采用分布式加密的方式进行存储,用户通过非对称加密的方式对数据的进行访问授权,保证了用户数据的隐私及安全。
区块链网络
区块链网络是一个P2P的分布式发散型网络,通过网络的点对点传输,可将信息渗透传输至不同的局域网络中,完成网络的桥接传输。
双随机的用户操作流程如图8所示
确认:需要所有参与者确认才能开启随机过程、参与者私有随机码用私钥产生提高随机性
双随机的***流程如图9所示
双随机的二随机结果(发起者、参与者不同)
对生成的结果,用户可以通过同步节点进行合法性检测,如果检测有问题可以发起举报。
本发明包含随机生成过程的原理、算法和可证明性,以及基于本方法的双随机检测***的原理和可证明性。本方法在底层通讯、随机数计算和生成的过程中使用区块链技术来保证安全、公平,从而得到可信的随机结果。采用本方法的双随机检测***进一步基于分布式验证技术,保证每个生成过程采用的随机因素的客观证明性。通过对所有随机因素的组合保证了生成方法、生成结果的随机性,以及过程和结果的区块链记录和公开,从而保证全程可证明得以实现。本发明中区块链的特性保证了计算过程、计算因子和计算结果的可回溯证明并且不可更改,这样生成的结果唯一、可信,也同时保证了本发明实现的双随机检验***的执行、决策和结果具有高度的随机安全性。
本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的***及其各个装置、模块、单元以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的***及其各个装置、模块、单元以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同功能。所以,本发明提供的***及其各项装置、模块、单元可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置、模块、单元也可以视为硬件部件内的结构;也可以将用于实现各种功能的装置、模块、单元视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。

Claims (10)

1.一种基于区块链分布式随机过程的双随机生成方法,其特征在于,包括:
第一随机私***生成步骤:随机过程参与者在本地生成第一随机私***,对第一随机私***进行一次hash处理得到hash值;
第一提交步骤:将生成的hash值提交至区块链;
第一联合随机码生成步骤:将所有随机过程参与者的第一随机私***异或,得到第一联合随机码;
第二随机私***生成步骤:随机过程参与者在本地生成第二随机私***,对第二随机私***以及联合随机公共码进行异或,得到合并值M;
第二提交步骤:将合并值M进行hash处理后提交至区块链;
第二联合随机码生成步骤:将所有随机过程参与者的第二随机私***异或,得到第二联合随机码;
双随机生成步骤:将两次随机过程得到的联合随机码根据区块链上预置的智能合约生成最终的随机码。
2.根据权利要求1所述的基于区块链分布式随机过程的双随机生成方法,其特征在于,所述区块链包括:
出块节点:进行区块数据的打包生成;
同步节点:同步检验已经打包生成的区块数据;
智能合约:固化在区块链上的、可被运行并验证的程序代码;
出块委员会:实际控制所述出块节点的用户群。
3.根据权利要求2所述的基于区块链分布式随机过程的双随机生成方法,其特征在于,出块节点根据权限指数进行轮询出块,每个出块节点的权限指数根据当前块号的变化而变化;
权限指数为Q,出块委员会人数为n,块号为m,出块节点在委员会中的序号为x,则:
q=(m mod n)-x
如果q<0,则q=n+q;
Q=n-q。
4.根据权利要求3所述的基于区块链分布式随机过程的双随机生成方法,其特征在于,同步节点根据Q值大小对出块时间域进行排序,在同一区块下,时间段的排序根据Q值大小进行排序;
每个出块节点在出块后的n/3个区块之内失去出块权利,n/3个区块之后恢复出块权利。
5.根据权利要求1所述的基于区块链分布式随机过程的双随机生成方法,其特征在于,两次随机过程的发起者、参与者均不同。
6.一种基于区块链分布式随机过程的双随机生成监管***,其特征在于,包括:
第一随机私***生成模块:随机过程参与者在本地生成第一随机私***,对第一随机私***进行一次hash处理得到hash值;
第一提交模块:将生成的hash值提交至区块链;
第一联合随机码生成模块:将所有随机过程参与者的第一随机私***异或,得到第一联合随机码;
第二随机私***生成模块:随机过程参与者在本地生成第二随机私***,对第二随机私***以及联合随机公共码进行异或,得到合并值M;
第二提交模块:将合并值M进行hash处理后提交至区块链;
第二联合随机码生成模块:将所有随机过程参与者的第二随机私***异或,得到第二联合随机码;
双随机生成模块:将两次随机过程得到的联合随机码根据区块链上预置的智能合约生成最终的随机码。
7.根据权利要求6所述的基于区块链分布式随机过程的双随机生成监管***,其特征在于,所述区块链包括:
出块节点:进行区块数据的打包生成;
同步节点:同步检验已经打包生成的区块数据;
智能合约:固化在区块链上的、可被运行并验证的程序代码;
出块委员会:实际控制所述出块节点的用户群。
8.根据权利要求7所述的基于区块链分布式随机过程的双随机生成监管***,其特征在于,出块节点根据权限指数进行轮询出块,每个出块节点的权限指数根据当前块号的变化而变化;
权限指数为Q,出块委员会人数为n,块号为m,出块节点在委员会中的序号为x,则:
q=(m mod n)-x
如果q<0,则q=n+q;
Q=n-q。
9.根据权利要求8所述的基于区块链分布式随机过程的双随机生成监管***,其特征在于,同步节点根据Q值大小对出块时间域进行排序,在同一区块下,时间段的排序根据Q值大小进行排序;
每个出块节点在出块后的n/3个区块之内失去出块权利,n/3个区块之后恢复出块权利。
10.根据权利要求6所述的基于区块链分布式随机过程的双随机生成监管***,其特征在于,两次随机过程的发起者、参与者均不同。
CN201910983905.8A 2019-10-16 2019-10-16 基于区块链分布式随机过程的双随机生成方法和监管*** Active CN110780848B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910983905.8A CN110780848B (zh) 2019-10-16 2019-10-16 基于区块链分布式随机过程的双随机生成方法和监管***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910983905.8A CN110780848B (zh) 2019-10-16 2019-10-16 基于区块链分布式随机过程的双随机生成方法和监管***

Publications (2)

Publication Number Publication Date
CN110780848A CN110780848A (zh) 2020-02-11
CN110780848B true CN110780848B (zh) 2023-05-12

Family

ID=69385718

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910983905.8A Active CN110780848B (zh) 2019-10-16 2019-10-16 基于区块链分布式随机过程的双随机生成方法和监管***

Country Status (1)

Country Link
CN (1) CN110780848B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113761586A (zh) * 2020-06-28 2021-12-07 北京同邦卓益科技有限公司 基于区块链的物品随机抽检的方法和装置
CN112070613B (zh) * 2020-11-11 2021-02-26 树根互联技术有限公司 交易数据存储方法、装置、区块链***和存储介质
WO2024087347A1 (zh) * 2022-10-24 2024-05-02 杭州舜时科技有限公司 一种区块链生成方法、***及相应数据存储方法和***

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103870525A (zh) * 2012-12-13 2014-06-18 株式会社日立解决方案 安全搜索处理***和安全搜索处理方法
CN104699451A (zh) * 2015-03-30 2015-06-10 河海大学 真随机数生成方法
US10102265B1 (en) * 2017-04-12 2018-10-16 Vijay K. Madisetti Method and system for tuning blockchain scalability for fast and low-cost payment and transaction processing
CN109558112A (zh) * 2018-11-14 2019-04-02 杭州复杂美科技有限公司 随机数生成方法、防作弊区块链***、设备和存储介质
CN109583892A (zh) * 2018-11-21 2019-04-05 安徽高山科技有限公司 一种区块链中的随机数选取方法
CN109615422A (zh) * 2018-11-29 2019-04-12 哈希未来(北京)科技有限公司 基于区块链的竞抽方法、***以及存储介质
CN109617679A (zh) * 2018-11-29 2019-04-12 哈希未来(北京)科技有限公司 生成、获取以及提供随机数的方法、***以及存储介质
CN109683851A (zh) * 2018-11-16 2019-04-26 深圳市先河***技术有限公司 随机数的生成方法、随机数生成装置、计算机存储介质
CN109831509A (zh) * 2019-02-18 2019-05-31 深圳市优学链科技有限公司 一种用于实现相同权重随机出块的共识算法
CN109847365A (zh) * 2019-01-24 2019-06-07 湖南天河国云科技有限公司 一种面向区块链应用的防作弊方法及***
CN109981263A (zh) * 2019-02-28 2019-07-05 复旦大学 一种基于cp-abe的分布式可验证随机数生成方法
CN110162996A (zh) * 2019-04-23 2019-08-23 上海链度科技有限公司 基于区块链的投票***、方法和投票终端

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103870525A (zh) * 2012-12-13 2014-06-18 株式会社日立解决方案 安全搜索处理***和安全搜索处理方法
CN104699451A (zh) * 2015-03-30 2015-06-10 河海大学 真随机数生成方法
US10102265B1 (en) * 2017-04-12 2018-10-16 Vijay K. Madisetti Method and system for tuning blockchain scalability for fast and low-cost payment and transaction processing
CN109558112A (zh) * 2018-11-14 2019-04-02 杭州复杂美科技有限公司 随机数生成方法、防作弊区块链***、设备和存储介质
CN109683851A (zh) * 2018-11-16 2019-04-26 深圳市先河***技术有限公司 随机数的生成方法、随机数生成装置、计算机存储介质
CN109583892A (zh) * 2018-11-21 2019-04-05 安徽高山科技有限公司 一种区块链中的随机数选取方法
CN109615422A (zh) * 2018-11-29 2019-04-12 哈希未来(北京)科技有限公司 基于区块链的竞抽方法、***以及存储介质
CN109617679A (zh) * 2018-11-29 2019-04-12 哈希未来(北京)科技有限公司 生成、获取以及提供随机数的方法、***以及存储介质
CN109847365A (zh) * 2019-01-24 2019-06-07 湖南天河国云科技有限公司 一种面向区块链应用的防作弊方法及***
CN109831509A (zh) * 2019-02-18 2019-05-31 深圳市优学链科技有限公司 一种用于实现相同权重随机出块的共识算法
CN109981263A (zh) * 2019-02-28 2019-07-05 复旦大学 一种基于cp-abe的分布式可验证随机数生成方法
CN110162996A (zh) * 2019-04-23 2019-08-23 上海链度科技有限公司 基于区块链的投票***、方法和投票终端

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
Su Yunling.An Overview of Incremental Hash Function Based on Pair Block Chaining.《 2010 International Forum on Information Technology and Applications》.2010,全文. *
佟铮.基于区块链的公开可验证随机数生成方法研究.《中国优秀硕士学位论文全文数据库 (信息科技辑)》.2019,全文. *
刘懿中等.区块链共识机制研究综述.《密码学报》.2019,第06卷(第06期),全文. *
张亮 ; 刘百祥 ; 张如意 ; 江斌鑫 ; 刘一江 ; .区块链技术综述.《计算机工程》.2019,(05),全文. *
颜春辉 ; 游林 ; .基于区块链的安全投票***设计与实现.《通信技术》.2018,(08),全文. *

Also Published As

Publication number Publication date
CN110780848A (zh) 2020-02-11

Similar Documents

Publication Publication Date Title
Hanifatunnisa et al. Blockchain based e-voting recording system design
Borge et al. Proof-of-personhood: Redemocratizing permissionless cryptocurrencies
CN109523683B (zh) 一种基于区块链技术的不记名电子投票方法
CN110780848B (zh) 基于区块链分布式随机过程的双随机生成方法和监管***
CN111464518B (zh) 一种跨链通信数据的发送、验证方法及装置
CN110351067B (zh) 针对主从多链的区块链共识方法
AU2017260013A1 (en) Distributed transaction propagation and verification system
CN111311414A (zh) 一种基于一致性哈希算法的区块链多方共识方法
CN111988290B (zh) 用户余额隐私保护和授权监管下的交易删除方法及***
Cachin et al. Blockchain, cryptography, and consensus
KR102187294B1 (ko) 블록체인 네트워크를 기반으로 한 비밀 전자 투표 시스템 및 방법
CN110784320A (zh) 分布式密钥实现方法、***及用户身份管理方法、***
Andrey et al. Review of existing consensus algorithms blockchain
CN111709749A (zh) 一种具有条件隐私保护的可追踪区块链交易***
CN109840767A (zh) 基于区块链技术的多方公平合约存证方法和***
CN113691361A (zh) 基于同态加密和零知识证明的联盟链隐私保护方法及***
CN113837758A (zh) 一种区块链***的共识方法及装置
CN110868286A (zh) 一种基于区块链智能合约生成随机数的方法
CA3077246A1 (en) Message-credentialed blockchains
Qu et al. A electronic voting protocol based on blockchain and homomorphic signcryption
Zhang et al. An efficient and robust committee structure for sharding blockchain
Corman et al. A Secure Group Agreement (SGA) protocol for peer-to-peer applications
Alp et al. Rethinking general-purpose decentralized computing
Norman et al. Analysis of probabilistic contract signing
Wang et al. Consensus algorithm based on verifiable quantum random numbers

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
GR01 Patent grant