WO2020024627A1 - 数据处理方法、节点、区块链网络及虚拟数据载体 - Google Patents

数据处理方法、节点、区块链网络及虚拟数据载体 Download PDF

Info

Publication number
WO2020024627A1
WO2020024627A1 PCT/CN2019/083809 CN2019083809W WO2020024627A1 WO 2020024627 A1 WO2020024627 A1 WO 2020024627A1 CN 2019083809 W CN2019083809 W CN 2019083809W WO 2020024627 A1 WO2020024627 A1 WO 2020024627A1
Authority
WO
WIPO (PCT)
Prior art keywords
block
virtual data
data carrier
information
blockchain
Prior art date
Application number
PCT/CN2019/083809
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 CN201980001603.4A priority Critical patent/CN110896659B/zh
Priority to US17/265,105 priority patent/US20210312444A1/en
Publication of WO2020024627A1 publication Critical patent/WO2020024627A1/zh

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/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/3236Cryptographic 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 using cryptographic hash functions
    • H04L9/3239Cryptographic 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 using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • 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
    • 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/23Updating
    • G06F16/2358Change logging, detection, and notification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0625Power saving in storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/04Payment circuits
    • G06Q20/06Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
    • G06Q20/065Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/04Payment circuits
    • G06Q20/06Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
    • G06Q20/065Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
    • G06Q20/0655Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash e-cash managed centrally
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3821Electronic credentials
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/389Keeping log of transactions for guaranteeing non-repudiation of a transaction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • G06Q20/4014Identity check for transactions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • G06Q20/4016Transaction verification involving fraud or risk level assessment in transaction processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/405Establishing or using transaction specific rules
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/407Cancellation of a transaction
    • 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
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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
    • G06Q2220/00Business processing using cryptography
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/56Financial cryptography, e.g. electronic payment or e-cash

