CN113297214B - 基于dag区块链的快照处理方法、设备及存储介质 - Google Patents

基于dag区块链的快照处理方法、设备及存储介质 Download PDF

Info

Publication number
CN113297214B
CN113297214B CN202110491562.0A CN202110491562A CN113297214B CN 113297214 B CN113297214 B CN 113297214B CN 202110491562 A CN202110491562 A CN 202110491562A CN 113297214 B CN113297214 B CN 113297214B
Authority
CN
China
Prior art keywords
snapshot
block
current
block number
node
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
CN202110491562.0A
Other languages
English (en)
Other versions
CN113297214A (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.)
Hunan Chenhan Technology Co ltd
Original Assignee
Hunan Zhaowuxin Chain Technology Group 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 Hunan Zhaowuxin Chain Technology Group Co ltd filed Critical Hunan Zhaowuxin Chain Technology Group Co ltd
Priority to CN202110491562.0A priority Critical patent/CN113297214B/zh
Publication of CN113297214A publication Critical patent/CN113297214A/zh
Application granted granted Critical
Publication of CN113297214B publication Critical patent/CN113297214B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2255Hash tables
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2272Management thereof

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种基于DAG区块链的快照处理方法、设备及存储介质。本发明通过获取预设快照高度,根据预设快照高度确定当前快照的终止区块,根据DAG区块链的共识结果确定从初始区块到终止区块的共识顺序,根据共识顺序将所有区块的区块号记录至链表中,从链表读取当前区块号,并获取当前区块号的交易信息,根据交易信息构建当前结点,以及当前结点与前一结点的指向关系,以得到当前区块号的快照,返回从所述链表读取当前区块号的步骤,以得到当前快照。其中,根据DAG区块链的特点设计快照存储结构,使该结构与DAG区块链图的结构保持一致,基于该快照存储结构存储DAG区块链上的交易信息,有效提高了归档存储效率。

Description

