CN112100665A - Data sharing system based on block chain - Google Patents

Data sharing system based on block chain Download PDF

Info

Publication number
CN112100665A
CN112100665A CN202011011657.XA CN202011011657A CN112100665A CN 112100665 A CN112100665 A CN 112100665A CN 202011011657 A CN202011011657 A CN 202011011657A CN 112100665 A CN112100665 A CN 112100665A
Authority
CN
China
Prior art keywords
data
node
block chain
module
shared
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
Application number
CN202011011657.XA
Other languages
Chinese (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.)
Jiangsu Sixiang Software Co ltd
Original Assignee
Jiangsu Sixiang Software 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 Jiangsu Sixiang Software Co ltd filed Critical Jiangsu Sixiang Software Co ltd
Priority to CN202011011657.XA priority Critical patent/CN112100665A/en
Publication of CN112100665A publication Critical patent/CN112100665A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting 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
    • 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/2246Trees, e.g. B+trees
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Bioethics (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)

Abstract

The invention belongs to the technical field of data sharing, and discloses a data sharing system based on a block chain, which comprises: the block chain module comprises a plurality of mutually matched block chain nodes and realizes data sharing through the block chain nodes; the access application module is used for providing a data access node with authority setting for a user of the sharing system, and the user accesses the shared data in the block chain module through the data access node; the encryption authentication module is used for verifying whether the block chain nodes in the block chain module and the data access nodes in the access application module are valid, deleting invalid block chain link points and carrying out encryption authentication on valid block chain link points; the data storage module is used for carrying out distributed storage on the shared data in the block chain module and the user information in the shared system based on IPFS; in conclusion, based on the block chain technology, data sharing is realized, and the risk of data tampering can be effectively avoided.

Description

