使用中本聪共识实现文件复制证明方法、设备及存储介质

文档序号:142117 发布日期:2021-10-22 浏览:11次 >En<

阅读说明:本技术 使用中本聪共识实现文件复制证明方法、设备及存储介质 (Method, equipment and storage medium for realizing file copy certification by using smart consensus ) 是由 刘真 于 2020-04-14 设计创作,主要内容包括:本发明提供了一种使用中本聪共识实现文件复制证明方法。所述使用中本聪共识实现文件复制证明方法,包括根据工作量编码单位长度L、数据原文m以及复制者的节点标识id,使用中本聪共识方法生成数据原文m的复制编码r;将复制编码r以及复制编码r的摘要信息提交到第一存储区保存,将数据原文m的摘要信息提交到第二存储区保存。本发明提供的使用中本聪共识实现文件复制证明方法将数据文件原文内容转化为每个复制存储节点的复制编码形式加以存储,能够让复制者诚实并且真实的存储文件,有效防止了复制者的欺诈攻击,而且工作量证明和文件编码可以同时进行。可以被用在使用中本聪共识文件存储、以及无信任基础的多方合作数据保存验证和协作等领域。(The invention provides a method for realizing file replication certification by using smart consensus. The method for realizing file replication certification by using the smart consensus comprises the steps of generating a replication code r of a data original text m by using the smart consensus method according to the unit length L of a workload code, the data original text m and a node identifier id of a replicator; and submitting the copy code r and the summary information of the copy code r to a first storage area for storage, and submitting the summary information of the data original text m to a second storage area for storage. The method for realizing file replication by using the smart consensus converts the original content of the data file into the replication code form of each replication storage node for storage, can ensure that a replicator can honestly and truly store the file, effectively prevents the replicator from cheating attack, and can simultaneously carry out workload certification and file coding. The method can be used in the fields of using the smart consensus file storage, and multi-party cooperative data storage verification and cooperation without a trust foundation.)

使用中本聪共识实现文件复制证明方法、设备及存储介质

技术领域

本发明涉及区块链技术领域,尤其涉及一种使用中本聪共识实现文件复制证明方法、设备及存储介质。

背景技术

2008年,化名为“中本聪”(Satoshi Nakamoto)的学者,发表了《比特币:一种点对点电子现金系统》的论文,奠定了区块链技术的基础。区块链是由区块链网络中所有节点共同参与维护的去中心化分布式数据库系统,它是由一系列基于密码学方法产生的数据块组成,每个数据块即为区块链中的一个区块。根据产生时间的先后顺序,区块被有序地链接在一起,形成一个数据链条,被形象地称为区块链。

区块链由其特别的区块和交易产生、验证协议,具有不可更改,不可伪造、完全可追溯的安全特性。因此,使用中本聪共识实现文件存储技术在近年来得到迅猛发展。这其中,Filecoin成为这一领域的标杆产品,Filecoin旨在成为一个分散的存储网络,允许用户在公开市场上买卖未使用的存储。Filecoin的核心技术在于复制证明和时空证明,另外还需要零知识证明参与,对参与的硬件设备要求较高。尤其是复制证明,需要解决的一个核心问题在于,一个不被完全信任的复制者131(存储节点),在没有保存持有者110(存储需求节点)指定的数据文件的情况下,声称参与保存了指定的数据文件的复制拷贝,然后所述复制者131通过几种手段来欺骗验证者(验证节点)140,使得验证者相信所述复制者131真实的保存了指定的数据文件。这些欺骗方法大致分为几类:

1.外包,当所述验证者140试图提问所述复制者131,需要所述复制者131提供指定的数据文件的全部、部分内容或内容的哈希等。此时,所述复制者131本身并没有存储所述指定的数据文件内容,但是通过其他复制者132保存的文件内容,成功完成了欺骗。

2.生成,当所述指定的数据文件的内容本身有一定的规律,例如,一个文件中存储的内容全部是空格字符,或者内容是一个等差数列。这类文件交给所述复制者131,所述复制者131可以不存储,而在所述验证者140提问的时候,使用特定的算法或程序即时生成,从而达到减少使用存储空间的目的。