Definitions

  • the present application relates to the field of blockchain technology, and in particular, to a data processing method, a node, a blockchain network, and a virtual data carrier.
  • Blockchain is a technology that prevents data from being tampered with, and its implementation relies on hash operations or operations with similar functions.
  • a blockchain network composed of multiple nodes, it is usually only allowed to add a block to the very end of the blockchain, add the hash value of the previous block to a new data block, and perform a hash operation together Get the hash value of this block, and then add to get a new block.
  • the hash value can verify the input data of the hash operation, and the input data contains the hash value of the previous block, so the input data of the hash operation of the previous block can be verified, and the verification can be performed retrospectively.
  • each node needs to determine the block through a type of competitive consensus mechanism such as proof of work. Add permissions, and after each node receives a broadcast block increase message, it also needs to apply a type of competitive consensus mechanism such as proof of work to reach consensus with other nodes on the block increase message.
  • a type of competitive consensus mechanism such as proof of work to reach consensus with other nodes on the block increase message.
  • the existing data processing process of the blockchain network has the problems of complicated processing and power consumption.
  • this application provides a data processing method, node, blockchain network and virtual data carrier, which can effectively simplify the block on the basis of ensuring the decentralization and security characteristics of the blockchain network.
  • the data processing process of the chain network can effectively reduce the power consumption of the data processing process.
  • the present application provides a data processing method, including:
  • the blockchain network includes a plurality of virtual data carriers for storing data role information and provided with unique corresponding digital identifiers, and each of the virtual data carriers corresponds to at least one blockchain;
  • the ownership user is the Illegal permission statement blocks are added to the target blockchain information corresponding to all virtual data carriers of the target user in the operation and broadcasted, so that other nodes in the blockchain network refuse to verify that the target user is in the add The ownership transfer block added on the virtual data carrier with the illegal rights declaration block.
  • the ownership transfer instruction includes a digital identifier of the target virtual data carrier and a designated user identifier
  • the block involved in the last completed ownership transfer in the blockchain corresponding to the target virtual data carrier obtains the current ownership user identifier
  • the data change information in the block addition message includes: a change time, a change content, and the designated user identifier.
  • the method further includes:
  • the ownership user identifier in the canceled transfer-out block is the original ownership user identifier in the corresponding transfer-out block.
  • the method further includes:
  • the block increase message corresponding to the transferred block includes an execution condition
  • a receiving block is added to a blockchain corresponding to the target virtual data carrier, and Contains data that can prove that the execution conditions have been met, and broadcasts the receiving block to the blockchain network.
  • a block addition message that conflicts with the transferred-out block is received from any node in the blockchain network, and the designated user ID in the transferred-out block is the identity of the user on the node, then Adding a rejection block corresponding to the outgoing block to a blockchain corresponding to the target virtual data carrier, and broadcasting the block addition message corresponding to the rejection block to the blockchain network.
  • an association completion block is added to the block chain corresponding to the virtual data carrier to be received and broadcasted.
  • a payment block is added to the block chain of other target virtual data carriers, and a progressive block is added after the mortgage block, wherein the serial number of the progressive block is in the mortgage block Within the set range, and does not overlap with the serial numbers of other progressive blocks added after the mortgage block, the payment block contains the digital identifier of the target virtual data carrier to which the mortgage block belongs and The serial number of the corresponding progressive block;
  • serial number of the progressive block exceeds the preset serial number range of the original mortgage block, a new mortgage block is replaced or re-created on another target virtual data carrier, and the progressive block is added to After the new mortgage block; broadcasting the non-ownership status information for the virtual data carrier to which the original mortgage block belongs in the blockchain network, so that other users in the blockchain network are based on presets
  • the rules compete to obtain the ownership of the virtual data carrier to which the original mortgage block belongs.
  • the data role information includes any denomination of virtual currency, any denomination of fiat currency, property information of any amount and content, raw material information of any content and quantity, information of any person, and affairs of any content Any one of
  • the virtual data carrier stores the corresponding inherent information of the virtual data carrier.
  • the inherent information includes the data role information, and the corresponding digital identifier of the virtual data carrier is calculated from the inherent information. Enabling the digital identification to verify the corresponding inherent information.
  • the data processing method further includes:
  • the data processing method further includes:
  • the data processing method further includes:
  • the fast channel is a virtual data carrier whose data role information is a transaction, and the inherent information of the virtual data carrier includes participation And the virtual data carrier mortgaged by each participant, so that any one of the participants adds a corresponding delivery block to the end of the fast-track blockchain when they want to deliver to other participants.
  • the present application further provides a node, including:
  • the block addition message receiving module is configured to receive a block addition message for a target virtual data carrier sent by any node in a blockchain network, and the block addition message includes a digital identifier corresponding to the target virtual data carrier, Data change information and ownership user identification; wherein the blockchain network includes multiple virtual data carriers for storing data role information and provided with unique corresponding digital identifiers, each of which corresponds to at least A blockchain
  • a target blockchain information acquisition module configured to acquire target blockchain information corresponding to the target virtual data carrier according to the digital identifier corresponding to the target virtual data carrier;
  • a legitimacy judgment module is configured to determine whether the data change information in the block addition message is legal based on the data change history information of at least one block in the target blockchain information, and if it is legal, confirm the area The block adds data change information in the message.
  • the present application also provides a blockchain network, including: a plurality of said nodes.
  • the present application also provides a virtual data carrier, which is used to store data role information and is provided with a unique identifier, and each of the virtual data carriers corresponds to at least one blockchain;
  • Each of the blockchains belongs to the same blockchain network.
  • the present application further provides an electronic device, including a memory, a processor, and a computer program stored on the memory and executable on the processor.
  • the processor implements the data processing when the processor executes the computer program. Method steps.
  • the present application further provides a computer-readable storage medium on which a computer program is stored, and when the computer program is executed by a processor, the steps of the data processing method are implemented.
  • the present application provides a data processing method, a node, a blockchain network, and a virtual data carrier.
  • the data processing method receives a zone for a target virtual data carrier sent by any node in the blockchain network.
  • a block addition message including a digital identifier corresponding to the target virtual data carrier, data change information, and an ownership user identifier; wherein the blockchain network includes a plurality of roles for storing data Information and a virtual data carrier with a unique corresponding digital identifier, each virtual data carrier corresponding to at least one blockchain; according to the digital identifier corresponding to the target virtual data carrier, a target area corresponding to the target virtual data carrier is obtained Block chain information; judging whether the data change information in the block addition message is legal based on the data change history information of at least one block in the target blockchain information, and if it is legal, confirm the block addition message
  • the data change information can be used to ensure the decentralization and security characteristics of the blockchain network.
  • the simplified data processing block chain network improve the efficiency of the data processing block chain network, and can effectively reduce the power consumption of the data processing chain and to ensure the reliability of network data block processing procedure.
  • FIG. 1 is a schematic flowchart of steps 11 to 13 in a data processing method in an embodiment of the present application.
  • FIG. 2 is a schematic structural diagram of an example of a blockchain network in an embodiment of the present application.
  • FIG. 3 is a schematic diagram of an exemplary architecture of a virtual data carrier in an embodiment of the present application.
  • FIG. 4 is a schematic flowchart of a data processing method including step 41 in an embodiment of the present application.
  • FIG. 5 is a schematic flowchart of a data processing method including step 51 in an embodiment of the present application.
  • FIG. 6 is a schematic flowchart of steps 61 to 63 in the data processing method in the embodiment of the present application.
  • FIG. 7 is a schematic diagram of a first state of a virtual data carrier ownership transfer process in an embodiment of the present application.
  • FIG. 8 is a schematic diagram of a second state of the ownership transfer process of the virtual data carrier in the embodiment of the present application.
  • FIG. 9 is a schematic flowchart of a data processing method including step 91 in an embodiment of the present application.
  • FIG. 10 is a schematic flowchart of a data processing method including step 1001 in an embodiment of the present application.
  • FIG. 11 is a schematic flowchart of steps 1101 and 1102 of a data processing method in an embodiment of the present application.
  • FIG. 12 is a schematic flowchart of a data processing method including steps 1201 and 1202 in an embodiment of the present application.
  • FIG. 13 is a schematic flowchart of steps 1301 to 1303 in the data processing method in the embodiment of the present application.
  • FIG. 14 is a schematic flowchart of steps 1401 and 1402 in the data processing method in the embodiment of the present application.
  • FIG. 15 is a schematic flowchart of steps 1501 to 1503 in the data processing method in the embodiment of the present application.
  • FIG. 16 is a schematic flowchart of a data processing method including step 1601 in an embodiment of the present application.
  • FIG. 17 is a schematic flowchart of steps 1701 and 1702 in the data processing method in the embodiment of the present application.
  • FIG. 18 is a schematic flowchart of steps 1801 and 1802 in the data processing method in the embodiment of the present application.
  • FIG. 19 is a schematic flowchart of steps 1901 and 1902 in the data processing method in the embodiment of the present application.
  • FIG. 20 is a schematic structural diagram of a node in an embodiment of the present application.
  • FIG. 21 is a schematic structural diagram of an electronic device in an embodiment of the present application.
  • Proof of Work is a competition and consensus mechanism adopted by many cryptocurrencies represented by Bitcoin.
  • the purpose is to select a user to perform bookkeeping, and require competing nodes in the blockchain network to obtain a target data, add the target data to the ledger data, and perform a hash operation together, and Make the calculation result smaller than a preset value.
  • the result of the hash operation is difficult to predict, so the required target data cannot be obtained through simple calculations, and only different data can be used for testing until the test meets the conditions.
  • the first node that obtains the target data has the right to record the block and obtain the corresponding reward, while other nodes that are not found will not receive any reward. That is to say, every record of a block account, many competing nodes need to perform many hash operations, this process will cause a large amount of power consumption.
  • Cryptocurrency is a transaction medium that uses cryptographic principles to ensure transaction security and control the creation of transaction units.
  • Cryptocurrency is a type of digital currency (or virtual currency). Bitcoin was the first decentralized cryptocurrency. Since then, the term cryptocurrency has often referred to such designs.
  • Cryptocurrencies are based on a decentralized consensus mechanism, as opposed to banking financial systems that rely on a centralized regulatory system.
  • the above-mentioned cryptocurrency keeps all payment records on the same blockchain, and a certain user saves all transaction records for a period of time as a block and adds it to the end of the blockchain.
  • Users who perform this operation can get a certain amount of rewards (this is the only way to create Bitcoin), and they have the opportunity to cheat. Therefore, everyone wants to have the right to bookkeeping. They have to determine the bookkeeping candidate through competition. If others do not agree with the account after the bookkeeping, they must go through a complicated process to reach a consensus. Both bookkeeping and reaching consensus have played a key role.
  • each node needs to determine the increased authority of the block through a type of competitive consensus mechanism such as proof of work, and receives broadcasts at each node. After adding a message to a block, it is also necessary to apply a type of competitive consensus mechanism such as proof of work and other nodes to reach a consensus on the legitimacy of the block to increase the message's legitimacy.
  • the process is complex, time-consuming and power-consuming.
  • This application provides a data processing method, node, blockchain network, virtual data carrier, electronic device, and computer-readable storage medium.
  • the blockchain network includes a plurality of unique data stores for storing data role information.
  • Digitally identified virtual data carriers each of which corresponds to at least one blockchain; and according to the digital identifier corresponding to the target virtual data carrier, obtaining target blockchain information corresponding to the target virtual data carrier;
  • the data change history information of at least one block in the target blockchain information to determine whether the data change information in the block addition message is legal, and if it is legal, to confirm the data change information in the block addition message.
  • the data processing process of the blockchain network is simplified, the data processing efficiency of the blockchain network is effectively improved, and the power consumption of the data processing process can be effectively reduced. And ensure the reliability of the data processing process in the blockchain network.
  • this application provides a data processing method, a node, a blockchain network, a virtual data carrier, an electronic device, and a computer-readable storage medium, and a node in the blockchain network is determining to add a message to the block
  • a node in the blockchain network is determining to add a message to the block
  • Illegal permission declaration blocks are added to the target blockchain information corresponding to all virtual data carriers of the target user and broadcasted, so that other nodes in the blockchain network refuse to verify that the target user has added illegal permissions Declare the ownership transfer block added on the block's virtual data carrier, thereby further comprehensively simplifying the blockchain network Data processing.
  • the blockchain network includes a plurality of virtual data carriers for storing data role information and provided with a unique identifier, and each of the virtual data carriers corresponds to at least one Blockchain.
  • the data role information includes any one of an arbitrary denomination of virtual currency, an arbitrary denomination of fiat currency, property information of an arbitrary amount and content, raw material information of arbitrary content and quantity, information of any person, and affairs of any content.
  • the root block of each of the blockchains or the virtual data carrier to which the blockchain belongs is stored with the inherent information of the corresponding virtual data carrier.
  • the inherent information includes the data role information.
  • the inherent information calculates a corresponding digital identification of the virtual data carrier, so that the digital identification can verify the corresponding inherent information.
  • a virtual data carrier is a data structure used to record objects.
  • the object it records can be a fixed amount of cryptocurrency, or it can be extended to a wider range, such as legal currency, property, commodities, people, affairs, etc.
  • the data of the object is divided into the aforementioned inherent information and variable information.
  • the inherent information is hashed or signed to obtain a digital identification.
  • the digital identification can be used to verify the inherent information, and the object is recorded in the respective blockchain of each virtual data carrier.
  • Change history of variable information adding blocks to the blockchain every time there is a change.
  • Variable information includes ownership of objects.
  • the variable information is in different states, and everyone has different permissions to add each type of block, especially the change of ownership will affect the permissions to add multiple blocks.
  • Each virtual data carrier uses a blockchain to meet the needs of recording variable information. Based on specific implementation requirements, there may be cases where more than one blockchain is provided for each virtual data carrier, which also falls into the scope of protection of this application.
  • the recorded object should be atomic and indivisible during the recording period. It can be a packed bag of rice, but it cannot be a pile of loose rice after unpacking.
  • the use method of the virtual data carrier is similar to that when the object is cryptocurrency.
  • Each virtual data carrier represents a fixed property.
  • the inherent information of the virtual data carrier indicates the producer, production date, place of production, model, raw material, process, serial number, etc. of the commodity.
  • the object is a ball-point pen.
  • a corresponding virtual data carrier is established.
  • the serial numbers of the same batch of products are different, and the generated digital identifiers are also different.
  • the ten pens were packaged into a box, and a virtual data carrier was also established for the box.
  • Each block of the ten pens in the box was added with a block, indicating that the variable information of the pen was subsequently entrusted to this box.
  • Several boxes are packed into a box, and the variable information of each box is also entrusted to this box. The boxes are shipped to the wholesaler, the location is changed, and the ownership is changed, just recorded on the box's blockchain.
  • the wholesaler unpacks the box, adds another block to the block chain of each box, releases the trust relationship between the box and the box, and copies the variable state of the box to the box.
  • Distributing the box to the retailer changed the ownership of the box, and the retailer opened the box again to release the entrustment relationship between the pen and the box.
  • the pen is sold to the customer, the ownership of the pen is transferred to the customer.
  • the purchase process is simplified as an associated operation: The buyer hands the ownership of several virtual data carriers whose currency is an object to the seller in exchange for several virtual data carriers whose objects are commodities ownership.
  • the inherent information of the virtual data carrier indicates the person's birth time and place, parental status, gender, ethnicity, characteristics, DNA map and other contents. Later life events are recorded as variable information on the blockchain in. For example, when a child goes to primary school, the school is authorized to record certain types of blocks, and the authorization is cancelled after leaving school.
  • the inherent information of the virtual data carrier indicates the type, process, initial conditions, expected progress, etc. of the transaction, and the execution of each step thereafter is recorded in the blockchain as variable information.
  • a user applies for a patent to a patent office.
  • the application process and the initial application documents are placed in the inherent information.
  • After the user adds a block for submitting an application the user has the right to add the block to be withdrawn.
  • the patent office has the right to add a block for acceptance. Users have the right to add paid blocks.
  • the patent office can add preliminary examination blocks. If they do not pay overtime, the patent office has the right to add and withdraw blocks ... All steps run according to the application process recorded in the inherent information.
  • the process can be written in a programming language or a markup language, describing all the states of the entire process and the state jumps in response to each event in each state. In essence, it is a smart contract that can guide the participating parties to execute step by step.
  • the processing efficiency can effectively reduce the power consumption of the data processing process.
  • the present application provides an embodiment of a data processing method whose execution subject is any node in a blockchain network. Referring to FIG. 1, the data processing method specifically includes It has the following content:
  • Step 11 Receive a block addition message for the target virtual data carrier sent by any node in the blockchain network.
  • the block addition message includes the digital identifier, data change information, and ownership corresponding to the target virtual data carrier.
  • User identification wherein the blockchain network includes a plurality of virtual data carriers for storing data role information and provided with unique corresponding digital identifiers, and each of the virtual data carriers corresponds to at least one blockchain.
  • any node in the blockchain network sends a block addition message for the target virtual data carrier to other nodes in the blockchain network in a broadcast manner
  • broadcast can refer to the source node Send the message directly to all other nodes, or refer to the source node sending the message to other nodes, and then each node that receives the message forwards the message to more nodes, so that it is relayed multiple times to achieve the whole The effect of broadcasting.
  • each node is a full-fledged member of the blockchain network and belongs to a logical node, and the node can be either a client or a client. It can be a server, and each node will have a routing function, but other functions may not be available. Different types of nodes may only include some functions.
  • the blockchain network is a P2P network composed of multiple nodes. It can be understood that the node and the user have a non-fixed one-to-one or non-fixed one-to-many relationship, where the non-fixed corresponds to a situation in which a user borrows a node corresponding to another person to operate his own account.
  • a blockchain network includes multiple virtual data carriers belonging to respective users.
  • each virtual data carrier corresponds to at least one blockchain.
  • the data carrier is used to store data role information and is provided with a unique corresponding digital identification.
  • the data role information is one of the aforementioned inherent information, that is, the unique and fixed meaning represented by the corresponding virtual data carrier itself, and
  • the digital identification is the unique and fixed meaning identification certificate represented by the virtual data carrier.
  • a node in the blockchain network receives a block addition message for a target virtual data carrier broadcast by any node in the same blockchain network, and reads the block inclusion message contained in the block addition message.
  • the target virtual data carrier is any one of a plurality of virtual data carriers in the current blockchain network.
  • the data change information includes specific changes, and may also include the identity of the original owner of the blockchain or virtual data carrier before the change, and the designation of the changed blockchain or virtual data carrier.
  • the user's identification may also include information such as changing operation time.
  • the ownership user identifier is a digital identifier for identifying each user in the current blockchain network.
  • Step 12 Obtain target block chain information corresponding to the target virtual data carrier according to the digital identifier corresponding to the target virtual data carrier.
  • step 12 as in the blockchain network, all virtual data carriers and their corresponding blockchains are public storage information, that is, any node can maintain and / or query any virtual data carrier and its corresponding area at any time.
  • Block chain information Therefore, a node that receives a block increase message can find the target virtual data carrier and the target virtual data carrier in the prestored virtual data carrier information according to the digital identifier corresponding to the target virtual data carrier in the block increase message. Its only corresponding blockchain information.
  • Step 13 Determine whether the data change information in the block addition message is legal based on the data change history information of at least one block in the target blockchain information, and if it is legal, confirm the block addition message Data change information.
  • step 13 after receiving the block addition message, the node finds the target blockchain information corresponding to the target virtual data carrier via the method of step 12, and then changes the data change information in the block addition message with the target.
  • the data change history information of at least one block in the blockchain information is matched. If the matching is successful, the data change information in the block addition message is considered legal. It can be understood that the confirmation of the data change information in the block addition message may be legally marking the data change information in the block addition message by itself.
  • step 41 is performed, which specifically includes the following content:
  • Step 41 When or after it is determined that the data change information in the block addition message is illegal, if it is determined that the operation on the data change information belongs to one of the preset serious operations, then the ownership user Adding an illegal authority declaration block to the target blockchain information corresponding to all virtual data carriers of the target user performing operations on the data change information and broadcasting it, so that other nodes in the blockchain network will be sanctioned The owner of this operation.
  • the preset severe action is an operation with a higher violation level in the violation operation specification preset by the corresponding blockchain network.
  • the severe action includes at least Adding multiple ownership transfer / freeze / mortgage / association initiation blocks or a combination of the above types of blocks at the same location on a blockchain, resulting in a situation where the status of this blockchain is not unique.
  • step 41 after receiving the block increase message, the node finds the target blockchain information corresponding to the target virtual data carrier through the method of step 12, and then changes the data change information in the block increase message with the target.
  • the data change history information of at least one block in the blockchain information is matched, and if the match fails, the data change information in the block addition message is considered to be illegal.
  • the data change information in the current block addition message includes: "Specific changes: ownership transfer; identification of the original owner of the block or virtual data carrier before the change: A; changed block or virtual data carrier Designated user ID of the user: B; time of change: 03:31:40 am-December 01, 2018 "; and the data change history information of the last block of the history of the target blockchain information is” specific change content: release Freeze; the identification of the user who added the content: A; change time: 04:06:24 pm-November 11, 2018 "; then the data change information and data change in the block addition message according to the preset matching rule
  • the historical information is matched, and the preset matching rule is preset according to the information represented by the virtual data carrier and the content of the consensus mechanism of the blockchain network.
  • the node corresponding to all virtual data carriers of the ownership user who is the target user who performs the operation for the data change information An illegal permission declaration block is added to the target blockchain information, and then, the node broadcasts the block addition message for the illegal permission declaration block in the entire blockchain network, so that other nodes can declare the illegal permission statement.
  • the block's block adds a message, and sanctions are imposed on the owner of the operation.
  • the data processing method specifically includes the following:
  • Step 51 Any one of the other nodes receives a notification message containing data change information and an ownership user identifier for an illegal operation sent by any node in the blockchain network. If an illegal operation is determined for the data change information If it belongs to one of the preset serious operations, the owner who performed this operation will be sanctioned.
  • the sanctioning the ownership user for performing this operation may specifically be: refusing to verify the ownership transfer block added by the target user on the virtual data carrier to which the illegal permission declaration block is added; the The sanctioning of the ownership user who performs this operation can also specifically be: 1. Refuse any blocks added by the user on all blockchains; 2. Refuse to transfer ownership with the user; 3. Ownership involving the user Additional fees are charged for the transfer; 4. The user is required to pay certain properties or perform designated transactions in exchange for lifting sanctions.
  • the data processing method provided in the embodiment of the present application allows each virtual data carrier to correspond to the setting of at least one blockchain, so that each node does not need to reach other nodes through a type of competitive consensus mechanism such as proof of work. Consensus, only need to verify the legitimacy of the node by itself, and broadcast after verification, so it can effectively simplify the data processing process of the blockchain network on the basis of ensuring the decentralization and security characteristics of the blockchain network. And can effectively reduce the power consumption of the data processing process.
  • the data processing method can also effectively prevent double spend attacks, as described below:
  • Double spending refers to paying the same money to multiple users, which is a common attack on cryptocurrencies.
  • the method of double spending can only be that the current owner of the virtual data carrier adds multiple payment blocks at the same position on the blockchain, which makes the blockchain forked. Because the blockchain changes must be broadcast to all nodes, even if the adder sends the payment block to the receiver of the payment virtual data carrier in a non-broadcast manner, the receiver of the payment virtual data carrier must broadcast the block once it is received. If a double spend occurs, it will be immediately noticed by other users from the broadcast. The discoverer broadcasted two or more blocks at the fork to all nodes, and the blocks were signed.
  • the discoverer can add a block to the end of its blockchain and write a forked block to make these virtual data carriers unowned.
  • the receiver node waits for a period of time after receiving the transfer-out block from the sender node. If the receiver node does not find conflict information, it adds the accepting block. During the waiting time, the transfer-out block of the spending node has been transmitted throughout the network. If the spending-node then sends another transfer-out block at the same position on the blockchain, not only its own account will be sanctioned The new transfer-out block will also be rejected by the entire network and will not affect the previous payment.
  • the "transfer-out block” specifically refers to the block added by the payer in the first step of the two-step payment method; and the "payment block” or “ownership transfer block” includes both transfer-out Blocks also include blocks added by payers in single-step payment methods.
  • user A first adds the block transferred to user B to the blockchain of a virtual data carrier. After user B accepts, user A adds the transfer out to the same location on the blockchain.
  • User C ’s block was not broadcast.
  • user C transferred this virtual data carrier to user D, the entire network discovered the double spend event. For each long-lived node, if it does not know the process of transferring user A to user C, it means that user C did not broadcast according to regulations when accepting the virtual data carrier, and user C can be regarded as a complicity of user A and punished.
  • This application provides an embodiment of a data processing method whose execution subject is any node in a blockchain network. Referring to FIG. 6, the data processing method specifically includes the following:
  • Step 61 Receive an ownership transfer instruction for the target virtual data carrier sent by the corresponding ownership user, where the ownership transfer instruction includes a digital identifier of the target virtual data carrier and a designated user identifier.
  • the nodes in the blockchain network can receive the ownership transfer instruction for the target virtual data carrier from other authorized terminal devices connected by the communication, and can receive the target virtual data carrier for the target virtual data carrier directly entered by the authorized user in the node. Ownership transfer instruction.
  • Step 62 According to the digital identity of the target virtual data carrier, the block involved in the last completed ownership transfer in the blockchain corresponding to the target virtual data carrier obtains the current ownership user ID.
  • the current ownership user information of the virtual data carrier can be obtained from the relevant information of the last completed ownership transfer process on the corresponding blockchain.
  • a title transfer process records the target user identification in one or more blocks. After the title transfer is completed, the target user of the title transfer becomes the new title user. Therefore, the target user read from the block involved in the last completed ownership transfer is the current ownership user.
  • Step 63 Determine whether the ownership user ID obtained by the block involved in the last completed ownership transfer and the ownership user ID corresponding to the ownership user who issued the ownership transfer instruction are the same, and if so, based on the The specified user identifier adds a payment block to a blockchain corresponding to the target virtual data carrier, and broadcasts the block addition message corresponding to the payment block to the blockchain network, wherein the block
  • the data change information in the increase message includes: a change time, a change content, and the designated user identifier.
  • the data processing method provided by the embodiment of the present application can simplify the process of transferring the ownership of the target virtual data carrier by setting the characteristics that only the owner can operate through the blocks of the authority transfer function of the virtual data carrier. And effectively improve the ownership transfer efficiency, security and reliability of the target virtual data carrier.
  • the data processing method can also realize a one-time transfer of ownership of the virtual data carrier. Specifically, described as follows:
  • the block involved in the last ownership transfer of the virtual data carrier's blockchain indicates that this virtual data carrier belongs to user A.
  • A has the right to add a block, sign the block with his private key, transfer this virtual data carrier to user B, and broadcast the update of the blockchain of this virtual data carrier to the entire network.
  • B After receiving the broadcast, B first verifies the inherent information such as its face value with the digital identification of the virtual data carrier, and then verifies all the blocks in the blockchain of this virtual data carrier. If there is an abnormality, it will broadcast an alarm to the entire network.
  • the last block of the blockchain of the virtual data carrier in Figure 7 indicates that this virtual data carrier belongs to user A, so user A It has the right to add a block, sign the block with its own private key, transfer this virtual data carrier to user B, and broadcast the update of the blockchain of this virtual data carrier to the entire network.
  • User B receives the broadcast, first verifies its face value and other inherent information with the digital ID of the virtual data carrier, and then verifies all the blocks in the blockchain of this virtual data carrier. If there is an abnormality, it broadcasts an alarm to the entire network.
  • the original owner of a virtual data carrier is user A.
  • the user's public key of user A is visible in the first block of the virtual data carrier's blockchain.
  • User B adds a payment block at the end of the block chain of this virtual data carrier, which means that this virtual data carrier is transferred to user C (public key), and uses his own private key to sign this block.
  • the broadcast is well known.
  • User A adds a payment block at the end of the blockchain of this virtual data carrier, which means that this virtual data carrier is transferred to user D (public key), and signs this block with his private key, which is well known by broadcast.
  • the present application provides a data processing whose execution subject is any node in the blockchain network.
  • the data processing method specifically includes the following:
  • step 63 it also includes step 91: if the transfer confirmation message sent by the designated user of the out-of-block corresponding to the block addition message is not received within a preset time, corresponding to the target virtual data carrier Adding a canceled transfer-out block corresponding to the transfer-out block to the blockchain, and broadcasting the block addition message corresponding to the canceled transfer-out block to the blockchain network; wherein the cancellation The ownership user identifier in the transfer-out block is the original ownership user identifier in the corresponding transfer-out block.
  • step 1001 is also included: if a designated user who receives the block-out message corresponding to the block-add message within a preset time period broadcasts a refusal to broadcast on the blockchain network When the message is issued, it is determined that the current ownership user of the corresponding target virtual data carrier is still the ownership user who issued the ownership transfer instruction for the target virtual data carrier.
  • the payment operation can be performed in two or more steps.
  • user A pays a virtual data carrier to user B.
  • User A first adds a transfer block to the virtual data carrier's blockchain, indicating that it is transferred to user B.
  • User B can choose to accept or reject the virtual data. Carrier. If it refuses, user A can still transfer this virtual data carrier to user B or another person.
  • user B does not respond for a certain period of time, user A has the right to cancel the transfer. Transfer out, accept, reject, and cancel are also performed by adding blocks to the end of the blockchain.
  • the state transfer process of the virtual data carrier that allows adding blocks may specifically include the following:
  • the virtual data carrier belongs to user A.
  • User A has the right to add out blocks;
  • User A added a transfer-out block to indicate transfer to user B.
  • User B has the right to add acceptance or rejection blocks;
  • User B adds an acceptance block, and the virtual data carrier becomes owned by User B.
  • User B has the right to add out blocks;
  • step 2 user B adds a reject block, and the status returns to step 1.
  • step 2 user B has no operation, and timeout, user A has the right to add a cancel block
  • step 5 user A adds a cancel block, and the status returns to step 1.
  • this application provides a data processing method whose execution subject is any node in the blockchain network.
  • the data processing method specifically includes the following contents:
  • Step 1101 Receive a block addition message corresponding to a transfer-out block for a target virtual data carrier broadcast by any node in the blockchain network;
  • Step 1102 if the block addition message corresponding to the transferred-out block includes an execution condition, after the execution condition is satisfied, a receiving block is added to the blockchain corresponding to the target virtual data carrier, and the receiving The block contains data that can prove that the execution conditions have been met, and broadcasts the receiving block to the blockchain network.
  • the execution conditions of this operation can be written, and the execution is performed only when the conditions are met.
  • the execution condition is: after 24 hours, if the total amount of virtual data carriers owned by the payer exceeds 100 yuan, the payment will be made; otherwise, the payment will be cancelled.
  • the recipient does not respond within a certain period of time, the payer has the right to cancel the transfer.
  • An example of the execution conditions provided in this application is: User A adds a block x to the blockchain of the virtual data carrier A1 he owns: "If at 12 noon tomorrow the total amount of virtual data carriers I own exceeds 100 yuan, I will Send A1 to user B. " It's a little later than the agreed time (if the blockchain of the virtual data carrier held by user A has changed and there is enough time to receive the broadcast), if user B learns that the virtual data carrier owned by user A exceeds 100 yuan, the virtual data carrier The ownership information of the data carrier is written into the receiving block and added after the block x, the virtual data carrier A1 can be received.
  • the data processing method may further specifically include the following content:
  • Step 1201 Receive a block addition message corresponding to the transferred-out block for the target virtual data carrier broadcast by any node in the blockchain network.
  • Step 1202 if a block addition message that conflicts with the transferred-out block is received from any node in the blockchain network, and the designated user identifier in the transferred-out block is a user on the node Identifier of the target virtual data carrier, add a rejection block corresponding to the transfer-out block to the blockchain corresponding to the target virtual data carrier, and broadcast the block corresponding to the rejection block to the blockchain network Add messages.
  • this application provides a data processing method whose execution subject is any node in the blockchain network.
  • the data processing method specifically includes the following contents:
  • Step 1301 Receive a block addition message corresponding to an outbound block for a target virtual data carrier broadcast by any node in the blockchain network;
  • Step 1302 Determine whether the block addition message corresponding to the transferred-out block contains association information, and if so, determine the characteristics of all association-initiated blocks in the corresponding association operation according to the association information;
  • Step 1303 If all the association-initiating blocks of the association operation are received, add an association-completed block to the virtual data carrier corresponding to the block to be received and broadcast it.
  • multiple payments can be linked together, and the linked payments can only be completed or cancelled at the same time, and cannot be partially completed and the other cancelled.
  • Multiple payments can be linked together when making a payment. For example, user A pays 10 yuan to user B and asks user B to change 3 yuan. These two payments can be linked together and they can only be completed or cancelled at the same time. One cannot be completed and the other is cancelled.
  • user A has to pay user B a virtual currency of 7 yuan, but there is no virtual data carrier of 7 yuan face value, he can pay user 5 a virtual data carrier of 5 yuan and 2 yuan, or he can pay user B a A virtual data carrier of 10 yuan and asks user B to retrieve 3 yuan.
  • this application provides an application example of a specific scheme of association operation as follows:
  • the essence of the association operation is the exchange or simultaneous transfer of ownership of several virtual data carriers, which can be used for change between virtual data carriers, and can also be used in scenarios such as commodity trading and contract execution.
  • user A wants to use his own virtual data carrier A1 to exchange user B's virtual data carrier B1.
  • the specific implementation is as follows:
  • the two users already know the digital identity of the other user and the two virtual data carriers.
  • A adds an association initiation block x to A1's blockchain, which reads: B1 is willing to exchange A1 for B.
  • B also adds an association initiation block y to B1's blockchain, which reads: A1 is willing to exchange B1 for A.
  • A adds an associated completion block x2 to the back of y on B1's blockchain, which reads: "Agree to exchange B1 with A1 for B, see block x (add the complete data of x)" and receive B1.
  • step 1 If A wants to cheat, do n’t broadcast x in step 1, and perform step 2 after receiving y. Since the entire x block data must be written in x2, as long as x2 is broadcast, x will be broadcast. B A1 can be received; if A does not broadcast x2, the reception of B1 is not completed, and B1 cannot be spent afterwards.
  • B receives a block that conflicts with x (a double flower) during the waiting period, at this time, A has added the association completion block x2 to B1, then B has the right to After the double spend information was added to x2, the related transaction was cancelled and the ownership of B1 was recovered.
  • the association initiation block has a validity period. If A does not receive the association initiation block and cannot complete the association until it expires, A can add a block to be cancelled to A1 and broadcast it. After a period of time, if there is no conflict Block, add another block to disassociate it. If during the waiting period, B broadcasts the association completion block, when other nodes find a conflict, they will send the association completion block of B to A, and A can complete the association.
  • More complex exchanges may involve multiple users and multiple virtual data carriers. Similar to the above process, the owner of each virtual data carrier first adds and broadcasts an association initiation block to the end of the virtual data carrier blockchain, stating the complete Exchange plan, and then gather the association initiation blocks broadcast by other parties required to complete this plan, write an association completion block, and add it at the end of the blockchain of each virtual data carrier that you need to obtain. In a multilateral transaction, any participant who finds a double spend before adding an associated completion block has the right to add the double spend information to the cancellation block and add it to the block chain of all virtual data carriers to cancel the entire transaction.
  • A adds an initiation block x to A1: B1 is willing to exchange B1 with A1;
  • B receives x, waits for a period of time, and adds an association confirmation block y on B1: quote x and agree to exchange A1 with A1 for B1;
  • This method can better solve the trust problem of remote transactions than some payment software.
  • this application provides a data processing method whose execution subject is any node in the blockchain network
  • the data processing method specifically includes the following contents:
  • Step 1401 Receive a block addition message corresponding to a payment block for a target virtual data carrier broadcast by any node in the blockchain network.
  • Step 1402 Determine whether there is more than one ownership user identifier in the block addition message corresponding to the payment block of the target virtual data carrier, and if so, determine according to the ownership content of the ownership user corresponding to each of the ownership user identifiers Whether the block addition message corresponding to the payment block is legal.
  • the ownership of the virtual data carrier discussed previously has only one owner, and the owner fully owns the ownership of the virtual data carrier.
  • the object of the virtual data carrier is a company, and the ownership owner includes two shareholders, one with 40% of shares and the other 60% with shares.
  • A can transfer 40% of his shares to C
  • B can transfer 20% of his shares to D.
  • the share structure was: 40% for B, 40% for C, 20% for D, and A was gone.
  • the main point of this operation is that the transferee needs to prove that they have enough shares to transfer out, and should ensure the order of the transfer blocks and avoid forks (you can also use a directed acyclic graph (DAG) with forks, But after such a large amount of structural data, it is confirmed that the efficiency is too low). If everyone can add blocks at any time, even if there is no malicious operation, it may cause a fork. In order to avoid forks, everyone's right to add must be set in some kind of consensus scheme.
  • DAG directed acyclic graph
  • a simple solution is to allocate time by one hour per person. In the first hour, only A has the right to add the transfer block. Whether he adds it or not, it will be B in the next hour, and C in the next hour ... This will ensure that the transfer block added by everyone is in On the same blockchain.
  • the virtual data carrier should be split into multiple virtual data carriers according to the owner, and each new virtual data carrier has only one owner.
  • the splitting method is the same as the frozen virtual data carrier described in steps 1901 to 1903 to issue the secondary virtual data carrier.
  • this method can grow into another decentralized, secure, and power-saving cryptocurrency solution-as long as the object of the virtual data carrier is the total amount of cryptocurrencies.
  • this application provides an embodiment of a data processing method whose execution subject is any node in the blockchain network, see FIG. 15.
  • the data processing method specifically includes the following:
  • Step 1501 Add a mortgage block to the blockchain of the target virtual data carrier.
  • Step 1502 Receive a payment instruction sent by the ownership user.
  • Step 1503 Add a payment block to the block chain of other target virtual data carriers according to the payment instruction, and add a progressive block after the mortgage block, wherein the serial number of the progressive block is in the Within the range set by the mortgage block, and not the same as the serial number of other progressive blocks added after the mortgage block, the payment block contains the target virtual data carrier to which the mortgage block belongs. The number identifies and the serial number of the corresponding progressive block.
  • Step 1504 Broadcast a block addition message corresponding to the payment block and the progressive block for the target virtual data carrier in the blockchain network, so that other nodes in the blockchain network can verify the payment area. Validity of blocks and progressive blocks.
  • the data processing method specifically includes the following content:
  • Step 1601 if the serial number of the progressive block exceeds the preset serial number range of the original mortgage block, replace or re-create a new mortgage block on another target virtual data carrier, and set the progressive block Block is added after the new mortgage block; broadcasting the non-ownership status information of the virtual data carrier to which the original mortgage block belongs in the blockchain network, so that other users in the blockchain network Based on the preset rules, the ownership of the virtual data carrier to which the original mortgage block belongs is obtained through competition.
  • fees should also be decentralized. For example, each added payment block must pay 0.01 yuan, then the user needs to add a mortgage block on a virtual data carrier owned by the user. If user A mortgages a virtual data carrier N with a face value of one yuan, then This virtual data carrier can provide 100 paid fees, each with a serial number, 1 to 100.
  • the numerical ID of N and the serial number of the payment should be written, and a progressive serial number block is added to the mortgage block of N (all progressive blocks can be directly added to the mortgage in parallel) After the block, it can also be added after the previous progressive block), and a progressive serial number block is added to the N's blockchain, and the progressive block is broadcasted with the payment block, and other nodes verify that both are valid Only then was the payment accepted. Progressive blocks also prohibit double spending.
  • the serial numbers of each progressive block must be different from the serial numbers of other progressive blocks previously targeted to the same mortgage block. If users are required to pay serially, the minimum release interval of two progressive blocks with different serial numbers can be limited, and users are prohibited from paying multiple virtual data carriers at the same time. By the time the serial number reaches 100, the virtual data carrier N is used up. A should mortgage another virtual data carrier to support subsequent payments, and N enters the state of no ownership.
  • N has entered the state of no-ownership and can compete for the ownership of N according to certain rules.
  • the winner can get N.
  • the rules can be set like this:
  • the ID of a receiver is selected to be closest to the ID of the last progressive block of N. This receiver adds a receiving block to N, writes the data of the selected payment block, and can receive N.
  • progressive blocks can be added directly after the mortgage block in parallel, so that after the non-owner N is received by others, other progressive blocks except the last progressive block need not be recorded again, and the blockchain can be reduced. length.
  • each user may register multiple accounts, but in addition to the cost of registering the account, the account must be accounted for every day in order to be eligible as a candidate. This must increase a lot of unnecessary transfers, increase fees, and pay more than you pay.
  • Operations other than payment such as conditional operations, freezing of virtual data carriers for issuing secondary virtual data carriers, and adding free information to blocks, can be charged at different standards.
  • the data processing method specifically includes the following content:
  • Step 1701 Receive mortgage information of other participants mortgaged the virtual data carrier.
  • Step 1702 Create a fast channel between the participant on the node and other participants sending the mortgage information, the fast channel is a virtual data carrier whose data role information is a transaction, and the inherent information of the virtual data carrier is A virtual data carrier containing participants, settlement conditions, and mortgages of each participant, so that any one of the participants adds a corresponding delivery area to the end of the fast-track blockchain when they want to deliver to other participants Piece.
  • all participants should individually mortgage a number of virtual data carriers that are owned by the user, that is, add mortgage blocks to the end of the blockchain corresponding to these virtual data carriers.
  • the data carriers can be different types of objects and different quantities, and multiple pieces of virtual data carriers mortgaged by the same participant can also be different types of objects and different quantities.
  • a participant After determining the collateral virtual data carrier, a participant creates a fast track.
  • the fast track is a transaction-type virtual data carrier.
  • the inherent information indicates the participants, settlement conditions and the virtual data carrier mortgaged by each participant. Settlement conditions can be settled by time or by participants' requirements. After the creation, other participants should add blocks to the fast-track blockchain to express their consent to participate.
  • any participant wants to deliver an object referred to by a virtual data carrier to other participants, instead of transferring the virtual data carrier, a block is added to the end of the fast-track blockchain, stating The delivery of a number of objects to a participant.
  • Each participant should ensure that the fast-track blockchain is not forked, and the total payable and receivable amount of each participant for each object can be clearly calculated at any time. The net payable amount of each participant for any one type of object cannot exceed the amount of the same type of object mortgaged by the fast track when creating the fast track.
  • the net receivable participant can withdraw the mortgaged virtual data carrier, while the net payable participant's withdrawal of the mortgaged virtual data carrier and the checkout operation are linked.
  • the virtual data carrier that must be paid for the virtual data carrier to withdraw the mortgaged virtual data carrier will not be settled after a period of time, the net receivable may implement a mandatory checkout, and deduct the payable part from the virtual data carrier mortgaged by the net payable By.
  • the aforementioned "deduction" operation can be implemented in two ways: 1. Change by the net receivable (associated operation); 2. Freeze the mortgaged virtual data carrier to create a smaller denomination secondary virtual data carrier to pay the net receivable.
  • a and C can connect these two fast lanes in series to form a multi-level fast lane. So gradually connected, can be quickly delivered to a distance.
  • Each delivery in a multi-level fast lane is essentially an associated operation that puts the delivery of each segment of the multi-level fast lane together.
  • Public chain refers to the fact that everyone has the right to add blocks technically, and it is necessary to determine who added the block legally through a consensus algorithm.
  • the private chain is only its owner has the right to add blocks, others can only read.
  • the blockchain corresponding to the virtual data carrier in the present invention is essentially a private chain, and only the owner of this chain has the right to add it.
  • the owner can transfer the ownership of the chain to the designated person by adding a block, and the chain can change to another owner, after which only the new owner has the right to add a payment block.
  • each block has different restrictions on the adder.
  • the payment block can only be added by the current owner.
  • Other blocks may also be designated by the owner. People, other specific people, or everyone can add. Looking at it this way, the public and private attributes of the blockchain of the virtual data carrier vary depending on the type of block, and it can also be regarded as a mixed public-private blockchain.
  • this application provides an embodiment of a data processing method whose execution subject is any node in the blockchain network.
  • the data processing method specifically includes the following contents:
  • Step 1801 Obtain information of each data role, where the data role information includes any denomination of virtual currency, any denomination of fiat currency, property information of any amount and content, raw material information of any content and quantity, information of any person, and arbitrary Any of the contents of the transaction.
  • Step 1802 Create a one-to-one corresponding virtual data carrier and a block chain corresponding to each of the virtual data carriers according to the data role information, wherein each of the root blocks or the blocks of the blockchain
  • Each of the virtual data carriers to which the chain belongs stores the corresponding inherent information of the virtual data carrier, the inherent information includes the data role information, and the corresponding number of the virtual data carrier is calculated from the inherent information.
  • Identification so that the digital identification can verify the corresponding inherent information.
  • each one-to-one corresponding virtual data carrier and the blockchain corresponding to each of the virtual data carriers according to the data role information may include the following four types:
  • Any user creates a virtual data carrier in a proof-of-work manner, and the face value of the virtual data carrier reflects the workload.
  • a virtual data carrier is created by any user in a proof-of-work manner, and the face value of the virtual data carrier reflects the workload.
  • the disadvantage is that it consumes more power, and the advantage is that the number of cryptocurrencies can be flexibly adapted to market needs, which is conducive to currency stability. It should be noted that electricity is wasted in the process of creating a virtual data carrier, and the payment process is not wasted. It can be paid without creating new coins. It is still very different from Bitcoin's large amount of electricity required for each billing.
  • the data processing method specifically includes the following: creating a virtual data carrier that stores the flow or rule of the transaction in the inherent information, the transaction All participants of shall execute the transaction in accordance with the process or rule, which includes adding a change block by the participant to the corresponding block of the virtual data carrier in a manner prescribed by the process or rule To modify the content of the process or rule.
  • the above-mentioned rule for changing the authority may be a global rule, may also be specified in the inherent information of the virtual data carrier, or may be modified by adding a block.
  • this application provides an embodiment of a data processing method whose execution subject is any node in the blockchain network, see FIG. 19. If the data role information is any denomination of virtual currency or fiat currency, the data processing method specifically includes the following:
  • Step 1901 Receive an instruction to create a secondary virtual data carrier sent by an owner user.
  • Step 1902 Freeze one or more of the virtual data carriers whose current ownership user is the ownership user.
  • Step 1903 Create at least one secondary virtual data carrier storing a specified face value, and a total face value of the secondary virtual data carrier is less than or equal to a face value sum of the virtual data carrier.
  • a virtual data carrier of a specific denomination If a virtual data carrier of a specific denomination is needed, one or more virtual data carriers can be frozen and used as a basis for creation.
  • a number of virtual data carriers of a specified denomination are called secondary virtual data carriers.
  • the virtual data carrier used as the basis for creation is frozen and cannot be circulated until the user retracts all the secondary virtual data carriers and destroys them, and the creation basis can be thawed.
  • Additional secondary virtual data carriers can be issued: During the freeze period, users can destroy some of the secondary virtual data carriers that they have created, or they can issue new secondary engines on the premise that the total face value of all secondary virtual data carriers does not exceed the creation basis. Virtual data carrier. Freezing, thawing, issuing and destroying operations are also performed by adding blocks to the end of the blockchain of the virtual data carrier.
  • he can also create a virtual data carrier with a total face value of 79 yuan, which can be created one or divided into multiple pieces, which can be created at one time or divided into multiple times.
  • the data processing method further includes:
  • freezing a virtual data carrier to issue a secondary virtual data carrier can be used to describe the production process of a commodity: freezing raw materials and generating products. This can trace the raw materials of the product and avoid fraud.
  • the block chain corresponding to the virtual data carrier of the commodity clearly records the change history of its ownership, and at any time indicates the legal owner of each period to prevent illegal possession. This type of recording can prevent most property crimes, such as theft, robbery, corruption, money laundering, and counterfeiting.
  • the condition is that the first 10 digits (binary) of the digital identifier of the generated virtual data carrier are all If it is 0, the face value of this virtual data carrier can be 1 yuan; the first 13 bits are all 0, and the face value can be 8 yuan.
  • the user can continuously add redundant data to the inherent information and calculate the digital identification until the conditions are met.
  • the price of electricity consumed to create a virtual data carrier is less than the face value of the generated virtual data carrier, someone will create a new virtual data carrier, thereby preventing the currency value of the virtual data carrier from being speculated too high.
  • utility currency should be able to be issued to avoid deflation.
  • the decentralized issuance method is:
  • the non-ownership virtual data carrier discussed in step 1601 if the ID of the last progressive block conforms to a specific format, the user who finally won the ownerless virtual data carrier has the right to create a new piece of virtual data with a specified denomination Carrier.
  • the specific format of the ID of the progressive block can have various standards with different levels of difficulty, corresponding to the creation of virtual data carriers of different denominations.
  • the rate of issuance is proportional to the average transfer rate of the virtual data carrier (the transfer of non-maintained virtual data carriers), which will increase inflation or deflation.
  • the utilization rate of different denominations of virtual data carriers total circulation amount / total number of paid virtual data carriers
  • the face value coefficient of the virtual data carrier should be lowered, and vice versa.
  • This application also provides an embodiment of a node for implementing all or any of the above data processing methods.
  • the node specifically includes the following content: :
  • the block addition message receiving module 01 is configured to receive a block addition message for a target virtual data carrier sent by any node in a blockchain network, and the block addition message includes a digital identifier corresponding to the target virtual data carrier , Data change information and ownership user identification; wherein the blockchain network includes a plurality of virtual data carriers for storing data role information and provided with unique corresponding digital identifiers, each of which corresponds to a virtual data carrier At least one blockchain.
  • the target blockchain information acquisition module 02 is configured to acquire target blockchain information corresponding to the target virtual data carrier according to the digital identifier corresponding to the target virtual data carrier.
  • a validity determination module 03 is configured to determine whether the data change information in the block addition message is legal based on the data change history information of at least one block in the target blockchain information, and if it is legal, confirm the Information about data changes in block addition messages.
  • the nodes provided in the embodiments of the present application through the setting of each blockchain corresponding to each virtual data carrier, enable each node to reach a consensus with other nodes without using a type of competitive consensus mechanism such as proof of work. It is necessary to verify the legitimacy of the node by itself and broadcast it after verification. Therefore, it can effectively improve the data processing efficiency of the blockchain network on the basis of ensuring the decentralization and security characteristics of the blockchain network, and can effectively Reduce power consumption during data processing.
  • the present application also provides an embodiment of a blockchain network including the plurality of nodes for realizing all or any of the above-mentioned data processing methods.
  • the blockchain network uses each virtual data carrier to set up a blockchain, so that each node does not need to reach a consensus with other nodes through a type of competitive consensus mechanism such as proof of work, and only needs to legitimize the node by itself. Verification and broadcast after verification, therefore, it can effectively improve the data processing efficiency of the blockchain network while ensuring the decentralization and security characteristics of the blockchain network, and can effectively reduce the power consumption of the data processing process .
  • This application also provides an embodiment of a virtual data carrier.
  • the virtual data carrier is used to store data role information and is provided with a digital identifier.
  • Each virtual data carrier corresponds to at least one blockchain.
  • Each of the blockchains belongs to the aforementioned blockchain network, and the blockchain network includes the above-mentioned multiple nodes for implementing all or any content in the above-mentioned data processing method.
  • the virtual data carrier is used to represent a cryptocurrency, it specifically includes the following:
  • Each virtual data carrier has a face value, which represents a specified amount of cryptocurrency.
  • Each virtual data carrier has a blockchain, which can be used to record this virtual data. Transfer history of ownership of the carrier.
  • Each virtual data carrier has a unique and eternal digital identifier, which is used to distinguish different virtual data carriers. It is also used to verify the inherent information of the virtual data carrier.
  • the inherent information includes the face value of the virtual data carrier. , Can also include the creation time of the virtual data carrier, who created it, how to create it, and so on.
  • each virtual data carrier indicates the current owner of this virtual data carrier.
  • the current owner has the right to add the virtual data carrier by adding a block to the end of the blockchain of this virtual data carrier.
  • the ownership of the data carrier is transferred to others, and each cryptocurrency payment is reflected in the transfer of ownership of several virtual data carriers, which are scattered and recorded on the respective blockchains of these virtual data carriers.
  • the user can freeze one or more virtual data carriers and use them as the basis for creation. He can create several secondary virtual data carriers on his own. The frozen virtual data carriers cannot be circulated until the user retracts and destroys all the basis for creation. After the secondary virtual data carrier is created, it can be thawed.
  • Payments may be subject to execution conditions.
  • this application introduces the concept of a virtual data carrier into a cryptocurrency, so that the cryptocurrency changes from a number to an atomic object, which is close to the concept of "this currency, that currency”.
  • this currency that currency
  • user u1 said that user u2 had a face value of 10 yuan, and it must be proven that user u1's account originally had at least 10 yuan (it is a number), which involved a large number of consensus calculations.
  • the virtual data carrier object
  • everyone can see that it must belong to a certain user before the user has the right to add this payment block. Others cannot add it. , So there is no need for consensus algorithms and power consumption.
  • each virtual data carrier's blockchain records all its own payment records, and the records of all virtual data carriers constitute all Payment records no longer need a unique centralized blockchain like the existing cryptocurrencies, and complete decentralization is achieved.
  • For the blockchain of each virtual data carrier in each state, only one user of each newly added block has the right to add, there will be no competition. And because each block only involves the payment of a virtual data carrier, it has nothing to do with the accounts of others, so there is no need to seek consensus with others. Therefore, the cryptocurrency circulation process based on the virtual data carrier does not require a mechanism such as proof of work, and can save electricity and pay each other quickly.
  • An embodiment of the present application also provides a specific implementation of an electronic device capable of implementing all the steps in the data transmission method in the foregoing embodiment.
  • the electronic device specifically includes the following content:
  • the processor 2101, the memory 2102, and the communication interface 2103 communicate with each other through the bus 2104.
  • the communication interface 2103 is used for a node represented by itself, other nodes in the blockchain network, and other blocks. Information transmission between related devices or platforms such as chain networks;
  • the processor 2101 is configured to call a computer program in the memory 2102.
  • the processor executes the computer program, all or part of the steps in the data transmission method in the foregoing embodiment are implemented.
  • the processor executes The computer program implements the following steps:
  • Step 11 Receive a block addition message for the target virtual data carrier sent by any node in the blockchain network.
  • the block addition message includes the digital identifier, data change information, and ownership corresponding to the target virtual data carrier.
  • User identification wherein the blockchain network includes a plurality of virtual data carriers for storing data role information and provided with unique corresponding digital identifiers, and each of the virtual data carriers corresponds to at least one blockchain.
  • Step 12 Obtain target block chain information corresponding to the target virtual data carrier according to the digital identifier corresponding to the target virtual data carrier.
  • Step 13 Determine whether the data change information in the block addition message is legal based on the data change history information of at least one block in the target blockchain information, and if it is legal, confirm the block addition message Data change information.
  • the electronic device through the setting of each virtual data carrier corresponding to at least one blockchain, allows each node to reach consensus with other nodes without going through a type of competitive consensus mechanism such as proof of work. , Only need to verify the legitimacy of the node by itself, and broadcast after verification, so it can effectively improve the data processing efficiency of the blockchain network on the basis of ensuring the decentralization and security characteristics of the blockchain network, and Can effectively reduce power consumption during data processing.
  • An embodiment of the present application further provides a computer-readable storage medium capable of realizing all the steps in the data processing method in the foregoing embodiment.
  • the computer-readable storage medium stores a computer program, and the computer program is executed by a processor. Realize all or part of the steps of the data processing method in the above embodiments. For example, when the processor executes the computer program, the following steps are implemented:
  • Step 11 Receive a block addition message for the target virtual data carrier sent by any node in the blockchain network.
  • the block addition message includes the digital identifier, data change information, and ownership corresponding to the target virtual data carrier.
  • User identification wherein the blockchain network includes a plurality of virtual data carriers for storing data role information and provided with unique corresponding digital identifiers, and each of the virtual data carriers corresponds to at least one blockchain.
  • Step 12 Obtain target block chain information corresponding to the target virtual data carrier according to the digital identifier corresponding to the target virtual data carrier.
  • Step 13 Determine whether the data change information in the block addition message is legal based on the data change history information of at least one block in the target blockchain information, and if it is legal, confirm the block addition message Data change information.
  • the computer-readable storage medium provided in the embodiment of the present application uses each virtual data carrier to correspond to the setting of at least one blockchain, so that each node does not need to pass a type of competition consensus mechanism such as proof of work and other
  • Each node reaches a consensus and only needs to verify the legitimacy of the node by itself and broadcast it after verification. Therefore, it can effectively improve the data of the blockchain network on the basis of ensuring the decentralization and security characteristics of the blockchain network. Processing efficiency, and can effectively reduce power consumption during data processing.
  • the system, device, module, or unit described in the foregoing embodiments may be specifically implemented by a computer chip or entity, or a product with a certain function.
  • a typical implementation device is a computer.
  • the computer may be, for example, a personal computer, a laptop computer, a vehicle-mounted human-computer interaction device, a cellular phone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email device, a game console, and a tablet.
  • a computer, a wearable device, or a combination of any of these devices may be, for example, a personal computer, a laptop computer, a vehicle-mounted human-computer interaction device, a cellular phone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email device, a game console, and a tablet.
  • a computer, a wearable device, or a combination of any of these devices are examples of any of these devices.
  • the functions of each module may be implemented in the same or multiple software and / or hardware, and the module that implements the same function may also be implemented by a combination of multiple submodules or subunits.
  • the device embodiments described above are only schematic.
  • the division of the unit is only a logical function division.
  • multiple units or components may be combined or integrated.
  • the displayed or discussed mutual coupling or direct coupling or communication connection may be indirect coupling or communication connection through some interfaces, devices or units, which may be electrical, mechanical or other forms.
  • controller logic gates, switches, application-specific integrated circuits, programmable logic controllers, and embedded controllers by logically programming the method steps. Microcontrollers, etc. to achieve the same function. Therefore, such a controller can be considered as a hardware component, and the device included in the controller for implementing various functions can also be considered as a structure within the hardware component. Or even, the means for implementing various functions can be regarded as a structure that can be both a software module implementing the method and a hardware component.
  • These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to work in a particular manner such that the instructions stored in the computer-readable memory produce a manufactured article including an instruction device, the instructions
  • the device implements the functions specified in one or more flowcharts and / or one or more blocks of the block diagram.
  • These computer program instructions can also be loaded on a computer or other programmable data processing device, so that a series of steps can be performed on the computer or other programmable device to produce a computer-implemented process, which can be executed on the computer or other programmable device.
  • the instructions provide steps for implementing the functions specified in one or more flowcharts and / or one or more blocks of the block diagrams.
  • a computing device includes one or more processors (CPUs), input / output interfaces, network interfaces, and memory.
  • processors CPUs
  • input / output interfaces output interfaces
  • network interfaces network interfaces
  • memory volatile and non-volatile memory
  • Memory may include non-persistent memory, random access memory (RAM), and / or non-volatile memory in computer-readable media, such as read-only memory (ROM) or flash memory (flash RAM). Memory is an example of a computer-readable medium.
  • RAM random access memory
  • ROM read-only memory
  • flash RAM flash memory
  • Computer-readable media includes both permanent and non-persistent, removable and non-removable media.
  • Information can be stored by any method or technology.
  • Information may be computer-readable instructions, data structures, modules of a program, 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), and read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, read-only disc read-only memory (CD-ROM), digital versatile disc (DVD) or other optical storage, Magnetic tape cartridges, magnetic tape magnetic disk storage or other magnetic storage devices or any other non-transmission media may be used to store information that can be accessed by computing devices.
  • computer-readable media does not include temporary computer-readable media, such as modulated data signals and carrier waves.
  • the embodiments of the present specification may be provided as a method, a system, or a computer program product. Therefore, the embodiments of the present specification may take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware aspects. Moreover, the embodiments of the present specification may take the form of a computer program product implemented on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
  • computer-usable storage media including, but not limited to, disk storage, CD-ROM, optical storage, etc.
  • Embodiments of the specification may be described in the general context of computer-executable instructions executed by a computer, such as program modules.
  • program modules include routines, programs, objects, components, data structures, etc. that perform specific tasks or implement specific abstract data types.
  • the embodiments of the present specification can also be practiced in a distributed computing environment, in which tasks are performed by a remote processing device connected through a communication network.
  • program modules may be located in local and remote computer storage media, including storage devices.

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Finance (AREA)
  • General Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Storage Device Security (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Inspection Of Paper Currency And Valuable Securities (AREA)

Abstract

本申请提供一种数据处理方法、节点、区块链网络及虚拟数据载体,方法包括:接收区块链网络中任一节点发送的针对目标虚拟数据载体的区块增加消息,区块增加消息中包含目标虚拟数据载体的数字标识、数据变更信息和权属用户标识;区块链网络包含多个用于存储数据角色信息且设有唯一数字标识的虚拟数据载体,每个虚拟数据载体对应至少一条区块链;根据目标虚拟数据载体的数字标识获取其目标区块链信息;基于目标区块链信息中的至少一个区块的数据变更历史信息判断数据变更信息是否合法,若是则确认该数据变更信息。本申请能够在保证区块链网络的去中心化和安全特性的基础上,有效简化区块链网络的数据处理过程,并能够有效降低数据处理过程的耗电量。

Description

数据处理方法、节点、区块链网络及虚拟数据载体 技术领域
本申请涉及区块链技术领域,具体涉及一种数据处理方法、节点、区块链网络及虚拟数据载体。
背景技术
区块链是一种防止篡改数据的技术,其实现依赖哈希运算或某种功能相似的运算。在由多个节点组成的区块链网络中,通常仅允许向区块链的最末端添加区块,在新的数据区块中加入前一个区块的哈希值,共同作哈希运算后得到本区块的哈希值,进而添加得到新区块。其中,哈希值可以验证哈希运算的输入数据,而输入数据又包含了前一个区块的哈希值,由此则可以验证前一个区块的哈希运算输入数据,进而可以一直追溯验证到区块链的根区块,即可以验证整条区块链上每个区块的输入数据,以在区块链中的数据遭到非法篡改时,能够通过这一追溯验证过程来发现篡改行为。
现有的区块链网络的数据处理过程中,由于区块链网络中的所有操作记录均保存在同一条区块链上,使得各个节点需要通过工作量证明等类型的竞争共识机制确定区块增加权限,且在各个节点接收到广播的区块增加消息后,也需要应用工作量证明等类型的竞争共识机制与其他各节点达成该区块增加消息的共识。也就是说,现有的区块链网络的数据处理过程,存在处理过程复杂且耗电的问题。
基于此,如何提供一种能够简化处理过程并降低耗电量的用于区块链网络的数据处理方式,是亟待解决的问题。
发明内容
针对现有技术中的问题,本申请提供一种数据处理方法、节点、区块链网络及虚拟数据载体,能够在保证区块链网络的去中心化和安全特性的基础上,有效简化区块链网络的数据处理过程,并能够有效降低数据处理过程的耗电量。
为解决上述技术问题,本申请提供以下技术方案:
第一方面,本申请提供一种数据处理方法,包括:
接收区块链网络中任一节点发送的针对目标虚拟数据载体的区块增加消息,该区块增加消息中包含有所述目标虚拟数据载体对应的数字标识、数据变更信息和权属用户标 识;其中,所述区块链网络中包含有多个用于存储数据角色信息且设有唯一对应的数字标识的虚拟数据载体,每个所述虚拟数据载体对应至少一条区块链;
根据所述目标虚拟数据载体对应的数字标识,获取该目标虚拟数据载体对应的目标区块链信息;
基于所述目标区块链信息中的至少一个区块的数据变更历史信息,判断所述区块增加消息中的数据变更信息是否合法,若合法,则确认所述区块增加消息中的数据变更信息。
进一步地,还包括:
接收区块链网络中任一节点发出的针对非法操作的包含有数据变更信息和权属用户标识的告知消息,若确定针对该数据变更信息的非法操作属于预设的情节严重的操作中的一种,则制裁进行此操作的权属用户。
进一步地,还包括:
在确定所述区块增加消息中的数据变更信息不合法之时或之后,若确定针对该数据变更信息的操作属于预设的情节严重的操作中的一种,则在权属用户为执行所述操作的目标用户的全部虚拟数据载体对应的目标区块链信息中添加非法权限声明区块并进行广播,以使所述区块链网络中的其他节点拒绝验证所述目标用户在所述添加了非法权限声明区块的虚拟数据载体上添加的权属转移区块。
进一步地,还包括:
接收对应的权属用户发送的针对目标虚拟数据载体的权属转移指令,所述权属转移指令中包含有所述目标虚拟数据载体的数字标识和指定用户标识;
根据所述目标虚拟数据载体的数字标识,由该目标虚拟数据载体对应的区块链中的最后一次完成的权属转移涉及的区块获取当前的权属用户标识;
判断由所述最后一次完成的权属转移涉及的区块获取的权属用户标识与发出所述权属转移指令的权属用户对应的权属用户标识是否相同,若是,则基于所述指定用户标识在所述目标虚拟数据载体对应的区块链中添加支付区块,并向所述区块链网络广播该支付区块对应的所述区块增加消息;
其中,所述区块增加消息中的数据变更信息包括:变更时间、变更内容和所述指定用户标识。
进一步地,在所述向所述区块链网络广播该支付区块对应的所述区块增加消息之后,还包括:
若在预设时间内未收到所述区块增加消息对应的转出区块的指定用户发送的转移确认消息,则在所述目标虚拟数据载体对应的区块链中添加与所述转出区块对应的取消转出区块,并向所述区块链网络广播该取消转出区块对应的所述区块增加消息;
其中,所述取消转出区块中的权属用户标识为对应的所述转出区块中的原权属用户标识。
进一步地,在所述向所述区块链网络广播该区块对应的所述区块增加消息之后,还包括:
若在预设时间内接收到所述区块增加消息对应的转出区块指定的用户在所述区块链网络中广播的拒绝转出消息,则确定对应的所述目标虚拟数据载体的当前权属用户仍为发出针对该目标虚拟数据载体的权属转移指令的权属用户。
进一步地,还包括:
接收所述区块链网络中任一节点广播的针对目标虚拟数据载体的转出区块对应的区块增加消息;
若所述转出区块对应的区块增加消息中包含执行条件,则在满足该执行条件后,向所述目标虚拟数据载体对应的区块链中添加接收区块,所述接收区块中包含能证明所述执行条件已满足的数据,并向所述区块链网络广播所述接收区块。
进一步地,还包括:
接收所述区块链网络中任一节点广播的针对目标虚拟数据载体的转出区块对应的区块增加消息;
若接收到区块链网络中任一节点发出的与所述转出区块相冲突的区块增加消息,且所述转出区块中的指定用户标识为本节点上的用户的标识,则在所述目标虚拟数据载体对应的区块链中添加与所述转出区块对应的拒绝区块,并向所述区块链网络广播该拒绝区块对应的所述区块增加消息。
进一步地,还包括:
接收所述区块链网络中任一节点广播的针对目标虚拟数据载体的转出区块对应的区块增加消息;
判断所述转出区块对应的区块增加消息中是否包含有关联信息,若是,则根据所述关联信息确定对应的关联操作中全部的关联发起区块的特征;
若接收到所述关联操作的全部的所述关联发起区块,则向自身需接收的虚拟数据载体对应的区块链之后添加关联完成区块并进行广播。
进一步地,还包括:
接收所述区块链网络中任一节点广播的针对目标虚拟数据载体的支付区块对应的区块增加消息;
判断目标虚拟数据载体的支付区块对应的区块增加消息中的权属用户标识是否多于一个,若是,则根据各个所述权属用户标识对应的权属用户的权属含量判断所述支付区块对应的区块增加消息是否合法。
进一步地,还包括:
在目标虚拟数据载体的区块链中添加抵押区块;
接收权属用户发送的支付指令;
根据所述支付指令在其他目标虚拟数据载体的区块链中添加支付区块,并在所述抵押区块之后添加一个累进区块,其中,所述累进区块的序号在所述抵押区块设定的范围之内,且不与加在所述抵押区块之后的其他累进区块的序号重复,所述支付区块中包含有所述抵押区块所属的目标虚拟数据载体的数字标识和对应的所述累进区块的序号;
在所述区块链网络中广播针对目标虚拟数据载体的支付区块和累进区块共同对应的区块增加消息,以使所述区块链网络中的其他节点验证所述支付区块和累进区块的有效性。
进一步地,还包括:
若所述累进区块的序号超出原抵押区块的预设序号范围,则在另一个所述目标虚拟数据载体上更换或重新建立一个新的抵押区块,并将所述累进区块添加至在该新的抵押区块之后;在所述区块链网络中广播针对原抵押区块所属的虚拟数据载体的无权属状态信息,以使所述区块链网络中的其他用户基于预设规则竞争获取该原抵押区块所属的虚拟数据载体的权属。
进一步地,还包括:
获取各个数据角色信息,其中,所述数据角色信息包括虚拟货币的任意面值、法定货币的任意面值、任意数额及内容的财产信息、任意内容及数量的原料信息、任意人信息和任意内容的事务中的任意一项;
根据各个所述数据角色信息创建各个一一对应的虚拟数据载体以及与各个所述虚拟数据载体对应的区块链,其中,各个所述区块链的根区块或所述区块链所属的虚拟数据载体中均存储有对应的所述虚拟数据载体的固有信息,所述固有信息中包含有所述数据 角色信息,由所述固有信息计算出对应的所述虚拟数据载体的数字标识,以使所述数字标识能验证对应的所述固有信息。
进一步地,若所述数据角色信息为事务,则所述数据处理方法还包括:
创建在固有信息中存储所述事务的流程或规则的虚拟数据载体,所述事务的所有参与者应按照所述流程或规则执行所述事务,所述流程或规则包括按照所述流程或规则规定的方式由参与者向所述虚拟数据载体对应的区块链上添加变更区块,以修改所述流程或规则的内容。
进一步地,若所述数据角色信息为虚拟货币或法定货币的任意面值,则所述数据处理方法还包括:
接收权属用户发送的创建次生虚拟数据载体的指令;
冻结当前权属用户为所述权属用户的一个或多个所述虚拟数据载体;
创建存储有指定面值的至少一个次生虚拟数据载体,且所述次生虚拟数据载体的面值总和小于或等于所述虚拟数据载体的面值总和。
进一步地,若所述数据角色信息为任意内容及数量的原料或组件信息,则所述数据处理方法还包括:
冻结所述数据角色信息为任意内容及数量的原料或组件信息的虚拟数据载体;
创建存储有指定产品的至少一个次生虚拟数据载体,且所述次生虚拟数据载体的产品所需原料或组件总和少于或等于所述虚拟数据载体的数据角色信息所指的原料或组件总和。
进一步地,还包括:
接收其他参与者抵押虚拟数据载体的抵押信息;
创建本节点上的参与者与发出所述抵押信息的其他参与者之间的快速通道,所述快速通道为一个数据角色信息为事务的虚拟数据载体,该虚拟数据载体的固有信息中包含有参与者、结算条件和各个参与者抵押的虚拟数据载体,以使得任一所述参与者均在欲向其他参与者进行交付时向所述快速通道的区块链末添加对应的交付区块。
第二方面,本申请还提供一种节点,包括:
区块增加消息接收模块,用于接收区块链网络中任一节点发送的针对目标虚拟数据载体的区块增加消息,该区块增加消息中包含有所述目标虚拟数据载体对应的数字标识、数据变更信息和权属用户标识;其中,所述区块链网络中包含有多个用于存储数据 角色信息且设有唯一对应的数字标识的虚拟数据载体,每个所述虚拟数据载体对应至少一条区块链;
目标区块链信息获取模块,用于根据所述目标虚拟数据载体对应的数字标识,获取该目标虚拟数据载体对应的目标区块链信息;
合法性判断模块,用于基于所述目标区块链信息中的至少一个区块的数据变更历史信息,判断所述区块增加消息中的数据变更信息是否合法,若合法,则确认所述区块增加消息中的数据变更信息。
第三方面,本申请还提供一种区块链网络,包括:多个所述的节点。
第四方面,本申请还提供一种虚拟数据载体,所述虚拟数据载体用于存储数据角色信息且设有唯一标识,各个所述虚拟数据载体至少对应一条区块链;
各个所述区块链均属于同一个所述的区块链网络。
第五方面,本申请还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现所述的数据处理方法的步骤。
第六方面,本申请还提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现所述的数据处理方法的步骤。
由上述技术方案可知,本申请提供一种数据处理方法、节点、区块链网络及虚拟数据载体,其中的数据处理方法通过接收区块链网络中任一节点发送的针对目标虚拟数据载体的区块增加消息,该区块增加消息中包含有所述目标虚拟数据载体对应的数字标识、数据变更信息和权属用户标识;其中,所述区块链网络中包含有多个用于存储数据角色信息且设有唯一对应的数字标识的虚拟数据载体,每个所述虚拟数据载体对应至少一条区块链;根据所述目标虚拟数据载体对应的数字标识,获取该目标虚拟数据载体对应的目标区块链信息;基于所述目标区块链信息中的至少一个区块的数据变更历史信息,判断所述区块增加消息中的数据变更信息是否合法,若合法,则确认所述区块增加消息中的数据变更信息,能够在保证区块链网络的去中心化和安全特性的基础上,简化区块链网络的数据处理过程,有效提高区块链网络的数据处理效率,并能够有效降低数据处理过程的耗电量并保证区块链网络中的数据处理过程的可靠性。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例中的数据处理方法中的步骤11至步骤13的流程示意图。
图2是本申请实施例中的区块链网络的举例结构示意图。
图3是本申请实施例中的虚拟数据载体的举例架构示意图。
图4是本申请实施例中的包含有步骤41的数据处理方法的流程示意图。
图5是本申请实施例中的包含有步骤51的数据处理方法的流程示意图。
图6是本申请实施例中的数据处理方法中的步骤61至步骤63的流程示意图。
图7是本申请实施例中的虚拟数据载体权属转移过程的第一状态示意图。
图8是本申请实施例中的虚拟数据载体权属转移过程的第二状态示意图。
图9是本申请实施例中的包含有步骤91的数据处理方法的流程示意图。
图10是本申请实施例中的包含有步骤1001的数据处理方法的流程示意图。
图11是本申请实施例中的数据处理方法的步骤1101和步骤1102的流程示意图。
图12是本申请实施例中的包含有步骤1201和步骤1202的数据处理方法的流程示意图。
图13是本申请实施例中的数据处理方法中的步骤1301至步骤1303的流程示意图。
图14是本申请实施例中的数据处理方法中的步骤1401和步骤1402的流程示意图。
图15是本申请实施例中的数据处理方法中的步骤1501至步骤1503的流程示意图。
图16是本申请实施例中的包含有步骤1601的数据处理方法的流程示意图。
图17是本申请实施例中的数据处理方法中的步骤1701和步骤1702的流程示意图。
图18是本申请实施例中的数据处理方法中的步骤1801和步骤1802的流程示意图。
图19是本申请实施例中的数据处理方法中的步骤1901和步骤1902的流程示意图。
图20是本申请实施例中的节点的结构示意图。
图21是本申请实施例中的电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例 是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
现有技术中,工作量证明(POW)是以比特币为代表的众多加密货币采用的一种竞争和共识机制。以比特币的竞争记账为例,目的是选出一个用户来记账,要求区块链网络中的竞争节点获取一个目标数据,并将该目标数据加入账本数据后一同作哈希运算,且使运算结果小于一个预设值。可以理解的是,哈希运算的结果是难以预测的,因此无法通过简单计算获得所求的目标数据,只能不断使用不同的数据进行测试,直到测试得到符合条件的数据。这其中,首个获取所述目标数据的节点有权记录该区块并获得对应的奖励,而其他未找到的节点则不会获得任何奖励。也就是说,每记录一个区块的账目,众多竞争节点均需要执行很多次的哈希运算,这个过程即会造成大量电力的消耗。
加密货币(Cryptocurrency)是一种使用密码学原理来确保交易安全及控制交易单位创造的交易媒介。加密货币是数字货币(或称虚拟货币)的一种。比特币为首个去中心化的加密货币,这之后加密货币一词多指此类设计。加密货币基于去中心化的共识机制,与依赖中心化监管体系的银行金融系统相对。
以比特币为代表的现行加密货币一直未能同时实现去中心化、安全、省电三项目标。就比特币而言,虽然在去中心化与安全上已基本满足用户应用需求,但其在数据处理过程中应用的工作量证明等竞争共识机制会浪费大量时间及电力能源。
而对于另一些采用其它方式达成共识的加密货币,降低能耗的代价则是牺牲了去中心化这一重要指标。
深究其因,上述加密货币是将所有支付记录保存在同一条区块链上,由某一个用户将一段时间里所有交易记录保存成一个区块,添加到区块链末端。执行此项操作的用户可以得到一定金额的奖励(这是比特币惟一的创造途径),而且有机会作弊。因此,大家都想拥有记账的权力,不得不通过竞争确定记账的人选,记好之后若他人不认同账目,又要经过一套复杂的程序达成共识,费电的工作量证明机制在竞争记账与达成共识两方面都起到了关键作用。
说到底,将区块链网络中的所有操作记录保存在同一条区块链上本质上仍为一种依赖中心的思路。
而考虑到由于区块链网络中的所有操作记录均保存在同一条区块链上,使得各个节点需要通过工作量证明等类型的竞争共识机制确定区块增加权限,且在各个节点接收到 广播的区块增加消息后,也需要应用工作量证明等类型的竞争共识机制与其他各节点达成该区块增加消息合法性的共识,进而使得现有的区块链网络中的数据处理过程存在处理过程复杂、耗时且耗电的问题,本申请提供一种数据处理方法、节点、区块链网络、虚拟数据载体、电子设备和计算机可读存储介质,通过区块链网络中的某一节点接收区块链网络中任一节点发送的针对目标虚拟数据载体的区块增加消息,该区块增加消息中包含有所述目标虚拟数据载体对应的数字标识、数据变更信息和权属用户标识;其中,所述区块链网络中包含有多个用于存储数据角色信息且设有唯一对应的数字标识的虚拟数据载体,每个所述虚拟数据载体对应至少一条区块链;根据所述目标虚拟数据载体对应的数字标识,获取该目标虚拟数据载体对应的目标区块链信息;基于所述目标区块链信息中的至少一个区块的数据变更历史信息,判断所述区块增加消息中的数据变更信息是否合法,若合法,则确认所述区块增加消息中的数据变更信息,能够在保证区块链网络的去中心化和安全特性的基础上,简化区块链网络的数据处理过程,有效提高区块链网络的数据处理效率,并能够有效降低数据处理过程的耗电量,并保证区块链网络中的数据处理过程的可靠性。具体通过下述多个实施例及应用实例分别进行说明。
基于上述内容,由于在各个节点接收到广播的区块增加消息后,若有节点认为该区块增加消息不合法,也需要通过工作量证明等类型的竞争共识机制与其他各节点达成不合法的共识,本申请提供一种数据处理方法、节点、区块链网络、虚拟数据载体、电子设备和计算机可读存储介质,还通过区块链网络中的某一节点在确定所述区块增加消息中的数据变更信息不合法之时或之后,若确定针对该数据变更信息的操作属于预设的情节严重的操作中的一种,则在权属用户为执行针对所述数据变更信息的操作的目标用户的全部虚拟数据载体对应的目标区块链信息中添加非法权限声明区块并进行广播,以使所述区块链网络中的其他节点拒绝验证所述目标用户在所述添加了非法权限声明区块的虚拟数据载体上添加的权属转移区块,进而进一步全面地简化区块链网络的数据处理过程。
在本申请的一个或多个实施例中,所述区块链网络中包含有多个用于存储数据角色信息且设有唯一标识的虚拟数据载体,每个所述虚拟数据载体均对应至少一条区块链。
其中,所述数据角色信息包括虚拟货币的任意面值、法定货币的任意面值、任意数额及内容的财产信息、任意内容及数量的原料信息、任意人信息和任意内容的事务中的任意一项。
各个所述区块链的根区块或所述区块链所属的虚拟数据载体中均存储有对应的所述 虚拟数据载体的固有信息,所述固有信息中包含有所述数据角色信息,由所述固有信息计算出对应的所述虚拟数据载体的数字标识,以使所述数字标识能验证对应的所述固有信息。
具体来说:
虚拟数据载体是一种用于记载对象的数据结构。它记载的对象可以是一份固定数额的加密货币,也可以扩展到更广的范围,如法币、财产、商品、人、事务等皆可。用虚拟数据载体记载万事万物,就有了一个可查询、可追溯、可信任的世界。将对象的数据分为前述的固有信息与可变信息两部分,对固有信息作哈希或签名得到数字标识,用数字标识可以验证固有信息,以每个虚拟数据载体各自的区块链记载对象的可变信息的变更历史,每有变更就向区块链上添加区块。可变信息包括对象的所有权。可变信息处于不同状态下,每个人对于每种区块有不同的添加权限,特别是所有权的变更会影响多种区块的添加权限。
每个虚拟数据载体使用一条区块链已能满足记录可变信息的需要。基于具体实施需要,也可能有为每个虚拟数据载体设置多于一条区块链的情况,同样属于本申请保护的范围。
被记载的对象应具有原子性,在记载期间不可分割,可以是包装好的一袋米,但不能是拆开包装后的一堆散米。
1、对象是法币或其它财物时,虚拟数据载体的使用方式与对象为加密货币时的使用方式相似,每个虚拟数据载体表示一份固定的财物。
2、对象是商品时,虚拟数据载体的固有信息表明此件商品的生产者、生产日期、生产地、型号、原料、工艺、序列号等。例如对象是一枝圆珠笔,生产出来之后就建立了对应的虚拟数据载体,同一批次产品的序列号不同,生成的数字标识也不同。之后将十支笔包装为一盒,为盒也建立一个虚拟数据载体,在盒内十支笔的区块链上各加一个区块,表明此后将此笔的可变信息委托给此盒。若干盒装进一箱,也把每个盒的可变信息委托给此箱。箱被运到批发商那里,改变了地点,改变了所有权,只记在箱的区块链上即可。
批发商拆开箱,向每个盒的区块链再加一个区块,解除盒与箱的委托关系,并将箱的可变信息末状态复制到盒上。将盒分销给零售商,改变了此盒的所有权,零售商再打开盒,解除笔与盒的委托关系。将笔卖给顾客时,又将笔的所有权转给顾客。
如果交易是用对象为货币的虚拟数据载体购买,购买过程就简化为一个关联操作: 买方将几个对象为货币的虚拟数据载体的所有权交给卖方,换取若干件对象为商品的虚拟数据载体的所有权。
3、对象是人时,虚拟数据载体的固有信息表明此人的出生时间及地点、父母身份、性别、种族、特征、DNA图谱等内容,之后人生的大小事件作为可变信息记录在区块链里。比如儿童上了小学,即授权学校记录某些类型的区块,离校后取消授权。
4、对象是事务时,虚拟数据载体的固有信息表明此事务的类型、流程、初始条件、预期进度等,之后每一步骤的执行情况作为可变信息记录在区块链里。例如,用户向专利局申请专利,申请流程和最初的申请文件都放在固有信息里,用户添加提交申请区块之后,用户有权加撤回区块,专利局有权加受理区块,受理之后用户有权加付费区块,付费之后专利局可加初审区块,若超时不付费专利局有权加视撤区块……所有步骤依照固有信息中记载的申请流程运行。流程可用编程语言或标记语言写成,描述整个流程的所有状态及在每个状态下响应每种事件引发的状态跳转,实质是一个智能合约,可引导参与的各方一步步执行下去。
如果在事务执行期间流程发生改变(例如专利法被修改),有两种处理方式:a)将新的流程作为一个特殊区块加在区块链上;b)新建一个虚拟数据载体,在固有信息中写明新的流程以及与原有虚拟数据载体之间的关系,并中止原有虚拟数据载体的执行。
为了能够简化区块链网络的数据处理过程,提高数据传输过程中的合法性判断的效率,以在保证区块链网络的去中心化和安全特性的基础上,有效提高区块链网络的数据处理效率,并能够有效降低数据处理过程的耗电量,本申请提供一种执行主体为区块链网络中的任一节点的数据处理方法实施例,参见图1,所述数据处理方法具体包含有如下内容:
步骤11:接收区块链网络中任一节点发送的针对目标虚拟数据载体的区块增加消息,该区块增加消息中包含有所述目标虚拟数据载体对应的数字标识、数据变更信息和权属用户标识;其中,所述区块链网络中包含有多个用于存储数据角色信息且设有唯一对应的数字标识的虚拟数据载体,每个所述虚拟数据载体对应至少一条区块链。
可以理解的是,所述区块链网络中任一节点将针对目标虚拟数据载体的区块增加消息以广播方式发送至区块链网络中的其他节点,其中的“广播”既可以指源节点将消息直接发往其他所有节点,也可以指源节点将消息发到其他部分节点,再由每个收到消息的节点将消息转发给更多节点,如此多次接力发送,从而在整体上实现广播的效果。
在本申请的一个或多个实施例中,参见图2,每个节点均是区块链网络中的一个完 全(full-fledged)成员,属于逻辑节点,且节点既可以为一个客户端,也可以为一个服务器,且每个节点都会具备路由功能,但其他功能不一定都具备,不同类型的节点可能只包含部分功能。而区块链网络则是一个有多个节点构成的P2P网络。可以理解的是,所述节点与用户之间为非固定的一对一或非固定的一对多的关系,其中的非固定对应某一用户借用他人对应的节点操作自己的账户的情形。
在本申请的一个或多个实施例中,一个区块链网络中包含有属于各个用户的多个虚拟数据载体,参见图3,每一个虚拟数据载体均对应至少一个区块链,所述虚拟数据载体用于存储数据角色信息且设有唯一对应的数字标识,该数据角色信息是前述固有信息中的一种,即为对应的虚拟数据载体自身所代表的唯一且固定不变的含义,而数字标识即为该虚拟数据载体所代表的唯一且固定不变的含义的标识凭证。
在步骤11中,区块链网络中的一节点接收同一区块链网络中任一节点广播的针对目标虚拟数据载体的区块增加消息,并读取所述区块增加消息中包含的所述目标虚拟数据载体对应的数字标识、数据变更信息和权属用户标识。所述目标虚拟数据载体即为当前区块链网络中的多个虚拟数据载体中的任一个。
可以理解的是,所述数据变更信息包含有具体变更内容,还可以包含有变更前的区块链或虚拟数据载体的原权属用户的标识以及变更后的区块链或虚拟数据载体的指定用户的标识,还可以包含有变更操作时间信息等内容。
以及,所述权属用户标识为用于标识当前区块链网络中的各个用户的数字标识。
步骤12:根据所述目标虚拟数据载体对应的数字标识,获取该目标虚拟数据载体对应的目标区块链信息。
在步骤12中,由于区块链网络中,全部的虚拟数据载体及其对应的区块链均为公共存储信息,即任何节点均可以保持和/或随时查询任意虚拟数据载体及其对应的区块链信息,因此,接收到区块增加消息的节点可以根据该区块增加消息中的目标虚拟数据载体对应的数字标识,在预存储的全部的虚拟数据载体信息中查找得到目标虚拟数据载体及其唯一对应的区块链信息。
步骤13:基于所述目标区块链信息中的至少一个区块的数据变更历史信息,判断所述区块增加消息中的数据变更信息是否合法,若合法,则确认所述区块增加消息中的数据变更信息。
在步骤13中,接收到区块增加消息的节点在经由步骤12的方式查找到目标虚拟数据载体对应的目标区块链信息之后,将所述区块增加消息中的数据变更信息与所述目标 区块链信息中的至少一个区块的数据变更历史信息进行匹配。若匹配成功,则认为所述区块增加消息中的数据变更信息合法。可以理解的是,所述确认所述区块增加消息中的数据变更信息可以为自行标记所述区块增加消息中的数据变更信息合法。
为了能够进一步全面地简化区块链网络的数据处理过程,以提高数据传输过程中的合法性判断的效率,在本申请的数据处理方法的实施例中的上述步骤13后,参见图4,若所述区块增加消息中的数据变更信息不合法,则执行下述步骤41,具体包含有如下内容:
步骤41:在确定所述区块增加消息中的数据变更信息不合法之时或之后,若确定针对该数据变更信息的操作属于预设的情节严重的操作中的一种,则在权属用户为执行针对所述数据变更信息的操作的目标用户的全部虚拟数据载体对应的目标区块链信息中添加非法权限声明区块并进行广播,以使所述区块链网络中的其他节点制裁进行此操作的权属用户。
可以理解的是,所述预设的情节严重的操作为对应的区块链网络预先设置的违反行为操作规范中的违反级别较高的操作,具体来说,所述情节严重的操作至少包含有在一条区块链的同一位置添加多个权属转移/冻结/抵押/关联发起等区块或上述几种区块的组合,造成此区块链状态不惟一的情形。
在步骤41中,接收到区块增加消息的节点在经由步骤12的方式查找到目标虚拟数据载体对应的目标区块链信息之后,将所述区块增加消息中的数据变更信息与所述目标区块链信息中的至少一个区块的数据变更历史信息进行匹配,若匹配失败,则认为所述区块增加消息中的数据变更信息不合法。
可以理解的是,所述匹配的过程举例可以为:
假设当前区块增加消息中的数据变更信息包括:“具体变更内容:权属转移;变更前的区块或虚拟数据载体的原权属用户的标识:A;变更后的区块或虚拟数据载体的指定用户标识:B;变更时间:03:31:40am-2018年12月01日”;而所述目标区块链信息的历史最末区块的数据变更历史信息为“具体变更内容:解除冻结;添加内容的权属用户的标识:A;变更时间:04:06:24pm-2018年11月11日”;则根据预设的匹配规则对区块增加消息中的数据变更信息与数据变更历史信息进行匹配,该预设的匹配规则根据虚拟数据载体所代表的内容及区块链网络的共识机制内容等信息进行预先设定。
表1
Figure PCTCN2019083809-appb-000001
在本例中,参见上述表1,通过二者的比较结果可知,区块增加消息中的数据变更信息中的原权属用户的标识与数据变更历史信息中的权属用户的标识相同、具体变更内容无冲突、且区块增加消息中的数据变更信息中的变更时间晚于数据变更历史信息中的变更时间,因此,经过与目标区块链信息的历史最末区块的数据变更历史信息的比较,可知所述区块增加消息中的数据变更信息与所述目标区块链信息中的最末区块的数据变更历史信息之间的数据相匹配,而后可以继续向前追溯倒数第二个区块的数据变更历史信息,直至遍历至根区块仍未发现不匹配的数据,此时则判断该区块增加消息中的数据变更信息合法,反之,若在第一次于最末区块的数据变更历史信息中及发现数据不匹配,则可以仅通过一次匹配即认定区块增加消息中的数据变更信息不合法。
而在确定针对该数据变更信息的操作属于预设的情节严重的操作中的一种的节点,会在权属用户为执行针对所述数据变更信息的操作的目标用户的全部虚拟数据载体对应的目标区块链信息中添加非法权限声明区块,而后,该节点会将针对该非法权限声明区块的区块增加消息在整个区块链网络中进行广播,使得其他节点根据该针对非法权限声明区块的区块增加消息,对进行此操作的权属用户进行制裁。
基于上述内容,参见图5,所述数据处理方法具体包含有如下内容:
步骤51:所述其他节点中的任意节点接收区块链网络中任一节点发出的针对非法操作的包含有数据变更信息和权属用户标识的告知消息,若确定针对该数据变更信息的非法操作属于预设的情节严重的操作中的一种,则制裁进行此操作的权属用户。
在上述描述中,所述制裁进行此操作的权属用户具体可以为:拒绝验证所述目标用户在所述添加了非法权限声明区块的虚拟数据载体上添加的权属转移区块;所述制裁进行此操作的权属用户具体还可以为:1、拒绝该用户在所有区块链上添加的任何区块;2、拒绝与该用户进行权属转移;3、对涉及该用户的权属转移收取额外费用;4、要求该用户支付若干财物或执行指定事务以换取解除制裁。
从上述内容可知,本申请实施例提供的数据处理方法,通过每个虚拟数据载体各自对应至少一条区块链的设置,使得各个节点无需经由工作量证明等类型的竞争共识机制与其他各节点达成共识,仅需自行对该节点进行合法性验证,并在验证后广播,因此,能够在保证区块链网络的去中心化和安全特性的基础上,有效简化区块链网络的数据处理过程,并能够有效降低数据处理过程的耗电量。
基于上述内容,若所述虚拟数据载体的数据角色信息为加密货币的任意面值,则在本申请的一个应用实例中,所述数据处理方法还能够有效方式防止双花攻击,具体说明如下:
双花是指将同一份钱分别付给了多个用户,是对加密货币的一种常见攻击方式。对于代表加密货币的任意面值的虚拟数据载体,双花的方法只能是虚拟数据载体当前的权属用户在区块链的同一位置加了多个支付区块,令区块链分叉。由于区块链变动都要向所有节点广播,即使添加者以非广播方式将支付区块发给支付虚拟数据载体的接收者,支付虚拟数据载体的接收者收到区块时也须广播,一旦发生双花,会立即被其他用户从广播中发现。发现者将分叉处的两个或多个区块向所有节点广播,区块都经过签名,双花肇事者无从抵赖,立即遭到全网制裁。对于双花肇事者剩余的每个虚拟数据载体,发现者可向其区块链末添加一个区块,写入分叉的区块,令这些虚拟数据载体变成无主状态。
如果建立账户是免费的,攻击者可能以一个账户为代价发动双花攻击。对此有以下策略:
1、对创建账户收费,具体有两种方案:a、每个新建账户须付出一定费用之后才能正常支付给他人;b、用户须以POW方式建立账户,每次费一些电。
2、强制用户需支付多个虚拟数据载体时,必须串行支付,一个支付完成再支付下一个,以提高作弊的风险。
3、每次支付分为两步进行。接收方节点收到支出方节点的转出区块之后,等待一段时间,若接收方节点未发现冲突信息才添加接受区块。在等待的时间里,支出方节点的 转出区块已经传遍全网,如果此后支出方节点再在区块链的同一位置传出另一个转出区块,则不但自身账户会遭到制裁,新的转出区块也必为全网拒绝,不会影响前面的支付。
在本发明的申请文件中,“转出区块”特指支付方在两步支付方式之第一步添加的区块;而“支付区块”或“权属转移区块”既包括转出区块,也包括支付方在单步支付方式中添加的区块。
一种极端情况是,用户A先向一个虚拟数据载体的区块链上添加了转出给用户B的区块,用户B接受之后,用户A又在区块链的同一位置添加了转出给用户C的区块,但未广播,至用户C又将此虚拟数据载体转出给用户D时,全网才发现这一双花事件。对于每个长期在线的节点而言,如果不知晓用户A转给用户C的过程,说明用户C在接受虚拟数据载体时没有依照规定广播,可将用户C视为用户A的同谋而制裁。无论用户A至用户C这条分叉有多长,只要其中的权属用户最后试图将此虚拟数据载体付给正常用户,一旦被正常节点广播,则全网即可发现并处置这一异常的分叉,制裁所有违规用户。
如前所述,长期在线的正常节点一定能分辨两条分叉的真伪。对于非长期在线节点,难以辨别真伪,可以简单地拒绝所有发生分叉的虚拟数据载体,或者要求支付者为分叉支付额外费用,例如十元面值的虚拟数据载体当成六元面值用。由于双花攻击无法获利,反而要搭上一个账户,分叉的区块数量必然不多。
为了能够简化虚拟数据载体的权属转移过程,进而能够在保证区块链网络的去中心化和安全特性的基础上,有效提高区块链网络的数据处理效率,并能够有效降低数据处理过程的耗电量,本申请提供一种执行主体为区块链网络中的任一节点的数据处理方法的实施例,参见图6,所述数据处理方法具体包含有如下内容:
步骤61:接收对应的权属用户发送的针对目标虚拟数据载体的权属转移指令,所述权属转移指令中包含有所述目标虚拟数据载体的数字标识和指定用户标识。
可以理解的是,区块链网络中的节点可以自通信连接的其他授权终端设备接收针对目标虚拟数据载体的权属转移指令,可以为接收授权用户直接在该节点中输入的针对目标虚拟数据载体的权属转移指令。
步骤62:根据所述目标虚拟数据载体的数字标识,由该目标虚拟数据载体对应的区块链中的最后一次完成的权属转移涉及的区块获取当前的权属用户标识。
可以理解的是,对于每个虚拟数据载体,可以从它对应的区块链上最后一次完成的 权属转移过程的相关信息中获取该虚拟数据载体的当前权属用户信息。一次权属转移过程会将目的用户标识记录在一个或多个区块中,在权属转移完成后,权属转移的目的用户即成为新的权属用户。因此,从最后一次完成的权属转移涉及的区块中读取的目的用户就是当前权属用户。
步骤63:判断由所述最后一次完成的权属转移涉及的区块获取的权属用户标识与发出所述权属转移指令的权属用户对应的权属用户标识是否相同,若是,则基于所述指定用户标识在所述目标虚拟数据载体对应的区块链中添加支付区块,并向所述区块链网络广播该支付区块对应的所述区块增加消息,其中,所述区块增加消息中的数据变更信息包括:变更时间、变更内容和所述指定用户标识。
从上述描述可知,本申请实施例提供的数据处理方法,通过虚拟数据载体的权限转移功能的区块仅有权属用户能够操作的特性的设置,能简化目标虚拟数据载体的权属转移过程,并有效提高目标虚拟数据载体的权属转移效率、安全性及可靠性。
基于上述内容,若所述虚拟数据载体的数据角色信息为虚拟货币的任意面值,则在本申请的一个应用实例中,所述数据处理方法还能够实现虚拟数据载体权属的一次性转移,具体说明如下:
虚拟数据载体的区块链最后一次完成的权属转移涉及的区块表明此虚拟数据载体属于用户A。
A有权增加一个区块,用自己的私钥对区块签名,将这个虚拟数据载体转给用户B,并向全网广播此虚拟数据载体的区块链的更新。
B收到广播,先以此虚拟数据载体的数字标识验证它的面值等固有信息,再验证此虚拟数据载体的区块链中的所有区块,如有异常即向整个网络广播报警。
如图7和图8所示,描述了一个最简单的虚拟数据载体权属转移过程,图7的虚拟数据载体的区块链最末一个区块表明此虚拟数据载体属于用户A,所以用户A有权增加一个区块,用自己的私钥对区块签名,将这个虚拟数据载体转给用户B,并向全网广播此虚拟数据载体的区块链的更新。用户B收到广播,先以此虚拟数据载体的数字标识验证它的面值等固有信息,再验证此虚拟数据载体的区块链中的所有区块,如有异常即向整个网络广播报警。
上述过程可以具体描述如下:
1、一个虚拟数据载体最初的主人是用户A,用户A的用户公钥在虚拟数据载体的区块链的首个区块中可见。
2、用户A在此虚拟数据载体的区块链末尾添加支付区块,表示将此虚拟数据载体转给用户B(公钥),并用自己的私钥对此区块签名,广播令周知。
3、用户B在此虚拟数据载体的区块链末尾添加支付区块,表示将此虚拟数据载体转给用户C(公钥),并用自己的私钥对此区块签名,广播令周知。
4、用户A在此虚拟数据载体的区块链末尾添加支付区块,表示将此虚拟数据载体转给用户D(公钥),并用自己的私钥对此区块签名,广播令周知。
5、所有人可以验证这个虚拟数据载体的归属:从首个区块中知道当时的主人是用户A,以用户A的公钥验证下面最近的支付区块,通过,因此在第2步添加的支付区块合法;从第2步添加的区块中知道当时的主人是用户B,以用户B的公钥验证下面最近的支付区块,通过,因此在第3步添加的支付区块合法;从第3步添加的区块中知道当时的主人是用户C,以用户C的公钥验证下面最近的支付区块,失败,因此在第4步添加的支付区块非法。此虚拟数据载体仍然属于用户C。
为了进一步提高虚拟数据载体的权属转移失败或被取消后操作的效率,进而有效降低数据处理过程的耗电量,本申请提供一种执行主体为区块链网络中的任一节点的数据处理方法的实施例,参见图9,所述数据处理方法具体包含有如下内容:
在步骤63之后,还包含有步骤91:若在预设时间内未收到所述区块增加消息对应的转出区块的指定用户发送的转移确认消息,则在所述目标虚拟数据载体对应的区块链中添加与所述转出区块对应的取消转出区块,并向所述区块链网络广播该取消转出区块对应的所述区块增加消息;其中,所述取消转出区块中的权属用户标识为对应的所述转出区块中的原权属用户标识。
参见图10,在步骤63之后,还包含有步骤1001:若在预设时间内接收到所述区块增加消息对应的转出区块的指定用户在所述区块链网络中广播的拒绝转出消息,则确定对应的所述目标虚拟数据载体的当前权属用户仍为发出针对该目标虚拟数据载体的权属转移指令的权属用户。
也就是说,支付操作可以分为两步或多步进行。例如用户A将一个虚拟数据载体支付给用户B,由用户A先向虚拟数据载体的区块链中添加一个转出区块,指明转给用户B,用户B可以选择接受或是拒绝这个虚拟数据载体。如果拒绝,用户A仍可再次将此虚拟数据载体转出给用户B或他人。当用户B超过一定时间没有回应,用户A有权取消此次转出。转出、接受、拒绝、取消同样以向区块链末端添加区块的方式执行。
虚拟数据载体的允许添加区块的状态转移过程具体可以包含有如下内容:
1、初始状态,虚拟数据载体属于用户A。用户A有权添加转出区块;
2、用户A添加了转出区块,指明转给用户B。用户B有权添加接受或拒绝区块;
3、用户B添加了接受区块,虚拟数据载体变为用户B所有。用户B有权添加转出区块;
4、在第2步之后,用户B添加了拒绝区块,状态回到第1步;
5、在第2步之后,用户B无操作,至超时,用户A有权添加取消区块;
6、在第5步之后,用户A添加了取消区块,状态回到第1步。
为了加入执行条件以提高虚拟数据载体的权属转移可靠性,以进一步提高区块链网络的数据处理安全性,本申请提供一种执行主体为区块链网络中的任一节点的数据处理方法的实施例,参见图11,所述数据处理方法具体包含有如下内容:
步骤1101:接收所述区块链网络中任一节点广播的针对目标虚拟数据载体的转出区块对应的区块增加消息;
步骤1102:若所述转出区块对应的区块增加消息中包含执行条件,则在满足该执行条件后,向所述目标虚拟数据载体对应的区块链中添加接收区块,所述接收区块中包含能证明所述执行条件已满足的数据,并向所述区块链网络广播所述接收区块。
也即是说,向虚拟数据载体的区块链上添加区块时可以写入此操作的执行条件,符合条件才执行。例如,执行条件是:24小时之后,如果支付者拥有的虚拟数据载体总额超过100元就支付,否则取消。当接收者超过一定时间没有回应,支付者有权取消此次转出。
本申请提供的执行条件的举例为:用户甲向他拥有的虚拟数据载体A1的区块链上添加一个区块x:“如果明天中午12点我拥有的虚拟数据载体总额超过100元,我就把A1送给用户乙”。到了比约定时间稍晚一点(如果用户甲持有的虚拟数据载体区块链有变动,有足够的时间收到广播),如果用户乙获知用户甲拥有的虚拟数据载体超过100元,将这些虚拟数据载体的所有权信息写入接收区块,加在区块x后面,就可以接收到所述虚拟数据载体A1。
如果用户甲在12点之后将他的一个虚拟数据载体转给他人,却把支付时间写成12点之前,由于支付时间与广播时间距离过大,将被众在线节点判为无效甚至制裁。其中,众节点的“判”也不是以某种方式谋求共识,而是各判各的,自己认为甲构成作弊即可自行决定如何处置。
基于上述内容,在一种具体实施例中,参见图12,所述数据处理方法还可以具体包 含有如下内容:
步骤1201:接收所述区块链网络中任一节点广播的针对目标虚拟数据载体的转出区块对应的区块增加消息。
步骤1202:若接收到区块链网络中任一节点发出的与所述转出区块相冲突的区块增加消息,且所述转出区块中的指定用户标识为在本节点上的用户的标识,则在所述目标虚拟数据载体对应的区块链中添加与所述转出区块对应的拒绝区块,并向所述区块链网络广播该拒绝区块对应的所述区块增加消息。
为了加入支付关联以提高虚拟数据载体的权属转移可靠性,以进一步提高区块链网络的数据处理安全性,本申请提供一种执行主体为区块链网络中的任一节点的数据处理方法的实施例,参见图13,所述数据处理方法具体包含有如下内容:
步骤1301:接收所述区块链网络中任一节点广播的针对目标虚拟数据载体的转出区块对应的区块增加消息;
步骤1302:判断所述转出区块对应的区块增加消息中是否包含有关联信息,若是,则根据所述关联信息确定对应的关联操作中全部的关联发起区块的特征;
步骤1303:若接收到所述关联操作的全部的所述关联发起区块,则向自身需接收的虚拟数据载体对应的区块链之后添加关联完成区块并进行广播。
可以理解的是,可以将多个支付关联在一起,关联起来的支付只能同时完成或者同时取消,不能一部分完成而另一部分取消。支付时可以将多个支付关联在一起。例如,用户A向用户B支付10元,要求用户B找零3元,可以将这两个支付关联在一起,要求它们只能同时完成或者同时取消,不能一个完成而另一个取消。又例如,如果用户A须向用户B支付7元虚拟货币,但没有7元面值的虚拟数据载体,可以向用户B支付一个5元和一个2元的虚拟数据载体,也可以向用户B支付一个10元的虚拟数据载体并要求用户B找回3元。
基于此,本申请提供一种关联操作的具体方案的应用实例入下:
关联操作的实质是若干个虚拟数据载体之所有权的交换或同时转移,可以用于虚拟数据载体之间的找零,也可以用于商品买卖、合约执行等场景。
例如用户甲要用自己的虚拟数据载体A1交换用户乙的虚拟数据载体B1,其具体实施方式如下:
1、首先,两位用户已经知道对方用户和两个虚拟数据载体的数字标识。
甲向A1的区块链上添加一个关联发起区块x,内容为:愿以A1换取乙的B1。
乙也向B1的区块链上添加一个关联发起区块y,内容为:愿以B1换取甲的A1。
2、当x和y通过广播传到对方时(若考虑防双花,双方收到区块后要等待一段时间):
甲向B1的区块链上y的后面添加一个关联完成区块x2,内容为:“同意以A1换取乙的B1,见区块x(附加x的完整数据)”,接收B1。
乙向A1的区块链上x的后面添加一个关联完成区块y2,内容为:“同意以B1换取甲的A1,见区块y(附加y的完整数据)”,接收A1。
关联交易完成。
如果甲是以m个虚拟数据载体交换乙的n个虚拟数据载体,只需把上面的A1变成A11...A1m,把B1变成B11...B1n,甲将x分别加在每个A1i上,乙将y分别加在每个B1j上,甲将x2分别加在每个y之后,乙将y2分别加在每个x之后,即可完成关联交易。
如果甲想作弊,在第1步不广播x,收到y后照样执行第2步,由于在x2中须写入完整的x区块数据,只要广播x2,x也就得到了广播,乙终究能够接收A1;如果甲不广播x2,则对B1的接收没有完成,之后也不能支出B1。
如果乙在收到甲的关联发起区块x之后,在等待期间收到与x冲突的区块(甲双花),此时甲已经向B1添加了关联完成区块x2,则乙有权将双花信息加到x2之后,取消此项关联交易,收回B1的所有权。
关联发起区块有一个有效期,如果直至过期,甲没有收到乙的关联发起区块导致无法完成关联,则甲可以向A1添加一个拟取消关联区块并广播,等待一段时间后,如无冲突区块,再添加一个区块取消关联。如果等待期间乙广播过关联完成区块,其它节点发现冲突时会将乙的关联完成区块发给甲,甲可以完成关联。
更复杂的交换可能涉及多个用户和多个虚拟数据载体,与上述过程类似,每个虚拟数据载体的所有者先向虚拟数据载体区块链末添加并广播一个关联发起区块,写明完整的交换计划,然后集齐完成此计划所需的其它几方广播的关联发起区块,写入一个关联完成区块,添加在自己需要获得的每个虚拟数据载体的区块链末端。在多边交易中,任何参与者在添加关联完成区块之前发现有人双花,有权将双花信息加在取消区块里,加在所有虚拟数据载体的区块链上,取消整个交易。
对于只有甲、乙两个参与者的交换,可以有另一种流程,此流程的优点是,开始之前只要甲知晓A1与B1的ID即可,乙无须先知:
1、甲在A1上添加关联发起区块x:愿以A1交换乙的B1;
2、乙收到x,等待一段时间,在B1上添加关联确认区块y:引用x,同意以B1交换甲的A1;
乙再将y的数据作为关联完成区块附加到x之后,接收A1;
3、甲收到y,等待一段时间,在y之后添加关联完成区块,接收B1。
这种方式可以比部分支付软件更好地解决远程交易的信任问题。
为了加入部分所有权以提高虚拟数据载体的权属转移可靠性,以进一步提高区块链网络的数据处理安全性,本申请提供一种执行主体为区块链网络中的任一节点的数据处理方法的实施例,参见图14,所述数据处理方法具体包含有如下内容:
步骤1401:接收所述区块链网络中任一节点广播的针对目标虚拟数据载体的支付区块对应的区块增加消息。
步骤1402:判断目标虚拟数据载体的支付区块对应的区块增加消息中的权属用户标识是否多于一个,若是,则根据各个所述权属用户标识对应的权属用户的权属含量判断所述支付区块对应的区块增加消息是否合法。
此前讨论的虚拟数据载体的权属都只有一个所有者,所有者完整地拥有虚拟数据载体的权属。也有一些虚拟数据载体的权属会有多个所有者,每个所有者拥有部分所有权。
例如,虚拟数据载体的对象是一家公司,权属所有者包含有两个股东,甲有四成股份,乙有六成股份。在此公司的虚拟数据载体的区块链上,甲可以将他的四成股份转交给丙,乙可以拿出两成股份转交给丁。这时的股份结构是:乙有四成,丙有四成,丁有两成,甲没有了。
这种操作的要点在于,转出者需要证明自己确实有足够转出的股份,应保证转交区块的先后次序,避免分叉(也可以用带分叉的有向无环图(DAG),但此种结构数据量大了之后确认效率太低)。如果大家随时都能添加区块,即使没有恶意操作也可能造成分叉。为避免分叉,必须以某种共识方案设定每个人的添加权。
一个简单的方案是按时间轮替分配,每人一小时。在第一个小时里,只有甲有权添加转交区块,无论他有没有添加,下一小时就轮到乙,再下一小时轮到丙……这样可以保证大家添加的转交区块都在同一条区块链上。
这种方式在股东数量较少的情况下可以良好地运行。当股东过多,则轮替的周期太长而不再实用,此时应将此虚拟数据载体按所有者拆分成多个虚拟数据载体,每个新虚 拟数据载体只有一个所有者。拆分方法如同步骤1901至1903描述的冻结虚拟数据载体发行次生虚拟数据载体。
假设能容忍任意长的轮替周期,则此方法可以成长为另外一种去中心化、安全且省电的加密货币方案——只要虚拟数据载体的对象是加密货币的总额就行了。
在本申请的一个实施例中,有必要要求用户对每次添加区块付费,否则可能受到无限转账攻击——攻击者将一张虚拟数据载体不断转来转去,造成区块链过长而难以操作。
为了提高虚拟数据载体的抵押可靠性,以进一步提高区块链网络的数据处理安全性,本申请提供一种执行主体为区块链网络中的任一节点的数据处理方法的实施例,参见图15,所述数据处理方法具体包含有如下内容:
步骤1501:在目标虚拟数据载体的区块链中添加抵押区块。
步骤1502:接收权属用户发送的支付指令。
步骤1503:根据所述支付指令在其他目标虚拟数据载体的区块链中添加支付区块,并在所述抵押区块之后添加一个累进区块,其中,所述累进区块的序号在所述抵押区块设定的范围之内,且不与加在所述抵押区块之后的其他累进区块的序号重复,所述支付区块中包含有所述抵押区块所属的目标虚拟数据载体的数字标识和对应的所述累进区块的序号。
步骤1504:在所述区块链网络中广播针对目标虚拟数据载体的支付区块和累进区块共同对应的区块增加消息,以使所述区块链网络中的其他节点验证所述支付区块和累进区块的有效性。
在一种具体实施例中,参见图16,所述数据处理方法具体包含有如下内容:
步骤1601:若所述累进区块的序号超出原抵押区块的预设序号范围,则在另一个所述目标虚拟数据载体上更换或重新建立一个新的抵押区块,并将所述累进区块添加至在该新的抵押区块之后;在所述区块链网络中广播针对原抵押区块所属的虚拟数据载体的无权属状态信息,以使所述区块链网络中的其他用户基于预设规则竞争获取该原抵押区块所属的虚拟数据载体的权属。
具体来说:收费也应该是去中心化的。例如,每添加一个支付区块须缴纳0.01元,则用户需要先在一张权属用户为自身的虚拟数据载体上加一个抵押区块,假设用户甲抵押了面值一元的虚拟数据载体N,则此虚拟数据载体可提供100次支付的费用,每次各有一个序号,1~100。
甲每次添加的支付区块中要写明N的数字标识和本次支付的序号,并向N的抵押区块之后添加一个累进序号的区块(所有累进区块可以并列地直接加在抵押区块之后,也可以加在前一个累进区块之后),并向N的区块链上添加一个累进序号的区块,将累进区块与支付区块一同广播,其它节点验证两者均有效时才认可此项支付。累进区块同样禁止双花,每个累进区块的序号必须与此前针对同一个抵押区块的其它累进区块的序号不同。如果要求用户串行支付,可限制两个序号不同的累进区块的最小发布时间间隔,禁止用户同时支付多个虚拟数据载体。至序号达到100,虚拟数据载体N用完,甲应另外抵押一张虚拟数据载体以支持后续的支付,而N进入无主状态。
其它节点得知N进入无主状态,可依据一定规则争夺N的所有权,获胜者可以得到N。规则可以这样定:
在N进入无主状态之前一天(0时至24时)的所有虚拟数据载体的支付成功的支付区块中,选择一个接收者的ID与N的最后一个累进区块的ID最接近的。此接收者向N添加一个接收区块,写入前述选出的支付区块的数据,即可接收N。
如前述,累进区块可以并列地直接加在抵押区块之后,以便无主的N被他人接收之后,除最后一个累进区块之外的其它累进区块都无需再记录,可以缩减区块链的长度。
各用户要争夺无主虚拟数据载体,可能注册多个账户,但除了注册账户的成本,还必须让账户在每一天都有进账,才有资格成为候选者。这就必须增加很多不必要的转账,增加缴费,得不偿失。
对于无限转账攻击者,虽然可能获得一些无主虚拟数据载体,但由于争夺无主虚拟数据载体是用接收者账户的ID,不是支付区块的ID,只在少数几个账户中来回转账,争得无主虚拟数据载体的效率不高,也无法抵偿多次支付的费用。
对支付之外的其它操作,例如条件操作、冻结虚拟数据载体发行次生虚拟数据载体、在区块中附加自由信息等,都可以按不同的标准收费。
另外,基于上述内容,为了进一步提高区块链网络的数据处理效率,在本申请的数据处理方法的实施例中,参见图17,所述数据处理方法具体包含有如下内容:
步骤1701:接收其他参与者抵押虚拟数据载体的抵押信息。
步骤1702:创建本节点上的参与者与发出所述抵押信息的其他参与者之间的快速通道,所述快速通道为一个数据角色信息为事务的虚拟数据载体,该虚拟数据载体的固有信息中包含有参与者、结算条件和各个参与者抵押的虚拟数据载体,以使得任一所述参与者均在欲向其他参与者进行交付时向所述快速通道的区块链末添加对应的交付区块。
具体来说:如果多个用户有多次互相交付的需求,可为他们建立快速通道以提高效率,避免每次交付的广播和等待。
在建立快速通道之前,所有参与者(用户)应各自抵押若干件权属用户为自身的虚拟数据载体,即向这些虚拟数据载体对应的区块链末添加抵押区块,不同参与者抵押的虚拟数据载体可以是不同类型的对象和不同的数量,同一参与者抵押的多件虚拟数据载体也可以是不同类型的对象和不同的数量。
确定抵押的虚拟数据载体之后,由一个参与者创建快速通道,快速通道是一个事务类的虚拟数据载体,其固有信息中写明参与者、结算条件和每个参与者抵押的虚拟数据载体。结算条件可以按时间,也可以按参与者的要求结算。创建之后其他参与者应向快速通道的区块链后添加区块,表示同意参与。
快速通道建好后,若任何参与者欲向其他参与者交付一笔虚拟数据载体所指的对象,可不转移虚拟数据载体,而是向快速通道的区块链末添加一个区块,写明应向某参与者交付若干数额的对象。各参与者应保证快速通道的区块链不分叉,任何时候都能明确算出每个参与者对每种对象的总应付应收数额。每个参与者对于任一种对象的净应付数额不能超过创建快速通道时自己抵押的同一种对象的数额。
至满足结算条件之后开始结算,对于每一种所涉对象,净应收的参与者可撤回抵押的虚拟数据载体,而净应付的参与者的撤回抵押虚拟数据载体与结账两个操作被关联起来,必须支付虚拟数据载体结账才能撤回抵押的虚拟数据载体,至一段时间后仍不结账,净应收者可实施强制结账,从净应付者抵押的虚拟数据载体中扣除应付部分交给净应收者。前述“扣除”操作可由两种方式实现:1、由净应收者找零(关联操作);2、冻结抵押的虚拟数据载体创建更小面额的次生虚拟数据载体付给净应收者。
当用户甲与乙、乙与丙分别建立了快速通道,则甲与丙可以将这两个快速通道串连起来,构成多级快速通道。如此渐连渐远,可以快速交付到远方。在多级快速通道中的每一个交付,实质是将多级快速通道中每一段通道的交付放在一起的关联操作。
可以理解的是,区块链分为公链与私链。公链是指在技术上人人有权添加区块,需要通过共识算法认定谁添加的区块合法。而私链是只有它的主人有权添加区块,其他人只能读。
就支付区块而言,本发明中的虚拟数据载体对应的区块链实质是私链,只有此链的主人有权添加。但与一般私链不同的是,主人能够通过添加区块将此链的所有权转交给指定的人,让此链换一个主人,之后只有新主人才有权添加支付区块。
另外,为实现其它功能,虚拟数据载体的链上可以添加多种区块,每种区块对添加者的限定不同,支付区块只能由当前主人添加,其它区块也有可能是主人指定的人、其他特定的人或者人人皆可添加。这样看,虚拟数据载体之区块链的公私属性因区块类型而异,也可以算是一条公私混合的区块链。
为了提高虚拟数据载体创建的效率和可靠性,以进一步提高区块链网络的数据处理安全性,本申请提供一种执行主体为区块链网络中的任一节点的数据处理方法的实施例,参见图18,所述数据处理方法具体包含有如下内容:
步骤1801:获取各个数据角色信息,其中,所述数据角色信息包括虚拟货币的任意面值、法定货币的任意面值、任意数额及内容的财产信息、任意内容及数量的原料信息、任意人信息和任意内容的事务中的任意一项。
步骤1802:根据各个所述数据角色信息创建各个一一对应的虚拟数据载体以及与各个所述虚拟数据载体对应的区块链,其中,各个所述区块链的根区块或所述区块链所属的虚拟数据载体中均存储有对应的所述虚拟数据载体的固有信息,所述固有信息中包含有所述数据角色信息,由所述固有信息计算出对应的所述虚拟数据载体的数字标识,以使所述数字标识能验证对应的所述固有信息。
可以理解的是,所述根据各个所述数据角色信息创建各个一一对应的虚拟数据载体以及与各个所述虚拟数据载体对应的区块链的具体方式可以包含有如下四种:
1、初创时期批量创建若干虚拟数据载体,此后不再创建。
2、初创时期批量创建若干虚拟数据载体,此后依照预设程序自动创建及自动分配。
3、任意用户以工作量证明方式创建虚拟数据载体,虚拟数据载体的面值体现工作量的大小。
4、由任意用户转入其它形式的财富创建虚拟数据载体。
具体为:
1、在初创时期批量创建若干虚拟数据载体,此后不再创建。每个节点记住那些初创虚拟数据载体的数字标识,只认为这些虚拟数据载体有效,即使有人造出新的虚拟数据载体,数字标识也必不同,不会被其它节点接受。这种方式的优点是无损于去中心化、安全、省电三项目标且易于实施,缺点是会带来明显的通缩预期。
2、在初创时期批量创建若干虚拟数据载体,此后依照预设程序自动创建及自动分配。其运行效果取决于预设程序的设计水平。如果预设程序永不变更,容易被攻击者找到漏洞;而如果预设程序可变更,程序的更新者就会成为一个关键人,影响了去中心化 的要求。
3、由任意用户以工作量证明方式创建虚拟数据载体,虚拟数据载体的面值体现工作量的大小。缺点是耗电较多,好处是加密货币的创建数量可以灵活地适应市场需要,利于币值稳定。应该注意电是浪费在创建虚拟数据载体的过程,支付过程没有浪费,不创建新币也可以支付,与比特币每次记账都需要大量费电仍然大不相同。
4、由任意用户转入其它形式的财富创建虚拟数据载体。这种方案的优点是易于与现存的经济体系对接,缺点是需要一个中心机构来执行兑换工作,适用于不要求去中心化的场合。
在一种具体实施方式中,若所述数据角色信息为事务,则所述数据处理方法具体包含有如下内容:创建在固有信息中存储所述事务的流程或规则的虚拟数据载体,所述事务的所有参与者应按照所述流程或规则执行所述事务,所述流程或规则包括按照所述流程或规则规定的方式由参与者向所述虚拟数据载体对应的区块链上添加变更区块,以修改所述流程或规则的内容。
所述虚拟数据载体对应的区块链有下述特性:
1、在不同的区块链上,对于每种区块,不同用户可以有不同的添加权限;
2、上述不同用户的权限可通过添加区块来变更;
3、上述权限变更的规则可以是全局性的规则,也可以在所述虚拟数据载体的固有信息中规定,也可以通过添加区块修改。
为了通过引入次虚拟数据载体的概念,以进一步提高区块链网络的数据处理安全性,本申请提供一种执行主体为区块链网络中的任一节点的数据处理方法的实施例,参见图19,所述数据角色信息为虚拟货币或法定货币的任意面值,则所述数据处理方法具体包含有如下内容:
步骤1901:接收权属用户发送的创建次生虚拟数据载体的指令。
步骤1902:冻结当前权属用户为所述权属用户的一个或多个所述虚拟数据载体。
步骤1903:创建存储有指定面值的至少一个次生虚拟数据载体,且所述次生虚拟数据载体的面值总和小于或等于所述虚拟数据载体的面值总和。
具体来说:
1、如果需要特定面值的虚拟数据载体,可以将一张或多张虚拟数据载体冻结起来,作为创建依据,创建若干指定面值的虚拟数据载体,称为次生虚拟数据载体。次生虚拟数据载体流通期间,作为创建依据的虚拟数据载体处于冻结状态,不能流通,直至用户 收回全部次生虚拟数据载体并销毁之,创建依据才可解冻。
冻结后创建新面值:A想送给爱人一张面值为521元的虚拟数据载体,他冻结了三张面值为200元的虚拟数据载体,以此为创建依据,创建出一张521元的虚拟数据载体。
2、次生虚拟数据载体可增发:在冻结期间,用户可以销毁部分自己创建的次生虚拟数据载体,也可以在所有次生虚拟数据载体总面值不超过创建依据的前提下增发新的次生虚拟数据载体。冻结、解冻、发行与销毁操作同样以向虚拟数据载体的区块链末端添加区块的方式执行。
凭上述创建依据,他还可以再创建总面值为79元的虚拟数据载体,可以创建一张也可以分成多张,可以一次创建也可以分成多次。
可用于描述商品的生产过程:冻结原料,生成产品。由此可以追溯产品的原料,避免造假。
在次生虚拟数据载体的另一实施例中,若所述数据角色信息为任意内容及数量的原料或组件信息,则所述数据处理方法还包括:
(1)冻结所述数据角色信息为任意内容及数量的原料或组件信息的虚拟数据载体;
(2)创建存储有指定产品的至少一个次生虚拟数据载体,且所述次生虚拟数据载体的产品所需原料或组件总和少于或等于所述虚拟数据载体的数据角色信息所指的原料或组件总和。
也就是说,冻结虚拟数据载体发行次生虚拟数据载体,可用于描述商品的生产过程:冻结原料,生成产品。由此可以追溯产品的原料,避免造假。对象为商品的虚拟数据载体对应的区块链中清晰地记载了其所有权的变更历史,随时表明各时段合法的所有者,杜绝了非法的占有。采用此种记录方式可以防范大部分财产性犯罪,如偷窃、抢夺、贪污、洗钱、造假等。
另外,在本申请的一个实施例中,如果加密货币的初始设定允许用户以工作量证明的方式创建虚拟数据载体,条件是:生成的虚拟数据载体的数字标识的(二进制)前10位都是0,则此虚拟数据载体的面值可以是1元;前13位都是0,面值可以是8元。用户可不断向固有信息中添加冗余数据,计算数字标识,直到满足条件。当创建虚拟数据载体消耗的电力价格少于生成的虚拟数据载体面值,就会有人创建新的虚拟数据载体,从而阻止了虚拟数据载体的币值被炒得太高。
在本申请的一个实施例中,实用货币应能增发以避免通缩。去中心化的增发方法 为:
在步骤1601中论述的无权属虚拟数据载体,如果其最末累进区块的ID符合特定格式,则最终争得此无主虚拟数据载体的用户有权创建一张新的指定面值的虚拟数据载体。累进区块的ID的特定格式可以有难易不同的多种标准,对应创建不同面值的虚拟数据载体。
以上方法虽能增发虚拟数据载体,但增发速率与虚拟数据载体的平均转手速率(转手产生无主虚拟数据载体)成正比,会加剧通胀或通缩。要稳定币值,须计算过去一段时间里不同面值虚拟数据载体的使用率(总流通金额/总支付虚拟数据载体次数),据此反向调节创建虚拟数据载体的面值系数。如过去一段时间里,流通的虚拟数据载体平均面值偏大,说明正在通胀,应调低创建虚拟数据载体的面值系数,反之调高。
为了简化区块链网络的数据处理过程,提高数据传输过程中的合法性判断的效率,以在保证区块链网络的去中心化和安全特性的基础上,有效提高区块链网络的数据处理效率,并能够有效降低数据处理过程的耗电量,本申请还提供一种用于实现上述数据处理方法中的全部或任意内容的节点实施例,参见图20,所述节点具体包含有如下内容:
区块增加消息接收模块01,用于接收区块链网络中任一节点发送的针对目标虚拟数据载体的区块增加消息,该区块增加消息中包含有所述目标虚拟数据载体对应的数字标识、数据变更信息和权属用户标识;其中,所述区块链网络中包含有多个用于存储数据角色信息且设有唯一对应的数字标识的虚拟数据载体,每个所述虚拟数据载体对应至少一条区块链。
目标区块链信息获取模块02,用于根据所述目标虚拟数据载体对应的数字标识,获取该目标虚拟数据载体对应的目标区块链信息。
合法性判断模块03,用于基于所述目标区块链信息中的至少一个区块的数据变更历史信息,判断所述区块增加消息中的数据变更信息是否合法,若合法,则确认所述区块增加消息中的数据变更信息。
从上述内容可知,本申请实施例提供的节点,通过每个虚拟数据载体各自对应一条区块链的设置,使得各个节点无需经由工作量证明等类型的竞争共识机制与其他各节点达成共识,仅需自行对该节点进行合法性验证,并在验证后广播,因此,能够在保证区块链网络的去中心化和安全特性的基础上,有效提高区块链网络的数据处理效率,并能够有效降低数据处理过程的耗电量。
为了通过提高数据传输过程中的合法性判断的效率,进而能够在保证区块链网络的 去中心化和安全特性的基础上,有效提高区块链网络的数据处理效率,并能够有效降低数据处理过程的耗电量,本申请还提供一种包含有上述多个用于实现上述数据处理方法中的全部或任意内容的节点的区块链网络的实施例。该区块链网络通过每个虚拟数据载体各自对应一条区块链的设置,使得各个节点无需经由工作量证明等类型的竞争共识机制与其他各节点达成共识,仅需自行对该节点进行合法性验证,并在验证后广播,因此,能够在保证区块链网络的去中心化和安全特性的基础上,有效提高区块链网络的数据处理效率,并能够有效降低数据处理过程的耗电量。
为了通过提高数据传输过程中的合法性判断的效率,进而能够在保证区块链网络的去中心化和安全特性的基础上,有效提高区块链网络的数据处理效率,并能够有效降低数据处理过程的耗电量,本申请还提供一种虚拟数据载体的实施例,所述虚拟数据载体用于存储数据角色信息且设有数字标识,每个所述虚拟数据载体至少对应一条区块链;各个所述区块链均属于前述的区块链网络,且区块链网络包含有上述多个用于实现上述数据处理方法中的全部或任意内容的节点。
其中,若所述虚拟数据载体用于代表加密货币,则具体包含有如下:
(1)加密货币的支付以虚拟数据载体为载体,每个虚拟数据载体有一个面值,代表一份指定金额的加密货币,每个虚拟数据载体各有一条区块链,可用于记录这个虚拟数据载体的所有权的转移历史。
(2)每个虚拟数据载体各有一个与众不同且永恒不变的数字标识,用于区分不同的虚拟数据载体,也用于验证虚拟数据载体的固有信息,固有信息包括虚拟数据载体的面值,还可以包括虚拟数据载体的创建时间、创建人、创建依据等内容。
(3)每个虚拟数据载体的区块链中的记录指明了此虚拟数据载体的当前所有者,当前所有者有权以向此虚拟数据载体的区块链末尾添加区块的方式将该虚拟数据载体的所有权转交给他人,每一笔加密货币的支付都体现为若干个虚拟数据载体之所有权的转移,分散记录在这些虚拟数据载体各自的区块链上。
(4)创建虚拟数据载体的方案有以下几种:方案之一是在初创时期批量创建若干虚拟数据载体,此后不再创建;方案之二是在初创时期批量创建若干虚拟数据载体,此后依照预设程序自动创建及自动分配;方案之三是由任意用户以工作量证明的方式创建虚拟数据载体;方案之四是由任意用户转入其它形式的财富创建虚拟数据载体。
(5)用户可以冻结一个或多个虚拟数据载体,以之为创建依据,自行创建若干个次生虚拟数据载体,冻结的虚拟数据载体不能流通,直到该用户收回并销毁所有以之为创 建依据而创建的次生虚拟数据载体之后,才能解冻。
(6)支付可以带有执行条件。
(7)多个支付可以关联在一起,关联起来的支付只能同时完成或者同时取消,不能一部分完成而另一部分取消。
基于上述内容,本申请通过向加密货币中引入了虚拟数据载体这个概念,使加密货币由一个数字变成了一个原子化的对象,接近于“这一个货币、那一个货币”这样的概念。在比特币等原有的加密货币中,用户u1说给用户u2面值10元的钱,必须证明用户u1的账户里原本有不少于10元(它是个数字),这就涉及大量的共识计算,造成费电。而在本申请中,只要给用户一个虚拟数据载体,虚拟数据载体(对象)就在那里,人人可见,它必须属于某一用户,该用户才有权添加这个支付区块,别人不可能添加,因此不需要共识算法和费电。
从上述描述可知,本申请实施例提供的虚拟数据载体,每个虚拟数据载体的区块链各自记载了自身的所有支付记录,所有虚拟数据载体的记录构成了以之为载体的加密货币的所有支付记录,不再需要如现有加密货币那样的惟一的中心化区块链,实现了彻底的去中心化。而对于每个虚拟数据载体的区块链,在每个状态下,每种新增区块只有一个用户有权添加,不会有竞争。又由于每个区块只涉及一个虚拟数据载体的支付,与他人的账目无关,无须与他人寻求共识。所以,基于虚拟数据载体的加密货币的流通过程不需要工作量证明之类的机制,可以省电而快速地互相支付。另一方面,这些改变无损于区块链本身提供的安全性。因此,基于虚拟数据载体的加密货币同时实现了去中心化、安全、省电三项目标,使加密货币真正有希望成为社会经济的基石。
本申请的实施例还提供能够实现上述实施例中的数据传输方法中全部步骤的一种电子设备的具体实施方式,参见图21,所述电子设备具体包括如下内容:
处理器(processor)2101、存储器(memory)2102、通信接口(Communications Interface)2103和总线2104;
其中,所述处理器2101、存储器2102、通信接口2103通过所述总线2104完成相互间的通信;所述通信接口2103用于其自身代表的节点、区块链网络中的其他节点和其他区块链网络等相关设备或平台之间的信息传输;
所述处理器2101用于调用所述存储器2102中的计算机程序,所述处理器执行所述计算机程序时实现上述实施例中的数据传输方法中的全部或部分步骤,例如,所述处理器执行所述计算机程序时实现下述步骤:
步骤11:接收区块链网络中任一节点发送的针对目标虚拟数据载体的区块增加消息,该区块增加消息中包含有所述目标虚拟数据载体对应的数字标识、数据变更信息和权属用户标识;其中,所述区块链网络中包含有多个用于存储数据角色信息且设有唯一对应的数字标识的虚拟数据载体,每个所述虚拟数据载体对应至少一条区块链。
步骤12:根据所述目标虚拟数据载体对应的数字标识,获取该目标虚拟数据载体对应的目标区块链信息。
步骤13:基于所述目标区块链信息中的至少一个区块的数据变更历史信息,判断所述区块增加消息中的数据变更信息是否合法,若合法,则确认所述区块增加消息中的数据变更信息。
从上述内容可知,本申请实施例提供的电子设备,通过每个虚拟数据载体各自对应至少一条区块链的设置,使得各个节点无需经由工作量证明等类型的竞争共识机制与其他各节点达成共识,仅需自行对该节点进行合法性验证,并在验证后广播,因此,能够在保证区块链网络的去中心化和安全特性的基础上,有效提高区块链网络的数据处理效率,并能够有效降低数据处理过程的耗电量。
本申请的实施例还提供能够实现上述实施例中的数据处理方法中全部步骤的一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中的数据处理方法的全部或部分步骤,例如,所述处理器执行所述计算机程序时实现下述步骤:
步骤11:接收区块链网络中任一节点发送的针对目标虚拟数据载体的区块增加消息,该区块增加消息中包含有所述目标虚拟数据载体对应的数字标识、数据变更信息和权属用户标识;其中,所述区块链网络中包含有多个用于存储数据角色信息且设有唯一对应的数字标识的虚拟数据载体,每个所述虚拟数据载体对应至少一条区块链。
步骤12:根据所述目标虚拟数据载体对应的数字标识,获取该目标虚拟数据载体对应的目标区块链信息。
步骤13:基于所述目标区块链信息中的至少一个区块的数据变更历史信息,判断所述区块增加消息中的数据变更信息是否合法,若合法,则确认所述区块增加消息中的数据变更信息。
从上述内容可知,本申请实施例提供的算机可读存储介质,通过每个虚拟数据载体各自对应至少一条区块链的设置,使得各个节点无需经由工作量证明等类型的竞争共识机制与其他各节点达成共识,仅需自行对该节点进行合法性验证,并在验证后广播,因 此,能够在保证区块链网络的去中心化和安全特性的基础上,有效提高区块链网络的数据处理效率,并能够有效降低数据处理过程的耗电量。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于硬件+程序类实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
虽然本申请提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的装置或客户端产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、车载人机交互设备、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
虽然本说明书实施例提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的手段可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的装置或终端产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境,甚至为分布式数据处理环境)。术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、产品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、产品或者设备所固有的要素。在没有更多限制的情况下,并不排除在包括所述要素的过程、方法、产品或者设备中还存在另外的相同或等同要素。
为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本说明书实施例时可以把各模块的功能在同一个或多个软件和/或硬件中实现,也可以将实现同一功能的模块由多个子模块或子单元的组合实现等。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内部包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网 络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
本领域技术人员应明白,本说明书的实施例可提供为方法、系统或计算机程序产品。因此,本说明书实施例可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书实施例可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书实施例,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本说明书实施例的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的 具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
以上所述仅为本说明书实施例的实施例而已,并不用于限制本说明书实施例。对于本领域技术人员来说,本说明书实施例可以有各种更改和变化。凡在本说明书实施例的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书实施例的权利要求范围之内。

