CN111177265A - 一种区块链分域方法 - Google Patents
一种区块链分域方法 Download PDFInfo
- Publication number
- CN111177265A CN111177265A CN201911380668.2A CN201911380668A CN111177265A CN 111177265 A CN111177265 A CN 111177265A CN 201911380668 A CN201911380668 A CN 201911380668A CN 111177265 A CN111177265 A CN 111177265A
- Authority
- CN
- China
- Prior art keywords
- data
- block chain
- block
- user
- abstract
- 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
Images
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/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Bioethics (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种区块链分域方法,属于区块链技术领域,包括以下步骤:S1、初始化和区块同步:数据存储服务提供者执行区块链初始化脚本文件启动节点,生成创世块,等待对应用户实体的区块链节点接入,用户启动区块链节点接入联盟链,接入网络后,节点开启监听线程,等待网络中对等节点广播数据,并检查本身区块是否是最新的;S2、部署智能合约,S3、数据上传以及S4、数据完整性校验:用户首先获取到密文数据,再直接与区块链节点通信获取摘要数据,用户在本地计算密文数据的摘要与从区块链获取到的摘要进行比对,相同则说明数据没有被篡改。通过接入验证、数据加密和数据完整性校验使得区块链数据在分域存储的时候更加安全可靠。
Description
技术领域
本发明涉及区块链技术领域,特别涉及一种区块链分域方法。
背景技术
随着数字货币的火热,其背后的底层技术--区块链技术也逐渐为人所知,通过区块链技术可以维护一个去中心化、去信任的账本,允许在没有可信任的第三方情况下完成交易,区块链底层基本结构是链式结构,根据区块声生的时间先后顺序由一个个区块串联起来,每个区块中存储了前一个区块的哈希值、时间戳和不可篡改的交易数据,区块链分为公有链、联盟链和私有链三种类型,公有链中的节点可以自由的加入或退出网络具有很高的去中心化程度;私有链完全由某一个组织控制,常被用于机构内部;联盟链介于私有链和公有链之间,每个节点对应不同的组织或机构,共同维护区块链运行,实现部分去中心化。
传统的区块链数据存储方式仍存在一定的缺陷,随着存储在区块链中的数据越来越多,每个验证节点的大小也越来越大,因此,将数据直接存储在区块链中会对节点造成较大的负担,区块链中每个验证节点都存储了相同的数据,数据的冗余度也会过高;区块链系统通常对区块大小有一定的限制,如比特币系统每个区块大小限定为1M,以太坊通过gaslimit间接限制了每个区块的大小,因此,无法将较大的文件直接存储在区块链中,并且中心化的数据存储方式由于管理者有较大的权限以及可能恶意冒充第三方审计进行数据完整性校验,因此这种方式存在数据被篡改和泄露的威胁。
发明内容
本发明的目的就在于为了解决上述区块链数据存储时存在数据被篡改和泄露的威胁的可能以及直接将数据存储在区块链中会受区块大小的限制以及存储大量数据时会对节点造成较大的存储负担的问题提出一种区块链分域方法,具有数据链数据分布到若干个节点中存储,减少节点压力,以及通过接入验证、数据加密和数据完整性校验使得区块链数据在分域存储的时候更加安全可靠的优点。
本发明通过以下技术方案来实现上述目的,一种区块链分域方法,包括以下步骤:
S1、初始化和区块同步:数据存储服务提供者执行区块链初始化脚本文件启动节点,生成创世块,等待对应用户实体的区块链节点接入,用户启动区块链节点接入联盟链,接入网络后,节点开启监听线程,等待网络中对等节点广播数据,并检查本身区块是否是最新的,如果不是则从其他节点同步区块;
S2、部署智能合约:将编写的智能合约编译成二进制码,再部署到区块链网络中,用户发送访问数据、校验数据完整性、查询数据访问记录操作时都需要构造交易数据,并使用以太坊账号私钥对交易数据签名;
S3、数据上传:用户在本地通过对称加密方式将数据加密为密文,再发送到基础服务平台,其中对称加密密钥由用户自己管理,基础服务平台发起交易调用智能合约,将数字摘要和文件地址等信息作为元数据存储在区块链网络中;
S4、数据完整性校验:用户质疑基础服务平台执行数据完整性校验的正确性时,用户首先获取到密文数据,再直接与区块链节点通信获取摘要数据,用户在本地计算密文数据的摘要与从区块链获取到的摘要进行比对,相同则说明数据没有被篡改。
优选的,所述步骤S1中用户区块链节点接入联盟链时需要身份验证。
优选的,所述步骤S1中节点监听到广播的交易或区块数据后,如果验证交易或区块的签名有效,则进一步处理数据并转发到其他对等节点。
优选的,所述步骤S3中基础服务平台根据收到的数据生成文件,计算数据摘要值,再将文件存储到Ceph集群中,获得文件地址。
优选的,所述Ceph集群为分布式文件系统。
优选的,所述步骤S4中数据完整性校验执行条件还包括一种情况,当用户访问数据时基础服务平台会对获取到密文数据执行完整性校验。
与现有技术相比,本发明的有益效果是:通过接入验证、数据加密和数据完整性校验使得区块链数据在分域存储的时候更加安全可靠,接入验证是通过用户接入网络后,节点开启监听线程,等待网络中对等节点广播数据,并检查本身区块是否是最新的,如果不是则从其他节点同步区块,从而实现区块链的安全分域;数据加密是通过先部署智能合约,以智能合约为基础建立区块链的安全网络,保证用户在向Ceph集群上传文件的时候,数据可以被加密上传,而智能合约搭建的安全网络环境也提高了区块链网络的安全性;数据完整性校验是通过两种情况来验证区块链数据是否具有安全性,一种是当用户访问数据时基础服务平台会对获取到密文数据执行完整性校验,另一种是若用户质疑基础服务平台执行数据完整性校验的正确性,这种情况下,用户首先获取到密文数据,再直接与区块链节点通信获取摘要数据,用户在本地计算密文数据的摘要与从区块链获取到的摘要进行比对,相同则说明数据没有被篡改。
附图说明
图1为本发明的区块链数据安全分域存储的流程示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参考图1所示,一种区块链分域方法,包括以下步骤:
S1、初始化和区块同步:数据存储服务提供者执行区块链初始化脚本文件启动节点,生成创世块,等待对应用户实体的区块链节点接入,用户启动区块链节点接入联盟链,接入网络后,节点开启监听线程,等待网络中对等节点广播数据,并检查本身区块是否是最新的,如果不是则从其他节点同步区块;
S2、部署智能合约:将编写的智能合约编译成二进制码,再部署到区块链网络中,用户发送访问数据、校验数据完整性、查询数据访问记录操作时都需要构造交易数据,并使用以太坊账号私钥对交易数据签名;
S3、数据上传:用户在本地通过对称加密方式将数据加密为密文,再发送到基础服务平台,其中对称加密密钥由用户自己管理,基础服务平台发起交易调用智能合约,将数字摘要和文件地址等信息作为元数据存储在区块链网络中;
S4、数据完整性校验:用户质疑基础服务平台执行数据完整性校验的正确性时,用户首先获取到密文数据,再直接与区块链节点通信获取摘要数据,用户在本地计算密文数据的摘要与从区块链获取到的摘要进行比对,相同则说明数据没有被篡改。
所述步骤S1中用户区块链节点接入联盟链时需要身份验证,所述步骤S1中节点监听到广播的交易或区块数据后,如果验证交易或区块的签名有效,则进一步处理数据并转发到其他对等节点,所述步骤S3中基础服务平台根据收到的数据生成文件,计算数据摘要值,再将文件存储到Ceph集群中,获得文件地址,所述Ceph集群为分布式文件系统,所述步骤S4中数据完整性校验执行条件还包括一种情况,当用户访问数据时基础服务平台会对获取到密文数据执行完整性校验。
上述的完整性校验流程包括:
用户获取到某条数据m,在本地计算摘要值digest1=Hash(m);
用户构造数据完整性验证交易,使用私钥对交易签名,并直接将交易请求发送到区块链网络;
区块链节点验证交易签名,再将交易打包并广播到全网,最后区块链网络对交易达成共识,用户获得存储在区块链种的m的摘要值digest2;
digest2被认为是可信的摘要值,比较digest1和digest2若两者相同则数据是完整的。
本发明的工作原理:通过接入验证、数据加密和数据完整性校验使得区块链数据在分域存储的时候更加安全可靠,接入验证是通过用户接入网络后,节点开启监听线程,等待网络中对等节点广播数据,并检查本身区块是否是最新的,如果不是则从其他节点同步区块,从而实现区块链的安全分域;数据加密是通过先部署智能合约,以智能合约为基础建立区块链的安全网络,保证用户在向Ceph集群上传文件的时候,数据可以被加密上传,而智能合约搭建的安全网络环境也提高了区块链网络的安全性;数据完整性校验是通过两种情况来验证区块链数据是否具有安全性,一种是当用户访问数据时基础服务平台会对获取到密文数据执行完整性校验,另一种是若用户质疑基础服务平台执行数据完整性校验的正确性,这种情况下,用户首先获取到密文数据,再直接与区块链节点通信获取摘要数据,用户在本地计算密文数据的摘要与从区块链获取到的摘要进行比对,相同则说明数据没有被篡改。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。
此外,应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。
Claims (6)
1.一种区块链分域方法,其特征在于,包括以下步骤:
S1、初始化和区块同步:数据存储服务提供者执行区块链初始化脚本文件启动节点,生成创世块,等待对应用户实体的区块链节点接入,用户启动区块链节点接入联盟链,接入网络后,节点开启监听线程,等待网络中对等节点广播数据,并检查本身区块是否是最新的,如果不是则从其他节点同步区块;
S2、部署智能合约:将编写的智能合约编译成二进制码,再部署到区块链网络中,用户发送访问数据、校验数据完整性、查询数据访问记录操作时都需要构造交易数据,并使用以太坊账号私钥对交易数据签名;
S3、数据上传:用户在本地通过对称加密方式将数据加密为密文,再发送到基础服务平台,其中对称加密密钥由用户自己管理,基础服务平台发起交易调用智能合约,将数字摘要和文件地址等信息作为元数据存储在区块链网络中;
S4、数据完整性校验:用户质疑基础服务平台执行数据完整性校验的正确性时,用户首先获取到密文数据,再直接与区块链节点通信获取摘要数据,用户在本地计算密文数据的摘要与从区块链获取到的摘要进行比对,相同则说明数据没有被篡改。
2.根据权利要求1所述的一种区块链分域方法,其特征在于,所述步骤S1中用户区块链节点接入联盟链时需要身份验证。
3.根据权利要求1所述的一种区块链分域方法,其特征在于,所述步骤S1中节点监听到广播的交易或区块数据后,如果验证交易或区块的签名有效,则进一步处理数据并转发到其他对等节点。
4.根据权利要求1所述的一种区块链分域方法,其特征在于,所述步骤S3中基础服务平台根据收到的数据生成文件,计算数据摘要值,再将文件存储到Ceph集群中,获得文件地址。
5.根据权利要求4所述的一种区块链分域方法,其特征在于,所述Ceph集群为分布式文件系统。
6.根据权利要求1所述的一种区块链分域方法,其特征在于,所述步骤S4中数据完整性校验执行条件还包括一种情况,当用户访问数据时基础服务平台会对获取到密文数据执行完整性校验。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911380668.2A CN111177265A (zh) | 2019-12-27 | 2019-12-27 | 一种区块链分域方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911380668.2A CN111177265A (zh) | 2019-12-27 | 2019-12-27 | 一种区块链分域方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111177265A true CN111177265A (zh) | 2020-05-19 |
Family
ID=70650469
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911380668.2A Pending CN111177265A (zh) | 2019-12-27 | 2019-12-27 | 一种区块链分域方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111177265A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112783973A (zh) * | 2020-12-31 | 2021-05-11 | 中国人民银行数字货币研究所 | 确定数据完整性的方法、相关装置和数据完整性保护系统 |
CN112835855A (zh) * | 2021-02-22 | 2021-05-25 | 北京众享比特科技有限公司 | 一种基于区块链的文件存储方法和系统 |
CN113839989A (zh) * | 2021-08-28 | 2021-12-24 | 西安交通大学 | 一种多节点数据处理方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018032374A1 (zh) * | 2016-08-13 | 2018-02-22 | 深圳市樊溪电子有限公司 | 一种用于区块链的加密存储系统及其使用方法 |
CN109450638A (zh) * | 2018-10-23 | 2019-03-08 | 国科赛思(北京)科技有限公司 | 基于区块链的电子元器件数据管理系统及方法 |
CN110046521A (zh) * | 2019-04-24 | 2019-07-23 | 成都派沃特科技股份有限公司 | 去中心化隐私保护方法 |
CN110278462A (zh) * | 2019-06-20 | 2019-09-24 | 北京工业大学 | 一种基于区块链的流动放映授权管理方法 |
-
2019
- 2019-12-27 CN CN201911380668.2A patent/CN111177265A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018032374A1 (zh) * | 2016-08-13 | 2018-02-22 | 深圳市樊溪电子有限公司 | 一种用于区块链的加密存储系统及其使用方法 |
CN109450638A (zh) * | 2018-10-23 | 2019-03-08 | 国科赛思(北京)科技有限公司 | 基于区块链的电子元器件数据管理系统及方法 |
CN110046521A (zh) * | 2019-04-24 | 2019-07-23 | 成都派沃特科技股份有限公司 | 去中心化隐私保护方法 |
CN110278462A (zh) * | 2019-06-20 | 2019-09-24 | 北京工业大学 | 一种基于区块链的流动放映授权管理方法 |
Non-Patent Citations (1)
Title |
---|
张舒;杨宇光;: "区块链技术基础及应用" * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112783973A (zh) * | 2020-12-31 | 2021-05-11 | 中国人民银行数字货币研究所 | 确定数据完整性的方法、相关装置和数据完整性保护系统 |
CN112835855A (zh) * | 2021-02-22 | 2021-05-25 | 北京众享比特科技有限公司 | 一种基于区块链的文件存储方法和系统 |
CN113839989A (zh) * | 2021-08-28 | 2021-12-24 | 西安交通大学 | 一种多节点数据处理方法 |
CN113839989B (zh) * | 2021-08-28 | 2022-08-05 | 西安交通大学 | 一种多节点数据处理方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112055025B (zh) | 一种基于区块链的隐私数据保护方法 | |
CN109409122B (zh) | 文件存储方法及其电子设备、存储介质 | |
CN108768988B (zh) | 区块链访问控制方法、设备及计算机可读存储介质 | |
CN110532735B (zh) | 固件升级方法 | |
CN110597538B (zh) | 一种基于ota升级系统的软件升级方法和ota升级系统 | |
CN106972931B (zh) | 一种pki中证书透明化的方法 | |
CN110278462B (zh) | 一种基于区块链的流动放映授权管理方法 | |
US11336463B2 (en) | Information assurance (IA) using an integrity and identity resilient blockchain | |
CN110430061B (zh) | 一种基于区块链技术的车联网设备身份认证方法 | |
KR102618665B1 (ko) | 블록체인을 사용한 버전 이력 관리 | |
US11849052B2 (en) | Certificate in blockchain network, storage medium, and computer device | |
CN110268679B (zh) | 基于区块链的认证方法和系统 | |
CN101969377B (zh) | 零知识身份认证方法和系统 | |
CN111177265A (zh) | 一种区块链分域方法 | |
CN112152778B (zh) | 一种节点管理方法、装置、及电子设备 | |
CN112801663B (zh) | 区块链存证方法、装置、系统、设备和介质 | |
CN111815321A (zh) | 交易提案的处理方法、装置、系统、存储介质和电子装置 | |
CN111428271A (zh) | 一种区块链云存储用户数据安全解决方法 | |
CN104715183A (zh) | 一种虚拟机运行时的可信验证方法和设备 | |
CN111340485B (zh) | 一种用于联盟区块链的数字证书的配置方法、终端和根证书服务器 | |
CN113328997A (zh) | 联盟链跨链系统及方法 | |
CN114465817B (zh) | 一种基于tee预言机集群和区块链的数字证书系统及方法 | |
CN111737715A (zh) | 一种去中心化的电子合同在线签署的方法及系统 | |
CN113935065A (zh) | 一种基于环签名的联盟链身份隐私保护和监管方法 | |
CN110445765B (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 |