其中,复制者131、132通过文件存储系统网络120与所述持有者110、验证者140建立连接,所述文件存储系统(InterPlanetary File System,又称星际文件系统)是一个互联网的底层协议,类似HTTP协议。

为了避免上述问题的产生,以使得复制者真正存储了指定的数据文件,现有技术中Filecoin提出的复制证明方案,通常采用编码慢,解码快的核心思想,让复制者更愿意保存编码后的复制副本,而不是编码之前的原文。其中一种复制证明方案为链式(chain),其基本原理都是将原始数据分块成若干个小数据块,不同的数据块之间引入相互依赖关系,以此类推;在此基础上,进一步改进的复制证明方案还有stacked DRG以及zigzag DRG、VDF等方案,后者进一步压缩了解码验证的复杂度并提高了随机性。比如zigzag DRG,首先将原始数据依次分成一个个小数据块,每个小数据将被计算出一个散列值,小数据本身也将散列值作为加密种子来进行编解码,这些小数据的散列值按照DRG(Depth Robust Graph)建立连接关系。因此,这样在编码过程就无法并行,从而速度变慢,使得编码过程不至于太慢,同时减少复制者缓存部分数据的作弊行为。

但是,这些复制方法验证过程需要零知识证明参与,对参与的硬件设备要求较高。因此,为了更好地防止复制者的作弊欺诈行为,从而很好地抵御开放系统中外包攻击、生成攻击以及女巫攻击等常见的攻击。有必要提出一种新的文件复制证明方法,以保证无信任基础的多方合作数据保存和验证。

需要说明的是,公开于该发明

背景技术

部分的信息仅仅旨在加深对本发明一般

背景技术

的理解,而不应当被视为承认或以任何形式暗示该信息构成已为本领域技术人员所公知的现有技术。

发明内容

为了解决现有技术中的不足,本发明的目的是提供一种使用中本聪共识实现文件复制证明方法设备及存储介质。

为了提供一种使用中本聪共识实现文件复制证明方法,本发明通过以下技术方案予以实现:一种使用中本聪共识实现文件复制证明方法,包括,

S100:根据工作量编码单位长度L、数据原文m以及复制者的节点标识id,使用中本聪共识方法生成所述数据原文m的复制编码r;

S200:将所述复制编码r以及所述复制编码r的摘要信息提交到所述复制者对应的第一存储区中保存;

S300:将所述数据原文m的摘要信息提交到第二存储区中保存。

可选地,还包括为所述数据原文m分配若干个具有不同节点标识id的复制者,将所述数据原文m分别分配给若干个所述复制者,每一个所述复制者重复执行步骤S100、S200。

可选地,步骤S100中,所述根据工作量编码单位长度L、数据原文m以及复制者的节点标识id,使用中本聪共识方法生成所述数据原文m的复制编码r包括,

S110:将所述数据原文m分割成若干个长度为L的原文子数据块mi,m=m1||m2||…||mn

S120:使用中本聪共识方法生成每一个所述原文子数据块mi的复制编码ri,所述复制编码r=r1||r2||…||rn,其中,1≤i≤n。

可选地,步骤S120中,所述使用中本聪共识方法生成每一个所述原文子数据块mi的复制编码ri包括,

迭代尝试所述复制编码ri的值,直到哈希值hi中指定位置的长度为L的数据与所述原文子数据块mi相同,其中,哈希值hi为所述复制编码ri与复制证明参数的哈希值,所述复制证明参数包括所述复制者的节点标识id以及所述原文子数据块mi在所述数据原文m中的位置。

可选地,还包括验证复制证明方法,所述验证复制证明方法包括以下步骤,

S410:使用挑战数据向复制者发起挑战,其中,所述挑战数据包括,若干个原文片段对应的随机位置和随机长度组成的数据组合;

S420:根据所述挑战数据对应的复制片段,所述复制者计算得到第一哈希,返回给验证者;

