WO2022068665A1 - 数据通信的方法和电子设备 - Google Patents

数据通信的方法和电子设备 Download PDF

Info

Publication number
WO2022068665A1
WO2022068665A1 PCT/CN2021/119875 CN2021119875W WO2022068665A1 WO 2022068665 A1 WO2022068665 A1 WO 2022068665A1 CN 2021119875 W CN2021119875 W CN 2021119875W WO 2022068665 A1 WO2022068665 A1 WO 2022068665A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
contract
value
model
raw
Prior art date
Application number
PCT/CN2021/119875
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 US18/246,802 priority Critical patent/US20230359774A1/en
Publication of WO2022068665A1 publication Critical patent/WO2022068665A1/zh

Links

Images

Classifications

    • 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
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • 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
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • 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/22Payment schemes or models
    • 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
    • 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

Definitions

  • the present disclosure relates to the field of communications, and more particularly to methods and electronic devices for data communications.
  • the Internet of Things that is, the "Internet of Everything Connected"
  • the Internet of Things is an extended and expanded network based on the Internet. It is a huge network formed by combining various information sensing devices (ie, sensors) with the Internet. Time, any place, the interconnection of people, machines and things.
  • the data transaction solution can use distributed ledgers to realize data transactions. Combined with the characteristics of distributed ledgers that data cannot be tampered with and decentralization, data buyers and sellers can establish trust and realize data transactions based on distributed ledgers.
  • a smart contract is signed between the data provider and the data purchaser through the blockchain network.
  • the price of the data is usually specified in smart contracts (for example, in terms of duration).
  • Data buyers typically pay for data based on the length of time the data stream is received.
  • a method for data communication performed at an electronic device of a data sender comprising: issuing a first contract to a blockchain network or signing a data receiver to the blockchain network A published first contract, the first contract including a first method for triggering the transfer of data between a data sender and a data receiver that signed the first contract, and a trigger for determining the value of the data and sending the data to the data recipient according to the first contract.
  • the second method is a value calculation method for determining the value of the data.
  • the second method is a second contract trigger method for triggering the execution of a second contract that includes a value calculation method for determining the value of the data.
  • the second contract is published by the data sender or the data receiver to the blockchain network.
  • the first contract further includes a contract creation method, the contract creation method is used to create a first sub-contract of the first contract, and the first contract includes recording an identifier of the first sub-contract member variable.
  • the method further includes: when the value calculation method is executed, invoking the contract creation method to create a first sub-contract of the first contract, where the first sub-contract includes the value The value of the data updated after the calculation method is completed.
  • the first sub-contract includes a contract creation method and a value calculation method
  • the contract creation method of the first sub-contract is used to create a second sub-contract
  • the second sub-contract includes the first sub-contract The updated data value after the value calculation method of the sub-contract is executed.
  • the data is one of raw data, annotation data, and a data model
  • the first contract is a corresponding one of a raw data contract, a data annotation contract, and a data model contract.
  • the first method is a method for obtaining raw data for triggering the data sender to send the raw data.
  • the value calculation method includes at least one of the following operations:
  • the value of the raw data is adjusted according to the quality of the raw data.
  • adjusting the value of the raw data according to the accuracy of the raw data includes: adjusting the value of the raw data by comparing the current data accuracy of the raw data with reference data accuracy.
  • adjusting the value of the raw data according to the quality of the raw data includes at least one of the following:
  • the consistency between the raw data and the corresponding data model processed data is determined by invoking the start model method in the data model contract associated with the first contract, and the raw data is adjusted accordingly the value of.
  • the first method is a method for acquiring annotation data for triggering the data sender to send the annotation data.
  • the value calculation method includes operations for at least one of the following:
  • the value of the annotation data is adjusted according to the quality of the annotation data.
  • the operation of adjusting the value of the annotated data according to the annotator level of the annotated data comprises: adjusting the value of the annotated data by comparing the current annotator level of the annotated data with a reference annotator level value.
  • the operation of adjusting the value of the annotated data according to the type of the annotated data includes: adjusting the value of the annotated data by determining a semantic relationship between the annotated data and its corresponding original data value.
  • adjusting the value of the annotation data according to the quality of the annotation data includes determining the annotation by invoking a start model method in a data model contract associated with the first contract The consistency between the data and the original data corresponding to the annotated data after processing the data model, and then adjust the value of the annotated data accordingly.
  • the first method is an acquire model data method or a start model method for triggering the data sender to send the data model.
  • the value calculation method includes the operation of adjusting the value of the model data by comparing the current model accuracy and reference model accuracy of the model data.
  • the value calculation method includes the following operations:
  • the labeling data corresponding to the original data is obtained;
  • the value of the data model is adjusted according to the model accuracy of the data model.
  • a first electronic device for use at a data sender, comprising: a processor; and a memory storing instructions that, when executed by the processor, cause the first electronic device The electronic device performs the method according to the first aspect of the present disclosure.
  • a method for data communication performed at an electronic device of a data recipient, comprising: issuing a first contract to a blockchain network or signing a contract by a data sender to the blockchain network A published first contract, the first contract including a first method for triggering the transfer of data between a data sender and a data receiver that signed the first contract, and a trigger for determining the value of the data and receiving the data from the data sender according to the first contract.
  • the second method is a value calculation method for determining the value of the data.
  • the second method is a second contract trigger method for triggering the execution of a second contract that includes a value calculation method for determining the value of the data.
  • the second contract is published by the data sender or the data receiver to the blockchain network.
  • the first contract further includes a contract creation method, the contract creation method is used to create a first sub-contract of the first contract, and the first contract includes recording an identifier of the first sub-contract member variable.
  • the method further includes: when the value calculation method is executed, invoking the contract creation method to create a first sub-contract of the first contract, where the first sub-contract includes the value The value of the data updated after the calculation method is completed.
  • the first sub-contract includes a contract creation method and a value calculation method
  • the contract creation method of the first sub-contract is used to create a second sub-contract
  • the second sub-contract includes the first sub-contract The updated data value after the value calculation method of the sub-contract is executed.
  • the data is one of raw data, annotation data, and a data model
  • the first contract is a corresponding one of a raw data contract, a data annotation contract, and a data model contract.
  • the first method is a method for obtaining raw data for triggering the data sender to send the raw data.
  • the value calculation method includes at least one of the following operations:
  • the value of the raw data is adjusted according to the quality of the raw data.
  • adjusting the value of the raw data according to the accuracy of the raw data includes: adjusting the value of the raw data by comparing the current data accuracy of the raw data with reference data accuracy.
  • adjusting the value of the raw data according to the quality of the raw data includes at least one of the following:
  • the consistency between the raw data and the corresponding data model processed data is determined by invoking the start model method in the data model contract associated with the first contract, and the raw data is adjusted accordingly the value of.
  • the first method is a method for acquiring annotation data for triggering the data sender to send the annotation data.
  • the value calculation method includes operations for at least one of the following:
  • the value of the annotation data is adjusted according to the quality of the annotation data.
  • the operation of adjusting the value of the annotated data according to the annotator level of the annotated data includes: adjusting the value of the annotated data by comparing the current annotator level of the annotated data with a reference annotator level value.
  • the operation of adjusting the value of the annotated data according to the type of the annotated data includes: adjusting the value of the annotated data by determining a semantic relationship between the annotated data and its corresponding original data value.
  • adjusting the value of the annotation data according to the quality of the annotation data includes determining the annotation by invoking a start model method in a data model contract associated with the first contract The consistency between the data and the original data corresponding to the annotated data after processing the data model, and then adjust the value of the annotated data accordingly.
  • the first method is an acquire model data method or a start model method for triggering the data sender to send the data model.
  • the value calculation method includes the operation of adjusting the value of the model data by comparing the current model accuracy and reference model accuracy of the model data.
  • the value calculation method includes the following operations:
  • the value of the data model is adjusted according to the model accuracy of the data model.
  • a second electronic device for use at a data recipient, comprising: a processor; and a memory storing instructions that, when executed by the processor, cause the first electronic device The electronic device performs the method according to the third aspect of the present disclosure.
  • a computer-readable storage medium having instructions stored thereon, the instructions, when executed by a processor, enable the processor to perform the above-mentioned first aspect or the third aspect method for data communication.
  • electronic device, system and/or computer-readable storage medium based on the construction of distributed ledgers (including IOTA, blockchain, etc.), various data such as data providers, data labelers, and data analysts are involved
  • distributed ledgers including IOTA, blockchain, etc.
  • various data such as data providers, data labelers, and data analysts are involved
  • the party is connected to the distributed ledger system.
  • the dynamic adjustment of the data value changes provided by different participants is realized through smart contracts
  • the automatic verification of data is realized through smart contracts, thereby improving the flow of data and the mining of data value, improving the The level of automation of the parties.
  • FIG. 1 is a schematic diagram showing an example application scenario for illustrating an example smart contract based on a blockchain network
  • FIG. 2 is a schematic diagram illustrating a blockchain-based data transaction scenario according to an embodiment of the present disclosure
  • 3A and 3B illustrate examples of various parties and related contracts in a blockchain-based data transaction scenario
  • FIG. 4 is a schematic diagram illustrating the message flow of an example data transaction process according to an embodiment of the present disclosure
  • FIG. 5 is a schematic diagram illustrating the message flow of an example data transaction process according to another embodiment of the present disclosure.
  • FIG. 6 is a schematic diagram illustrating a message flow of an example data transaction process according to yet another embodiment of the present disclosure.
  • FIG. 7 is a flowchart illustrating an example method performed in an electronic device of a data sender according to an embodiment of the present disclosure
  • FIG. 8 is a flowchart illustrating another example method performed in an electronic device of a data recipient according to an embodiment of the present disclosure.
  • FIG. 9 is a schematic hardware layout diagram illustrating an apparatus for data communication according to an embodiment of the present disclosure.
  • references to "one embodiment,” “an embodiment,” “an example,” or “an example” mean that a particular feature, structure, or characteristic described in connection with the embodiment or example is included in the present disclosure in at least one embodiment.
  • appearances of the phrases “in one embodiment,” “in an embodiment,” “one example,” or “an example” in various places throughout this specification are not necessarily all referring to the same embodiment or example.
  • the particular features, structures or characteristics may be combined in any suitable combination and/or subcombination in one or more embodiments or examples.
  • drawings provided herein are for illustrative purposes and are not necessarily drawn to scale.
  • the term “and/or” includes any and all combinations of one or more of the associated listed items.
  • data transaction is not limited thereto.
  • data transaction is only a specific application scenario of the "data communication” scheme proposed in this paper, and the data communication scheme in this application can be applied to any situation where data communication is required, for example, non-transactional data communication.
  • the term “smart contract” or “contract” in ethereum technology and the Solidity programming language used therein is employed herein, the present disclosure is not limited thereto.
  • the term “contract” may be used herein to refer to information proposed by at least one party in a data transaction (or data communication) related to establishing, maintaining, changing, tearing down a data stream, etc.
  • the terms “smart contract” and /or “contract” etc. can also be any information that can be transmitted on the network, such as application, APP, source code, executable code, message, text, binary data, software, firmware, etc.
  • the terms “smart contract” and/or “contract” may also not refer to other information related to the data flow when applied to fields other than data communication.
  • data stream generally refers to a series of digitally encoded ordered signals or their carriers that are used to send or receive information during their transmission.
  • data flow can be used herein to refer to either a series of information itself transmitted between two or more entities, or a set of The logical channel through which this information is transmitted.
  • a blockchain-based data transaction system usually includes one or more data providers (herein, may also be referred to as “data senders”), one or more data buyers (herein, may also be referred to as “data senders”) data receiver”) and the blockchain network.
  • a blockchain network usually includes multiple nodes. Information about data transactions between data providers and data buyers can be stored in multiple nodes in the blockchain network.
  • one or both of the data buyer or the data provider can issue a smart contract to the blockchain network. The smart contract can trigger the data buyer to establish data communication with the data provider, and receive data and pay through the data communication.
  • Smart contracts are one of the important features of blockchain-based data transactions.
  • the concept of a smart contract was first proposed by Nick Szabo in 1994, who defined a smart contract as follows: "A smart contract is a set of commitments defined in digital form, including agreements on which contract participants can execute these commitments".
  • a smart contract is a computer protocol designed to inform, verify, or execute a contract. Smart contracts allow for trusted transactions without third parties, which are traceable and often irreversible (unless there is a retraction clause in the contract, etc.).
  • a smart contract can be thought of as a computer program or transaction agreement intended to automatically execute, control or document legally relevant events in accordance with the terms of the contract or agreement.
  • the purpose of smart contracts is to reduce the need for a trusted arbitrator, reduce the cost of arbitration and enforcement, reduce fraud losses, and reduce malicious and accidental behavior.
  • smart contracts based on blockchain technology can not only give play to the advantages of smart contracts in terms of cost efficiency, but also avoid the interference of malicious behaviors on the normal execution of contracts.
  • the smart contract is written into the blockchain in a digital form, and the characteristics of the blockchain technology ensure that the entire process of storage, reading, and execution is transparent, traceable, and non-tamperable.
  • a state machine system can be constructed through the consensus algorithm that comes with the blockchain, so that smart contracts can run more efficiently.
  • FIG. 1 is a schematic diagram illustrating an example application scenario 10 for illustrating an example smart contract based on a blockchain network.
  • the scenario 10 includes a user-1 110 who wants to sell his own car 140, a user-2 120 who wants to buy a car, and a blockchain network 150 including a plurality of nodes 151-154.
  • scenario 10 of FIG. 1 is for illustration only, and the present disclosure is not limited thereto.
  • scenario 10 may include more users, items (eg, cars 140 ), and blockchain network 150 may include more, fewer, or different nodes.
  • User-1 110 wants to sell his car 140.
  • User-1 110 can write a smart contract 130 and publish the smart contract 130 to the blockchain network 150.
  • User-1 110 may register with, for example, the Ethereum network, obtain its assigned account ID (eg, 123456), and then report to nodes 151-154 on its network through an application provided by the Ethereum network. At least one of the nodes uploads and deploys the smart contract 130 written by it.
  • the Ethereum network obtains its assigned account ID (eg, 123456), and then report to nodes 151-154 on its network through an application provided by the Ethereum network. At least one of the nodes uploads and deploys the smart contract 130 written by it.
  • the contents of a simple example smart contract 130 may look like this:
  • Smart Contract 130 The general function of the above code can be described in "Smart Contract 130" in Figure 1.
  • a buyer eg, User-2 120
  • 10 ETH 10 ETH
  • the smart contract will automatically
  • the code of the smart lock informs the buyer and waits for the buyer to confirm receipt, after successful receipt, the blockchain network 150 will record the transfer of vehicle ownership through the published event and transfer these 10 ethers to the user - 1 110.
  • the seller when initializing (or instantiating) the smart contract 130, the seller (eg, User-1110) may set the seller's blockchain network address (eg, as shown in FIG. 1) through, eg, the contract's constructor "constructor” 123456 shown), the vehicle's blockchain network address (eg, 330524 shown in Figure 1), and the passcode for the smart lock associated with the car (eg, the member variable "passcode" in the code above).
  • the seller's blockchain network address eg, as shown in FIG. 1
  • the vehicle's blockchain network address eg, 330524 shown in Figure 1
  • the passcode for the smart lock associated with the car eg, the member variable "passcode" in the code above.
  • User-1 110 may, at step 1a, deposit the car 140 in a public garage and lock the car 140 using a smart lock controllable through the smart contract 130 (eg, placing The car 140 is placed in a designated garage locked by a smart lock), and its unlock password is set to, for example, the preceding passcode.
  • the smart lock may have a networking function, and may automatically generate a new password before each transaction under the control of the smart contract 130 to prevent the password from being used by others other than the final buyer due to the failure of the previous transaction. known to the people.
  • the smart contract 130 itself can be made known to the public, eg, through a web page publication.
  • the user-2 120 who wants to buy a car can find the smart contract 130 issued by the user-1 110 through the web page or directly on the blockchain network 150, and learn the relevant information through the smart contract 130 (eg, via a web page associated with the smart contract 130, or in other embodiments, the conditions of the vehicle are written directly in the smart contract 130), and sign the smart contract 130 if one wishes to purchase the car .
  • User-2 120 may sign the contract 130 by, for example, calling the "confirmPurchase( )" member method above.
  • User-2 120 may extract the vehicle 140 with the obtained unlock code after obtaining the smart lock unlock code from the blockchain network 150. In other embodiments, User-2 120 can also confirm that the transaction is successful (as shown in the above example code) after determining that the vehicle 140 can be picked up, and then confirm the corresponding transfer operation.
  • the blockchain network 150 may record the transaction information at at least one of the plurality of nodes 151-154. For example, when there are multiple events issued in the above code, the corresponding events can be recorded in each node to record the transaction process.
  • smart contract 130 can be modified so that it can contain more or different member variables and/or member methods, etc. It can also be used in data transaction scenarios as described below.
  • the data provider may be User-1 110 and the data buyer may be User-2 120, and the data exchange between the two parties may be specified in the smart contract by, for example, parameters (eg, parameters in member methods or member variables) Details of the transaction, such as (but not limited to): how the data communication is established, the price/pricing method of the data, how the data is settled, how the data communication is ended, the resolution of the disagreement, the termination conditions, etc.
  • problems such as difficulty in maintaining the integrity of transaction data, non-transparency of transactions, difficulty in tracing transaction history, and easy modification of relevant information can be well solved.
  • FIG. 2 is a schematic diagram illustrating a blockchain-based data transaction scenario 20 according to an embodiment of the present disclosure.
  • 3A and 3B illustrate examples of various parties and related smart contracts in a blockchain-based data transaction scenario.
  • raw data providers 210-1 and 210-2 that can provide raw data (for example, a manufacturing enterprise that can provide raw data, etc.), and 3 labeled data providers that can provide labeled data 220-1 to 220-3 and 2 data model providers 230-1 and 230-2 capable of providing data models.
  • Raw data is data that has not been processed by a third party, examples of which may include data directly reported by terminal equipment, production data collected by factory processing equipment (such as sensors), log data, and the like.
  • Annotated data is data generated after a third party (eg, a labeling company) analyzes or processes the original data, such as a structured description of the original data.
  • Annotated data is usually a supplement to the original data, and can be used together with the original data as training data, validation data, etc. for human intelligence.
  • a data model is a model obtained by modeling or training the original data and used to process or characterize the original data. Examples of data models may include parameters, functions, settings of various layers, etc. of each node of the neural network.
  • the original data provider, the annotation data provider and the data model provider can conduct data transactions through the blockchain network 250.
  • the blockchain network 250 may include four nodes 251 to 254 that communicate with each other. However, the present disclosure is not limited thereto. In other embodiments, there may be more, fewer, or different raw data providers, annotation data providers, data model providers, and/or nodes of the blockchain network 250 .
  • each of the original data providers 210-1 and 210-2, the annotation data providers 220-1 to 220-3, and the data model providers 230-1 and 230-2, respectively, may report to the blockchain network 250 Publish a smart contract, which can contain information related to data transactions, such as the type, price, data acquisition method, etc. of the data it provides. Accordingly, each of the original data providers 210-1 and 210-2, the annotation data providers 220-1 to 220-3, and the data model providers 230-1 and 230-2 may also act as data buyers or receivers
  • the parties sign the corresponding smart contracts according to their own needs, and conduct transactions with the corresponding one or more data providers. In some embodiments, the transaction of such data is accomplished through a data communication established between the data buyer and the data provider.
  • FIG. 3A and FIG. 3B show possible data transactions and related smart contracts between the original data provider, the annotation data provider or the data model provider.
  • Relevant smart contracts include: raw data contracts, data annotation contracts and data model contracts.
  • FIG. 3A an example is shown in which the original data provider publishes the original data contract, the data annotation contract and the data model contract. In the example of FIG.
  • the original data provider publishes the original data contract
  • the annotation data provider publishes the data annotation contract
  • the data model provider publishes the data model contract.
  • the examples depicted in FIGS. 3A and 3B are merely illustrative and not restrictive.
  • One or more of the relevant contracts may be provided by the party providing the data (which may be any of the original data provider, the annotation data provider, and the data model provider), or by the party purchasing the data (whose It can be provided by any one of the original data provider, the annotation data provider and the data model provider).
  • the issuer of the smart contract can also be determined according to the supply and demand relationship of the data market.
  • the contract can be formulated and issued in the early stage by the party providing the data.
  • the party that receives or purchases data can formulate and issue contracts.
  • the price of data is often specified in smart contracts (for example, in terms of duration). Data buyers typically pay for the data based on the length of time the data is received.
  • the solution can calculate the value of the data provided by various parties in real time through the value calculation method of the data in the smart contract.
  • the solution can also verify the data provided by each participant in real time through the data verification in the smart contract.
  • FIG. 4 is a schematic diagram illustrating the message flow of an example data transaction process according to an embodiment of the present disclosure. It should be noted that the steps shown in Figure 4 do not necessarily appear in the order shown, but may be reversed. For example, the step S420 of determining the value of the data may precede the step S415 of the data buyer 400-2 signing the first contract. Furthermore, as will be described below, the various steps may also be performed interleaved, for example, and thus embodiments of the present disclosure are not limited to the steps shown in FIG. 4 . In addition, some optional steps (shown in dotted lines) shown in FIG. 4 may also be omitted.
  • the data provider 400-1 shown in FIG. 4 may be any entity, enterprise, etc. that can provide data, such as, but not limited to, the original data provider described in FIG. 2 and FIGS. 3A-3B Any of 210-1 and 210-2, annotation data providers 220-1 to 220-3, and data model providers 230-1 and 230-2; and data buyer 400-2 can be any entity that has data needs , enterprises, etc., such as but not limited to the original data providers 210-1 and 210-2, annotation data providers 220-1 to 220-3, and data model providers 230 as described in FIG. 2 and FIG. 3A to FIG. 3B -1 and either 230-2.
  • the data provider 400-1 may publish the first contract to the blockchain network 250.
  • the first contract may include a data transfer method for triggering the transfer of data between the data provider and the data buyer who signed the first contract, and a data value calculation method for triggering determination of the value of the data.
  • the first contract may include at least one of the following: data type, data provider identifier, data address, billing method, data precision, data value, data transmission method, and data value calculation method.
  • the data provider 400-1 may be the original data providers 210-1 and 210-2, the annotation data providers 220-1 to 220-3, and the data model described with reference to FIGS. 2, 3A, and 3B Either of providers 230-1 and 230-2.
  • the first contract may be a data contract
  • the data type in the first contract may be raw data
  • the data transmission method in the first contract may be for triggering data
  • the first contract may be an annotation data contract
  • the data type in the first contract may be annotation data
  • the data transmission method in the first contract may be for Trigger the data provider 400-1 to send the labeled data to obtain the labeled data method.
  • the first contract may be a model data contract
  • the data type in the first contract may be model data
  • the data transmission method in the first contract may be for triggering
  • the data provider 400-1 sends the method of acquiring model data or the method of starting the model of the data model.
  • the data provider 400-1 may issue, for example, a data value contract to the blockchain network 250, which includes a data value calculation method for determining the data value.
  • the first contract may not include a data value calculation method, but a data value contract trigger method, which, when triggered, causes the data value contract to be executed to calculate the value of the data in real time.
  • the data buyer 400-2 signs the first contract.
  • the signing of the first contract by the data purchaser 400-2 means that it accepts the real-time calculation of the data value, and pays the data provider 400-1 according to the real-time calculated data value.
  • first contract and the optional second contract are shown as being issued by the data provider 400-1, the present disclosure is not so limited. It is described in this way to make the invention clearer. Those skilled in the art will readily understand that one or both of the first contract and the second contract may alternatively be issued by the data buyer 400-2 and signed by the data provider 400-1.
  • step S420 the blockchain network 250 invokes the data value calculation method in the first contract or the second contract to calculate the data value in real time.
  • the calculation of the value of the data may be performed in response to an event.
  • the event may be based on time or some specific external event, such as a cycle of updating data prices that may be included in the first contract or the second contract.
  • the data price calculation method in the first contract or the second contract is automatically triggered.
  • External events can be specific events, such as a stock index greater than 3000 points, etc.
  • the data value calculation method in the first contract or the second contract can adjust the value of the raw data according to the accuracy of the raw data.
  • the value of the raw data can be adjusted by comparing the current data precision of the raw data with the reference data precision.
  • the reference data accuracy can be a predefined accuracy based on factors such as data buyer needs, market needs, equipment that collects raw data, and so on.
  • the data provided by the original data provider may have improved precision (eg, data precision improved from two decimal places to three decimal places) due to an upgrade of the equipment that collected the data.
  • such an increase in data accuracy can be detected by the first smart contract or the second intelligence, and should be taken into account when invoking the data value calculation method, for example, to increase the value of the data by a certain amount percentage, such as 10%.
  • the accuracy of the collected data may decrease due to aging, wear, etc. of the equipment that collects the raw data.
  • the data value calculation method can appropriately reduce the value of the data.
  • the data value calculation method may adjust the value of the raw data according to the scope of the raw data. For example, when the range of the original data changes, the degree of correlation between the original data is further judged. The value of the data is higher when the relevance of the data is high.
  • the completeness of the data source of the original data can also be used as the basis for judging the value of the data.
  • the original data provider includes several pipeline devices
  • the data value calculation method adjusts the value of the raw data according to the quality of the raw data.
  • the data buyer 400-2 may be either an annotation data provider or a data model provider or more.
  • the annotation data provider can issue the annotation data contract as the data provider to the blockchain network 250, and the original data provider can be the data buyer. Sign the label data contract. The consistency between the original data and the corresponding annotated data can be determined by calling the annotation data method in the data annotation contract, and then the value of the original data can be adjusted accordingly.
  • a data model provider can issue a data model contract to the blockchain network as a data provider, and the original data provider can sign the data model data contract as a data buyer.
  • the consistency between the raw data and the corresponding data model-processed data can be determined by calling the start model method in the contract with the data model, and the value of the raw data can be adjusted accordingly. For example, higher consistency indicates that the quality of the data is likely to be higher, and thus the higher the value of the data. Conversely, lower consistency indicates that the quality of the data may be lower, and thus the lower the value of the data.
  • the value calculation method in the first contract or the second contract may adjust the value of the labeled data according to the level of the labeler that labels the data.
  • the labeler rank may be determined, for example, based on the labeler's brand, size, reputation, and the like. In some embodiments, this may include adjusting the value of the annotated data by comparing the current annotator rank of the annotated data with a reference annotator rank.
  • the reference labeler level may be a predetermined level. If the current annotator's level is higher than the reference annotator's level, the value calculation method should increase the value of the annotated data, otherwise it will reduce the value of the annotated data.
  • the data value calculation method may adjust the value of the annotated data according to the type of the annotated data.
  • data value calculation methods can adjust the value of annotated data by determining the semantic relationship between the annotated data and its corresponding raw data.
  • Semantic relationships may include, for example, relationships such as contains, adjacent, and the like.
  • the semantic relationship "contains" is, for example, the relationship between the temperature of the pipeline and the temperature of a device in the pipeline. When there is a semantic relationship, the value of annotated data is higher, and vice versa.
  • the data value calculation method may adjust the value of the annotated data according to the quality of the annotated data.
  • a data model provider may issue a data model contract as a data provider to the blockchain network
  • an annotation data provider may sign the data model data contract as a data buyer.
  • the data value calculation method can determine the consistency between the marked data and the original data corresponding to the marked data in the data processed by the data model by calling the start model method in the contract with the data model, And then adjust the value of the labeled data accordingly. For example, higher consistency indicates that the quality of the annotated data is likely to be higher, and thus the higher the value of the data. Conversely, the value of data is lower.
  • the value calculation method in the first contract or the second contract may adjust the value of the model data by comparing the current model accuracy and reference model accuracy of the model data. If the accuracy of the current model is higher than the accuracy of the reference model, the value calculation method should increase the value of the data model, otherwise, reduce the value of the data model.
  • the calculation of the value of the data model may include the following operations: obtaining the original data by invoking the data acquisition method of the original data contract corresponding to the first contract; by invoking the labeling data method of the data labeling contract corresponding to the first contract , to obtain the labeled data corresponding to the original data; use the data model for the original data to calculate the result data; compare the result data with the labeled data to determine the model accuracy of the data model; and according to the model accuracy of the data model to adjust the value of the data model.
  • step S430 data communication is performed between the data provider 400-1 and the data buyer 400-2, the data having the value calculated at step S420.
  • the data communication may be implemented, for example, by invoking the data transmission method in the first contract by the blockchain network 250 .
  • data communication between the original data provider and the data buyer may be implemented via a data flow
  • the data transmission method in the first contract may be a data flow establishment method.
  • the blockchain 250 may instruct the original data provider and the data buyer, respectively, to establish a data flow with each other.
  • the data flow between the two can be established by calling the data flow establishment method in the first contract.
  • the original data provider or the data buyer can be provided with the other party's information, and make it establish a data connection with the other party accordingly.
  • the blockchain network 250 may establish a data flow with the original data provider or the data buyer, respectively, and forward the data flow between the two data flows , so that the data flow can be supervised, and for example, fair, open, and fair charging processing (for example, the amount of data transmitted by the data flow, whether the flow is interrupted, etc.) can be performed accordingly.
  • data streaming is only one example way of enabling data communication between the original data provider and the data buyer.
  • the data communication between the original data provider and the data buyer can also be implemented in any other suitable manner.
  • data communication between the data provider and the data purchase may be accomplished via other suitable means (eg, data packets).
  • the signal flow diagram in FIG. 4 may also include relevant steps for contract cancellation.
  • the data provider 400-1 and/or the data buyer 400-2 may send a request to the blockchain network 250 to release the first contract.
  • the data provider 400-1 may consider temporarily stopping the provision of the corresponding data, and thus may initiate the release of the first contract.
  • the release of the contract may also be initiated when the data buyer 400-2 may need to temporarily maintain the equipment.
  • these contract cancellation requests should not violate relevant regulations that may exist in previously released contracts, such as contract duration.
  • after the data purchaser 400-2 obtains the required data it can also initiate the termination of the contract.
  • one or more nodes in the blockchain network 250 may determine whether the data provider 400-1 and/or the data buyer 400-2 satisfy the contract release conditions.
  • the contract termination condition may be whether the data purchaser has paid for the data.
  • the contract cancellation condition may be whether the data provider provides enough data, and the like.
  • one or more nodes in the blockchain network 250 may instruct the data provider 400-1 and/or the data buyer 400-2 to release the contract and disconnect the data communication between the two .
  • the data communication is established directly between the aforementioned two
  • one of the two may be instructed to disconnect the data communication
  • the two may be respectively instructed to disconnect Open data communication.
  • FIG. 5 is a schematic diagram illustrating a message flow of an example data transaction process according to another embodiment of the present disclosure.
  • the sequence of steps shown in Figure 5 is exemplary only and not limiting. The various steps may be performed in a different order than that shown in FIG. 5 or in parallel, and optional steps may be omitted.
  • the data provider 500-1 shown in FIG. 5 may be any entity, enterprise, etc. capable of providing data, such as, but not limited to, the original data provider described in FIG. 2 and FIGS.
  • 210-1 and 210-2, annotation data providers 220-1 to 220-3, and data model providers 230-1 and 230-2; and data buyer 500-2 may be any entity that has data needs , enterprises, etc., such as but not limited to the original data providers 210-1 and 210-2, annotation data providers 220-1 to 220-3, and data model providers 230 as described in FIG. 2 and FIG. 3A to FIG. 3B -1 and either 230-2.
  • Steps S510 and S510a in FIG. 5 are similar to steps S410 and S410a described in FIG. 4 .
  • the only difference is that the first contract in Figure 5 may also include a contract creation method for creating the first sub-contract of the first contract.
  • the first sub-contract may at least include a member variable that records the identification of the first sub-contract. Through this member variable, the relevant node/entity/device can obtain the first sub-contract.
  • step S520 similar to step S420 described with reference to FIG. 4, the blockchain network 250 calculates the data value in real time by invoking the data value calculation method in the first contract or the second contract.
  • the blockchain network 250 may invoke contract creation in the first contract in response to the change in data value (eg, by comparing the data value calculated at step S520 with the original data value in the first contract)
  • the method is to create a first sub-contract of the first contract, add a member variable that records the identification of the first sub-contract to the sub-contract identification of the first contract, and include the data value calculated at step S520 in the first sub-contract. in the contract.
  • the first sub-contract may include a contract creation method and a data value calculation method, and an identifier of a sub-contract further created according to the contract creation method in the first sub-contract.
  • the first subcontract may contain the same member variables and member methods as the first contract. For example, the member variables and member methods that may be included in the first subcontract are shown in Table 2 below.
  • the member variables and member methods in Table 2 are only examples.
  • the first subcontract may include fewer, more, or other member variables and member methods than those shown in Table 2.
  • the blockchain network 250 may invoke the data value calculation method in the first sub-contract to calculate the updated data value at step S540.
  • the updated data value may be the same as or different from the data value calculated at step S520.
  • the blockchain network 250 may call the contract creation method in the first sub-contract at step S550 to create a second sub-contract, and will create a second sub-contract at step S550
  • the updated data value calculated at S530 is included in the second sub-contract.
  • the second subcontract may contain member variables and member methods similar to the first subcontract.
  • steps S520 and S530 may be similar to the process shown with reference to FIG. 4 . Therefore, details are not repeated here.
  • the second sub-contract is the newly created sub-contract, which contains the latest value of the data. It should be understood that the steps of determining the updated data value and creating the sub-contract may be performed repeatedly in response to, for example, a cycle of updating the data value or an external event (eg, a market change) until the latest sub-contract containing the latest data value is created.
  • a cycle of updating the data value or an external event eg, a market change
  • step S555 the data buyer 500-2 signs the latest sub-contract (ie, the second sub-contract).
  • step S560 data communication is performed between the data provider 500-1 and the data buyer 500-2.
  • the data communication may be implemented, for example, by invoking the data transmission method in the first contract by the blockchain network 250 .
  • different data buyers may sign different contracts (eg, the first contract, the first sub-contract, or the second sub-contract, etc.) according to when they need the data. ).
  • the first data buyer may have signed the first contract, and the related data is processed according to the data value calculation method in the first contract.
  • the blockchain network 250 has created the first sub-contract in response to, for example, a cycle to update the value of the data or other external events
  • another data buyer with a data requirement may sign the first sub-contract and, according to the first The data value calculation method in the contract to process the related data.
  • the blockchain network 250 can create different sub-contracts based on time, and restrict data communication between the data provider and the data buyer according to the sub-contracts.
  • the embodiment of FIG. 5 may also include a corresponding cancellation step.
  • the data provider 600-1 shown in FIG. 6 may be any entity, enterprise, etc. capable of providing data, such as, but not limited to, the original data providers 210-1 and 210 as described in FIGS. 2 and 3A-3B. -2. Any one of the annotation data providers 220-1 to 220-3 and the data model providers 230-1 and 230-2; and the data buyer 600-2 can be any entity, enterprise, etc. that has data requirements, such as But not limited to the original data providers 210-1 and 210-2, the annotation data providers 220-1 to 220-3 and the data model providers 230-1 and 230- any of 2.
  • the data provider 600-1 may publish the first contract to the blockchain network 250.
  • the first contract may be the first contract described with reference to the embodiment of FIG. 4 , or the first contract described with reference to the embodiment of FIG. 5 .
  • the data provider 400-1 may issue a second contract, such as a data value contract, to the blockchain network 250, which includes a data value calculation method for determining the data value.
  • a second contract such as a data value contract
  • the first contract may not include a data value calculation method, but a data value contract trigger method, which, when triggered, causes the data value contract to be executed to calculate the value of the data in real time.
  • the data buyer 600-2 issues a third contract, which may include a data verification method for verifying the data transmitted between the data provider and the data buyer.
  • the data provider 600-1 and the data buyer 600-2 may sign the first contract and the third contract, respectively.
  • FIG. 6 shows the first contract and the optional second contract as being provided by the data provider 600-1 and the third contract as being provided by the data buyer 600-2, this disclosure does not limited to this. It is described in this way to make the invention clearer. Those skilled in the art will readily understand that one or more of the first contract, the second contract and the third contract may alternatively be issued by any one of the data provider 600-1 and the data buyer 600-2, and signed by the corresponding party.
  • the blockchain network 250 invokes the data value calculation method in the first contract or the second contract to calculate the data value in real time.
  • the calculation of the value of the data may be performed in response to an event.
  • the event may be based on time or some specific external event, such as the cycle of updating data prices included in the first contract.
  • the data price calculation method in the first contract is automatically triggered.
  • External events can be specific events, such as a stock index greater than 3000 points, etc.
  • step S640 data communication is performed between the data provider 600-1 and the data buyer 600-2.
  • the data communication may be implemented, for example, by invoking the data transmission method in the first contract by the blockchain network 250 .
  • the blockchain network 250 may call the data verification method in the third contract at step S650 to verify the data to determine whether the data is satisfied Abort condition.
  • the abort condition may be that the data precision is below a certain threshold, the data type is wrong, the data quality is below a certain threshold, the rank of the data provider 600-1 is below a certain threshold, and so on.
  • Step S650 may be performed by the blockchain network 250 automatically or in response to a request by either party.
  • the blockchain network 250 may suspend the data communication between the data provider 600-1 and the data buyer 600-2 at step S660. Additionally or alternatively, the blockchain network 250 may inform the respective parties of the reason for the suspension of communication.
  • the communication of data can be terminated in time when it is detected that the data does not meet some conditions, thereby avoiding the waste of resources.
  • FIG. 7 shows a flowchart of a method 700 that may be performed in an electronic device of a data provider according to an embodiment of the present disclosure.
  • the method 700 may include: at step S710, issuing a first contract to the blockchain network or signing a first contract issued by the data receiver to the blockchain network, the first contract including a trigger for triggering the first contract after signing the first contract.
  • the method 700 may further include: at step S720, sending the data to the data recipient according to the first contract.
  • the first contract further includes a contract creation method for creating a first sub-contract of the first contract, and the first contract includes a member variable that records the identification of the first sub-contract.
  • the method 700 may further include (not shown): when the value calculation method is executed, calling a contract creation method to create a first sub-contract of the first contract, where the first sub-contract includes the value calculation The data value to update after the method is executed.
  • FIG. 8 shows a flowchart of a method 800 that may be performed in an electronic device of a data recipient according to an embodiment of the present disclosure.
  • the method 800 may include: at step S810, issuing a first contract to the blockchain network or signing a first contract issued by the data sender to the blockchain network, the first contract including a trigger for triggering the first contract after signing the first contract.
  • the method 800 may also include receiving the data from the data sender according to the first contract.
  • FIG. 9 is a schematic layout diagram illustrating hardware of an electronic device 900 for data communication (eg, the electronic device of any of the participants shown in FIGS. 2-6 ) according to an embodiment of the present disclosure.
  • the hardware arrangement 900 may include a processor or controller 906 (eg, a digital signal processor (DSP), a central processing unit (CPU), etc.).
  • the processor 906 may be a single processing unit or multiple processing units for performing different acts of the processes described herein.
  • Arrangement 900 may further comprise an input unit 902 for receiving signals from other entities, and an output unit 904 for providing signals to other entities.
  • the input unit 902 and the output unit 904 may be arranged as a single entity or as separate entities.
  • arrangement 900 may include at least one readable storage medium 908 in the form of non-volatile or volatile memory, such as electrically erasable programmable read only memory (EEPROM), flash memory, and/or a hard drive.
  • the readable storage medium 908 includes a computer program 910 comprising code/computer readable instructions which, when executed by the processor 909 in the arrangement 900, cause the hardware arrangement 900 and/or a device including the hardware arrangement 900 to A process such as that described above in connection with FIGS. 4-6 and any variations thereof is performed.
  • Computer program 910 may be configured as computer program code having, for example, the architecture of computer program modules 910A and 910B.
  • the code in the computer program of arrangement 900 may include a module 910A for issuing the first contract to the blockchain network or signing the direction received by the data A first contract published by the blockchain network, the first contract includes a first method for triggering the transmission of data between a data sender and a data receiver who have signed the first contract, and a first method for triggering the determination of the A second method for the value of the data; module 910B, configured to send the data to the data recipient according to the first contract.
  • the code in the computer program of the arrangement 900 may include: a module 910C, publishing the first contract to the blockchain network or signing a first contract published by the data sender to the blockchain network, the first contract including a first method for triggering the transfer of data between the data sender and the data receiver who signed the first contract, and a second method for triggering determining the value of the data; and a module 910D for receiving the data from the data sender in accordance with the first contract.
  • the computer program modules may substantially perform each of the actions in the flows shown in Figures 4-6 to simulate a data provider and/or a data buyer.
  • different computer program modules when different computer program modules are executed in the processor or controller 909, they may correspond to different units or modules in the simulated data provider and/or data buyer.
  • code means in the embodiments disclosed above in connection with Figure 9 are implemented as computer program modules which, when executed in the processor 906, cause the hardware arrangement 900 to perform the actions described above in connection with Figures 4-6, in alternative implementations
  • at least one of the code means may be implemented at least in part as a hardware circuit.
  • a processor may be a single CPU (Central Processing Unit), but may also include two or more processing units.
  • a processor may include a general-purpose microprocessor, an instruction set processor and/or a related chipset and/or a special-purpose microprocessor (eg, an application specific integrated circuit (ASIC)).
  • the processor may also include onboard memory for caching purposes.
  • the computer program may be carried by a computer program product connected to a processor.
  • a computer program product may include a computer-readable medium having a computer program stored thereon.
  • the computer program product may be flash memory, random access memory (RAM), read only memory (ROM), EEPROM, and the computer program modules described above may in alternative embodiments be distributed among different in a computer program product.

