WO2018095275A1 - 一种数据存取的方法、系统及装置 - Google Patents

一种数据存取的方法、系统及装置 Download PDF

Info

Publication number
WO2018095275A1
WO2018095275A1 PCT/CN2017/111538 CN2017111538W WO2018095275A1 WO 2018095275 A1 WO2018095275 A1 WO 2018095275A1 CN 2017111538 W CN2017111538 W CN 2017111538W WO 2018095275 A1 WO2018095275 A1 WO 2018095275A1
Authority
WO
WIPO (PCT)
Prior art keywords
identity identifier
blockchain
data
stored
storage
Prior art date
Application number
PCT/CN2017/111538
Other languages
English (en)
French (fr)
Inventor
童骏
Original Assignee
阿里巴巴集团控股有限公司
童骏
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 阿里巴巴集团控股有限公司, 童骏 filed Critical 阿里巴巴集团控股有限公司
Priority to ES17873246T priority Critical patent/ES2809170T3/es
Priority to EP17873246.7A priority patent/EP3547198B1/en
Priority to JP2019528138A priority patent/JP6880188B2/ja
Priority to PL17873246T priority patent/PL3547198T3/pl
Priority to KR1020197018096A priority patent/KR102155462B1/ko
Publication of WO2018095275A1 publication Critical patent/WO2018095275A1/zh
Priority to US16/422,641 priority patent/US10536265B2/en
Priority to US16/656,990 priority patent/US10938550B2/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
    • 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/24Querying
    • G06F16/245Query processing
    • 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
    • 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/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3066Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
    • H04L9/3073Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves involving pairings, e.g. identity based encryption [IBE], bilinear mappings or bilinear pairings, e.g. Weil or Tate pairing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3297Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving time stamps, e.g. generation of time stamps
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Definitions

  • the present application relates to the field of information technology, and in particular, to a method, system, and device for data access.
  • the general solution to the existing data storage technology is to implement data storage by using database technology, that is, to manage one or more devices storing data through a database management center, and to delete and delete the management data through the database management center (Create , Retrieve, Update, Delete, CRUD) operations.
  • database technology that is, to manage one or more devices storing data through a database management center, and to delete and delete the management data through the database management center (Create , Retrieve, Update, Delete, CRUD) operations.
  • the embodiment of the present application provides a data storage and query method, device, and system, which are used to solve In the existing data storage technology, the operation of acquiring data in multiple databases is complicated and inefficient due to data being stored in different databases that are independent of each other.
  • a method of data storage comprising:
  • Determining a data storage instruction wherein the data storage instruction carries an identity identifier and data to be stored;
  • the data to be stored is stored in the blockchain according to the key pair.
  • a method of data query comprising:
  • a data access system includes a plurality of storage devices, a plurality of query devices, and a plurality of blockchain storage nodes, wherein:
  • the blockchain storage node is configured to store a blockchain corresponding to the identity identifier
  • Determining, by the storage device, a data storage instruction determining, according to the identity identifier carried in the data storage instruction, a corresponding blockchain of the identity identifier and a key pair corresponding to the identity identifier, according to the key pair,
  • the to-be-stored data is stored in a blockchain corresponding to the identity identifier in the blockchain storage node;
  • the data in the block chain node is queried.
  • a device for data storage comprising:
  • a first determining module determining a data storage instruction, wherein the data storage instruction carries a body Identification and data to be stored;
  • a second determining module according to the identity identifier, determining a blockchain corresponding to the identity identifier and a key pair corresponding to the identity identifier;
  • a storage module configured to store the to-be-stored data in the blockchain according to the key pair.
  • a device for data query comprising a vibration motor and a sensor, comprising:
  • a first determining module where the data query instruction is determined, where the data query instruction carries an identity identifier
  • a second determining module determining, according to the identity identifier, a blockchain corresponding to the identity identifier and a private key corresponding to the identity identifier;
  • the query module decrypts the data in the blockchain according to the private key and queries the data.
  • the data storage instruction is first determined, and then the blockchain and the key pair corresponding to the identity identifier are determined according to the identity identifier carried in the data storage instruction, and finally, the data to be stored is stored according to the key pair.
  • the data query instruction is first determined, and then the blockchain corresponding to the identity identifier and the private key are determined according to the identity identifier corresponding to the data query instruction, and finally, according to the private key, The data in the blockchain is decrypted and queried.
  • FIG. 1 is a process of data storage provided by an embodiment of the present application
  • FIG. 3 is a schematic structural diagram of a data access system according to an embodiment of the present application.
  • FIG. 4 is a schematic structural diagram of another data access system according to an embodiment of the present application.
  • FIG. 5 is a schematic structural diagram of an apparatus for data storage according to an embodiment of the present disclosure.
  • FIG. 6 is a schematic structural diagram of another apparatus for data query according to an embodiment of the present disclosure.
  • the block of "blockchain” is the basic unit that constitutes the blockchain, and the block can include two parts: one is the block header, and the other is the block body.
  • the block header may include at least three aspects of information, that is, identification information of the block (such as HASH value), identification information of the previous block of the block, and time stamp. It is precisely because a block contains the identification information of the previous block that multiple blocks can form a chain, thereby forming a blockchain.
  • Blockchain has many good and excellent features, such as decentralization: due to the use of distributed accounting and storage, there is no centralized hardware or management organization, the rights and obligations of any node are equal, and the data blocks in the system are Nodes with maintenance functions in the system are jointly maintained; autonomous: blockchains use consensus-based specifications and protocols (such as a set of transparent and transparent algorithms) to enable all nodes in the entire system to be free and secure in a trusted environment. Exchange data so that trust in "people" is changed to trust in the machine, any human intervention does not work; information cannot be tampered with: once the information is verified and added to the blockchain, it will be stored permanently unless At the same time, more than 51% of the nodes in the system are controlled. Otherwise, the modification of the database on the single node is invalid, so the data stability and reliability of the blockchain are extremely high.
  • FIG. 1 is a process of data storage provided by an embodiment of the present application, which specifically includes the following steps:
  • a device that performs data storage may store the data to be stored in a specified storage device according to a data storage instruction. For example, when storing data in a database, the device performing data storage may receive according to the data storage device.
  • the device here may be a single device or a system composed of multiple devices, which may be a mobile phone, a personal computer, a tablet computer, a server, etc., or other devices, which is not specifically described in this application. limited. Since the embodiment of the present application will further provide a method and an apparatus for data query, for convenience of description (and not for the purpose of limitation), devices that will subsequently perform a data storage process are referred to as storage terminals.
  • the data storage instruction can be determined by the storage terminal.
  • the source of the data storage instruction may be generated by the storage terminal or may be received by the storage terminal.
  • the data storage instruction is not limited in this application, as long as the storage terminal can determine The data storage instruction is sufficient.
  • the embodiment of the present application can carry the identity identifier and the data to be stored. That is, when determining the data storage instruction, the storage terminal may determine an identity identifier carried by the data storage instruction and data to be stored for which the data storage instruction needs to perform a storage operation.
  • the identity identifier may be a citizen's ID number, an account identifier, a mailbox identifier, etc., as long as the identity identifier is a globally unique identifier, the application does not specifically limit this, of course, in order to facilitate subsequent description, the following identity
  • the identification number of the citizen is described as an example.
  • S102 Determine, according to the identity identifier, a blockchain corresponding to the identity identifier and a key pair corresponding to the identity identifier.
  • the storage terminal may further determine the identity identifier carried by the data storage instruction and the data to be stored, so the storage terminal may further determine according to the identity identifier.
  • the blockchain corresponding to the identity and the identity The corresponding key pair.
  • the to-be-stored data determined in step S101 is stored in the blockchain.
  • the “blockchain corresponding to the identity identifier” indicates the relationship between the identity identifier and the blockchain.
  • the identity identifier may be represented by at least two types according to its nature: a subject-discipline-type identity identifier and a transaction-differentiation-type identity identifier, and different types of identity identifiers may have different blockchains.
  • different subjects for example, natural person A, natural person B
  • different transactions for example, registration of books, aggregation activities
  • Personal files usually include a variety of information from different government departments or related agencies.
  • the file information may include household registration information formed by the public security organ to record A's household registration, and the civil affairs department.
  • these pieces of information are formed at different times, and they can be stored in a blockchain by blockchain technology.
  • this blockchain is a blockchain exclusive to (corresponding to) natural person A.
  • natural B there may be a blockchain that stores the profile of B, and so on, and may have other massive blockchains formed by the identity of natural persons.
  • the first person who initiated the purchase of Book B sent the serial number and name to the WeChat group, and so on, forming a blockchain (block) for purchasing Book B.
  • Chain B the person who needs to add information to the chain needs to find the corresponding blockchain. For example, the person who purchases the book A needs to find the blockchain A. The person who buys Book B needs to find the blockchain B.
  • the blockchain corresponding to the identity identifier may be a federated blockchain, that is, not all terminals have the right to perform data storage operations on the blockchain, and only the designated terminal has the right
  • the blockchain performs the operation permission of the data storage to ensure the data security and the authenticity of the data in the blockchain when the data is stored.
  • the blockchain may also be The nature of public and private chains. It should be noted that how to specify the terminal in the actual process is related to factors such as the nature of the blockchain, and the present application is not specifically limited.
  • the blockchain is an alliance blockchain, and the designated terminal can be determined by the alliance.
  • the storage terminal that performs step S101, step S102, and subsequent data storage processes may be the designated terminal, that is, the terminal that has the authority to perform data storage on the blockchain. ).
  • the storage terminal may determine, according to the identity identifier determined in step S101, and the correspondence between the pre-stored identity identifier, the key pair, and the blockchain, whether the identity exists in the blockchain storage node.
  • the corresponding blockchain is identified. If there are multiple blockchain storage nodes, the blockchain corresponding to the identity identifier may be determined by searching in at least one of the blockchain storage nodes.
  • the correspondence between the identity identifier and the blockchain may be stored in the storage terminal, or may be stored in each node in the network formed by the blockchain storage node, or even stored in a third-party device, in practice, Where is the specific situation, can be based on the convenience of reading, reading speed, security and other angles Line considerations.
  • storing the correspondence between the identity identifier and the blockchain locally in the storage terminal may be more convenient for reading and writing.
  • the storage location can also be selected according to the actual situation.
  • the blockchain storage node and the storage terminal may be the same device or different devices, which is not specifically limited in this application.
  • a node fails (for example, downtime, data loss, etc.), it can continue to work by any other blockchain storage node that does not fail, and can store data stored in the node according to the blockchain without failure (ie, , the data stored in the blockchain), repairing the failed blockchain storage node.
  • the key pair corresponding to the identity identifier may be further determined; if there is no block corresponding to the identity identifier
  • the chain generates a blockchain corresponding to the identity and a key pair corresponding to the identity. in particular:
  • the storage terminal may be a designated storage terminal, and the storage terminal may further store the key pair corresponding to the identity identifier in advance, and the storage terminal may determine The blockchain corresponding to the identity identifier and a key pair corresponding to the identity identifier.
  • the determined blockchain stores an encrypted data packet corresponding to the identity identifier
  • the key pair is used to decrypt and encrypt the encrypted data packet corresponding to the identity identifier
  • the storage terminal determines the blockchain and The key pair can continue the subsequent data storage process.
  • the storage terminal may send a request for acquiring a key pair corresponding to the identity identifier to another designated device when determining the key pair, where The request may carry the identifier of the storage terminal, so that the other designated device determines that the storage terminal also belongs to the designated device, has the right to acquire the key pair, and returns the key pair to enable the storage terminal to obtain the key. Correct. It should be noted that, when determining the key pair, the storage terminal may adopt different methods according to the needs of the actual application, which is not specifically limited in this application.
  • the storage terminal may generate the identity tag Identifying a corresponding blockchain and a key pair corresponding to the identity, wherein the generated blockchain is used to store data corresponding to the identity, and in order to ensure data security, the data may be packaged and encrypted.
  • the key pair may be used to enable the designated device to store data in the blockchain, that is, the secret
  • the key pair can be used to decrypt and encrypt the encrypted data packet corresponding to the identity, so that the designated device can store data in the blockchain.
  • S103 Store the to-be-stored data in the blockchain according to the key pair.
  • the storage terminal may store the data to be stored carried in the data storage instruction. In the blockchain to complete the data storage process.
  • step S102 since the storage terminal determines that there is a difference between the blockchain and the key pair in step S102, the following describes the two situations separately:
  • Scenario 1 When the storage terminal determines through judgment that the blockchain corresponding to the identity identifier exists, the storage terminal may first call the blockchain storage node from the blockchain corresponding to the identity identifier. Encrypting the data packet, and then the storage terminal may decrypt the encrypted data packet according to the private key in the key pair to obtain all data corresponding to the identity identifier in the encrypted data packet, and then the storage terminal may Updating all the data according to the to-be-stored data to obtain update data corresponding to the identity identifier.
  • the storage terminal may encrypt the update data by using a public key in the key pair, as an update encrypted data packet, and After the timestamp is added to the updated encrypted data packet, the blockchain is stored in the blockchain, and the blockchain storing the updated encrypted data packet and the timestamp is stored in the blockchain storage node.
  • the blockchain storage node may store other blockchains of the blockchain broadcast. In the node, so that the blockchains stored in all the blockchain storage nodes are consistent.
  • Case 2 When the storage terminal is determined to determine that the blockchain corresponding to the identity identifier does not exist The storage terminal may generate a blockchain corresponding to the identity identifier and a key pair corresponding to the identity identifier, where the storage terminal may first generate initial data corresponding to the identity identifier according to the identity identifier, and then And updating the initial data as the update data, and then generating the key pair corresponding to the identity identifier, and encrypting the update data by using the public key of the key pair as the encryption corresponding to the identity identifier. a data packet, and finally, generating the blockchain corresponding to the identity identifier, storing the encrypted data packet in the blockchain, and storing the blockchain storing the updated encrypted data packet in a blockchain storage In the node.
  • the initial data of the identity identifier specifically includes the data.
  • the application is not specifically limited, and may be determined according to actual needs.
  • the to-be-stored data is stored in the data block in the blockchain that is generated at the latest time.
  • the storage terminal may be based on each data in the blockchain.
  • the generation time of the block determines the data block with the latest generation time, and since a plurality of encrypted data packets corresponding to the identity identifier can be stored in one data block, the storage terminal can also be based on each encrypted data in the present application.
  • the timestamp carried by the packet determines the encrypted data packet with the latest storage time as the encrypted data packet corresponding to the identity identifier.
  • the storage terminal may include the encrypted data packet stored in the blockchain after the storage terminal stores the data to be stored, and the encrypted data packet corresponding to the identity identifier is updated. All the data corresponding to the identity identifier, that is, all the data corresponding to the identity identifier is included in each encrypted data packet, so that when the encrypted data packet is called according to the time stamp, the device that invokes the encrypted data packet can obtain The identity corresponds to all the data without having to call other data.
  • the storage terminal may further send the key pair and the identity identifier to each preset device, where the preset device.
  • the storage terminal may send the key pair and the identity identifier to each device according to the address of each device set in advance, where the preset device may be each designated device, that is, the device has A device that performs the right to store data in the blockchain corresponding to the identity.
  • the blockchain is stored in the blockchain storage node, where Any of the blockchain storage nodes may be a system of one device or multiple devices and used to store the blockchain.
  • An encrypted data packet corresponding to the identity identifier is stored in the blockchain, and the blockchain is stored in different blockchain storage nodes, and the blockchain in the different blockchain storage nodes is consistent.
  • the blockchain is not the same concept as the blockchain storage node and needs to be understood differently.
  • the data to be stored is stored in the blockchain corresponding to the identity identifier by using the data storage method as shown in FIG. 1, so that all data corresponding to the identity identifier can be stored in the data chain, thereby avoiding the identity.
  • the steps of repeatedly calling data are needed, which improves the efficiency of data storage and data query.
  • the designated storage terminal has the right to store the data corresponding to the identity identifier, and any operation based on the characteristics of the blockchain technology on the data corresponding to the identity identifier Both are recorded in the blockchain, so that the security of the data corresponding to the identity is guaranteed, and the possibility of tracing the change of the data corresponding to the identity is provided.
  • the storage terminal may determine the key pair corresponding to the identity identifier in step S102, so that the storage terminal may decrypt the encrypted data packet corresponding to the identity identifier that is invoked, and obtain all data corresponding to the identity identifier. And the storage terminal further needs to encrypt the update data according to the key, so that the encrypted data packet corresponding to the identity identifier is stored in the blockchain, so that only the key pair corresponding to the identity identifier is owned.
  • the storage terminal can store the data in the blockchain, and in the present application, only the designated device can obtain the key pair, thereby ensuring the security of the data in the blockchain.
  • the encrypted data packet in the blockchain may only be called and determined. Only the data encrypted by the private key in the key pair is trusted and secure.
  • the identity identifier may correspond to basic data (eg, user attribute, user type, etc.), or may correspond to account data (eg, account balance, account) Types, etc., may also correspond to operational habits (eg, historical behavior data, etc.), and the basic data may be maintained by a device responsible for the basic information corresponding to the identity (eg, a user center), and the account data may be responsible for The billing device is maintained, and the operating habit data can be maintained by the advertisement pushing device. That is to say, in the present application, different devices can maintain different types of data corresponding to the identity identifier.
  • different key pairs may be assigned to different designated devices in the alliance blockchain, where different key pairs have the same private key, and are used to decrypt the encrypted data packet corresponding to the identity identifier.
  • different key pairs have different public keys, and different public keys can only encrypt data of a specified type, so that devices with different key pairs can only store data of a specified type.
  • the configuration of the key pair can be determined by a staff member, and the specific configuration is not described in this application. As long as the key pair is used, different devices have the right to encrypt data of different types of data.
  • device A, device B, and device C respectively have different key pairs X, Y, and Z, and the key pairs X, Y, and Z can be of the x, y, and z types in all data corresponding to the identity a.
  • the data is encrypted as shown in Table 1.
  • the data of the x, y, and z types includes all the data corresponding to the identity a, and the different keys are used, so that the devices A, B, and C can only perform part of the data corresponding to the identity a.
  • Storage improves the security of data storage and reduces the chance of misoperation of the data corresponding to the identity.
  • step S101 and steps The execution body of S102 may be device 1, and the execution body of step S103 may be device 2; for example, the execution body of step S101 may be device 1, the execution body of step S102 and step S103 may be device 2;
  • the embodiment of the present application further provides a data query method, as shown in FIG. 2 .
  • FIG. 2 is a process of data query according to an embodiment of the present disclosure, which specifically includes the following steps:
  • the data query instruction may be determined by the terminal, and the subsequent data query process may be continued, where the terminal may be a mobile phone, a tablet computer, a personal computer, a server, etc., and the terminal may be a single device. It may also be a system composed of multiple devices, which is not specifically limited in this application.
  • the data query instruction may carry an identity identifier for determining a blockchain when the data is subsequently determined.
  • the data query instruction may be generated and determined by the terminal.
  • the terminal may also receive the data query instruction and determine the data query instruction, and the application does not limit how the data query instruction is generated. As long as the terminal can determine the data query command.
  • the execution subject ie, the terminal
  • the terminal that performs the data query process is represented by the query terminal, and the terminal that the storage terminal indicates to execute the data storage process.
  • S202 Determine, according to the identity identifier, a blockchain corresponding to the identity identifier and a private key corresponding to the identity identifier.
  • the query terminal only needs to query the data corresponding to the identity identifier, so the query terminal may determine, according to the identity identifier, a blockchain corresponding to the identity identifier and a private key corresponding to the identity identifier.
  • the query terminal may be based on the pre-stored identity identifier
  • the private key is determined corresponding to the private key of the key pair.
  • the query terminal may further send a request for acquiring a private key to the designated terminal (that is, the foregoing storage terminal) described in FIG. Receive the returned private key.
  • the request for obtaining the private key may carry the device identifier of the query terminal and the identity identifier, so that the storage terminal may determine the private key in the key pair according to the identity identifier, and determine the private identity by using the device identifier.
  • the key is returned to the query device.
  • the data corresponding to the identity identifier is stored in the blockchain corresponding to the identity identifier.
  • the query terminal may further determine the identity identifier by using the blockchain storage node according to the identity identifier. Corresponding blockchain to continue subsequent data query operations.
  • the query terminal may search for a blockchain corresponding to the identity identifier in the blockchain storage node according to the identity identifier, and determine the blockchain, of course, if in the blockchain storage node When the blockchain corresponding to the identity is not found, the query terminal can throw an error and display the information of the query error.
  • S203 Decrypt the data in the blockchain according to the private key and perform a query.
  • the data may be queried according to the determined blockchain corresponding to the identity identifier and the private key.
  • the query terminal may first determine, from the blockchain storage node, each encrypted data packet corresponding to the identity identifier in the blockchain, and according to the chronological order of each encrypted data packet (ie, according to each encryption) The chronological order of the timestamp carried in the data packet, determining the most recently stored encrypted data packet as the encrypted data packet corresponding to the identity identifier, and after extracting the encrypted data packet corresponding to the identity identifier, according to the private key, The encrypted data packet is decrypted to obtain all the data corresponding to the identity identifier, and finally the data query is performed on all the data according to the data query instruction.
  • the queried terminal can only decrypt the encrypted data packet corresponding to the identity identifier, but cannot encrypt the queried terminal, and the queried terminal cannot be corresponding to the identity identifier.
  • the terminal may first determine a generation time of each data block in the blockchain, and generate data from the latest generation time.
  • Each encrypted data packet is determined in the block, that is, it is determined that each encrypted data packet is stored in the data block with the latest generation time in the blockchain, and the subsequent operations are continued.
  • the execution bodies of the steps of the method provided by the embodiment of the present application may all be the same device, or the method may also be performed by different devices.
  • the execution subject of step S201 and step S202 may be device 1
  • the execution subject of step S203 may be device 2
  • the execution subject of step S201 may be device 1
  • the execution subject of step S202 and step S203 may be device 2 ;and many more.
  • a data access system is also provided in the embodiment of the present application, as shown in FIG. 3.
  • FIG. 3 is a schematic structural diagram of a data access system according to an embodiment of the present disclosure.
  • the data access system includes: a plurality of storage devices, a plurality of query devices, and a plurality of blockchain storage nodes, wherein:
  • the blockchain storage node is configured to store a blockchain corresponding to the identity identifier
  • the storage device determines a data storage instruction, and determines, according to the identity identifier carried in the data storage instruction, a corresponding blockchain of the identity identifier and a corresponding identifier of the identity identifier.
  • the key pair stores the data to be stored in the blockchain corresponding to the identity identifier in the blockchain storage node according to the key pair.
  • the querying device determines a data query instruction, and determines, according to the identity identifier carried in the data query instruction, a corresponding blockchain of the identity identifier and a corresponding identifier of the identity identifier.
  • the private key decrypts the data in the blockchain node through the private key and performs a query.
  • the storage device that generates the identity identifier may send the identity identifier and the key pair corresponding to the identity identifier. To the specified other storage device. And the storage device that generates the identity identifier may generate the blockchain in only one blockchain storage node, and the blockchain storage node may store the data The other blockchain storage nodes in the system broadcast the blockchain to keep the data in all blockchain storage nodes in the data access system consistent.
  • the data querying device may send a request for acquiring the private key to any of the storage devices to obtain the private key, and perform a subsequent data query operation.
  • the key pairs corresponding to the identity identifiers stored in advance may not be identical, and different key pairs may be used to encrypt different types of data.
  • any device can obtain the encrypted data packet corresponding to the identity identifier, and decrypt and obtain the data corresponding to the identity identifier, so in order to ensure the security of the data in the blockchain.
  • the storage device ie, the device specified by the federation blockchain
  • the blockchain storage node stores The encrypted data is the trusted data.
  • the data query device and the storage device obtain the data corresponding to the identity identifier through the blockchain storage node, and only the encrypted data in the blockchain storage node can be obtained. package.
  • each blockchain storage node may be used in each blockchain storage node for each storage device. And each data query device accesses, other blockchain storage nodes may be standby nodes, and when the blockchain storage node fails to work normally, select any spare blockchain storage node to continue working, and pass any The spare blockchain storage node recovers the blockchain storage node that is not working properly.
  • the blockchain storage node and the storage device may be the same, that is, each blockchain storage node is also a storage device, or when in the data access system
  • each blockchain storage node is also a storage device
  • some of the blockchain storage nodes in the blockchain storage nodes are also storage devices, and the remaining blockchain storage nodes are only blocks.
  • the chain storage node, or some storage devices in all storage devices are also blockchain storage nodes, and the remaining storage devices are only storage devices.
  • the identity identifier may be a citizen's ID number
  • the storage device may be a data storage device of a credible unit such as a government agency or a government unit
  • the data query device may be a society. Any device that needs to perform data query, as shown in Figure 4.
  • the data access can be as shown in FIG. 4.
  • the blockchain storage node may be a data storage node provided by the government, and all data corresponding to the citizen ID number may be the citizen's archive data, credit data, bank account data, etc., of course, any The citizen-related data can be written into the blockchain corresponding to the citizen ID number.
  • the data storage device of the credible unit such as different government agencies and government units may be used to store different types of data in the blockchain corresponding to the citizen ID card.
  • the public security bureau may The citizen's criminal record, account information, etc. perform data storage operations
  • the civil affairs department may perform data storage operations on the citizen's marital status
  • the bank may perform data storage operations on the citizen's account data and credit data, etc.
  • the specific process may be This is achieved by different key pairs as described in step S102 and in FIG.
  • the data query device may be a device held by the citizen, or may be a data query device of other public and private organizations.
  • the visa approval department may send a request for calling a private key to the above government agency or government unit.
  • the storage device may be a storage device corresponding to a plurality of companies or units having a federation relationship, for example, a storage device corresponding to a car rental company, a bank, a traffic authority, and the like, respectively.
  • the inquiry device may be a terminal held by the driver or a terminal held by the traffic police. Then, since all the data corresponding to the citizen can be stored in the blockchain, there is no need to establish a special inquiry system, and the data access system as shown in FIG. 4 can conveniently check the vehicles and drivers on the road. .
  • the embodiment of the present application further provides a device for data storage, as shown in FIG. 5 .
  • FIG. 5 is a schematic structural diagram of an apparatus for data storage according to an embodiment of the present disclosure, including:
  • the first determining module 301 is configured to determine a data storage instruction, where the data storage instruction carries an identity identifier and data to be stored;
  • the second determining module 302 determines, according to the identity identifier, a blockchain corresponding to the identity identifier and a key pair corresponding to the identity identifier;
  • the storage module 303 stores the to-be-stored data in the blockchain according to the key pair.
  • the storage module 303 stores the to-be-stored data in a data block in the blockchain to generate the latest time.
  • the second determining module 302 determines, according to the pre-stored identity identifier, the key pair, and the corresponding relationship of the blockchain, whether the blockchain storage node has a blockchain corresponding to the identity identifier. If yes, determining, by the blockchain storage node, a blockchain corresponding to the identity identifier and a key pair corresponding to the identity identifier, and if not, generating a blockchain corresponding to the identity identifier And a key pair corresponding to the identity.
  • the storage module 303 invokes the blockchain corresponding to the identity identifier.
  • Encrypting the data packet decrypting the encrypted data packet by using a private key of the key pair, obtaining all data corresponding to the identity identifier in the encrypted data packet, and updating the data according to the to-be-stored data packet
  • the packet is time stamped and stored in the blockchain, and the blockchain storing the updated encrypted data packet and time stamp is stored in the blockchain storage node.
  • the storage module 303 When the second determining module 302 determines that there is a blockchain corresponding to the identity identifier, the storage module 303 generates initial data corresponding to the identity identifier according to the identity identifier, according to the to-be-stored data. And updating the initial data as the update data, generating the key pair corresponding to the identity identifier, and encrypting the update data by using a public key of the key pair, as the encryption corresponding to the identity identifier And generating, by the data packet, the blockchain corresponding to the identity identifier, and storing the encrypted data packet in the blockchain, where the blockchain storing the updated encrypted data packet and a timestamp is stored Stored in the blockchain storage node.
  • the second determining module 302 sends the key pair corresponding to the identity identifier and the identity identifier to each preset device.
  • the device for storing data as shown in FIG. 5 may be located in a terminal, the terminal may be a device such as a mobile phone or a tablet computer, or the device for storing the data may be located in a server, and the server may be a separate device.
  • the terminal may be a device such as a mobile phone or a tablet computer
  • the device for storing the data may be located in a server
  • the server may be a separate device.
  • the embodiment of the present application further provides a device for querying data, as shown in FIG. 6.
  • FIG. 6 is a schematic structural diagram of another apparatus for querying data according to an embodiment of the present disclosure, including:
  • the first determining module 401 is configured to determine a data query instruction, where the data query instruction carries an identity identifier
  • the second determining module 402 determines, according to the identity identifier, a blockchain corresponding to the identity identifier and a private key corresponding to the identity identifier;
  • the query module 403 decrypts the data in the blockchain according to the private key and performs a query.
  • the second determining module 402 determines the private key according to the pre-stored correspondence between the identity identifier and the private key of the key pair, or sends the identifier to the designated device according to the identity identifier.
  • the private key request is taken and the returned private key is received.
  • the query module 403 determines, from the blockchain storage node, each encrypted data packet corresponding to the identity identifier in the blockchain, and determines the most recently stored encrypted data according to the chronological order of the stored encrypted data packets.
  • the packet is used as an encrypted data packet corresponding to the identity identifier, and the encrypted data packet is decrypted according to the private key and then queried.
  • the device for querying data as shown in FIG. 6 may be located in a terminal, and the terminal may be a device such as a mobile phone or a tablet computer, or the device for storing the data may be located in a server, and the server may be a separate device.
  • the terminal may be a device such as a mobile phone or a tablet computer, or the device for storing the data may be located in a server, and the server may be a separate device.
  • embodiments of the present invention can be provided as a method, system, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment, or a combination of software and hardware. Moreover, the invention can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) including computer usable program code.
  • computer-usable storage media including but not limited to disk storage, CD-ROM, optical storage, etc.
  • the computer program instructions can also be stored in a computer readable memory that can direct a computer or other programmable data processing device to operate in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture comprising the instruction device.
  • the apparatus implements the functions specified in one or more blocks of a flow or a flow and/or block diagram of the flowchart.
  • a computing device includes one or more processors (CPUs), input/output interfaces, network interfaces, and memory.
  • processors CPUs
  • input/output interfaces network interfaces
  • memory volatile and non-volatile memory
  • the memory may include non-persistent memory, random access memory (RAM), and/or non-volatile memory in a computer readable medium, such as read only memory (ROM) or flash memory.
  • RAM random access memory
  • ROM read only memory
  • Memory is an example of a computer readable medium.
  • Computer readable media includes both permanent and non-persistent, removable and non-removable media.
  • Information storage can be implemented by any method or technology.
  • the information can be computer readable instructions, data structures, modules of programs, or other data.
  • Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read only memory. (ROM), electrically erasable programmable read only memory (EEPROM), flash memory or other memory technology, compact disk read only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, Magnetic tape cartridges, magnetic tape storage or other magnetic storage devices or any other non-transportable media can be used to store information that can be accessed by a computing device.
  • computer readable media does not include temporary storage of computer readable media, such as modulated data signals and carrier waves.
  • embodiments of the present application can be provided as a method, system, or computer program product.
  • the present application can take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment in combination of software and hardware.
  • the application may employ calculations in one or more of them
  • the computer usable program code may be in the form of a computer program product embodied on a storage medium (including but not limited to disk storage, CD-ROM, optical storage, etc.).