S430:验证者获取复制内容,并根据所述挑战数据,所述验证者计算得到第二哈希,比较所述第一哈希和所述第二哈希是否相同,若相同,验证复制证明通过,否则,验证复制证明失败。

可选地,步骤S410中,所述挑战数据还包括随机数据,所述随机数据作为所述数据组合的前缀或与所述数据组合间隔设置。

可选地,步骤S420中,所述返回给验证者包括所述复制者将所述第一哈希写入区块链。

本发明还提供了一种使用中本聪共识实现文件复制证明装置,并通过以下技术方案实现,一种使用中本聪共识实现文件复制证明装置,包括复制证明模块,第一写入模块和第二写入模块,其中,所述复制证明模块,被配置成用于根据工作量编码单位长度L、数据原文m以及复制者的节点标识id,使用中本聪共识方法生成所述数据原文m的复制编码r;

所述第一写入模块,被配置成用于将所述复制编码r以及所述复制编码r的摘要信息提交到所述复制者对应的第一存储区中保存;

所述第二写入模块,被配置成用于将所述数据原文m的摘要信息提交到第二存储区中保存。

可选地,还包括验证者模块,所述验证者模块被配置成用于向所述复制者发起挑战,验证复制证明。

本发明还提供了一种使用中本聪共识实现文件复制证明设备,所述使用中本聪共识实现文件复制证明设备包括处理器以及存储器,所述处理器适于实现各指令,所述存储器适于存储多条指令,所述指令适于由处理器加载并执行上述任一项所述使用中本聪共识实现文件复制证明方法。

本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机可执行的指令,当所述计算机可执行的指令被执行时实现上述任一项所述的使用中本聪共识实现文件复制证明方法。

与现有技术相比,本发明提供的使用中本聪共识实现文件复制证明方法具有以下有益效果:

本发明提供的一种使用中本聪共识实现文件复制证明方法根据工作量编码单位长度L、数据原文m以及复制者的节点标识id,使用中本聪共识方法生成所述数据原文m的复制编码r。将在比特币中广泛使用的中本聪共识算法(工作量证明/Proof of Work/PoW)转化为一种有实际应用价值的编码算法,得这些算力(计算力,设备的计算能力)被使用在复制证明编码上,从而将现有技术中消耗中本聪共识算法中的现有技术中大量的硬件设备投资以及能源,以获取比特币等回报的被广泛认为是一种能源资源浪费的算力,转化为一种有实际应用价值的编码算法应用,有效提高了能源和资源的利用率。

本发明采用简单的哈希算法来进行可选难度的编码,适用但不限于各种哈希函数sha1/sha256/md5/blake2b等。

再进一步地,本发明提供的一种使用中本聪共识实现文件复制证明方法将数据文件原文内容转化为每个复制存储节点独一无二的复制编码形式加以存储,能够有效的抵御复制者的欺诈攻击,有效降低了区块链中提供存储服务的复制者通过外包攻击,生成攻击,女巫攻击等方法,欺骗验证者的行为,以减少成本获取利益的现象发生。使得验证者相信复制者能够诚实并且真实的存储文件。

更进一步地,本发明提出的一种使用中本聪共识实现文件复制证明方法,如果复制者丢失相关的结果,比如复制编码后的结果,重新从原文生成复制,成本较高,所以复制者会倾向于诚实的保存复制编码后的内容,而不是作弊欺诈。

又进一步地,本发明提出的一种使用中本聪共识实现文件复制证明方法可以被用在基于区块链文件存储、以及无信任基础的多方合作数据保存验证和协作等领域。

再进一步地,本发明所提供的一种使用中本聪共识实现文件复制证明方法,还包括验证复制证明方法,由于在步骤S410中,仅需向复制者发送若干原文片段的位置和原文片段的长度,而无需发送原文片段本身,在步骤S420中,仅需发送复制片段的哈希,通信量小;一次可以验证若干原文片段的复制甚至所有数据原文的复制,挑战组合多,可以覆盖更多的任意位置的原文片段的验证,效率更高。

