CN113779147B - Data uplink and utilization method, device, equipment and readable storage medium - Google Patents

Data uplink and utilization method, device, equipment and readable storage medium Download PDF

Info

Publication number
CN113779147B
CN113779147B CN202111006874.4A CN202111006874A CN113779147B CN 113779147 B CN113779147 B CN 113779147B CN 202111006874 A CN202111006874 A CN 202111006874A CN 113779147 B CN113779147 B CN 113779147B
Authority
CN
China
Prior art keywords
data
utilized
hash value
evidence
utilization
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.)
Active
Application number
CN202111006874.4A
Other languages
Chinese (zh)
Other versions
CN113779147A (en
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.)
Wuhan Tianyu Information Industry Co Ltd
Original Assignee
Wuhan Tianyu Information Industry 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 Wuhan Tianyu Information Industry Co Ltd filed Critical Wuhan Tianyu Information Industry Co Ltd
Priority to CN202111006874.4A priority Critical patent/CN113779147B/en
Publication of CN113779147A publication Critical patent/CN113779147A/en
Application granted granted Critical
Publication of CN113779147B publication Critical patent/CN113779147B/en
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
    • 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/2255Hash tables
    • 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/602Providing cryptographic facilities or services
    • 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
    • G06F21/6227Protecting 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 where protection concerns the structure of data, e.g. records, types, queries
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

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

Abstract

The application relates to a data uplink and utilization method, a device, equipment and a readable storage medium, which relate to the technical field of block chains and comprise the steps of respectively carrying out Hash calculation on a plurality of databases to obtain a plurality of Hash values and storing the Hash values in a block chain; acquiring data demand information of a data demand party and determining a Hash value to be utilized according to the data demand information; generating a first evidence based on the zk-snarks protocol and a Hash value to be utilized; and the data requiring party verifies the first evidence and utilizes the database corresponding to the Hash value to be utilized according to the verification result. According to the application, the data provider can perform condition proof on the uplink data according to different data utilization requirements, thereby ensuring data security and reducing trust cost; the data demand party can verify the correctness of the evidence and utilize the original data corresponding to the Hash value to be utilized, so that the utilization of the original data corresponding to the data on the chain is realized, and the data utilization efficiency is improved.

Description