Abstract

本申请公开了一种数据存取的方法、系统及装置,在数据存储时,先确定数据存储指令,之后根据该数据存储指令中携带的身份标识,确定与该身份标识对应的区块链以及密钥对,最后根据该密钥对,将待存储数据存储在该区块链中,在数据查询时,先确定数据查询指令,之后根据该数据查询指令对应的身份标识,确定与该身份标识对应的区块链以及私钥,最后根据该私钥,将该区块链中的数据解密后查询。可见,通过本申请实施例提供的方法,使得存取对应该身份标识的数据时,无需访问多个数据库,仅需通过访问该身份标识对应的该区块链,以及通过密钥对进行数据存储,使得保证数据安全的同时,可以简化操作的复杂性,提高数据存取的效率。

Description

一种数据存取的方法、系统及装置 技术领域
本申请涉及信息技术领域,尤其涉及一种数据存取的方法、系统及装置。
背景技术
随着信息技术的发展,以及数字化办公的广泛流行,各行各业每天都要产生大量的需要存储的数据。于是,数据存储技术成为人们关注的热点之一。
现有数据存储技术的通用解决方法是采用数据库技术实现数据存储,即,通过一个数据库管理中心,管理一个或者多个存储数据的设备,并通过该数据库管理中心管理数据的增查改删(Create、Retrieve、Update、Delete,CRUD)操作。随着现有数据存储技术的不断进步,逐渐发展完善出分布式数据库技术等新的数据存储技术,使得数据存储无论是在存储速度、数据占用空间方面,还是在数据管理的便利性等方面,都有着大幅度提高,不断满足着人们对数据存储的需求。
但是,在现有技术中,不同企业或单位使用的数据库通常独立运行,并由各自的数据库管理中心分别管理,当需要获取多个企业或单位分别存储的数据时,就需要分别从不同的数据库获取对应的数据,导致数据获取过程比较复杂。
此外,由于考虑导数据安全的问题,通常并不是每一个企业或单位的数据库都可公开访问,这导致难以通过网络顺利获取相关数据。而且,通常在获取数据时,需要先在有资质的部门证明自己的身份(或者获取数字证书),才能到该企业或单位通过已经证明的身份信息(或者该数字证书),获取到的数据,这进一步导致获取数据的困难程度变大。
发明内容
本申请实施例提供一种数据存储以及查询的方法、装置及系统,用于解决 现有数据存储技术中因数据存储于相互独立的不同数据库导致的获取多个数据库中数据的操作复杂、效率低的问题。
本申请实施例采用下述技术方案:
一种数据存储的方法,包括:
确定数据存储指令,其中,所述数据存储指令中携带有身份标识和待存储数据;
根据所述身份标识,确定所述身份标识对应的区块链以及所述身份标识对应的密钥对;
根据所述密钥对,将所述待存储数据存储在所述区块链中。
一种数据查询的方法,包括:
确定数据查询指令,其中,所述数据查询指令中携带有身份标识;
根据所述身份标识,确定所述身份标识对应的区块链以及所述身份标识对应的私钥;
根据所述私钥,将所述区块链中的数据解密后进行查询。
一种数据存取的系统,包括若干存储设备、若干查询设备以及若干区块链存储节点,其中:
所述区块链存储节点,用于存储身份标识对应的区块链;
所述存储设备,确定数据存储指令,根据所述数据存储指令中携带的身份标识,确定所述身份标识对应区块链以及所述身份标识对应的密钥对,根据所述密钥对,将待存储数据存储在所述区块链存储节点中与所述身份标识对应的区块链中;
所述查询设备,确定数据查询指令,根据所述数据查询指令中携带的身份标识,确定所述身份标识对应区块链以及所述身份标识对应的私钥,通过所述私钥解密所述区块链节点中的数据,并进行查询。
一种数据存储的装置,包括:
第一确定模块,确定数据存储指令,其中,所述数据存储指令中携带有身 份标识和待存储数据;
第二确定模块,根据所述身份标识,确定所述身份标识对应的区块链以及所述身份标识对应的密钥对;
存储模块,根据所述密钥对,将所述待存储数据存储在所述区块链中。
一种数据查询的装置,所述装置包含振动马达以及传感器,包括:
第一确定模块,确定数据查询指令,其中,所述数据查询指令中携带有身份标识;
第二确定模块,根据所述身份标识,确定所述身份标识对应的区块链以及所述身份标识对应的私钥;
查询模块,根据所述私钥,将所述区块链中的数据解密后进行查询。
本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:
在数据存储时,先确定数据存储指令,之后根据该数据存储指令中携带的身份标识,确定与该身份标识对应的区块链以及密钥对,最后根据该密钥对,将待存储数据存储在该区块链中,在数据查询时,先确定数据查询指令,之后根据该数据查询指令对应的身份标识,确定与该身份标识对应的区块链以及私钥,最后根据该私钥,将该区块链中的数据解密后查询。可见通过本申请实施例提供的方法,使得存取对应该身份标识的数据时,无需访问多个数据库,仅需通过访问该身份标识对应的该区块链即可,并且只有通过该密钥对才可进行数据存储,使得在保证数据安全的同时,简化了操作的复杂性,提高了数据存取的效率。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请实施例提供的数据存储的过程;
图2为本申请实施例提供的一种数据查询的过程;
图3为本申请实施例提供的数据存取系统的结构示意图;
图4为本申请实施例提供的另一种数据存取系统的结构示意图;
图5为本申请实施例提供的一种数据存储的装置的结构示意图;
图6为本申请实施例提供的另一种数据查询的装置的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
由于本申请涉及到区块链技术,在详细介绍本申请的实施例之前,先对区块链的概念进行适当说明。“区块链”之区块是组成区块链的基本单元,该区块可以包括两部分:一是区块头部,二是区块体。区块头部至少可以包括三方面的信息,即本区块的识别信息(比如HASH值),本区块的上一区块的识别信息,以及时间戳等。正是由于一个区块包含上一个区块的识别信息,使得多个区块可以形成链条,进而构成区块链。区块链具有诸多良好而优秀的特性,比如,去中心化:由于使用分布式核算和存储,不存在中心化的硬件或管理机构,任意节点的权利和义务均等,系统中的数据块由整个系统中具有维护功能的节点来共同维护;自治性:区块链采用基于协商一致的规范和协议(比如一套公开透明的算法)使得整个系统中的所有节点能够在去信任的环境自由安全的交换数据,使得对“人”的信任改成了对机器的信任,任何人为的干预不起作用;信息不可篡改:一旦信息经过验证并添加至区块链,就会永久的存储起来,除非能够同时控制住系统中超过51%的节点,否则单个节点上对数据库的修改是无效的,因此区块链的数据稳定性和可靠性极高等。
以下结合附图,详细说明本申请各实施例提供的技术方案。
图1为本申请实施例提供的数据存储的过程,具体包括以下步骤:
S101:确定数据存储指令。
通常,在数据存储的过程中,执行数据存储的设备,可以根据数据存储指令,将待存储数据存储在指定的存储设备中,比如,在数据库中存储数据时,执行数据存储的设备可以根据接收到的数据存储指令,将数据存储在数据库所在设备中。这里的设备可以是单独的一台设备,也可以是由多台设备组成的系统,该设备可以是手机、个人电脑、平板电脑、服务器等设备,也可以是其他设备,本申请对此不作具体限定。由于本申请实施例后续还将提供数据查询的方法以及装置,为便于描述(而非处于限制的目的),后续将执行数据存储过程的设备,均称为存储终端。
具体的,由于该存储终端可用于执行数据存储的过程,所以可由该存储终端确定数据存储指令。对于数据存储指令的来源,可以是由该存储终端生成的,也可以是由该存储终端接收的,具体该数据存储指令如何而来,本申请并对此不做限定,只要该存储终端可以确定该数据存储指令即可。对于数据存储指令的内容,本申请实施例中可以使其携带身份标识以及待存储数据。也就是说,该存储终端在确定该数据存储指令时,可以确定该数据存储指令携带的身份标识,以及该数据存储指令需要对其进行存储操作的待存储数据。其中,该身份标识可以是公民的身份证号、账号标识、邮箱标识等,只要该身份标识是全局唯一的标识即可,本申请对此不作具体限定,当然,为了方便后续描述,以下以身份标识为公民的身份证号为例进行说明。
S102:根据所述身份标识,确定所述身份标识对应的区块链以及所述身份标识对应的密钥对。
在本申请实施例中,当该存储终端确定该数据存储指令之后,由于该存储终端还可以确定该数据存储指令携带的身份标识以及待存储数据,所以该存储终端还可根据该身份标识确定,与该身份标识对应的区块链以及与该身份标识 对应的密钥对。并在后续数据存储过程中,将在步骤S101中确定的该待存储数据存储在该区块链中。
在本申请实施例中,“身份标识对应的区块链”表明了身份标识与区块链之间的关系。在实际应用过程中,身份标识按照其性质可以表现为至少两种类型:主体区分型身份标识和事务区分型身份标识,不同类型的身份标识可能对应的区块链不同。对于前者,不同的主体(比如,自然人A、自然人B),可能具有与之对应的不同的区块链,对于后者,不同的事务(比如,购买图书的报名事务、聚集活动事务),可能具有与之对应的不同区块链。下面针对身份标识及对应的区块链分别举例说明:
假定现在要利用区块链技术来进行个人档案存储。个人档案通常包括多种信息,这些信息来自于不同的政府部门或相关机构进行的记录,比如:对于自然A,其档案信息中可以包括公安机关对A的户籍进行记录形成的户籍信息,民政部门对A的婚姻状况进行记录形成的婚姻状态信息,人民银行对A的个人贷款进行记录形成贷款信息,雇主对A的个人雇佣关系进行记录形成雇佣信息。这些信息在不同时期形成,利用区块链技术可以均将其存储到一个区块链中,由此,这个区块链便是专属于(对应于)自然人A的区块链。同理,对于自然B,可以具有存储B的个人档案的区块链,以此类推,还可以具有其它以自然人的身份不同形成的海量区块链。这样,在由多个区块链存储节点形成的网络中,由于可能同时存在多个区块链,为了将一个主体新产生的个人档案信息写入到先前已存在的该主体的区块链中,便需要先根据该主体的身份标识确定(找到)其对应的区块链。该类身份标识其性质便是主体区分性身份标识。
假定现在要利用区块链技术在微信群中进行购买图书报名事务。第一个发起购买图书A报名活动的人,将序号和姓名发到微信群中(1、姓名1),第二个也想要购买图书A的人在该信息后面添加自己的信息后发到微信群中,即(1、姓名1;2、姓名2),以此类推。这一整体过程形成购买图书A的一个区块链(区块链A)。但是,在该微信群中,可能同时还存在是否购买图书B的报名活 动(或者其它事务,比如,组织饭局等),第一个发起购买图书B的人,将序号和姓名发到微信群中,以此类推,形成一个购买图书B的一个区块链(区块链B)。在一个微信群中同时存在两个及以上的区块链的情况下,需要向链条中添加信息的人便要找到对应的区块链,比如,购买图书A的人需要找到区块链A,购买图书B的人需要找到区块链B。这样,在由多个区块链存储节点(类似于微信群的群成员所在的设备)形成的网络中,由于可能同时存在多个区块链,为了将一个事务产生的事务更新信息写入到先前已存在的该事务的区块链中,便需要先根据该事务的身份标识确定(找到)其对应的区块链。该类身份标识其性质便是事务区分性身份标识。
在本申请实施例中,该身份标识对应的区块链可以是联盟区块链,即,不是任一终端都具有对该区块链进行数据存储操作的权限,而只有指定的终端才具有对该区块链进行数据存储的操作权限,以此保证数据存储时该区块链中的数据安全性以及数据的真实性,当然,在本申请的另外实施例中,该区块链还可以是公有链、私有链等性质。需要说明的是,这里的指定的终端在实际过程中如何确定,与区块链的性质等因素有关,本申请并不做具体限定。比如,在如本申请上述实施例中,区块链为联盟区块链,那么该指定终端可以由该联盟确定。在此基础上,本申请上述实施例中,执行步骤S101、步骤S102以及后续的数据存储过程的存储终端,则可以是该指定的终端,即,有权限对该区块链进行数据存储的终端)。
在本申请实施例中,存储终端可根据步骤S101中确定的该身份标识,以及预先存储的身份标识、密钥对以及区块链的对应关系,判断区块链存储节点中是否存在与该身份标识对应的区块链,如果区块链存储节点有多个,则可以通过在至少一个该区块链存储节点中进行查找确定身份标识对应的区块链。这里身份标识与区块链之间的对应关系可以存储在存储终端,也可以存储在区块链存储节点所形成的网络中的各个节点中,甚至还可以存储在第三方设备上,实务中,具体存在何处,可以依据读取的便捷性、读取速度、安全性等角度进 行考虑。比如,将身份标识与区块链之间的对应关系存储在存储终端本地,可能更便于读写。同样的道理,对于身份标识与密钥对之间的对应关系,也可以根据实际情况选择存储地点。此外,还需要说明的是:这里的区块链存储节点与该存储终端可以是同一设备,也可以是不同的设备,本申请不做具体限定。为了保证数据的安全性,通常在区块链技术中,可以存在多个区块链存储节点,这样,区块链则可以保存在多个区块链存储节点中,当有一个区块链存储节点出现故障(如,宕机、数据丢失等情况)时,可由其他没有出现故障的任一区块链存储节点继续工作,并可以根据没有出现故障的区块链存储节点中存储的数据(即,该区块链中存储的数据),修复出现故障的区块链存储节点。
在进行身份标识是否存在对应的区块链的判断之后,如果存在与身份标识对应的区块链,则可以进一步确定与该身份标识对应的密钥对;如果不存在与身份标识对应的区块链,则生成与该身份标识对应的区块链以及与该身份标识对应的密钥对。具体而言:
当该区块链存在时,由于在本申请中,该存储终端可以是指定的存储终端,所以该存储终端中还可以预先存储有该身份标识对应的密钥对,则该存储终端可以确定与该身份标识对应的区块链以及与该身份标识对应的密钥对。其中,确定的该区块链中存储有与该身份标识对应的加密数据包,而该密钥对可用于解密以及加密与该身份标识对应的加密数据包,该存储终端确定该区块链以及该密钥对便可以继续后续的数据存储过程。需要说明的是,当与该身份标识对应的区块链存在时,该存储终端在确定该密钥对时,也可以向其他指定设备发送获取该身份标识对应的密钥对的请求,其中,该请求中可携带有该存储终端的标识,以使得其他指定设备确定该存储终端也同样属于指定设备,具有获取该密钥对的权限,并返回该密钥对使得该存储终端获得该密钥对。需要说明的是,该存储终端在确定该密钥对时,也可根据实际应用的需要而采用不同的方法,本申请对此并不做具体限定。
当不存在与该身份标识对应的区块链时,该存储终端可以生成与该身份标 识对应的区块链以及与该身份标识对应的密钥对,其中,该生成的区块链用于存储与该身份标识对应的数据,并且为了保证数据安全,该数据可以是经过打包加密操作之后的加密数据包,即,该区块链中可以存储与该身份标识对应的加密数据包,则该密钥对可用于使指定设备对该区块链中的数据进行存储,即,该密钥对可用于解密以及加密与该身份标识对应的加密数据包,使该指定设备可在该区块链中存储数据。
S103:根据所述密钥对,将所述待存储数据存储在所述区块链中。
在本申请实施例中,当该存储终端确定与该身份标识对应的区块链以及与该身份标识对应的密钥对之后,该存储终端便可将该数据存储指令中携带的待存储数据存储在该区块链中,以完成数据存储过程。
具体地,由于在步骤S102中,存储终端确定区块链以及密钥对的情况存在差异,下面也针对两种情形分别予以说明:
情形一:当该存储终端经过判断确定,与该身份标识对应的区块链存在时,则该存储终端可先从该区块链存储节点中,调用该区块链中与该身份标识对应的加密数据包,之后该存储终端便可根据该密钥对中的私钥,对该加密数据包进行解密,以获得该加密数据包中与该身份标识对应的所有数据,然后,该存储终端可以根据该待存储数据更新该所有数据得到与该身份标识对应的更新数据,最后,该存储终端可通过该密钥对中的公钥,将该更新数据进行加密,作为更新加密数据包,并在为该更新加密数据包添加时间戳后,存储在该区块链中,将存储有该更新加密数据包和时间戳的该区块链存储到区块链存储节点中。其中,上述与该身份标识对应的所有数据在更新得到更新数据时,该更新数据便成为与该身份标识对应的所有数据。需要说明的是,由于本申请中采用区块链技术,所以当存储该区块链至该区块链存储节点时,该区块链存储节点可以将该区块链广播之其他区块链存储节点中,以使得所有区块链存储节点中存储的该区块链一致。
情形二:当该存储终端经过判断确定,与该身份标识对应的区块链不存在 时,该存储终端可生成与该身份标识对应的区块链以及与该身份标识对应的密钥对,其中,该存储终端首先可根据该身份标识,生成该身份标识对应的初始数据,之后再根据该待存储数据,更新该初始数据,作为更新数据,然后生成该身份标识对应的该密钥对,并使用该密钥对的公钥对该更新数据进行加密,作为该身份标识对应的加密数据包,最后,生成该身份标识对应的该区块链,并将该加密数据包存储在该区块链中,并将存储有该更新加密数据包的该区块链存储到区块链存储节点中。其中,该身份标识的初始数据具体包括何种数据本申请并不做具体限定,可根据实际使用时的需要进行确定。
另外,在本申请中,该待存储数据存储在该区块链中生成时间最晚的数据块中,具体的,当确定该区块链之后,该存储终端可根据该区块链中各数据块的生成时间,确定生成时间最晚的数据块,并且,由于一个数据块中可存储有与该身份标识对应的多个加密数据包,所以在本申请中该存储终端还可根据各加密数据包携带的时间戳,确定存储时间最晚的加密数据包,作为该身份标识对应的加密数据包。
进一步地,由于该存储终端在存储该待存储数据时,时间该身份标识对应的加密数据包调用后,进行更新的,所以该存储终端在该区块链中存储的加密数据包中可以包含该身份标识对应的所有数据,即,每一次更新后的加密数据包中均包含了该身份标识对应的所有数据,使得在根据时间戳调用该加密数据包时,调用该加密数据包的设备可以得到该身份标识对应的所有数据,而无需再调用其他数据。
更进一步地,当该存储终端生成该身份标识对应的密钥对时,该存储终端还可以将该密钥对以及该身份标识发送至各预设的设备,其中该预设的设备。具体的,该存储终端可根据预先设置的各设备的地址,将该密钥对以及该身份标识,发送至各设备,其中,该预设的各设备可以是各指定设备,即,拥有对该身份标识对应的区块链进行数据存储的权限的设备。
需要说明的是,在本申请中,该区块链存储于该区块链存储节点中,其中, 任一该区块链存储节点可以是一台设备或者多台设备组成的系统,并用于存储该区块链。该区块链中存储有该身份标识对应的加密数据包,不同的区块链存储节点中均可存储有该区块链,并且不同区块链存储节点中的该区块链一致,该区块链与该区块链存储节点不是同一概念,需要区别理解。
通过如图1所示的数据存储的方法,将该待存储数据存储于该身份标识对应的区块链中,使得该身份标识对应的所有数据均可存储与该数据链中,避免了该身份标识对应的数据存储与不同设备时,需要反复调用数据的步骤,提高了数据存储以及数据查询的效率。同时,通过联盟区块链的技术方法,使得只有指定的存储终端具有对该身份标识对应的数据进行存储的权限,并且,基于区块链技术的特点,对该身份标识对应的数据的任何操作均会记录在该区块链中,使得该身份标识对应的数据的安全性的到保证,同时提供了对追溯该身份标识对应的数据的变化的可能性。
另外,由于该存储终端可以在步骤S102中确定该身份标识对应的密钥对,使得该存储终端可以对调用的该身份标识对应的加密数据包进行解密,并得到该身份标识对应的所有数据,并且,之后该存储终端还需要根据该密钥对该更新数据进行加密,才可将该身份标识对应的加密数据包存储在该区块链中,使得只有拥有该身份标识对应的密钥对的存储终端才可以对该区块链中的数据进行存储,并且,在本申请中,只有该指定的设备才可以获得该密钥对,保证了该区块链中数据的安全性。
进一步地,在本申请中,为了保证该区块链中存储数据的安全性,该存储终端在调用该区块链中的数据时,可仅调用该区块链中的加密数据包,并确定只有通过该密钥对中的私钥进行加密后的数据才是可信的、安全的。
更进一步地,由于在本申请中,该身份标识对应的所有数据均可存储于该身份标识对应的区块链中,而在该联盟区块链中,不同的指定设备可以用于对该身份标识对应的不同数据的存储操作,例如,该身份标识可对应有基础数据(如,用户属性、用户类型等),也可对应有账户数据(如,账户余额、账户 类型等),也可对应有操作习惯信息(如,历史行为数据等),可见,该基础数据可由负责该身份标识对应的基础信息的设备进行维护(如,用户中心),该账户数据可由负责记账的设备进行维护,而该操作习惯数据可由广告推送设备进行维护,也就是说,在本申请中,不同的设备可维护该身份标识对应的不同类型的数据。
具体的,可为该联盟区块链中的不同指定设备分配不同的密钥对,其中,不同的密钥对均有相同的私钥,用于对该身份标识对应的加密数据包进行解密,但是,不同的密钥对拥有不同的公钥,并且不同的公钥仅能对指定类型的数据进行加密,使得拥有不同密钥对的设备仅可对指定类型的数据进行存储操作。其中,该密钥对的配置可由工作人员确定,具体如何配置,本申请对此不再赘述,只要通过该密钥对使得,不同的设备具有对不同类型的数据进行数据加密的权限即可。
例如,设备A、设备B以及设备C,分别拥有不同的密钥对X、Y、Z,切密钥对X、Y、Z可对身份标识a对应的所有数据中的x、y、z类型的数据进行加密,如表1所示。
设备 密钥对 数据类型
设备A 密钥对X x类型数据
设备B 密钥对Y y类型数据
设备C 密钥对Z z类型数据
表1
其中该x、y、z类型的数据包含了该身份标识a对应的所有数据,则通过不同的密钥对,使得该设备A、B、C,仅可对该身份标识a对应的一部分数据进行存储,提高了数据存储时的安全性,减少了对该身份标识对应数据的误操作的几率。
需要说明的是,本申请实施例所提供方法的各步骤的执行主体均可以是同一设备,或者,该方法也由不同设备作为执行主体。比如,步骤S101和步骤 S102的执行主体可以为设备1,步骤S103的执行主体可以为设备2;又比如,步骤S101的执行主体可以为设备1,步骤S102和步骤S103的执行主体可以为设备2;等等。
基于图1所示的数据存储过程,本申请实施例还对应提供一种数据查询的方法,如图2所示。
图2为本申请实施例提供的一种数据查询的过程,具体包括以下步骤:
S201:确定数据查询指令。
在本申请实施例中,可由终端确定数据查询指令,并继续后续的数据查询过程,其中该终端可以是手机、平板电脑、个人电脑、服务器等设备,并且该终端可以是单独的一台设备,也可以是有多台设备组成的系统,本申请对此不做具体限定。
具体的,该数据查询指令中可携带有身份标识,用于后续确定查询数据的时的区块链。其中,该数据查询指令可由该终端生成并确定,当然,在本申请实施例中,该终端也可接收该数据查询指令并确定该数据查询指令,本申请并不限定该数据查询指令是如何生成的,只要该终端可以确定该数据查询指令即可。
需要说明的是,在本申请中,图2所示的数据查询过程中的执行主体(即,终端)与图1所示的数据存储过程中的执行主体可以不相同,为了以示区别,后续描述中以查询终端表示执行数据查询过程的终端,以存储终端表示执行数据存储过程的终端。
S202:根据所述身份标识,确定所述身份标识对应的区块链以及所述身份标识对应的私钥。
在本申请实施例中,由于该查询终端仅需查询该身份标识对应的数据,所以,该查询终端可以根据该身份标识,确定该身份标识对应的区块链以及该身份标识对应的私钥。
具体的,在本申请实施例中,该查询终端可根据该预先存储的该身份标识 与该密钥对的私钥的对应关系,确定该私钥。或者,当该查询终端中没有预先存储该身份标识对应的私钥时,该查询终端还可以向图1中所述的该指定终端(即,上述的存储终端)发送获取私钥的请求,并接收返回的该私钥。其中,该获取私钥的请求中可携带有该查询终端的设备标识以及该身份标识,以便该存储终端可根据该身份标识确定密钥对中的私钥,并通过该设备标识确定将该私钥返回该查询设备。
另外,由于该身份标识对应的数据均存储在该身份标识对应的区块链中,所以在本申请中,该查询终端还可以根据该身份标识,通过该区块链存储节点,确定该身份标识对应的区块链,以便继续后续的数据查询操作。
具体的,该查询终端可根据该身份标识,在该区块链存储节点中,查找与该身份标识对应的区块链,并确定该区块链,当然,若在该区块链存储节点中没有查找到与该身份标识对应的区块链时,则该查询终端可抛出错误,并显示查询错误的信息。
S203:根据所述私钥,将所述区块链中的数据解密后进行查询。
在本申请实施例中,当该查询终端确定该私钥后,便可根据确定的该身份标识对应的区块链以及该私钥,对数据进行查询。
具体的,该查询终端可先从区块链存储节点中,确定该区块链中与该身份标识对应的各加密数据包,并根据各加密数据包存储的时间先后顺序(即,根据各加密数据包携带的时间戳的时间先后顺序),确定最近存储的加密数据包,作为与该身份标识对应的加密数据包,调取该身份标识对应的加密数据包后,根据该私钥,将该加密数据包进行解密,以得到该身份标识对应的所有数据,最后根据该数据查询指令对该所有数据进行数据查询。
其中,由于该查询终端仅拥有该身份标识对应的私钥,使得该查询终端仅能对该身份标识对应的加密数据包进行解密,而无法加密,则该查询终端无法在对该身份标识对应的数据进行更新后,存储于该区块链中,保证了该区块链中存储数据的安全性。
另外,该终端在从该区块链存储节点中,确定与该身份标识对应的各加密数据包时,可先确定该区块链中各数据块的生成时间,并从生成时间最晚的数据块中确定各加密数据包,即,确定该区块链中生成时间最晚的数据块中存储各加密数据包,并继续后续的操作。
需要说明的是,本申请实施例所提供方法的各步骤的执行主体均可以是同一设备,或者,该方法也由不同设备作为执行主体。比如,步骤S201和步骤S202的执行主体可以为设备1,步骤S203的执行主体可以为设备2;又比如,步骤S201的执行主体可以为设备1,步骤S202和步骤S203的执行主体可以为设备2;等等。
基于图1所示的数据存储过程以及图2所示的数据查询过程,在本申请实施例中还对应提供一种数据存取的系统,如图3所示。
图3为本申请实施例提供的数据存取系统的结构示意图,在该数据存取系统中包含:若干存储设备、若干查询设备以及若干区块链存储节点,其中:
该区块链存储节点,用于存储身份标识对应的区块链;
该存储设备(即,本申请实施例图1中所述的存储终端),确定数据存储指令,根据该数据存储指令中携带的身份标识,确定该身份标识对应区块链以及该身份标识对应的密钥对,根据该密钥对,将待存储数据存储在该区块链存储节点中与该身份标识对应的区块链中。
该查询设备(即,本申请实施例图2中所述的查询终端),确定数据查询指令,根据该数据查询指令中携带的身份标识,确定该身份标识对应区块链以及该身份标识对应的私钥,通过该私钥解密该区块链节点中的数据,并进行查询。
其中,当该数据存取系统中的任一存储设备,生成该身份标识对应的区块链时,生成该身份标识的该存储设备,可将该身份标识以及该身份标识对应的密钥对发送至指定的其他存储设备。并且,生成该身份标识的该存储设备可仅在一个区块链存储节点中生成该区块链,则该区块链存储节点,可向该数据存 取系统中的其他区块链存储节点广播该区块链,以使得该数据存取系统中的所有区块链存储节点中的数据保持一致。
另外,该数据查询设备在确定该身份标识对应的私钥时,可向任一该存储设备发送获取该私钥的请求,以获得该私钥,并进行后续的数据查询操作。
进一步地,该数据存取系统中的不同存储设备中,预先存储的该身份标识对应的密钥对可以不完全相同,并且,不同的密钥对可用于对不同类型的数据进行加密。
更进一步地,由于在该数据存取系统中,任一设备均可获得该身份标识对应的加密数据包,并且进行解密获取该身份标识对应的数据,所以为了保证该区块链中数据的安全性以及可信度,只有该存储设备(即,该联盟区块链指定的设备)可以对该身份标识对应的数据进行加密,所以在该数据存取系统中,该区块链存储节点中存储的加密数据才是可信的数据,于是,该数据查询设备以及该存储设备在通过该区块链存储节点获取该身份标识对应的数据是,可以仅获取该区块链存储节点中的加密数据包。
另外,由于该数据存取系统中存在多个区块链存储节点,于是,为了方便存储数据的一致性,在各区块链存储节点中可以仅有一个区块链存储节点用于使各存储设备以及各数据查询设备进行访问,其他区块链存储节点可以是备用节点,并当该区块链存储节点无法正常工作时,选择任一的备用区块链存储节点继续工作,并通过任一的备用区块链存储节点恢复该无法正常工作的区块链存储节点。当然,如何启用该备用区块链存储节点,如何确定正在工作的区块链存储节点无法正常工作,可以根据实际应用时的情况由工作人员进行设置,本申请对此不做具体限定,并且,由于防止主设备停止工作时,业务无法正常执行,而使用备用设备接替住设备的技术方案已经相当成熟,所以本申请也就不再赘述。
进一步地,在该数据存取系统中,该区块链存储节点与该存储设备可以是同一个,即,每一个区块链存储节点也是存储设备,或者当在该数据存取系统 中,该区块链存储节点的数量与该存储设备的数量不一致时,全部区块链存储节点中的部分区块链存储节点也是存储设备,而剩余的区块链存储节点则仅是区块链存储节点,或者,全部存储设备中的部分存储设备也是区块链存储节点,而剩余的存储设备则仅是存储设备。
通过本申请实施例图3提供的数据存取系统,可见,由于不同的存储设备可以对该身份标识对应的不同类型的数据进行存储,并且该身份标识对应的数据均存储与该身份标识对应的区块链中,并且,该区块链存储节点是任一数据查询设备均可访问并调用数据的,所以使得通过本申请的数据存取系统可以有效地避免由于数据存储在多台设备中导致的效率低,操作复杂的问题。
另外,在本申请的另一实施例中,该身份标识可以是公民的身份证号,该存储设备可以是政府机关、政府单位等具有公信力的单位的数据存储设备,该数据查询设备可以是社会中任一需要进行数据查询的设备,如图4所示。则,在本申请中,该数据存取的可如图4所示。该区块链存储节点可以是由政府提供的数据存储节点,而与该公民身份证号相对应的所有数据则可以是该公民的档案数据、信用数据、银行账户数据等等,当然,任何与该公民相关的数据,均可以写入该公民身份证号对应的区块链中。
进一步地,不同的政府机关、政府单位等具有公信力的单位的数据存储设备,可用于对该公民身份证好对应的区块链中的不同类型的数据进行存储操作,例如,公安局可对该公民的犯罪记录、户口信息等进行数据存储操作,而民政部门可对该公民的婚姻状况进行数据存储操作,银行可对该公民的账户数据、信用数据进行数据存储操作等等,具体的过程可如步骤S102以及图1中所述的通过不同的密钥对实现。
更进一步地,该数据查询设备可以是该公民持有的设备,也可以是其他公私单位的数据查询设备,例如,签证审批部门,可以通过向上述政府机关、政府单位发送调用私钥的请求,获取与该公民的身份证对应的私钥,来查询该公民的信息,或者是用人单位,通过向上述政府机关、政府单位发送调用私钥的 请求,获取与该公民的身份证对应的私钥,来查询该公民的信息等等。
另外,在本申请的另一实施例中,该存储设备可以是多个具有联盟关系的公司或者单位分别对应的存储设备,例如,租车公司、银行、交通管理局等分别对应的存储设备,该查询设备可以是司机持有的终端或者交通警察持有的终端。则,由于该公民对应的所有数据均可存储于该区块链中,则无需建立特别的查询系统,而通过如图4所述的数据存取系统,可以方便对路上的车辆以及司机进行排查。
基于图1所示的数据存储过程,本申请实施例还对应提供一种数据存储的装置,如图5所示。
图5为本申请实施例提供的一种数据存储的装置的结构示意图,包括:
第一确定模块301,确定数据存储指令,其中,所述数据存储指令中携带有身份标识和待存储数据;
第二确定模块302,根据所述身份标识,确定所述身份标识对应的区块链以及所述身份标识对应的密钥对;
存储模块303,根据所述密钥对,将所述待存储数据存储在所述区块链中。
所述存储模块303,将所述待存储数据存储在所述区块链中生成时间最晚的数据块中。
所述第二确定模块302,根据预先存储的所述身份标识、所述密钥对以及所述区块链的对应关系,判断区块链存储节点是否存在与所述身份标识对应的区块链,若是,则在区块链存储节点中,确定与所述身份标识对应的区块链以及与所述身份标识对应的密钥对,若否,则生成与所述身份标识对应的区块链以及与所述身份标识对应的密钥对。
当所述第二确定模块302确定存在与所述身份标识对应的区块链时,所述存储模块303,从区块链存储节点中,调用所述区块链中与所述身份标识对应的加密数据包,通过所述密钥对的私钥,对所述加密数据包进行解密,获得所述加密数据包中与所述身份标识对应的所有数据,根据所述待存储数据更新所 述加密数据包中与所述身份标识对应的所有数据,以获得更新数据,通过所述密钥对的公钥,对所述更新数据进行加密,作为更新加密数据包,为所述更新加密数据包添加时间戳,并存储在所述区块链中,将存储有所述更新加密数据包和时间戳的所述区块链存储到区块链存储节点中。
当所述第二确定模块302确定存在与所述身份标识对应的区块链时,所述存储模块303,根据所述身份标识,生成所述身份标识对应的初始数据,根据所述待存储数据,更新所述初始数据,作为更新数据,生成所述身份标识对应的所述密钥对,并使用所述密钥对的公钥对所述更新数据进行加密,作为所述身份标识对应的加密数据包,生成所述身份标识对应的所述区块链,并将所述加密数据包存储在所述区块链中,将存储有所述更新加密数据包和时间戳的所述区块链存储到区块链存储节点中。
所述第二确定模块302,将生成所述身份标识对应的所述密钥对以及所述身份标识发送至各预设的设备。
具体的,上述如图5所示的数据存储的装置可以位于终端中,所述终端可以是手机、平板电脑等设备,或者该数据存储的装置可以位于服务器中,该服务器可以是单独的一台设备,或由多台设备组成的系统,即,分布式服务器。。
基于图2所示的数据查询过程,本申请实施例还对应提供一种数据查询的装置,如图6所示。
图6为本申请实施例提供的另一种数据查询的装置的结构示意图,包括:
第一确定模块401,确定数据查询指令,其中,所述数据查询指令中携带有身份标识;
第二确定模块402,根据所述身份标识,确定所述身份标识对应的区块链以及所述身份标识对应的私钥;
查询模块403,根据所述私钥,将所述区块链中的数据解密后进行查询。
所述第二确定模块402,根据所述预先存储的所述身份标识与所述密钥对的私钥的对应关系,确定所述私钥,或者根据所述身份标识向指定设备发送获 取私钥请求,并接收返回的所述私钥。
所述查询模块403,从区块链存储节点中,确定所述区块链中与所述身份标识对应的各加密数据包,根据各加密数据包存储的时间先后顺序,确定最近存储的加密数据包,作为与所述身份标识对应的加密数据包,根据所述私钥,将所述加密数据包进行解密后查询。
具体的,上述如图6所示的数据查询的装置可以位于终端中,所述终端可以是手机、平板电脑等设备,或者该数据存储的装置可以位于服务器中,该服务器可以是单独的一台设备,或由多台设备组成的系统,即,分布式服务器。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处 理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算 机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (20)

  1. 一种数据存储的方法,其特征在于,所述方法包括:
    确定数据存储指令,所述数据存储指令中携带有身份标识和待存储数据;
    根据所述身份标识,确定所述身份标识对应的区块链以及所述身份标识对应的密钥对;
    根据所述密钥对,将所述待存储数据存储在所述区块链中。
  2. 如权利要求1所述的方法,其特征在于,将所述待存储数据存储在所述区块链中,具体包括:
    将所述待存储数据存储在所述区块链中生成时间最晚的数据块中。
  3. 如权利要求1所述的方法,其特征在于,确定所述身份标识对应的区块链以及与所述身份标识对应的密钥对,具体包括:
    根据预先存储的所述身份标识、所述密钥对以及所述区块链的对应关系,判断区块链存储节点是否存在与所述身份标识对应的区块链;
    若是,则在区块链存储节点中,确定与所述身份标识对应的区块链以及与所述身份标识对应的密钥对;
    若否,则生成与所述身份标识对应的区块链以及与所述身份标识对应的密钥对。
  4. 如权利要求3所述的方法,其特征在于,当确定存在与所述身份标识对应的区块链时,根据所述密钥对,将所述待存储数据存储在所述区块链中,具体包括:
    从区块链存储节点中,调用所述区块链中与所述身份标识对应的加密数据包;
    通过所述密钥对的私钥,对所述加密数据包进行解密,获得所述加密数据包中与所述身份标识对应的所有数据;
    根据所述待存储数据更新所述加密数据包中与所述身份标识对应的所有 数据,以获得更新数据;
    通过所述密钥对的公钥,对所述更新数据进行加密,作为更新加密数据包;
    为所述更新加密数据包添加时间戳,并存储在所述区块链中;
    将存储有所述更新加密数据包和时间戳的所述区块链存储到区块链存储节点中。
  5. 如权利要求3所述的方法,其特征在于,当确定不存在与所述身份标识对应的区块链时,根据所述密钥对,将所述待存储数据存储在所述区块链中,具体包括:
    根据所述身份标识,生成所述身份标识对应的初始数据;
    根据所述待存储数据,更新所述初始数据,作为更新数据;
    生成所述身份标识对应的所述密钥对,并使用所述密钥对的公钥对所述更新数据进行加密,作为所述身份标识对应的加密数据包;
    生成所述身份标识对应的所述区块链,并将所述加密数据包存储在所述区块链中;
    将存储有所述更新加密数据包的所述区块链存储到区块链存储节点中。
  6. 如权利要求3所述方法,其特征在于,生成所述身份标识对应的所述密钥对,具体包括:
    将生成所述身份标识对应的所述密钥对以及所述身份标识发送至各预设的设备。
  7. 一种数据查询方法,其特征在于,包括:
    确定数据查询指令,其中,所述数据查询指令中携带有身份标识;
    根据所述身份标识,确定所述身份标识对应的区块链以及所述身份标识对应的私钥;
    根据所述私钥,将所述区块链中的数据解密后进行查询。
  8. 如权利要求7所述的方法,其特征在于,根据所述身份标识,确定对应密钥对的私钥,具体包括:
    根据所述预先存储的所述身份标识与所述密钥对的私钥的对应关系,确定所述私钥;或者
    根据所述身份标识向指定设备发送获取私钥请求,并接收返回的所述私钥。
  9. 如权利要求7所述的方法,其特征在于,根据所述私钥,将所述区块链中的数据解密后进行查询,具体包括:
    从区块链存储节点中,确定所述区块链中与所述身份标识对应的各加密数据包;
    根据各加密数据包存储的时间先后顺序,确定最近存储的加密数据包,作为与所述身份标识对应的加密数据包;
    根据所述私钥,将所述加密数据包进行解密后查询。
  10. 一种数据存取的系统,其特征在于,所述系统包括:若干存储设备、若干查询设备以及若干区块链存储节点,其中:
    所述区块链存储节点,用于存储身份标识对应的区块链;
    所述存储设备,确定数据存储指令,根据所述数据存储指令中携带的身份标识,确定所述身份标识对应区块链以及所述身份标识对应的密钥对,根据所述密钥对,将待存储数据存储在所述区块链存储节点中与所述身份标识对应的区块链中;
    所述查询设备,确定数据查询指令,根据所述数据查询指令中携带的身份标识,确定所述身份标识对应区块链以及所述身份标识对应的私钥,通过所述私钥解密所述区块链节点中的数据,并进行查询。
  11. 如权利要求10所述的系统,其特征在于,任一所述存储设备,生成所述身份标识对应的区块链时,将生成所述身份标识对应的所述密钥对以及所述身份标识发送至指定的各所述存储设备。
  12. 如权利要求11所述系统,其特征在于,任一所述查询设备,根据所述预先存储的所述身份标识与所述密钥对的私钥的对应关系,确定所述私钥; 或者根据所述身份标识向所述存储设备发送获取私钥请求,并接收返回的所述私钥。
  13. 一种数据存储的装置,其特征在于,包括:
    第一确定模块,确定数据存储指令,其中,所述数据存储指令中携带有身份标识和待存储数据;
    第二确定模块,根据所述身份标识,确定所述身份标识对应的区块链以及所述身份标识对应的密钥对;
    存储模块,根据所述密钥对,将所述待存储数据存储在所述区块链中。
  14. 如权利要求13所述的装置,其特征在于,所述存储模块,将所述待存储数据存储在所述区块链中生成时间最晚的数据块中。
  15. 如权利要求13所述的装置,其特征在于,所述第二确定模块,根据预先存储的所述身份标识、所述密钥对以及所述区块链的对应关系,判断区块链存储节点是否存在与所述身份标识对应的区块链,若是,则在区块链存储节点中,确定与所述身份标识对应的区块链以及与所述身份标识对应的密钥对,若否,则生成与所述身份标识对应的区块链以及与所述身份标识对应的密钥对。
  16. 如权利要求15所述的装置,其特征在于,当所述第二确定模块确定存在与所述身份标识对应的区块链时,所述存储模块,根据所述身份标识,生成所述身份标识对应的初始数据,根据所述待存储数据,更新所述初始数据,作为更新数据,生成所述身份标识对应的所述密钥对,并使用所述密钥对的公钥对所述更新数据进行加密,作为所述身份标识对应的加密数据包,生成所述身份标识对应的所述区块链,并将所述加密数据包存储在所述区块链中,将存储有所述更新加密数据包和时间戳的所述区块链存储到区块链存储节点中。
  17. 如权利要求15所述的装置,其特征在于,所述第二确定模块,将生成所述身份标识对应的所述密钥对以及所述身份标识发送至各预设的设备。
  18. 一种数据查询装置,其特征在于,包括:
    第一确定模块,确定数据查询指令,其中,所述数据查询指令中携带有身份标识;
    第二确定模块,根据所述身份标识,确定所述身份标识对应的区块链以及所述身份标识对应的私钥;
    查询模块,根据所述私钥,将所述区块链中的数据解密后进行查询。
  19. 如权利要求18所述的装置,其特征在于,所述第二确定模块,根据所述预先存储的所述身份标识与所述密钥对的私钥的对应关系,确定所述私钥,或者根据所述身份标识向指定设备发送获取私钥请求,并接收返回的所述私钥。
  20. 如权利要求18所述的装置,其特征在于,所述查询模块,从区块链存储节点中,确定所述区块链中与所述身份标识对应的各加密数据包,根据各加密数据包存储的时间先后顺序,确定最近存储的加密数据包,作为与所述身份标识对应的加密数据包,根据所述私钥,将所述加密数据包进行解密后查询。
