CN107526775A - 一种区块链数据归档的方法 - Google Patents

一种区块链数据归档的方法 Download PDF

Info

Publication number
CN107526775A
CN107526775A CN201710585792.7A CN201710585792A CN107526775A CN 107526775 A CN107526775 A CN 107526775A CN 201710585792 A CN201710585792 A CN 201710585792A CN 107526775 A CN107526775 A CN 107526775A
Authority
CN
China
Prior art keywords
data
request
snapshot
block
block chain
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.)
Granted
Application number
CN201710585792.7A
Other languages
English (en)
Other versions
CN107526775B (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.)
Hangzhou Qulian Technology Co Ltd
Original Assignee
Hangzhou Qulian Technology 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 Hangzhou Qulian Technology Co Ltd filed Critical Hangzhou Qulian Technology Co Ltd
Priority to CN201710585792.7A priority Critical patent/CN107526775B/zh
Publication of CN107526775A publication Critical patent/CN107526775A/zh
Application granted granted Critical
Publication of CN107526775B publication Critical patent/CN107526775B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/11File system administration, e.g. details of archiving or snapshots
    • G06F16/128Details of file system snapshots on the file-level, e.g. snapshot creation, administration, deletion
    • 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

Abstract

本发明公开了一种区块链数据归档的方法。区块链数据归档方法分为两个步骤:数据快照和数据转储。数据快照指系统管理员向一个区块链节点发起制作快照请求,区块链节点接收到该请求后,将本地维护的账本数据进行备份,与此同时对账本数据进行全量的哈希计算,将结果作为元数据一并存储;完成数据快照后,系统管理员可以基于一个快照点进行数据转储,将区块高度小于快照点区块高度的区块数据,以及相关的交易数据、回执数据、账本修改日志数据、非法交易记录数据等进行转储,完成数据归档。

Description