Abstract

一种用于数据通信的方法(700)和电子设备(900)。在数据发送方的电子设备(900)处执行的用于数据通信的方法(700)包括:向区块链网络(150,250)发布第一合约或签署由数据接收方向区块链网络(150,250)发布的第一合约,第一合约包括用于触发在签署了第一合约的数据发送方和数据接收方之间传输数据的第一方法、以及用于触发确定数据的价值的第二方法(S710);以及根据第一合约,向数据接收方发送数据(S720)。

Description

数据通信的方法和电子设备 技术领域
本公开涉及通信领域,且更具体地涉及用于数据通信的方法和电子设备。
背景技术
随着通信技术的飞速发展,物联网(IoT)已经日益受到关注。物联网,即“万物相连的互联网”,是互联网基础上的延伸和扩展的网络,其是将各种信息传感设备(即,传感器)与互联网结合起来而形成的一个巨大网络,实现在任何时间、任何地点,人、机、物的互联互通。
根据市场调研报告“State of the market:Internet of things 2016”统计,全球IoT传感器市场已经超过6000亿/年,包括传感器的购买、安装、维护以及传感器接口软件等。通过传感器,传感器拥有者能够获得更多的数据,以及服务提供商也可基于传感器数据来提供增值服务。随着5G技术的发展,传感器数据的传送更加便利,传感器数据可以快捷、实时的发送到数据接收方。
因此,未来是数据时代已经在通信业、制造业等各行业内达成共识。数据交易将是未来的发展趋势。数据交易一方面能够降低传感器拥有者的投资、运维成本,另一方面也能够促进数据的价值挖掘。
数据交易方案可利用分布式账本实现数据的交易,结合分布式账本数据不能篡改、去中心化等特性,数据买卖双方基于分布式账本建立信任并实现数据交易。在常规的数据交易系统中,数据提供方和数据购买之间通过区块链网络签署智能合约。智能合约中通常指定数据的价格(例如,以时长为单位)。数据购买方通常按照接收数据流的时长来对数据进行支付。
然而,这样的数据交易系统和方法存在以下不足:
1、缺乏对不同参与方提供的数据价值变化的动态调整。数据交易平台存在各种各样的参与方,如发布数据的制造企业、标注数据的数据标注企业、获取数据以生成数据模型并提供数据模型参数的人工智能企业等。各种数据参与方所提供的数据的价值可能发生变化。例如,随着数据采集设备精度的提高,原始数据的价值将会随之提高;随着数据标注企业标注数据的精度的提高,标 注后的数据的价值也会提高;以及随着人工智能企业算法模型的升级,模型数据的价值也将发生变化。这样的数据交易系统缺乏用于实时计算数据价值的有效方法。
2、缺乏对数据的实时和自动校验。这样的数据交易过程中通常需要人工校验数据,例如,校验数据、校验数据模型等。因此,这样的系统缺乏用于对数据进行实时校验的有效方法。
发明内容
为了至少部分解决或减轻上述问题,提供了根据本公开实施例的用于数据通信的方法、电子设备和系统。
根据本公开的第一方面,提供了一种在数据发送方的电子设备处执行的用于数据通信的方法,包括:向区块链网络发布第一合约或签署由数据接收方向区块链网络发布的第一合约,所述第一合约包括用于触发在签署了所述第一合约的数据发送方和数据接收方之间传输数据的第一方法、以及用于触发确定所述数据的价值的第二方法;以及根据所述第一合约,向所述数据接收方发送所述数据。
在一些实施例中,所述第二方法是用于确定所述数据的价值的价值计算方法。
在一些实施例中,所述第二方法是用于触发第二合约执行的第二合约触发方法,所述第二合约包括用于确定所述数据的价值的价值计算方法。
在一些实施例中,所述第二合约是由所述数据发送方或所述数据接收方向所述区块链网络发布的。
在一些实施例中,所述第一合约还包括合约创建方法,所述合约创建方法用于创建所述第一合约的第一子合约,所述第一合约包括记录所述第一子合约标识的成员变量。
在一些实施例中,所述方法还包括:当所述价值计算方法执行完成后,调用所述合约创建方法创建所述第一合约的第一子合约,所述第一子合约包括所述价值计算方法执行完成后更新的数据价值。
在一些实施例中,所述第一子合约包括合约创建方法和价值计算方法,所 述第一子合约的合约创建方法用于创建第二子合约,所述第二子合约包括所述第一子合约的所述价值计算方法执行完成后更新的数据价值。
在一些实施例中,所述数据是原始数据、标注数据和数据模型之一,且所述第一合约是原始数据合约、数据标注合约和数据模型合约中的相应一个合约。
在一些实施例中,在所述数据是原始数据的情况下,所述第一方法是用于触发所述数据发送方发送所述原始数据的获取原始数据方法。
在一些实施例中,所述价值计算方法包括以下至少一项操作:
根据所述原始数据的精度来调整所述原始数据的价值;
根据所述原始数据的范围来调整所述原始数据的价值;以及
根据所述原始数据的质量来调整所述原始数据的价值。
在一些实施例中,根据所述原始数据的精度来调整所述原始数据的价值的操作包括:通过比较所述原始数据的当前数据精度和参考数据精度来调整所述原始数据的价值。
在一些实施例中,根据所述原始数据的质量来调整所述原始数据的价值的操作包括以下至少一项操作:
通过调用与所述第一合约相关联的数据标注合约中的标注数据方法,来确定所述原始数据与相应的标注数据之间的一致性,并进而据此调整所述原始数据的价值;以及
通过调用与所述第一合约相关联的数据模型合约中的启动模型方法,来确定所述原始数据与相应的经数据模型处理的数据之间的一致性,并进而据此调整所述原始数据的价值。
在一些实施例中,在所述数据是标注数据的情况下,所述第一方法是用于触发所述数据发送方发送所述标注数据的获取标注数据方法。
在一些实施例中,所述价值计算方法包括用于以下至少一项的操作:
根据所述标注数据的标注方等级来调整所述标注数据的价值;
根据所述标注数据的种类来调整所述标注数据的价值;以及
根据所述标注数据的质量来调整所述标注数据的价值。
在一些实施例中,根据所述标注数据的标注方等级来调整所述标注数据的价值的操作包括:通过比较所述标注数据的当前标注方等级和参考标注方等级 来调整所述标注数据的价值。
在一些实施例中,根据所述标注数据的种类来调整所述标注数据的价值的操作包括:通过确定所述标注数据和与其相对应的原始数据之间的语义关系来调整所述标注数据的价值。
在一些实施例中,根据所述标注数据的质量来调整所述标注数据的价值的操作包括:通过调用与所述第一合约相关联的数据模型合约中的启动模型方法,来确定所述标注数据与对应于所述标注数据的原始数据在经数据模型处理后的数据之间的一致性,并进而据此调整所述标注数据的价值。
在一些实施例中,在所述数据是数据模型的情况下,所述第一方法是用于触发所述数据发送方发送所述数据模型的获取模型数据方法或启动模型方法。
在一些实施例中,所述价值计算方法包括以下操作:通过比较所述模型数据的当前模型精度和参考模型精度来调整所述模型数据的价值。
在一些实施例中,所述价值计算方法包括以下操作:
通过调用与所述第一合约相对应的原始数据合约的获取数据方法,来获取原始数据;
通过调用与所述第一合约相对应的数据标注合约的标注数据方法,来荻取与所述原始数据相对应的标注数据;
针对所述原始数据使用所述数据模型来计算得到结果数据;
将所述结果数据与所述标注数据进行比较,以确定所述数据模型的模型精度;以及
根据所述数据模型的模型精度来调整所述数据模型的价值。
根据本公开的第二方面,提供了一种数据发送方处使用的第一电子设备,包括:处理器;以及存储器,存储指令,所述指令在由所述处理器执行时使得所述第一电子设备执行根据本公开的第一方面所述的方法。
根据本公开的第三方面,提供了一种在数据接收方的电子设备处执行的用于数据通信的方法,包括:向区块链网络发布第一合约或签署由数据发送方向区块链网络发布的第一合约,所述第一合约包括用于触发在签署了所述第一合约的数据发送方和数据接收方之间传输数据的第一方法、以及用于触发确定所述数据的价值的第二方法;以及根据所述第一合约,从所述数据发送方接收所 述数据。
在一些实施例中,所述第二方法是用于确定所述数据的价值的价值计算方法。
在一些实施例中,所述第二方法是用于触发第二合约执行的第二合约触发方法,所述第二合约包括用于确定所述数据的价值的价值计算方法。
在一些实施例中,所述第二合约是由所述数据发送方或所述数据接收方向所述区块链网络发布的。
在一些实施例中,所述第一合约还包括合约创建方法,所述合约创建方法用于创建所述第一合约的第一子合约,所述第一合约包括记录所述第一子合约标识的成员变量。
在一些实施例中,所述方法还包括:当所述价值计算方法执行完成后,调用所述合约创建方法创建所述第一合约的第一子合约,所述第一子合约包括所述价值计算方法执行完成后更新的数据价值。
在一些实施例中,所述第一子合约包括合约创建方法和价值计算方法,所述第一子合约的合约创建方法用于创建第二子合约,所述第二子合约包括所述第一子合约的所述价值计算方法执行完成后更新的数据价值。
在一些实施例中,所述数据是原始数据、标注数据和数据模型之一,且所述第一合约是原始数据合约、数据标注合约和数据模型合约中的相应一个合约。
在一些实施例中,在所述数据是原始数据的情况下,所述第一方法是用于触发所述数据发送方发送所述原始数据的获取原始数据方法。
在一些实施例中,所述价值计算方法包括以下至少一项操作:
根据所述原始数据的精度来调整所述原始数据的价值;
根据所述原始数据的范围来调整所述原始数据的价值;以及
根据所述原始数据的质量来调整所述原始数据的价值。
在一些实施例中,根据所述原始数据的精度来调整所述原始数据的价值的操作包括:通过比较所述原始数据的当前数据精度和参考数据精度来调整所述原始数据的价值。
在一些实施例中,根据所述原始数据的质量来调整所述原始数据的价值的操作包括以下至少一项操作:
通过调用与所述第一合约相关联的数据标注合约中的标注数据方法,来确定所述原始数据与相应的标注数据之间的一致性,并进而据此调整所述原始数据的价值;以及
通过调用与所述第一合约相关联的数据模型合约中的启动模型方法,来确定所述原始数据与相应的经数据模型处理的数据之间的一致性,并进而据此调整所述原始数据的价值。
在一些实施例中,在所述数据是标注数据的情况下,所述第一方法是用于触发所述数据发送方发送所述标注数据的获取标注数据方法。
在一些实施例中,所述价值计算方法包括用于以下至少一项的操作:
根据所述标注数据的标注方等级来调整所述标注数据的价值;
根据所述标注数据的种类来调整所述标注数据的价值;以及
根据所述标注数据的质量来调整所述标注数据的价值。
在一些实施例中,根据所述标注数据的标注方等级来调整所述标注数据的价值的操作包括:通过比较所述标注数据的当前标注方等级和参考标注方等级来调整所述标注数据的价值。
在一些实施例中,根据所述标注数据的种类来调整所述标注数据的价值的操作包括:通过确定所述标注数据和与其相对应的原始数据之间的语义关系来调整所述标注数据的价值。
在一些实施例中,根据所述标注数据的质量来调整所述标注数据的价值的操作包括:通过调用与所述第一合约相关联的数据模型合约中的启动模型方法,来确定所述标注数据与对应于所述标注数据的原始数据在经数据模型处理后的数据之间的一致性,并进而据此调整所述标注数据的价值。
在一些实施例中,在所述数据是数据模型的情况下,所述第一方法是用于触发所述数据发送方发送所述数据模型的获取模型数据方法或启动模型方法。
在一些实施例中,所述价值计算方法包括以下操作:通过比较所述模型数据的当前模型精度和参考模型精度来调整所述模型数据的价值。
在一些实施例中,所述价值计算方法包括以下操作:
通过调用与所述第一合约相对应的原始数据合约的获取数据方法,来获取原始数据;
通过调用与所述第一合约相对应的数据标注合约的标注数据方法,来获取与所述原始数据相对应的标注数据;
针对所述原始数据使用所述数据模型来计算得到结果数据;
将所述结果数据与所述标注数据进行比较,以确定所述数据模型的模型精度;以及
根据所述数据模型的模型精度来调整所述数据模型的价值。
根据本公开的第四方面,提供了一种数据接收方处使用的第二电子设备,包括:处理器;以及存储器,存储指令,所述指令在由所述处理器执行时使得所述第一电子设备执行根据本公开的第三方面所述的方法。
根据本公开的第五方面,还提供了一种计算机可读存储介质,其上存储有指令,所述指令在由处理器执行时,使得所述处理器能够执行上述第一方面或第三方面的用于数据通信的方法。
根据上述方法、电子设备、系统和/或计算机可读存储介质,基于构建分布式账本(包括IOTA、区块链等),将诸如数据提供方、数据标注方、数据分析方等各种数据参与方接入到分布式账本系统中。一方面通过智能合约实现了对不同参与方提供的数据价值变化的动态调整,另一方面还通过智能合约实现了对数据的自动校验,从而提升了数据的流转和数据价值的挖掘,提升了参与方的自动化水平。
附图说明
通过下面结合附图说明本公开的一些实施例,将使本公开的上述及其它目的、特征和优点更加清楚,其中:
图1是示出了用于说明基于区块链网络的示例智能合约的示例应用场景的示意图;
图2是示出了根据本公开实施例的基于区块链的数据交易场景的示意图;
图3A和图3B示出了基于区块链的数据交易场景中的各个参与方和相关合约的示例;
图4是示出了根据本公开实施例的示例数据交易过程的消息流的示意图;
图5是示出了根据本公开另一实施例的示例数据交易过程的消息流的示 意图;
图6是示出了根据本公开又一实施例的示例数据交易过程的消息流的示意图;
图7是示出了根据本公开实施例的在数据发送方的电子设备中执行的示例方法的流程图;
图8是示出了根据本公开实施例的在数据接收方的电子设备中执行的另一示例方法的流程图;以及
图9是示出了根据本公开实施例的用于数据通信的设备的示意硬件布置图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚明白,以下结合附图对本申请做进一步详细说明。应注意,以下描述只用于举例说明,并不用于限制本公开。在以下描述中,为了提供对本公开的透彻理解,阐述了大量特定细节。然而,对于本领域普通技术人员显而易见的是:不必采用这些特定细节来实行本公开。在其他实例中,为了避免混淆本公开,未具体描述公知的电路、材料或方法。
在整个说明书中,对“一个实施例”、“实施例”、“一个示例”或“示例”的提及意味着:结合该实施例或示例描述的特定特征、结构或特性被包含在本公开至少一个实施例中。因此,在整个说明书的各个地方出现的短语“在一个实施例中”、“在实施例中”、“一个示例”或“示例”不一定都指同一实施例或示例。此外,可以以任何适当的组合和/或子组合将特定的特征、结构或特性组合在一个或多个实施例或示例中。此外,本领域普通技术人员应当理解,在此提供的附图都是为了说明的目的,并且附图不一定是按比例绘制的。这里使用的术语“和/或”包括一个或多个相关列出的项目的任何和所有组合。
需要注意的是:尽管下文中以“数据交易”为例来详细描述本文的实施例,但本公开不限于此。事实上,数据交易仅是本文中所提出的“数据通信”方案的一种具体应用场景,而本申请中的数据通信方案可适用于任何需要进行数据通信的情况,例如,非交易性的数据通信。
此外,尽管本文中采用了以太坊(ethereum)技术中的术语“智能合约”或“合约”以及其使用的Solidity编程语言,但本公开不限于此。事实上,在本文中术语“合约”可以用来指代数据交易(或数据通信)中至少一方提出的与建立、维护、改变、拆除数据流等相关的信息,且因此术语“智能合约”和/或“合约”等也可以是应用、APP、源代码、可执行代码、消息、文本、二进制数据、软件、固件等任何可以在网络上传递的信息。在外,当被应用在数据通信之外的领域时,术语“智能合约”和/或“合约”也可以不涉及与数据流相关的其它信息。
此外,术语“数据流”通常指在其传输过程中被用于发送或接收信息的一系列数字编码的有序信号或其载体。换言之,术语“数据流”在本文中既可以指代在两个或多个实体之间所传输的一系列信息本身,也可以指代在这两个或多个实体之间所建立的用于传输这些信息的逻辑信道。
如前所述,传统的数据交易方法存在多种问题,例如:难以维护交易数据的完整性、交易的非透明性、交易历史难以追溯、相关信息很容易被修改、在数据连接断开时不能及时为数据接收方建立新的数据连接等,从而使得数据交易双方的利益都可能受到损害。相比于传统的数据交易方法,基于区块链的数据交易方法由于分布式、去中心化、交易数据不可篡改和撤销等优点而受到越来越多的关注。
基于区块链的数据交易系统通常包括一个或多个数据提供方(在本文中,也可称为“数据发送方”)、一个或多个数据购买方(在本文中,也可称为“数据接收方”)以及区块链网络。区块链网络通常包括多个节点。数据提供方和数据购买方之间的有关数据交易的信息可以被存储区块链网络中的多个节点中。在数据交易过程中,数据购买方或数据提供方中的一者或二者可以向区块链网络发布智能合约。该智能合约可以触发数据购买方与数据提供方建立数据通信,并且通过该数据通信接收数据并付费。
智能合约是基于区块链的数据交易的重要特性之一。智能合约的概念是Nick Szabo在1994年首次提出的,他将智能合约定义如下:“一个智能合约是一套以数字形式定义的承诺,包括合约参与方可以在上面执行这些承诺的协议”。智能合约是一种旨在以信息化方式传播、验证或执行合同的计算机协议。 智能合约允许在没有第三方的情况下进行可信交易,这些交易是可追踪并且通常是不可逆的(除非合约中设有撤回条款等)。
更一般地,可以将智能合约视为一段计算机程序或交易协议,其意在根据合约或协议中的条款对法律相关事件进行自动执行、控制或留档。智能合约的目的在于减少对可信仲裁人的需要、减少了仲裁和强制执行的成本、减少了欺诈损失、减少了恶意行为和意外行为。
而基于区块链技术的智能合约不仅可以发挥智能合约在成本效率方面的优势,而且可以避免恶意行为对合约正常执行的干扰。将智能合约以数字化的形式写入区块链中,由区块链技术的特性来保证存储、读取、执行整个过程透明、可跟踪、不可篡改。同时,可以通过区块链自带的共识算法来构建一套状态机系统,使得智能合约能够更高效地运行。接下来,将结合图1来详细说明基于区块链网络的智能合约。
图1是示出了用于说明基于区块链网络的示例智能合约的示例应用场景10的示意图。如图1所示,场景10包括想要销售自己的汽车140的用户-1 110、想要购买汽车的用户-2 120、以及包括多个节点151~154在内的区块链网络150。然而,需要注意的是,图1的场景10仅用于示例说明,且本公开不限于此。在其它实施例中,场景10中可以包括更多的用户、物品(例如,汽车140),且区块链网络150可以包括更多、更少或不同的节点。
如图1所示,用户-1 110想要出售自己的汽车140。因此,在步骤1处,用户-1 110可以编写智能合约130并向区块链网络150发布该智能合约130。
例如,在一些实施例中,用户-1 110可以向例如以太坊网络注册,并获得其分配的账号ID(例如,123456),然后通过以太坊网络提供的应用向其网络上的节点151~154中的至少一个节点上传并部署其编写的智能合约130。
在一些实施例中,一个简单的示例智能合约130的内容可以如下所示:
Figure PCTCN2021119875-appb-000001
Figure PCTCN2021119875-appb-000002
Figure PCTCN2021119875-appb-000003
Figure PCTCN2021119875-appb-000004
以上代码的大体功能可以如图1中“智能合约130”中所描述的,当某一个买家(例如,用户-2 120)向用户-1 110支付10个以太币,则该智能合约自动将智能锁的密码告知该买家并等待买家确认收货,在成功收货之后,区块链 网络150将通过所发布的事件来记录车辆所有权的转换并将这10个以太币转给用户-1 110。
具体地,在初始化(或实例化)该智能合约130时,卖家(例如,用户-1110)可通过例如合约的构造函数“constructor”来设置卖家的区块链网络地址(例如,图1中所示的123456)、车辆的区块链网络地址(例如,图1中所示的330524)和与汽车相关的智能锁的密码(例如,上面代码中的成员变量“passcode”)。
此外,在步骤1之前、之后或同时,用户-1 110可以在步骤1a处,将汽车140寄存到一个公用车库,并且使用可通过智能合约130控制的智能锁来锁定该汽车140(例如,将汽车140放入由智能锁锁定的指定车库中),并设置其解锁密码为例如前面的passcode。在其他实施例中,该智能锁可以具有联网功能,并可以在智能合约130的控制下在每次交易前自动生成新的密码,以防止前次交易失败导致密码被最终买家之外的其他人所获知。
之后,该智能合约130本身可以例如通过例如网页发布让公众知晓。
稍后,在步骤2处,想要购买汽车的用户-2 120可以通过网页或者直接在区块链网络150上找到用户-1 110所发布的智能合约130,通过该智能合约130了解到有关信息(例如,通过与智能合约130相关联的网页,或者在另一些实施例中,在智能合约130中直接写明该车辆的条件),并在想要购买该汽车的情况下签署该智能合约130。具体地,用户-2 120可以通过例如调用上面的“confirmPurchase()”成员方法来签署该合约130。
在接收到用户-2 120的签署(或方法调用)之后,在步骤3处,区块链网络150中的多个节点可以对该交易进行验证,例如验证用户-1 110是否是车主(例如,通过检查与车辆ID 330524有关的交易记录),并且用户-2 120的账户有足够的款项进行支付(例如,通过上面代码中confirmPurchase()方法的修饰符condition(msg.value==1e19)来验证),并且在验证成功的情况下,向用户-2 120自动发送智能锁的解锁密码并记录用户-2 120的账户中减少了相应金额,同时将记录用户-1 110的账户上增加了相应金额。
在步骤4处,用户-2 120可以在从区块链网络150获取智能锁解锁密码之后,通过所获取的解锁密码来提取车辆140。在另一些实施例中,用户-2 120 也可以在确定车辆140可被提取之后再确认交易成功(如上面示例代码所示)并进而确认相应转账操作。
在一些实施例中,区块链网络150可以将该交易信息记录在多个节点151~154中的至少一个节点处。例如,可以在上面的代码中发出的多个事件时,在各个节点中记录相应的事件,以对交易进程进行记录。
需要注意的是:尽管上面给出了一个简单的用于交易的智能合约的示例,但本公开不限于此。事实上,可以对智能合约130进行修改,以使其能够包含更多或不同的成员变量和/或成员方法等。如以下所描述的,其也可以用于数据交易的场景。
例如,可以由数据提供方作为用户-1 110而数据购买方作为用户-2 120,并可以在智能合约中通过例如参数(例如,成员方法或成员变量中的参数)来规定双方之间进行数据交易的细节,例如(但不限于):如何建立数据通信、数据的价格/定价方式、如何结算数据、如何结束数据通信、发生分歧的解决方案、解约条件等等。在采用区块链网络150来实现这样的数据交易的情况下,可以很好地解决难以维护交易数据的完整性、交易的非透明性、交易历史难以追溯、相关信息很容易被修改等问题。
目前,越来越多的企业加入到区块链网络中(在一些实施例中,区块链网络为联盟链),以通过该区块链网络实现数据的交易。图2是示出了根据本公开实施例的基于区块链的数据交易场景20的示意图。图3A和图3B示出了基于区块链的数据交易场景中的各个参与方和相关的智能合约的示例。
在示例场景20中,可以存在2个能够提供原始数据的原始数据提供方210-1和210-2(例如,能够提供原始数据的制造企业等)、3个能够提供标注数据的标注数据提供方220-1至220-3和2个能够提供数据模型的数据模型提供方230-1和230-2。原始数据是未经第三方处理的数据,其示例可以包括终端设备直接上报的数据、工厂加工设备(例如传感器)所采集的生产数据、日志数据等。标注数据是第三方(例如,标注公司)针对原始数据进行分析或处理后产生的数据,例如是对原始数据的结构化描述。标注数据通常是对原始数据的补充,并且可与原始数据一起用作人智能的训练数据、验证数据等。数据模型是针对原始数据进行建模或模型训练得出的用于处理原始数据或表征 原始数据的模型。数据模型的示例可以包括神经网络的各个节点的参数、函数、各层的设置等。原始数据提供方、标注数据提供方和数据模型提供方两两之间可以通过区块链网络250进行数据交易。区块链网络250可以包括彼此之间互相通信的四个节点251至254。然而,本公开不限于此。在另一些实施例中,可以存在更多、更少或不同的原始数据提供方、标注数据提供方、数据模型提供方和/或区块链网络250的节点。
具体而言,原始数据提供方210-1和210-2、标注数据提供方220-1至220-3和数据模型提供方230-1和230-2中的每一个可以分别向区块链网络250发布智能合约,该智能合约可以包含与数据交易有关的信息,例如其所提供的数据的类型、价格、数据获取方法等内容。相应地,原始数据提供方210-1和210-2、标注数据提供方220-1至220-3和数据模型提供方230-1和230-2中的每一个还可以作为数据购买方或接收方根据自身需要来签署相应智能合约,并与相应的一个或多个数据提供方进行交易。在一些实施例中,这种数据的交易是通过在数据购买方与数据提供方之间建立的数据通信来实现的。
应当注意,虽然在图2使用了诸如原始数据提供方、标注数据提供方或数据模型提供方之类的称谓,但是这仅仅是为了便于说明。原始数据提供方、标注数据提供方或数据模型提供方中的任一者还可以附加地或备选地是数据接收方。例如,图3A和图3B中示出了原始数据提供方、标注数据提供方或数据模型提供方中两两之间可能存在的数据交易以及相关的智能合约。相关的智能合约包括:原始数据合约、数据标注合约和数据模型合约。在图3A中,示出了原始数据提供方发布原始数据合约、数据标注合约和数据模型合约的示例。在图3B的示例中,示出了原始数据提供方发布原始数据合约,标注数据提供方发布数据标注合约,并且数据模型提供方发布数据模型合约。然而,图3A和图3B描述的示例仅是说明性的而非限制性的。相关的合约中的一个或多个可以由提供数据的一方(其可以是原始数据提供方、标注数据提供方和数据模型提供方中的任一个)来提供,也可以由购买数据的一方(其可以是原始数据提供方、标注数据提供方和数据模型提供方中的任一个)来提供。在一些实施例中,还可以根据数据市场的供求关系来确定智能合约的发布者。例如,如果前期供小于求,则前期可以由提供数据的一方来制定和发布合约。随着平台供 需关系的变化,当供大于求时,可以由接收或购买数据的一方来制定和发布合约。如前所述,智能合约中通常指定数据的价格(例如,以时长为单位)。数据购买方通常按照接收数据的时长来对数据进行支付。
然而,这样的数据交易系统和方法存在以下不足:
1.缺乏对不同参与方提供的数据价值变化的动态调整。数据交易平台存在各种各样的参与方,如发布数据的制造企业、标注数据的数据标注企业、获取数据以生成数据模型并提供数据模型参数的人工智能企业等。各种数据参与方所提供的数据的价值可能发生变化。例如,随着数据采集设备精度的提高,原始数据的价值将会随之提高;随着数据标注企业标注数据的精度的提高,标注后的数据的价值也会提高;以及随着人工智能企业算法模型的升级,模型数据的价值也将发生变化。这样的数据交易系统缺乏用于计算数据价值的有效方法。
2:缺乏对数据的和自动校验。
这样的数据交易过程中通常需要人工校验数据,例如,校验数据、校验数据模型等。因此,这样的系统缺乏用于对数据进行校验的有效方法。
为了至少部分解决或减轻上述问题,提供了根据本公开实施例的用于数据通信的方法、电子设备和系统。大体上,该方案可以通过智能合约中的数据的价值计算方法来实时地计算由各个参与方所提供的数据的价值。此外,该方案还可以通过智能合约中的数据校验放来实时地校验由各个参与方所提供的数据。以下,将结合图4~图6来描述根据本公开的实施例的数据交易过程。
图4是示出了根据本公开实施例的示例数据交易过程的消息流的示意图。需要注意的是:图4所示的步骤不一定按所示顺序出现,而是可以调换顺序。例如,确定数据价值的步骤S420可以在数据购买方400-2签署第一合约的步骤S415之前。此外,如下文中将描述的,各个步骤也可以例如交织执行,且因此本公开的实施例不限于图4所示的步骤。此外,图4中所示的一些可选的步骤(虚线示出)还可以被省略。
此外还应注意,图4中所示的数据提供方400-1可以是能够提供数据的任何实体、企业等,例如但不限于是如图2和图3A~图3B所述的原始数据提供方210-1和210-2、标注数据提供方220-1至220-3和数据模型提供方230-1 和230-2中任何一个;并且数据购买方400-2可以是有数据需求的任何实体、企业等,例如但不限于是如图2和图3A~图3B所述的原始数据提供方210-1和210-2、标注数据提供方220-1至220-3和数据模型提供方230-1和230-2中任何一个。
在步骤S410处,数据提供方400-1可以向区块链网络250发布第一合约。该第一合约可以包括用于触发在签署了第一合约的数据提供方和数据购买方之间传输数据的数据传输方法、以及用于触发确定该数据的价值的数据价值计算方法。在一些实施例中,该第一合约可以包括以下至少一项:数据类型、数据提供方标识、数据地址、计费方式、数据精度、数据价值、数据传输方法以及数据价值计算方法等。
例如,下表1中示出了该第一合约中可能包括的成员变量和成员方法。
Figure PCTCN2021119875-appb-000005
表1示例第一合约的成员表
如上所述,数据提供方400-1可以是参照图2、图3A和图3B所述的原始数据提供方210-1和210-2、标注数据提供方220-1至220-3和数据模型提供方230-1和230-2中的任一个。在数据提供方400-1提供原始数据的实施例中,第一合约可以是数据合约,第一合约中的数据类型可以是原始数据,并且第一 合约中的数据传输方法可以是用于触发数据提供方400-1发送原始数据的获取原始数据方法。在数据提供方400-1提供标注数据提的实施例中,第一合约可以是标注数据合约,第一合约中的数据类型可以是标注数据,并且第一合约中的数据传输方法可以是用于触发数据提供方400-1发送标注数据的获取标注数据方法。在数据提供方400-1提供数据模型的实施例中,第一合约可以是模型数据合约,第一合约中的数据类型可以是模型数据,并且第一合约中的数据传输方法可以是用于触发数据提供方400-1发送数据模型的获取模型数据方法或启动模型方法。
可选地,在步骤S410a处,数据提供方400-1可以向区块链网络250发布例如数据价值合约,其包括用于确定数据价值的数据价值计算方法。在这种情况下,第一合约可以不包括数据价值计算方法,而是包括数据价值合约触发方法,其在被触发时使得执行该数据价值合约,以实时地计算数据的价值。
在步骤S415处,数据购买方400-2签署第一合约。本领域技术人员可以理解,数据购买方400-2签署第一合约意味着其接受数据价值的实时计算,并根据实时计算出的数据价值来向数据提供方400-1进行支付。
虽然在图4的实施例中,将第一合约和可选的第二合约示为是由数据提供方400-1发布的,但是本公开不限于此。以这种方式进行描述是为了使本发明更清楚。本领域技术人员容易理解,第一合约和第二合约中的一个或两个可以备选地由数据购买方400-2发布,并由数据提供方400-1签署。
在步骤S420中,区块链网络250调用第一合约或第二合约中的数据价值计算方法来实时地计算数据价值。对数据价值的计算可以是响应于某一事件而执行的。例如,该事件可以基于时间或外部某个特定事件,如可以在第一合约或第二合约中包括的更新数据价格的周期。当该周期到期时,自动触发第一合约或第二合约中的数据价格计算方法。外部事件可以是具体的事件,例如股票指数大于3000点等。
在数据提供方400-1提供原始数据的实施例中,第一合约或第二合约中的数据价值计算方法可以根据原始数据的精度来调整原始数据的价值。例如,可以通过比较原始数据的当前数据精度和参考数据精度来调整原始数据的价值。参考数据精度可以是根据数据购买方需求、市场需求、采集原始数据的设备等 因素来预定义的精确。在一些情况下,原始数据提供方提供的数据可能由于采集数据的设备升级而具有提升的精度(例如,数据精度从小数点后两位数字提升到小数点后三位数字)。在这种情况下,能够通过第一智能合约或者第二智能检测到数据精度的这种提升,并且在调用数据价值计算方法时应考虑这种精度提升,例如,以将数据的价值提高某一百分比,如10%。类似地,由于采集原始数据的设备的老化、磨损等原因,采集到的数据的精度可能降低。在这种情况下,数据价值计算方法可以适当地降低数据的价值。
在一些实施例中,附加地或备选地,数据价值计算方法可以根据原始数据的范围来调整原始数据的价值。例如,当原始数据的范围发生变化时,进一步判断原始数据之间的相关度。数据的相关度高时,数据的价值就较高。
此外,原始数据的数据源的完备性也可以作为判断数据价值的依据。例如,在原始数据提供方包含若干个流水线设备的情况下,当原始数据中只包含少量流水线设备的数据时,其数据价值可以较低,当网络中有多个或全部流水线设备的数据时,数据价值可以较高。
在一些实施例中,附加地或备选地,数据价值计算方法根据原始数据的质量来调整所述原始数据的价值。在图4所示的示例中,如上所述,在数据提供方400-1是原始数据提供方的情况下,数据购买方400-2可以是标注数据提供方或数据模型提供方中的任意一个或多个。在这种情况下,尽管未在图4中示出,但是明显的是,标注数据提供方可以作为数据提供方向区块链网络250发布标注数据合约,并且原始数据提供方可以作为数据购买方来签署标注数据合约。可以通过调用数据标注合约中的标注数据方法,来确定原始数据与相应的标注数据之间的一致性,并进而据此调整原始数据的价值。例如,一致性越高,表明数据的质量可能越高,从而数据的价值也越高。相反,一致性越低,表明数据的质量可能越低,从而数据的价值也越低。类似地,数据模型提供方可以作为数据提供方向区块链网络发布数据模型合约,并且原始数据提供方可以作为数据购买方来签署该数据模型数据合约。在这种情况下,可以通过调用与数据模型合约中的启动模型方法,来确定原始数据与相应的经数据模型处理的数据之间的一致性,并进而据此调整原始数据的价值。例如,一致性越高,表明数据的质量可能越高,从而数据的价值也越高。相反,一致性越低,表明 数据的质量可能越低,从而数据的价值也越低。
在数据提供方400-1提供标注数据的实施例中,第一合约或第二合约中的价值计算方法可以根据对数据进行标注的标注方等级来调整标注数据的价值。标注方等级可以例如基于标注方的品牌、规模、信誉等来确定。在一些实施例中,这可以包括通过比较标注数据的当前标注方等级和参考标注方等级来调整标注数据的价值。参考标注方等级可以是预定的等级。如果当前标注方等级高于参考标注方等级,则价值计算方法应当将标注数据的价值提升,反之则将标注数据的价值降低。
在一些实施例中,附加地或备选地,数据价值计算方法可以根据标注数据的种类来调整标注数据的价值。例如,数据价值计算方法可以通过确定标注数据和与其相对应的原始数据之间的语义关系来调整标注数据的价值。语义关系例如可以包括如包含、相邻等关系。语义关系“包含”例如是流水线的温度与流水线中某个设备的温度之间的关系。当具有语义关系时,标注数据价值较高,反之数据价值较低。
在一些实施例中,附加地或备选地,数据价值计算方法可以根据标注数据的质量来调整标注数据的价值。例如,尽管未在图4中示出,但是数据模型提供方可以作为数据提供方向区块链网络发布数据模型合约,并且标注数据提供方可以作为数据购买方来签署该数据模型数据合约。在这种情况下,数据价值计算方法可以通过调用与数据模型合约中的启动模型方法,来确定标注数据与对应于该标注数据的原始数据在经数据模型处理后的数据之间的一致性,并进而据此调整所述标注数据的价值。例如,一致性越高,表明标注数据的质量可能越高,从而数据的价值也越高。反之,数据的价值较低。
在数据提供方400-1是数据模型提供方的实施例中,第一合约或第二合约中的价值计算方法可以通过比较模型数据的当前模型精度和参考模型精度来调整模型数据的价值。如果当前模型精度高于参考模型精度,则价值计算方法应当将数据模型的价值提升,反之则将数据模型的价值降低。具体地,在原始数据提供方、标注数据提供方和数据模型提供方均加入到区块链网络中并且存在响应的各种合约(原始数据合约、数据标注合约和数据模型合约)的情况下,对数据模型的价值的计算可以包括以下操作:通过调用与第一合约相对应的原 始数据合约的获取数据方法,来获取原始数据;通过调用与第一合约相对应的数据标注合约的标注数据方法,来获取与原始数据相对应的标注数据;针对原始数据使用数据模型来计算得到结果数据;将结果数据与标注数据进行比较,以确定所述数据模型的模型精度;以及根据数据模型的模型精度来调整所述数据模型的价值。
返回参考图4,在步骤S430中,在数据提供方400-1与数据购买方400-2之间进行数据通信,该数据具有在步骤S420处计算的价值。该数据通信例如可以通过由区块链网络250调用第一合约中的数据传输方法来实现。
在一些实施例中,例如,在数据提供方400-1是原始数据提供方的情况下,原始数据提供方与数据购买方(例如是标注数据提供方或数据模型提供方)之间的数据通信可以经由数据流来实现,并且第一合约中的数据传输方法可以是数据流建立方法。在这种情况下,区块链250可以分别指示原始数据提供方和数据购买方要与彼此建立数据流。例如,可以通过调用第一合约中的数据流建立方法来建立二者之间的数据流。例如,在该方法中可向原始数据提供方或数据购买方提供对方的信息,并使其据此建立与对方的数据连接。在另一些实施例中,如果需要对数据连接上的数据流进行监管,则区块链网络250可以分别与原始数据提供方或数据购买方建立数据流,并在两个数据流之间进行转发,从而使得数据流能够得到监管,并例如据此进行公平、公开、公正的计费处理(例如,数据流所传输的数据量、是否断流等等)。
应注意,数据流仅是实现原始数据提供方与数据购买方之间的数据通信的一种示例方式。原始数据提供方与数据购买方之间的数据通信也可以采用任何其他合适的方式来实现。此外,在数据提供方是标注数据提供方或数据模型提供方的情况下,数据提供方与数据购买之间的数据通信可以经由其他合适的方式(例如,数据包)来实现。
尽管未示出,但是图4中的信号流图还可以包括用于解约的相关步骤。例如,在建立数据通信之后,数据提供方400-1和/或数据购买方400-2可以向区块链网络250发送用于解除第一合约的请求。例如,在一些实施例中,当数据提供方400-1需要停工维修时,其可以考虑暂时停止提供相应的数据,且因此可以发起对第一合约的解除。在另一些实施例中,当数据购买方400-2可能需 要临时维护设备时,也可以发起合约的解除。当然,这些合约解除请求不应当违反之前发布的合约中可能存在的相关规定,例如合约期限等。此外,在另一些实施例中,当数据购买方400-2获得所需的数据之后,其也可以发起对合约的解除。
在这种情况下,区块链网络250中的一个或多个节点可以确定数据提供方400-1和/或数据购买方400-2是否满足合约解除条件。例如,针对数据购买方400-2,合约解除条件可以是数据购买方是否对数据进行了支付。针对数据提供方400-1,合约解除条件可以是数据提供方是否提供了足够的数据等。此外,还可以如前所述检查双方是否满足其他解约条件,例如合约期限等等。在满足合约解除条件的情况下,区块链网络250中的一个或多个节点可以指示数据提供方400-1和/或数据购买方400-2解除合约并断开二者之间的数据通信。例如,在前述二者之间直接建立数据通信的情况下,可以指示二者之一断开数据通信,而在数据通信经由区块链网络250来建立的情况下,可以向二者分别指示断开数据通信。
根据图4所示的实施例,通过调用在数据提供方400-1和数据购买方400-2之间签署的第一合约或可选的第二合约中的数据价值计算方法,可以根据与数据提供方400-1和/或数据购买方400-2相关的各种因素来实时地确定在二者之间传递的数据的价值。
图5是示出了根据本公开另一实施例的示例数据交易过程的消息流的示意图。图5中所示的步骤的顺序仅是示例性的而非限制性的。可以以与图5所示的顺序不同的顺序或并行地执行各个步骤,并且可选的步骤可以被省略。类似于图4,图5中所示的数据提供方500-1可以是能够提供数据的任何实体、企业等,例如但不限于是如图2和图3A~图3B所述的原始数据提供方210-1和210-2、标注数据提供方220-1至220-3和数据模型提供方230-1和230-2中任何一个;并且数据购买方500-2可以是有数据需求的任何实体、企业等,例如但不限于是如图2和图3A~图3B所述的原始数据提供方210-1和210-2、标注数据提供方220-1至220-3和数据模型提供方230-1和230-2中任何一个。
图5中的步骤S510和S510a与图4中所述的步骤S410和S410a类似。不同之处仅在于图5中的第一合约还可以包括合约创建方法,用于创建第一合 约的第一子合约。该第一子合约可以至少包括记录第一子合约标识的成员变量。通过该成员变量,相关的节点/实体/设备可以获取第一子合约。
在步骤S520处,与参照图4所述的步骤S420相似,区块链网络250通过调用第一合约或第二合约中的数据价值计算方法来实时地计算数据价值。
在步骤S530处,区块链网络250可以响应于数据价值的变化(例如,通过将步骤S520处计算的数据价值与第一合约中的原始数据价值进行比较)来调用第一合约中的合约创建方法以创建第一合约的第一子合约,将记录第一子合约的标识的成员变量添加到第一合约的子合约标识中,并且将在步骤S520处计算的数据价值包含在该第一子合约中。第一子合约可以包括合约创建方法和数据价值计算方法,以及根据第一子合约中的合约创建方法进一步创建的子合约的标识。在一些实施例中,第一子合约可以包含与第一合约相同的成员变量和成员方法。例如,下表2中示出了该第一子合约中可能包括的成员变量和成员方法。
Figure PCTCN2021119875-appb-000006
Figure PCTCN2021119875-appb-000007
表2示例第一子合约的成员表
应注意,表2中的成员变量和成员方法仅仅是示例。第一子合约可以包括比表2所示的更少、更多或其他的成员变量和成员方法。
附加地或备选地,响应于数据价值更新周期或外部事件,区块链网络250可以在步骤S540处调用第一子合约中的数据价值计算方法来计算更新后的数据价值。该更新后的数据价值可以与步骤S520处计算处的数据价值相同或不同。在更新后的数据价值与步骤S520处计算处的数据价值不同的情况下,区块链网络250可以在步骤S550处调用第一子合约中合约创建方法来创建第二子合约,并且将在步骤S530处计算的更新的数据价值包含在该第二子合约中。第二子合约包含的成员变量和成员方法可以类似于第一子合约。
步骤S520、S530中具体确定数据价值的过程可以与参考图4所示的过程相似。因此,在此不再赘述。
由此可见,第二子合约是最新创建的子合约,其包含数据的最新的价值。应理解,确定更新的数据价值和创建子合约的步骤可以响应于例如更新数据价值的周期或外部事件(例如,市场变化)来重复地执行,直到创建包含最新的数据价值的最新的子合约。
在图5的实施例中,在步骤S555处,数据购买方500-2签署最新的子合约(即,第二子合约)。
在步骤S560处,在数据提供方500-1与数据购买方500-2之间进行数据通信。该数据通信例如可以通过由区块链网络250调用第一合约中的数据传输方法来实现。
在数据提供方与多个数据购买方进行数据通信的情况下,不同的数据购买方可以根据其需要数据的时间签署不同的合约(例如,第一合约、第一子合约或第二子合约等)。例如,第一数据购买方可能签署了第一合约,并且根据第一合约中的数据价值计算方法来处理相关的数据。在区块链网络250已经响应于例如更新数据价值的周期或其他外部事件而创建了第一子合约的情况下,具有数据需求的另一数据购买方可以签署第一子合约,并且根据第一合约中的数 据价值计算方法来处理相关的数据。这样,区块链网络250可以基于时间来创建不同的子合约,并依据该子合约来约束数据提供方与数据购买方之间的数据通信。
与参照图4描述的实施例类似,图5的实施例也可以包含相应的解约步骤。
图6是示出了根据本公开另一实施例的示例数据交易过程的消息流的示意图。图6中所示的步骤的顺序仅是示例性的而非限制性的。可以以与图6所示的顺序不同的顺序或并行地执行各个步骤,并且可选的步骤可以被省略。图6中所示的数据提供方600-1可以是能够提供数据的任何实体、企业等,例如但不限于是如图2和图3A~图3B所述的原始数据提供方210-1和210-2、标注数据提供方220-1至220-3和数据模型提供方230-1和230-2中任何一个;并且数据购买方600-2可以是有数据需求的任何实体、企业等,例如但不限于是如图2和图3A~图3B所述的原始数据提供方210-1和210-2、标注数据提供方220-1至220-3和数据模型提供方230-1和230-2中任何一个。
在步骤S610处,数据提供方600-1可以向区块链网络250发布第一合约。该第一合约可以是参考图4的实施例所述的第一合约,或参照图5的实施例所述的第一合约。
可选地,在步骤610a处,数据提供方400-1可以向区块链网络250发布第二合约,例如数据价值合约,其包括用于确定数据价值的数据价值计算方法。在这种情况下,第一合约可以不包括数据价值计算方法,而是包括数据价值合约触发方法,其在被触发时使得执行该数据价值合约,以实时地计算数据的价值。
在步骤S615处,数据购买方600-2发布第三合约,该合约可以包括数据校验方法,用于对在数据提供方和数据购买方之间传输的数据进行校验。
在步骤S620a和步骤S620b中,数据提供方600-1和数据购买方600-2可以分别签署第一合约和第三合约。
尽管图6中将第一合约和可选的第二合约示为是由数据提供方600-1提供的,并且将第三合约示为是由数据购买方600-2提供的,但是本公开不限于此。以这种方式进行描述是为了使本发明更清楚。本领域技术人员容易理解,第一合约、第二合约和第三合约中的一个或多个可以备选地由数据提供方600-1和 数据购买方600-2中的任何一个来发布,并且由对应的一方来签署。
在步骤S630处,区块链网络250调用第一合约或第二合约中的数据价值计算方法来实时地计算数据价值。对数据价值的计算可以是响应于某一事件而执行的。例如,该事件可以基于时间或外部某个特定事件,如第一合约中包括的更新数据价格的周期。当该周期到期时自动触发第一合约中的数据价格计算方法。外部事件可以是具体的事件,例如股票指数大于3000点等。
确定数据价值的具体方法可以参照图4所述的方法,因此,在此不再赘述。
在步骤S640处,在数据提供方600-1与数据购买方600-2之间进行数据通信。该数据通信例如可以通过由区块链网络250调用第一合约中的数据传输方法来实现。
在数据提供方600-1与数据购买方600-2进行数据通信时,区块链网络250可以在步骤S650处调用第三合约中的数据校验方法来对数据进行校验,以确定是否满足中止条件。例如,该中止条件可以是数据精度低于某一阈值、数据种类错误、数据质量低于某一阈值、数据提供方600-1的等级低于某一阈值等等。
步骤S650可以是区块链网络250自动地或者响应于任一方的请求来执行的。
在确定满足中止条件的情况下,区块链网络250可以在步骤S660处中止数据提供方600-1与数据购买方600-2之间的数据通信。附加地或备选地,区块链网络250可以将中止通信的原因告知相应的参与方。
通过在区块链网络中发布用于数据检验的第三合约,可以在检测到数据不满足一些条件的情况下及时地中止数据的通信,避免了资源的浪费。
图7示出了根据本公开实施例的可以在数据提供方的电子设备中执行的方法700的流程图。
方法700可以包括:在步骤S710处,向区块链网络发布第一合约或签署由数据接收方向区块链网络发布的第一合约,所述第一合约包括用于触发在签署了所述第一合约的数据发送方和数据接收方之间传输数据的第一方法、以及用于触发确定所述数据的价值的第二方法
方法700还可以包括:在步骤S720处,根据所述第一合约,向所述数据 接收方发送所述数据。
在一些实施例中,第一合约还包括合约创建方法,该合约创建方法用于创建所述第一合约的第一子合约,所述第一合约包括记录第一子合约标识的成员变量。在该实施例中,方法700还可以包括(未示出):当价值计算方法执行完成后,调用合约创建方法创建第一合约的第一子合约,所述第一子合约包括所述价值计算方法执行完成后更新的数据价值。
图8示出了根据本公开实施例的可以在数据接收方的电子设备中执行的方法800的流程图。
方法800可以包括:在步骤S810处,向区块链网络发布第一合约或签署由数据发送方向区块链网络发布的第一合约,所述第一合约包括用于触发在签署了所述第一合约的数据发送方和数据接收方之间传输数据的第一方法、以及用于触发确定所述数据的价值的第二方法。
方法800还可以包括:根据所述第一合约,从所述数据发送方接收所述数据。
图9是示出了根据本公开实施例的用于数据通信的电子设备900(例如,图2~图6中所示的任一参与方的电子设备)的硬件的示意布置图。硬件布置900可包括处理器或控制器906(例如,数字信号处理器(DSP)、中央处理单元(CPU)等)。处理器906可以是用于执行本文描述的流程的不同动作的单一处理单元或者是多个处理单元。布置900还可以包括用于从其他实体接收信号的输入单元902、以及用于向其他实体提供信号的输出单元904。输入单元902和输出单元904可以被布置为单一实体或者是分离的实体。
此外,布置900可以包括具有非易失性或易失性存储器形式的至少一个可读存储介质908,例如是电可擦除可编程只读存储器(EEPROM)、闪存、和/或硬盘驱动器。可读存储介质908包括计算机程序910,该计算机程序910包括代码/计算机可读指令,其在由布置900中的处理器909执行时使得硬件布置900和/或包括硬件布置900在内的设备可以执行例如上面结合图4~6所描述的流程及其任何变形。
计算机程序910可被配置为具有例如计算机程序模块910A和910B架构的计算机程序代码。因此,在例如数据提供方中使用硬件布置900时的示例实 施例中,布置900的计算机程序中的代码可包括:模块910A,用于向区块链网络发布第一合约或签署由数据接收方向区块链网络发布的第一合约,所述第一合约包括用于触发在签署了所述第一合约的数据发送方和数据接收方之间传输数据的第一方法、以及用于触发确定所述数据的价值的第二方法;模块910B,用于根据所述第一合约,向所述数据接收方发送所述数据。
此外,在另一些实施例中,在例如数据购买方中使用硬件布置900时的示例实施例中,布置900的计算机程序中的代码可包括:模块910C,向区块链网络发布第一合约或签署由数据发送方向区块链网络发布的第一合约,所述第一合约包括用于触发在签署了所述第一合约的数据发送方和数据接收方之间传输数据的第一方法、以及用于触发确定所述数据的价值的第二方法;以及模块910D,根据所述第一合约,从所述数据发送方接收所述数据。
计算机程序模块实质上可以执行图4~6中所示出的流程中的各个动作,以模拟数据提供方和/或数据购买方。换言之,当在处理器或控制器909中执行不同计算机程序模块时,它们可以对应于模拟数据提供方和/或数据购买方中的不同单元或模块。
尽管上面结合图9所公开的实施例中的代码手段被实现为计算机程序模块,其在处理器906中执行时使得硬件布置900执行上面结合图4~6所描述的动作,然而在备选实施例中,该代码手段中的至少一项可以至少被部分地实现为硬件电路。
处理器可以是单个CPU(中央处理单元),但也可以包括两个或更多个处理单元。例如,处理器可以包括通用微处理器、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(ASIC))。处理器还可以包括用于缓存用途的板载存储器。计算机程序可以由连接到处理器的计算机程序产品来承载。计算机程序产品可以包括其上存储有计算机程序的计算机可读介质。例如,计算机程序产品可以是闪存、随机存取存储器(RAM)、只读存储器(ROM)、EEPROM,且上述计算机程序模块在备选实施例中可以用电子设备内的存储器的形式被分布到不同计算机程序产品中。
其至此已经结合一些实施例对本公开进行了描述。应该理解,本领域技术人员在不脱离本公开的精神和范围的情况下,可以进行各种其它的改变、替换 和添加。因此,本公开的范围不局限于上述特定实施例,而应由所附权利要求所限定。