基于DAG区块链的快照处理方法、设备及存储介质
技术领域
本发明涉及区块链技术领域,尤其涉及一种基于DAG区块链的快照处理方法、设备及存储介质。
背景技术
区块链利用块链式结构记录数据,为了能够在特定的情况下(如***崩溃)恢复出区块链数据,区块链通常采用快照的形式对链上的数据进行定时归档,即每隔一段时间,将当前时刻的区块数据进行打包,并存储到介质中。当特殊情况触发时,通过反演快照数据可以恢复区块链数据。
目前的区块链快照机制都是面向传统的链式结构的区块链(如比特币、以太坊、Fabric区块链等),然而当前有向无环图(Directed Acyclic Graph,DAG)区块链结构则以有向无环图结构为主,由于现有的区块链快照存储结构并不适应DAG的图结构,导致归档存储效率较低。
发明内容
本发明的主要目的在于提供一种基于DAG区块链的快照处理方法、设备及存储介质,旨在解决现有技术中现有的区块链快照存储结构并不适应DAG的图结构,导致归档存储效率较低的技术问题。
为实现上述目的,本发明第一方面提供一种基于DAG区块链的快照处理方法,方法包括以下步骤:
获取预设快照高度;
根据预设快照高度确定当前快照的终止区块;
根据DAG区块链的共识结果确定从初始区块到终止区块的共识顺序;
根据共识顺序将所有区块的区块号记录至链表中;
从链表读取当前区块号,并获取当前区块号的交易信息;
根据交易信息构建当前结点,以及当前结点与前一结点的指向关系,以得到当前区块号的快照;
返回从链表读取当前区块号的步骤,以得到当前快照。
可选地,初始区块为创世区块或前一快照的终止区块。
可选地,根据交易信息构建当前结点,包括:
基于预设列表将交易信息与当前结点对应存储;其中,预设列表中的参数包括交易、发送者、接收者、时间和金额。
可选地,还包括:
在得到当前快照之后,计算当前快照的哈希值;
从当前快照中读取开始区块号及结束区块号;
根据当前快照的哈希值、开始区块号及结束区块号构建待共识数据;
将待共识数据发送至DAG区块链,以对待共识数据进行共识处理。
可选地,还包括:
从所述当前快照中读取开始区块号及结束区块号之后,根据开始区块号和结束区块号查找DAG区块链中类型为快照的共识数据,以得到与开始区块号和结束区块号匹配的已共识数据;
获取已共识数据的哈希值,并根据当前快照的哈希值和已共识数据的哈希值对当前快照进行验证。
可选地,还包括:
在当前快照验证通过时,检测开始区块号是否是创世区块的块号,以得到检测结果;
根据检测结果删除当前快照对应的节点的区块数据;
根据当前快照对区块数据进行恢复。
可选地,根据检测结果删除当前快照对应的节点的区块数据,包括:
在开始区块号是创世区块的块号时,删除当前快照对应的节点的所有的区块数据;
在开始区块号不是创世区块的块号时,删除当前快照对应的节点中开始区块号的区块之后的区块数据。
可选地,根据当前快照对区块数据进行恢复,包括:
从当前快照获取开始区块号的结点的后一结点;
将后一结点的交易信息及指向关系写入节点。
本发明第二方面提供一种快照处理设备,快照处理设备包括:存储器、处理器及存储在存储器上并可在处理器上运行的快照处理程序,快照处理程序配置为实现如上的快照处理方法的步骤。
本发明第三方面提供一种存储介质,存储介质上存储有快照处理程序,快照处理程序被处理器执行时实现如上的快照处理方法的步骤。
通过本发明实施例提供的方案,通过获取预设快照高度,根据预设快照高度确定当前快照的终止区块,根据DAG区块链的共识结果确定从初始区块到终止区块的共识顺序,根据共识顺序将所有区块的区块号记录至链表中,从链表读取当前区块号,并获取当前区块号的交易信息,根据交易信息构建当前结点,以及当前结点与前一结点的指向关系,以得到当前区块号的快照,返回从链表读取当前区块号的步骤,以得到当前快照。其中,根据DAG区块链的特点设计快照存储结构,使该结构与DAG区块链图的结构保持一致,基于该快照存储结构存储DAG区块链上的交易信息,有效提高了归档存储效率。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的快照处理设备结构示意图;
图2为本发明快照处理方法第一实施例的流程示意图;
图3为本发明快照处理方法第二实施例的流程示意图;
图4为本发明快照处理方法第三实施例的流程示意图;
图5为本发明快照处理方法第四实施例的流程示意图;
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
参照图1,图1为本发明实施例方案涉及的硬件运行环境的快照处理设备结构示意图。
如图1所示,该快照处理设备可以包括:处理器1001,例如CPU,通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏、输入单元比如键盘,可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器,例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的结构并不构成对快照处理设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作***、网络通信模块、用户接口模块以及快照处理程序。
在图1所示的快照处理设备中,网络接口1004主要用于与外部网络进行数据通信;用户接口1003主要用于接收用户的输入指令;快照处理设备通过处理器1001调用存储器1005中存储的快照处理程序,并执行以下操作:
获取预设快照高度;
根据预设快照高度确定当前快照的终止区块;
根据DAG区块链的共识结果确定从初始区块到终止区块的共识顺序;
根据共识顺序将所有区块的区块号记录至链表中;
从链表读取当前区块号,并获取当前区块号的交易信息;
根据交易信息构建当前结点,以及当前结点与前一结点的指向关系,以得到当前区块号的快照;
返回从链表读取当前区块号的步骤,以得到当前快照。
进一步地,处理器1001可以调用存储器1005中存储的快照处理程序,还执行以下操作:
基于预设列表将交易信息与当前结点对应存储;其中,预设列表中的参数包括交易、发送者、接收者、时间和金额。
进一步地,处理器1001可以调用存储器1005中存储的快照处理程序,还执行以下操作:
在得到当前快照之后,计算当前快照的哈希值;
从当前快照中读取开始区块号及结束区块号;
根据当前快照的哈希值、开始区块号及结束区块号构建待共识数据;
将待共识数据发送至DAG区块链,以对待共识数据进行共识处理。
进一步地,处理器1001可以调用存储器1005中存储的快照处理程序,还执行以下操作:
从所述当前快照中读取开始区块号及结束区块号之后,根据开始区块号和结束区块号查找DAG区块链中类型为快照的共识数据,以得到与开始区块号和结束区块号匹配的已共识数据;
获取已共识数据的哈希值,并根据当前快照的哈希值和已共识数据的哈希值对当前快照进行验证。
进一步地,处理器1001可以调用存储器1005中存储的快照处理程序,还执行以下操作:
在当前快照验证通过时,检测开始区块号是否是创世区块的块号,以得到检测结果;
根据检测结果删除当前快照对应的节点的区块数据;
根据当前快照对区块数据进行恢复。
进一步地,处理器1001可以调用存储器1005中存储的快照处理程序,还执行以下操作:
在开始区块号是创世区块的块号时,删除当前快照对应的节点的所有的区块数据;
在开始区块号不是创世区块的块号时,删除当前快照对应的节点中开始区块号的区块之后的区块数据。
进一步地,处理器1001可以调用存储器1005中存储的快照处理程序,还执行以下操作:
从当前快照获取开始区块号的结点的后一结点;
将后一结点的交易信息及指向关系写入节点。
本实施例通过上述方案,通过获取预设快照高度,根据预设快照高度确定当前快照的终止区块,根据DAG区块链的共识结果确定从初始区块到终止区块的共识顺序,根据共识顺序将所有区块的区块号记录至链表中,从链表读取当前区块号,并获取当前区块号的交易信息,根据交易信息构建当前结点,以及当前结点与前一结点的指向关系,以得到当前区块号的快照,返回从链表读取当前区块号的步骤,以得到当前快照。其中,根据DAG区块链的特点设计快照存储结构,使该结构与DAG区块链图的结构保持一致,基于该快照存储结构存储DAG区块链上的交易信息,有效提高了归档存储效率。
基于上述硬件结构,提出本发明快照处理方法实施例。
参照图2,图2为本发明快照处理方法第一实施例的流程示意图。
在第一实施例中,快照处理方法包括以下步骤:
S10:获取预设快照高度;
应当理解的是,预设快照高度,指用户声明或***设定的快照高度,根据快照的模式不同,该预设快照高度的值也不同。
快照的模式通常可以分为全快照和增量快照,全快照指从创世区块到某个区块按照交易顺序将其中的全部交易生成快照。增量快照指从某个非创世区块到另一个区块按照交易顺序将其中的全部交易生成快照。
S20:根据预设快照高度确定当前快照的终止区块;
在具体实现中,当DAG区块链的当前区块高度达到预设快照高度时,启动快照生成机制,并根据预设快照高度定位当前快照的终止区块。
S30:根据DAG区块链的共识结果确定从初始区块到终止区块的共识顺序;
其中,初始区块为创世区块或前一快照的终止区块。
在一实施例中,当初始区块为创世区块时,启动全快照生成机制,根据共识结果确定从创世区块到终止区块的共识顺序。
在另一实施例中,当初始区块为前一快照的终止区块时,启动增量快照生成机制,根据共识结果确定从上一次快照的终止区块到当前快照的终止区块的共识顺序。
S40:根据共识顺序将所有区块的区块号记录至链表中;
应当理解的是,所有区块,指从初始区块到终止区块的全部区块,为了方便从DAG区块链中依次获取交易信息,本实施例将所有区块的区块号记录至链表中。
S50:从链表读取当前区块号,并获取当前区块号的交易信息;
需要说明的是,由于从链表读取区块号是一个持续的过程,也就是说,为了获得所有区块号的交易信息,会在一段时间内持续性地读取区块号,因此,当前区块号即可理解为正在读取的区块号。
在取出当前区块号后,到DAG区块链中当前区块号对应的区块上读取该区块号的全部交易信息,并将交易信息按照预设的快照存储结构进行存储。
S60:根据交易信息构建当前结点,以及当前结点与前一结点的指向关系,以得到当前区块号的快照;
现有技术中的区块链快照都是基于传统的链式结构的区块链生成的,然而DAG区块链是以有向无环图结构为主,若使用现有技术中的区块链快照机制,将具有以下局限性:
(1)快照存储结构不适合DAG区块链的图结构,不能较高效的归档存储;
(2)DAG区块链一般采用异步共识机制,在某一时刻,各个记账节点的账本数据可能是不同的,因此,如何在做快照时能够兼顾不同的账本,这也是当前快照机制没有考虑过的问题。
本实施例中,针对DAG区块链结构为有向无环图、账本不相同的问题,设计了一种图结构的快照存储结构。设DAG区块链的快照为DAGSS=(V,E),其中V代表图的结点,E代表图的边,V对应于DAG区块链的区块,E对应于DAG区块链区块之间的关系,E为有向边。V中具体结构为(type,sender,receiver,timestamp,cont),其中type表示类型、sender表示发送者、receiver表示接收者、timestamp表示时间、cont表示内容。
在具体实现中,在获得交易信息后,可以基于预设列表将交易信息与当前结点对应存储,即将当前区块号的交易信息以(trans,sender,receiver,timestamp,amount)列表的形式存入当前结点V1;其中,trans表示类型为交易、sender表示发送者、receiver表示接收者、timestamp表示时间、amount表示金额。当交易信息存入当前结点V1后,需要将前一结点V0与当前结点V1相连,并将前一结点V0指向当前结点V1,以生成当前区块号的快照的边E1,由此,当前区块号的快照的两个元素:当前结点V1和快照的边E1都已确定,即得到了当前区块号的快照。
S70:返回从链表读取当前区块号的步骤,以得到当前快照。
在当前区块号的快照生成后,继续从链表中读取下一个区块号,直至链表中的区块号全部读取完毕时,根据链表中所有区块号的快照生成当前快照。
需要说明的是,上述当前快照的生成方式可用于全快照生成和增量快照生成两种模式,充分满足了实际情况,全快照生成时间相对较慢,但数据全,在无数据时可以利用全快照进行整体恢复;而增量快照相对小,生成和恢复速度快,但必须建立在已有区块链基础上。在实际应用中可以将二者配合使用,即每隔小段间隔实行增量式快照生成,这样可以快速保存快照不占用***时间;在***空闲时可以采用全快照生成模式。这种灵活的生成模式可以让***得到较好的性能。
本实施例通过上述方案,根据DAG区块链的特点设计快照存储结构,使该结构与DAG区块链图的结构保持一致,基于该快照存储结构存储DAG区块链上的交易信息,有效提高了归档存储效率。
进一步地,如图3所示,基于第一实施例提出本发明快照处理方法第二实施例,在本实施例中,在得到当前快照之后,还可以对当前快照进行共识处理,其具体步骤包括:
S80:计算当前快照的哈希值;
应当理解的是,由于DAG区块链存在异步共识的情况,导致在同一时刻每个记账节点的账本共识状态是不一样的,因此本实施例设计了将快照信息也作为共识内容的一部分,将每个记账节点的快照点都做共识记录。
在DAG区块链中某记账节点A生成快照后,对节点A的当前快照取哈希值,其中,哈希值的计算方式本实施例不加以限制。
S90:从当前快照中读取开始区块号及结束区块号;
S100:根据当前快照的哈希值、开始区块号及结束区块号构建待共识数据;
在具体实现中,可以根据(Snapshot,节点A的当前快照的开始区块号,节点A的当前快照的结束区块号,timestamp,HDS)的格式构建待共识数据;其中,Snapshot表示类型为快照,timestamp表示时间,HDS表示当前快照的哈希值。
S110:将待共识数据发送至DAG区块链,以对待共识数据进行共识处理。
应当理解的是,将某个节点的当前快照进行处理后作为待共识数据发送至DAG区块链后,DAG区块链中的其他节点会对该待共识数据进行共识,保障了该快照的可信性。
本实施例针对DAG区块链在同一时间账本共识状态不统一的特点,设计了快照点共识的方案,将记账节点的当前快照取哈希值后进行共识,以将节点的快照状态上链进行存储,方便后期针对某个节点的特定恢复。
进一步地,如图4所示,基于第二实施例提出本发明快照处理方法第三实施例,在本实施例中,在步骤S90之后,以及基于快照恢复区块数据之前,要验证所获取的快照是否正确,对当前快照进行验证的步骤如下:
S120:根据开始区块号和结束区块号查找DAG区块链中类型为快照的共识数据,以得到与开始区块号和结束区块号匹配的已共识数据;
以节点A需要从当前快照进行恢复为例,节点A对当前快照取哈希值,得到当前快照的哈希值HDS1,节点A到DAG区块链中遍历类型为Snapshot的共识数据,并根据当前快照的开始区块号和结束区块号查找是否存在匹配的已共识数据,根据匹配结果确定验证是否通过。
S130:获取已共识数据的哈希值,并根据当前快照的哈希值和已共识数据的哈希值对当前快照进行验证。
在一实施例中,当查找到匹配的已共识数据即匹配成功时,将当前快照的哈希值HDS1和已共识数据的哈希值HDS2进行比较,当HDS1和HDS2相等时,则判定验证通过,当HDS1和HDS2不相等时,则判定验证不通过。
在另一实施例中,当未查找到匹配的已共识数据即匹配失败时,则判定验证不通过。
本实施例通过节点在基于当前快照恢复前,对获取的当前快照进行验证,采用验证通过的快照进行恢复,可以有效防止快照篡改,避免利用快照进行攻击,提高了快照恢复的安全性。
进一步地,如图5所示,基于第三实施例提出本发明快照处理方法第四实施例,在本实施例为基于验证通过的当前快照对区块数据进行恢复的步骤,具体包括:
S140:在当前快照验证通过时,检测开始区块号是否是创世区块的块号,以得到检测结果;
以节点A要对其区块数据进行恢复为例,设节点A的当前快照验证通过,节点A读取当前快照中的开始区块号和结束区块号,并对开始区块号进行判定。
S150:根据检测结果删除当前快照对应的节点的区块数据;
进一步地,在开始区块号是创世区块的块号时,删除当前快照对应的节点的所有的区块数据;在开始区块号不是创世区块的块号时,删除当前快照对应的节点中开始区块号的区块之后的区块数据。
S160:根据当前快照对区块数据进行恢复。
具体地,从当前快照获取开始区块号的结点的后一结点;将后一结点的交易信息及指向关系写入节点。
当开始区块号是创世区块的块号时,当前快照为全快照,此时节点A抛弃当前所有的区块数据,之后读取当前快照中开始区块号的图结点的后一结点V2。若该结点V2不为空,从该结点V2中获取交易信息,并按照DAG区块链的内部结构写入交易信息,如果DAG区块链存在链指向,则指向该结点V2,节点A沿着结点V2获取边信息E,若E不为空,在DAG区块链中构建链指向后,继续读取下一个结点,直至读取完毕时,区块数据恢复完毕。
当开始区块号不是创世区块的块号时,当前快照为增量快照,此时节点A抛弃自开始区块号的区块起的全部区块数据,之后读取当前快照中开始区块号的图结点的后一结点V2。若该结点V2不为空,从该结点V2中获取交易信息,并按照DAG区块链的内部结构写入交易信息,如果DAG区块链存在链指向,则指向该结点V2,节点A沿着结点V2获取边信息E,若E不为空,在DAG区块链中构建链指向后,继续读取下一个结点,直至读取完毕时,区块数据恢复完毕。
本实施例中由于DAG区块链的快照存储结构与DAG区块链图的结构保持一致,在根据当前快照进行区块数据恢复时,可以与DAG图结构无缝对接,有效提升了恢复速度及恢复效率,克服了现有技术中链式快照用于恢复DAG区块链时效率低的问题。
此外,本发明实施例还提出一种计算机可读存储介质,计算机可读存储介质上存储有快照处理程序,控制程序被处理器执行时使得处理器能够执行上述的快照处理方法。
本发明计算机可读存储介质的具体实施例与上述控制方法各实施例基本相同,在此不作赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者***不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者***所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者***中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (10)