一种区块链数据归档的方法
技术领域
本发明涉及区块链技术、块链式存储技术,去中心化的区块链CA证书体系,尤其涉及一种区块链数据归档的方法。
背景技术
区块链技术,区块链是一种新型去中心化协议,能安全地存储数字货币交易或其他数据,信息不可伪造和篡改,区块链上的交易确认由区块链上的所有节点共同完成,由共识算法保证其一致性,区块链上维护一个公共的账本,公共账本位于存储区块上任何节点可见,从而保证其不可伪造和篡改。
块链式的区块链数据结构是区块链账本中的重要数据结构,存储着核心交易信息。区块链是由包含交易信息的区块从后向前有序链接起来的数据结构。所有区块被从后向前有序地链接在这个链条里,每一个区块都指向其父区块。区块链经常被视为一个垂直的栈,第一个区块作为栈底的首区块,随后每个区块都被放置在其他区块之上。
随着区块链运行时间的增长,区块链的存储容量将呈线性增长,且这种数据的增长的速度甚至会超过存储介质容量增长的速度,因此,区块链数据存储将成为限制区块链技术发展的重要因素。如何解决区块链数据的存储问题是将区块链技术运用于实际的一项挑战。
发明内容
针对现有技术的不足,本发明提出一种区块链数据归档的方法,使整个区块链系统能在不停机情况下,进行动态的数据归档。
本发明的目的是通过以下技术方案来实现的:
一种区块链数据归档的方法,包括如下步骤:
(1)发起制作快照请求:系统管理员向区块链节点发起制作数据快照请求,该请求包括进行数据快照制作的区块高度,与此同时区块链节点返回一个随机字符串作为快照的标号;
(2)检查制作数据快照请求的合法性:
首先通过CA证书检查请求发起者的身份:若发起者不拥有进行快照制作的权限,则直接将该请求视为非法请求;
其次检查请求内容的正确性:
若该请求为即时触发类请求,即要求进行数据快照制作的区块高度值为0;或该请求为条件触发类请求,且条件合理,即要求进行快照制作的区块高度大于本地区块链最新的区块高度,则将这两类请求视为合法请求;否则均视为非法请求;
合法请求中,若为即时触发类请求,则立即进行处理,若为条件触发类请求,暂时缓存请求,等待条件触发;
(3)执行数据快照请求:对账本数据中的合约账户元数据、合约变量数据、合约代码数据、Merkle树数据进行备份,生成一份潜在的创世状态数据;对备份的账本数据进行全量的哈希计算,与相应区块头中维护的账本哈希值进行比较,确定当前备份的账本数据是正确的;写入当前快照的元数据,包括相应的区块高度、相应的区块哈希、账本哈希值、日期、所属分区;
(4)发起数据转储请求:系统管理员向区块链节点发起制作数据转储请求,请求包括步骤1)中返回的数据快照标号;
(5)检查数据转储请求的合法性:首先通过CA证书对请求的发起者身份进行检查:若发起者不拥有进行数据转储的权限,则将该请求视为非法请求;其次对请求内容进行检查:若区块链节点存有指定的快照数据,则请求合法;否则请求非法;
(6)执行数据转储请求:将区块链节点中自创世区块起,截止快照点区块高度范围内的区块数据、交易数据、回执数据、非法交易数据、账本修改日志数据从线上数据库转储至归档数据库;
7)创世状态变迁:将区块链节点的创世区块高度更改为快照点的区块高度,将快照点的账本数据视作新的创世状态。
本发明的有益效果是:本发明应用于联盟链背景下的区块链网络上,即保证了RBFT算法的完备性,区块链数据的连续性,同时又提供了控制区块链数据存储容量的有效机制,是区块链技术的大突破。对于传统区块链,区块数据不断累加,所需求的存储容量会不停增加,是区块链应用的一大痛点。而我们提出的区块链数据归档功能则解决了这一问题,使整个区块链节点在不停机的前提下能够优雅地完成数据归档。
附图说明
图1是区块链数据归档流程图;
图2是快照内容结构图。
具体实施方式
下面根据附图和具体实施例详细描述本发明,本发明的目的和效果将变得更加明显。
如图1所述,一种区块链数据归档的方法,包括如下步骤:
(1)发起制作快照请求:系统管理员向区块链节点发起制作数据快照请求,该请求包括进行数据快照制作的区块高度,与此同时区块链节点返回一个长度为32的随机字符串作为快照的标号;
(2)检查制作数据快照请求的合法性:
首先通过CA证书检查请求发起者的身份:若发起者不拥有进行快照制作的权限,则直接将该请求视为非法请求;
其次检查请求内容正确性:若该请求为即时触发类请求,即要求进行数据快照制作的区块高度值为0;或该请求为条件触发类请求,且条件合理,即要求进行快照制作的区块高度大于本地区块链最新的区块高度,则将这两类请求视为合法请求;否则均视为非法请求;
合法请求中,若为即时触发类请求,则立即进行处理,若为条件触发类请求,暂时缓存请求,等待条件触发;
(3)执行数据快照请求:对账本数据中的合约账户元数据、合约变量数据、合约代码数据、Merkle树数据进行备份,生成一份潜在的创世状态数据;对备份的账本数据进行全量的哈希计算,与相应区块头中维护的账本哈希值进行比较,确定当前备份的账本数据是正确的;写入当前快照的元数据,包括相应的区块高度、相应的区块哈希、账本哈希值、日期、所属分区,如图2所述;
由于账本状态是随着交易的执行不断地进行状态变迁所得,倘若不保留快照点的账本状态而直接进行数据归档,会导致区块链节点之后无法通过交易重放的方式得到一份与区块链网络所维护的相一致的账本数据,在此阐明了进行数据快照的必要性。
(4)发起数据转储请求:系统管理员向区块链节点发起制作数据转储请求,请求包括步骤1)中返回的数据快照标号;
(5)检查数据转储请求的合法性:首先通过CA证书对请求的发起者身份进行检查:若发起者不拥有进行数据转储的权限,则将该请求视为非法请求;其次对请求内容进行检查:若区块链节点存有指定的快照数据,则请求合法;否则请求非法;
(6)执行数据转储请求:将区块链节点中自创世区块起,截止快照点区块高度范围内的区块数据、交易数据、回执数据、非法交易数据、账本修改日志数据从线上数据库转储至归档数据库;
7)创世状态变迁:将区块链节点的创世区块高度更改为快照点的区块高度,将快照点的账本数据视作新的创世状态。为了确保RBFT的完备性,除非再次发生创世状态变迁,否则该快照数据不允许被删除。此举是为了保证区块链数据的连续性,即在当前的创世状态的基础上,利用连续的区块数据,进行交易重放,能够得到一份被区块链网络公认的最新的账本数据,在此阐明了进行创世状态变迁的必要性。

Claims (1)