Claims (25)

  1. 一种在数据发送方的电子设备处执行的用于数据通信的方法,包括:
    向区块链网络发布第一合约或签署由数据接收方向区块链网络发布的第一合约,所述第一合约包括用于触发在签署了所述第一合约的数据发送方和数据接收方之间传输数据的第一方法、以及用于触发确定所述数据的价值的第二方法;以及
    根据所述第一合约,向所述数据接收方发送所述数据。
  2. 根据权利要求1所述的方法,其中,所述第二方法是用于确定所述数据的价值的价值计算方法。
  3. 根据权利要求1所述的方法,其中,所述第二方法是用于触发第二合约执行的第二合约触发方法,所述第二合约包括用于确定所述数据的价值的价值计算方法。
  4. 根据权利要求3所述的方法,其中,所述第二合约是由所述数据发送方或所述数据接收方向所述区块链网络发布的。
  5. 根据权利要求2所述的方法,其中,所述第一合约还包括合约创建方法,所述合约创建方法用于创建所述第一合约的第一子合约,所述第一合约包括记录所述第一子合约标识的成员变量。
  6. 根据权利要求5所述的方法,还包括:
    当所述价值计算方法执行完成后,调用所述合约创建方法创建所述第一合约的第一子合约,所述第一子合约包括所述价值计算方法执行完成后更新的数据价值。
  7. 根据权利要求6所述的方法,其中,所述第一子合约包括合约创建方法和价值计算方法,所述第一子合约的合约创建方法用于创建第二子合约,所述第二子合约包括所述第一子合约的所述价值计算方法执行完成后更新的数据价值。
  8. 根据权利要求1-7中任一项所述的方法,其中,所述数据是原始数据、标注数据和数据模型之一,且所述第一合约是原始数据合约、数据标注合约和数据模型合约中的相应一个合约。
  9. 根据权利要求8所述的方法,其中,在所述数据是原始数据的情况下,所述第一方法是用于触发所述数据发送方发送所述原始数据的获取原始数据方法。
  10. 根据权利要求9所述的方法,其中,所述价值计算方法包括以下至少一项操作:
    根据所述原始数据的精度来调整所述原始数据的价值;
    根据所述原始数据的范围来调整所述原始数据的价值;以及
    根据所述原始数据的质量来调整所述原始数据的价值。
  11. 根据权利要求10所述的方法,其中,根据所述原始数据的精度来调整所述原始数据的价值的操作包括:
    通过比较所述原始数据的当前数据精度和参考数据精度来调整所述原始数据的价值。
  12. 根据权利要求10所述的方法,其中,根据所述原始数据的质量来调整所述原始数据的价值的操作包括以下至少一项操作:
    通过调用与所述第一合约相关联的数据标注合约中的标注数据方法,来确定所述原始数据与相应的标注数据之间的一致性,并进而据此调整所述原始数据的价值;以及
    通过调用与所述第一合约相关联的数据模型合约中的启动模型方法,来确定所述原始数据与相应的经数据模型处理的数据之间的一致性,并进而据此调整所述原始数据的价值。
  13. 根据权利要求8所述的方法,其中,在所述数据是标注数据的情况下,所述第一方法是用于触发所述数据发送方发送所述标注数据的获取标注数据方法。
  14. 根据权利要求13所述的方法,其中,所述价值计算方法包括用于以下至少一项的操作:
    根据所述标注数据的标注方等级来调整所述标注数据的价值;
    根据所述标注数据的种类来调整所述标注数据的价值;以及
    根据所述标注数据的质量来调整所述标注数据的价值。
  15. 根据权利要求14所述的方法,其中,根据所述标注数据的标注方等 级来调整所述标注数据的价值的操作包括:
    通过比较所述标注数据的当前标注方等级和参考标注方等级来调整所述标注数据的价值。
  16. 根据权利要求14所述的方法,其中,根据所述标注数据的种类来调整所述标注数据的价值的操作包括:
    通过确定所述标注数据和与其相对应的原始数据之间的语义关系来调整所述标注数据的价值。
  17. 根据权利要求14所述的方法,其中,根据所述标注数据的质量来调整所述标注数据的价值的操作包括:
    通过调用与所述第一合约相关联的数据模型合约中的启动模型方法,来确定所述标注数据与对应于所述标注数据的原始数据在经数据模型处理后的数据之间的一致性,并进而据此调整所述标注数据的价值。
  18. 根据权利要求8所述的方法,其中,在所述数据是数据模型的情况下,所述第一方法是用于触发所述数据发送方发送所述数据模型的获取模型数据方法或启动模型方法。
  19. 根据权利要求18所述的方法,其中,所述价值计算方法包括以下操作:
    通过比较所述模型数据的当前模型精度和参考模型精度来调整所述模型数据的价值。
  20. 根据权利要求18所述的方法,其中,所述价值计算方法包括以下操作:
    通过调用与所述第一合约相对应的原始数据合约的获取数据方法,来获取原始数据;
    通过调用与所述第一合约相对应的数据标注合约的标注数据方法,来获取与所述原始数据相对应的标注数据;
    针对所述原始数据使用所述数据模型来计算得到结果数据;
    将所述结果数据与所述标注数据进行比较,以确定所述数据模型的模型精度;以及
    根据所述数据模型的模型精度来调整所述数据模型的价值。
  21. 一种数据发送方处使用的第一电子设备,包括:
    处理器;以及
    存储器,存储指令,所述指令在由所述处理器执行时使得所述第一电子设备执行根据权利要求1~20中任一项所述的方法。
  22. 一种在数据接收方的电子设备处执行的用于数据通信的方法,包括:
    向区块链网络发布第一合约或签署由数据发送方向区块链网络发布的第一合约,所述第一合约包括用于触发在签署了所述第一合约的数据发送方和数据接收方之间传输数据的第一方法、以及用于触发确定所述数据的价值的第二方法;以及
    根据所述第一合约,从所述数据发送方接收所述数据。
  23. 根据权利要求22所述的方法,其中,所述第二方法是用于确定所述数据的价值的价值计算方法,并且其中,所述第一合约还包括合约创建方法,所述合约创建方法用于创建所述第一合约的第一子合约,所述第一合约包括记录所述第一子合约标识的成员变量。
  24. 根据权利要求23所述的方法,还包括:
    当所述价值计算方法执行完成后,调用所述合约创建方法创建所述第一合约的第一子合约,所述第一子合约包括所述价值计算方法执行完成后更新的数据价值。
  25. 一种数据接收方处使用的第二电子设备,包括:
    处理器;以及
    存储器,存储指令,所述指令在由所述处理器执行时使得所述第一电子设备执行根据权利要求22-24中任一项所述的方法。