1.一种基于DAG区块链的快照处理方法,其特征在于,所述快照处理方法包括:
获取预设快照高度;
根据所述预设快照高度确定当前快照的终止区块;
根据DAG区块链的共识结果确定从初始区块到所述终止区块的共识顺序;
根据所述共识顺序将所有区块的区块号记录至链表中;
从所述链表读取当前区块号,并获取所述当前区块号的交易信息;
根据所述交易信息构建当前结点,以及所述当前结点与前一结点的指向关系,以得到所述当前区块号的快照;
返回所述从所述链表读取当前区块号的步骤,以得到所述当前快照。
2.根据权利要求1所述的快照处理方法,其特征在于,所述初始区块为创世区块或前一快照的终止区块。
3.根据权利要求2所述的快照处理方法,其特征在于,所述根据所述交易信息构建当前结点,包括:
基于预设列表将所述交易信息与所述当前结点对应存储;其中,所述预设列表中的参数包括交易、发送者、接收者、时间和金额。
4.根据权利要求3所述的快照处理方法,其特征在于,还包括:
在得到所述当前快照之后,计算所述当前快照的哈希值;
从所述当前快照中读取开始区块号及结束区块号;
根据所述当前快照的哈希值、所述开始区块号及所述结束区块号构建待共识数据;
将所述待共识数据发送至所述DAG区块链,以对所述待共识数据进行共识处理。
5.根据权利要求4所述的快照处理方法,其特征在于,还包括:
从所述当前快照中读取开始区块号及结束区块号之后,根据所述开始区块号和所述结束区块号查找所述DAG区块链中类型为快照的共识数据,以得到与所述开始区块号和所述结束区块号匹配的已共识数据;
获取所述已共识数据的哈希值,并根据所述当前快照的哈希值和所述已共识数据的哈希值对所述当前快照进行验证。
6.根据权利要求5所述的快照处理方法,其特征在于,还包括:
在所述当前快照验证通过时,检测所述开始区块号是否是创世区块的块号,以得到检测结果;
根据所述检测结果删除所述当前快照对应的节点的区块数据;
根据所述当前快照对所述区块数据进行恢复。
7.根据权利要求6所述的快照处理方法,其特征在于,所述根据所述检测结果删除所述当前快照对应的节点的区块数据,包括:
在所述开始区块号是创世区块的块号时,删除所述当前快照对应的节点的所有的区块数据;
在所述开始区块号不是创世区块的块号时,删除所述当前快照对应的节点中所述开始区块号的区块之后的区块数据。
8.根据权利要求6所述的快照处理方法,其特征在于,所述根据所述当前快照对所述区块数据进行恢复,包括:
从所述当前快照获取所述开始区块号的结点的后一结点;
将所述后一结点的交易信息及指向关系写入所述节点。
9.一种快照处理设备,其特征在于,所述快照处理设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的快照处理程序,所述快照处理程序配置为实现如权利要求1至8中任一项所述的快照处理方法的步骤。
10.一种存储介质,其特征在于,所述存储介质上存储有快照处理程序,所述快照处理程序被处理器执行时实现如权利要求1至8中任一项所述的快照处理方法的步骤。
CN202110491562.0A 2021-05-06 2021-05-06 基于dag区块链的快照处理方法、设备及存储介质 Active CN113297214B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110491562.0A CN113297214B (zh) 2021-05-06 2021-05-06 基于dag区块链的快照处理方法、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110491562.0A CN113297214B (zh) 2021-05-06 2021-05-06 基于dag区块链的快照处理方法、设备及存储介质