1.一种区块链数据归档的方法,包括如下步骤:
(1)发起制作快照请求:系统管理员向区块链节点发起制作数据快照请求,该请求包括进行数据快照制作的区块高度,与此同时区块链节点返回一个随机字符串作为快照的标号;
(2)检查制作数据快照请求的合法性:
首先通过CA证书检查请求发起者的身份:若发起者不拥有进行快照制作的权限,则直接将该请求视为非法请求;
其次检查请求内容的正确性:
若该请求为即时触发类请求,即要求进行数据快照制作的区块高度值为0;或该请求为条件触发类请求,且条件合理,即要求进行快照制作的区块高度大于本地区块链最新的区块高度,则将这两类请求视为合法请求;否则均视为非法请求;
合法请求中,若为即时触发类请求,则立即进行处理,若为条件触发类请求,暂时缓存请求,等待条件触发;
(3)执行数据快照请求:对账本数据中的合约账户元数据、合约变量数据、合约代码数据、Merkle树数据进行备份,生成一份潜在的创世状态数据;对备份的账本数据进行全量的哈希计算,与相应区块头中维护的账本哈希值进行比较,确定当前备份的账本数据是正确的;写入当前快照的元数据,包括相应的区块高度、相应的区块哈希、账本哈希值、日期、所属分区。
(4)发起数据转储请求:系统管理员向区块链节点发起制作数据转储请求,请求包括步骤1)中返回的数据快照标号;
(5)检查数据转储请求的合法性:首先通过CA证书对请求的发起者身份进行检查:若发起者不拥有进行数据转储的权限,则将该请求视为非法请求;其次对请求内容进行检查:若区块链节点存有指定的快照数据,则请求合法;否则请求非法;
(6)执行数据转储请求:将区块链节点中自创世区块起,截止快照点区块高度范围内的区块数据、交易数据、回执数据、非法交易数据、账本修改日志数据从线上数据库转储至归档数据库;
7)创世状态变迁:将区块链节点的创世区块高度更改为快照点的区块高度,将快照点的账本数据视作新的创世状态。
CN201710585792.7A 2017-07-18 2017-07-18 一种区块链数据归档的方法 Active CN107526775B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710585792.7A CN107526775B (zh) 2017-07-18 2017-07-18 一种区块链数据归档的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710585792.7A CN107526775B (zh) 2017-07-18 2017-07-18 一种区块链数据归档的方法

Publications (2)

Publication Number Publication Date
CN107526775A true CN107526775A (zh) 2017-12-29
CN107526775B CN107526775B (zh) 2020-06-16

Family

ID=60749132

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710585792.7A Active CN107526775B (zh) 2017-07-18 2017-07-18 一种区块链数据归档的方法

Country Status (1)

Country Link
CN (1) CN107526775B (zh)

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108241743A (zh) * 2018-01-04 2018-07-03 杭州复杂美科技有限公司 一种区块链快照方法
CN108805570A (zh) * 2018-06-01 2018-11-13 腾讯科技(深圳)有限公司 数据处理方法、装置及存储介质
CN108924107A (zh) * 2018-06-21 2018-11-30 桂林电子科技大学 一种区块链远程医疗数据调用可验证方法
CN109063183A (zh) * 2018-08-27 2018-12-21 众安信息技术服务有限公司 在区块链节点处进行信息处理的方法及装置
CN109543455A (zh) * 2018-11-06 2019-03-29 联动优势科技有限公司 一种区块链的数据归档方法及装置
CN109635575A (zh) * 2018-11-30 2019-04-16 无锡井通网络科技有限公司 智能合约签订方法及装置
CN109656873A (zh) * 2018-11-02 2019-04-19 平安科技(深圳)有限公司 基于区块链的数据归档方法、装置及终端设备
CN109885423A (zh) * 2019-01-04 2019-06-14 上海七印信息科技有限公司 一种区块链源数据备份方法
CN110472972A (zh) * 2018-05-09 2019-11-19 厦门本能管家科技有限公司 一种区块链存储数据同步快照方法及系统
CN110489495A (zh) * 2019-10-21 2019-11-22 杭州趣链科技有限公司 一种基于修改集的区块链快照制作方法
CN110866004A (zh) * 2018-12-29 2020-03-06 厦门安妮股份有限公司 一种核验区块链归档数据是否被篡改的方法
CN111080290A (zh) * 2019-11-19 2020-04-28 杭州趣链科技有限公司 一种基于账户分类的区块链交易执行与数据存储方法
CN111209341A (zh) * 2020-01-07 2020-05-29 北京众享比特科技有限公司 区块链的数据存储方法、装置、设备及介质
CN111316256A (zh) * 2019-11-29 2020-06-19 支付宝(杭州)信息技术有限公司 拍摄区块链数据的快照
WO2020098818A3 (en) * 2019-11-29 2020-09-24 Alipay (Hangzhou) Information Technology Co., Ltd. Taking snapshots of blockchain data
CN111767168A (zh) * 2020-06-23 2020-10-13 江苏荣泽信息科技股份有限公司 基于区块链的便于数据回溯的存储系统
CN111897498A (zh) * 2018-07-27 2020-11-06 创新先进技术有限公司 区块链数据的多级存储方法和装置
CN112015817A (zh) * 2020-08-28 2020-12-01 支付宝(杭州)信息技术有限公司 区块链数据的处理方法、装置及设备
CN113220665A (zh) * 2021-05-20 2021-08-06 成都质数斯达克科技有限公司 一种区块链数据归档方法、装置、电子设备及可读存储介质
WO2021213065A1 (zh) * 2020-04-24 2021-10-28 腾讯科技(深圳)有限公司 一种区块链数据归档方法、装置和计算机可读存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050004899A1 (en) * 2003-04-29 2005-01-06 Adrian Baldwin Auditing method and service
CN101446966A (zh) * 2008-12-31 2009-06-03 中国建设银行股份有限公司 数据存储方法及系统
CN105808633A (zh) * 2016-01-08 2016-07-27 平安科技(深圳)有限公司 数据归档方法和系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050004899A1 (en) * 2003-04-29 2005-01-06 Adrian Baldwin Auditing method and service
CN101446966A (zh) * 2008-12-31 2009-06-03 中国建设银行股份有限公司 数据存储方法及系统
CN105808633A (zh) * 2016-01-08 2016-07-27 平安科技(深圳)有限公司 数据归档方法和系统