Claims (22)

  1. 一种数据处理方法,其特征在于,包括:
    接收区块链网络中任一节点发送的针对目标虚拟数据载体的区块增加消息,该区块增加消息中包含有所述目标虚拟数据载体对应的数字标识、数据变更信息和权属用户标识;其中,所述区块链网络中包含有多个用于存储数据角色信息且设有唯一对应的数字标识的虚拟数据载体,每个所述虚拟数据载体对应至少一条区块链;
    根据所述目标虚拟数据载体对应的数字标识,获取该目标虚拟数据载体对应的目标区块链信息;
    基于所述目标区块链信息中的至少一个区块的数据变更历史信息,判断所述区块增加消息中的数据变更信息是否合法,若合法,则确认所述区块增加消息中的数据变更信息。
  2. 根据权利要求1所述的数据处理方法,其特征在于,还包括:
    接收区块链网络中任一节点发出的针对非法操作的包含有数据变更信息和权属用户标识的告知消息,若确定针对该数据变更信息的非法操作属于预设的情节严重的操作中的一种,则制裁进行此操作的权属用户。
  3. 根据权利要求1所述的数据处理方法,其特征在于,还包括:
    在确定所述区块增加消息中的数据变更信息不合法之时或之后,若确定针对该数据变更信息的操作属于预设的情节严重的操作中的一种,则在权属用户为执行所述操作的目标用户的全部虚拟数据载体对应的目标区块链信息中添加非法权限声明区块并进行广播,以使所述区块链网络中的其他节点拒绝验证所述目标用户在所述添加了非法权限声明区块的虚拟数据载体上添加的权属转移区块。
  4. 根据权利要求1所述的数据处理方法,其特征在于,还包括:
    接收对应的权属用户发送的针对目标虚拟数据载体的权属转移指令,所述权属转移指令中包含有所述目标虚拟数据载体的数字标识和指定用户标识;
    根据所述目标虚拟数据载体的数字标识,由该目标虚拟数据载体对应的区块链中的最后一次完成的权属转移涉及的区块获取当前的权属用户标识;
    判断由所述最后一次完成的权属转移涉及的区块获取的权属用户标识与发出所述权属转移指令的权属用户对应的权属用户标识是否相同,若是,则基于所述指定用户标识在所述目标虚拟数据载体对应的区块链中添加支付区块,并向所述区块链网络广播该支付区块对应的所述区块增加消息;
    其中,所述区块增加消息中的数据变更信息包括:变更时间、变更内容和所述指定用户标识。
  5. 根据权利要求4所述的数据处理方法,其特征在于,在所述向所述区块链网络广播该支付区块对应的所述区块增加消息之后,还包括:
    若在预设时间内未收到所述区块增加消息对应的转出区块的指定用户发送的转移确认消息,则在所述目标虚拟数据载体对应的区块链中添加与所述转出区块对应的取消转出区块,并向所述区块链网络广播该取消转出区块对应的所述区块增加消息;
    其中,所述取消转出区块中的权属用户标识为对应的所述转出区块中的原权属用户标识。
  6. 根据权利要求4所述的数据处理方法,其特征在于,在所述向所述区块链网络广播该区块对应的所述区块增加消息之后,还包括:
    若在预设时间内接收到所述区块增加消息对应的转出区块指定的用户在所述区块链网络中广播的拒绝转出消息,则确定对应的所述目标虚拟数据载体的当前权属用户仍为发出针对该目标虚拟数据载体的权属转移指令的权属用户。
  7. 根据权利要求1所述的数据处理方法,其特征在于,还包括:
    接收所述区块链网络中任一节点广播的针对目标虚拟数据载体的转出区块对应的区块增加消息;
    若所述转出区块对应的区块增加消息中包含执行条件,则在满足该执行条件后,向所述目标虚拟数据载体对应的区块链中添加接收区块,所述接收区块中包含能证明所述执行条件已满足的数据,并向所述区块链网络广播所述接收区块。
  8. 根据权利要求1所述的数据处理方法,其特征在于,还包括:
    接收所述区块链网络中任一节点广播的针对目标虚拟数据载体的转出区块对应的区块增加消息;
    若接收到区块链网络中任一节点发出的与所述转出区块相冲突的区块增加消息,且所述转出区块中的指定用户标识为在本节点上的用户的标识,则在所述目标虚拟数据载体对应的区块链中添加与所述转出区块对应的拒绝区块,并向所述区块链网络广播该拒绝区块对应的所述区块增加消息。
  9. 根据权利要求1所述的数据处理方法,其特征在于,还包括:
    接收所述区块链网络中任一节点广播的针对目标虚拟数据载体的转出区块对应的区块增加消息;
    判断所述转出区块对应的区块增加消息中是否包含有关联信息,若是,则根据所述关联信息确定对应的关联操作中全部的关联发起区块的特征;
    若接收到所述关联操作的全部的所述关联发起区块,则向自身需接收的虚拟数据载体对应的区块链之后添加关联完成区块并进行广播。
  10. 根据权利要求1所述的数据处理方法,其特征在于,还包括:
    接收所述区块链网络中任一节点广播的针对目标虚拟数据载体的支付区块对应的区块增加消息;
    判断目标虚拟数据载体的支付区块对应的区块增加消息中的权属用户标识是否多于一个,若是,则根据各个所述权属用户标识对应的权属用户的权属含量判断所述支付区块对应的区块增加消息是否合法。
  11. 根据权利要求1所述的数据处理方法,其特征在于,还包括:
    在目标虚拟数据载体的区块链中添加抵押区块;
    接收权属用户发送的支付指令;
    根据所述支付指令在其他目标虚拟数据载体的区块链中添加支付区块,并在所述抵押区块之后添加一个累进区块,其中,所述累进区块的序号在所述抵押区块设定的范围之内,且不与加在所述抵押区块之后的其他累进区块的序号重复,所述支付区块中包含有所述抵押区块所属的目标虚拟数据载体的数字标识和对应的所述累进区块的序号;
    在所述区块链网络中广播针对目标虚拟数据载体的支付区块和累进区块共同对应的区块增加消息,以使所述区块链网络中的其他节点验证所述支付区块和累进区块的有效性。
  12. 根据权利要求11所述的数据处理方法,其特征在于,还包括:
    若所述累进区块的序号超出原抵押区块的预设序号范围,则在另一个所述目标虚拟数据载体上更换或重新建立一个新的抵押区块,并将所述累进区块添加至在该新的抵押区块之后;在所述区块链网络中广播针对原抵押区块所属的虚拟数据载体的无权属状态信息,以使所述区块链网络中的其他用户基于预设规则竞争获取该原抵押区块所属的虚拟数据载体的权属。
  13. 根据权利要求1所述的数据处理方法,其特征在于,还包括:
    获取各个数据角色信息,其中,所述数据角色信息包括虚拟货币的任意面值、法定货币的任意面值、任意数额及内容的财产信息、任意内容及数量的原料信息、任意人信息和任意内容的事务中的任意一项;
    根据各个所述数据角色信息创建各个一一对应的虚拟数据载体以及与各个所述虚拟数据载体对应的区块链,其中,各个所述区块链的根区块或所述区块链所属的虚拟数据载体中均存储有对应的所述虚拟数据载体的固有信息,所述固有信息中包含有所述数据角色信息,由所述固有信息计算出对应的所述虚拟数据载体的数字标识,以使所述数字标识能验证对应的所述固有信息。
  14. 根据权利要求13所述的数据处理方法,其特征在于,若所述数据角色信息为事务,则所述数据处理方法还包括:
    创建在固有信息中存储所述事务的流程或规则的虚拟数据载体,所述事务的所有参与者应按照所述流程或规则执行所述事务,所述流程或规则包括按照所述流程或规则规定的方式由参与者向所述虚拟数据载体对应的区块链上添加变更区块,以修改所述流程或规则的内容。
  15. 根据权利要求13所述的数据处理方法,其特征在于,若所述数据角色信息为虚拟货币或法定货币的任意面值,则所述数据处理方法还包括:
    接收权属用户发送的创建次生虚拟数据载体的指令;
    冻结当前权属用户为所述权属用户的一个或多个所述虚拟数据载体;
    创建存储有指定面值的至少一个次生虚拟数据载体,且所述次生虚拟数据载体的面值总和小于或等于所述虚拟数据载体的面值总和。
  16. 根据权利要求13所述的数据处理方法,其特征在于,若所述数据角色信息为任意内容及数量的原料或组件信息,则所述数据处理方法还包括:
    冻结所述数据角色信息为任意内容及数量的原料或组件信息的虚拟数据载体;
    创建存储有指定产品的至少一个次生虚拟数据载体,且所述次生虚拟数据载体的产品所需原料或组件总和少于或等于所述虚拟数据载体的数据角色信息所指的原料或组件总和。
  17. 根据权利要求1所述的数据处理方法,其特征在于,还包括:
    接收其他参与者抵押虚拟数据载体的抵押信息;
    创建本节点上的参与者与发出所述抵押信息的其他参与者之间的快速通道,所述快速通道为一个数据角色信息为事务的虚拟数据载体,该虚拟数据载体的固有信息中包含有参与者、结算条件和各个参与者抵押的虚拟数据载体,以使得任一所述参与者均在欲向其他参与者进行交付时向所述快速通道的区块链末添加对应的交付区块。
  18. 一种节点,其特征在于,包括:
    区块增加消息接收模块,用于接收区块链网络中任一节点发送的针对目标虚拟数据载体的区块增加消息,该区块增加消息中包含有所述目标虚拟数据载体对应的数字标识、数据变更信息和权属用户标识;其中,所述区块链网络中包含有多个用于存储数据角色信息且设有唯一对应的数字标识的虚拟数据载体,每个所述虚拟数据载体对应至少一条区块链;
    目标区块链信息获取模块,用于根据所述目标虚拟数据载体对应的数字标识,获取该目标虚拟数据载体对应的目标区块链信息;
    合法性判断模块,用于基于所述目标区块链信息中的至少一个区块的数据变更历史信息,判断所述区块增加消息中的数据变更信息是否合法,若合法,则确认所述区块增加消息中的数据变更信息。
  19. 一种区块链网络,其特征在于,包括:多个如权利要求18所述的节点。
  20. 一种虚拟数据载体,其特征在于,所述虚拟数据载体用于存储数据角色信息且设有唯一标识,每个所述虚拟数据载体至少对应一条区块链;
    各个所述区块链均属于同一个如权利要求19所述的区块链网络。
  21. 一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至17中一个或多个所述的数据处理方法的步骤。
  22. 一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至17中一个或多个所述的数据处理方法的步骤。
