Search

CN-116760840-B - Efficient data sharing method based on block chain

CN116760840BCN 116760840 BCN116760840 BCN 116760840BCN-116760840-B

Abstract

The invention discloses a high-efficiency data sharing method based on a blockchain, which can solve the problems of centralized data storage, low searching algorithm efficiency and the like in the existing data sharing process and realize safe and high-efficiency decentralization data sharing. The invention stores the encrypted data into an interstellar file system (IPFS) to obtain a Content Identifier (CID), hashes the keywords, forms a keyword index with the CID, and stores the keyword index on a blockchain. And finally, adopting a searchable encryption algorithm based on the inverted index, and realizing the query operation on the related data by generating a search trapdoor. The data user initiates a query request based on a discrete logarithm problem, and the data owner can implement an authorization operation without the participation of a trusted third party. The invention can keep better searching efficiency when the index number is larger, and realize the decentralization data sharing without the supervision of a trusted third party, thereby ensuring that the data sharing of each organization is safer, more efficient and more convenient.

Inventors

  • GE SHUCHENG
  • XIONG SHUMING
  • CHEN PENGCHAO
  • HAN XUE

Assignees

  • 江苏大学

Dates

Publication Date
20260512
Application Date
20230615

Claims (2)

  1. 1. The efficient data sharing method based on the block chain is characterized by comprising the following steps of: 1) System initialization, construction of data sharing common parameters The method comprises the steps of publishing an encrypted keyword index to an intelligent contract deployed on a blockchain, wherein the data user sends a data request to the data owner, generates a search trapdoor according to an authorized relation after being authorized, calls the intelligent contract to acquire the keyword index, and searches and downloads a data file through IPFS; Generating a single Prime number multiplication cyclic group of order , Is a group Is a generator of (1); selecting two secure hash functions The method comprises the following steps: , ; Wherein, the Is a safety parameter; Obtaining and publishing common parameters ; 2) The data user generates a private key, sends a data request using the private key, and generates a search trapdoor, the private key From the q-th order integer group A random number is randomly selected ; 3) Uploading the data file to IPFS by the data owner to obtain a content identifier CID pointing to the data file; 4) Updating the data keyword index by the data owner; The step 4) comprises the following steps: 4.1 From the q-th order integer group A random number is randomly selected Executing power operation Obtaining version information of the data file ; 4.2 Calculating update trapdoors Performing hash operation and exclusive OR operation to obtain indexes respectively And an encrypted content identifier The method specifically comprises the following steps: , , ; Wherein, the Is version information of the data file, Is the index of the key word, Is an encrypted content identifier; 4.3 Judging index Whether or not there is, if No existence before, go to step 4.4), otherwise go to step 4.5); 4.4 A) building a linked list Mapping relation Into the smart contracts and recorded on the chain, namely: ; 4.5 Through index) Searching and storing keywords Linked list of content identifiers of (a) Will be Inserting linked lists ; 5) The data user requests data from the data owner, and the data user performs power operation to obtain the data request And sends it to the data owner: ; Wherein, the Is the inverse of the data user's private key; 6) The data owner processes the received request, and sends the authorization relationship generated by the data owner back to the data user after verifying that the request is legal; 7) The data user calculates the search trapdoor through the power operation, and is used for calling the parameters of the intelligent contract to execute the power operation Obtaining the search trapdoor , wherein, The authorization relationship generated for the data owner, Is a keyword; 8) The data user invokes the intelligent contract to acquire the shared data index; the step 8) comprises the following steps: 8.1 Performing hash operations for smart contracts Obtain an index ; 8.2 According to) Smart contracts Acquisition of Linked list in (a) Obtaining a match by traversing the linked list Performing an exclusive OR operation A matched file content identifier CID can be obtained; 9) The data user obtains the data file, and checks and downloads the data on IPFS according to the obtained content identifier CID; 10 The data sharing flow ends.
  2. 2. The efficient blockchain-based data sharing method of claim 1, wherein the step 6) includes the following: 6.1 The data owner verifies the identity of the requester, judges whether the received data use request is legal or not, and if so, goes to the step 6.2), otherwise, goes to the step 10); 6.2 Performing power operation by data owners to obtain authorized relationship Send it back to the data user: ; Wherein, the Is an authorization relationship generated by the data owner, Is a request for data to be received and, Is a generated random number.