Data sharing system based on block chain
Technical Field
The invention belongs to the technical field of data sharing, and particularly relates to a data sharing system based on a block chain.
Background
With the development of technology, how to efficiently implement the custody, transmission and sharing of sensitive data has become an urgent problem in the face of different types of data. The traditional data sharing technical solution is that a third-party centralized system is adopted to store and use data of all users, the users can not control the data actually, and the risk of privacy disclosure exists; in addition, the traditional centralized information management system mode has the problems of insufficient server stability, area limitation and low data access efficiency.
The blockchain is a distributed shared digital account book which is supported by cryptography and stored according to a time sequence, and the blockchain technology is favored by the advantages of decentralization, transparent disclosure, no falsification and the like, and receives wide attention of people in fields of intelligent contracts, electronic commerce, file storage, data sharing and the like. Based on this, a data sharing system based on the block chain technology is proposed in the present application.
Disclosure of Invention
In view of this, the present invention provides a data sharing system based on a block chain to solve the inevitable risk of data privacy disclosure in the existing data sharing.
In order to achieve the purpose, the invention provides the following technical scheme: a blockchain-based data sharing system, comprising:
the block chain module comprises a plurality of mutually matched block chain nodes and realizes data sharing through the block chain nodes;
the access application module is used for providing a data access node with authority setting for a user of the sharing system, and the user accesses the shared data in the block chain module through the data access node;
the encryption authentication module is used for verifying whether the block chain nodes in the block chain module and the data access nodes in the access application module are valid, deleting invalid block chain link points and carrying out encryption authentication on valid block chain link points;
the data storage module is used for carrying out distributed storage on the shared data in the block chain module and the user information in the shared system based on IPFS;
wherein:
the plurality of mutually matched block link points comprise uploading nodes, consensus nodes, accounting nodes and ledger nodes;
a user initiates a target block adding request through the uploading node, wherein the target block adding request comprises data to be shared; the consensus node achieves consensus based on a hybrid consensus mechanism and sends the consensus to an accounting node; and the accounting node adds the data to be shared in the target block adding request into the ledger node based on the consensus to complete block addition and data sharing.
Preferably, the uploading node is any one of a plurality of data access nodes in the same area, and the uploading node votes out based on the plurality of data access nodes in the same area.
Preferably, the data access nodes exceeding 1/2 in the same area can perform reselection of the upload node only when all the data access nodes consider that the upload node has crashed.
Preferably, the upload node includes:
the data acquisition unit is used for acquiring data to be shared transmitted by at least one user through the data access node;
the checking unit is used for checking whether the user signature of the data to be shared is complete;
the uploading unit is used for initiating a target block adding request when the signature of a user of the data to be shared is complete;
and the local cache unit is used for performing local cache of the data to be shared when the user signature of the data to be shared is complete.
Preferably, the upload node further comprises a view identifier (K)pub;Kpriv;Viewnum) And the view identification is broadcast at the blockchain module to a plurality of data access nodes.
Preferably, after the ledger node confirms that the target block is added, the upload node broadcasts end information that the target block has been added in the blockchain module.
Preferably, the ledger node adopts a merkle tree structure, and a block in the merkle tree structure includes a block header having a signature, a signature set, an access control protocol, a hash function, a timestamp, and a sequence number, wherein the hash function includes a local block hash and a previous block hash.
Preferably, when the encryption authentication module performs encryption authentication on the effective block link points, an authorization and authentication mechanism issues an encryption certificate, and the encryption certificate includes an account ID, a Public Key (PK) and a private key (SK); the public key is stored in the block chain module based on the encryption of the PBKDF2 algorithm, and the user signs the data to be shared transmitted by the data access node through the private key.
Preferably, the authority setting of the data access node includes an operation authority and a reference authority, the operation authority includes a part of operation and a whole operation, and the reference authority includes a part of reference and a whole reference.
Compared with the prior art, the invention has the following beneficial effects:
in the invention, based on the block chain technology, data sharing is realized, and the risk of data tampering can be effectively avoided; in addition, different permissions are set for different users when data access is carried out, so that the risk of data leakage is effectively reduced; in addition, the invention also carries out classification accounting based on the Merkle tree structure and adopts an IPFS mode to carry out distributed storage of data, thereby effectively improving the efficiency of data access loading.
Drawings
FIG. 1 is a schematic structural diagram of a data sharing system provided in the present invention;
FIG. 2 is a block chain module structure diagram in the data sharing system according to the present invention;
FIG. 3 is a flow chart of a user using the data sharing system provided by the present invention.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
In the present invention, a data sharing system based on a block chain is provided, specifically based on fig. 1 to 3, and the system includes the following structure and usage flow:
(1) structure of the product
The block chain module 10 comprises a plurality of mutually matched block chain nodes and realizes data sharing through the block chain nodes;
the access application module 20 is configured to provide a data access node with permission setting for a user of the sharing system, and the user accesses the shared data in the blockchain module 10 through the data access node;
the encryption authentication module 30 is used for verifying whether the block link points in the block chain module 10 and the data access nodes in the access application module 20 are valid, deleting invalid block link points, and performing encryption authentication on valid block link points;
the data storage module 40 is used for storing the shared data in the blockchain module 10 and the user information in the shared system in a distributed manner based on the IPFS;
wherein:
the plurality of mutually matched block link points comprise an uploading node 11, a consensus node 12, an accounting node 13 and a ledger node 14;
a user initiates a target block adding request through an uploading node 11, wherein the target block adding request comprises data to be shared; the consensus node 12 achieves consensus based on a hybrid consensus mechanism and sends the consensus to the accounting node 13; the accounting node 13 adds the data to be shared in the target block adding request to the ledger node 14 based on the consensus, and completes the block adding and the data sharing.
Wherein, the uploading node 11 comprises:
the data acquisition unit 111 is used for acquiring data to be shared transmitted by at least one user through the data access node;
a checking unit 112, configured to check whether a user signature of the data to be shared is complete;
the uploading unit 113 is configured to initiate a target block addition request when a user signature of the data to be shared is complete;
and the local caching unit 114 is configured to perform local caching of the data to be shared when the user signature of the data to be shared is complete.
With respect to the ledger node 14, a merkle tree structure is adopted, and the blocks in the merkle tree structure include block headers having signatures, signature sets, access control protocols, hash functions, timestamps, and sequence numbers, wherein the hash functions include the local block hash and the previous block hash.
Specifically, the method comprises the following steps:
the signature in the block header is a digital signature of the upload node 11, and is used for determining the source of the block;
the signature set in the block header is an event signature on the block and is used for improving the information retrieval efficiency;
the hash of the block in the block header is the hash value of the block, and hash value verification calculation is carried out on all hash values in the block of the event so as to ensure that the content in the block is invariable;
the hash of the previous block in the block header is the hash value of the previous block, and is used for realizing the linkage and verification between the blocks;
the timestamp in the block header indicates when the block was legitimately added to the block chain, as added by the consensus node 12.
(2) Flow path
With reference to fig. 3 and the above structure, when the user uses the entire data sharing system, the method includes:
a node A (data access node) registration process, wherein during registration, a registration request is provided, the registration request is verified based on an encryption authentication module 30, the registered node A is determined to be a valid node when the request passes, and at the moment, an encryption certificate is issued to the node A based on an authorization authentication authority (CA), wherein the encryption certificate comprises an account ID, a Public Key (PK) and a private key (SK) of the node A; wherein, the Public Key (PK) is stored in the block chain module 10 based on the encryption of the PBKDF2 algorithm. In addition, with respect to the authority Certification Authority (CA), the blockchain module 10 and the data storage module 40 in the overall system are also supervised, and the blockchain module 10 and the data storage module 40 are data processing layers of the overall data sharing system.
In the upload node 11 selection process, in the same area, a plurality of users all perform voting selection through corresponding data access nodes, wherein one data access node with the highest vote is used as the upload node 11, and the data of all the users in the subsequent area are uploaded to the block chain module 10 through the upload node 11 to form a block of the corresponding area. Specifically, after the upload node 11 is determined, the upload node 11 broadcasts a view identifier (K) in the entire network of the blockchain module 10pub;Kpriv;Viewnum) And thus, the identity of the uploading node 11 is represented, and accurate reception of the information of the uploading node 11 by the blockchain module 10 is facilitated. In addition, the reselection of the uploading node 11 can be executed only when the data access nodes exceeding 1/2 in the same area all consider that the uploading node 11 is crashed.
In the data uploading process, a user starts to upload data (to-be-shared data) B through a data access node, and signs the to-be-shared data B transmitted by the data access node through a private key (SK) in the uploading process, the uploaded to-be-shared data B is collected by an uploading node 11 in an area corresponding to the access application module 20, the uploading node 11 checks the signature of the user for checking the to-be-shared data B, and when the check result is that the signature is complete, a target block adding request B1 containing the to-be-shared data B is sent based on the uploading node 11; after the request is sent, the consensus node 12 generates a consensus result according to a hybrid consensus mechanism, and the consensus result is fed back to the uploading node 11 and is also sent to the accounting node 13; the accounting node 13 adds the data B to be shared in the target block adding request B1 to the ledger node 14 according to the consensus sent by the consensus node 12, and completes the block addition and the data sharing. Specifically, when the block addition is completed, the upload node 11 broadcasts end information that the target block has been added in the block chain module 10; in addition, the information in the added block is also stored in the data storage module 40 based on the IPFS method.
In the data query and download process, a user starts to access the blockchain module 10 through a data access node, in the process, the access application module 20 identifies the authority state of the corresponding data access node at first choice, specifically, the authority setting of the data access node comprises an operation authority and a query authority, the operation authority comprises a part of operation and a whole operation, and the query authority comprises a part of query and a whole query; the method specifically comprises the following steps: if the authority of the corresponding data access node C is partial lookup, the shared data can be partially looked up in the block chain module 10; if the authority of the corresponding data access node D is all consulted, the shared data can be consulted in the block chain module 10; if the authority of the corresponding data access node E is partial operation, the shared data that can be referred to can be partially downloaded in the block chain module 10; if the authority of the corresponding data access node D is full operation, the shared data that can be referred to can be downloaded in the blockchain module 10.
Although embodiments of the present invention have been shown and described, it will be appreciated by those skilled in the art that changes, modifications, substitutions and alterations can be made in these embodiments without departing from the principles and spirit of the invention, the scope of which is defined in the appended claims and their equivalents.