PCT/CN2017/111538 2016-11-24 2017-11-17 一种数据存取的方法、系统及装置 WO2018095275A1 (zh)

Priority Applications (7)

Application Number Priority Date Filing Date Title
ES17873246T ES2809170T3 (es) 2016-11-24 2017-11-17 Método, sistema y aparato para el acceso a datos
EP17873246.7A EP3547198B1 (en) 2016-11-24 2017-11-17 Method, system and apparatus for data access
JP2019528138A JP6880188B2 (ja) 2016-11-24 2017-11-17 データアクセスのための方法、システム、および装置
PL17873246T PL3547198T3 (pl) 2016-11-24 2017-11-17 Sposób, system i aparat dostępu do danych
KR1020197018096A KR102155462B1 (ko) 2016-11-24 2017-11-17 데이터 액세스를 위한 방법, 시스템 및 장치
US16/422,641 US10536265B2 (en) 2016-11-24 2019-05-24 Method, system and apparatus for data storage and data access
US16/656,990 US10938550B2 (en) 2016-11-24 2019-10-18 Method, system and apparatus for data storage and data access

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201611050311.4A CN106991334B (zh) 2016-11-24 2016-11-24 一种数据存取的方法、系统及装置
CN201611050311.4 2016-11-24

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US16/422,641 Continuation US10536265B2 (en) 2016-11-24 2019-05-24 Method, system and apparatus for data storage and data access