又进一步地,所述挑战数据还包括随机数据,所述随机数据作为所述数据组合的前缀或与所述数据组合间隔设置,向复制者发起挑战,所述随机数据和所述数据组合避免了复制者仅仅保存随机选取的若干个原文片段复制的行为,在通信量增加有限的情况下,能够较好地避免复制者的作弊行为。应当理解的是,以上的一般描述和后文的细节描述仅是实例性和解释性的,并不能限制本发明。

附图说明

图1为现有技术中区块链组成结构示意图;

图2是本发明实施例提供的一种使用中本聪共识实现文件复制证明方法的流程示意图;

图3是图2中步骤S100的流程示意图;

图4是本发明实施例提供的一种使用中本聪共识实现文件复制证明装置的结构示意图;

图5是本发明实施例提供的一种使用中本聪共识实现文件复制证明设备的结构示意图;

其中,附图标记说明如下:

110-持有者,120-文件存储系统,131、132-复制者,140-验证者;

210-复制证明模块,220-第一写入模块,230-第二写入模块,240-验证者模块;

310-处理器,320-存储器,330-多媒体组件,340-I输入/输出接口,350-通信组件。

具体实施方式

为使本发明的目的、优点和特征更加清楚,以下结合附图对本发明提出的使用中本聪共识实现文件复制证明方法设备及存储介质作进一步详细说明。以下结合附图对本发明的具体实施方式进行详细说明。

应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明,并不用于限制本发明。

需要说明的是,本文的说明书和权利要求书以及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必理解为特定的顺序或先后次序。

显然地,本文所述的方法包括一系列步骤,且本文所呈现的这些步骤的顺序并非必须是可执行这些步骤的唯一顺序,且一些所述的步骤可被省略和/或一些本文未描述的其他步骤可被添加到该方法。

值得进一步强调的是,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明实施例提供的一种使用中本聪共识实现文件复制证明方法,如附图2所示,该方法包括以下步骤:

S100:根据工作量编码单位长度L、数据原文m以及复制者的节点标识id,使用中本聪共识方法生成所述数据原文m的复制编码r。

S200:将所述复制编码r以及所述复制编码r的摘要信息提交到第一存储区中保存,其中,所述第一存储区为所述复制者对应的区块链节点。较佳地,在其中一种实施方式中,所述复制编码r的摘要信息包括所述复制编码r的哈希。

S300:将所述数据原文m的摘要信息提交到第二存储区中保存。具体地,所述数据原文m的摘要信息包括所述数据原文m的哈希。特别地,本文中的摘要信息应理解为对源数据的映射变换,包括但不限于哈希运算的结果,也可以是其他方式获得的原文的摘要(索引、提取等),为了避免重复,下文不再赘述。

作为优选,在其中一种实施方式中,所述使用中本聪共识实现文件复制证明方法,还包括为所述数据原文m分配若干个具有不同节点标识id的复制者。在其中一种实施方式中,还包括将所述数据原文m分别分配给若干个所述复制者,每一个所述复制者分别重复执行步骤S100、S200,即可得到若干个数据原文m不同的复制编码r。比如,在其中一种实施方式中,分配三个复制者为所述数据原文m提供存储服务,三个所述复制者各自有节点标识id1、id2和id3,其中,所述节点标识id1、id2和id3为公钥,仅仅作为复制者的节点标识,用于将复制者与其他复制者相区分,不作为非对称加密/签名使用。这样,所述数据原文m将被分配给节点标识id1、节点标识id2和节点标识id3的三个复制者,每个所述复制者将分别保存各自的所述复制编码r以及所述复制编码r的摘要信息,并提交到各自相应的第一存储区中保存。进一步地,在其中一种实施方式中,所述复制者是区块链网络中的资源提供者,既可以是区块链的节点,也可以是区块链的矿工,所述第一存储区域可以位于区块链上。所述第二存储区可以是区块链的节点,也可以是其他存储介质。其中,所述区块链网络基于P2P(Peer to Peer,对等网络)网络,每个参与交易和区块复制(存储)、验证、转发的P2P网络节点都是一个区块链网络中的节点,根据其大致的功能可以分为复制节点、验证节点。显然地,该实施方式中三个所述复制者仅用于帮助理解本发明,并不构成对本发明的任何限制,也不是本发明的限制。