Claims (9)

1. A data sharing system based on block chains, the sharing system comprising:
the block chain module comprises a plurality of mutually matched block chain nodes and realizes data sharing through the block chain nodes;
the access application module is used for providing a data access node with authority setting for a user of the sharing system, and the user accesses the shared data in the block chain module through the data access node;
the encryption authentication module is used for verifying whether the block chain nodes in the block chain module and the data access nodes in the access application module are valid, deleting invalid block chain link points and carrying out encryption authentication on valid block chain link points;
the data storage module is used for carrying out distributed storage on the shared data in the block chain module and the user information in the shared system based on IPFS;
wherein:
the plurality of mutually matched block link points comprise uploading nodes, consensus nodes, accounting nodes and ledger nodes;
a user initiates a target block adding request through the uploading node, wherein the target block adding request comprises data to be shared; the consensus node achieves consensus based on a hybrid consensus mechanism and sends the consensus to an accounting node; and the accounting node adds the data to be shared in the target block adding request into the ledger node based on the consensus to complete block addition and data sharing.
2. The system according to claim 1, wherein the uploading node is any one of a plurality of data access nodes in the same area, and the uploading node votes out based on the plurality of data access nodes in the same area.
3. The blockchain-based data sharing system according to claim 2, wherein the reselection of the uploading node is performed only when the data access nodes exceeding 1/2 in the same area all consider that the uploading node has crashed.
4. The system according to claim 2 or 3, wherein the upload node comprises:
the data acquisition unit is used for acquiring data to be shared transmitted by at least one user through the data access node;
the checking unit is used for checking whether the user signature of the data to be shared is complete;
the uploading unit is used for initiating a target block adding request when the user signature of the data to be shared is complete;
and the local cache unit is used for performing local cache of the data to be shared when the user signature of the data to be shared is complete.
5. The system according to claim 4, wherein: the upload node further comprises a view identifier (K)pub;Kpriv;Viewnum) And the view identification is broadcast at the blockchain module to a plurality of data access nodes.
6. The system according to claim 5, wherein: and after the ledger node confirms that the target block is added, the uploading node broadcasts end information that the target block is added in the block chain module.
7. The system according to claim 6, wherein the ledger node adopts a merkle tree structure, and the blocks in the merkle tree structure include a block header having a signature, a signature set, an access control protocol, a hash function, a timestamp, and a sequence number, wherein the hash function includes a current block hash and a previous block hash.
8. The system according to claim 4, wherein: when the encryption authentication module encrypts and authenticates the effective block chain link points, an authorization authentication mechanism issues an encryption certificate, wherein the encryption certificate comprises an account ID, a public key and a private key; the public key is stored in the block chain module based on the encryption of the PBKDF2 algorithm, and the user signs the data to be shared transmitted by the data access node through the private key.
9. The system according to claim 1, wherein: the authority setting of the data access node comprises operation authority and reference authority, the operation authority comprises partial operation and full operation, and the reference authority comprises partial reference and full reference.
CN202011011657.XA 2020-09-23 2020-09-23 Data sharing system based on block chain Pending CN112100665A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011011657.XA CN112100665A (en) 2020-09-23 2020-09-23 Data sharing system based on block chain

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011011657.XA CN112100665A (en) 2020-09-23 2020-09-23 Data sharing system based on block chain

