System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
【国外来华专利技术】
本公开涉及提供有序事件序列(an ordered sequence of events,事件的有序序列)的证明,以及对有序事件序列进行验证。
技术介绍
1、区块链是指一种分布式数据结构,其中在分布式对等(p2p)网络(以下称为“区块链网络”)中的多个节点中的每个节点处维护区块链的副本,并且广泛公开该副本。区块链包括一系列数据区块,其中每个区块包括一个或多个事务(transaction)。除所谓的“coinbase事务”外,每个事务都指向序列中的先前事务,该序列可以跨越一个或多个区块,回到一个或多个coinbase事务。coinbase事务将在下文进一步讨论。提交给区块链网络的事务包括在新区块中。新区块的创建过程通常称为“挖掘”,该过程涉及多个节点中的每个节点争相执行“工作证明”,即,基于等待被包括在区块链的新区块中的一组定义的有序且核实有效的未决事务的表示解决加密难题。应当注意的是,区块链可以在一些节点处被修剪(prune),并且区块的发布可以通过仅发布区块头来实现。
2、区块链中的事务可用于以下目的中的一个或多个:传送数字资产(即,一定数量的数字令牌token);对虚拟化分类账或注册表中的一组条目进行排序;接收和处理时间戳条目;和/或对索引指针按时间排序。也可利用区块链实现区块链上的层级附加功能。例如,区块链协议可允许在事务中存储附加的用户数据或数据索引。能够存储在单个事务中的最大数据容量没有预先指定的限制,因此可以并入越来越复杂的数据。例如,这可用于在区块链中存储电子文档、音频或视频数据。
3、区块链
4、成功解决工作证明难题可创建最新区块的节点通常被奖励一个称为“coinbase事务”的新事务,该事务分发数字资产数额,即令牌数量。无效事务的检测和拒绝是通过竞争节点的行动来执行的,这些竞争节点充当网络的代理并且通过激励报告和阻止不正当行为。信息的广泛发布使得用户可以连续地审计节点的性能。仅发布区块头使得参与者可以确保区块链具有持续完整性。
5、在“基于输出的”模型(有时称为基于utxo的模型)中,给定事务的数据结构包括一个或多个输入和一个或多个输出。任何可花费输出包括指定数字资产数额的元素,该元素可从进行中的事务序列导出。可花费输出有时称为utxo(“未花费事务输出”)。输出还可以包括锁定脚本,该锁定脚本指定输出的未来赎回条件。锁定脚本是限定核实和传送数字令牌或资产所必需的条件的谓词。事务(除coinbase事务之外)的每个输入包括指向先前事务中的此类输出的指针(即引用),并且还可以包括解锁脚本,用于解锁指向输出的锁定脚本。因此,考虑一对事务,将其称为第一事务和第二事务(或“目标”事务)。第一事务包括指定数字资产数额的至少一个输出,并且包括定义解锁该输出的一个或多个条件的锁定脚本。第二(目标)事务包括至少一个输入和解锁脚本,该至少一个输入包括指向第一事务的输出的指针;该解锁脚本用于解锁第一事务的输出。
6、在此类模型中,当第二(目标)事务被发送到区块链网络以在区块链中传播和记录时,在每个节点处应用的有效性条件之一将是解锁脚本满足在第一事务的锁定脚本中定义的一个或多个条件中的所有条件。另一条件将是第一事务的输出尚未被另一早期有效事务赎回。根据这些条件中的任何一个条件发现目标事务无效的任何节点都不会传播该事务(作为有效事务,但可能注册无效事务),也不将该事务包括在要记录在区块链中的新区块中。
7、另一种事务模型是基于账户的模型。在这种情况下,每个事务均不通过参考过去事务序列中先前事务的utxo来定义转移的数额,而是通过参考绝对账户余额进行定义。所有账户的当前状态由节点单独存储到区块链中,并不断更新。
8、比特币允许将数据插入到事务中,并且将其不可变地存储在区块链上。事务完整性的简洁证明通过称为简化支付验证的流程提供。然而,还可以通过事务之间的关系传达附加信息。例如,如果事务b花费事务a的输出中的一个输出,则根据协议的规则,可以知道事务b是在事务a之后创建的。
9、事务排序的概念可以扩展到线性事务链。如果每个事务都花费链中的先前事务的输出,则可以建立不可变排序。该排序由事务中的数据有效载荷继承,并通过工作量证明支持。
10、目前,不存在简洁的方式可以证明在不使用可信第三方的情况下,两个事务是通过事务链来链接的。相反,必须识别链中的所有事务,并且显式地检查每个事务是否都花费先前事务的输出。尽管对于许多用例来说这可能是一种高效的方法,但是存储成本会随着链的长度线性增长。对于由一百万个事务组成的链,证明的大小将达到数百兆字节。即使在高费用分类账(例如比特币)中,这种大小的事务链也可能会随着时间的推移而增长。
技术实现思路
1、根据本文公开的一个方面,提供了一种计算机实现的方法,用于提供事件(event)的有序序列的证明,所述方法在计算设备上执行并且包括:接收事务(transaction);创建待要发送到另一计算设备的另一事务;获取与所述另一事务相关联的证明数据,其向所述另一计算设备提供如下的证明:所述另一事务链接到事务链中的初始事务,所述事务链包括所述事务,其中所述初始事务与所述事件的有序序列中的初始事件相关,并且所述证明数据包括:(i)证明,(ii)所述事务的标识符,和(iii)所述初始事务的唯一标识符;以及,将所述另一事务和所述证明数据发送到所述另一计算设备。
2、根据本文公开的另一方面,提供了一种计算机实现的方法,用于验证事件的有序序列,所述方法在计算设备上执行并且包括:从另一计算设备接收事务;从所述另一计算设备接收与所述事务相关联的证明数据,所述证明数据包括:(i)证明,(ii)事务链中的先前事务的标识符,和(iii)所述事务链中初始事务的唯一标识符,其中所述初始事务与所述事件的有序序列中的初始事件相关;以及,使用所述证明、所述事务链中的先前事务的所述标识符、所述初始事务的所述唯一标识符、和验证密钥来验证:所述事务链接到所述事务链中的所述初始事务。
3、零知识证明(zkp)是一种方法,通过这种方法,被称为证明者的一方可以向被称为验证者的另一方证明某一语句为真,而不揭露除所述语句本文档来自技高网...
【技术保护点】
1.一种计算机实现的方法,用于提供有序事件序列的证明,所述方法在计算设备上执行并且包括:
2.根据权利要求1所述的方法,其中所述事务是所述初始事务,并且获取所述证明数据包括:将所述证明设置为预定证明值,以及将所述事务的所述标识符设置为预定初始值。
3.根据权利要求1所述的方法,其中所述事务不是所述事务链中的所述初始事务,所述方法包括:验证所述事务符合至少一个预定条件。
4.根据权利要求3所述的方法,其中所述至少一个预定条件指定:所述事务花费所述事务链中的先前事务的事务输出。
5.根据权利要求3所述的方法,其中所述至少一个预定条件指定:所述事务包括所述事务的事务输出的索引。
6.根据权利要求3至5中任一项所述的方法,其中获取所述证明数据包括:
7.根据前述任一项权利要求所述的方法,其中所述方法包括:将所述证明数据包括在所述另一事务中。
8.根据权利要求7所述的方法,其中所述方法包括:将所述证明数据包括在所述另一事务的可花费输出中。
9.根据权利要求7所述的方法,其中所述方法包括:将所述证
10.根据权利要求1至6中任一项所述的方法,其中所述证明数据不包括在所述另一事务中,并且所述方法包括:将所述另一事务和所述证明数据单独发送到所述另一计算设备。
11.根据前述任一项权利要求所述的方法,其中所述事务表示将数字资产的所有权转让给与所述计算设备相关联的用户,并且所述另一事务表示将所述数字资产的所有权转让给与所述另一计算设备相关联的另一用户。
12.根据权利要求11所述的方法,其中所述数字资产是非同质化令牌。
13.根据权利要求1至10中任一项所述的方法,其中所述事务与事件数据相关联,其中所述事件数据与所述有序事件序列中的事件相关;并且其中所述另一事务与另一事件数据相关联,所述另一事件数据与所述有序事件序列中的较后事件相关。
14.根据权利要求13所述的方法,其中所述事件数据包括与物理或数字对象相关联的数据记录,并且所述另一事件数据包括与所述物理或数字对象相关联的另一数据记录。
15.根据权利要求13所述的方法,其中所述事件数据包括与用户相关联的数据记录,并且所述另一事件数据包括与所述用户相关联的另一数据记录。
16.根据权利要求13至15中任一项所述的方法,其中所述事务包括所述事件数据的表示,并且所述另一事务包括所述另一事件数据的表示。
17.根据权利要求13至15中任一项所述的方法,其中所述事件数据与所述事务的所述标识符相关联地存储在远程设备上,并且所述方法包括:将所述另一事件数据与所述另一事务的标识符相关联地存储在所述远程设备上。
18.根据前述任一项权利要求所述的方法,其中所述事务和所述另一事务是区块链事务。
19.一种计算机程序,所述计算机程序在由计算设备读取时使所述计算设备执行根据前述任一项权利要求所述的方法。
20.一种非暂时性计算机可读存储介质,所述非暂时性计算机可读存储介质包括计算机可读指令,所述计算机可读指令在由计算设备读取时使所述计算设备执行根据权利要求1至18中任一项所述的方法。
21.一种计算设备,所述计算设备包括处理器和存储器,所述存储器存储指令,所述指令在由所述处理器执行时,使所述计算设备执行根据权利要求1至18中任一项所述的方法。
22.一种计算机实现的方法,用于验证有序事件序列,所述方法在计算设备上执行并且包括:
23.根据权利要求22所述的方法,其中所述事务包括所述证明数据。
24.根据权利要求23所述的方法,其中所述事务将所述证明数据包括在所述事务的可花费输出中。
25.根据权利要求23所述的方法,其中所述事务将所述证明数据包括在所述事务的不可花费输出中。
26.根据权利要求22所述的方法,其中所述证明数据与所述事务分开接收。
27.根据权利要求22至26中任一项所述的方法,其中验证所述事务链接到所述事务链中的所述初始事务还包括:
28.根据权利要求22至27中任一项所述的方法,其中所述事务表示将数字资产的所有权从与所述另一计算设备相关联的用户转让给与所述计算设备相关联的用户。
29.根据权利要求28所述的方法,其中所述数字资产是非同质化令牌。
30.根据权利要求22至27中任一项所述的方法,其中所述事务与事件数据相关联,其中所述事件数据与所述有序事件序列中的事件相关;并且其中所述另一事务与另一事件数据相关联,...
【技术特征摘要】
【国外来华专利技术】
1.一种计算机实现的方法,用于提供有序事件序列的证明,所述方法在计算设备上执行并且包括:
2.根据权利要求1所述的方法,其中所述事务是所述初始事务,并且获取所述证明数据包括:将所述证明设置为预定证明值,以及将所述事务的所述标识符设置为预定初始值。
3.根据权利要求1所述的方法,其中所述事务不是所述事务链中的所述初始事务,所述方法包括:验证所述事务符合至少一个预定条件。
4.根据权利要求3所述的方法,其中所述至少一个预定条件指定:所述事务花费所述事务链中的先前事务的事务输出。
5.根据权利要求3所述的方法,其中所述至少一个预定条件指定:所述事务包括所述事务的事务输出的索引。
6.根据权利要求3至5中任一项所述的方法,其中获取所述证明数据包括:
7.根据前述任一项权利要求所述的方法,其中所述方法包括:将所述证明数据包括在所述另一事务中。
8.根据权利要求7所述的方法,其中所述方法包括:将所述证明数据包括在所述另一事务的可花费输出中。
9.根据权利要求7所述的方法,其中所述方法包括:将所述证明数据包括在所述另一事务的不可花费输出中。
10.根据权利要求1至6中任一项所述的方法,其中所述证明数据不包括在所述另一事务中,并且所述方法包括:将所述另一事务和所述证明数据单独发送到所述另一计算设备。
11.根据前述任一项权利要求所述的方法,其中所述事务表示将数字资产的所有权转让给与所述计算设备相关联的用户,并且所述另一事务表示将所述数字资产的所有权转让给与所述另一计算设备相关联的另一用户。
12.根据权利要求11所述的方法,其中所述数字资产是非同质化令牌。
13.根据权利要求1至10中任一项所述的方法,其中所述事务与事件数据相关联,其中所述事件数据与所述有序事件序列中的事件相关;并且其中所述另一事务与另一事件数据相关联,所述另一事件数据与所述有序事件序列中的较后事件相关。
14.根据权利要求13所述的方法,其中所述事件数据包括与物理或数字对象相关联的数据记录,并且所述另一事件数据包括与所述物理或数字对象相关联的另一数据记录。
15.根据权利要求13所述的方法,其中所述事件数据包括与用户相关联的数据记录,并且所述另一事件数据包括与所述用户相关联的另一数据记录。
16.根据权利要求13至15中任一项所述的方法,其中所述事务包括所述事件数据的表示,并且所述另一事务包括所述另一事件数据的表示。
17.根据权利要求13至15中任一项所述的方法,其中所述事件数据与所述事务的所述标识符相关联地存储在远程设备上,并且所述方法包括:将所述另一事件数据与所述另一事务的标识符相关联地存储在所述远程设备上。
18.根据前述任一项权利要求所述的方法,其中所述事务和所述另一事...
【专利技术属性】
技术研发人员:欧文·沃恩,穆罕默德·萨比尔·基拉兹,
申请(专利权)人:区块链许可股份公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。