具体地,在其中一种实施方式中,如附图3所示,步骤S100中,所述根据工作量编码单位长度L、数据原文m以及复制者的节点标识id,使用中本聪共识方法生成所述数据原文m的复制编码r,包括以下步骤,

S110:将所述数据原文m分割成若干个长度为L的原文子数据块,m=m1||m2||…||mn

S120:使用中本聪共识方法生成每一个所述原文子数据块mi的复制编码ri,所述复制编码r=r1||r2||…||rn,其中,1≤i≤n。

具体地,在其中一种实施方式中,较佳地,所述数据原文m使用二进制表示,所述原文子数据块mi也用二进制表示。所述工作量编码单位长度L决定复制的难度,其值为L比特,所述工作量编码单位长度L是一个正整数,决定了所述复制者在生成复制时所需要的计算量,所述工作量编码单位长度L越大,其复制难度也越大。本发明通过中本聪共识,工作量证明的方法,对于每一个所述原文子数据块mi,迭代尝试所述复制编码ri的值,直到哈希值hi中指定位置的长度为L的数据与所述原文子数据块mi相同,其中,哈希值hi为所述复制编码ri与复制证明参数的哈希值,得到每一个所述原文子数据块mi的复制编码ri后,即生成所述数据原文m的复制编码r。在本实施例中,对于所述复制证明参数包括所述复制者的节点标识id和所述原文子数据块mi在所述数据原文m中的位置。显然地,所述复制证明参数可以根据实际情况调整。作为优选,在其他的实施方式中,所述复制证明参数包括所述复制者的节点标识id以及编码nonce,nonce可以为数字,本发明对此不做限定。具体地,对于每一个原文子数据块mi,使用所述节点标识id和nonce作为哈希函数的输入求哈希值hi,即hi=H(id+nonce),尝试迭代nonce(比如每次尝试时nonce加1),直到哈希值hi中指定位置的长度为L的数据与所述原文子数据块mi相同,即mi=H(id+nonce)[-L:],停止迭代nonce,将此时的nonce作为复制编码ri,得到原文子数据块mi的所述复制编码ri。由于mi=H(id+ri)[-L:],依此类推,若复制者保存了所述复制编码r,则可以根据复制编码r,得到所述数据原文m。更优的,加入位置数据H(id+i+ri)能够避免复制者建立一个庞大的反向哈希映射表,来加速复制证明伪造。特别地,在使用中本聪共识进行工作量证明的过程当中,可以同时进行复制编码。其基本原理如下,工作量证明需要设定一个难度D,通过迭代nonce(每次加1)直到哈希的输出值小于难度D。在尝试找到小于难度D这个目标的过程当中,可以利用哈希值的输出的一部分(比如最低L位)进行编码。一旦工作量证明nonce的哈希的指定位置的长度为L比特数据等于mi,则ri=nonce。如此,工作量证明(nonce不断加1,寻找小于难度D的哈希输出)和复制编码就可以同时进行。由于其他复制者只有自己的复制编码或原文内容,这些复制编码后的内容其他复制者不会保存,由于哈希函数具有单向性,不可逆,而从原文计算复制后的内容耗时较长,所以所述复制者的复制内容只应该由复制者本身保存。从而有效地抵御了第三方的外包攻击等和欺骗验证者的行为发生。

