CN107944034A - 一种基于区块链的数据非差异化方法 - Google Patents
一种基于区块链的数据非差异化方法 Download PDFInfo
- Publication number
- CN107944034A CN107944034A CN201711329965.5A CN201711329965A CN107944034A CN 107944034 A CN107944034 A CN 107944034A CN 201711329965 A CN201711329965 A CN 201711329965A CN 107944034 A CN107944034 A CN 107944034A
- Authority
- CN
- China
- Prior art keywords
- data
- block
- data source
- write
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
- G06F16/1834—Distributed file systems implemented based on peer-to-peer networks, e.g. gnutella
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/13—File access structures, e.g. distributed indices
- G06F16/137—Hash-based
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/178—Techniques for file synchronisation in file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/1805—Append-only file systems, e.g. using logs or journals to store data
- G06F16/1815—Journaling file systems
Abstract
本发明区块链技术领域,尤其是一种基于区块链的数据非差异化方法。本发明所述的方法由日志链和数据源端实现;日志链负责所有接入数据源日志的记录并提供同步数据的消息机制,数据源端维护一个同步进程,用以从日志链中同步数据;当数据源有更改操作时,先对本数据源进行更新,然后区块进行写入日志,得到写入成功的反馈后,更新当前的区块高度数值,并对更改操作进行消息广播。本发明主要利用区块链的分布式共享库的本质特征来解决数据非差异化的问题,为数据的同步提供良好高效的同步机制,可以应用于分布数据源之间的数据同步。
Description
技术领域
本发明区块链技术领域,尤其是一种基于区块链的数据非差异化方法。
背景技术
区块链本质上是一个全局共享的数据库,区块链目前已经被广泛运用于各个领域,例如金融、证券、医疗、供应链等领域。区块链是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了特定的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链分为两种类型:一是公有链,二是私有链。基于区块链的数据非差异化方法运用的是私有链。区块链私有链有许多良好的特性:1、全局数据共享。除了私有信息被加密外,区块链的数据对所有人公开,任何人都可以通过公开的接口查询区块链数据,因此可以及时共享区块链中的数据。2、自治性。区块链采用基于协商一致的规范和协议使得整个系统中的所有结点能够在信任的环境自由安全的交换数据。3、信息不可篡改。一旦信息经过验证并添加至区块链,就会永久的存储起来,因此区块链的数据稳定性和可靠性极高,这对于日志的记录来说,具有较好的优势。
发明内容
本发明解决的技术问题在于提供一种基于区块链的数据非差异化方法,通过区块链全局共享的特质,为分布于不同地理位置的数据源同步提供操作日志记录,并且通过区块链不可篡改的特性,为数据的同步提供了安全保障,降低风险。
本发明解决上述技术问题的技术方案是:
所述的方法由日志链和数据源端实现;
所述的日志链负责所有接入数据源日志的记录并提供同步数据的消息机制,流程如下:
(1)某一数据源产生更新/添加/删除操作,这一操作被写入日志链,形成区块链数据;
(2)日志写入完毕后,对数据源进行唤醒更新同步数据;
(3)数据源接收到同步信号后,根据当前更新的区块高度数,对日志链进行数据的查找,并同步数据库数据;
所述的数据源端维护一个同步进程,用以从日志链中同步数据,其流程如下:
(1)守护进程监听日志链广播的同步信号;
(2)如果发现信号则锁定数据源的写操作,对其他数据源的同步进行屏蔽,使得数据能够安全写入,不会出现脏数据;
(3)更新数据源,同时更新日志链中的区块高度;
(4)解除对数据源的锁定操作;
(5)当数据源主动对自己的数据进行更新并且成功后,广播数据并写入日志区块。
所述的日志区块组成包括:(1)前一区块的哈希地址值;(2)区块高度;(3)默克尔树值;(4)操作的语句和数据源的操作类型,类型包括:更新、删除和添加操作;(5)区块创建者;(6)区块创建时间。
所述的日志区块创建是:
当数据源有更改操作时,先对本数据源进行更新,然后区块进行写入日志,得到写入成功的反馈后,更新当前的区块高度数值,并对更改操作进行消息广播;具体写入方法是:(一),区块尚未写满数据,这个时候可以延续本区块写入数据,并且直到写完数据,区块仍然未写满数据;(二),区块尚未写满数据,延续本区块写入数据,但是本区块被写满,仍没写完数据,此时,需要重新创建区块;(三),区块已写满数据,新建区块。
所述的数据查找是:按照逆序进行数据的查找,找到当前的数据源所更新到的高度;然后遍历此高度以后的数据。
本发明利用区块链来记录数据库的操作日志,并对各个数据库的操作日志进行共享,各个数据库根据日志对数据进行同步。系统整体的逻辑架构是由数据源和日志链组成,日志链提供数据的组织,在逻辑上可以认为日志链提供数据的读写功能,数据源对数据的更改操作广播并通知日志链写入数据。利用全局共享日志的方式,为分布于不同地理位置的数据源同步提供操作日志记录,解决了同时对多个数据源同步的问题;同时区块链的日志数据也具有不可窜改性,为数据的同步提供了安全保障,降低风险。
附图说明
下面结合附图对本发明进一步说明:
图1是本发明的逻辑架构图;
图2是本发明区块结构图;
图3是本发明的数据同步流程图。
具体实施方式
见图1、2和3所示,本发明整个系统在逻辑结构上由日志链和数据源同步客户端组成。日志链负责所有接入数据源日志的记录并提供同步数据的消息机制,日志链的流程如下:(1)某一数据源产生更新/添加/删除操作,这一操作被写入日志链,形成区块链数据;(2)日志写入完毕后,对数据源进行唤醒更新同步数据;(3)数据源接收到同步的信号后,根据当前更新的区块高度数,对日志链进行数据的查找,并同步数据库数据。
在数据源端,需要维护一个同步进程,用以从日志链中同步数据,其流程如下:(1)守护进程监听日志链广播的同步信号,如果发现信号后,执行第二步;(2)锁定数据源的写操作。对其他数据源的同步进行屏蔽,使得数据能够安全写入,不会出现脏数据;(3)更新数据源,同时更新日志链中的区块高度;(4)解除对数据源的锁定操作。(5)当数据源主动对自己的数据进行更新并且成功后,广播数据并写入日志区块。
日志区块的结构,如图2所示。由于这是区块链在数据源同步上的应用,应用于日志的共享,所以需要有特殊的数据结构,主要有利于数据的读和写操作。区块主要有一下几部分组成:(1)前一区块的哈希地址值;(2)区块高度;(3)默克尔树值;(4)操作的语句和数据源的操作类型,类型包括:更新、删除和添加操作;(5)区块创建者;(6)区块创建时间。
日志区块的创建。在这个系统中,区块信息由数据源节点创建而不是像比特币那样由工作量竞争胜出的结点创建,我们假设在系统内的每个节点都是诚实可靠的。当数据源有更改操作时,将会先对本数据源进行更新,然后区块进行写入日志,得到写入成功的反馈后,更新当前的区块高度数值,并对更改操作进行消息广播。在这里又分为三种情况:一是,区块尚未写满数据,这个时候可以延续本区块写入数据,并且直到写完数据,区块仍然未写满数据;二是,区块尚未写满数据,延续本区块写入数据,但是本区块被写满,仍没写完数据,此时,需要重新创建区块;三是,新建区块,是第二种情况的特殊情况。
数据查找。由于日志链是呈链式结构,而日志的更新是分步骤,分段进行的,更新的时间点离当前的时间点比较近,所以在高度查找的时候,可以按照逆序进行数据的查找。程序按照逆序找到当前的数据源所更新到的高度,然后遍历此高度以后的数据。
Claims (4)
1.一种基于区块链的数据非差异化方法,其特征在于:所述的方法由日志链和数据源端实现;
所述的日志链负责所有接入数据源日志的记录并提供同步数据的消息机制,流程如下:
(1)某一数据源产生更新/添加/删除操作,这一操作被写入日志链,形成区块链数据;
(2)日志写入完毕后,对数据源进行唤醒更新同步数据;
(3)数据源接收到同步信号后,根据当前更新的区块高度数,对日志链进行数据的查找,并同步数据库数据;
所述的数据源端维护一个同步进程,用以从日志链中同步数据,其流程如下:
(1)守护进程监听日志链广播的同步信号;
(2)如果发现信号则锁定数据源的写操作,对其他数据源的同步进行屏蔽,使得数据能够安全写入,不会出现脏数据;
(3)更新数据源,同时更新日志链中的区块高度;
(4)解除对数据源的锁定操作;
(5)当数据源主动对自己的数据进行更新并且成功后,广播数据并写入日志区块。
2.根据权利要求1所述的方法,其特征在于:
所述的日志区块组成包括:(1)前一区块的哈希地址值;(2)区块高度;(3)默克尔树值;(4)操作的语句和数据源的操作类型,类型包括:更新、删除和添加操作;(5)区块创建者;(6)区块创建时间。
3.根据权利要求2所述的方法,其特征在于:
所述的日志区块创建是:
当数据源有更改操作时,先对本数据源进行更新,然后区块进行写入日志,得到写入成功的反馈后,更新当前的区块高度数值,并对更改操作进行消息广播;具体写入方法是:(一),区块尚未写满数据,这个时候可以延续本区块写入数据,并且直到写完数据,区块仍然未写满数据;(二),区块尚未写满数据,延续本区块写入数据,但是本区块被写满,仍没写完数据,此时,需要重新创建区块;(三),区块已写满数据,新建区块。
4.根据权利要求1、2或3所述的方法,其特征在于:所述的数据查找是:按照逆序进行数据的查找,找到当前的数据源所更新到的高度;然后遍历此高度以后的数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711329965.5A CN107944034A (zh) | 2017-12-13 | 2017-12-13 | 一种基于区块链的数据非差异化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711329965.5A CN107944034A (zh) | 2017-12-13 | 2017-12-13 | 一种基于区块链的数据非差异化方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107944034A true CN107944034A (zh) | 2018-04-20 |
Family
ID=61942918
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711329965.5A Pending CN107944034A (zh) | 2017-12-13 | 2017-12-13 | 一种基于区块链的数据非差异化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107944034A (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108810112A (zh) * | 2018-05-27 | 2018-11-13 | 佛山市虚拟现实大数据产业研究院有限公司 | 一种市场监管区块链系统的节点同步方法及装置 |
CN108900505A (zh) * | 2018-06-28 | 2018-11-27 | 中国科学院软件研究所 | 一种基于区块链技术的集群审计管控方法 |
CN109063109A (zh) * | 2018-07-27 | 2018-12-21 | 电子科技大学 | 一种基于以太坊的数据查询系统 |
CN109189751A (zh) * | 2018-09-18 | 2019-01-11 | 平安科技(深圳)有限公司 | 基于区块链的数据同步方法及终端设备 |
CN110378694A (zh) * | 2018-05-21 | 2019-10-25 | 腾讯科技(深圳)有限公司 | 区块链数据处理方法、装置、计算机设备和存储介质 |
CN110609872A (zh) * | 2019-09-20 | 2019-12-24 | 北京海益同展信息科技有限公司 | 用于同步节点数据的方法和装置 |
CN110622149A (zh) * | 2018-11-30 | 2019-12-27 | 阿里巴巴集团控股有限公司 | 基于二进制日志复制的区块链数据关系结构方案 |
CN111917761A (zh) * | 2020-07-28 | 2020-11-10 | 安徽高山科技有限公司 | 一种基于区块链云计算的数据安全保护方法 |
CN112732833A (zh) * | 2021-01-08 | 2021-04-30 | 西安交通大学 | 一种获取区块链信息的通用数据桥架构和设计方法 |
WO2023206142A1 (zh) * | 2022-04-27 | 2023-11-02 | 西门子股份公司 | 数据同步方法、装置、计算机设备和存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105404701A (zh) * | 2015-12-31 | 2016-03-16 | 浙江图讯科技股份有限公司 | 一种基于对等网络的异构数据库同步方法 |
US20170091726A1 (en) * | 2015-09-07 | 2017-03-30 | NXT-ID, Inc. | Low bandwidth crypto currency transaction execution and synchronization method and system |
CN106598490A (zh) * | 2016-11-25 | 2017-04-26 | 深圳前海微众银行股份有限公司 | 区块链数据的访问方法和区块链管理系统 |
-
2017
- 2017-12-13 CN CN201711329965.5A patent/CN107944034A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170091726A1 (en) * | 2015-09-07 | 2017-03-30 | NXT-ID, Inc. | Low bandwidth crypto currency transaction execution and synchronization method and system |
CN105404701A (zh) * | 2015-12-31 | 2016-03-16 | 浙江图讯科技股份有限公司 | 一种基于对等网络的异构数据库同步方法 |
CN106598490A (zh) * | 2016-11-25 | 2017-04-26 | 深圳前海微众银行股份有限公司 | 区块链数据的访问方法和区块链管理系统 |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110378694A (zh) * | 2018-05-21 | 2019-10-25 | 腾讯科技(深圳)有限公司 | 区块链数据处理方法、装置、计算机设备和存储介质 |
CN110378694B (zh) * | 2018-05-21 | 2021-01-12 | 腾讯科技(深圳)有限公司 | 区块链数据处理方法、装置、计算机设备和存储介质 |
CN108810112B (zh) * | 2018-05-27 | 2020-10-27 | 佛山市虚拟现实大数据产业研究院有限公司 | 一种市场监管区块链系统的节点同步方法及装置 |
CN108810112A (zh) * | 2018-05-27 | 2018-11-13 | 佛山市虚拟现实大数据产业研究院有限公司 | 一种市场监管区块链系统的节点同步方法及装置 |
CN108900505A (zh) * | 2018-06-28 | 2018-11-27 | 中国科学院软件研究所 | 一种基于区块链技术的集群审计管控方法 |
CN109063109A (zh) * | 2018-07-27 | 2018-12-21 | 电子科技大学 | 一种基于以太坊的数据查询系统 |
CN109189751B (zh) * | 2018-09-18 | 2023-05-26 | 平安科技(深圳)有限公司 | 基于区块链的数据同步方法及终端设备 |
CN109189751A (zh) * | 2018-09-18 | 2019-01-11 | 平安科技(深圳)有限公司 | 基于区块链的数据同步方法及终端设备 |
CN110622149A (zh) * | 2018-11-30 | 2019-12-27 | 阿里巴巴集团控股有限公司 | 基于二进制日志复制的区块链数据关系结构方案 |
CN110609872A (zh) * | 2019-09-20 | 2019-12-24 | 北京海益同展信息科技有限公司 | 用于同步节点数据的方法和装置 |
CN110609872B (zh) * | 2019-09-20 | 2021-03-05 | 北京海益同展信息科技有限公司 | 用于同步节点数据的方法和装置 |
WO2021051761A1 (zh) * | 2019-09-20 | 2021-03-25 | 北京海益同展信息科技有限公司 | 用于同步节点数据的方法和装置 |
CN111917761A (zh) * | 2020-07-28 | 2020-11-10 | 安徽高山科技有限公司 | 一种基于区块链云计算的数据安全保护方法 |
CN111917761B (zh) * | 2020-07-28 | 2022-09-13 | 安徽高山科技有限公司 | 一种基于区块链云计算的数据安全保护方法 |
CN112732833A (zh) * | 2021-01-08 | 2021-04-30 | 西安交通大学 | 一种获取区块链信息的通用数据桥架构和设计方法 |
WO2023206142A1 (zh) * | 2022-04-27 | 2023-11-02 | 西门子股份公司 | 数据同步方法、装置、计算机设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107944034A (zh) | 一种基于区块链的数据非差异化方法 | |
US11171774B2 (en) | System for synchronizing a cryptographic key state through a blockchain | |
Saini et al. | Security vulnerabilities in Information communication technology: Blockchain to the rescue (A survey on Blockchain Technology) | |
US20040243571A1 (en) | Method and system for detecting object inconsistency in a loosely consistent replicated directory service | |
US20050238175A1 (en) | Management of the retention and/or discarding of stored data | |
US20020111133A1 (en) | Data processing appliance | |
JP6617253B1 (ja) | 文書管理システム | |
US20070195959A1 (en) | Synchronizing encrypted data without content decryption | |
CN105516117A (zh) | 一种基于云计算的电力数据安全存储方法 | |
US20150242641A1 (en) | Validating a metadata tree using a metadata integrity validator | |
US20190286614A1 (en) | Synchronizing content | |
JP7159348B2 (ja) | 誤り訂正符号に基づく動的なブロックチェーンデータの記憶 | |
CN109254999B (zh) | 一种区块链的数据处理方法、装置、设备及介质 | |
CN103414555A (zh) | 阵列基于io块加密的密钥管理方法 | |
Damiani et al. | iPrivacy: a distributed approach to privacy on the cloud | |
CN112765683B (zh) | 区块链的区块数据结构、存储介质及电子设备 | |
Goncalves et al. | DottedDB: Anti-entropy without merkle trees, deletes without tombstones | |
CN1604521A (zh) | 具备加密数据变换装置的服务器 | |
CN111400779A (zh) | 高维数据加密方法及系统 | |
Mullender | Introduction to distributed systems | |
Bagay | Blockchain-based dns building | |
CN114780568B (zh) | 一种分布式多方数据一致性更新方法和系统 | |
Mullen | CapsuleDB: A Secure Key-Value Store for the Global Data Plane | |
Kang | S2D2: A framework for scalable and secure optimistic replication | |
CN112951357A (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 | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20180420 |