Publications (1)

Publication Number Publication Date
CN112100665A true CN112100665A (en) 2020-12-18

Family

ID=73755974

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011011657.XA Pending CN112100665A (en) 2020-09-23 2020-09-23 Data sharing system based on block chain

Country Status (1)

Country Link
CN (1) CN112100665A (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112910840A (en) * 2021-01-14 2021-06-04 重庆邮电大学 Medical data storage and sharing method and system based on alliance blockchain
CN112954000A (en) * 2021-01-13 2021-06-11 迅鳐成都科技有限公司 Privacy information management method and system based on block chain and IPFS technology
CN113507360A (en) * 2021-06-26 2021-10-15 暨南大学 System and method for exchanging and sharing scientific and technological big data based on block chain
CN113536346A (en) * 2021-07-21 2021-10-22 北京景安云信科技有限公司 Picture sharing method based on block chain
CN114239044A (en) * 2021-10-18 2022-03-25 国网内蒙古东部电力有限公司 Decentralized traceable shared access system
CN116401640A (en) * 2023-06-07 2023-07-07 国网福建省电力有限公司 Block chain-based network alignment system and method for inconsistent power data

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108182635A (en) * 2017-12-18 2018-06-19 深圳前海微众银行股份有限公司 Block chain common recognition method, system and computer readable storage medium
CN108875411A (en) * 2018-07-11 2018-11-23 成都理工大学 The storage of Intelligent bracelet data and sharing method based on block chain
CN109040012A (en) * 2018-06-19 2018-12-18 西安电子科技大学 A kind of data security protecting and sharing method based on block chain and system and application
CN109766673A (en) * 2019-01-18 2019-05-17 四川大学 A kind of alliance's formula audio-video copyright block catenary system and audio-video copyright cochain method
CN110427346A (en) * 2019-08-13 2019-11-08 河南中盾云安信息科技有限公司 A kind of document storage system and its file memory method based on block chain
CN111145025A (en) * 2019-12-30 2020-05-12 北京工商大学 Supply chain data double-chain storage optimization method based on block chain
CN111343001A (en) * 2020-02-07 2020-06-26 复旦大学 Social data sharing system based on block chain
CN111611315A (en) * 2020-05-25 2020-09-01 辽宁大学 Financial big data-oriented multi-branch tree structure block chain integrated optimization storage method

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108182635A (en) * 2017-12-18 2018-06-19 深圳前海微众银行股份有限公司 Block chain common recognition method, system and computer readable storage medium
CN109040012A (en) * 2018-06-19 2018-12-18 西安电子科技大学 A kind of data security protecting and sharing method based on block chain and system and application
CN108875411A (en) * 2018-07-11 2018-11-23 成都理工大学 The storage of Intelligent bracelet data and sharing method based on block chain
CN109766673A (en) * 2019-01-18 2019-05-17 四川大学 A kind of alliance's formula audio-video copyright block catenary system and audio-video copyright cochain method
CN110427346A (en) * 2019-08-13 2019-11-08 河南中盾云安信息科技有限公司 A kind of document storage system and its file memory method based on block chain
CN111145025A (en) * 2019-12-30 2020-05-12 北京工商大学 Supply chain data double-chain storage optimization method based on block chain
CN111343001A (en) * 2020-02-07 2020-06-26 复旦大学 Social data sharing system based on block chain
CN111611315A (en) * 2020-05-25 2020-09-01 辽宁大学 Financial big data-oriented multi-branch tree structure block chain integrated optimization storage method

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
樊建峰等: "基于双区块链的基站动环信息监控***", 计算机科学, 19 August 2019 (2019-08-19) *

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112954000A (en) * 2021-01-13 2021-06-11 迅鳐成都科技有限公司 Privacy information management method and system based on block chain and IPFS technology
CN112910840A (en) * 2021-01-14 2021-06-04 重庆邮电大学 Medical data storage and sharing method and system based on alliance blockchain
CN112910840B (en) * 2021-01-14 2022-04-05 重庆邮电大学 Medical data storage and sharing method and system based on alliance blockchain
CN113507360A (en) * 2021-06-26 2021-10-15 暨南大学 System and method for exchanging and sharing scientific and technological big data based on block chain
CN113507360B (en) * 2021-06-26 2024-01-09 暨南大学 System and method for exchanging and sharing technical big data based on blockchain
CN113536346A (en) * 2021-07-21 2021-10-22 北京景安云信科技有限公司 Picture sharing method based on block chain
CN114239044A (en) * 2021-10-18 2022-03-25 国网内蒙古东部电力有限公司 Decentralized traceable shared access system
CN116401640A (en) * 2023-06-07 2023-07-07 国网福建省电力有限公司 Block chain-based network alignment system and method for inconsistent power data
CN116401640B (en) * 2023-06-07 2023-09-22 国网福建省电力有限公司 Block chain-based network alignment system and method for inconsistent power data

Similar Documents

Publication Publication Date Title
US10404455B2 (en) Multiple-phase rewritable blockchain
CN112100665A (en) Data sharing system based on block chain
US10623387B2 (en) Distributed key secret for rewritable blockchain
CN109766673B (en) Alliance type audio and video copyright block chain system and audio and video copyright chaining method
CN111159288A (en) Method, system, device and medium for storing, verifying and realizing chain structure data
CN109428892B (en) Multi-stage rewritable block chain
JP2016509443A (en) Validation system and method providing additional security for input records with lower entropy
CN112615847B (en) Data sharing and privacy protection method based on block chain
CN113660092A (en) Zero-knowledge-proof-based electric power data uploading system and method
CN112132581B (en) PKI identity authentication system and method based on IOTA
CN112039837B (en) Electronic evidence preservation method based on block chain and secret sharing
CN114338243B (en) Method and device for trusted storage of local data
CN116938478A (en) Permission determination method, permission determination device, permission determination equipment and readable storage medium

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