本发明提供的一种使用中本聪共识实现文件复制证明方法采用了简单的哈希算法来进行可选难度的编码,适用于各种哈希函数sha1/sha256/md5/blake2b等;进一步地,本发明将在比特币中广泛使用的中本聪共识算法(工作量证明/Proof of Work/PoW)转化为一种有实际应用价值的编码算法,使得这些算力被使用在复制证明编码上,作为一种有用的编码计算被使用。现有技术中大量的硬件设备投资以及能源,消耗在中本聪共识算法上,以获取比特币等回报。这一做法被广泛认为是一种能源资源浪费;再进一步地,在基于区块链文件系统中,节点并不是完全可信的。区块链中提供存储服务的复制者可以通过外包攻击,生成攻击,女巫攻击等方法,欺骗验证者,以减少成本获取利益。为了让复制者能够诚实并且真实的存储文件,本发明提供的一种使用中本聪共识实现文件复制证明方法将数据文件原文内容转化为每个复制存储节点独一无二的复制编码形式加以存储,能够有效的抵御复制者的欺诈攻击;更进一步地,本发明提出的一种使用中本聪共识实现文件复制证明方法,如果复制者丢失了复制编码后的结果,重新从原文生成复制,成本较高,使得复制者诚实的保存复制编码后的内容,而不是作弊欺诈;又进一步地,本发明提出的一种使用中本聪共识实现文件复制证明方法可以被用在基于区块链的文件存储、以及无信任基础的多方合作数据保存验证和协作等领域。

进一步地,当所述数据原文m的所述复制编码r被所述复制者生成以后,验证者可以向复制者随机提问,要求提供所述数据原文m指定位置的复制编码后的内容。若所述复制者能够提供相应的复制编码后的内容,则复制证明验证通过;否则,则复制证明验证失败。

在其中一种实施方式中,提供了一种验证复制证明的方法,验证者向复制者发起挑战,输入对应的索引信息和随机选定的原文片段,获取所述复制者返回的所述原文片段对应的复制片段,所述验证者对所述复制片段解码,得到所述原文片段对应的解码复制片段,之后,所述验证者比对所述原文片段和所述解码复制片段是否一致,若一致,则复制证明验证通过,说明复制者是可信的;否者,复制证明验证失败。该验证复制证明的方法可以随机指定任意位置的原文片段对本发明提供的一种使用中本聪共识实现文件复制证明方法进行验证,但是,该验证方法存在通信量较大、挑战组合少、以及一次只能验证一个片段的不足。

本发明其中一个示例性实施方式中,还提供了另外一种验证复制证明方法,用以验证上述实施例提供的一种使用中本聪共识实现文件复制证明方法,包括以下步骤:

S410:使用挑战数据向复制者发起挑战,其中,所述挑战数据包括,若干个原文片段对应的随机位置和随机长度组成的数据组合。特别地,若干个原文片段对应的随机位置和随机长度既可以是所述原文片段在数据原文中的位置和长度;也可以是所述原文片段对应的复制片段在复制数据中的位置和长度。为了便于理解,下文以所述原文片段在数据原文中的随机位置和随机长度为例进行说明。在其中一个实施方式中,其中,若干个所述随机位置为离散对数生成的随机数数列。所述随机长度可以为k(千)比特。所述随机位置可以为原文片段的起始位置也可以为结束位置,优选为起始位置。较佳地,每一个所述原文片段的起始位置为随机位置,每一个所述原文片段的长度为随机长度,即:用于挑战的若干个原文片段是随机选取的。

进一步地,所述挑战数据还包括随机数据,所述随机数据作为所述数据组合的前缀或与所述数据组合间隔设置。所述随机数据的加入,在通信量增加有限的情况下,能够从根本上避免复制者的作弊行为。