Description

Efficient data sharing method based on block chain Technical Field The invention belongs to the technical field of block chains, and particularly relates to a high-efficiency data sharing method based on a block chain. Background With the explosive growth of network data, the data has transformed into important production elements that are comparable to material assets and human resources. In addition, data sharing has evolved into an important element in the economic, social and technical development processes, with tremendous growth potential in creating value for businesses and consumers. Despite the rapid development of various data management techniques, there are still some security and efficiency issues to be addressed in terms of private data sharing. Traditional data sharing modes are to centrally store data, which data users host to trusted third parties. At the same time, this sharing mode by means of a centralised mechanism is prone to security bottlenecks and potential single point of failure. Currently, with the development of big data, cloud computing, internet of things and the like, more and more information is collected by enterprises and government departments, and the data volume grows exponentially, which brings certain challenges to data sharing. To solve this problem, some data sharing schemes with privacy protection have been proposed to improve the search efficiency. Specifically, huang et al propose a secure data sharing scheme based on online social network proxy re-encryption of ciphertext policy attributes. To support sharing of data by multiple users, shen et al have proposed a key agreement based on a block design using a symmetrically balanced incomplete block design. Unfortunately, these solutions all rely on a central server, which makes them vulnerable to distributed denial of service (DDoS) attacks. Blockchains are a decentralized, public, verifiable, and secure distributed ledger technique. This technique records transaction information in non-tamperable blocks that are participated in by a plurality of nodes, forming a chain structure that is composed of a plurality of blocks. Because of the characteristics of multi-node participation and distributed storage, the blockchain cannot be controlled by a single node or mechanism, and therefore the method has the advantages of non-tampering, decentralization, disclosure transparency, high reliability and the like. Wang et al propose a blockchain-based decentralization framework for information sharing of buildings that does not rely on any trusted third party authorities, which enhances the usability of the solution. However, it still has some limitations. This scheme is only suitable for data sharing in a one-to-one scenario, and does not support keyword searching, which limits its applicability to a large extent. Searchable encryption is a technique that combines various encryption primitives with information retrieval to be able to encrypt data and key indexes of the data in some way. The method allows the user to conveniently, flexibly and efficiently search by submitting the keywords, and simultaneously ensures that the cloud server responsible for storage is unknown about the ciphertext data and the related information of the keywords. Some scholars have also proposed related searchable encryption schemes for different data sharing needs. Zeng et al propose a searchable encryption scheme supporting Boolean queries with a search complexity that is sub-linear, suitable for cloud applications. For medical data sharing, li et al propose a novel scheme to address the key sharing problem that is prevalent in KNN-based searchable encryption schemes. Existing searchable encryption algorithms mostly store shared data files in a centralized server, and users obtain relevant file indexes by searching trapdoors. In the above-mentioned searchable encryption scheme, the execution time of the search algorithm is generally a linear correlation of the database size, and the time complexity of the search algorithm is O (n). However, in many data sharing scenarios, search operations are often performed more frequently than data updates. For these situations, the searchable encryption scheme often has the problem that the searching performance is greatly reduced due to excessive file indexes in the searching process, and the data sharing efficiency under the condition of large data volume is seriously reduced. Therefore, there is a need for an efficient de-centralized data sharing system for such scenarios to increase sharing efficiency. Disclosure of Invention Aiming at the problems of centralized data storage, low searching algorithm efficiency, potential safety hazards and the like in the data sharing process, the invention provides a high-efficiency data sharing method BEDShare (Blockchain-Based EFFICIENT DATA SHARING SCHEME) Based on a blockchain, which uses the blockchain and IPFS to replace a centralized server, realizes complete de