Data uplink and utilization method, device, equipment and readable storage medium
Technical Field
The present application relates to the field of blockchain technologies, and in particular, to a method, an apparatus, a device, and a readable storage medium for data uplink and utilization.
Background
As blockchain technology is increasingly emerging in the field of view of people, its decentralised, secure, public features provide the potential to solve the multi-party trust problems of data ownership and data security in complex interactive business scenarios in multiple domains, multiple enterprises. Essentially, a blockchain is a shared database in which data or information is stored that has characteristics such as "non-counterfeitable, global marking, traceable, public transparency, collective maintenance. Based on the characteristics, the blockchain technology lays a solid trust foundation, creates a reliable cooperation mechanism and has wide application prospect.
However, due to the specificity of the blockchain, the blockchain cannot be used as a traditional database, but the relational database and the blockchain are subjected to business analysis, and the data unsuitable for direct uplink is subjected to blockchain uplink reconstruction and then is stored in the uplink. The current block chain data uplink mode generally uses a Hash (Hash function) algorithm, namely, a Hash value obtained by performing Hash calculation on data is uplink, and the method has the security advantages of being non-tamperable and non-repudiation.
However, the data uplink is only the first step of implementing the interactive data utilization service scenario, and how to implement multi-element, efficient, safe and reliable on-link data utilization is the key of establishing a complete data utilization system. The method for using the data Hash value to uplink can prove the integrity of the data, but under the condition that the original data is not provided, the corresponding relation between the Hash value and the original data cannot be directly verified, meanwhile, due to the hiding property of a Hash algorithm, the related information of the original data cannot be observed from the Hash value, and further, the database and the data subset contained in the database cannot be further utilized; especially for the diversified utilization scene of data, whether the data set meets the data utilization condition can not be proved according to different data requirements.
Disclosure of Invention
The application provides a data uplink and utilization method, a device, equipment and a readable storage medium, which are used for solving the problem that original data cannot be utilized in the related technology.
In a first aspect, a method for data uplink and utilization is provided, including the following steps:
respectively carrying out Hash calculation on a plurality of databases to obtain a plurality of Hash values, and storing the Hash values into a block chain;
acquiring data demand information of a data demand party, and determining a Hash value to be utilized according to the data demand information;
generating a first evidence based on the zk-snarks protocol and the Hash value to be utilized, wherein the first evidence is evidence for proving that the calculation process of the Hash value to be utilized is correct and that a database corresponding to the Hash value to be utilized meets data demand information;
and sending the first evidence to a data demand party for the data demand party to verify the first evidence based on the zk-snarks protocol and the data demand information, and utilizing the database corresponding to the Hash value to be utilized according to a verification result.
In some embodiments, the using the database corresponding to the Hash value to be used according to the verification result includes:
when the verification result is correct, acquiring a database corresponding to the Hash value to be utilized;
and verifying the binding relation between the Hash value to be utilized and the database corresponding to the Hash value to be utilized, and if the verification is passed, utilizing the database corresponding to the Hash value to be utilized.
In some embodiments, the using the database corresponding to the Hash value to be used according to the verification result includes:
when the verification result is correct, sending utilization logic of a database corresponding to the Hash value to be utilized to a data provider, so that the data provider can calculate and obtain a data result according to the utilization logic and the database corresponding to the Hash value to be utilized, and generating a second evidence based on zk-snarks protocol and the data result, wherein the second evidence is evidence for proving that the data result is calculated and obtained based on a real database corresponding to the Hash value to be utilized;
and acquiring the second evidence, verifying the second evidence based on the zk-snarks protocol, and acquiring and utilizing a data result if the verification is passed.
In some embodiments, the using the database corresponding to the Hash value to be used according to the verification result includes:
when the verification result is correct, acquiring a ciphertext of a database corresponding to the Hash value to be utilized, which is provided by a data provider;
the ciphertext is utilized based on a blind polynomial computing model.
In a second aspect, a data uplink and utilization apparatus is provided, including:
the storage unit is used for carrying out Hash calculation on the databases respectively to obtain a plurality of Hash values, and storing the Hash values into the block chain;
the determining unit is used for acquiring the data demand information of the data demand party and determining a Hash value to be utilized according to the data demand information;
the generation unit is used for generating a first evidence based on the zk-snarks protocol and the Hash value to be utilized, wherein the first evidence is evidence for proving that the calculation process of the Hash value to be utilized is correct and that a database corresponding to the Hash value to be utilized meets data demand information;
the utilization unit is used for sending the first evidence to a data demand party so that the data demand party can verify the first evidence based on the zk-snarks protocol and the data demand information, and the database corresponding to the Hash value to be utilized can be utilized according to a verification result.
In some embodiments, the utilization unit is specifically configured to:
when the verification result is correct, acquiring a database corresponding to the Hash value to be utilized;
and verifying the binding relation between the Hash value to be utilized and the database corresponding to the Hash value to be utilized, and if the verification is passed, utilizing the database corresponding to the Hash value to be utilized.
In some embodiments, the utilization unit is specifically further configured to:
when the verification result is correct, sending utilization logic of a database corresponding to the Hash value to be utilized to a data provider, so that the data provider can calculate and obtain a data result according to the utilization logic and the database corresponding to the Hash value to be utilized, and generating a second evidence based on zk-snarks protocol and the data result, wherein the second evidence is evidence for proving that the data result is calculated and obtained based on a real database corresponding to the Hash value to be utilized;
and acquiring the second evidence, verifying the second evidence based on the zk-snarks protocol, and acquiring and utilizing a data result if the verification is passed.
In some embodiments, the utilization unit is specifically further configured to:
when the verification result is correct, acquiring a ciphertext of a database corresponding to the Hash value to be utilized, which is provided by a data provider;
the ciphertext is utilized based on a blind polynomial computing model.
In a third aspect, a data uplink and utilization device is provided, including: the system comprises a memory and a processor, wherein at least one instruction is stored in the memory, and the at least one instruction is loaded and executed by the processor so as to realize the data uplink and utilization method.
In a fourth aspect, a computer-readable storage medium is provided, the computer storage medium storing computer instructions that, when executed by a computer, cause the computer to perform the aforementioned data-chaining and utilization method.
The application provides a method, a device, equipment and a readable storage medium for data uplink and utilization, which comprise the following steps: respectively carrying out Hash calculation on a plurality of databases to obtain a plurality of Hash values, and storing the Hash values into a block chain; acquiring data demand information of a data demand party, and determining a Hash value to be utilized according to the data demand information; generating a first evidence based on the zk-snarks protocol and the Hash value to be utilized, wherein the first evidence is evidence for proving that the calculation process of the Hash value to be utilized is correct and that a database corresponding to the Hash value to be utilized meets data demand information; and sending the first evidence to a data demand party for the data demand party to verify the first evidence based on the zk-snarks protocol and the data demand information, and utilizing the database corresponding to the Hash value to be utilized according to a verification result. According to the application, the data provider can generate evidence on the Hash value to be utilized of the data demand information meeting the data demand information of the data demand party based on the zk-snarks protocol, so that the condition of uplink data can be proved according to different data utilization demands, the data safety of the data provider is ensured, and the trust cost is reduced; the data demand party can verify the correctness of the evidence based on the zk-snarks protocol, and utilize the original data corresponding to the Hash value to be utilized according to the verification result, namely, the utilization of the original data corresponding to the data on the chain is realized, and the data utilization efficiency is improved.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings required for the description of the embodiments will be briefly described below, and it is apparent that the drawings in the following description are only some embodiments of the present application, and other drawings may be obtained according to these drawings without inventive effort for a person skilled in the art.
Fig. 1 is a schematic flow chart of a data uplink and utilization method according to an embodiment of the present application;
fig. 2 is a schematic structural diagram of a data uplink and utilization device according to an embodiment of the present application;
fig. 3 is a schematic structural diagram of a data uplink and utilization device according to an embodiment of the present application.
Detailed Description
For the purpose of making the objects, technical solutions and advantages of the embodiments of the present application more apparent, the technical solutions of the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present application, and it is apparent that the described embodiments are some embodiments of the present application, but not all embodiments of the present application. All other embodiments, which can be made by those skilled in the art based on the embodiments of the application without making any inventive effort, are intended to be within the scope of the application.
The embodiment of the application provides a data uplink and utilization method, a device, equipment and a readable storage medium, which can solve the problem that original data cannot be utilized in the related technology.
Fig. 1 is a flow chart of a data uplink and utilization method according to an embodiment of the present application, including the following steps:
step S10: respectively carrying out Hash calculation on a plurality of databases to obtain a plurality of Hash values, and storing the Hash values into a block chain;
in an exemplary embodiment of the present application, each user may include a plurality of databases, each database includes a plurality of data subsets, and each data subset includes a plurality of pieces of data, so only one integral Hash value needs to be calculated for each database. Taking an example that a Data provider calculates a Hash value of a database on the own side, for example, the database on the own side is data= { data_set1, data_set2,..data_setn, n is a positive integer }, where { data_set1, data_set2, }, data_setn represents an n-dimensional vector taking a Data subset of the database Data as a component, i.e., data_set represents the Data subset, then the Hash calculation method of the database is h_data=h (data_set1, data_set2,..data_setn, n is a positive integer), h_data is a Hash value, and H represents a Hash algorithm used by a Data uplink; and signing the Hash value by utilizing the private key of the own party, and then storing the Hash value and the signature of the data on the block chain by the data provider, thereby completing the data uplink.
Step S20: acquiring data demand information of a data demand party, and determining a Hash value to be utilized according to the data demand information;
for example, in the embodiment of the present application, for the data that has been successfully uplink from the own side, the data provider may determine, in real time or at any time after the data is uplink, uplink data that meets the requirement according to the data requirement information provided by the data demander, that is, determine the Hash value to be utilized.
Step S30: generating a first evidence based on the zk-snarks protocol and the Hash value to be utilized, wherein the first evidence is evidence for proving that the calculation process of the Hash value to be utilized is correct and that a database corresponding to the Hash value to be utilized meets data demand information;
illustratively, in the embodiment of the application, for the Data which is already uplink by the Data provider, the zk-snarks (Zero-Knowledge SuccinctNon-InteractiveArgument ofKnowledge, zero knowledge proof) protocol is utilized immediately or at any time after the Data is uplink, and on the premise that original Data is not disclosed, the Data to be calculated and correct by the Hash value in the database Data and the Hash algorithm are proved, and meanwhile, the Data subset data_set in the Data is proved to meet certain attribute conditions in the Data demand information. The zero-knowledge proof protocol based on the computational complexity problem and the cryptography assumption is an efficient and reliable verifiable technology, and due to the completeness, reliability and zero knowledge of the zero-knowledge proof protocol, a data provider actually holding trusted data can enable any data demander to trust that the data meets the use condition, and meanwhile the original numerical value of the data is not revealed.
Specifically, the data provider determines a Hash value to be utilized (i.e. a certain Hash value in uplink data) meeting the data requirement according to the self requirement (for example, adding some important attributes with public requirements to data on a own chain) or the data requirement provided by the data consumer, and generates first evidence that the Hash value calculation process is correct and the original data in the database hidden in the Hash value meets the data requirement by zk-snarks protocol for the Hash value to be utilized; evidence generation can be divided into the following two cases:
the first evidence was generated as follows: a certain Data subset data_setk= [ d1, d2, ], data dj in dm ] in a database Data needs to be proved to meet a Data requirement demand, wherein k is more than or equal to 1 and less than or equal to n, j is more than or equal to 1 and less than or equal to m, k is a positive integer, m is a positive integer, and j is a positive integer; specifically, the problem to be proved to be solved is expressed by mathematical operation (the step belongs to the consensus part), namely the problem is converted into the following equation set, and the equation set has a solution:
the data provider utilizes the zk-snarks protocol evidence generation process and generates, in conjunction with the above-described system of equations, a first evidence that is used to prove that a set of values as shown below is a set of solutions to the above-described system of equations:
and put the first proof on the chain or send it to the object with verification requirement (the verifier for short, comprising the data-requiring party).
The second evidence was generated as follows: it is necessary to prove that certain Data subsets data_sets1= [ d11, d12, ], d1m, data_sets2= [ d21, d22, ], data_setsk= [ dk1, dk2, ], dkm in the database Data meet the Data requirements demand1, demand2, >, demandk, respectively; specifically, the above problem to be proved to be solved is converted into the following equation set, and the equation set has a solution:
the data provider utilizes the zk-snarks protocol evidence generation process and generates, in conjunction with the above-described system of equations, a first evidence that is used to prove that a set of values as shown below is a set of solutions to the above-described system of equations:
and put the first evidence on the chain or send it to the data demander.
Step S40: and sending the first evidence to a data demand party for the data demand party to verify the first evidence based on the zk-snarks protocol and the data demand information, and utilizing the database corresponding to the Hash value to be utilized according to a verification result.
In the embodiment of the application, the data demand party verifies the signature of the Hash value through a signature algorithm after receiving the first evidence, and verifies whether the received first evidence meets the data demand of the own party by utilizing the zk-snarks protocol evidence verification process and combining the equation set, if the verification is passed, the data demand party utilizes the database corresponding to the Hash value according to the cooperative or application demand, otherwise, the data demand party refuses to use the database.
According to the application, the data provider can generate evidence on the Hash value to be utilized of the data demand information meeting the data demand information of the data demand party based on the zk-snarks protocol, so that the condition of uplink data can be proved according to different data utilization demands, the data safety of the data provider is ensured, and the trust cost is reduced; the data demand party can verify the correctness of the evidence based on the zk-snarks protocol, and utilize the original data corresponding to the Hash value to be utilized according to the verification result, namely, the utilization of the original data corresponding to the data on the chain is realized, and the data utilization efficiency is improved.
Further, in an embodiment of the present application, the using the database corresponding to the Hash value to be used according to the verification result includes:
when the verification result is correct, acquiring a database corresponding to the Hash value to be utilized;
and verifying the binding relation between the Hash value to be utilized and the database corresponding to the Hash value to be utilized, and if the verification is passed, utilizing the database corresponding to the Hash value to be utilized.
In the embodiment of the application, the two parties agree on a data sharing channel, and the data provider directly shares the original data plaintext or ciphertext encrypted by the public key of the demander to the data demander through the data sharing channel. After the data demand side acquires the original database, the database and H_data are verified, and if the data pass through, the data are utilized according to own side demands.
Further, in an embodiment of the present application, the using the database corresponding to the Hash value to be used according to the verification result includes:
when the verification result is correct, sending utilization logic of a database corresponding to the Hash value to be utilized to a data provider, so that the data provider can calculate and obtain a data result according to the utilization logic and the database corresponding to the Hash value to be utilized, and generating a second evidence based on zk-snarks protocol and the data result, wherein the second evidence is evidence for proving that the data result is calculated and obtained based on a real database corresponding to the Hash value to be utilized;
and acquiring the second evidence, verifying the second evidence based on the zk-snarks protocol, and acquiring and utilizing a data result if the verification is passed.
In the embodiment of the application, the two parties agree on a demand sharing channel, the data demand party shares the own-side data-utilized computing logic Method to the data provider through the demand sharing channel, the data provider computes the relevant data result according to the Method and the database, and generates a second evidence of correctly computing the result by using the true original data according to zk-snarks protocol, namely, proving:this set of values is the set of equations: />Is a set of solutions. The data requiring party verifies whether the received second evidence meets the verification condition by utilizing the evidence verification process of the zk-snarks protocol, and the data result is accepted and utilized by the verification.
Further, in an embodiment of the present application, the using the database corresponding to the Hash value to be used according to the verification result includes:
when the verification result is correct, acquiring a ciphertext of a database corresponding to the Hash value to be utilized, which is provided by a data provider;
the ciphertext is performed based on a blind polynomial calculation model.
Exemplary, in the embodiment of the application, for a data provider who does not want to provide the whole database at one time and a data demand party who does not want to disclose data utilization logic, data transaction can be completed according to a blind polynomial calculation model, namely, based on the blind polynomial calculation model, through multiple rounds of interactive calculation on the data ciphertext and the blind ciphertext, a data utilization result is obtained. At this time, the data provider only provides some processing results of the database, and the data demander only obtains the processing results of the data.
Therefore, the embodiment of the application is suitable for a re-use scene of the data after the uplink, the data provider calculates the Hash value of the huge database on the own side and stores the Hash value on the blockchain, and then at any time, the data provider can provide the proof that the hidden original data in the Hash value meets the requirement based on zk-snarks protocol according to different data requirements of the data requiring side; the data demander can verify the correctness of the certification, and then both parties utilize the data according to the collaboration or application requirements. The application realizes that the original data hidden in the Hash value meets the application condition according to the application requirement under the condition that the original data is not disclosed for the data which is already on the chain, and the application is more in line with the actual application scene.
Referring to fig. 2, the embodiment of the application further provides a device for data uplink and utilization, which includes:
the storage unit is used for carrying out Hash calculation on the databases respectively to obtain a plurality of Hash values, and storing the Hash values into the block chain;
the determining unit is used for acquiring the data demand information of the data demand party and determining a Hash value to be utilized according to the data demand information;
the generation unit is used for generating a first evidence based on the zk-snarks protocol and the Hash value to be utilized, wherein the first evidence is evidence for proving that the calculation process of the Hash value to be utilized is correct and that a database corresponding to the Hash value to be utilized meets data demand information;
the utilization unit is used for sending the first evidence to a data demand party so that the data demand party can verify the first evidence based on the zk-snarks protocol and the data demand information, and the database corresponding to the Hash value to be utilized can be utilized according to a verification result.
According to the application, the data provider can generate evidence on the Hash value to be utilized of the data demand information meeting the data demand information of the data demand party based on the zk-snarks protocol, so that the condition of uplink data can be proved according to different data utilization demands, the data safety of the data provider is ensured, and the trust cost is reduced; the data demand party can verify the correctness of the evidence based on the zk-snarks protocol, and utilize the original data corresponding to the Hash value to be utilized according to the verification result, namely, the utilization of the original data corresponding to the data on the chain is realized, and the data utilization efficiency is improved.
Further, in an embodiment of the present application, the usage unit is specifically configured to:
when the verification result is correct, acquiring a database corresponding to the Hash value to be utilized;
and verifying the binding relation between the Hash value to be utilized and the database corresponding to the Hash value to be utilized, and if the verification is passed, utilizing the database corresponding to the Hash value to be utilized.
Further, in an embodiment of the present application, the usage unit is specifically configured to:
when the verification result is correct, sending utilization logic of a database corresponding to the Hash value to be utilized to a data provider, so that the data provider can calculate and obtain a data result according to the utilization logic and the database corresponding to the Hash value to be utilized, and generating a second evidence based on zk-snarks protocol and the data result, wherein the second evidence is evidence for proving that the data result is calculated and obtained based on a real database corresponding to the Hash value to be utilized;
and acquiring the second evidence, verifying the second evidence based on the zk-snarks protocol, and acquiring and utilizing a data result if the verification is passed.
Further, in an embodiment of the present application, the usage unit is specifically configured to:
when the verification result is correct, acquiring a ciphertext of a database corresponding to the Hash value to be utilized, which is provided by a data provider;
the ciphertext is utilized based on a blind polynomial computing model.
It should be noted that, for convenience and brevity of description, the specific working process of the above-described apparatus and units may refer to the corresponding process in the foregoing data uplink and utilization method embodiment, which is not described herein again.
The apparatus provided by the above embodiments may be implemented in the form of a computer program that may run on a data-uplink and utilization device as shown in fig. 3.
The embodiment of the application also provides a data uplink and utilization device, which comprises: the system comprises a memory, a processor and a network interface which are connected through a system bus, wherein at least one instruction is stored in the memory, and the at least one instruction is loaded and executed by the processor so as to realize all or part of the steps of the data uplink and utilization method.
Wherein the network interface is used for network communication, such as sending assigned tasks, etc. It will be appreciated by those skilled in the art that the structure shown in FIG. 3 is merely a block diagram of some of the structures associated with the present inventive arrangements and is not limiting of the computer device to which the present inventive arrangements may be applied, and that a particular computer device may include more or fewer components than shown, or may combine some of the components, or have a different arrangement of components.
The processor may be a CPU, but may also be other general purpose processors, digital signal processors (Digital Signal Processor, DSP), application specific integrated circuits (Application Specific Integrated Circuit, ASIC), off-the-shelf programmable gate arrays (FieldProgrammable Gate Array, FPGA) or other programmable logic devices, discrete gate or transistor logic device discrete hardware components, or the like. A general purpose processor may be a microprocessor, or the processor may be any conventional processor, or the like, that is a control center of a computer device, with various interfaces and lines connecting various parts of the entire computer device.
The memory may be used to store computer programs and/or modules, and the processor implements various functions of the computer device by running or executing the computer programs and/or modules stored in the memory, and invoking data stored in the memory. The memory may mainly include a storage program area and a storage data area, wherein the storage program area may store an operating system, application programs required for at least one function (such as a video playing function, an image playing function, etc.), and the like; the storage data area may store data (such as video data, image data, etc.) created according to the use of the cellular phone, etc. In addition, the memory may include high speed random access memory, and may also include non-volatile memory, such as a hard disk, memory, plug-in hard disk, smart Media Card (SMC), secure Digital (SD) Card, flash Card (Flash Card), at least one disk storage device, flash memory device, or other volatile solid state storage device.
The embodiment of the application also provides a computer readable storage medium, on which a computer program is stored, which when being executed by a processor, realizes all or part of the steps of the aforementioned data uplink and utilization method.
The foregoing embodiments of the present application may be implemented in whole or in part by computer program instructions for implementing the relevant hardware, and the computer program may be stored in a computer readable storage medium, where the computer program when executed by a processor may implement the steps of the methods described above. Wherein the computer program comprises computer program code, which may be in the form of source code, object code, executable files or in some intermediate form, etc. The computer readable medium may include: any entity or device capable of carrying computer program code, record medium, USB flash disk, removable hard disk, magnetic disk, optical disk, computer memory, read-only memory (ROM), random access memory (RandomAccess memory, RAM), electrical carrier wave signals, telecommunications signals, and software distribution media. It should be noted that the content of the computer readable medium can be appropriately increased or decreased according to the requirements of the jurisdiction's jurisdiction and the patent practice, for example, in some jurisdictions, the computer readable medium does not include electrical carrier signals and telecommunication signals according to the jurisdiction and the patent practice.
It will be appreciated by those skilled in the art that embodiments of the present application may be provided as a method, system, server, or computer program product. Accordingly, the present application may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present application may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, magnetic disk storage, optical storage, and the like) having computer-usable program code embodied therein.
The present application is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the application. It will be understood that each flow and/or block of the flowchart illustrations and/or block diagrams, and combinations of flows and/or blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
It should be noted that, in this document, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or system that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or system. Without further limitation, an element defined by the phrase "comprising one … …" does not exclude the presence of other like elements in a process, method, article, or system that comprises the element.
The foregoing embodiment numbers of the present application are merely for the purpose of description, and do not represent the advantages or disadvantages of the embodiments.
The foregoing is only a specific embodiment of the application to enable those skilled in the art to understand or practice the application. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the spirit or scope of the application. Thus, the present application is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims (8)