可选地,若干个原文片段的选取方法至少包括以下三种方式中的一种。在其中一种实施方式中,若干个所述原文片段的合集为所述数据原文的子集,比如,对于数据原文abc,以随机选取的原文片段b为例说明,b在数据原文abc中的位置为2(以1为起始位),b的长度为1,以数据原文abc中b对应的位置和b的长度,向复制者发出挑战。在另外一种实施方式中,所述若干个原文片段由若干个所述原文片段由原文片段第一子集和原文片段第二子集组成,其中,所述原文片段第一子集为随机选取的若干个原文片段,所述原文片段第二子集为所述原文片段第一子集的补集。仍然以数据原文abc为例进行说明,随机选取的原文片段b为第一子集,那么b的补集a、c即为所述原文片段第二子集,这样就以三个原文片段b、a和c向复制者发起挑战。同理,如果以a为随机选取的原文片段第一子集,那么a的补集bc即为所述原文片段第二子集。更进一步地,在又一种实施方式中,若干个所述原文片段包括随机选取的若干个原文片段以及所述数据原文的全文。同样地,还以数据原文abc为例,b为数据选取的原文片段,然后再把所述数据原文的全文abc也作为原文片段向复制者发起挑战。因此,若有长度为1024的数据原文,如果随机挑战使用两个原文片段作为挑战,就有1024*1023种组合,使用三位就有1024*1023*1022种组合,以此类推。因此,与第一种实施方式相比,后两种选取原文片段的方法,在向所述复制者发其挑战时,可以全面覆盖所述数据原文,在通信量增加有限的情况,可以做到十分安全,很好地避免了复制者的作弊行为。

S420:根据所述挑战数据对应的复制片段,所述复制者计算得到第一哈希,返回给验证者。

S430:验证者获取复制内容,并根据所述挑战数据,所述验证者计算得到第二哈希,比较所述第一哈希和所述第二哈希是否相同,若相同,验证复制证明通过,否则,验证复制证明失败。

与上一实施方法的验证方法相比,本实施例提供的用于验证一种使用中本聪共识实现文件复制证明方法的验证方法,由于在步骤S410中,仅需向复制者发送若干原文片段的位置及原文片段的长度,而无需发送原文片段本身,在步骤S420中,仅需发送复制片段的哈希,通信量小;而且,一次可以验证若干原文片段甚至所有数据原文,尤其是随机数据的加入,挑战组合多,可以覆盖更多的任意位置的原文片段的验证,效率更高,而且更好地避免了复制者的作弊行为。

基于同一发明构思,本发明的再一实施例还提供了一种使用中本聪共识实现文件复制证明装置,以下所使用的,术语“单元”或者“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。

图4是本发明实施例提供的一种使用中本聪共识实现文件复制证明装置的结构框图,包括,包括复制证明模块210,第一写入模块220和第二写入模块230,其中,复制证明模块210,被配置成用于根据工作量编码单位长度L、数据原文m以及复制者的节点标识id,使用中本聪共识方法生成所述数据原文m的复制编码r;第一写入模块210,被配置成用于将所述复制编码r以及所述复制编码r的摘要信息提交到第一存储区中保存,其中,所述第一存储区包括所述复制者对应的存储节点;第二写入模块230,被配置成用于将所述数据原文m的摘要信息提交到第二存储区中保存。

较佳地,在另一实施方式中,提供使用中本聪共识实现文件复制证明装置还报包括验证者模块240,所述验证者模块240被配置成用于向所述复制者发起挑战,验证复制证明。

关于上述实施例中的使用中本聪共识实现文件复制证明装置,用于实施所述使用中本聪共识实现文件复制证明方法,由于所述使用中本聪共识实现文件复制证明装置解决问题的原理与使用中本聪共识实现文件复制证明方法相似,因此使用中本聪共识实现文件复制证明装置的实施可以参见使用中本聪共识实现文件复制证明方法的实施,各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。

本发明提供的一种使用中本聪共识实现文件复制证明装置在实施所述使用中本聪共识实现文件复制证明方法时,具有与所述使用中本聪共识实现文件复制证明方法相同的有益效果,在此不再赘述。

另外,上述使用中本聪共识实现文件复制证明装置组成模块进行的划分,仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。并且,各个模块的物理实现也可以有多种方式,本发明对此不做限定。

图5是本发明实施例示例性示出的一种使用中本聪共识实现文件复制证明设备的结构框图。如附图5所示,在本实施例中所述使用中本聪共识实现文件复制证明设备包括:处理器310以及存储器320,所述处理310器适于实现各指令,所述存储器320适于存储多条指令,所述指令适于由处理器310加载并执行上述任一实施方式所述使用中本聪共识实现文件复制证明方法。较佳地,本实施例提供的使用中本聪共识实现文件复制证明设备还可以包括多媒体组件330,输入/输出接口340,以及通信组件350中的一个或多个,其中,所述的输入/输出接口即I/O接口。

