【技术实现步骤摘要】
【国外来华专利技术】修剪防篡改数据存储装置中的条目
[0001]相关申请的交叉引用
[0002]本专利申请要求于2019年9月27日提交的名称为“修剪防篡改数据存储装置中的条目”的美国临时专利申请62/907,271的权益。每个在前列出的在先申请的全部内容通过引用结合于此。
[0003]本公开总体上涉及防篡改数据存储装置,并且更具体而言,涉及修剪防篡改数据存储装置中的条目。
技术介绍
[0004]防篡改数据结构通常用于以不会在数据结构中留下修改的证据而随后进行修改在计算上通常是不可行的方式记录数据。通常,这些数据结构将所记录的数据条目与基于这些条目的单向函数的输出相关联。单向函数的输出与未来某个时间点的条目之间的不一致性指示篡改。通常可以通过基于条目的当前版本重新计算单向函数以确定输出是否与数据结构中存在的相匹配来检查篡改。如果其不匹配,则潜在地指示篡改。
[0005]单向函数通常表现出在给定输出的情况下计算输入(例如反转函数)的相对高的计算复杂度(例如时间复杂度或存储复杂度方面)来,但是表现出根据给定输入计算输出的相对低的计算复杂度。通常,这些函数反转在计算上是昂贵的,典型地是到了商业上不可行的程度。例如,许多单向函数在利用消费级、最先进的中央处理器的情况下要求超过10年的计算时间来确定产生预定输出的输入。为了进一步强化数据结构,可以将这些单向函数的输入和输出与各种变化的值(如时间戳)链接并组合,以放大反转计算所要求的计算复杂度。
[0006]其结果是,对防篡改数据结构中的条目的改变导致与基于那些条目的 ...
【技术保护点】
【技术特征摘要】
【国外来华专利技术】1.一种存储指令的有形的、非暂时性机器可读介质,所述指令在被一个或多个处理器执行时实现包括以下操作:利用计算机系统接收对存储在防篡改数据存储装置中的数据进行修剪的请求,其中:所述数据包括第一程序在第一时间的第一程序状态,所述第一程序是具有存储在所述防篡改数据存储装置中的程序状态的多个程序中的一个,所述请求利用标识符唯一地标识所述第一程序,所述标识符将所述第一程序与所述多个程序当中的第二程序进行区分,所述防篡改数据存储装置包括加密散列指针的有向非循环图,所述加密散列指针的第一子集具有基于所述第一程序在所述第一时间的第一程序状态的加密散列值,所述加密散列指针的第二子集具有基于所述第一程序在第二时间的第二程序状态的加密散列值,所述加密散列指针的第三子集具有基于所述第一程序在所述第一时间的第一程序状态、所述第一程序在所述第二时间的第二程序状态以及来自所述第一时间之前的所述第二程序的程序状态的加密散列值,并且所述防篡改数据存储装置包括将所述加密散列指针的第一子集链接到所述加密散列指针的第二子集的记录或者与所述记录相关联;响应于所述请求,基于所述标识符和将所述加密散列指针的第一子集链接到所述加密散列指针的第二子集的记录,利用所述计算机系统选择:所述有向非循环图的节点的第一子集,其具有基于所述第一程序在所述第一时间的所述第一程序状态的第一内容,所述加密散列指针的第一子集的散列值基于所述第一内容;以及所述有向非循环图的节点的第二子集,其具有基于所述第一程序在所述第一时间的所述第一程序状态的第二内容,所述加密散列指针的第二子集的散列值基于所述第二内容;利用所述计算机系统,通过改变存储器中的所述第一内容和所述第二内容,从所述防篡改数据存储装置中修剪所述第一程序状态和所述第二程序状态,其中:在所述修剪之后,所述加密散列指针的有向非循环图的加密散列值在内部是一致的,并且在所述修剪之后,来自所述第一时间之前的所述第二程序的程序状态保留在所述防篡改数据存储装置中。2.根据权利要求1所述的介质,其中:接收包括接收所述第一程序的子例程的调用,所述调用被发送到被配置成将状态持久保存到所述防篡改数据存储装置的许可分布式计算平台上的所述第一程序的地址;所述地址基于所述第一程序的创建者的地址和由所述创建者先前部署的程序的计数;所述子例程在被解释为字节码时,调用虚拟机的修剪操作码,在所述虚拟机的复制实例上,所述第一程序在所述分布式计算平台的多个计算节点上被冗余地执行;所述记录包括基于所述第一程序在不同时间的程序状态的所述防篡改数据存储装置中的节点的链表;
所述第一内容包括通过其部署所述第一程序的所述分布式计算平台上的事务的加密事务散列;修剪包括改变在其上部署所述第一程序的所述分布式计算平台上的事务的加密事务散列;所述第二内容包括基于具有所述第一程序而不是所述第二程序的程序状态的加密散列指针的第一字典树的根节点的加密存储散列;修剪包括改变所述加密存储散列;所述第二内容包括通过其调用所述第一程序以将所述第一程序的程序状态从所述第一程序状态变化为所述第二程序状态的事务;所述事务被存储在加密散列指针的第二字典树中,所述加密散列指针的第二字典树具有带有所述多个程序中除所述第一程序之外的程序的事务;并且修剪包括在加密散列指针的所述第二字典树中改变通过其调用所述第一程序以将所述第一程序的程序状态从所述第一程序状态变化为所述第二程序状态的事务。3.根据权利要求1所述的介质,其中:修剪包括对所述防篡改数据存储装置中的条目进行去索引,并将条目指定为已在所述防篡改数据存储装置中被修剪。4.根据权利要求1所述的介质,其中,修剪包括:迭代经过所述第一程序的包括所述第一程序状态和所述第二程序状态的程序状态的每个实例,并且在至少多个迭代的每一个中:在状态字典树中的当前迭代条目中,基于所述第一程序的代码改变当前迭代的加密代码散列值;在状态字典树中的所述当前迭代条目中,基于由所述第一程序存储的数据改变当前迭代的加密存储散列值;改变由所述状态字典树中的所述当前迭代条目中的加密事务散列所标识的当前迭代的事务条目中除当前迭代的加密收据散列之外的值;改变由所述当前迭代的加密收据散列标识的收据字典树中的条目中的值;以及访问指向状态字典树中的前趋条目的当前迭代指针。5.根据权利要求1所述的介质,其中,修剪在其中事务字典树被添加到加密散列指针的所述有向非循环图的实例之间同步执行。6.根据权利要求1所述的介质,其中,所述操作包括通过按时间顺序执行存储在所...
【专利技术属性】
技术研发人员:杰弗里,
申请(专利权)人:斯凯维公司DBA阿索尼,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。