1. A method for data uplink and utilization, comprising the steps of:
respectively carrying out Hash calculation on a plurality of databases to obtain a plurality of Hash values, and storing the Hash values into a block chain;
acquiring data demand information of a data demand party, and determining a Hash value to be utilized according to the data demand information;
generating a first evidence based on the zk-snarks protocol and the Hash value to be utilized, wherein the first evidence is evidence for proving that the calculation process of the Hash value to be utilized is correct and that a database corresponding to the Hash value to be utilized meets data demand information;
the first evidence is sent to a data demand party for the data demand party to verify the first evidence based on the zk-snarks protocol and the data demand information, and the database corresponding to the Hash value to be utilized is utilized according to a verification result;
the method for utilizing the database corresponding to the Hash value to be utilized according to the verification result comprises the following steps:
when the verification result is correct, sending utilization logic of a database corresponding to the Hash value to be utilized to a data provider, so that the data provider can calculate and obtain a data result according to the utilization logic and the database corresponding to the Hash value to be utilized, and generating a second evidence based on zk-snarks protocol and the data result, wherein the second evidence is evidence for proving that the data result is calculated and obtained based on a real database corresponding to the Hash value to be utilized;
and acquiring the second evidence, verifying the second evidence based on the zk-snarks protocol, and acquiring and utilizing a data result if the verification is passed.
2. The method for data uplink and utilization according to claim 1, wherein the utilizing the database corresponding to the Hash value to be utilized according to the verification result includes:
when the verification result is correct, acquiring a database corresponding to the Hash value to be utilized;
and verifying the binding relation between the Hash value to be utilized and the database corresponding to the Hash value to be utilized, and if the verification is passed, utilizing the database corresponding to the Hash value to be utilized.
3. The method for data uplink and utilization according to claim 1, wherein the utilizing the database corresponding to the Hash value to be utilized according to the verification result includes:
when the verification result is correct, acquiring a ciphertext of a database corresponding to the Hash value to be utilized, which is provided by a data provider;
the ciphertext is utilized based on a blind polynomial computing model.
4. A data uplink and utilization apparatus, comprising:
the storage unit is used for carrying out Hash calculation on the databases respectively to obtain a plurality of Hash values, and storing the Hash values into the block chain;
the determining unit is used for acquiring the data demand information of the data demand party and determining a Hash value to be utilized according to the data demand information;
the generation unit is used for generating a first evidence based on the zk-snarks protocol and the Hash value to be utilized, wherein the first evidence is evidence for proving that the calculation process of the Hash value to be utilized is correct and that a database corresponding to the Hash value to be utilized meets data demand information;
the utilization unit is used for sending the first evidence to a data demand party so that the data demand party can verify the first evidence based on the zk-snarks protocol and the data demand information, and utilizing the database corresponding to the Hash value to be utilized according to a verification result;
wherein, the utilization unit is specifically further used for:
when the verification result is correct, sending utilization logic of a database corresponding to the Hash value to be utilized to a data provider, so that the data provider can calculate and obtain a data result according to the utilization logic and the database corresponding to the Hash value to be utilized, and generating a second evidence based on zk-snarks protocol and the data result, wherein the second evidence is evidence for proving that the data result is calculated and obtained based on a real database corresponding to the Hash value to be utilized;
and acquiring the second evidence, verifying the second evidence based on the zk-snarks protocol, and acquiring and utilizing a data result if the verification is passed.
5. The data uplink and utilization apparatus of claim 4, wherein the utilization unit is specifically configured to:
when the verification result is correct, acquiring a database corresponding to the Hash value to be utilized;
and verifying the binding relation between the Hash value to be utilized and the database corresponding to the Hash value to be utilized, and if the verification is passed, utilizing the database corresponding to the Hash value to be utilized.
6. The data uplink and utilization apparatus of claim 4, wherein the utilization unit is further specifically configured to:
when the verification result is correct, acquiring a ciphertext of a database corresponding to the Hash value to be utilized, which is provided by a data provider;
the ciphertext is utilized based on a blind polynomial computing model.
7. A data uplink and utilization device, comprising: a memory and a processor, the memory having stored therein at least one instruction that is loaded and executed by the processor to implement the data chaining and utilization method of any of claims 1-3.
8. A computer-readable storage medium, characterized by: the computer storage medium stores computer instructions that, when executed by a computer, cause the computer to perform the data-chaining and utilization method of any of claims 1 to 3.
CN202111006874.4A 2021-08-30 2021-08-30 Data uplink and utilization method, device, equipment and readable storage medium Active CN113779147B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111006874.4A CN113779147B (en) 2021-08-30 2021-08-30 Data uplink and utilization method, device, equipment and readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111006874.4A CN113779147B (en) 2021-08-30 2021-08-30 Data uplink and utilization method, device, equipment and readable storage medium