Cited By (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108241743A (zh) * 2018-01-04 2018-07-03 杭州复杂美科技有限公司 一种区块链快照方法
CN108241743B (zh) * 2018-01-04 2020-05-12 杭州复杂美科技有限公司 一种区块链快照方法
CN110472972B (zh) * 2018-05-09 2022-12-20 本无链科技(深圳)有限公司 一种区块链存储数据同步快照方法及系统
CN110472972A (zh) * 2018-05-09 2019-11-19 厦门本能管家科技有限公司 一种区块链存储数据同步快照方法及系统
CN108805570A (zh) * 2018-06-01 2018-11-13 腾讯科技(深圳)有限公司 数据处理方法、装置及存储介质
CN108805570B (zh) * 2018-06-01 2021-05-25 腾讯科技(深圳)有限公司 数据处理方法、装置及存储介质
CN108924107B (zh) * 2018-06-21 2020-08-21 桂林电子科技大学 一种区块链远程医疗数据调用可验证方法
CN108924107A (zh) * 2018-06-21 2018-11-30 桂林电子科技大学 一种区块链远程医疗数据调用可验证方法
CN111897498A (zh) * 2018-07-27 2020-11-06 创新先进技术有限公司 区块链数据的多级存储方法和装置
CN109063183B (zh) * 2018-08-27 2021-01-12 众安信息技术服务有限公司 在区块链节点处进行信息处理的方法及装置
CN109063183A (zh) * 2018-08-27 2018-12-21 众安信息技术服务有限公司 在区块链节点处进行信息处理的方法及装置
CN109656873A (zh) * 2018-11-02 2019-04-19 平安科技(深圳)有限公司 基于区块链的数据归档方法、装置及终端设备
CN109656873B (zh) * 2018-11-02 2023-04-14 平安科技(深圳)有限公司 基于区块链的数据归档方法、装置及终端设备
CN109543455B (zh) * 2018-11-06 2021-07-13 联动优势科技有限公司 一种区块链的数据归档方法及装置
CN109543455A (zh) * 2018-11-06 2019-03-29 联动优势科技有限公司 一种区块链的数据归档方法及装置
CN109635575A (zh) * 2018-11-30 2019-04-16 无锡井通网络科技有限公司 智能合约签订方法及装置
CN110866004A (zh) * 2018-12-29 2020-03-06 厦门安妮股份有限公司 一种核验区块链归档数据是否被篡改的方法
CN109885423B (zh) * 2019-01-04 2023-05-23 上海七印信息科技有限公司 一种区块链源数据备份方法
CN109885423A (zh) * 2019-01-04 2019-06-14 上海七印信息科技有限公司 一种区块链源数据备份方法
CN110489495A (zh) * 2019-10-21 2019-11-22 杭州趣链科技有限公司 一种基于修改集的区块链快照制作方法
CN111080290B (zh) * 2019-11-19 2023-05-26 杭州趣链科技有限公司 一种基于账户分类的区块链交易执行与数据存储方法
CN111080290A (zh) * 2019-11-19 2020-04-28 杭州趣链科技有限公司 一种基于账户分类的区块链交易执行与数据存储方法
WO2020098818A3 (en) * 2019-11-29 2020-09-24 Alipay (Hangzhou) Information Technology Co., Ltd. Taking snapshots of blockchain data
US11100094B2 (en) 2019-11-29 2021-08-24 Alipay (Hangzhou) Information Technology Co., Ltd. Taking snapshots of blockchain data
CN111316256A (zh) * 2019-11-29 2020-06-19 支付宝(杭州)信息技术有限公司 拍摄区块链数据的快照
CN111209341B (zh) * 2020-01-07 2023-03-14 北京众享比特科技有限公司 区块链的数据存储方法、装置、设备及介质
CN111209341A (zh) * 2020-01-07 2020-05-29 北京众享比特科技有限公司 区块链的数据存储方法、装置、设备及介质
WO2021213065A1 (zh) * 2020-04-24 2021-10-28 腾讯科技(深圳)有限公司 一种区块链数据归档方法、装置和计算机可读存储介质
JP7330596B2 (ja) 2020-04-24 2023-08-22 ▲騰▼▲訊▼科技(深▲セン▼)有限公司 ブロックチェーンデータのアーカイブ方法、ブロックチェーンデータのアーカイブ装置、電子機器、及びコンピュータプログラム
CN111767168B (zh) * 2020-06-23 2022-07-22 江苏荣泽信息科技股份有限公司 基于区块链的便于数据回溯的存储系统
CN111767168A (zh) * 2020-06-23 2020-10-13 江苏荣泽信息科技股份有限公司 基于区块链的便于数据回溯的存储系统
CN112015817A (zh) * 2020-08-28 2020-12-01 支付宝(杭州)信息技术有限公司 区块链数据的处理方法、装置及设备
CN113220665A (zh) * 2021-05-20 2021-08-06 成都质数斯达克科技有限公司 一种区块链数据归档方法、装置、电子设备及可读存储介质
CN113220665B (zh) * 2021-05-20 2023-10-20 成都质数斯达克科技有限公司 一种区块链数据归档方法、装置、电子设备及可读存储介质

Also Published As

Publication number Publication date
CN107526775B (zh) 2020-06-16

Similar Documents

Publication Publication Date Title
CN107526775A (zh) 一种区块链数据归档的方法
CN110493148B (zh) 一种区块处理、区块共识和区块同步方法及装置
CN110868440B (zh) 区块链公链
CN107728941B (zh) 一种区块链数据压缩方法及系统
CN107239954B (zh) 一种提高区块产生速度的方法及装置
CN109299336A (zh) 数据备份方法、装置、存储介质及计算设备
CN108829350A (zh) 基于区块链的数据迁移方法和装置
TW202107374A (zh) 基於區塊鏈的電子票據作廢方法及裝置、電子設備
US10963854B2 (en) Blockchain-based electronic bill reimbursement method, apparatus, and electronic device
CN108241743A (zh) 一种区块链快照方法
CN111444192B (zh) 块链式账本中全局状态的哈希的生成方法、装置及设备
CN111444196A (zh) 块链式账本中全局状态的哈希的生成方法、装置及设备
CN106951375A (zh) 在存储系统中删除快照卷的方法及装置
CN110930152B (zh) 一种基于区块链的数据处理方法及相关设备
TW202107373A (zh) 基於區塊鏈的電子票據報銷方法及裝置、電子設備
CN111198888A (zh) 一种数字货币冠字号码动态生成及监管的方法和系统
CN108512649A (zh) 区块链的反向哈希链接的处理方法及装置
CN109274728A (zh) 区块链数据生命周期管理方法
CN109146747A (zh) 一种公益项目信息监管方法、平台、系统、设备及介质
CN109933564A (zh) 基于链表和N-ary树结构实现快速回滚的文件系统管理方法、装置、终端、介质
CN113886135A (zh) 一种区块链数据的恢复方法和装置
CN108833133A (zh) 基于云计算网络的网络配置管理方法、装置和存储介质
CN108459929A (zh) 一种基于云计算的数据备份方法
CN111031100A (zh) 一种扩展的区块链存储方法、系统及介质
CN110033367A (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