Publications (2)

Publication Number Publication Date
CN113297214A CN113297214A (zh) 2021-08-24
CN113297214B true CN113297214B (zh) 2022-06-10

Family

ID=77321730

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110491562.0A Active CN113297214B (zh) 2021-05-06 2021-05-06 基于dag区块链的快照处理方法、设备及存储介质

Country Status (1)

Country Link
CN (1) CN113297214B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114168086B (zh) * 2021-12-22 2024-06-14 长沙理工大学 一种区块链数据存储方法、装置、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7895666B1 (en) * 2006-09-01 2011-02-22 Hewlett-Packard Development Company, L.P. Data structure representation using hash-based directed acyclic graphs and related method
CN106844523A (zh) * 2016-12-29 2017-06-13 北京瑞卓喜投科技发展有限公司 顺序型多维拓展的区块链的生成方法及***
CN106909605A (zh) * 2016-12-29 2017-06-30 北京瑞卓喜投科技发展有限公司 沿横向拓展的区块链的生成方法及***
CN111209346A (zh) * 2020-04-24 2020-05-29 腾讯科技(深圳)有限公司 一种区块链数据归档方法、装置和计算机可读存储介质
CN111767337A (zh) * 2019-05-24 2020-10-13 北京沃东天骏信息技术有限公司 区块的验证方法、装置及设备

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200143372A1 (en) * 2018-11-02 2020-05-07 Vite Labs Limited Methods for decentralized digital asset transfer and smart contract state transition

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7895666B1 (en) * 2006-09-01 2011-02-22 Hewlett-Packard Development Company, L.P. Data structure representation using hash-based directed acyclic graphs and related method
CN106844523A (zh) * 2016-12-29 2017-06-13 北京瑞卓喜投科技发展有限公司 顺序型多维拓展的区块链的生成方法及***
CN106909605A (zh) * 2016-12-29 2017-06-30 北京瑞卓喜投科技发展有限公司 沿横向拓展的区块链的生成方法及***
CN111767337A (zh) * 2019-05-24 2020-10-13 北京沃东天骏信息技术有限公司 区块的验证方法、装置及设备
CN111209346A (zh) * 2020-04-24 2020-05-29 腾讯科技(深圳)有限公司 一种区块链数据归档方法、装置和计算机可读存储介质