Publications (2)

Publication Number Publication Date
CN113779147A CN113779147A (en) 2021-12-10
CN113779147B true CN113779147B (en) 2023-11-07

Family

ID=78839924

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111006874.4A Active CN113779147B (en) 2021-08-30 2021-08-30 Data uplink and utilization method, device, equipment and readable storage medium

Country Status (1)

Country Link
CN (1) CN113779147B (en)

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109274481A (en) * 2018-08-01 2019-01-25 中国科学院数据与通信保护研究教育中心 A kind of traceable method of data of block chain
CN111191284A (en) * 2019-12-27 2020-05-22 中国司法大数据研究院有限公司 Processing method, device and system for judicial evidence storage of sensitive information based on block chain technology
CN111553792A (en) * 2020-03-24 2020-08-18 平安科技(深圳)有限公司 Data verification method and device based on block chain
CN111861480A (en) * 2020-09-21 2020-10-30 浙江大学 Traffic detection model transaction method and device, electronic equipment and storage medium
CN112035889A (en) * 2020-09-03 2020-12-04 平安壹钱包电子商务有限公司 Block chain privacy verification method and device for computing outsourcing and computer equipment
CN112231751A (en) * 2020-10-19 2021-01-15 深圳市札记网络科技有限公司 Data transmission system and method based on block chain
CN112435026A (en) * 2020-11-27 2021-03-02 从法信息科技有限公司 Method and device for protecting file transaction information by using zero-knowledge proof and electronic equipment
CN112541197A (en) * 2020-12-28 2021-03-23 深圳前海微众银行股份有限公司 Result verification method and device
CN112765268A (en) * 2020-12-31 2021-05-07 杭州趣链科技有限公司 Block chain-based data privacy protection method, device and equipment
CN113114645A (en) * 2021-03-31 2021-07-13 武汉天喻信息产业股份有限公司 Method, device and equipment for improving storage capacity and operation safety of safety module
CN113255005A (en) * 2020-09-15 2021-08-13 支付宝(杭州)信息技术有限公司 Block chain-based data asset transfer method, device and equipment

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10742424B2 (en) * 2018-08-29 2020-08-11 International Business Machines Corporation Trusted identity solution using blockchain
FR3099017B1 (en) * 2019-07-16 2021-08-06 Idemia Identity & Security France Process for verifying a transaction in a blockchain-type database

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109274481A (en) * 2018-08-01 2019-01-25 中国科学院数据与通信保护研究教育中心 A kind of traceable method of data of block chain
CN111191284A (en) * 2019-12-27 2020-05-22 中国司法大数据研究院有限公司 Processing method, device and system for judicial evidence storage of sensitive information based on block chain technology
CN111553792A (en) * 2020-03-24 2020-08-18 平安科技(深圳)有限公司 Data verification method and device based on block chain
CN112035889A (en) * 2020-09-03 2020-12-04 平安壹钱包电子商务有限公司 Block chain privacy verification method and device for computing outsourcing and computer equipment
CN113255005A (en) * 2020-09-15 2021-08-13 支付宝(杭州)信息技术有限公司 Block chain-based data asset transfer method, device and equipment
CN111861480A (en) * 2020-09-21 2020-10-30 浙江大学 Traffic detection model transaction method and device, electronic equipment and storage medium
CN112231751A (en) * 2020-10-19 2021-01-15 深圳市札记网络科技有限公司 Data transmission system and method based on block chain
CN112435026A (en) * 2020-11-27 2021-03-02 从法信息科技有限公司 Method and device for protecting file transaction information by using zero-knowledge proof and electronic equipment
CN112541197A (en) * 2020-12-28 2021-03-23 深圳前海微众银行股份有限公司 Result verification method and device
CN112765268A (en) * 2020-12-31 2021-05-07 杭州趣链科技有限公司 Block chain-based data privacy protection method, device and equipment
CN113114645A (en) * 2021-03-31 2021-07-13 武汉天喻信息产业股份有限公司 Method, device and equipment for improving storage capacity and operation safety of safety module

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
A blockchain-based scheme for privacy-preserving and secure sharing of medical data;Haiping Huang等;《Computers & Security》;摘要、正文第3-4小节 *
一种面向网格计算的分布式匿名协作算法;石志国;贺也平;淮晓永;张宏;;计算机研究与发展(第S1期);80-88 *