PCT/CN2021/119875 2020-09-30 2021-09-23 数据通信的方法和电子设备 WO2022068665A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US18/246,802 US20230359774A1 (en) 2020-09-30 2021-09-23 Method for data communication and electronic device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202011069670.0 2020-09-30
CN202011069670.0A CN114119216A (zh) 2020-09-30 2020-09-30 数据通信的方法和电子设备

Publications (1)

Publication Number Publication Date
WO2022068665A1 true WO2022068665A1 (zh) 2022-04-07

Family

ID=80360710

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/119875 WO2022068665A1 (zh) 2020-09-30 2021-09-23 数据通信的方法和电子设备

Country Status (3)

Country Link
US (1) US20230359774A1 (zh)
CN (1) CN114119216A (zh)
WO (1) WO2022068665A1 (zh)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150379510A1 (en) * 2012-07-10 2015-12-31 Stanley Benjamin Smith Method and system to use a block chain infrastructure and Smart Contracts to monetize data transactions involving changes to data included into a data supply chain.
CN108665261A (zh) * 2018-04-20 2018-10-16 杭州环普数据技术有限公司 一种去中心化的物联网数据交易系统
CN108681811A (zh) * 2018-05-09 2018-10-19 北京慧听科技有限公司 一种去中心化的数据生态系统
CN108985909A (zh) * 2018-07-03 2018-12-11 西安电子科技大学 基于区块链技术的数据交易方法及系统
CN109615431A (zh) * 2018-12-13 2019-04-12 普元信息技术股份有限公司 大数据背景下实现数据资产感知及定价功能的系统及其方法
CN110210862A (zh) * 2019-06-11 2019-09-06 北京艾摩瑞策科技有限公司 一种业务数据的交易方法及其设备
CN110223064A (zh) * 2019-05-27 2019-09-10 四川大学 一种基于区块链的不可否认安全数据传输方法
CN111324661A (zh) * 2020-01-19 2020-06-23 腾讯科技(深圳)有限公司 基于区块链的用户合作方法、设备及介质
CN111369234A (zh) * 2019-12-19 2020-07-03 山东爱城市网信息技术有限公司 一种基于区块链的同质化权益交易方法、设备及介质

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150379510A1 (en) * 2012-07-10 2015-12-31 Stanley Benjamin Smith Method and system to use a block chain infrastructure and Smart Contracts to monetize data transactions involving changes to data included into a data supply chain.
CN108665261A (zh) * 2018-04-20 2018-10-16 杭州环普数据技术有限公司 一种去中心化的物联网数据交易系统
CN108681811A (zh) * 2018-05-09 2018-10-19 北京慧听科技有限公司 一种去中心化的数据生态系统
CN108985909A (zh) * 2018-07-03 2018-12-11 西安电子科技大学 基于区块链技术的数据交易方法及系统
CN109615431A (zh) * 2018-12-13 2019-04-12 普元信息技术股份有限公司 大数据背景下实现数据资产感知及定价功能的系统及其方法
CN110223064A (zh) * 2019-05-27 2019-09-10 四川大学 一种基于区块链的不可否认安全数据传输方法
CN110210862A (zh) * 2019-06-11 2019-09-06 北京艾摩瑞策科技有限公司 一种业务数据的交易方法及其设备
CN111369234A (zh) * 2019-12-19 2020-07-03 山东爱城市网信息技术有限公司 一种基于区块链的同质化权益交易方法、设备及介质
CN111324661A (zh) * 2020-01-19 2020-06-23 腾讯科技(深圳)有限公司 基于区块链的用户合作方法、设备及介质