PCT/CN2019/083809 2018-08-02 2019-04-23 数据处理方法、节点、区块链网络及虚拟数据载体 WO2020024627A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201980001603.4A CN110896659B (zh) 2018-08-02 2019-04-23 数据处理方法、节点、区块链网络及虚拟数据载体
US17/265,105 US20210312444A1 (en) 2018-08-02 2019-04-23 Data processing method, node, blockchain network, and virtual data carrier

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201810873793.6 2018-08-02
CN201810873793.6A CN109102261A (zh) 2018-08-02 2018-08-02 基于赛博钞票的去中心化、安全、省电的加密货币

Publications (1)

Publication Number Publication Date
WO2020024627A1 true WO2020024627A1 (zh) 2020-02-06

Family

ID=64848283

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2019/083809 WO2020024627A1 (zh) 2018-08-02 2019-04-23 数据处理方法、节点、区块链网络及虚拟数据载体

Country Status (3)

Country Link
US (1) US20210312444A1 (zh)
CN (2) CN109102261A (zh)
WO (1) WO2020024627A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111427658A (zh) * 2020-03-06 2020-07-17 上海瀚决网络科技有限公司 基于区块链的用户数据处理方法、装置、设备及存储介质
US20200250719A1 (en) * 2019-04-25 2020-08-06 Netspective Communications Llc Computer-controlled marketplace network for digital transactions
CN112200570A (zh) * 2020-10-09 2021-01-08 支付宝(杭州)信息技术有限公司 基于区块链的资源发放方法、装置及电子设备

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109102261A (zh) * 2018-08-02 2018-12-28 刘卓 基于赛博钞票的去中心化、安全、省电的加密货币
US11251966B2 (en) 2019-06-28 2022-02-15 Advanced New Technologies Co., Ltd. Sending cross-chain authenticatable messages
US11356282B2 (en) 2019-06-28 2022-06-07 Advanced New Technologies Co., Ltd. Sending cross-chain authenticatable messages
CN112003703B (zh) * 2019-06-28 2023-08-22 创新先进技术有限公司 一种跨链发送可认证消息的方法和装置
GB2588812A (en) * 2019-11-08 2021-05-12 Jitsuin Ltd Data block modification
CN114726851B (zh) * 2020-12-21 2023-12-08 富泰华工业(深圳)有限公司 区块运算方法、装置、电子设备及存储介质
CN114173301B (zh) * 2021-12-02 2023-04-07 电子科技大学 一种基于dag区块链的车联网安全、高效数据共享方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106327173A (zh) * 2016-08-22 2017-01-11 布比(北京)网络技术有限公司 网络支付方法及装置
CN107077675A (zh) * 2016-12-30 2017-08-18 深圳前海达闼云端智能科技有限公司 基于区块链的货币管理方法和系统
US20180054491A1 (en) * 2016-08-19 2018-02-22 Ca, Inc. Maintaining distributed state among stateless service clients
CN107833060A (zh) * 2017-11-13 2018-03-23 中国银行股份有限公司 一种区块链中智能合约交易的验证方法以及系统
CN108009811A (zh) * 2017-11-30 2018-05-08 中国人民解放军国防科技大学 一种面向云际计算环境价值交换的跨链通信方法
CN109011583A (zh) * 2018-05-28 2018-12-18 腾讯科技(深圳)有限公司 虚拟资源转移方法和装置、存储介质及电子装置

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080183618A1 (en) * 2007-01-26 2008-07-31 First Data Corporation Global government sanctions systems and methods
US10068228B1 (en) * 2013-06-28 2018-09-04 Winklevoss Ip, Llc Systems and methods for storing digital math-based assets using a secure portal
US10636033B2 (en) * 2016-02-22 2020-04-28 Bank Of America Corporation System for routing of process authorizations and settlement to a user in a process data network
US11048723B2 (en) * 2016-04-08 2021-06-29 Chicago Mercantile Exchange Inc. Bilateral assertion model and ledger implementation thereof
CN105931052A (zh) * 2016-04-21 2016-09-07 四川大学 一种基于区块链多因子交叉验证的虚拟货币交易验证方法
WO2018088475A1 (ja) * 2016-11-09 2018-05-17 ソラミツ株式会社 電子認証方法及びプログラム
EP3542277A4 (en) * 2016-11-19 2020-08-05 Costanz, Mario A. SYSTEM AND METHOD OF CONCILIATION OF INTERACTION OBJECTS IN A LARGE PUBLIC BOOK BLOCKCHAIN ENVIRONMENT
CN108573381B (zh) * 2017-03-09 2020-06-05 北京京东尚科信息技术有限公司 数据处理方法以及装置
WO2018165155A1 (en) * 2017-03-09 2018-09-13 Walmart Apollo, Llc System and methods for three dimensional printing with blockchain controls
CN109241726B (zh) * 2017-07-10 2021-05-11 上海策赢网络科技有限公司 一种用户权限控制方法及装置
CN107506661B (zh) * 2017-08-15 2020-04-24 河南真二互联网科技有限公司 一种基于区块链的生成房屋历史记录的方法
US11270300B1 (en) * 2017-08-25 2022-03-08 Worldpay, Llc Decentralized computer systems and methods for efficient transaction dispute management using blockchain
US11481786B2 (en) * 2017-10-03 2022-10-25 Sony Group Corporation Genuine instance of digital goods
CN107766542B (zh) * 2017-10-30 2020-09-11 上海分布信息科技有限公司 一种分区的区块链网络及其实现分区查询的方法
CN107911373B (zh) * 2017-11-24 2019-09-06 中钞信用卡产业发展有限公司杭州区块链技术研究院 一种区块链权限管理方法及系统
US11637692B2 (en) * 2018-04-16 2023-04-25 The Procter & Gamble Company Method for enrolling nodes in a communications network
CN108985916A (zh) * 2018-05-29 2018-12-11 深圳市元征科技股份有限公司 一种数字资产管理方法及服务器
CN108921556B (zh) * 2018-07-02 2022-04-19 上海达家迎信息科技有限公司 一种区块链的验证方法、装置、设备及存储介质
CN109409975A (zh) * 2018-07-30 2019-03-01 马海龙 区块链商品存储装置、区块链商品存储系统、记录装置和区块链管理系统
CN109102261A (zh) * 2018-08-02 2018-12-28 刘卓 基于赛博钞票的去中心化、安全、省电的加密货币
CN108848111B (zh) * 2018-08-06 2021-09-10 杭州云象网络技术有限公司 一种基于区块链技术的去中心化虚拟专用网络组建方法
CN109388957B (zh) * 2018-09-26 2021-06-04 腾讯科技(深圳)有限公司 基于区块链的信息移转方法、装置、介质及电子设备
US11023490B2 (en) * 2018-11-20 2021-06-01 Chicago Mercantile Exchange Inc. Selectively replicated trustless persistent store

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180054491A1 (en) * 2016-08-19 2018-02-22 Ca, Inc. Maintaining distributed state among stateless service clients
CN106327173A (zh) * 2016-08-22 2017-01-11 布比(北京)网络技术有限公司 网络支付方法及装置
CN107077675A (zh) * 2016-12-30 2017-08-18 深圳前海达闼云端智能科技有限公司 基于区块链的货币管理方法和系统
CN107833060A (zh) * 2017-11-13 2018-03-23 中国银行股份有限公司 一种区块链中智能合约交易的验证方法以及系统
CN108009811A (zh) * 2017-11-30 2018-05-08 中国人民解放军国防科技大学 一种面向云际计算环境价值交换的跨链通信方法
CN109011583A (zh) * 2018-05-28 2018-12-18 腾讯科技(深圳)有限公司 虚拟资源转移方法和装置、存储介质及电子装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200250719A1 (en) * 2019-04-25 2020-08-06 Netspective Communications Llc Computer-controlled marketplace network for digital transactions
US11880882B2 (en) * 2019-04-25 2024-01-23 Intellectual Frontiers Llc Computer-controlled marketplace network for digital transactions
CN111427658A (zh) * 2020-03-06 2020-07-17 上海瀚决网络科技有限公司 基于区块链的用户数据处理方法、装置、设备及存储介质
CN112200570A (zh) * 2020-10-09 2021-01-08 支付宝(杭州)信息技术有限公司 基于区块链的资源发放方法、装置及电子设备

