An embodiment of the invention provides a data filtering method and an apparatus based on a block chain, wherein the method comprises: receiving a data commitment submitted by a plurality of data providers and dividing the commitment group into blocks with the first block number carried in the data commitment, and storing the commitment group into blocks with the first block number in the block chain, and receiving the data commitment The source random number to be submitted is stored in the block chain; the source random number is validated as a commitment group; if all the commitment values in the calculated commitment group correspond to those in the data commitment, the source random number in the commitment group is accepted as the source random number needed to calculate a random number. Number. The scheme of the embodiment of the present invention can prevent the source random number submitted by an individual data provider from being submitted after monitoring the source random number uploaded by other data providers, and there is the possibility of cheating, thus ensuring the randomness of the random number generated based on the source random number.
【技术实现步骤摘要】
基于区块链的数据筛选方法和装置
本申请涉及计算机
,尤其涉及一种基于区块链的数据筛选方法和装置。
技术介绍
传统的网络环境中,随机数都由各自的硬件环境生成,但是在区块链环境中,各个节点、账户之间缺少信任机制,因此均不可能信任任意一个节点、账户提供的随机数的随机性。随机数本身是一种数据资源,在很多领域都有应用,例如,对于多个主体之间的抽签或者随机分配等机制中的应用。例如,机动车购买的摇号,比赛的分组的抽签、彩票等领域,这些都会使用到随机数。随机数最重要的特性在于要保证其产生的随机性,不能受到任何人的操控。如果某个节点提供的并不是随机数,而是在获得了一定信息的条件下,生成的有目的性的随机数,那么这个随机数就有可能影响到最终所应用事项的结果。比如,节点可以通过有限次的实验来生成对其有利结果的随机数,这样也是不公平的。
技术实现思路
本专利技术提供了一种基于区块链的数据筛选方法和装置,能够防止个别数据提供方所提交的源随机数是监测到其他数据提供方上传的源随机数之后提交的,存在作弊的可能,从而确保基于源随机数生成的随机数的随机性。为达到上述目的,本专利技术的实施例采用如下技术方案:第一方面,提供了一种基于区块链的数据筛选方法,包括:接收多个数据提供方提交的数据承诺,所述数据承诺中携带所述数据提供方欲提交的源随机数所对应的所述源随机数经不可逆算法计算得到的承诺值以及第一区块编号,所述第一区块编号用于所述数据提供方标识所述数据承诺欲被处理的区块;将各所述数据承诺按所述第一区块编号划分形成承诺组存储至区块链中的所述第一区块编号的区块中,且每个所述第一区块编号对应至少一个承 ...
【技术保护点】
1.一种基于区块链的数据筛选方法,其特征在于,包括:接收多个数据提供方提交的数据承诺,所述数据承诺中携带所述数据提供方欲提交的源随机数所对应的所述源随机数经不可逆算法计算得到的承诺值以及第一区块编号,所述第一区块编号用于所述数据提供方标识所述数据承诺欲被处理的区块;将各所述数据承诺按所述第一区块编号划分形成承诺组存储至区块链中的所述第一区块编号的区块中,且每个所述第一区块编号对应至少一个承诺组,每个承诺组中包括指定数目的数据承诺;接收所述多个数据提供方提交的所述数据承诺中欲提交的源随机数,并将所述源随机数存储至区块链中;以所述承诺组为单位,对各承诺组中的所述数据提供方提交的所述源随机数经所述不可逆算法进行承诺验证;如果承诺验证后确定:计算得到的所述承诺组中所有承诺值均与所述数据提供方提交的所述数据承诺中的承诺值对应相同,则接受该承诺组中所述数据提供方提交的源随机数,以作为计算一个所述随机数所需的所述源随机数。
【技术特征摘要】
1.一种基于区块链的数据筛选方法,其特征在于,包括:接收多个数据提供方提交的数据承诺,所述数据承诺中携带所述数据提供方欲提交的源随机数所对应的所述源随机数经不可逆算法计算得到的承诺值以及第一区块编号,所述第一区块编号用于所述数据提供方标识所述数据承诺欲被处理的区块;将各所述数据承诺按所述第一区块编号划分形成承诺组存储至区块链中的所述第一区块编号的区块中,且每个所述第一区块编号对应至少一个承诺组,每个承诺组中包括指定数目的数据承诺;接收所述多个数据提供方提交的所述数据承诺中欲提交的源随机数,并将所述源随机数存储至区块链中;以所述承诺组为单位,对各承诺组中的所述数据提供方提交的所述源随机数经所述不可逆算法进行承诺验证;如果承诺验证后确定:计算得到的所述承诺组中所有承诺值均与所述数据提供方提交的所述数据承诺中的承诺值对应相同,则接受该承诺组中所述数据提供方提交的源随机数,以作为计算一个所述随机数所需的所述源随机数。2.根据权利要求1所述的方法,其特征在于,所述将各所述数据承诺按所述第一区块编号划分形成承诺组存储至区块链中的所述第一区块编号的区块中之前还包括:判断接收的所述数据承诺中携带的所述第一区块编号是否与当前区块链中正在生成的区块的第二区块编号相同;如果相同,则执行所述将各所述数据承诺按所述第一区块编号划分形成承诺组存储至区块链中的所述第一区块编号的区块中的步骤。3.根据权利要求1所述的方法,其特征在于,所述将各所述数据承诺按所述第一区块编号划分形成承诺组存储至区块链中的所述第一区块编号的区块中之后还包括:向所述数据提供方反馈其提交的所述数据承诺所在承诺组的承诺组索引号;所述在接收所述多个数据提供方提交的所述数据承诺中欲提交的源随机数的过程中,同步接收所述数据提供方提交的所述源随机数所在承诺组的承诺组索引号,并将所述源随机数与相应的承诺组索引号一并关联存储至区块链中。4.根据权利要求3所述的方法,其特征在于,所述以所述承诺组为单位,对各承诺组中的所述数据提供方提交的源随机数经所述不可逆算法进行承诺验证包括:根据所述承诺组索引号,从所述区块链中查找各所述承诺组对应的所述源随机数,并经所述不可逆算法进行承诺验证。5.根据权利要求4所述的方法,其特征在于,所述根据所述承诺组索引号,从所述区块链中查找到各承诺组对应的所述源随机数之后还包括:如果所述承诺组对应包含的至少一个所述源随机数所在的区块编号大于且超出所述承诺组所...
【专利技术属性】
技术研发人员:宋承根,谭智勇,赵微,
申请(专利权)人:北京欧链科技有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。