Also Published As

Publication number Publication date
CN113779147A (en) 2021-12-10

Similar Documents

Publication Publication Date Title
CN112182644B (en) Data processing method and device and electronic equipment
US9049027B2 (en) Non-PKI digital signatures and information notary public in the cloud
CN109714165B (en) Key management method for client to generate key components respectively and electronic equipment
CN111464315B (en) Digital signature processing method, device, computer equipment and storage medium
CN113743939A (en) Identity authentication method, device and system based on block chain
CN111064583B (en) Threshold SM2 digital signature method and device, electronic equipment and storage medium
CN111815321A (en) Transaction proposal processing method, device, system, storage medium and electronic device
CN113037479B (en) Data verification method and device
CN115396115B (en) Block chain data privacy protection method, device, equipment and readable storage medium
CN114760071B (en) Zero-knowledge proof based cross-domain digital certificate management method, system and medium
CN111245594B (en) Homomorphic operation-based collaborative signature method and system
CN109981591B (en) Key management method for generating private key by single client and electronic equipment
Xia et al. An improved privacy preserving construction for data integrity verification in cloud storage
CN113779147B (en) Data uplink and utilization method, device, equipment and readable storage medium
CN115473632B (en) Improved multi-layer linkable ring signature generation method and device
CN109818753B (en) Method and equipment for generating key for multiple clients and multiple servers by one client
CN114362958B (en) Intelligent home data security storage auditing method and system based on blockchain
Chenli et al. Fairtrade: Efficient atomic exchange-based fair exchange protocol for digital data trading
CN112887097A (en) Signature method based on SM2 elliptic curve, related device and storage medium
CN110766407A (en) Transaction verification method, accounting node and medium based on block chain
CN115473634B (en) Improved method and device for generating linkable ring signature
CN113746836B (en) Data holding verification method and system
CN116506227B (en) Data processing method, device, computer equipment and storage medium
CN117834303B (en) Data auditing method for decentralised storage
CN112749964B (en) Information monitoring method, system, equipment and 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
GR01 Patent grant
GR01 Patent grant