WO2021073452A1 - 基于区块链网络的数据处理方法、装置、电子设备及存储介质 - Google Patents
基于区块链网络的数据处理方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- WO2021073452A1 WO2021073452A1 PCT/CN2020/120041 CN2020120041W WO2021073452A1 WO 2021073452 A1 WO2021073452 A1 WO 2021073452A1 CN 2020120041 W CN2020120041 W CN 2020120041W WO 2021073452 A1 WO2021073452 A1 WO 2021073452A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- chain
- data
- node
- blockchain network
- target node
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2471—Distributed queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2365—Ensuring data consistency and integrity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9024—Graphs; Linked lists
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2282—Tablespace storage structures; Management thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3829—Payment protocols; Details thereof insuring higher security of transaction involving key management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
Definitions
- the present invention relates to information storage technology in a block chain network, and in particular to a data processing method, device, electronic equipment and storage medium based on the block chain network.
- the blockchain network when a node in the blockchain network needs to access data outside the chain, the corresponding block in each blockchain network will directly access the data from the data source outside the chain.
- the off-chain data obtained by each blockchain node in the blockchain network is inconsistent, it will cause the fork between different blockchain nodes in the blockchain network, which affects the efficiency of the blockchain network for data processing .
- the embodiments of the present invention provide a data processing method, device, electronic device, and storage medium based on a blockchain network, which can ensure that all blocks in the blockchain can be accessed when obtaining data outside the chain. Consistent off-chain data, thereby reducing the possibility of blockchain network bifurcation caused by the inconsistency of off-chain data obtained by different blocks in the blockchain network, and improving the data processing efficiency of the blockchain network. At the same time, It can also retain the distributed nature of the blockchain network, and reduce the risk of the blockchain network paralyzed by the failure of some nodes in the blockchain network.
- the embodiment of the present invention provides a data processing method based on a blockchain network, and the method includes:
- a process matching the type of the target node is triggered to obtain off-chain data matching the transaction request.
- the embodiment of the present invention also provides a data processing device based on a blockchain network, and the device includes:
- the information transmission module is configured to obtain the transaction request sent by the target node
- An information processing module configured to parse the transaction request to obtain transaction parameters and chain height parameters that match the target node;
- the information processing module is configured to query the off-chain data corresponding to the chain height parameter saved by the current node according to the chain height parameter matching the target node;
- the information processing module is configured to determine the type of the target node according to transaction parameters that match the target node when the current node does not save off-chain data corresponding to the chain height parameter;
- the information processing module is configured to trigger a process matching the type of the target node according to the type of the target node, so as to obtain off-chain data matching the transaction request.
- An embodiment of the present invention also provides an electronic device, which includes:
- Memory configured to store executable instructions
- the processor is configured to implement the preamble data processing method based on the blockchain network when running the executable instructions stored in the memory.
- the embodiment of the present invention also provides a computer-readable storage medium that stores executable instructions, and the executable instructions are executed by the processor to realize the preamble data processing method based on the blockchain network.
- the block All blocks in the chain can access consistent off-chain data when obtaining off-chain data, thereby reducing the blockchain network bifurcation caused by inconsistent off-chain data obtained by different blocks in the blockchain network The possibility of improving the data processing efficiency of the blockchain network. At the same time, it can also retain the distributed characteristics of the blockchain network and reduce the risk of paralysis of the blockchain network caused by the failure of some nodes in the blockchain network.
- FIG. 1 is a schematic diagram of a use environment of a data processing method based on a blockchain network provided by an embodiment of the present invention
- FIG. 2 is a schematic diagram of the functional architecture of a blockchain network 200 provided by an embodiment of the present invention.
- FIG. 3 is a schematic diagram of the composition structure of an electronic device provided by an embodiment of the present invention.
- FIG. 4 is a schematic diagram of an optional flow chart of a data processing method based on a blockchain network provided by an embodiment of the present invention
- FIG. 5 is a schematic diagram of an optional flow chart of a data processing method based on a blockchain network provided by an embodiment of the present invention
- FIG. 6 is a schematic diagram of an optional flow chart of a data processing method based on a blockchain network provided by an embodiment of the present invention
- FIG. 7 is a schematic diagram of an optional flow chart of a data processing method based on a blockchain network provided by an embodiment of the present invention.
- FIG. 8 is a schematic diagram of an optional flow chart of a data processing method based on a blockchain network provided by an embodiment of the present invention.
- FIG. 9 is a schematic diagram of an optional flow chart of a data processing method based on a blockchain network provided by an embodiment of the present invention.
- FIG. 10 is a schematic diagram of an optional use environment of the data processing method based on the blockchain network provided by the present invention.
- Figure 11 is a schematic diagram of the use process of a data processing method based on a blockchain network in related technologies
- Figure 12 is a block chain network-based data processing method in related technologies, and a schematic diagram of contract verification
- FIG. 13 is a schematic diagram of the use process of the data processing method based on the blockchain network provided by the present invention.
- FIG. 14 is a schematic diagram of the processing process of the off-chain data manager in the data processing method based on the blockchain network provided by the present invention.
- FIG. 15 is a schematic diagram of contract verification in the data processing method based on the blockchain network provided by the present invention.
- Transaction is equivalent to the computer term "transaction”. Transactions include operations that need to be submitted to the blockchain network for execution. They do not simply refer to transactions in a business context. In view of the conventional use of blockchain technology The term “transaction”, the embodiment of the present invention follows this habit.
- the deployment (Deploy) transaction is configured to install a specified smart contract on the nodes in the blockchain network and is ready to be invoked;
- the Invoke transaction is configured to append the transaction record in the blockchain by invoking the smart contract, and
- Operations on the state database of the blockchain include update operations (including adding, deleting, and modifying key-value pairs in the state database) and query operations (that is, querying the key-value pairs in the state database).
- Blockchain is an encrypted and chained transaction storage structure formed by blocks.
- the header of each block can not only include the hash value of all transactions in the block, but also the hash value of all transactions in the previous block, so as to achieve tamper-proof transactions in the block based on the hash value And anti-counterfeiting; newly generated transactions are filled in the block and after the consensus of the nodes in the block chain network, they will be appended to the end of the block chain to form chain growth.
- Blockchain Network which incorporates new blocks into a series of nodes in the blockchain through consensus.
- Ledger is a collective term for the blockchain (also known as ledger data) and the state database synchronized with the blockchain.
- the block chain records transactions in the form of files in the file system;
- the state database records transactions in the block chain in the form of different types of key (Key) value (Value) pairs to support the matching Quick query of transactions in the blockchain.
- Key key
- Value value
- Smart Contracts also known as Chaincode or Application Code
- the nodes execute the smart contracts called in the received transactions to check the database of the ledger.
- the key value updates or queries the data.
- Consensus is a process in the blockchain network that is configured to reach agreement on transactions in the block between multiple nodes involved, and the agreed block will be appended to the end of the blockchain .
- the mechanisms for achieving consensus include proof of work (PoW, Proof of Work), proof of equity (PoS, Proof of Stake), proof of share authorization (DPoS, Delegated Proof-of-Stake), and proof of elapsed time (PoET, Proof of Stake). Elapsed Time) etc.
- FIG. 1 is a schematic diagram of the use environment of the blockchain network-based data processing method provided by the embodiment of the present invention, including the blockchain network 200.
- Example shows include node 210-1 to node 210-3), blockchain network management platform 300, current node system 400 (Exemplarily shows terminal 600-1 belonging to current node system 400 and its graphical interface 610-1) and the supervisory node system 500 (exemplarily shows the terminal 600-2 and its graphical interface 610-2 belonging to the supervisory node system 500), which will be described separately below.
- the type of the blockchain network 200 is flexible and diverse, for example, it can be any one of a public chain, a private chain, or a consortium chain.
- any business entity Taking the public chain as an example, any business entity’s electronic equipment, such as user terminals and servers, can access the blockchain network 200 without authorization; taking the consortium chain as an example, the business entity has its jurisdiction after being authorized
- the electronic device (such as a terminal/server) can access the blockchain network 200. At this time, it becomes a special type of node in the blockchain network 200, that is, the client node.
- the client node may only provide the function of supporting business entities to initiate transactions (for example, for storing data on the chain or querying data on the chain).
- the conventional (native) node 210 of the blockchain network 200 for example, the following
- the aforementioned sorting function, consensus service and ledger function, etc. can be implemented by the client node by default or selectively (for example, depending on the specific business requirements of the business entity). Therefore, the data and business processing logic of the business entity can be migrated to the blockchain network 200 to the greatest extent, and the credibility and traceability of the data and business processing process can be realized through the blockchain network 200.
- the blockchain network 200 receives client nodes (for example, the terminal 600 belonging to the current node system 400 shown in FIG. 1) from different business entities (for example, the current node system 400 and the supervisory node system 500 shown in FIG. 1) -1, and the transaction submitted by the terminal 600-2 belonging to the supervisory node system 500, execute the transaction to update the ledger or query the ledger, and display the transaction on the user interface of the terminal (for example, the graphical interface 610-1 of the terminal 600-1, the terminal The graphical interface 610-2 of 600-2) displays various intermediate or final results of executing the transaction. Understandably, for the blockchain network 200 that receives and executes transactions above, it can refer to the native node 210 in the blockchain network 200.
- the client node of the business entity has the blockchain network 200.
- the functions of the native node 210 may also include corresponding client nodes.
- the following takes multiple business entities (different node systems) accessing the blockchain network to realize the management of logistics data as an example to illustrate the exemplary application of the blockchain network.
- multiple business entities involved in the logistics link such as the current node system 400 and the supervision node system 500, after obtaining the authorization of the blockchain network management platform 300, the terminal 600-1 of the current node system 400 and the supervision All terminals 600-2 of the node system 500 can access the blockchain network 200.
- the business personnel of the current node system 400 log in to the current node system 400 in the graphical interface 610-1 of the terminal 600-1, and enter the corresponding transaction request sent through the target node or the corresponding request to query off-chain data, where query
- the request is sent to the blockchain network management platform 300, and the blockchain network management platform 300 generates a transaction corresponding to the update operation/query operation according to the received query request.
- the transaction that needs to be called to implement the update operation/query operation is specified in the transaction.
- the smart contract and the parameters passed to the smart contract, the transaction also carries a digital signature signed by the current node system 400 (for example, the digest of the transaction is encrypted using the private key in the digital certificate of the current node system 400), and The transaction is broadcast to the blockchain network 200.
- the node 210 in the blockchain network 200 receives the transaction, it verifies the digital signature carried by the transaction. After the digital signature verification is successful, it confirms whether the current node system 400 has the identity of the current node system 400 carried in the transaction. Any one of transaction authority, digital signature and authority verification will result in transaction failure. After the verification is successful, the digital signature of the node 210 is signed (for example, the digest of the transaction is encrypted using the private key of the node 210-1), and the digital signature is continued to be broadcast in the blockchain network 200.
- the node 210 with the sorting function in the blockchain network 200 After the node 210 with the sorting function in the blockchain network 200 receives the successfully verified transaction, it fills the transaction into a new block and broadcasts it to the node in the blockchain network 200 that provides the consensus service.
- the node 210 that provides consensus services in the blockchain network 200 performs a consensus process on the new block to reach agreement.
- the node 210 that provides the ledger function appends the new block to the end of the blockchain and executes the transaction in the new block: For submission For transactions that update off-chain data, update the key-value pairs corresponding to off-chain data in the ledger database; for transactions that query and update off-chain data, query the key-value pairs corresponding to the off-chain data from the ledger database and return the query result.
- the supervision node system 500 can log in to the supervision node system 500 in the graphical interface 610-2 of the terminal 600-2 (the supervision node system can be configured with the highest authority to view off-chain data uploaded by different institutions) , Input the off-chain data query request, where the query request is sent to the blockchain network management platform 300, and the blockchain network management platform 300 generates a transaction corresponding to the update operation/query operation according to the received query request.
- the smart contract that needs to be called to implement the update operation/query operation and the parameters passed to the smart contract are specified.
- the transaction also carries the digital signature signed by the current node system 400 (for example, using the private key in the digital certificate of the current node system 400, The summary of the transaction is encrypted to obtain), and the transaction is broadcast to the blockchain network 200.
- nodes business entities
- the types of data that can be queried/updated in the blockchain network 200 by nodes (business entities) of different institutions can be achieved by restricting the authority of the transactions that the business entities can initiate, for example, when the current node
- the system 400 has the authority to initiate a transaction for querying data outside the target chain
- the business personnel of the current node system 400 can enter the target chain data query request in the graphical interface 610-1 of the terminal 600-1, and it will be managed by the blockchain network
- the platform 300 generates a transaction for querying off-chain data and broadcasts it to the blockchain network 200 to obtain the corresponding off-chain data from the blockchain network 200; when the supervisory node system 500 has the ability to initiate a transaction for querying off-chain data When the authority of the supervising
- FIG. 2 is a schematic diagram of the functional architecture of the blockchain network 200 provided by an embodiment of the present invention, including an application layer 201 and a consensus layer 202. , The network layer 203, the data layer 204, and the resource layer 205 are described separately below.
- the resource layer 205 encapsulates the computing resources, storage resources, and communication resources of each node 210 in the blockchain network 200, such as computing resources, storage resources, and communication resources in computers, servers/clusters, and clouds, and abstracts and communicates
- the data layer 204 provides a unified interface to shield the differences in the underlying hardware that implements the resource layer 205.
- Computing resources include various forms of processors, such as central processing unit (CPU), application specific integrated circuit (ASIC, Application Specific Integrated Circuit), application specific integrated circuit and field programmable gate array (FPGA, Field-Programmable Gate Array).
- processors such as central processing unit (CPU), application specific integrated circuit (ASIC, Application Specific Integrated Circuit), application specific integrated circuit and field programmable gate array (FPGA, Field-Programmable Gate Array).
- CPU central processing unit
- ASIC application specific integrated circuit
- FPGA Field-Programmable Gate Array
- FPGA Field-Programmable Gate Array
- Storage resources include various types of storage media such as volatile memories and non-volatile memories.
- the non-volatile memory may be a read only memory (ROM, Read Only Memory) or a programmable read only memory (PROM, Programmable Read-Only Memory).
- the volatile memory may be a random access memory (RAM, Random Access Memory), which is used as an external cache.
- Communication resources include various links used for communication between nodes 210 of the blockchain network and between the blockchain network 200 and business entities.
- the data layer 204 encapsulates various data structures that implement the ledger, including a blockchain implemented with files in a file system, a key-value state database, and existence proofs (for example, a hash tree of transactions in a block).
- the network layer 203 encapsulates the functions of a point-to-point (P2P) network protocol, a data dissemination mechanism, a data verification mechanism, an access authentication mechanism, and business entity identity management.
- P2P point-to-point
- the P2P network protocol implements the communication between the nodes 210 in the blockchain network 200
- the data dissemination mechanism ensures the dissemination of transactions in the blockchain network 200
- the data verification mechanism is used based on cryptographic methods (such as digital certificates, digital Signature, public/private key pair) to realize the reliability of data transmission between nodes 210
- the access authentication mechanism is used to authenticate the identity of the business subject joining the blockchain network 200 according to the actual business scenario, and when the authentication is passed
- the business entity is given the authority to access the blockchain network 200
- the business entity identity management is used to store the identity and authority of the business entity allowed to access the blockchain network 200 (for example, the type of transaction that can be initiated).
- the consensus layer 202 encapsulates the functions of a mechanism for nodes 210 in the blockchain network 200 to reach a consensus on the block (ie, consensus mechanism), transaction management, and ledger management.
- Consensus mechanisms include consensus algorithms such as POS, POW, and DPOS, which support the pluggability of consensus algorithms.
- the transaction management is configured to verify the digital signature carried in the transaction received by the node 210, verify the identity information of the business subject, and determine whether it has the authority to conduct the transaction based on the identity information (read relevant information from the business subject identity management);
- the authorized business entities that access the blockchain network 200 all have a digital certificate issued by the certification center, and the business entity uses the private key in the digital certificate to sign the submitted transaction, thereby declaring its legal identity.
- Ledger management used to maintain the blockchain and ledger database.
- For the consensus block append to the end of the blockchain; execute the transaction in the consensus block, update the key-value pair in the state database when the transaction includes an update operation, and query the ledger database when the transaction includes a query operation And return the query result to the business entity.
- Supports query operations of multiple dimensions of the ledger database including: querying a block based on the block serial number (such as the hash value of a transaction); querying a block based on the block hash value; querying a block based on the transaction serial number; Transaction serial number query transaction; query the business entity's account data based on the business entity's account number (serial number); query the blockchain in the channel based on the channel name.
- the application layer 201 encapsulates various services that can be implemented by the blockchain network, including transaction traceability, deposit certification, and verification.
- the following describes an exemplary structure of a node that implements the blockchain network of the embodiment of the present invention. It is understandable that the hardware structure of any type of node in the blockchain network 200 can be implemented according to the hardware structure described below.
- FIG. 3 is a schematic diagram of the composition structure of an electronic device provided by an embodiment of the present invention. It can be understood that FIG. 3 only shows an exemplary structure of the electronic device, but not the entire structure. Part of the structure or all of the structure shown in FIG. .
- the electronic device provided by the embodiment of the present invention includes: at least one processor 301, a memory 302, a user interface 303, and at least one network interface 304.
- the various components in the electronic device are coupled together through the bus system 305.
- the bus system 305 is configured to implement connection and communication between these components.
- the bus system 305 also includes a power bus, a control bus, and a status signal bus.
- various buses are marked as the bus system 305 in FIG. 3.
- the user interface 303 may include a display, a keyboard, a mouse, a trackball, a click wheel, keys, buttons, a touch panel, or a touch screen.
- the memory 302 may be a volatile memory or a non-volatile memory, and may also include both volatile and non-volatile memory.
- the memory 302 in the embodiment of the present invention can store data to support the operation of the terminal (such as 10-1). Examples of these data include: any computer program used to operate on the terminal (such as 10-1), such as an operating system and application programs.
- the operating system contains various system programs, such as framework layer, core library layer, driver layer, etc., configured to implement various basic services and process hardware-based tasks.
- Applications can include various applications.
- the data processing apparatus provided in the embodiments of the present invention may be implemented in a combination of software and hardware.
- the data processing apparatus provided in the embodiments of the present invention may be a processor in the form of a hardware decoding processor. It is programmed to execute the information processing method provided by the embodiment of the present invention.
- a processor in the form of a hardware decoding processor may adopt one or more application specific integrated circuits (ASIC, Application Specific Integrated Circuit), DSP, programmable logic device (PLD, Programmable Logic Device), and complex programmable logic device (CPLD, Complex Programmable Logic Device, Field-Programmable Gate Array (FPGA, Field-Programmable Gate Array) or other electronic components.
- ASIC application specific integrated circuits
- DSP digital signal processor
- PLD programmable logic device
- CPLD Complex Programmable Logic Device
- FPGA Field-Programmable Gate Array
- the data processing apparatus provided by the embodiment of the present invention may be directly embodied as a combination of software modules executed by the processor 301, and the software modules may be located in a storage medium, The storage medium is located in the memory 302, and the processor 301 reads the executable instructions included in the software module in the memory 302, and combines necessary hardware (for example, including the processor 301 and other components connected to the bus 305) to complete the information provided by the embodiment of the present invention Approach.
- the processor 301 may be an integrated circuit chip with signal processing capabilities, such as a general-purpose processor, a digital signal processor (DSP, Digital Signal Processor), or other programmable logic devices, discrete gates, or transistor logic devices , Discrete hardware components, etc., where the general-purpose processor may be a microprocessor or any conventional processor.
- DSP Digital Signal Processor
- the general-purpose processor may be a microprocessor or any conventional processor.
- the device provided in the embodiment of the present invention may directly use the processor 301 in the form of a hardware decoding processor to perform the execution, for example, dedicated by one or more applications.
- Integrated Circuit ASIC, Application Specific Integrated Circuit
- DSP Programmable Logic Device
- PLD Programmable Logic Device
- CPLD Complex Programmable Logic Device
- FPGA Field-Programmable Gate Array
- FPGA Field-Programmable Gate Array
- the memory 302 in the embodiment of the present invention is configured to store various types of data to support the operation of the electronic device. Examples of these data include: any executable instructions configured to operate on an electronic device, such as executable instructions, and a program that implements the slave information processing method of the embodiment of the present invention may be included in the executable instructions.
- the data processing device in the blockchain network can be implemented in software.
- FIG. 3 shows the data processing device 3030 in the blockchain network stored in the memory 302. It can be software in the form of programs and plug-ins, and includes a series of modules. As an example of the program stored in the memory 302, it can include a data processing device 3030 in a blockchain network.
- the data processing device 3030 includes the following software Module:
- the information transmission module 3031 is configured to obtain the transaction request sent by the target node
- the information processing module 3032 is configured to parse the transaction request to obtain transaction parameters and chain height parameters that match the target node;
- the information processing module 3032 is configured to query the off-chain data corresponding to the chain height parameter saved by the current node according to the chain height parameter matching the target node;
- the information processing module 3032 is configured to determine the type of the target node according to transaction parameters that match the target node when the current node does not save off-chain data corresponding to the chain height parameter;
- the information processing module 3032 is configured to trigger a process matching the type of the target node according to the type of the target node, so as to obtain off-chain data matching the transaction request.
- FIG. 4 is an optional flowchart diagram of the data processing method based on the blockchain network provided by the embodiment of the present invention. Specifically, the steps shown in FIG. 4 can be executed by various electronic devices running data processing devices, such as dedicated terminals, servers, or server clusters with off-chain data processing functions. The following describes the steps shown in FIG. 4.
- Step 401 The data processing device obtains the transaction request sent by the target node.
- Step 402 The data processing device parses the transaction request to obtain transaction parameters and chain height parameters that match the target node.
- Step 403 The data processing device queries the off-chain data corresponding to the chain height parameter saved by the current node according to the chain height parameter matching the target node.
- querying the off-chain data corresponding to the chain height parameter saved by the current node can be implemented in the following manner:
- Step 404 When the current node does not save the off-chain data corresponding to the chain height parameter, determine the type of the target node according to the transaction parameters that match the target node.
- the type of the target node is determined according to the transaction parameters that match the target node; Realize in the following way:
- the transaction parameter is parsed to obtain the corresponding target node type parameter; when the target node type parameter is the first type parameter When the type of the target node is determined as the node included in the main chain in the blockchain network; when the type parameter of the target node is the second type parameter, the type of the target node is determined to be in the blockchain network The nodes included in the side chain.
- the type parameter of the corresponding target node is obtained, and the transaction parameter matching the target node is used to determine the
- the type of the target node can determine the type of the target node that issued the transaction request in time, so as to execute the process matching the type of the target node, and improve the efficiency of obtaining off-chain data.
- Step 405 The data processing device triggers a process matching the type of the target node according to the type of the target node, so as to obtain off-chain data matching the transaction request.
- FIG. 5 is a schematic diagram of an optional flow chart of a data processing method based on a blockchain network provided by an embodiment of the present invention.
- the processing process includes the following steps:
- Step 4051 When the type of the target node is a node included in the main chain of the blockchain network, the transaction request is parsed to obtain corresponding data storage location information outside the chain.
- Step 4052 Obtain the off-chain data that matches the transaction request according to the off-chain data storage location information.
- Step 4053 Save the obtained off-chain data in the current node.
- the data storage location information outside the chain can be directly used to obtain the data outside the chain that matches the transaction request, thereby improving the block The off-chain data processing speed of the chain network.
- Figure 6 is an optional flowchart of a data processing method based on a blockchain network provided by an embodiment of the present invention.
- the processing process includes the following steps:
- Step 4054 When the type of the target node is a node included in the side chain in the blockchain network, send a data acquisition request to the node corresponding to the main chain in the blockchain network.
- Step 4055 In response to the data acquisition request, receive off-chain data matching the transaction request.
- Step 4056 Save the obtained off-chain data in the current node.
- the type of the target node is a node included in the side chain in the blockchain network
- it is realized to send a data acquisition request to the node corresponding to the main chain in the blockchain network to receive and
- the off-chain data that matches the transaction request realizes the consistency of off-chain data obtained by different blocks in the blockchain network, and reduces the possibility of bifurcation caused by inconsistent data.
- the method further includes:
- the blockchain network management platform can respond to the received data synchronization request
- the authority of the other node is verified; when the authority of the other node is verified, the data synchronization between the current node and the other node is controlled (for example, the data can be performed by the other node and the current node reach a consensus. Synchronization), to ensure the integrity of the target user's off-chain data transmission between different structure nodes.
- FIG. 7 is an optional flowchart of a data processing method based on a blockchain network provided by an embodiment of the present invention.
- the processing process includes the following steps:
- Step 406 The data processing device receives the query request.
- FIG. 7 shows that the query requests of different nodes A and B in the blockchain network are received and processed accordingly.
- Step 407 Parse the query request to obtain a corresponding user ID.
- Step 408 Obtain the permission information of the off-chain data in the target block in the blockchain network according to the user identifier.
- obtaining the permission information of the off-chain data in the target block in the blockchain network can be achieved in the following ways:
- the query condition information includes a target index value of at least one target dimension
- query the information index table in the blockchain network according to the target index value of the at least one target dimension , Obtain the user ID corresponding to the off-chain data, wherein the information index table includes the user ID of the stored information and index values in different dimensions; determine the target area according to the user ID corresponding to the off-chain data The permission information of the off-chain data in the block.
- the information index table in the blockchain network is queried to obtain the The user ID corresponding to the target user’s off-chain data determines the permission information of the target user’s off-chain data in the target block according to the user ID corresponding to the target user’s off-chain data, which can overcome traditional centralized storage.
- the actual owner of the target user’s off-chain data and the operator of each Internet application in the target user’s off-chain data control ability are not equal, which overcomes the traditional centralized storage method, the Internet application operator It can analyze and use the off-chain data of the target user wantonly, and even sell the off-chain data of the target user to obtain benefits and threaten the security loopholes of the user.
- Step 409 Verify the authority information of the off-chain data and the user ID to determine whether it is passed; Step 410 is executed through the verification, otherwise, Step 411 is executed.
- Step 410 When the authority information of the off-chain data matches the user ID, obtain the corresponding off-chain data in the blockchain network.
- Step 411 Notify that the verification fails.
- Step 412 In response to the query instruction, push the obtained corresponding off-chain data to the corresponding client.
- FIG. 8 is an optional flowchart diagram of a data processing method based on a blockchain network provided by an embodiment of the present invention.
- the processing process includes the following steps:
- Step 4101 The data processing device obtains the private key of the target node that matches the permission information of the off-chain data
- Step 4102 Determine whether a dynamic password needs to be obtained, if yes, perform step 4104, otherwise, perform step 4103.
- Step 4103 Use the private key of the target node to decrypt the corresponding off-chain data obtained from the blockchain network to obtain the corresponding off-chain data in the plaintext state.
- Step 4104 Request a corresponding dynamic password from the target user corresponding to the target user ID;
- Step 4105 Obtain corresponding off-chain data in the blockchain network according to the obtained dynamic password
- Step 4106 Decrypt the off-chain data through the private key that matches the dynamic password.
- the off-chain data of the target user stored in the blockchain network is encrypted information
- the off-chain data of the corresponding target user obtained from the blockchain network is decrypted by the private key of the target node
- the off-chain data of the corresponding target user can be obtained, so that the user of the off-chain data of the target user can use the corresponding off-chain data of the target user in the form of plaintext data.
- the target user can timely know when the target user’s off-chain data is viewed by the corresponding other nodes (different users), and timely Connect with other nodes (different users).
- FIG. 9 is an optional schematic diagram of the data processing method based on the blockchain network provided by the embodiment of the present invention.
- the steps shown in FIG. 9 can be executed by various electronic devices running data processing devices, such as dedicated terminals, servers, or server clusters with off-chain data processing functions for target users. The following describes the steps shown in FIG. 9.
- Step 901 Obtain different processing results of the target user's off-chain data in the blockchain network.
- the processing of off-chain data can be implemented based on the corresponding smart contract, where the smart contract can store data, which can be configured to record information, facts, associations, balances, and any other information needed to implement the contract execution logic.
- a smart contract can be described as a computer executable program composed of functions, in which an instance of the smart contract can be created, and functions can be called to execute the logic of the smart contract.
- smart contracts can be implemented based on objects and object-oriented classes.
- the terms and components of a smart contract can be expressed as objects that are processed by an application that implements the smart contract.
- a smart contract (or an object in a smart contract) can call another smart contract (or an object in the same smart contract) like other object-oriented objects.
- a call made by an object can be a call to create, update, delete, propagate, or communicate with an object of another class.
- the calls between objects can be implemented by functions, methods, application programming interfaces (API application programming interface) or other calling mechanisms.
- the first object can call a function to create the second object.
- the identification of the target user may be obtained by the node device of the blockchain invoking a smart contract deployed in the blockchain network, and the smart contract states that the corresponding smart contract is generated based on the target user.
- Target user ID the identification of the target user.
- the off-chain data of the corresponding target user can be determined through the target user identification.
- Step 902 In response to the processing result of the off-chain data, trigger broadcasting in the blockchain network.
- Step 903 Push the processing result of the off-chain data of the target user to the corresponding client.
- the processed result is saved in the blockchain network, because each node in the blockchain network adopts a consensus mechanism
- the data in the blockchain is distributed in time-connected "blocks", and the latter block contains the data of the previous block.
- consensus mechanisms such as POW, POS, DPOS or PBFT, etc.
- a blockchain using Pow consensus requires at least the entire network Only 51% of the computing power can tamper with existing data. Therefore, the blockchain system has the characteristics of ensuring data security and preventing attack and tampering that other centralized database systems cannot match. It can be seen that the data included in the distributed database of the blockchain will not be attacked or tampered with, so as to ensure the authenticity and reliability of the processing results of the data stored in the distributed database of the blockchain. Avoiding the fork of the blockchain network caused by the change of the data processing result outside the chain.
- FIG. 10 is a schematic diagram of an optional use environment of the data processing method based on the blockchain network provided by the present invention.
- a digital certificate is used in the blockchain system to verify the validity of the identity of each member node of a blockchain transaction
- the blockchain node needs to go to a CA (CA, Certificate Authority, authoritative certificate authority) to verify the validity of the digital certificate .
- CA Certificate Authority, authoritative certificate authority
- the transaction is sent to nodes A, B, and C in the blockchain; the blockchain nodes A, B, and C verify the validity of the digital certificate of the transaction to the CA (for sending the transaction as shown in 1, the validity of the certificate to the CA is 2), in this process, because the CA will verify the validity period of the digital certificate.
- the time when each node receives the transaction is different, so the time to the CA to verify the digital certificate is also different. If some nodes go to CA verification within the validity period of the digital certificate, the verification will be successful, and some nodes will verify the CA verification outside the validity period of the digital certificate, and the verification will fail.
- the verification results of different nodes are different, which will cause different nodes to process the transaction results differently, leading to the fork of the blockchain network.
- Figure 11 is a schematic diagram of the use process of a data processing method based on a blockchain network in related technologies, including:
- Step 1101 Receive a transaction request.
- Step 1102 Send transaction data to an off-chain data source.
- Step 1103 Obtain new off-chain data.
- Figure 12 is a block chain network-based data processing method in related technologies, and a schematic diagram of contract verification. As shown in Figure 12, the transaction certificate is valid until 2017/07/17 12:00:00.
- the CA verifies that the certificate is within the validity period, the verification is passed, and the nodes A and B execute the transaction successfully.
- node C Due to delays and other reasons, node C received the transaction (3) at 12:00:01 on 2017/07/17, and went to the CA to verify the validity of the certificate (4).
- the CA verification certificate has passed the validity period, the verification fails, and the node C fails to execute the transaction. Therefore, the data of node C will be inconsistent with A and B, and the blockchain network will fork.
- Step 1301 Receive transaction data.
- Step 1302 Send the transaction parameters and chain height to the off-chain data manager.
- Step 1303 Obtain corresponding off-chain data.
- FIG. 14 is a schematic diagram of the processing process of the off-chain data manager in the blockchain network-based data processing method provided by the present invention, including the following steps:
- Step 1401 Receive the off-chain data access request.
- Step 1402 Determine whether the data manager outside the chain stores data that matches the height of the chain. If it is, execute step 1408; otherwise, execute step 1403.
- Step 1403 Judge whether the current node is a data management node outside the main chain, if yes, go to step 1404, otherwise go to step 1405.
- Step 1404 Request corresponding off-chain data.
- Step 1405 Request off-chain data from the corresponding master node.
- Step 1406 Perform local cache processing on the off-chain data.
- Step 1407 Perform off-chain data synchronization processing to other management nodes.
- Step 1408 Return the corresponding off-chain data.
- the parameters received by the data manager outside the chain include transaction-related data and chain height.
- the corresponding chain height data already exists locally, it will be directly returned to the blockchain node, which solves the problem of data inconsistency caused by different blockchain nodes directly accessing data sources outside the chain.
- Figure 15 is a schematic diagram of contract verification in the blockchain network-based data processing method provided by the present invention. After adding the off-chain data manager, the transaction process is shown in Figure 15, where the transaction certificate is valid until 2017 /07/17 12:00:00.
- Node A receives the transaction at 11:59:59 on 2017/07/17.
- 2Node A sends transaction data (including digital certificate) and current chain height ([transaction_data, chain_height]) to the off-chain data manager 1.
- the off-chain data manager 1 uses the relevant data in the transaction data to access the off-chain data source and returns the data to node A.
- Node B receives the transaction at 11:59:59 on 2017/07/17.
- Node B sends transaction data (including digital certificate) and current chain height ([transaction_data, chain_height]) to the off-chain data manager 2.
- the data manager 2 outside the chain has no data locally, so it requests data from the data manager 1 outside the main chain. Because the data manager 1 outside the chain already has the corresponding chain_height data locally, it will return the data to the data manager 2. Then return the data to B. Therefore, the off-chain data obtained by B is consistent with node A.
- 8Node C sends transaction data (including digital certificate) and current chain height ([transaction_data, chain_height]) to the off-chain data manager 2.
- transaction data including digital certificate
- current chain height [transaction_data, chain_height]
- the out-of-chain data manager 2 already has the corresponding chain_height data locally, so it will directly return the data to node C. Therefore, the off-chain data obtained by node C is consistent with node A and node B.
- the block All blocks in the chain can access consistent off-chain data when obtaining off-chain data, so as to avoid blockchain network bifurcation caused by inconsistent off-chain data obtained by different blocks in the blockchain network , To improve the data processing efficiency of the blockchain network, and at the same time, it can retain the distributed characteristics of the blockchain network, and avoid the paralysis of the blockchain network caused by the failure of some nodes in the blockchain network.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- Accounting & Taxation (AREA)
- Software Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Probability & Statistics with Applications (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Fuzzy Systems (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
一种基于区块链网络的数据处理方法,包括:获取目标节点所发送的交易请求;对交易请求进行解析,以获取与目标节点相匹配的交易参数和链高度参数;根据与目标节点相匹配的链高度参数,查询当前节点所保存的与链高度参数对应的链外数据,根据与目标节点相匹配的交易参数确定目标节点的类型;根据目标节点的类型,触发与目标节点的类型相匹配的进程,以实现获取与交易请求相匹配的链外数据。还提供了数据处理装置、电子设备及存储介质。
Description
相关申请的交叉引用
本申请基于申请号为201910976287.4、申请日为2019年10月15日的中国专利申请提出,并要求该中国专利申请的优先权,该中国专利申请的全部内容在此引入本申请作为参考。
本发明涉及区块链网络中的信息存储技术,尤其涉及基于区块链网络的数据处理方法、装置、电子设备及存储介质。
相关技术中,区块链网络中,当区块链网络中的节点需要访问链外数据时,会由各个区块链网络中的相应区块直接对链外数据源访问数据。当区块链网络中的各个区块链节点得到的链外数据不一致时,就会导致区块链网络中的不同区块链节点之间的分叉,影响区块链网络对于数据的处理效率。
发明内容
有鉴于此,本发明实施例提供一种基于区块链网络的数据处理方法、装置、电子设备及存储介质,能够将保证区块链中的所有区块在获取链外数据时均能够访问到一致的链外数据,从而减少由于区块链网络中的不同区块所获得的链外数据不一致所造成的区块链网络分叉的可能性,提升区块链网络的数据处理效率,同时,还可以保留区块链网络的分布式特性,降低区块链网络中的部分节点故障所造成的区块链网络瘫痪的风险。
本发明实施例的技术方案是这样实现的:
本发明实施例提供了一种基于区块链网络的数据处理方法,所述方法包括:
获取目标节点所发送的交易请求;
对所述交易请求进行解析,以获取与所述目标节点相匹配的交易参数和链高度参数;
根据所述与所述目标节点相匹配的链高度参数,查询当前节点所保存的与所述链高度参数对应的链外数据;
当所述当前节点未保存与所述链高度参数对应的链外数据时,根据与所述目标节点相匹配的交易参数确定所述目标节点的类型;
根据所述目标节点的类型,触发与所述目标节点的类型相匹配的进程,以实现获取与所述交易请求相匹配的链外数据。
本发明实施例还提供了一种基于区块链网络的数据处理装置,所述装置包括:
信息传输模块,配置为获取目标节点所发送的交易请求;
信息处理模块,配置为对所述交易请求进行解析,以获取与所述目标节点相匹配的交易参数和链高度参数;
所述信息处理模块,配置为根据所述与所述目标节点相匹配的链高度参数,查询当前节点所保存的与所述链高度参数对应的链外数据;
所述信息处理模块,配置为当所述当前节点未保存与所述链高度参数对应的链外数据时,根据与所述目标节点相匹配的交易参数确定所述目标节点的类型;
所述信息处理模块,配置为根据所述目标节点的类型,触发与所述目标节点的类型相匹配的进程,以实现获取与所述交易请求相匹配的链外数据。
本发明实施例还提供了一种电子设备,所述电子设备包括:
存储器,配置为存储可执行指令;
处理器,配置为运行所述存储器存储的可执行指令时,实现前序的基于区块链网络的数据处理方法。
本发明实施例还提供了一种计算机可读存储介质,存储有可执行指令,所述可执行指令被处理器执行时实现前序的基于区块链网络的数据处理方法。
本发明实施例具有以下有益效果:
通过获取目标节点所发送的交易请求;对所述交易请求进行解析,以获取与所述目标节点相匹配的交易参数和链高度参数;根据所述与所述目标节点相匹配的链高度参数,查询当前节点所保存的与所述链高度参数对应的链外数据;当所述当前节点未保存与所述链高度参数对应的链外数据时,根据与所述目标节点相匹配的交易参数确定所述目标节点的类型;根据所述目标节点的类型,触发与所述目标节点的类型相匹配的进程,实现了获取与所述交易请求相匹配的链外数据,这一过程中,区块链中的所有区块在获取链外数据时均能够访问到一致的链外数据,从而减少由于区块链网络中的不同区块所获得的链外数据不一致所造成的区块链网络分叉的可能性,提升区块链网络的数据处理效率,同时,还可以保留区块链网络的分布式特性,降低区块链网络中的部分节点故障所造成的区块链网络瘫痪的风险。
为了更清楚地说明本申请实施例或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的 附图。
图1是本发明实施例提供的基于区块链网络的数据处理方法的使用环境示意图;
图2是本发明实施例提供的区块链网络200的功能架构示意图;
图3为本发明实施例提供的电子设备的组成结构示意图;
图4为本发明实施例提供的基于区块链网络的数据处理方法一个可选的流程示意图;
图5为本发明实施例提供的基于区块链网络的数据处理方法一个可选的流程示意图;
图6为本发明实施例提供的基于区块链网络的数据处理方法一个可选的流程示意图;
图7为本发明实施例提供的基于区块链网络的数据处理方法一个可选的流程示意图;
图8为本发明实施例提供的基于区块链网络的数据处理方法一个可选的流程示意图;
图9为本发明实施例提供的基于区块链网络的数据处理方法一个可选的流程示意图;
图10为本发明所提供的基于区块链网络的数据处理方法一个可选的使用环境示意图;
图11为相关技术中基于区块链网络的数据处理方法使用过程示意图;
图12为相关技术中基于区块链网络的数据处理方法,合约验证示意图;
图13为本发明所提供的基于区块链网络的数据处理方法使用过程示意图;
图14为本发明所提供的基于区块链网络的数据处理方法中链外数据管理器处理过程示意图;
图15为本发明所提供的基于区块链网络的数据处理方法中合约验证示意图。
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,所描述的实施例不应视为对本发明的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
对本发明实施例进行进一步详细说明之前,对本发明实施例中涉及的名词和术语进行说明,本发明实施例中涉及的名词和术语适配置为如下的解释。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
对本发明实施例进行进一步详细说明之前,对本发明实施例中涉及的名词和术语进行说明,本发明实施例中涉及的名词和术语适配置为如下的解释。
1)交易(Transaction),等同于计算机术语“事务”,交易包括了需要提交到区块链网络执行的操作,并非单指商业语境中的交易,鉴于在区块链技术中约定俗成地使用了“交易”这一术语,本发明实施例遵循了这一习惯。
例如,部署(Deploy)交易配置为向区块链网络中的节点安装指定的智能合约并准备好被调用;调用(Invoke)交易配置为通过调用智能合约在 区块链中追加交易的记录,并对区块链的状态数据库进行操作,包括更新操作(包括增加、删除和修改状态数据库中的键值对)和查询操作(即查询状态数据库中的键值对)。
2)区块链(Blockchain),是由区块(Block)形成的加密的、链式的交易的存储结构。
例如,每个区块的头部既可以包括区块中所有交易的哈希值,同时也包含前一个区块中所有交易的哈希值,从而基于哈希值实现区块中交易的防篡改和防伪造;新产生的交易被填充到区块并经过区块链网络中节点的共识后,会被追加到区块链的尾部从而形成链式的增长。
3)区块链网络(Blockchain Network),通过共识的方式将新区块纳入区块链的一系列的节点的集合。
4)账本(Ledger),是区块链(也称为账本数据)和与区块链同步的状态数据库的统称。
其中,区块链是以文件系统中的文件的形式来记录交易;状态数据库是以不同类型的键(Key)值(Value)对的形式来记录区块链中的交易,用于支持对区块链中交易的快速查询。
5)智能合约(Smart Contracts),也称为链码(Chaincode)或应用代码,部署在区块链网络的节点中的程序,节点执行接收的交易中所调用的智能合约,来对账本数据库的键值对数据进行更新或查询的操作。
6)共识(Consensus),是区块链网络中的一个过程,配置为在涉及的多个节点之间对区块中的交易达成一致,达成一致的区块将被追加到区块链的尾部,实现共识的机制包括工作量证明(PoW,Proof of Work)、权益证明(PoS,Proof of Stake)、股份授权证明(DPoS,Delegated Proof-of-Stake)、消逝时间量证明(PoET,Proof of Elapsed Time)等。
下面说明本发明实施例提供的区块链网络的示例性应用,参见图1,图 1是本发明实施例提供的基于区块链网络的数据处理方法的使用环境示意图,包括区块链网络200(示例性示出了包括节点210-1至节点210-3)、区块链网络管理平台300、当前节点系统400(示例性示出归属于当前节点系统400的终端600-1及其图形界面610-1)和监管节点系统500(示例性示出归属于监管节点系统500的终端600-2及其图形界面610-2),下面分别进行说明。
其中,区块链网络200的类型是灵活多样的,例如可以为公有链、私有链或联盟链中的任意一种。以公有链为例,任何业务主体的电子设备例如用户终端和服务器,都可以在不需要授权的情况下接入区块链网络200;以联盟链为例,业务主体在获得授权后其下辖的电子设备(例如终端/服务器)可以接入区块链网络200,此时,成为区块链网络200中的一类特殊的节点即客户端节点。
需要指出地,客户端节点可以只提供支持业务主体发起交易(例如,用于上链存储数据或查询链上数据)功能,对于区块链网络200的常规(原生)节点210的功能,例如下文所述的排序功能、共识服务和账本功能等,客户端节点可以缺省或者有选择性(例如,取决于业务主体的具体业务需求)地实现。从而,可以将业务主体的数据和业务处理逻辑最大程度迁移到区块链网络200中,通过区块链网络200实现数据和业务处理过程的可信和可追溯。
区块链网络200接收来自不同业务主体(例如图1中示出的当前节点系统400和监管节点系统500)的客户端节点(例如,图1中示出的归属于当前节点系统400的终端600-1、以及归属于监管节点系统500的终端600-2)提交的交易,执行交易以更新账本或者查询账本,并在终端的用户界面(例如,终端600-1的图形界面610-1、终端600-2的图形界面610-2)显示执行交易的各种中间结果或最终结果。可以理解地,上文中接收交易 并执行交易的区块链网络200而言,可以是指区块链网络200中的原生的节点210,当然,在业务主体的客户端节点具有区块链网络200中原生节点210的功能(例如共识功能、账本功能)时,也可以包括相应的客户端节点。
下面以多个业务主体(不同的节点系统)接入区块链网络以实现物流数据的管理为例说明区块链网络的示例性应用。
参见图1,物流环节涉及的多个业务主体,如当前节点系统400和监管节点系统500,在获得区块链网络管理平台300的授权后,当前节点系统400的终端600-1、以及和监管节点系统500的终端600-2都可以接入区块链网络200。
当前节点系统400的业务人员在终端600-1的图形界面610-1中登录当前节点系统400,输入用通过目标节点所发出的相应交易请求,或者所要查询链外数据的相应请求,其中,查询请求被发送到区块链网络管理平台300,由区块链网络管理平台300根据所接收的查询请求生成对应更新操作/查询操作的交易,在交易中指定了实现更新操作/查询操作需要调用的智能合约、以及向智能合约传递的参数,交易还携带了当前节点系统400签署的数字签名(例如,使用当前节点系统400的数字证书中的私钥,对交易的摘要进行加密得到),并将交易广播到区块链网络200。
区块链网络200中的节点210中接收到交易时,对交易携带的数字签名进行验证,数字签名验证成功后,根据交易中携带的当前节点系统400的身份,确认当前节点系统400是否是具有交易权限,数字签名和权限验证中的任何一个验证判断都将导致交易失败。验证成功后签署节点210自己的数字签名(例如,使用节点210-1的私钥对交易的摘要进行加密得到),并继续在区块链网络200中广播。
区块链网络200中具有排序功能的节点210接收到验证成功的交易后,将交易填充到新的区块中,并广播到区块链网络中200提供共识服务的节 点。
区块链网络200中的提供共识服务的节点210对新区块进行共识过程以达成一致,提供账本功能的节点210将新区块追加到区块链的尾部,并执行新区块中的交易:对于提交更新链外数据的交易,更新账本数据库中链外数据对应的键值对;对于查询更新链外数据的交易,从账本数据库中查询链外数据对应的键值对,并返回查询结果。
同样的,监管节点系统500侧的业务人员可以在终端600-2的图形界面610-2中登录监管节点系统500(其中监管节点系统可以配置有最高权限以查看不同机构所上传的链外数据),输入链外数据查询请求,其中,查询请求被发送到区块链网络管理平台300,由区块链网络管理平台300根据所接收的查询请求生成对应更新操作/查询操作的交易,在交易中指定了实现更新操作/查询操作需要调用的智能合约、以及向智能合约传递的参数,交易还携带了当前节点系统400签署的数字签名(例如,使用当前节点系统400的数字证书中的私钥,对交易的摘要进行加密得到),并将交易广播到区块链网络200。进一步地,可以理解地,不同机构的节点(业务主体)在区块链网络200中能够查询/更新的数据的类型,可以通过约束业务主体能够发起的交易的权限来实现,例如,当当前节点系统400具有发起查询目标链外数据的交易的权限时,当前节点系统400的业务人员可以在终端600-1的图形界面610-1中输入目标链外数据查询请求,并由区块链网络管理平台300生成用于查询目标链外数据的交易广播到区块链网络200中,以从区块链网络200中获取相应的目标链外数据;当监管节点系统500具有发起查询链外数据的交易的权限时,当监管节点系统500侧的业务人员可以在终端600-2的图形界面610-2中输入链外数据查询请求,并由区块链网络管理平台300生成用于查询链外数据的交易广播到区块链网络200中,以从区块链网络200中获取相应的链外数据。同时,监管节点系统500还可以保 存有链外数据的原始记录,能够实现对目标用户所输入的链外数据进行验证,例如:对链外数据中的相应身份证信息或相应的哈希值。
下面说明本发明实施例提供的区块链网络的示例性的功能架构,参见图2,图2是本发明实施例提供的区块链网络200的功能架构示意图,包括应用层201、共识层202、网络层203、数据层204和资源层205,下面分别进行说明。
资源层205封装了实现区块链网路200中的各个节点210的计算资源、存储资源和通信资源,例如计算机、服务器/集群和云中的计算资源、存储资源和通信资源,进行抽象并向数据层204提供统一的接口以屏蔽实现资源层205的底层硬件的差异性。
计算资源包括各种形式的处理器,例如中央处理器(CPU)、应用专用集成电路(ASIC,Application Specific Integrated Circuit)、专用集成电路和现场可编程门阵列(FPGA,Field-Programmable Gate Array)的各种形式的处理器。
存储资源包括各种易失性存储器和非易失性存储器等各种类型的存储介质。其中,非易失性存储器可以是只读存储器(ROM,Read Only Memory)、可编程只读存储器(PROM,Programmable Read-Only Memory)。易失性存储器可以是随机存取存储器(RAM,Random Access Memory),其用作外部高速缓存。
通信资源包括用于供区块链网络的节点210之间、区块链网络200与业务主体之间通信的各种链路。
数据层204封装了实现账本的各种数据结构,包括以文件系统中的文件实现的区块链,键值型的状态数据库和存在性证明(例如区块中交易的哈希树)。
网络层203封装了点对点(P2P,Point to Point)网络协议、数据传播 机制和数据验证机制、接入认证机制和业务主体身份管理的功能。
其中,P2P网络协议实现区块链网络200中节点210之间的通信,数据传播机制保证了交易在区块链网络200中的传播,数据验证机制用于基于加密学方法(例如数字证书、数字签名、公/私钥对)实现节点210之间传输数据的可靠性;接入认证机制用于根据实际的业务场景对加入区块链网络200的业务主体的身份进行认证,并在认证通过时赋予业务主体接入区块链网络200的权限;业务主体身份管理用于存储允许接入区块链网络200的业务主体的身份、以及权限(例如能够发起的交易的类型)。
共识层202封装了区块链网络200中的节点210对区块达成一致性的机制(即共识机制)、交易管理和账本管理的功能。
共识机制包括POS、POW和DPOS等共识算法,支持共识算法的可插拔。
交易管理配置为验证节点210接收到的交易中携带的数字签名,验证业务主体的身份信息,并根据身份信息判断确认其是否具有权限进行交易(从业务主体身份管理读取相关信息);对于获得接入区块链网络200的授权的业务主体而言,均拥有认证中心颁发的数字证书,业务主体利用自己的数字证书中的私钥对提交的交易进行签名,从而声明自己的合法身份。
账本管理:用于维护区块链和账本数据库。对于取得共识的区块,追加到区块链的尾部;执行取得共识的区块中的交易,当交易包括更新操作时更新状态数据库中的键值对,当交易包括查询操作时查询账本数据库中的键值对并向业务主体返回查询结果。支持对账本数据库的多种维度的查询操作,包括:根据区块序列号(例如交易的哈希值)查询区块;根据区块哈希值查询区块;根据交易序列号查询区块;根据交易序列号查询交易;根据业务主体的账号(序列号)查询业务主体的账号数据;根据通道名称查询通道中的区块链。
应用层201封装了区块链网络能够实现的各种业务,包括交易的溯源、存证和验证等。
下面说明实现本发明实施例的区块链网络的节点的示例性结构,可以理解地,区块链网络200中的任一类型的节点的硬件结构可以根据下文说明的硬件结构而实施。
下面对本发明实施例的电子设备的结构做详细说明,其中,承载本发明所提供的基于区块链网络的数据处理方法可以通过各类型电子设备来实施,如带有信息处理功能的专用终端,也可以为带有信息处理功能的电子设备,例如前述图1中运行区块链网络管理平台300的电子设备。图3为本发明实施例提供的电子设备的组成结构示意图,可以理解,图3仅仅示出了电子设备的示例性结构而非全部结构,根据需要可以实施图3示出的部分结构或全部结构。
本发明实施例提供的电子设备包括:至少一个处理器301、存储器302、用户接口303和至少一个网络接口304。电子设备中的各个组件通过总线系统305耦合在一起。可以理解,总线系统305配置为实现这些组件之间的连接通信。总线系统305除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图3中将各种总线都标为总线系统305。
其中,用户接口303可以包括显示器、键盘、鼠标、轨迹球、点击轮、按键、按钮、触感板或者触摸屏等。
可以理解,存储器302可以是易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。本发明实施例中的存储器302能够存储数据以支持终端(如10-1)的操作。这些数据的示例包括:用于在终端(如10-1)上操作的任何计算机程序,如操作系统和应用程序。其中,操作系统包含各种系统程序,例如框架层、核心库层、驱动层等,配置为实 现各种基础业务以及处理基于硬件的任务。应用程序可以包含各种应用程序。
在一些实施例中,本发明实施例提供的数据处理装置可以采用软硬件结合的方式实现,作为示例,本发明实施例提供的数据处理装置可以是采用硬件译码处理器形式的处理器,其被编程以执行本发明实施例提供的信息处理方法。例如,硬件译码处理器形式的处理器可以采用一个或多个应用专用集成电路(ASIC,Application Specific Integrated Circuit)、DSP、可编程逻辑器件(PLD,Programmable Logic Device)、复杂可编程逻辑器件(CPLD,Complex Programmable Logic Device)、现场可编程门阵列(FPGA,Field-Programmable Gate Array)或其他电子元件。
作为本发明实施例提供的数据处理装置采用软硬件结合实施的示例,本发明实施例所提供的数据处理装置可以直接体现为由处理器301执行的软件模块组合,软件模块可以位于存储介质中,存储介质位于存储器302,处理器301读取存储器302中软件模块包括的可执行指令,结合必要的硬件(例如,包括处理器301以及连接到总线305的其他组件)完成本发明实施例提供的信息处理方法。
作为示例,处理器301可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(DSP,Digital Signal Processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
作为本发明实施例提供的数据处理装置采用硬件实施的示例,本发明实施例所提供的装置可以直接采用硬件译码处理器形式的处理器301来执行完成,例如,被一个或多个应用专用集成电路(ASIC,Application Specific Integrated Circuit)、DSP、可编程逻辑器件(PLD,Programmable Logic Device)、复杂可编程逻辑器件(CPLD,Complex Programmable Logic Device)、现场可编程门阵列(FPGA,Field-Programmable Gate Array)或其他电子元件执行实现本发明实施例提供的信息处理方法。
本发明实施例中的存储器302配置为存储各种类型的数据以支持电子设备的操作。这些数据的示例包括:配置为在电子设备上操作的任何可执行指令,如可执行指令,实现本发明实施例的从信息处理方法的程序可以包含在可执行指令中。
在另一些实施例中,本发明实施例提供的区块链网络中的数据处理装置可以采用软件方式实现,图3示出了存储在存储器302中的区块链网络中的数据处理装置3030,其可以是程序和插件等形式的软件,并包括一系列的模块,作为存储器302中存储的程序的示例,可以包括区块链网络中的数据处理装置3030,数据处理装置3030中包括以下的软件模块:
信息传输模块3031,配置为获取目标节点所发送的交易请求;
信息处理模块3032,配置为对所述交易请求进行解析,以获取与所述目标节点相匹配的交易参数和链高度参数;
所述信息处理模块3032,配置为根据所述与所述目标节点相匹配的链高度参数,查询当前节点所保存的与所述链高度参数对应的链外数据;
所述信息处理模块3032,配置为当所述当前节点未保存与所述链高度参数对应的链外数据时,根据与所述目标节点相匹配的交易参数确定所述目标节点的类型;
所述信息处理模块3032,配置为根据所述目标节点的类型,触发与所述目标节点的类型相匹配的进程,以实现获取与所述交易请求相匹配的链外数据。
结合图3示出的电子设备说明本发明实施例提供的信息处理方法,参见图4,图4为本发明实施例提供的基于区块链网络的数据处理方法一个可选的流程示意图,可以理解地,图4所示的步骤可以由运行数据处理装置 的各种电子设备执行,例如可以是如带有链外数据处理功能的专用终端、服务器或者服务器集群。下面针对图4示出的步骤进行说明。
步骤401:数据处理装置获取目标节点所发送的交易请求。
步骤402:数据处理装置对所述交易请求进行解析,以获取与所述目标节点相匹配的交易参数和链高度参数。
步骤403:数据处理装置根据所述与所述目标节点相匹配的链高度参数,查询当前节点所保存的与所述链高度参数对应的链外数据。
在本发明的一些实施例中,根据所述与所述目标节点相匹配的链高度参数,查询当前节点所保存的与所述链高度参数对应的链外数据,可以通过以下方式实现:
响应于所述交易请求,触发链高度遍历进程;通过所述链高度遍历进程,根据所述与所述目标节点相匹配的链高度参数,在所述当前节点所保存的链外数据中进行遍历,以查询当前节点所保存的与所述链高度参数对应的链外数据。其中,当链外数据已经被区块链网络中的其他节点获取时,由于当前节点进行数据同步,因此,当前节点保存有相应的链外数据,由于链高度参数的唯一确定性,因此,在所述当前节点所保存的链外数据中进行遍历,以查询当前节点所保存的与所述链高度参数对应的链外数据可以有效减少获取链外数据的所需时间,提升区块链网络的数据处理效率。
步骤404:当所述当前节点未保存与所述链高度参数对应的链外数据时,根据与所述目标节点相匹配的交易参数确定所述目标节点的类型。
在本发明的一些实施例中,当所述当前节点未保存与所述链高度参数对应的链外数据时,根据与所述目标节点相匹配的交易参数确定所述目标节点的类型;可以通过以下方式实现:
当所述当前节点未保存与所述链高度参数对应的链外数据时,对所述交易参数进行解析,获取相应的目标节点的类型参数;当所述目标节点的 类型参数为第一类型参数时,确定所述目标节点的类型为区块链网络中主链所包括的节点;当所述目标节点的类型参数为第二类型参数时,定所述目标节点的类型为区块链网络中侧链所包括的节点。其中,由于区块链网络中仅有主链中的相应区块可以获取链外数据,因此,通过获取相应的目标节点的类型参数,并根据与所述目标节点相匹配的交易参数确定所述目标节点的类型可以及时的确定发出交易请求的目标节点的所属类型,以执行与目标节点的所属类型相匹配的进程,提升获取链外数据的效率。
步骤405:数据处理装置根据所述目标节点的类型,触发与所述目标节点的类型相匹配的进程,以实现获取与所述交易请求相匹配的链外数据。
在本发明的一些实施例中,当当所述目标节点的类型为区块链网络中主链所包括的节点时,结合图4所示的基于区块链网络的数据处理方法,继续参考图5,图5为本发明实施例提供的基于区块链网络的数据处理方法一个可选的流程示意图,处理过程包括以下步骤:
步骤4051:当所述目标节点的类型为区块链网络中主链所包括的节点时,对所述交易请求进行解析,以获取相应的链外数据存储位置信息。
步骤4052:根据所述链外数据存储位置信息,获取与所述交易请求相匹配的链外数据。
步骤4053:将所获取的链外数据保存在当前节点中。
由此,当所述目标节点的类型为区块链网络中主链所包括的节点时,可以直接通过链外数据存储位置信息,获取与所述交易请求相匹配的链外数据,提升区块链网络的链外数据处理速度。
在本发明的一些实施例中,当当所述目标节点的类型为区块链网络中侧链所包括的节点时,结合图4所示的基于区块链网络的数据处理方法,继续参考图6,图6为本发明实施例提供的基于区块链网络的数据处理方法一个可选的流程示意图,处理过程包括以下步骤:
步骤4054:当所述目标节点的类型为区块链网络中侧链所包括的节点时,向所述区块链网络中主链所对应的节点发送数据获取请求。
步骤4055:响应于所述数据获取请求,接收与所述交易请求相匹配的链外数据。
步骤4056:将所获取的链外数据保存在当前节点中。
由此,当所述目标节点的类型为区块链网络中侧链所包括的节点时,实现了向所述区块链网络中主链所对应的节点发送数据获取请求,以接收与所述交易请求相匹配的链外数据,实现了区块链网络中不同区块所获取的链外数据的一致性,减少了由于数据不一致所造成的分叉的可能性。
在本发明的一些实施例中,所述方法还包括:
接收所述区块链网络中的其他节点的数据同步请求;响应于所述数据同步请求,对所述其他节点的权限进行验证;当所述其他节点的权限通过验证时,控制当前节点与所述其他节点之间进行数据同步,以实现所述其他节点获取相应的链外数据。其中,由于区块链网络中的其他节点并不能够获取当前节点所上传的目标用户的链外数据,因此,当区块链网络中的其他节点期望获取相应的目标用户的链外数据时,需要发出相应的数据同步请求;以用户调整链外数据为例,当目标用户由当前链外数据调整至触发另一链外数据时,区块链网络管理平台可以根据所接收的数据同步请求对所述其他节点的权限进行验证;当所述其他节点的权限通过验证时,控制所述当前节点与所述其他节点之间进行数据同步(例如可以通过其他节点与当前节点达成共识的方式进行数据同步),保证了目标用户的链外数据在不同结构节点之间传输的完整性。
在本发明的一些实施例中,当区块链网络中的其他节点需要查询区块链网络中的相应目标用户的链外数据时,结合图4所示的基于区块链网络的数据处理方法,继续参考图7,图7为本发明实施例提供的基于区块链网 络的数据处理方法一个可选的流程示意图,处理过程包括以下步骤:
步骤406:数据处理装置接收查询请求。
其中,图7示出了分别接收区块链网络中的不同节点A和B的查询请求并进行相应处理。
步骤407:解析所述查询请求以获取对应的用户标识。
步骤408:根据所述用户标识,获取所述区块链网络中的目标区块内的链外数据的权限信息。
在本发明的一些实施例中,根据所述用户标识,获取所述区块链网络中的目标区块内的链外数据的权限信息,可以通过以下方式实现:
获取所述查询请求中的查询条件信息,所述查询条件信息包括至少一个目标维度的目标索引值;根据所述至少一个目标维度的目标索引值,查询所述区块链网络中的信息索引表,得到所述链外数据所对应的用户标识,其中,所述信息索引表包括已存储信息的用户标识以及不同维度上的索引值;根据所述链外数据所对应的用户标识,确定目标区块内的链外数据的权限信息。其中,由于当前节点在区块链网络中所存储的目标用户的链外数据能够被相应的其他节点所调取查询,因此,通过查询所述区块链网络中的信息索引表,得到所述目标用户的链外数据所对应的用户标识,根据所述目标用户的链外数据所对应的用户标识,确定目标区块内的目标用户的链外数据的权限信息,可以克服传统的中心化存储中目标用户的链外数据的实际拥有者和各互联网应用的运营方在目标用户的链外数据的控制能力上的不对等的缺陷,克服了传统的中心化存储方式中,互联网应用的运营方可以肆意的分析、利用目标用户的链外数据,甚至售卖目标用户的链外数据以获取利益,威胁用户安全的漏洞。
步骤409:对所述链外数据的权限信息与所述用户标识进行校验,判断是否通过;通过验证执行步骤410,否则,执行步骤411。
步骤410:当所述链外数据的权限信息与所述用户标识相匹配时,在所述区块链网络中获取相应的链外数据。
步骤411:通知校验未通过。
步骤412:响应于所述查询指令,将所获取的相应的链外数据向相应的客户端进行推送。
通过本实施例所示的技术方案,当其他节点(不同用户)希望查询或使用区块链网络中所保存的目标用户的链外数据时,需要首先通过节点的信息的验证,以避免非法用户假冒节点非法获取目标用户的链外数据,这一过程中获取相应的目标用户的链外数据,然后将目标用户的链外数据保存在区块链网络中,同时上链后的目标用户的链外数据可被通过验证的节点进行查看,因采用区块链的方式进行目标用户的链外数据的发布,从而使得可以查看目标用户的链外数据的历史记录,且不需要其他机构接入,解决了现有的目标用户的链外数据传输使用过程中所存在的效率低下和链外数据不一致所造成的区块链网络分叉的问题,达到了有效提升安全性同时提升处理数据处理速度的技术效果。
在本发明的一些实施例中,当区块链网络中的其他节点需要查询区块链网络中的相应目标用户的链外数据时,结合图4所示的基于区块链网络的数据处理方法,继续参考图8,图8为本发明实施例提供的基于区块链网络的数据处理方法一个可选的流程示意图,处理过程包括以下步骤:
步骤4101:数据处理装置获取所述链外数据的权限信息相匹配的目标节点的私钥;
步骤4102:判断是否需要获取动态口令,如果是,执行步骤4104,否则,执行步骤4103。
步骤4103:通过所述目标节点的所述私钥对从所述区块链网络中所获取相应的链外数据进行解密处理,得到相应的明文状态的链外数据。
步骤4104:向所述目标用户标识所对应的目标用户请求相应的动态口令;
步骤4105:根据所获取的动态口令,在所述区块链网络中获取相应的链外数据;
步骤4106:通过与所述动态口令相匹配的私钥,对所述链外数据进行解密处理。
由此,可以实现获取与所述目标用户标识相匹配的链外数据。
其中,由于区块链网络中所存储的目标用户的链外数据均为加密信息,因此通过目标节点的私钥对从所述区块链网络中所获取相应的目标用户的链外数据进行解密处理,能够获得相应的目标用户的链外数据,使得目标用户的链外数据的使用方能够通过明文数据的方式使用相应的目标用户的链外数据。进一步地,当向所述目标用户标识所对应的目标用户请求相应的动态口令时,目标用户能够及时的获知目标用户的链外数据何时被相应的其他节点(不同用户)查看,以及时的与其他节点(不同用户)进行联系。
结合图3示出的电子设备说明本发明实施例提供的信息处理方法,参见图9,图9为本发明实施例提供的基于区块链网络的数据处理方法一个可选的流程示意图,可以理解地,图9所示的步骤可以由运行数据处理装置的各种电子设备执行,例如可以是如带有目标用户的链外数据处理功能的专用终端、服务器或者服务器集群。下面针对图9示出的步骤进行说明。
步骤901:获取所述区块链网络中的不同对所述目标用户的链外数据的处理结果。
其中,链外数据的处理可以基于相应的智能合约实现,其中,智能合约可以存储数据,该数据可以配置为记录信息、事实、关联、余额以及实现合约执行逻辑所需的任何其他信息。智能合约可以被描述为由函数组成 的计算机可执行程序,其中可以创建该智能合约的实例(instance),调用函数以执行智能合约的逻辑。
在本发明的一些实施例中,可以基于对象和面向对象的类来实现智能合约。例如,智能合约的条款和组件可以表示为由实现智能合约的应用程序处理的对象。智能合约(或智能合约中的对象)可以像其他面向对象的对象一样调用另一个智能合约(或同一智能合约中的对象)。例如,对象进行的调用可以是创建、更新、删除、传播或与另一个类的对象通信的调用。对象之间的调用可以由函数、方法、应用程序编程接口(API application programming interface)或其他调用机制实现。例如,第一对象可以调用函数来创建第二对象。
在本发明的一些实施例中,上述目标用户的标识可以由所述区块链的节点设备调用所述区块链网络中部署的智能合约而获得,上述智能合约声明有基于目标用户生成相应的目标用户标识。通过所述目标用户标识可以确定相应的目标用户的链外数据。
步骤902:响应于所述链外数据的处理结果,触发在所述区块链网络中进行广播。
由此,可以实现所述区块链网络中的其他节点之间进行数据同步,更新与所述目标用户的链外数据相匹配的处理结果。
步骤903:将所述目标用户的链外数据的处理结果向相应的客户端进行推送。
通过本实施例所示的技术方案,当目标用户的链外数据被相应的节点处理完成之后时,将所处理结果保存在区块链网络中,由于区块链网络中的各节点通过共识机制达成的、具有分布式数据存储结构的P2P网络系统,该区块链内的数据分布在时间上相连的一个个“区块(block)”之内,后一区块包含前一区块的数据摘要,且根据不同的的共识机制(如POW、POS、 DPOS或PBFT等)的不同,达成全部或部分节点的数据全备份。本领域的技术人员熟知,由于区块链网络在相应共识机制下运行,已收录至区块链数据库内的数据很难被任意的节点篡改,例如采用Pow共识的区块链,至少需要全网51%算力的攻击才有可能篡改已有数据,因此区块链系统有着其他中心化数据库系统所无法比拟的保证数据安全、防攻击篡改的特性。由此可知,被收录至区块链的分布式数据库中的数据不会被攻击或篡改,从而保证保存在区块链的分布式数据库中的,针对链外数据的处理结果的真实可靠性,避免了对于链外数据处理结果的更改所造成的区块链网络的分叉。
下面对本发明所提供的基于区块链网络的数据处理方法进行说明,其中,参考图10,图10为本发明所提供的基于区块链网络的数据处理方法一个可选的使用环境示意图,其中,块链系统中使用数字证书来验证区块链交易各成员节点的身份有效性的场景中,区块链节点需要到CA(CA,Certificate Authority,权威证书颁发机构)来验证数字证书的有效性。其中,交易发送到区块链中的节点A,B,C;区块链节点A,B,C到CA验证交易数字证书的有效性(发送交易如①所示,到CA验证证书有效性如②所示),这一过程中,因为CA会验证数字证书的有效期。在区块链网络中各个节点接收到交易的时间是不同的,所以到CA验证数字证书的时间也是不同的。如果部分节点在数字证书有效期内到CA验证,则会验证成功,部分节点在有效期数字证书外到CA验证,则会验证失败。不同节点的验证结果不同,会导致不同节点对交易的处理结果不同,导致区块链网络分叉。
下面参考图11和图12,对相关技术中区块链网络的分叉进行说明,其中,
图11为相关技术中基于区块链网络的数据处理方法使用过程示意图,包括:
步骤1101:接收交易请求。
步骤1102:发送交易数据至链外数据源。
步骤1103:获取新的链外数据。
其中,图12为相关技术中基于区块链网络的数据处理方法,合约验证示意图,如图12所示,交易的证书有效期至2017/07/17 12:00:00。
节点A和B在2017/07/17 11:59:59接收到交易(①),并且到CA验证证书有效性(②)。
CA验证证书在有效期内,验证通过,节点A和B执行交易成功。
由于延迟等原因,节点C在2017/07/17 12:00:01接收到交易(③),并且到CA验证证书有效性(④)。CA验证证书已经过了有效期,验证失败,节点C执行交易失败。因此节点C的数据将和A,B不一致,区块链网络产生分叉。
同理,只要区块链系统需要访问链外数据,由于交易时间的不确定性,就有可能出现导致如图12所示的区块链网络的分叉缺陷。
下面参考图13、图14和图15,对本发明所提供的基于区块链网络的数据处理方法使用过程进行说明,其中,图13为本发明所提供的基于区块链网络的数据处理方法使用过程示意图,包括:
步骤1301:接收交易数据。
步骤1302:将交易参数和链高度发送至链外数据管理器。
步骤1303:获取相应的链外数据。
其中,图14为本发明所提供的基于区块链网络的数据处理方法中链外数据管理器处理过程示意图,包括以下步骤:
步骤1401:就收链外数据访问请求。
步骤1402:判断链外数据管理器是否保存有与链高度相匹配的数据,如果是执行步骤1408,否则,执行步骤1403。
步骤1403:判断当前节点是否为主链外数据管理节点,如果是,执行步骤1404,否则执行步骤1405。
步骤1404:请求相应的链外数据。
步骤1405:向相应的主节点请求链外数据。
步骤1406:对链外数据进行本地缓存处理。
步骤1407:向其他管理节点进行链外数据同步处理。
步骤1408:返回相应的链外数据。
其中,链外数据管理器接收的参数包括交易相关数据和链高度。当对应的链高度的数据在本地已经存在时,则直接会返回给区块链节点,解决了不同区块链节点直接访问链外数据源导致的数据不一致问题。
进一步的,多个链外数据管理器中,只有主链外数据管理器会去链外数据源取数据。链外数据管理源之间可以使用Raft或Paxos等一致性协议同步数据,保证多个链外数据管理器之间的数据是一致的。
参考图15,图15为本发明所提供的基于区块链网络的数据处理方法中合约验证示意图,加入链外数据管理器后,交易流程如图15所示,其中,交易的证书有效期至2017/07/17 12:00:00。
①节点A在2017/07/17 11:59:59接收到交易。
②节点A发送交易数据(包括数字证书)和目前的链高度([transaction_data,chain_height])到链外数据管理器1。
③链外数据管理器1使用交易数据中的有关数据访问链外数据源并将数据返回给节点A。
④节点B在2017/07/17 11:59:59接收到交易。
⑤节点B发送交易数据(包括数字证书)和目前的链高度([transaction_data,chain_height])到链外数据管理器2。
⑥链外数据管理器2因为本地没有数据,所以到主链外数据管理器1 请求数据。链外数据管理器1因为本地已经有了对应的chain_height的数据,会将数据返回给数据管理器2。然后将数据返回给B。所以B得到的链外数据和节点A是一致的。
⑦节点C在2017/07/17 12:00:01接收到交易。
⑧节点C发送交易数据(包括数字证书)和目前的链高度([transaction_data,chain_height])到链外数据管理器2。此时链外数据管理器2因为本地已经有了对应的chain_height的数据,所以直接会返回数据给节点C。所以节点C得到的链外数据和节点A和节点B是一致的。
由此,保证了区块链网络中不同节点所获取的链外数据的一致性,避免了由于区块链网络中的不同节点所获取的链外数据不一致所造成的区块链网络分叉,提升了区块链网络的数据处理能力。
本发明具有以下有益技术效果:
通过获取目标节点所发送的交易请求;对所述交易请求进行解析,以获取与所述目标节点相匹配的交易参数和链高度参数;根据所述与所述目标节点相匹配的链高度参数,查询当前节点所保存的与所述链高度参数对应的链外数据;当所述当前节点未保存与所述链高度参数对应的链外数据时,根据与所述目标节点相匹配的交易参数确定所述目标节点的类型;根据所述目标节点的类型,触发与所述目标节点的类型相匹配的进程,实现了获取与所述交易请求相匹配的链外数据,这一过程中,区块链中的所有区块在获取链外数据时均能够访问到一致的链外数据,从而避免由于区块链网络中的不同区块所获得的链外数据不一致所造成的区块链网络分叉,提升区块链网络的数据处理效率,同时,还可以保留区块链网络的分布式特性,避免区块链网络中的部分节点故障所造成的区块链网络瘫痪。
以上所述,仅为本发明的实施例而已,并非用于限定本发明的保护范围,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等, 均应包含在本发明的保护范围之内。
Claims (17)
- 一种基于区块链网络的数据处理方法,所述方法由电子设备执行,所述基于区块链网络的数据处理方法包括:获取目标节点所发送的交易请求;对所述交易请求进行解析,以获取与所述目标节点相匹配的交易参数和链高度参数;根据所述与所述目标节点相匹配的链高度参数,查询当前节点所保存的与所述链高度参数对应的链外数据;当所述当前节点未保存与所述链高度参数对应的链外数据时,根据与所述目标节点相匹配的交易参数确定所述目标节点的类型;根据所述目标节点的类型,触发与所述目标节点的类型相匹配的进程,以实现获取与所述交易请求相匹配的链外数据。
- 根据权利要求1所述的方法,其中,所述根据所述与所述目标节点相匹配的链高度参数,查询当前节点所保存的与所述链高度参数对应的链外数据,包括:响应于所述交易请求,触发链高度遍历进程;通过所述链高度遍历进程,根据所述与所述目标节点相匹配的链高度参数,在所述当前节点所保存的链外数据中进行遍历,以查询当前节点所保存的与所述链高度参数对应的链外数据。
- 根据权利要求1所述的方法,其中,所述当所述当前节点未保存与所述链高度参数对应的链外数据时,根据与所述目标节点相匹配的交易参数确定所述目标节点的类型,包括:当所述当前节点未保存与所述链高度参数对应的链外数据时,对所述交易参数进行解析,获取相应的目标节点的类型参数;当所述目标节点的类型参数为第一类型参数时,确定所述目标节点的类型为区块链网络中主链所包括的节点;当所述目标节点的类型参数为第二类型参数时,定所述目标节点的类型为区块链网络中侧链所包括的节点。
- 根据权利要求3所述的方法,其中,所述根据所述目标节点的类型,触发与所述目标节点的类型相匹配的进程,以实现获取与所述交易请求相匹配的链外数据,包括:当所述目标节点的类型为区块链网络中主链所包括的节点时,对所述交易请求进行解析,以获取相应的链外数据存储位置信息;根据所述链外数据存储位置信息,获取与所述交易请求相匹配的链外数据;将所获取的链外数据保存在当前节点中。
- 根据权利要求3所述的方法,其中,所述根据所述目标节点的类型,触发与所述目标节点的类型相匹配的进程,以实现获取与所述交易请求相匹配的链外数据,包括:当所述目标节点的类型为区块链网络中侧链所包括的节点时,向所述区块链网络中主链所对应的节点发送数据获取请求;响应于所述数据获取请求,接收与所述交易请求相匹配的链外数据;将所获取的链外数据保存在当前节点中。
- 根据权利要求1所述的方法,其中,所述方法还包括:接收所述区块链网络中的其他节点的数据同步请求;响应于所述数据同步请求,对所述其他节点的权限进行验证;当所述其他节点的权限通过验证时,控制当前节点与所述其他节点之间进行数据同步,以实现所述其他节点获取相应的链外数据。
- 根据权利要求1所述的方法,其中,所述方法还包括:接收查询请求,并解析所述查询请求以获取对应的用户标识;根据所述用户标识,获取所述区块链网络中的目标节点内的链外数据的权限信息;对所述链外数据的权限信息与所述用户标识进行校验;当所述链外数据的权限信息与所述用户标识相匹配时,在所述区块链网络中获取相应的链外数据;响应于所述查询指令,将所获取的相应的链外数据向相应的客户端进行推送。
- 根据权利要求7所述的方法,其中,所述方法还包括:当所述链外数据的权限信息与所述用户标识不匹配时,发出提示信息,其中,所述提示信息配置为提示用户对所述链外数据的权限信息进行验证。
- 根据权利要求7所述的方法,其中,所述根据所述用户标识,获取所述区块链网络中的目标节点内的链外数据的权限信息,包括:获取所述查询请求中的查询条件信息,所述查询条件信息包括至少一个目标维度的目标索引值;根据所述至少一个目标维度的目标索引值,查询所述区块链网络中的信息索引表,得到所述链外数据所对应的用户标识,其中,所述信息索引表包括已存储信息的用户标识以及不同维度上的索引值;根据所述链外数据所对应的用户标识,确定目标节点内的链外数据的权限信息。
- 根据权利要求7所述的方法,其中,所述当所述链外数据的权限信息与所述用户标识相匹配时,在所述区块链网络中获取相应的链外数据,包括:获取所述链外数据的权限信息相匹配的目标节点的私钥;通过所述目标节点的所述私钥对从所述区块链网络中所获取相应的链 外数据进行解密处理,得到相应的明文状态的链外数据。
- 根据权利要求7所述的方法,其中,所述当所述链外数据的权限信息与所述用户标识相匹配时,在所述区块链网络中获取相应的链外数据,包括:向所述目标用户标识所对应的目标用户请求相应的动态口令;根据所获取的动态口令,在所述区块链网络中获取相应的链外数据;通过与所述动态口令相匹配的私钥,对所述链外数据进行解密处理,以获取与所述目标用户标识相匹配的链外数据。
- 根据权利要求7所述的方法,其中,所述方法还包括:获取所述客户端对所述目标用户的链外数据的处理结果;响应于所述链外数据的处理结果,触发在所述区块链网络中进行广播,以实现所述区块链网络中的其他节点之间进行数据同步,更新与所述目标用户的链外数据相匹配的处理结果;将所述目标用户的链外数据的处理结果向相应的客户端进行推送。
- 一种基于区块链网络的数据处理装置,所述装置包括:信息传输模块,配置为获取目标节点所发送的交易请求;信息处理模块,配置为对所述交易请求进行解析,以获取与所述目标节点相匹配的交易参数和链高度参数;所述信息处理模块,配置为根据所述与所述目标节点相匹配的链高度参数,查询当前节点所保存的与所述链高度参数对应的链外数据;所述信息处理模块,配置为当所述当前节点未保存与所述链高度参数对应的链外数据时,根据与所述目标节点相匹配的交易参数确定所述目标节点的类型;所述信息处理模块,配置为根据所述目标节点的类型,触发与所述目标节点的类型相匹配的进程,以实现获取与所述交易请求相匹配的链外数 据。
- 根据权利要求13所述的装置,其中,所述信息处理模块,配置为响应于所述交易请求,触发链高度遍历进程;所述信息处理模块,配置为通过所述链高度遍历进程,根据所述与所述目标节点相匹配的链高度参数,在所述当前节点所保存的链外数据中进行遍历,以查询当前节点所保存的与所述链高度参数对应的链外数据。
- 根据权利要求13所述的装置,其中,所述信息处理模块,配置为当所述当前节点未保存与所述链高度参数对应的链外数据时,对所述交易参数进行解析,获取相应的目标节点的类型参数;所述信息处理模块,配置为当所述目标节点的类型参数为第一类型参数时,确定所述目标节点的类型为区块链网络中主链所包括的节点;所述信息处理模块,配置为当所述目标节点的类型参数为第二类型参数时,定所述目标节点的类型为区块链网络中侧链所包括的节点。
- 一种电子设备,所述电子设备包括:存储器,配置为存储可执行指令;处理器,配置为运行所述存储器存储的可执行指令时,实现权利要求1至12任一项所述的基于区块链网络的数据处理方法。
- 一种计算机可读存储介质,存储有可执行指令,所述可执行指令被处理器执行时实现权利要求1至12任一项所述的基于区块链网络的数据处理方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021507939A JP7076682B2 (ja) | 2019-10-15 | 2020-10-09 | ブロックチェーンネットワークに基づくデータ処理方法、装置、電子機器およびコンピュータプログラム |
SG11202102257PA SG11202102257PA (en) | 2019-10-15 | 2020-10-09 | Data processing method and apparatus based on blockchain network, electronic device, and storage medium |
KR1020217003199A KR102566194B1 (ko) | 2019-10-15 | 2020-10-09 | 블록체인 네트워크에 기반한 데이터 처리 방법 및 장치, 전자 디바이스, 및 저장 매체 |
US17/163,582 US11386076B2 (en) | 2019-10-15 | 2021-02-01 | Data processing method and apparatus based on blockchain network, electronic device, and storage medium |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910976287.4A CN110727712B (zh) | 2019-10-15 | 2019-10-15 | 基于区块链网络的数据处理方法、装置、电子设备及存储介质 |
CN201910976287.4 | 2019-10-15 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US17/163,582 Continuation US11386076B2 (en) | 2019-10-15 | 2021-02-01 | Data processing method and apparatus based on blockchain network, electronic device, and storage medium |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2021073452A1 true WO2021073452A1 (zh) | 2021-04-22 |
Family
ID=69221159
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2020/120041 WO2021073452A1 (zh) | 2019-10-15 | 2020-10-09 | 基于区块链网络的数据处理方法、装置、电子设备及存储介质 |
Country Status (6)
Country | Link |
---|---|
US (1) | US11386076B2 (zh) |
JP (1) | JP7076682B2 (zh) |
KR (1) | KR102566194B1 (zh) |
CN (1) | CN110727712B (zh) |
SG (1) | SG11202102257PA (zh) |
WO (1) | WO2021073452A1 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113256289A (zh) * | 2021-05-17 | 2021-08-13 | 网易(杭州)网络有限公司 | 区块链的判别方法、装置及电子设备 |
CN115208895A (zh) * | 2022-07-19 | 2022-10-18 | 中软航科数据科技(珠海横琴)有限公司 | 一种用于区块链技术的自动化组网方法及系统 |
CN115378620A (zh) * | 2021-05-20 | 2022-11-22 | 顺丰科技有限公司 | 智能合约管理方法、装置、计算机设备和存储介质 |
US20230205929A1 (en) * | 2018-05-29 | 2023-06-29 | Oracle International Corporation | Securing Access to Confidential Data Using a Blockchain Ledger |
Families Citing this family (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110727712B (zh) * | 2019-10-15 | 2021-06-04 | 腾讯科技(深圳)有限公司 | 基于区块链网络的数据处理方法、装置、电子设备及存储介质 |
WO2021163920A1 (zh) * | 2020-02-19 | 2021-08-26 | 深圳市嘉舟科技有限公司 | 一种区块链喂价方法、区块链喂价装置及终端设备 |
CN111339097B (zh) * | 2020-02-25 | 2024-05-28 | 腾讯科技(深圳)有限公司 | 一种数据处理方法及相关设备 |
CN111538757B (zh) * | 2020-04-13 | 2022-02-11 | 支付宝(杭州)信息技术有限公司 | 数据存储方法、查询方法、装置、服务器及介质 |
CN111630549B (zh) | 2020-04-22 | 2022-05-27 | 支付宝(杭州)信息技术有限公司 | 管理账本系统中的交易请求 |
WO2020143856A2 (en) * | 2020-04-22 | 2020-07-16 | Alipay (Hangzhou) Information Technology Co., Ltd. | Managing transaction requests in ledger systems |
WO2020143854A2 (en) | 2020-04-22 | 2020-07-16 | Alipay (Hangzhou) Information Technology Co., Ltd. | Managing transaction requests in ledger systems |
US20220012668A1 (en) * | 2020-07-10 | 2022-01-13 | Genetec Inc. | Blockchain based work and resource data management |
CN112035863B (zh) * | 2020-07-20 | 2024-05-03 | 傲为有限公司 | 一种基于智能合约方式的电子合同取证方法及系统 |
CN112019603B (zh) * | 2020-08-10 | 2022-04-08 | 中国联合网络通信集团有限公司 | 一种交易数据的处理方法及装置 |
CN111930852B (zh) * | 2020-09-29 | 2022-03-25 | 北京百度网讯科技有限公司 | 基于区块链的数据处理方法、装置、设备以及存储介质 |
CN112702354B (zh) * | 2020-12-29 | 2023-08-11 | 国家电网有限公司大数据中心 | 一种基于区块链技术的数据资源共享追溯方法及装置 |
CN113094396B (zh) * | 2021-01-18 | 2022-07-26 | 腾讯科技(深圳)有限公司 | 基于节点内存的数据处理方法、装置、设备以及介质 |
CN113259463B (zh) * | 2021-06-02 | 2021-11-02 | 支付宝(杭州)信息技术有限公司 | 跨链交互方法和区块链系统 |
CN114629631B (zh) * | 2021-07-21 | 2024-01-09 | 国网河南省电力公司信息通信公司 | 基于联盟链的数据可信交互方法、系统及电子设备 |
CN113849556A (zh) * | 2021-08-11 | 2021-12-28 | 国网甘肃省电力公司信息通信公司 | 基于区块链分布式数据库的共享机制 |
CN113626524A (zh) * | 2021-08-12 | 2021-11-09 | 浙江网商银行股份有限公司 | 数据处理方法及装置、数据核对系统 |
CN113949538B (zh) * | 2021-09-27 | 2022-07-19 | 武汉理工大学 | 一种基于双区块链的交通节点信息管理系统及管理方法 |
CN113626850B (zh) * | 2021-10-13 | 2022-03-11 | 北京百度网讯科技有限公司 | 基于联盟链的请求处理方法、装置、设备和存储介质 |
CN114124991A (zh) * | 2021-10-13 | 2022-03-01 | 广东电网有限责任公司惠州供电局 | 物联网设备与区块链的连接方法、物联网设备、解析器 |
CN114021172B (zh) * | 2021-11-10 | 2022-10-21 | 苏州同济区块链研究院有限公司 | 一种基于联盟链的多方联合安全计算方法和装置 |
KR102656660B1 (ko) * | 2021-11-24 | 2024-04-11 | 세종텔레콤 주식회사 | 블록체인 기술을 이용한 보안 데이터 관리 방법 및 오프체인 시스템 |
CN113900598B (zh) * | 2021-12-10 | 2022-10-28 | 北京百度网讯科技有限公司 | 基于区块链的数据存储方法、装置、设备以及存储介质 |
CN114925133A (zh) * | 2022-04-18 | 2022-08-19 | 上海东普信息科技有限公司 | 物流信息的协同处理方法、装置、设备及存储介质 |
CN114785815B (zh) * | 2022-04-22 | 2024-05-17 | 上海骋荣网络科技有限公司 | 一种面向区块链用户节点的数据存储方法及装置 |
CN114938293B (zh) * | 2022-04-28 | 2024-03-12 | 深圳云创数安科技有限公司 | 基于区块链的nginx数据溯源方法、装置、设备及存储介质 |
CN114827165B (zh) * | 2022-05-30 | 2024-01-23 | 蚂蚁区块链科技(上海)有限公司 | 对多个交易进行分组的方法和区块链节点 |
CN115208630B (zh) * | 2022-06-15 | 2024-04-09 | 网易(杭州)网络有限公司 | 基于区块链的数据获取方法、系统及区块链系统 |
CN115115367B (zh) * | 2022-08-30 | 2023-03-31 | 平安银行股份有限公司 | 一种基于区块链的交易信息查询方法、装置及电子设备 |
CN115587392B (zh) * | 2022-11-22 | 2023-04-07 | 杭州字节方舟科技有限公司 | 一种防掉存力方法、装置、设备及介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106878071A (zh) * | 2017-01-25 | 2017-06-20 | 上海钜真金融信息服务有限公司 | 一种基于Raft算法的区块链共识机制 |
CN107330681A (zh) * | 2017-06-27 | 2017-11-07 | 中链科技有限公司 | 一种用于确定区块链链外交易的交易时间的方法及设备 |
US20180293583A1 (en) * | 2017-04-05 | 2018-10-11 | Samsung Sds Co., Ltd. | Method for calculating confirmation reliability for blockchain based transaction and blockchain network monitoring system for performing the method |
CN108734453A (zh) * | 2018-05-21 | 2018-11-02 | 腾讯科技(深圳)有限公司 | 区块链数据处理方法、装置、计算机设备和存储介质 |
CN109493223A (zh) * | 2018-11-07 | 2019-03-19 | 联动优势科技有限公司 | 一种记账方法及装置 |
CN109859047A (zh) * | 2019-01-31 | 2019-06-07 | 北京瑞卓喜投科技发展有限公司 | 一种区块链更新方法和区块链更新系统 |
CN109886681A (zh) * | 2019-01-31 | 2019-06-14 | 北京瑞卓喜投科技发展有限公司 | 区块链共识方法及共识系统 |
CN110727712A (zh) * | 2019-10-15 | 2020-01-24 | 腾讯科技(深圳)有限公司 | 基于区块链网络的数据处理方法、装置、电子设备及存储介质 |
Family Cites Families (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2246920A1 (en) * | 1998-09-10 | 2000-03-10 | Ibm Canada Limited - Ibm Canada Limitee | An activemark mechanism for a live parsing editor |
CN107145768B (zh) | 2016-03-01 | 2021-02-12 | 华为技术有限公司 | 版权管理方法和系统 |
CN107025559B (zh) * | 2017-01-26 | 2020-09-18 | 创新先进技术有限公司 | 一种业务处理方法及装置 |
EP3559882A1 (en) * | 2017-03-22 | 2019-10-30 | NEC Laboratories Europe GmbH | Method for operating a blockchain |
KR102303427B1 (ko) * | 2017-04-05 | 2021-09-23 | 삼성에스디에스 주식회사 | 블록체인 기반 거래에 대한 확정 신뢰도 산출 방법 및 그 방법을 수행하는 블록체인 네트워크 모니터링 시스템 |
CN107301600B (zh) * | 2017-06-23 | 2021-07-20 | 北京天德科技有限公司 | 一种跨链交易的区块链互联网模型的核心构建方法 |
CN107248076A (zh) * | 2017-06-24 | 2017-10-13 | 北京天德科技有限公司 | 一种双链式跨链交易的区块链互联网模型的核心算法 |
WO2019089646A1 (en) * | 2017-10-30 | 2019-05-09 | Pricewaterhousecoopers Llp | System and method for validation of distributed data storage systems |
US10601598B2 (en) | 2017-11-02 | 2020-03-24 | Keir Finlow-Bates | System and method for storing the location on a blockchain of a hash of a digital item within said digital item |
WO2019100063A1 (en) * | 2017-11-20 | 2019-05-23 | Moshe Shadmon | A system and apparatus to manage data using a peer-to-peer network and the blockchain |
JP2019109635A (ja) | 2017-12-16 | 2019-07-04 | 株式会社bitFlyer | ブロックチェーン・ネットワークにおいて過去のトランザクションにアクセス可能とするための方法及び当該ネットワークを構成するためのノード |
US20190236606A1 (en) * | 2018-01-31 | 2019-08-01 | Salesforce.Com, Inc. | Systems, methods, and apparatuses for implementing a virtual chain model for distributed ledger technologies in a cloud based computing environment |
CN108600301B (zh) | 2018-03-08 | 2021-05-18 | 青岛墨一客区块链有限公司 | 一种区块链之间的跨链方法及主区块链 |
CN108492183B (zh) * | 2018-03-29 | 2021-05-18 | 深圳前海微众银行股份有限公司 | 区块链的账户交易方法、系统和计算机可读存储介质 |
US11243917B2 (en) * | 2018-10-03 | 2022-02-08 | International Business Machines Corporation | Blockchain implementing reliability database |
CN109471744B (zh) * | 2018-11-21 | 2021-08-17 | 北京蓝石环球区块链科技有限公司 | 基于区块链的主链加并行多子链系统架构 |
CN109544171A (zh) * | 2018-11-30 | 2019-03-29 | 众安信息技术服务有限公司 | 用于实现跨区块链交易的一致性的方法及设备 |
CN109493056A (zh) * | 2018-12-04 | 2019-03-19 | 深圳市链联科技有限公司 | 一种基于供应链生态应用场景的区块链共识机制 |
US11824864B2 (en) * | 2019-01-31 | 2023-11-21 | Salesforce, Inc. | Systems, methods, and apparatuses for implementing a declarative and metadata driven blockchain platform using distributed ledger technology (DLT) |
CN109919615B (zh) * | 2019-03-01 | 2021-04-02 | 上海分布信息科技有限公司 | 基于区块链的跨链数据交互方法及跨链数据交互系统 |
CN110060162B (zh) * | 2019-03-29 | 2023-10-27 | 创新先进技术有限公司 | 基于区块链的数据授权、查询方法和装置 |
CN109981679B (zh) * | 2019-04-08 | 2021-08-10 | 上海点融信息科技有限责任公司 | 在区块链网络中执行事务的方法和装置 |
US11257025B2 (en) * | 2019-05-03 | 2022-02-22 | Accenture Global Solutions Limited | High performance blockchain architecture for logistics services |
US10929046B2 (en) * | 2019-07-09 | 2021-02-23 | Pure Storage, Inc. | Identifying and relocating hot data to a cache determined with read velocity based on a threshold stored at a storage device |
-
2019
- 2019-10-15 CN CN201910976287.4A patent/CN110727712B/zh active Active
-
2020
- 2020-10-09 WO PCT/CN2020/120041 patent/WO2021073452A1/zh active Application Filing
- 2020-10-09 KR KR1020217003199A patent/KR102566194B1/ko active IP Right Grant
- 2020-10-09 JP JP2021507939A patent/JP7076682B2/ja active Active
- 2020-10-09 SG SG11202102257PA patent/SG11202102257PA/en unknown
-
2021
- 2021-02-01 US US17/163,582 patent/US11386076B2/en active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106878071A (zh) * | 2017-01-25 | 2017-06-20 | 上海钜真金融信息服务有限公司 | 一种基于Raft算法的区块链共识机制 |
US20180293583A1 (en) * | 2017-04-05 | 2018-10-11 | Samsung Sds Co., Ltd. | Method for calculating confirmation reliability for blockchain based transaction and blockchain network monitoring system for performing the method |
CN107330681A (zh) * | 2017-06-27 | 2017-11-07 | 中链科技有限公司 | 一种用于确定区块链链外交易的交易时间的方法及设备 |
CN108734453A (zh) * | 2018-05-21 | 2018-11-02 | 腾讯科技(深圳)有限公司 | 区块链数据处理方法、装置、计算机设备和存储介质 |
CN109493223A (zh) * | 2018-11-07 | 2019-03-19 | 联动优势科技有限公司 | 一种记账方法及装置 |
CN109859047A (zh) * | 2019-01-31 | 2019-06-07 | 北京瑞卓喜投科技发展有限公司 | 一种区块链更新方法和区块链更新系统 |
CN109886681A (zh) * | 2019-01-31 | 2019-06-14 | 北京瑞卓喜投科技发展有限公司 | 区块链共识方法及共识系统 |
CN110727712A (zh) * | 2019-10-15 | 2020-01-24 | 腾讯科技(深圳)有限公司 | 基于区块链网络的数据处理方法、装置、电子设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
YUAN, CHAO: "Defense Scheme During Hard Bifurcation in Block Chain", XIANDAI JISUANJI (ZHUANYE BAN)/ MODERN COMPUTER (PROFESSIONAL EDITION), XIANDAI JISUANJI ZAZHISHE, CHINA, no. 9, 1 January 2019 (2019-01-01), China, pages 1 - 6, XP055803059, ISSN: 1007-1423, DOI: 10.3969/j.issn.1007-1423.2019.09.001 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20230205929A1 (en) * | 2018-05-29 | 2023-06-29 | Oracle International Corporation | Securing Access to Confidential Data Using a Blockchain Ledger |
US12045372B2 (en) * | 2018-05-29 | 2024-07-23 | Oracle International Corporation | Securing access to confidential data using a blockchain ledger |
CN113256289A (zh) * | 2021-05-17 | 2021-08-13 | 网易(杭州)网络有限公司 | 区块链的判别方法、装置及电子设备 |
CN113256289B (zh) * | 2021-05-17 | 2023-06-30 | 网易(杭州)网络有限公司 | 区块链的判别方法、装置及电子设备 |
CN115378620A (zh) * | 2021-05-20 | 2022-11-22 | 顺丰科技有限公司 | 智能合约管理方法、装置、计算机设备和存储介质 |
CN115208895A (zh) * | 2022-07-19 | 2022-10-18 | 中软航科数据科技(珠海横琴)有限公司 | 一种用于区块链技术的自动化组网方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN110727712B (zh) | 2021-06-04 |
KR102566194B1 (ko) | 2023-08-14 |
KR20210046659A (ko) | 2021-04-28 |
JP2022508011A (ja) | 2022-01-19 |
US11386076B2 (en) | 2022-07-12 |
JP7076682B2 (ja) | 2022-05-30 |
SG11202102257PA (en) | 2021-05-28 |
CN110727712A (zh) | 2020-01-24 |
US20210157788A1 (en) | 2021-05-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021073452A1 (zh) | 基于区块链网络的数据处理方法、装置、电子设备及存储介质 | |
US11526487B2 (en) | Database world state integrity validation | |
CN112136291B (zh) | 用于区块链的验证的方法和系统 | |
US11070360B2 (en) | Parallel transaction validation and block generation in a blockchain | |
WO2022042301A1 (zh) | 一种数据处理方法、装置、智能设备及存储介质 | |
US11227057B2 (en) | Membership access management of a database | |
US11341121B2 (en) | Peer partitioning | |
CN110597832A (zh) | 基于区块链网络的政务信息处理方法、装置、电子设备及存储介质 | |
US10671308B2 (en) | Private and fault-tolerant storage of segmented data | |
CN110598434B (zh) | 基于区块链网络的房屋信息处理方法、装置、电子设备及存储介质 | |
CN110569674A (zh) | 基于区块链网络的认证方法及装置 | |
US11520773B2 (en) | Blockchain notification board storing blockchain resources | |
US20200110824A1 (en) | Blockchain notification board storing blockchain resources | |
CN111796968B (zh) | 受数据库交易保证的提交 | |
US10922097B2 (en) | Collaborative model execution | |
CN112422532A (zh) | 业务通信方法、系统、装置及电子设备 | |
US20200112432A1 (en) | Blockchain notification board storing blockchain resources | |
CN110769274B (zh) | 基于区块链网络的直播信息处理方法、装置、电子设备及存储介质 | |
CN112036876B (zh) | 基于元数据的背书 | |
EP3744071B1 (en) | Data isolation in distributed hash chains | |
US20200021602A1 (en) | Trace-based transaction validation and commitment | |
US11095705B2 (en) | Content distributed over secure channels | |
CN112818014B (zh) | 区块链数据解析方法、装置和电子设备 | |
CN111698198B (zh) | 秘密生成和份额分发 | |
US11044104B2 (en) | Data certification as a service powered by permissioned blockchain network |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
ENP | Entry into the national phase |
Ref document number: 2021507939 Country of ref document: JP Kind code of ref document: A |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 20877583 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 20877583 Country of ref document: EP Kind code of ref document: A1 |