Also Published As

Publication number Publication date
US20230359774A1 (en) 2023-11-09
CN114119216A (zh) 2022-03-01

Similar Documents

Publication Publication Date Title
US20230119636A1 (en) Blockchain methods, nodes, systems and products
KR102573433B1 (ko) 블록체인을 이용한 에너지 거래 플랫폼 및 그 방법
CN110766406B (zh) 资源转移方法、资源转移装置、存储介质及电子设备
JP5260567B2 (ja) クラウドコンピューティングシステム
WO2019227449A1 (zh) 一种二手车交易方法及服务器
JP2004295880A (ja) デジタルメディアクリアリングプラットフォーム
CN111899107B (zh) 一种基于区块链智能合约的科技服务交易方法
WO2018032762A1 (zh) 一种数字资产按策略交易的方法及系统
US20220337439A1 (en) Rights-enabled tokens for blockchain applications
TW202009837A (zh) 租車方法及系統
TW201804395A (zh) 基於實體資產授信虛擬貨幣之系統及其方法
CN111656344A (zh) 权利管理方法、装置及系统、存储介质
CN112712420A (zh) 一种基于区块链的绿色证书交易系统
CN111506932A (zh) 一种区块链算力上链实现方法
Gupta et al. TrailChain: Traceability of data ownership across blockchain-enabled multiple marketplaces
CN112613877A (zh) 应用于区块链网络的智能合约触发方法、装置及相关设备
CN101261715A (zh) 一种基于博客进行在线交易的方法及系统
CN114066456B (zh) 一种基于erc1155的跨链nft转移和结算系统
US20220343325A1 (en) Assetization of hashtags
CN111260364B (zh) 一种基于区块链的可扩展快速支付方法及系统
CN111833059B (zh) 一种数据银行中的数据资产管理方法和数据银行系统
WO2022068665A1 (zh) 数据通信的方法和电子设备
WO2023201360A2 (en) Method, controller, and computer-readable medium for replacement of a cancelled repeating transfer data structure on a distributed transfer network
US20230299983A1 (en) Systems and methods for facilitating blockchain operations based on network congestion
CN112766965B (zh) 一种基于智能合约的隐私保护数据共享方法

Legal Events

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

Ref document number: 21874326

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 1205A DATED 07/07/2023)

122 Ep: pct application non-entry in european phase

Ref document number: 21874326

Country of ref document: EP

Kind code of ref document: A1