具体地,所述处理器310用于控制所述使用中本聪共识实现文件复制证明设备的整体操作,以完成上述的使用中本聪共识实现文件复制证明方法中的全部或部分步骤。所述存储器320用于存储各种类型的数据以支持在所述使用中本聪共识实现文件复制证明设备的操作,这些数据例如可以包括用于在所述使用中本聪共识实现文件复制证明装置上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如联系人数据、收发的消息、图片、音频、视频等等。所述存储器320可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-OnlyMemory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-OnlyMemory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。所述多媒体组件330可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在所述存储器320或通过所述通信组件350发送。较佳地,所述音频组件还包括至少一个扬声器,用于输出音频信号。输入/输出接口340为所述处理器310和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。所述通信组件350用于所述使用中本聪共识实现文件复制证明设备与其他设备之间进行有线或无线通信。其中,所述无线通信包括但不限于:例如Wi-Fi,蓝牙,近场通信(Near Field Communication,简称NFC),2G、3G或4G,或它们中的一种或几种的组合,因此相应的所述通信组件350可以包括:Wi-Fi模块,蓝牙模块,NFC模块。

进一步地,作为优选,在一示例性实施例中,所述使用中本聪共识实现文件复制证明设备可以被一个或多个应用专用集成电路(Application Specific IntegratedCircuit,简称ASIC)、数字信号处理器(DigitalSignal Processor,简称DSP)、数字信号处理设备(Digital Signal Processing Device,简称DSPD)、可编程逻辑器件(ProgrammableLogic Device,简称PLD)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的使用中本聪共识实现文件复制证明方法。

本发明提供的一种使用中本聪共识实现文件复制证明设备在执行所述使用中本聪共识实现文件复制证明方法时,具有与所述使用中本聪共识实现文件复制证明方法相同的有益效果,在此不再赘述。

在另一示例性实施例中,还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机可执行的指令,当所述计算机可执行的指令被执行时实现如上文所述的使用中本聪共识实现文件复制证明方法的步骤,具体的步骤上文已经详述,此处不再赘述。例如,该计算机可读存储介质可以为上述包括程序指令的存储器320,上述程序指令可由上述使用中本聪共识实现文件复制证明设备的所述处理器310执行以完成上述的使用中本聪共识实现文件复制证明方法。

本发明提供的一种计算机可读存储介质上的计算机可执行指令被执行实现所述使用中本聪共识实现文件复制证明方法时,具有与所述使用中本聪共识实现文件复制证明方法相同的有益效果,在此不再赘述。

以上结合附图详细描述了本发明的优选实施方式,但是,本发明并不限于上述实施方式中的具体细节,在本发明的技术构思范围内,可以对本发明的技术方案进行多种简单变型,这些简单变型均属于本发明的保护范围。

另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。为了避免不必要的重复,本发明对各种可能的组合方式不再另行说明。

此外,本发明的各种不同的实施方式之间也可以进行任意组合,只要其不违背本发明的思想,其同样应当视为本发明所公开的内容。

通过以上实施方式的描述,本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式,但很多情况下,前者是更佳的实施方式。基于这样的理解,本发明的技术方案对现有技术做出贡献的部分能以计算机软件产品的形式体现出来,所述计算机软件产品存储在计算机可读存储介质,所述计算机可读存储介质包括但不限于磁盘存储器、CD-ROM、光学存储器等。

本发明是根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

以上所述仅为本发明提供的一种使用中本聪共识实现文件复制证明的方法、设备及存储介质的优选实施例而已,并非对本发明范围的任何限定,本发明包括但不局限于上述实施中所列举的构型。对于本领域的技术人员来说,以根据上述实施例的内容举一反三,本发明实施例可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均在包含在本发明的保护范围之内。

17页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:设备故障修复方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类