Publications (1)

Publication Number Publication Date
WO2018095275A1 true WO2018095275A1 (zh) 2018-05-31

Family

ID=59414265

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2017/111538 WO2018095275A1 (zh) 2016-11-24 2017-11-17 一种数据存取的方法、系统及装置

Country Status (10)

Country Link
US (2) US10536265B2 (zh)
EP (1) EP3547198B1 (zh)
JP (1) JP6880188B2 (zh)
KR (1) KR102155462B1 (zh)
CN (1) CN106991334B (zh)
ES (1) ES2809170T3 (zh)
PL (1) PL3547198T3 (zh)
SG (1) SG10202100217PA (zh)
TW (1) TWI701572B (zh)
WO (1) WO2018095275A1 (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110084690A (zh) * 2019-03-18 2019-08-02 深圳壹账通智能科技有限公司 数据处理方法、装置、计算机装置及存储介质
CN110597840A (zh) * 2019-09-26 2019-12-20 腾讯科技(深圳)有限公司 基于区块链的伴侣关系建立方法、装置、设备及存储介质
JP2020502861A (ja) * 2018-11-27 2020-01-23 アリババ・グループ・ホールディング・リミテッドAlibaba Group Holding Limited コンソーシアムブロックチェーンネットワーク内の非対称鍵管理
CN111125187A (zh) * 2019-11-29 2020-05-08 立旃(上海)科技有限公司 基于区块链的数据管理方法及装置
WO2021024717A1 (ja) * 2019-08-06 2021-02-11 ソニー株式会社 情報処理装置、情報処理方法及びプログラム

Families Citing this family (95)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106991334B (zh) 2016-11-24 2021-03-02 创新先进技术有限公司 一种数据存取的方法、系统及装置
US11631077B2 (en) * 2017-01-17 2023-04-18 HashLynx Inc. System for facilitating secure electronic communications between entities and processing resource transfers
CN107451175B (zh) * 2017-05-23 2020-01-31 创新先进技术有限公司 一种基于区块链的数据处理方法及设备
CN107562775B (zh) * 2017-07-14 2020-04-24 创新先进技术有限公司 一种基于区块链的数据处理方法及设备
US11093924B2 (en) * 2017-07-31 2021-08-17 Mastercard International Incorporated Method and system for verification of device authenticity
CN107241360B (zh) * 2017-08-04 2019-01-18 北京明朝万达科技股份有限公司 一种数据安全共享交换方法和数据安全共享交换平台系统
CN107767478B (zh) * 2017-09-06 2020-10-16 阿里巴巴集团控股有限公司 一种保存工作记录的方法及装置
CN107786639A (zh) * 2017-09-28 2018-03-09 山东鲁能智能技术有限公司 一种基于区块链技术的电动汽车车联网系统及其工作方法
CN107862215B (zh) * 2017-09-29 2020-10-16 创新先进技术有限公司 一种数据存储方法、数据查询方法及装置
CN109656882A (zh) * 2017-10-10 2019-04-19 上海能链众合科技有限公司 数据记录方法、提取方法及装置、存储介质、终端
CN107907636A (zh) * 2017-10-30 2018-04-13 深圳市世和丹利投资管理有限公司 农药残留物的检测结果管理系统及其检测结果管理方法
CN107945312A (zh) * 2017-10-31 2018-04-20 深圳市轱辘车联数据技术有限公司 一种车辆检测方法及其设备
CN110019516B (zh) 2017-11-10 2021-08-20 华为技术有限公司 一种信息管理方法、装置及系统
CN109784084B (zh) * 2017-11-14 2022-03-22 中国电信股份有限公司 数据交易方法、装置和系统
CN110019463A (zh) * 2017-11-22 2019-07-16 南京理工大学 一种多方共享的数据存储查询方法和系统
CN109903676A (zh) * 2017-12-08 2019-06-18 上海仪电(集团)有限公司中央研究院 一种基于智能合约的广告牌及路灯
CN108023894B (zh) * 2017-12-18 2020-09-11 苏州优千网络科技有限公司 基于区块链的签证信息系统及其处理方法
CN109981551A (zh) * 2017-12-28 2019-07-05 航天信息股份有限公司 一种基于区块链的数据传输系统、方法及相关设备
CN108458724B (zh) * 2017-12-29 2021-06-04 歌尔科技有限公司 一种计步方法和装置
CN108073829A (zh) * 2017-12-29 2018-05-25 上海唯链信息科技有限公司 用于记录对象的运输数据的方法、介质、物联网设备、区块链平台和物联网系统
CN108335425A (zh) * 2018-02-01 2018-07-27 深圳市轱辘车联数据技术有限公司 一种基于区块链的车辆信息处理方法及服务器
US10956075B2 (en) * 2018-02-02 2021-03-23 Bank Of America Corporation Blockchain architecture for optimizing system performance and data storage
US11176101B2 (en) 2018-02-05 2021-11-16 Bank Of America Corporation System and method for decentralized regulation and hierarchical control of blockchain architecture
GB2572389A (en) 2018-03-28 2019-10-02 Sony Corp A device, requesting device, method and computer program
CN108519862B (zh) * 2018-03-30 2020-03-17 百度在线网络技术(北京)有限公司 区块链系统的存储方法、装置、系统和存储介质
CN108667717B (zh) * 2018-04-20 2021-06-08 网易(杭州)网络有限公司 基于即时通信消息记录的区块链处理方法、介质、装置和计算设备
CN108764975A (zh) * 2018-05-13 2018-11-06 深圳纬目信息技术有限公司 一种基于区块链的广告传播方法和装置
CN110492990B (zh) * 2018-05-15 2021-10-15 华为技术有限公司 区块链场景下的私钥管理方法、装置及系统
CN108932297B (zh) * 2018-06-01 2022-03-22 创新先进技术有限公司 一种数据查询、数据共享的方法、装置及设备
CN109241352A (zh) * 2018-06-28 2019-01-18 平安科技(深圳)有限公司 个人档案信息的获取方法及服务器
KR102121930B1 (ko) * 2018-07-03 2020-06-11 네이버 주식회사 블록체인 기반의 개인 데이터 처리 방법 및 시스템
CN109150968B (zh) * 2018-07-13 2021-09-14 上海大学 一种基于秘密共享的区块链分布式存储方法
GB2593116A (en) * 2018-07-16 2021-09-22 Sita Information Networking Computing Uk Ltd Self sovereign identity
CN111897498A (zh) * 2018-07-27 2020-11-06 创新先进技术有限公司 区块链数据的多级存储方法和装置
EP3831013A4 (en) * 2018-07-27 2022-04-20 HRL Laboratories, LLC SYSTEM AND METHOD FOR PROTECTING LIGHT DEVICE DATA PRIVACY USING BLOCKCHAIN AND MULTI-PARTY COMPUTING
CN109064173A (zh) * 2018-08-01 2018-12-21 江苏恒宝智能系统技术有限公司 一种节点信息管理系统和方法
US11373258B2 (en) * 2018-08-07 2022-06-28 Mastercard International Incorporated Financial institution mortgage portfolio asset inventory auction systems and methods
CN109246192A (zh) * 2018-08-10 2019-01-18 北斗链信息科技(广州)有限公司 基于北斗rdss的区块链系统及其实现方法
CN109165957A (zh) * 2018-08-14 2019-01-08 海南高灯科技有限公司 基于区块链的发票数据报销方法、系统及相关设备
CN109255856B (zh) * 2018-08-20 2019-11-19 深圳市长龙铁路电子工程有限公司 一种基于区块链技术的机车信号设备数据记录方法
CN109299188A (zh) * 2018-08-21 2019-02-01 平安科技(深圳)有限公司 利用区块链数据存储方法、装置及电子设备
CN109087078B (zh) * 2018-08-27 2023-03-24 深圳市智税链科技有限公司 关于电子票据的数据处理方法、装置、存储介质和设备
CN109118179A (zh) * 2018-08-31 2019-01-01 篱笆墙网络科技有限公司 一种职员招聘方法及招聘平台
CN109493093A (zh) * 2018-09-26 2019-03-19 百度在线网络技术(北京)有限公司 基于区块链的用户行为信息处理方法和装置
CN109583215B (zh) * 2018-09-28 2022-11-15 创新先进技术有限公司 一种处理征信数据的方法及装置、区块链数据共享系统
CN109068318A (zh) * 2018-10-08 2018-12-21 重庆邮电大学 一种智能手机中个人信息的保护方法
US11849047B2 (en) * 2018-10-09 2023-12-19 International Business Machines Corporation Certifying authenticity of data modifications
US10992456B2 (en) * 2018-10-09 2021-04-27 International Business Machines Corporation Certifying authenticity of data modifications
US11374762B2 (en) 2018-10-09 2022-06-28 International Business Machines Corporation Certifying authenticity of data modifications
CN110046517B (zh) * 2018-11-07 2020-05-05 阿里巴巴集团控股有限公司 一种对写入区块链的交易进行隐匿的方法及装置
CN110011800B (zh) 2018-11-07 2020-04-14 阿里巴巴集团控股有限公司 一种区块链数据读取方法及装置
WO2019072273A2 (en) 2018-11-16 2019-04-18 Alibaba Group Holding Limited CHAIN INTERACTIONS USING A DOMAIN NAME SYSTEM IN BLOCK CHAIN SYSTEMS
JP6688939B2 (ja) * 2018-11-16 2020-04-28 アリババ・グループ・ホールディング・リミテッドAlibaba Group Holding Limited ブロックチェーンシステム内のクロスチェーン相互作用に対するドメイン名方式
PL3549324T3 (pl) 2018-11-16 2021-07-19 Advanced New Technologies Co., Ltd. Schemat zarządzania nazwą domeny dla interakcji międzyłańcuchowych w systemach łańcuchów bloków
CN110020945B (zh) 2018-11-27 2020-10-30 创新先进技术有限公司 一种基于多个区块链网络的数据读取方法及系统
CN110060153B (zh) * 2018-11-27 2020-11-17 创新先进技术有限公司 一种基于多个区块链网络的数据存证方法及系统
CN110060152B (zh) * 2018-11-27 2020-10-30 创新先进技术有限公司 一种基于多个区块链网络的数据读取方法及系统
CN109758629B (zh) * 2018-11-30 2023-03-21 平安科技(深圳)有限公司 透析数据的传输方法、装置、设备及存储介质
CN110033261B (zh) * 2018-12-26 2021-07-13 创新先进技术有限公司 区块链数据处理方法、装置及系统
CN110011959B (zh) * 2019-01-07 2021-09-10 诚镌科技有限公司 数据存储方法、数据查询方法和系统
CN109886026A (zh) * 2019-01-11 2019-06-14 平安科技(深圳)有限公司 数据保存查询方法、装置、计算机系统及可读存储介质
US11368441B2 (en) * 2019-01-29 2022-06-21 Mastercard International Incorporated Method and system for general data protection compliance via blockchain
CN109828832B (zh) * 2019-01-30 2021-12-28 百度在线网络技术(北京)有限公司 基于区块链的数据流通方法、装置、设备和介质
CN111783134B (zh) * 2019-01-31 2024-04-16 创新先进技术有限公司 一种对写入区块链的交易进行隐匿的方法及装置
CN109981584B (zh) * 2019-02-26 2021-10-26 符安文 一种基于区块链的分布式社交方法
CN109951295B (zh) * 2019-02-27 2021-12-24 百度在线网络技术(北京)有限公司 密钥处理和使用方法、装置、设备及介质
CN109981622B (zh) * 2019-03-15 2021-06-18 智链万源(北京)数字科技有限公司 区块链网络节点权限反向代理方法及设备
CN109918451B (zh) * 2019-03-28 2021-06-25 中国联合网络通信集团有限公司 基于区块链的数据库管理方法及系统
US10999283B2 (en) 2019-04-15 2021-05-04 Advanced New Technologies Co., Ltd. Addressing transaction conflict in blockchain systems
CN110189121B (zh) * 2019-04-15 2021-04-09 创新先进技术有限公司 数据处理方法、装置、区块链客户端和区块链节点
CN110035130B (zh) * 2019-04-24 2021-07-13 中国联合网络通信集团有限公司 一种数据处理方法及装置
US11009859B2 (en) * 2019-05-06 2021-05-18 Fisher-Rosemount Systems, Inc. Framework for privacy-preserving big-data sharing using distributed ledger
CN110232080B (zh) * 2019-05-23 2021-06-29 智慧谷(厦门)物联科技有限公司 一种基于区块链的快速检索方法
CN110458558A (zh) * 2019-07-04 2019-11-15 重庆金融资产交易所有限责任公司 基于区块链的数据保密方法、装置和计算机设备
KR102064244B1 (ko) 2019-08-06 2020-01-09 제주대학교 산학협력단 하이퍼체인을 이용한 블록체인 연결 방법 및 그 장치
CN112181976A (zh) * 2019-08-08 2021-01-05 北京天德博源科技有限公司 基于区块链的小额贷款存证
US11847171B2 (en) * 2019-08-20 2023-12-19 International Business Machines Corporation Facilitating blockchain transactions with an Internet of Things (IoT) device
US11032062B2 (en) * 2019-09-17 2021-06-08 Switchbit, Inc. Data processing permits system with keys
CN110659967B (zh) * 2019-09-26 2023-06-23 腾讯科技(深圳)有限公司 一种基于区块链的房屋管理方法及装置
JP6687798B1 (ja) * 2019-10-01 2020-04-28 データテック株式会社 データ管理システムおよびデータ管理方法
CN111222169B (zh) * 2019-10-10 2023-04-18 深圳创链数据科技有限公司 一种基于区块链技术的智能设备认证系统及方法
CN110765488B (zh) * 2019-10-28 2021-11-16 联想(北京)有限公司 数据存储与读取方法和电子设备
US20210150632A1 (en) * 2019-11-18 2021-05-20 Willporttrust Llc Systems and methods for authenticated voucher distribution using blockchain
CN110909011A (zh) * 2019-12-03 2020-03-24 北京海益同展信息科技有限公司 公民信息的处理方法、装置、设备及存储介质
CN111127206B (zh) * 2019-12-25 2021-04-16 中国银联股份有限公司 一种基于智能合约的区块链数据访问控制方法及装置
WO2021137391A1 (ko) * 2019-12-30 2021-07-08 재단법인 경주스마트미디어센터 비밀 공유를 이용한 블록 체인 생성 방법
CN111464500B (zh) * 2020-03-06 2023-03-17 深圳壹账通智能科技有限公司 协议数据共享的方法、装置、设备及存储介质
CN111737362B (zh) * 2020-07-22 2020-12-22 百度在线网络技术(北京)有限公司 区块链处理方法、装置、设备和存储介质
CN112087439B (zh) * 2020-09-02 2022-05-17 杭州趣链科技有限公司 区块链交易查询方法、系统、计算机设备和存储介质
CN112115434B (zh) * 2020-09-28 2023-06-27 上海对外经贸大学 一种基于区块链的舆情存证信息组织跨层级异构授权方法
CN112350438A (zh) * 2020-10-28 2021-02-09 广东电网有限责任公司 一种电量管理的方法、装置、设备及存储介质
CN112702419B (zh) * 2020-12-21 2023-03-24 杭州趣链科技有限公司 基于区块链的数据处理方法、装置、设备和存储介质
CN112995205B (zh) * 2021-04-13 2021-08-20 北京百度网讯科技有限公司 基于区块链的查询方法、装置、设备和存储介质
CN113222344A (zh) * 2021-04-15 2021-08-06 卓尔智联(武汉)研究院有限公司 一种区块链数据处理方法、装置及存储介质
CN113132950B (zh) * 2021-06-21 2022-02-15 智己汽车科技有限公司 一种基于区块链处理行驶数据的方法和装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105975868A (zh) * 2016-04-29 2016-09-28 杭州云象网络技术有限公司 一种基于区块链的证据保全方法及装置
CN106055993A (zh) * 2016-08-13 2016-10-26 深圳市樊溪电子有限公司 一种用于区块链的加密存储系统及其使用方法
CN106096444A (zh) * 2016-06-12 2016-11-09 杨鹏 一种基于生物信息的身份识别与社会信息记录方法及系统
CN106130779A (zh) * 2016-07-18 2016-11-16 布比(北京)网络技术有限公司 一种物联设备及用该设备的物联网构建方法
CN106991334A (zh) * 2016-11-24 2017-07-28 阿里巴巴集团控股有限公司 一种数据存取的方法、系统及装置

Family Cites Families (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5858507B2 (ja) 1979-09-21 1983-12-26 ヨツギ株式会社 支線への葛の巻上り防止具
JP4196561B2 (ja) * 2001-12-12 2008-12-17 日本電気株式会社 コンテンツ配信方法、サーバ端末、中継サーバ、サーバクラスタ及びプログラム
JP3978046B2 (ja) * 2002-02-25 2007-09-19 日本電信電話株式会社 ファイルアクセス制御方法、プログラム及び記憶媒体
JP2003333038A (ja) * 2002-05-15 2003-11-21 Sogo Keibi Hosho Co Ltd 電子検証装置、電子検証方法およびその方法をコンピュータに実行させるプログラム
US20190111255A1 (en) * 2009-03-20 2019-04-18 Electrocore, Inc. Systems and methods for initial provisioning and refilling of medical devices
US10778659B2 (en) * 2012-05-24 2020-09-15 Smart Security Systems Llc System and method for protecting communications
US9898782B1 (en) * 2013-06-28 2018-02-20 Winklevoss Ip, Llc Systems, methods, and program products for operating exchange traded products holding digital math-based assets
CN103634307A (zh) * 2013-11-19 2014-03-12 北京奇虎科技有限公司 一种对网页内容进行认证的方法和浏览器
WO2016175914A2 (en) * 2015-02-27 2016-11-03 Visa International Service Association Transaction signing utilizing asymmetric cryptography
US9965628B2 (en) * 2015-03-02 2018-05-08 Dell Products Lp Device reporting and protection systems and methods using a secure distributed transactional ledger
US10158480B1 (en) * 2015-03-16 2018-12-18 Winklevoss Ip, Llc Autonomous devices
US20160283920A1 (en) * 2015-03-28 2016-09-29 Justin Fisher Authentication and verification of digital data utilizing blockchain technology
JP6364132B2 (ja) * 2015-03-31 2018-07-25 ナスダック, インコーポレイテッドNasdaq, Inc. ブロックチェーン取引記録のシステムおよび方法
US9397985B1 (en) * 2015-04-14 2016-07-19 Manifold Technology, Inc. System and method for providing a cryptographic platform for exchanging information
EP3955146A1 (en) * 2015-05-05 2022-02-16 Ping Identity Corporation Identity management service using a block chain
JP5858507B1 (ja) * 2015-05-18 2016-02-10 株式会社Orb 仮想通貨管理プログラム、及び仮想通貨管理方法
US10089489B2 (en) * 2015-06-02 2018-10-02 ALTR Solutions, Inc. Transparent client application to arbitrate data storage between mutable and immutable data repositories
WO2017010455A1 (ja) * 2015-07-13 2017-01-19 日本電信電話株式会社 契約合意方法、合意検証方法、契約合意システム、合意検証装置、契約合意装置、契約合意プログラム及び合意検証プログラム
US20170031676A1 (en) * 2015-07-27 2017-02-02 Deja Vu Security, Llc Blockchain computer data distribution
US20170116693A1 (en) * 2015-10-27 2017-04-27 Verimatrix, Inc. Systems and Methods for Decentralizing Commerce and Rights Management for Digital Assets Using a Blockchain Rights Ledger
US20180253702A1 (en) * 2015-11-24 2018-09-06 Gartland & Mellina Group Blockchain solutions for financial services and other transactions-based industries
US10841082B2 (en) * 2015-11-24 2020-11-17 Adi BEN-ARI System and method for blockchain smart contract data privacy
CN105701372B (zh) * 2015-12-18 2019-04-09 布比(北京)网络技术有限公司 一种区块链身份构建及验证方法
CN105719185B (zh) * 2016-01-22 2019-02-15 杭州复杂美科技有限公司 区块链的数据对比及共识方法
US20170243193A1 (en) * 2016-02-18 2017-08-24 Skuchain, Inc. Hybrid blockchain
CN106130728B (zh) * 2016-04-29 2019-07-26 北京太一云科技有限公司 一种基于区块链的数字资产登记方法及其服务器
US11341243B2 (en) * 2016-04-29 2022-05-24 Vladimir Mickael LEAL MONTEIRO Mobile communication peripheral, system for protecting a mobile terminal and communication method
US10046228B2 (en) * 2016-05-02 2018-08-14 Bao Tran Smart device
US9774578B1 (en) * 2016-05-23 2017-09-26 Accenture Global Solutions Limited Distributed key secret for rewritable blockchain
US10198325B2 (en) * 2016-05-24 2019-02-05 Mastercard International Incorporated Method and system for desynchronization recovery for permissioned blockchains using bloom filters
CN105959119A (zh) * 2016-06-09 2016-09-21 惠众商务顾问(北京)有限公司 随机加密物理信息区块链防伪方法、系统和装置
CN106100847B (zh) * 2016-06-14 2021-10-26 惠众商务顾问(北京)有限公司 非对称加密区块链身份信息验证方法及装置
US10454683B2 (en) * 2016-06-17 2019-10-22 Capital One Services, Llc Blockchain systems and methods for user authentication
CN106097073A (zh) * 2016-06-20 2016-11-09 深圳市淘淘谷信息技术有限公司 一种用区块链来赋予数字账户交易过程独有id的方法
CN106157040A (zh) * 2016-07-12 2016-11-23 詹博凯 一种基于智能移动终端的协同交易方法及系统
US11258587B2 (en) * 2016-10-20 2022-02-22 Sony Corporation Blockchain-based digital rights management
GB201617913D0 (en) * 2016-10-24 2016-12-07 Trustonic Limited Multi-stakeholder key setup for lot
US20180144292A1 (en) * 2016-11-22 2018-05-24 Wal-Mart Stores, Inc. Apparatus and method for tracking consumer premises inventory
US20180254898A1 (en) * 2017-03-06 2018-09-06 Rivetz Corp. Device enrollment protocol
US10404455B2 (en) * 2017-09-01 2019-09-03 Accenture Global Solutions Limited Multiple-phase rewritable blockchain
US10992454B2 (en) * 2018-01-30 2021-04-27 Disney Enterprises, Inc. Blockchain configuration for secure content delivery
CN111727594B (zh) * 2018-01-31 2023-04-04 有线电视实验室公司 使用数字分类账进行隐私管理的系统和方法
US10084600B1 (en) * 2018-04-16 2018-09-25 Xage Security, Inc. Decentralized information protection for confidentiality and tamper-proofing on distributed database
US20190325038A1 (en) * 2018-04-21 2019-10-24 Keir Finlow-Bates Consensus based editable blockchain
US10325079B1 (en) * 2018-12-04 2019-06-18 Capital One Services, Llc Version management platform

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105975868A (zh) * 2016-04-29 2016-09-28 杭州云象网络技术有限公司 一种基于区块链的证据保全方法及装置
CN106096444A (zh) * 2016-06-12 2016-11-09 杨鹏 一种基于生物信息的身份识别与社会信息记录方法及系统
CN106130779A (zh) * 2016-07-18 2016-11-16 布比(北京)网络技术有限公司 一种物联设备及用该设备的物联网构建方法
CN106055993A (zh) * 2016-08-13 2016-10-26 深圳市樊溪电子有限公司 一种用于区块链的加密存储系统及其使用方法
CN106991334A (zh) * 2016-11-24 2017-07-28 阿里巴巴集团控股有限公司 一种数据存取的方法、系统及装置

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020502861A (ja) * 2018-11-27 2020-01-23 アリババ・グループ・ホールディング・リミテッドAlibaba Group Holding Limited コンソーシアムブロックチェーンネットワーク内の非対称鍵管理
US10819509B2 (en) 2018-11-27 2020-10-27 Alibaba Group Holding Limited Asymmetric key management in consortium blockchain networks
CN110084690A (zh) * 2019-03-18 2019-08-02 深圳壹账通智能科技有限公司 数据处理方法、装置、计算机装置及存储介质
WO2021024717A1 (ja) * 2019-08-06 2021-02-11 ソニー株式会社 情報処理装置、情報処理方法及びプログラム
CN110597840A (zh) * 2019-09-26 2019-12-20 腾讯科技(深圳)有限公司 基于区块链的伴侣关系建立方法、装置、设备及存储介质
CN110597840B (zh) * 2019-09-26 2023-09-22 腾讯科技(深圳)有限公司 基于区块链的伴侣关系建立方法、装置、设备及存储介质
CN111125187A (zh) * 2019-11-29 2020-05-08 立旃(上海)科技有限公司 基于区块链的数据管理方法及装置

Also Published As

Publication number Publication date
US10938550B2 (en) 2021-03-02
ES2809170T3 (es) 2021-03-03
KR20190085106A (ko) 2019-07-17
US20200052888A1 (en) 2020-02-13
CN106991334A (zh) 2017-07-28
US10536265B2 (en) 2020-01-14
KR102155462B1 (ko) 2020-09-11
SG10202100217PA (en) 2021-02-25
JP6880188B2 (ja) 2021-06-02
CN106991334B (zh) 2021-03-02
TWI701572B (zh) 2020-08-11
TW201820199A (zh) 2018-06-01
PL3547198T3 (pl) 2020-11-30
EP3547198B1 (en) 2020-07-22
EP3547198A1 (en) 2019-10-02
EP3547198A4 (en) 2019-11-13
US20190280855A1 (en) 2019-09-12
JP2020500487A (ja) 2020-01-09

Similar Documents

Publication Publication Date Title
WO2018095275A1 (zh) 一种数据存取的方法、系统及装置
US11425108B2 (en) Blockchain-based service data encryption methods and apparatuses
US11269842B2 (en) Data storage layer index for efficient information retrieval
US10621376B2 (en) Personal ledger blockchain
US11726968B2 (en) Methods, apparatuses, and devices for transferring data assets based on blockchain
CN102236766B (zh) 安全的数据项级数据库加密方法
US7694134B2 (en) System and method for encrypting data without regard to application
US20210124730A1 (en) Blockchain based distributed file systems
EP3964983B1 (en) Demand based data acquisition methods using a trusted device
TW201738801A (zh) 資料庫中密文資料換密失敗的處理方法和裝置
CN114897536A (zh) 一种基于rfid标签和区块链的商品防伪溯源方法
US20190334705A1 (en) Encrypted communication channels for distributed database systems
CN111404662B (zh) 一种数据处理方法及装置
CN115208630A (zh) 基于区块链的数据获取方法、系统及区块链系统
CN115712641A (zh) 一种数据库字段检索方法及相关设备
CA2832978C (en) Method of obfuscating relationships between data in database tables
CN115017231A (zh) 基于区块链的数据交易方法、装置、存储介质及电子装置
CN117313140A (zh) 信息查询方法、装置、计算机设备和存储介质
CN111404863A (zh) 一种数据处理方法及装置
CN115640321A (zh) 数据查询方法和装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 17873246

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2019528138

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 20197018096

Country of ref document: KR

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 2017873246

Country of ref document: EP

Effective date: 20190624