Also Published As

Publication number Publication date
CN113297214A (zh) 2021-08-24

Similar Documents

Publication Publication Date Title
CN109660356B (zh) 数据上链方法、装置、设备及计算机可读存储介质
CN109359091B (zh) 文件管理方法、装置、终端及计算机可读存储介质
WO2014067240A1 (zh) 一种恢复移动终端已删除sqlite文件的方法及装置
CN106354884B (zh) 一种基于分布式文件***的数据对象删除方法及装置
CN110019873B (zh) 人脸数据处理方法、装置及设备
CN110650164B (zh) 文件的上传方法、装置、终端以及计算机存储介质
CN113297214B (zh) 基于dag区块链的快照处理方法、设备及存储介质
US10122803B2 (en) Network data transmission method, device and system
CN102298546B (zh) 从磁盘上恢复被删除的jpg文件的方法及***
US10318385B2 (en) Service recovery using snapshots and interservice messages
CN114020522A (zh) 数据备份方法、装置、电子设备及***
CN113535226B (zh) 应用下载方法、终端、服务器、计算机设备以及存储介质
CN114637611A (zh) 基于消息队列的信息处理方法、装置及计算机设备
CN112286457B (zh) 对象重删方法、装置、电子设备及机器可读存储介质
CN111400091B (zh) 恢复出厂设置方法、恢复出厂设置装置及移动终端
CN112000321A (zh) 适用于三维检测软件的撤销和/或重做实现方法及装置
CN114282913B (zh) 一种多主体线上签约的方法及装置
CN115809200A (zh) 基于python的UI自动化用例调用方法及装置
CN113645316B (zh) 升级数据处理方法、上位机、下位机、设备及存储介质
CN108228813B (zh) 分布式***中副本数据库的删除方法及装置
CN114756624A (zh) 全量节点的数据处理方法、装置、设备及存储介质
CN108763395B (zh) 文件处理方法及相关产品
CN109857719B (zh) 分布式文件处理方法、装置、计算机设备以及存储介质
EP3739472A1 (en) Method and device for data processing, and computer device
CN111625500A (zh) 文件快照方法及装置、电子设备和存储介质

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
TR01 Transfer of patent right

Effective date of registration: 20240401

Address after: 410003 No. 816, Hemei building, building 1, No. 189, Sany Avenue, wujialing street, Kaifu District, Changsha City, Hunan Province

Patentee after: Hunan Chenhan Technology Co.,Ltd.

Country or region after: China

Address before: 410000 room g0190, headquarters building, Changsha Zhongdian Software Park, No. 39, Jianshan Road, high tech Development Zone, Changsha, Hunan

Patentee before: Hunan zhaowuxin Chain Technology Group Co.,Ltd.

Country or region before: China

TR01 Transfer of patent right