Also Published As

Publication number Publication date
US20210312444A1 (en) 2021-10-07
CN110896659B (zh) 2024-02-09
CN110896659A (zh) 2020-03-20
CN109102261A (zh) 2018-12-28

Similar Documents

Publication Publication Date Title
WO2020024627A1 (zh) 数据处理方法、节点、区块链网络及虚拟数据载体
JP7385706B2 (ja) ブロックチェーンに登録されたデジタルアセットを分配する方法及び自律計算エージェント
US11769214B1 (en) Method for tracking transferrable digital objects within decentralized consensus system
US20230261863A1 (en) System and method using a fitness - gradient blockchain consensus and providing advanced distributed ledger capabilities via specialized data records
Swanson Consensus-as-a-service: a brief report on the emergence of permissioned, distributed ledger systems
TW201935299A (zh) 用於處理金融資產之策略模型腳本之區塊鏈系統、節點伺服器及其方法
CN109034802A (zh) 用于区块链的权益证明创建方法、设备及可读存储介质
US11392906B2 (en) Cryptographic token with separate circulation groups
Godlove Regulatory overview of virtual currency
Wang et al. Loopring: A decentralized token exchange protocol
Hess et al. Æternity blockchain
Palihapitiya Blockchain Revolution in Banking Industry
Serrano Real estate tokenisation via non fungible tokens
Shakya et al. Blockchain based cryptocurrency scope in India
Gupta et al. When trade finance meets Blockchain technology
KR20200048547A (ko) 블록체인 기반 거래 규칙 적용 방법, 그를 수행하기 위한 단말 장치 및 프로그램
Karaivanov Blockchains, collateral and financial contracts
Tanwar et al. An analysis of blockchain and nft technologies and their drawbacks
KR20200048550A (ko) 블록체인 기반 거래 규칙 적용을 위한 프로그램
KR20200048548A (ko) 블록체인 기반 거래 규칙 적용 방법, 그를 수행하기 위한 단말 장치 및 프로그램
KR20200048552A (ko) 금 교환을 위한 거래 규칙 적용 방법, 그를 수행하기 위한 단말 장치 및 프로그램
KR20200048551A (ko) 실질 경제 가치와의 교환을 위한 거래 규칙 적용 방법, 그를 수행하기 위한 단말 장치 및 프로그램
Deshmukh et al. A Survey on Blockchain and Cryptocurrency-Based Systems
Zhang Study on NFT Market Ecology and Pricing Mechanism from the Perspective of Economics
Zug Technical Whitepaper

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: 19843881

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205 DATED 14/05/2021)

122 Ep: pct application non-entry in european phase

Ref document number: 19843881

Country of ref document: EP

Kind code of ref document: A1