CN114896635A - Data processing method and device, electronic equipment and storage medium - Google Patents

Data processing method and device, electronic equipment and storage medium Download PDF

Info

Publication number
CN114896635A
CN114896635A CN202210473020.5A CN202210473020A CN114896635A CN 114896635 A CN114896635 A CN 114896635A CN 202210473020 A CN202210473020 A CN 202210473020A CN 114896635 A CN114896635 A CN 114896635A
Authority
CN
China
Prior art keywords
task
component
result
chain
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210473020.5A
Other languages
Chinese (zh)
Inventor
谢桂鲁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ant Blockchain Technology Shanghai Co Ltd
Original Assignee
Ant Blockchain Technology Shanghai Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ant Blockchain Technology Shanghai Co Ltd filed Critical Ant Blockchain Technology Shanghai Co Ltd
Priority to CN202210473020.5A priority Critical patent/CN114896635A/en
Publication of CN114896635A publication Critical patent/CN114896635A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • G06F21/6254Protecting personal data, e.g. for financial or medical purposes by anonymising data, e.g. decorrelating personal data from the owner's identification
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Bioethics (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Security & Cryptography (AREA)
  • Finance (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Signal Processing (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • Technology Law (AREA)
  • General Business, Economics & Management (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)

Abstract

The present specification provides a data processing method, an apparatus, an electronic device, and a storage medium, which are applied to a first node device deployed with a first block chain node, where a block chain network to which the first block chain node belongs is deployed with a down-link computation contract; the method comprises the following steps: monitoring a task event aiming at a collaborative computing task generated by a calculation contract under a chain, wherein the task event records description information of at least two participant nodes corresponding to the collaborative computing task; under the condition that the first block chain link point is determined to belong to the participant node, calling a first under-link computing engine deployed by the first node equipment to execute the cooperative computing task so as to obtain a first component of an execution result corresponding to the cooperative computing task, and generating first desensitization information corresponding to the first component, wherein the first component only contains information of a part of the execution result; a first result return transaction containing first desensitization information is initiated to the down-link compute task contract by the first blockchain node.

Description

Data processing method and device, electronic equipment and storage medium
Technical Field
The embodiment of the specification belongs to the technical field of block chains, and particularly relates to a data processing method and device, an electronic device and a storage medium.
Background
The Blockchain (Blockchain) is a novel application mode of computer technologies such as distributed data storage, point-to-point transmission, a consensus mechanism, an encryption algorithm and the like. In the block chain system, data blocks are combined into a chain data structure in a sequential connection mode according to a time sequence, and a distributed account book which is not falsifiable and counterfeitable is ensured in a cryptographic mode. Because the blockchain has the characteristics of decentralization, information non-tampering, autonomy and the like, the blockchain is also paid more and more attention and is applied by people.
The block chain network can undertake a down-chain computing task defined based on the intelligent contract, and each node device where each block chain link point in the block chain network is respectively located can call a locally deployed down-chain computing engine under the guidance of an event generated by the intelligent contract to realize the down-chain computing task. For a cooperative computing task, that is, a downlink computing task requiring a plurality of node devices to cooperatively complete, an execution result of the downlink computing task is in an open state after being uplinked and stored, and theoretically, the downlink computing task can be queried and obtained by any third party without obtaining permission of a related participant of the cooperative computing task, so that a risk of data leakage exists, and the related participant of the cooperative computing task cannot know or control a data user who needs to obtain the corresponding execution result, which is harmful to the data use rights of the related participant of the cooperative computing task.
Disclosure of Invention
The invention aims to provide a data processing method, a data processing device, electronic equipment and a storage medium.
According to a first aspect of one or more embodiments of the present specification, a data processing method is provided, which is applied to a first node device deployed with a first blockchain node, where a blockchain network to which the first blockchain node belongs is deployed with a down-link computation contract; the method comprises the following steps:
monitoring a task event aiming at a cooperative computing task generated by the calculation contract under the chain, wherein the task event records description information of at least two participant nodes corresponding to the cooperative computing task;
under the condition that the first block link point is determined to belong to the participant node, calling a first down-link computing engine deployed by first node equipment to execute the cooperative computing task so as to obtain a first component of an execution result corresponding to the cooperative computing task, and generating first desensitization information corresponding to the first component, wherein the first component only contains information of part of the execution result;
a first result return transaction containing first desensitization information is initiated to the down-link compute task contract by a first blockchain node.
According to a second aspect of one or more embodiments of the present specification, there is provided a data processing method applied to a first blockchain node, a blockchain network to which the first blockchain node belongs being deployed with a down-link computation contract; the method comprises the following steps:
calling the under-chain computation contract to execute the transaction corresponding to the under-chain computation task so as to generate a task event aiming at the collaborative computation task, wherein the task event records the description information of at least two participant nodes corresponding to the collaborative computation task;
receiving a first result return transaction which is initiated by a first participant node device deployed with the participant node and contains first desensitization information, calling the offline computation contract to execute the first result return transaction, and maintaining the first desensitization information in the offline computation contract, wherein the first desensitization information is generated by the first participant node device based on a first component of an execution result corresponding to the collaborative computation task, and the first component is obtained by calling a first offline computation engine deployed by the first participant node device to execute the collaborative computation task under the condition that the first participant node device monitors the task event and determines that the first participant node device is deployed with the participant node, and the first component only contains part of information of the execution result;
receiving a result use transaction initiated by a data user aiming at the execution result, calling the chain-down computing contract to execute the result use transaction to generate a result use event recorded with the identity information of the data user and the description information of the execution result, wherein the result use event is used for enabling a first participant node device to provide a first component element for the data user under the condition that the result use event is monitored and the data user is determined to have the use authority of the first component element of the execution result.
According to a third aspect of one or more embodiments of the present specification, there is provided a data processing apparatus, which is applied to a first node device in which a first blockchain node is deployed, wherein a blockchain network to which the first blockchain node belongs is deployed with a down-link computation contract; the device comprises:
the event monitoring unit is used for monitoring a task event aiming at a collaborative computing task and generated by the calculation contract under the chain, and the task event records description information of at least two participant nodes corresponding to the collaborative computing task;
the task execution unit is used for calling a first under-link computing engine deployed by first node equipment to execute the collaborative computing task to acquire a first component of an execution result corresponding to the collaborative computing task and generate first desensitization information corresponding to the first component under the condition that the first block link point is determined to belong to the participant node, wherein the first component only contains information of part of the execution result;
and the result returning unit is used for initiating a first result returning transaction containing first desensitization information to the calculation task contract under the chain through the first block chain node.
According to a fourth aspect of one or more embodiments herein, there is provided a data processing apparatus applied to a first blockchain node, a blockchain network to which the first blockchain node belongs being deployed with a down-link computation contract; the device comprises:
the event generation unit is used for calling the under-chain computation contract to execute the transaction corresponding to the under-chain computation task so as to generate a task event aiming at the collaborative computation task, and the task event records the description information of at least two participant nodes corresponding to the collaborative computation task;
a result maintenance unit, configured to receive a first result return transaction containing first desensitization information initiated by a first participant node device deployed with the participant node, invoke the offline computation contract to execute the first result return transaction, and maintain the first desensitization information in the offline computation contract, where the first desensitization information is generated by the first participant node device based on a first component of an execution result corresponding to the collaborative computation task, the first component is obtained by the first participant node device invoking a first offline computation engine deployed by the first participant node device to execute the collaborative computation task when the first participant node device monitors the task event and determines that the participant node is deployed by itself, and the first component only contains information of a part of the execution result;
a result using unit, configured to receive a result use transaction initiated by a data user for the execution result, invoke the chain-down computation contract to execute the result use transaction to generate a result use event recorded with identity information of the data user and description information of the execution result, where the result use event is used to enable a first participant node device to provide a first component to the data user if the result use event is monitored and it is determined that the data user has a usage right of the first component of the execution result.
According to a fifth aspect of one or more embodiments herein, there is provided an electronic device, comprising:
a processor;
a memory for storing processor-executable instructions;
wherein the processor implements the method according to the first aspect or the second aspect by executing the executable instructions.
According to a sixth aspect of one or more embodiments of the present description, there is provided a computer readable storage medium having stored thereon computer instructions which, when executed by a processor, implement the steps of the method according to the first or second aspect.
In the embodiment of the present specification, by monitoring a task event for a collaborative computing task generated by a computation contract under a chain, each node device deployed with a participant node can execute the collaborative computing task to respectively obtain a part of constituent elements of an execution result corresponding to the collaborative computing task, and then chain certificating desensitization information obtained by desensitizing the constituent elements to the computation contract under the chain, so that the computation contract under the chain does not directly maintain the execution result in a plaintext form. Meanwhile, for those data users who need to obtain a complete execution result, the constituent elements of the execution result need to be obtained from each node device participating in the execution of the collaborative computing task before being integrated into the execution result, so that the participants of the collaborative computing task can clearly master the authorization object of the execution result and flexibly control the authorization range of the execution result, and the data use rights and interests of the relevant participants of the collaborative computing task are guaranteed.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present disclosure, the drawings needed to be used in the description of the embodiments will be briefly introduced below, and it is obvious that the drawings in the following description are only some embodiments described in the present disclosure, and it is obvious for a person skilled in the art to obtain other drawings based on these drawings without inventive labor.
Fig. 1 is a flowchart of a data processing method according to an exemplary embodiment.
FIG. 2 is a flow chart of another data processing method provided by an exemplary embodiment.
Fig. 3 is a schematic view of a data processing method according to an exemplary embodiment.
Fig. 4 is a schematic structural diagram of an apparatus according to an exemplary embodiment.
Fig. 5 is a block diagram of a data processing apparatus according to an example embodiment.
FIG. 6 is a block diagram of another data processing apparatus provided in an exemplary embodiment.
Detailed Description
In order to make those skilled in the art better understand the technical solutions in the present specification, the technical solutions in the embodiments of the present specification will be clearly and completely described below with reference to the drawings in the embodiments of the present specification, and it is obvious that the described embodiments are only a part of the embodiments of the present specification, and not all of the embodiments. All other embodiments obtained by a person skilled in the art based on the embodiments in the present specification without any inventive step should fall within the scope of protection of the present specification.
Fig. 1 is a flowchart of a data processing method according to an exemplary embodiment. The method is applied to first node equipment with a first block chain node, and a block chain network to which the first block chain node belongs is provided with a calculating contract under a chain; the method comprises the following steps:
s102: and monitoring a task event aiming at a cooperative computing task generated by the calculation contract under the chain, wherein the task event records description information of at least two participant nodes corresponding to the cooperative computing task.
In this embodiment of the present specification, a down-link computation contract is an on-link bearer for carrying down-link computation tasks, and a number of subtasks included in the down-link computation contract are defined in the down-link computation contract, and are used to describe a data flow direction in a down-link computation task and a computation cooperation process of each node device. Since the sub-link computation contract is deployed on the blockchain network, it is defined that the participant nodes of the sub-link computation task defined by the sub-link computation contract do not exceed the scope of each blockchain node in the blockchain network. Obviously, a plurality of calculation contracts under the chain can be deployed in the same block chain network, and the number and the performance of the participating party nodes involved in different calculation contracts under the chain can be flexibly configured, so that the deployment of the calculation tasks under the chain with different task types, task requirements and task scales can be realized depending on the same block chain network.
To illustrate how a computation contract under a chain directs to perform its defined computation tasks under the chain, the logic for performing the computation tasks under the chain will be briefly described below by the operation of a typical computation contract under the chain. A user may generate code for a calculation contract under a chain through a visualization contract orchestration system and deploy the calculation contract under the chain in a blockchain network, such that the calculation contract under the chain defines a workflow for a type of calculation task under the chain, which is embodied as a number of subtasks with an execution dependency order. After the calculation contract under the chain is successfully deployed, a user authorized to call the calculation contract under the chain can create and start a calculation task under the chain by initiating a task creation transaction to the calculation contract under the chain, the calculation contract under the chain can correspondingly create a task instance belonging to the calculation task under the chain of an initiator user after receiving the task creation transaction, and the task instance maintains the task completion state of the calculation task under the chain, which is specifically embodied as the task completion state of each subtask under the calculation task under the chain. After the calculation contract under the chain responds to the task creation transaction and generates a corresponding task instance, a first subtask corresponding to the instance is further triggered to be executed, the calculation contract under the chain is embodied to generate an event containing a participant node of the first subtask, each block chain node in the block chain network can monitor the event, and the node equipment where the block chain link point of the participant node which is judged to belong to the first subtask further calls the chain lower calculation resource and/or the chain lower storage resource which are matched with the first subtask to execute the first subtask under the chain, and finally, the node equipment where the participant node is located can further initiate a result carrying the execution result of the first subtask to the calculation contract under the chain to return the transaction after the execution is completed, so that the calculation contract under the chain updates the task completion state of the corresponding task instance, for example, when the execution result of the first subtask is that the execution is successful, the under-chain computation contract marks the task completion status of the first subtask in the corresponding task instance as completed, so that the execution of the next subtask is triggered according to the predefined dependency order of each subtask included in the under-chain computation task, and then an event including the description information of the participant node of the next subtask is generated for each block link node in the block chain network to monitor, and the subsequent process is similar to the process for processing the first subtask. Therefore, a cycle of 'updating the task completion state of the calculation contract under the chain → generating the subtask event under the calculation contract under the chain → monitoring the subtask event by the block link point and executing the subtask by the appointed node equipment → sending the result of starting the task to the calculation contract under the chain by the node equipment to return the transaction → updating the task completion state of the calculation contract under the chain' is formed, and the calculation task under the chain corresponding to the task example is determined to be executed and completed under the condition that the task completion states of all the subtasks in the task example in the calculation contract under the chain are completed.
It is not difficult to find that the tasks executed in the execution process of the under-chain computing task only include creating task instances, receiving subtask results, subtask scheduling and subtask issuing such scheduling tasks, and actually, actual tasks defined and required to be executed by the under-chain computing task, such as data computing, data transferring and data storing, are not really executed, and the tasks consuming a large amount of resources are scheduled to be executed under the chain corresponding to each node device, so that a distributed computing based on a block chain is realized through an event monitoring mechanism and a transaction return mechanism, the under-chain computing task is anchored by an under-chain computing contract on the block chain, the under-chain resources are fully utilized on the premise of ensuring that the task execution full flow can be tracked, and meanwhile, reliable information interaction and cooperative computing are realized among different node devices by means of the block chain, in addition, since the calculation tasks under the chain are defined in a contract form and the design of the calculation tasks under the chain is not subject to the toggle of the resources on the chain, the method means that the on-chain cooperation mode can be expanded through the resources under the chain by designing different calculation contracts under the chain to meet different actual requirements.
In an embodiment of the present specification, the calculation contract under the chain maintains a task completion state corresponding to a calculation task under the chain, where the task completion state is used to describe a completion state of each subtask included in the calculation task under the chain; when the collaborative computing task belongs to a subtask of the calculation task under the chain, the monitoring a task event generated by the calculation contract under the chain and aiming at the collaborative computing task includes: and monitoring the task event aiming at the cooperative computing task, which is generated by the under-chain computing contract under the condition that the task completion state meets the execution condition corresponding to the cooperative computing task.
In this embodiment of the present specification, a calculation task under a chain is represented as a corresponding task instance on a calculation contract under a chain, and the task completion status of the calculation task under a chain is maintained in the corresponding task instance of the calculation contract under a chain, which is specifically represented as the completion status of each subtask maintained in the task instance. In this embodiment of the present specification, the collaborative computing task belongs to one sub-task of the calculation task under the chain, and since the execution dependency order of each sub-task included in the calculation task under the chain is predefined, which means that the execution condition of each sub-task including the collaborative computing task is also determined, the calculation contract under the chain can further determine the collaborative computing task to be executed next according to the completion state of each sub-task included in the calculation task under the chain, so as to initiate a task event for the collaborative computing task. In an embodiment of the present specification, the entity that listens for the task event generated by the computation contract under the chain is specifically a first scheduling engine deployed on the first node device.
In an embodiment of this specification, description information of at least two participant nodes corresponding to the collaborative computing task is recorded in a task event generated by the calculation task contract under the chain and monitored by the first node device. Wherein, the description information of at least two participant nodes corresponding to the collaborative computing task of the task event record refers to the identity information of the block chain link points related to the collaborative computing task, and the first node device can determine that the description information of the at least two participant nodes contains the identification information of the self-deployed first block chain node, judging that the first block chain node to which the first node belongs to a participant node of a cooperative computing task, so that the first node equipment needs to respond and execute the cooperative computing task, and if the description information of the at least two participant nodes does not include the identification information of the first blockchain node, the first node device may determine that the first blockchain node deployed by itself does not belong to a participant node of the collaborative computing task, and then the first node device will not respond to execute the collaborative computing task. In addition, task identifiers of the calculation tasks and the collaborative calculation tasks under the chain can be recorded in the task event, so that different tasks and subtasks can be distinguished, and the accurate identifiers of subsequent result provider node equipment can be conveniently used for correctly identifying the execution results of the collaborative calculation tasks in the calculation tasks under the chain when return of results is needed to be returned for transaction, so that the contract of the calculation tasks under the chain can be used for correctly updating the completion states of the collaborative calculation tasks in the calculation tasks under the chain through the return of results for transaction, and the condition that the calculation tasks under the same chain comprise a plurality of subtasks and the calculation tasks under the chain are simultaneously created by the same user can be met. Certainly, the cooperative computing task also records operations such as computation and data transfer required to be executed by the cooperative computing task, and specifies the source of required data, and the information is used for informing the task type and the implementation mode of the cooperative computing task of each node device, so as to guide the participant node devices to execute the cooperative computing task according to the expectation of the cooperative computing task after determining the available resources.
As described above, the task completion status is updated by the under-chain computation contract in response to a transaction trigger corresponding to the under-chain computation task, where the transaction corresponding to the under-chain computation task includes a task creation transaction corresponding to the under-chain computation task, or a result return transaction initiated by any node device when any one of the subtasks is completely executed. In an embodiment of the present specification, the calculation contract maintains a task completion status corresponding to each of one or more calculation tasks. In general, a calculation contract under a chain only defines one type of calculation task under the chain, but a plurality of task instances corresponding to the calculation task under the chain can be created, and each task instance records a task completion status corresponding to the task instance. Therefore, the plurality of task instances maintained on the calculation contract under the chain can be created by different users through respectively initiating the task creation contracts to the calculation contract under the chain, or can be created by the same user through initiating the task creation contracts for multiple times, but the task instances all have the same execution logic, namely the task types of the tasks maintained by the calculation contract under the chain are the same.
S104: and under the condition that the first block link point is determined to belong to the participant node, calling a first down-link computing engine deployed by the first node device to execute the cooperative computing task so as to obtain a first component of an execution result corresponding to the cooperative computing task, and generating first desensitization information corresponding to the first component, wherein the first component only contains information of part of the execution result.
As previously described, in the case where the first node device determines that the first block link point belongs to the participant node, when the cooperative computing task needs to be executed, the first node device queries a down-link computing engine which is deployed by the first node device and supports execution of the cooperative computing task according to a task requirement corresponding to the cooperative computing task recorded in a task event, after the first node device inquires that a locally deployed first-link down computing engine supports the execution of the cooperative computing task, the related parameters carried in the task event are carried in the calling request, and send the call request to the first down-link compute engine to instruct the first down-link compute engine to perform the collaborative compute task, the calling request also comprises description information of other down-link computing engines participating in executing the collaborative computing task.
After the cooperative computing task according to the embodiments of the present specification is executed by each of the participant node devices, each of the participant node devices does not generate a uniform execution result corresponding to the cooperative computing task, but results generated by each of the participant node devices when executing the cooperative computing task are not completely consistent, and a result generated by each of the participant node devices is only a part of information of an execution result corresponding to the cooperative computing task, where the part of information is referred to as a component of the execution result, and only all components that collect the execution result can be integrated to obtain a complete execution result, and all components of the execution result are allocated to different participant node devices to be respectively generated and maintained. For example, the participant nodes involved in the collaborative computing task include a first block chain node, a second block chain node, and a third block chain node, which are respectively deployed by a first node device, a second node device, and a third node device, and then the three node devices will generate different results after the collaborative computing task is executed, that is, the first node device will generate and maintain a first component, the second node device will generate and maintain a second component, the third node device will generate and maintain a third component, and the first component, the second component, and the third component all contain a part of information of the execution result corresponding to the collaborative computing task, and the execution result corresponding to the collaborative computing task can be obtained only by integrating the first component, the second component, and the third component.
After the first down-link computing engine finishes executing the collaborative computing task, the first node device obtains a first component of an execution result corresponding to the collaborative computing task generated by the first down-link computing engine, where the first component only includes information of a partial execution result, which means that the first node device does not obtain a complete execution result, but only holds the first component representing partial information of the execution result, and when a subsequent data user requests an execution result related to the collaborative computing task, the first node device can only provide the first component to the data user. In an embodiment of the present specification, the entity that determines whether the first block link node belongs to the participant node and calls the first downlink computing engine deployed by the first node device to execute the cooperative computing task is specifically a first scheduling engine deployed on the first node device.
In the embodiment of the present specification, the first constituent element includes: the execution result is divided to obtain plaintext division information, the execution result is encrypted to obtain encrypted result, the encrypted result is divided to obtain ciphertext division information, or the execution result is encoded to obtain encoded state result, and the encoded state result is divided to obtain encoded split information. In one case, the first component may be obtained by simply splitting the execution result in plaintext, which means that the data user directly obtains the partial execution result of the collaborative computing task after obtaining the first component; in another case, the first component may be ciphertext splitting information obtained by splitting an encryption result obtained by encrypting the execution result, in which case, the execution result is first encrypted as one encryption result, and then the first component is obtained by splitting the encryption result, which means that if the data user acquires only the first component, any information of the execution result is not revealed due to its ciphertext state (although the first component objectively includes information of the execution result, such information needs to be presented in a case where all other components of the execution result are collected together), but only if the data user acquires all components of the execution result, all components can be first spliced into a ciphertext result as a whole, and then the ciphertext result is decrypted into the execution result, therefore, the phenomenon that a data user can directly obtain a part of execution results under the condition that only part of the constituent elements are obtained but all the constituent elements cannot be obtained is avoided, and the risk of data leakage is reduced; in another case, the first component may also be code splitting information obtained by splitting a code state result obtained by coding the execution result, in which case, the execution result is first coded into one code state result, and then the first component is obtained by splitting the code state result, similar to the splitting of the encryption result, the first component in this case does not separately and directly reveal any information of the execution result, so that a phenomenon that a data user can directly obtain a part of the execution result when only a part of the components is obtained but all the components cannot be obtained is avoided, and the risk of data leakage is reduced.
After the first node device acquires the first component, desensitization is also performed on the first component to generate first desensitization information corresponding to the first component. For example, the first desensitization information may be a first encrypted component obtained by encrypting the first component, and the first encrypted component may be decrypted into the first component by the decryption key; the first desensitization information may also be a first resource address stored by the first component on the first node device, and the first node device may search for and acquire the locally stored first component through the first resource address; the first desensitization information may also be a first hash value obtained by performing a hash operation on the first component, so that the first hash value may uniquely anchor the first component, and may also be used as a search index of the first component, that is, the first node device may search for and obtain the locally stored first component through the first hash value. In an embodiment of the present specification, the entity desensitizing the first component to generate the first component is specifically a first scheduling engine deployed on the first node device.
Optionally, the first downlink computation engine is configured to: in the process of executing the collaborative computing task, acquiring first data sent by other down-link computing engines for use in the process of executing the collaborative computing task; and/or sending second data generated in the process of executing the collaborative computing task to the other computing engines so that the other computing engines use the second data in the process of executing the collaborative computing task; wherein the other compute engines include: a first offline compute engine, other than the first offline compute engine, deployed on a node device on which any of the at least two participant nodes is deployed. In this embodiment of the present specification, in a process of executing the collaborative computing task in response to a call request initiated by a first node device, a first downlink computing engine acquires first data sent by other computing engines, so as to be used in a process of executing the collaborative computing task or subsequent other subtasks; and/or sending second data generated in the process of executing the collaborative computing task to the other computing engines so that the other computing engines use the second data in the process of executing the collaborative computing task or other subsequent subtasks. In this embodiment, the first down-link computing engine may know which down-link computing engines participate in executing the collaborative computing task by calling the request, so that the first down-link computing engine may receive, during the process of executing the collaborative computing task, first data of other computing engines that are also in the process of executing the collaborative computing task, where the first data is to be used by the first down-link computing engine in the process of subsequently executing the collaborative computing task, and may send, on the other hand, the generated second data to other computing engines that are defined in the collaborative computing task and are executing the collaborative computing task and need to acquire the second data, so that the second data is used by the other computing engines in the process of subsequently executing the collaborative computing task, thereby implementing an interaction process between the down-link computing engines deployed on various different node devices defined in the collaborative computing task, to ultimately complete the collaborative computing task under the collaborative interaction of the plurality of down-chain computing engines.
S106: a first result return transaction containing first desensitization information is initiated to the down-link compute task contract by a first blockchain node.
And under the condition that the execution of the cooperative computing task is finished and a first execution result corresponding to the cooperative computing task is obtained, the first node equipment initiates a first result return transaction containing first desensitization information to the calculation contract under the chain through the first block chain node so as to update the execution result of the cooperative computing task maintained by the calculation contract under the chain.
Optionally, the calculation contract is used to: and maintaining desensitization information corresponding to each constituent element of the execution result respectively in response to a result return transaction initiated by each node device deployed with the participant node, wherein the constituent elements are used for integrating the execution result.
The calculation contract under link according to the embodiment of the present specification may respond to the result return transaction initiated by each node device and including the desensitization information corresponding to each component, so that multiple execution results are maintained simultaneously for the same collaborative calculation task, for example, three desensitization information returned by three different node devices by initiating the result return transaction are maintained simultaneously, where the desensitization information includes first desensitization information corresponding to a first component returned by a first node device, second desensitization information corresponding to a second component returned by a second node device, and third desensitization information corresponding to a third component returned by a third node device, and the execution result corresponding to the collaborative calculation task may be obtained by integrating the first component, the second component, and the third component. Since all the components of the execution result of the cooperative computing task are allocated to the respective participant node apparatuses and each component corresponds to one desensitization information, the execution result of the cooperative computing task is considered to have completed the uplink credentialing process in the case that the number of the received desensitization information reaches the number of the participant nodes in the downlink computing contract. Since the calculation contract under the chain records desensitization information corresponding to all the components of the execution result, the execution result can be anchored completely on the chain so as to serve as an index to instruct the data consumer to acquire the components related to the corresponding execution result or to verify the integrity of the components.
As described above, after the first node device initiates the first result return transaction containing the first desensitization information to the calculation contract under the chain, the calculation contract under the chain may update the task completion status corresponding to the calculation task under the chain maintained by the calculation contract under the chain in response to the first result return transaction, so as to maintain the first desensitization information in the calculation contract under the chain, so that in the case that the calculation contract under the chain approximately obtains and maintains the desensitization information corresponding to all the components of the execution result corresponding to the collaborative calculation task, the next subtask that should be executed next may be further determined according to the execution dependency order of the subtasks in the calculation task under the chain, and a task event for the next subtask is generated. In an embodiment of the present specification, the entity that initiates the first result return transaction to the down-link computation contract is specifically a first scheduling engine deployed on the first node device.
The calculation engine under link in the embodiments of the present specification refers to a service or a subsystem that provides calculation capability under link for a node device, and one calculation engine under link can often undertake one or more types of calculation tasks, which is reflected in support of calculation requirements corresponding to related subtasks. For example, in embodiments of the present specification, a first down-link compute engine may be able to support performing the collaborative computing task.
In the embodiment of the present specification, by monitoring a task event for a collaborative computing task generated by a computation contract under a chain, each node device deployed with a participant node can execute the collaborative computing task to respectively obtain a part of constituent elements of an execution result corresponding to the collaborative computing task, and then chain certificating desensitization information obtained by desensitizing the constituent elements to the computation contract under the chain, so that the computation contract under the chain does not directly maintain the execution result in a plaintext form. Meanwhile, for those data users who need to obtain a complete execution result, the constituent elements of the execution result need to be obtained from each node device participating in the execution of the collaborative computing task before being integrated into the execution result, so that the participants of the collaborative computing task can clearly master the authorization object of the execution result and flexibly control the authorization range of the execution result, and the data use rights and interests of the relevant participants of the collaborative computing task are guaranteed.
Optionally, the method further includes:
in response to a data request for a first component received from a data consumer, the data request being initiated by the data consumer if the first node device from which the first component node originates is obtained by querying the catenated computation contract;
and if the data user is determined to have the use authority of the first component, providing authorization information corresponding to the first component to the data user, wherein the authorization information is used for the data user to acquire the first component.
In this embodiment of the present specification, after the first node device maintains the first desensitization information in the offline computation contract through the first result return transaction, the data user may query the first desensitization information corresponding to the collaborative computing task and the first node device from which the first desensitization information originates through the offline computation contract, and thus, the data user may initiate a data request for the collaborative computing task to the first node device. And after receiving the data request, the first node device determines, through indication information (identification information of the collaborative computing task and/or first desensitization information) carried by the first node device, that the data user wishes to obtain a relevant execution result of the collaborative computing task, and because the first node device only maintains the first component of the execution result, in a case that the data user is determined to have the use authority of the first component (for example, a digital signature corresponding to the data request is verified to determine the identity of the data user, and then in a case that the identity is in a white list corresponding to the collaborative computing task, the data user is determined to have the use authority of the first component), authorization information corresponding to the first component is provided to the data user. Similarly, the data provider may send a data request for the collaborative computing task to all the participant node devices in which the participant nodes are deployed, so as to obtain all the components that obtain the execution result corresponding to the collaborative computing task, and thus integrate all the components into the execution result.
In this specification embodiment, the first desensitization information is a first resource address of the first component on the first node device, the data request includes the first resource address as first component index information, and the authorization information is the first component; or the first desensitization information is a first hash value obtained by performing hash operation on the first component, the data request includes the first hash value serving as index information of the first component, and the authorization information is the first component; alternatively, the first desensitization information is a first encryption element obtained by encrypting the first component, and the authorization information is a decryption key for decrypting the first encryption element into the first component. Under the condition that the first desensitization information is the first resource address, after acquiring the first desensitization information as the first resource address, the data user carries the first resource address in a data request sent to the first node device to instruct the first node device to acquire a first component according to the first resource address and provide the first component to the data user; under the condition that the first desensitization information is the first hash value, after the data user acquires the first desensitization information, the first hash value is carried in a data request sent to the first node device to instruct the first node device to acquire a first constituent element according to the first hash value and provide the first constituent element to the data user; under the condition that the first desensitization information is the first encryption element, after the data user acquires the first desensitization information, the task number of the cooperative computing task is carried in the data request sent to the first node device, so that the first node device is instructed to acquire the first component element corresponding to the execution result corresponding to the cooperative computing task according to the task number and provide the first component element to the data user.
The method for a data consumer to obtain a first node device from which a first component originates according to an embodiment of the present specification may include: the data user side directly monitors a result return event which is generated by the calculation contract under the chain and responds to the first result return transaction and records the first desensitization information and the first node equipment of the source of the first desensitization information; or, the data user sends the inquiry transaction aiming at the first desensitization information to the calculation contract under the chain, and then monitors the inquiry event which is generated by the calculation contract under the chain and is recorded with the first desensitization information and the first node device from which the first desensitization information is sourced, wherein the inquiry event is generated by the calculation contract under the chain and is recorded in response to the inquiry transaction. The data user according to the embodiments of the present disclosure may be any node device, blockchain platform, client of blockchain platform, external server, or other third party, where any blockchain node in the blockchain network is deployed.
Optionally, the method further includes: determining that a first block link point belongs to the participant node when the description information of the at least two participant nodes includes identification information of a first block link node. As described above, the description information of at least two participant nodes of the cooperative computing task is recorded in the task event for the cooperative computing task generated by the calculation contract under the chain monitored by the first node device, and the first node device may determine whether the first block link point belongs to the participant node by comparing the description information serving as the block link node identity information with the identification information of the first block link node serving as the first block link node identity information.
FIG. 2 is a flow chart of another data processing method provided by an exemplary embodiment. The method is applied to a first block chain node, and a block chain network to which the first block chain node belongs is deployed with a down-chain calculation contract; the method comprises the following steps:
s202: and calling the under-chain computing contract to execute the transaction corresponding to the under-chain computing task so as to generate a task event aiming at the cooperative computing task, wherein the task event records the description information of at least two participant nodes corresponding to the cooperative computing task.
As described above, the transaction corresponding to the calculation task under the chain includes a task creation transaction corresponding to the calculation task under the chain, or a result return transaction initiated by any node device when the execution of any subtask in the subtasks is completed.
S204: receiving a first result return transaction which is initiated by a first participant node device and contains first desensitization information, calling the offline computation contract to execute the first result return transaction, and maintaining the first desensitization information in the offline computation contract, wherein the first desensitization information is generated by the first participant node device based on a first component of an execution result corresponding to the collaborative computation task, the first component is obtained by calling a first offline computation engine deployed by the first participant node device to execute the collaborative computation task when the first participant node device monitors the task event and determines that the first participant node device is deployed by itself, and the first component only contains information of part of the execution result.
S206: receiving a result use transaction initiated by a data user aiming at the execution result, calling the chain-down computing contract to execute the result use transaction to generate a result use event recorded with the identity information of the data user and the description information of the execution result, wherein the result use event is used for enabling a first participant node device to provide a first component element for the data user under the condition that the result use event is monitored and the data user is determined to have the use authority of the first component element of the execution result.
In S206, the result usage event is further used to indicate that other participant node devices other than the first participant node device are deployed with the participant node, and when the result usage event is monitored and it is determined that the data consumer has the usage right related to the execution result, the data consumer is provided with the components of the execution result respectively maintained by the other participant node devices.
In an embodiment of the present specification, the data consumer may obtain some or all of the components of the execution result by initiating a result use transaction for the execution result to the calculation contract under the link.
Optionally, the first participant node device provides a first constituent element to the data consumer, including: the first participant node device sends the first component to the data consumer based on the communication address of the data consumer. In the embodiment of the present specification, the first participant node device stores the communication address of the data consumer in advance, or the first participant node device reads the communication address of the data consumer included in the result use event, so that when it needs to provide the first component to the data consumer, it is possible to directly transmit the first component to the data consumer by establishing a communication channel between the communication address and the data consumer. In addition, under the condition that the first node device of the participant stores the public key of the data user in advance or the result use event carries the public key, the first node device may further encrypt the first component by using the public key and then send the encrypted first component to the data user, so that the data user uses the private key thereof to decrypt the first component, thereby ensuring the data security in the communication process.
Optionally, the method further includes: the method comprises the steps of receiving a result providing transaction initiated by a first participant node device and containing a first encryption component, calling the chain-down computing contract to execute the result providing transaction to generate a result providing event recorded with the first encryption component, and allowing the data user to monitor and obtain the result providing event, wherein the first encryption component is obtained by encrypting the first component through a public key of the data user by the first participant node device under the condition that the first component needs to be provided to the data user. In embodiments of the present specification, the first participant node device may also provide the first component to the result consumer by initiating a result-providing transaction involving the first cryptographic component to the calculation contract, and, since the result of recording the first cryptographic component provides that the event is theoretically open to be listened to by any third party, it is therefore necessary to ensure that the first cryptographic component is obtained by encrypting the first component with the public key of the result consumer, so that after the data consumer hears the result providing event to obtain the first encryption component, the first component element can be obtained by decryption of the private key of the data user, so that the first component element is not leaked to other third parties in the process that the first participant node device provides the first component element to the result user. As described above, the first participant node device stores the public key of the data consumer in advance, or the result use event carries the public key.
Fig. 3 is a schematic view of a data processing method according to an exemplary embodiment. As shown in fig. 3, a first blockchain node, a first scheduling engine, and a first down-link computation engine in a blockchain network are deployed on a first node device, a second blockchain node, a second scheduling engine, and a second down-link computation engine in the blockchain network are deployed on a second node device, and a third blockchain node, a third scheduling engine, and a third down-link computation engine in the blockchain network are deployed on a third node device. After a task event aiming at a cooperative computing task is generated by a calculation contract under a chain, the task event is monitored by a third scheduling engine, a second scheduling engine and a first scheduling engine through a third block chain node, a second block chain node and a first block chain node respectively. Assuming that the description information of at least two participant nodes corresponding to the collaborative computing task recorded in the task event includes identification information of a first block chain node, a second block chain node, and a third block chain node, the first scheduling engine, the second scheduling engine, and the third scheduling engine may respectively determine that the first block chain node deployed by the first node device, the second block chain node deployed by the second node device, and the third block chain node deployed by the third node device belong to the participant nodes. Then, the first scheduling engine calls the first down-chain computing engine to execute the collaborative computing task, the second scheduling engine calls the second down-chain computing engine to execute the collaborative computing task, the third calling engine calls the third down-chain computing engine to execute the collaborative computing task, and the first down-chain computing engine, the second down-chain computing engine and the third down-chain computing engine perform necessary data interaction in the process of executing the collaborative computing task, so as to finally help the first down-chain computing engine, the second down-chain computing engine and the third down-chain computing engine generate and acquire each component of the execution result corresponding to the collaborative computing task, wherein the first down-chain computing engine acquires the first component, the second down-chain computing engine acquires the second component and the third down-chain computing engine acquires the third component, and the first component, the second component and the third component can be integrated to recover the collaborative computing task pair The result of the execution should be. After desensitizing the first constituent element to generate first desensitization information, the first scheduling engine initiates a first result return transaction containing the first desensitization information to a calculation task contract under the chain through a first block chain node, after desensitizing the second constituent element to generate second desensitization information, the second scheduling engine initiates a second result return transaction containing the second desensitization information to a calculation task contract under the chain through a second block chain node, after desensitizing the third constituent element to generate third desensitization information, the third scheduling engine initiates a third result return transaction containing the third desensitization information to the calculation task contract under the chain through a third block chain node, so that the calculation contract under the chain maintains the first desensitization information, the second desensitization information and the third desensitization information in response to the three result return transactions, and as the three desensitization information correspond to the three constituent elements, the three components correspond to the execution result, so the uplink crediting for the three desensitization information is equivalent to the uplink crediting process for completing the execution result corresponding to the cooperative computing task by each node device. When a data user needs to obtain an execution result corresponding to the collaborative computing task, the data user needs to apply for obtaining the execution result corresponding to the collaborative computing task from a first node device, a second node device and a third node device respectively, the first node device provides a first component to the data user after determining that the data user has related authority, the second node device provides a second component to the data user after determining that the data user has related authority, the third node device provides a third component to the data user after determining that the data user has related authority, and the data user finally obtains the execution result corresponding to the collaborative computing task by integrating the first component, the second component and the third component.
FIG. 4 is a schematic block diagram of an apparatus provided in an exemplary embodiment. Referring to fig. 4, at the hardware level, the apparatus includes a processor 402, an internal bus 404, a network interface 406, a memory 408, and a non-volatile memory 410, but may also include hardware required for other functions. One or more embodiments of the present description may be implemented in software, such as by processor 402 reading a corresponding computer program from non-volatile storage 410 into memory 408 and then executing the computer program. Of course, besides software implementation, the one or more embodiments in this specification do not exclude other implementations, such as logic devices or combinations of software and hardware, and so on, that is, the execution subject of the following processing flow is not limited to each logic unit, and may also be hardware or logic devices.
Fig. 5 is a block diagram of a data processing apparatus provided in the present specification according to an exemplary embodiment, and the apparatus may be applied to the device shown in fig. 4 to implement the technical solution of the present specification; the device is applied to first node equipment with a first block chain node, and a block chain network to which the first block chain node belongs is provided with a down-link calculation contract; the device comprises:
an event monitoring unit 501, configured to monitor a task event for a collaborative computing task generated by the calculation contract under the link, where the task event records description information of at least two participant nodes corresponding to the collaborative computing task.
The task execution unit 502 is configured to, in a case that it is determined that the first block link point belongs to the participant node, invoke the first downlink computation engine deployed by the first node device to execute the collaborative computation task to obtain a first component of an execution result corresponding to the collaborative computation task, and generate first desensitization information corresponding to the first component, where the first component only includes information of a part of the execution result.
A result returning unit 503, configured to initiate a first result return transaction containing the first desensitization information to the calculation task contract under the chain through the first blockchain node.
Optionally, the calculation contract under the chain maintains a task completion state corresponding to the calculation task under the chain, where the task completion state is used to describe a completion state of each subtask included in the calculation task under the chain; in a case that the cooperative computing task belongs to a subtask of the calculation task under the chain, the event monitoring unit 501 is specifically configured to:
and monitoring the task event aiming at the collaborative computing task generated by the under-chain computing contract under the condition that the task completion state meets the execution condition corresponding to the collaborative computing task.
Optionally, the task completion state is updated by the under-chain computation contract in response to a transaction trigger corresponding to the under-chain computation task, where the transaction corresponding to the under-chain computation task includes a task creation transaction corresponding to the under-chain computation task, or a result initiated by any node device when any one of the subtasks is completely executed returns a transaction.
Optionally, the first downlink computation engine is configured to: in the process of executing the collaborative computing task, acquiring first data sent by other down-link computing engines for use in the process of executing the collaborative computing task; and/or the presence of a gas in the gas,
sending second data generated in the process of executing the collaborative computing task to the other computing engines so that the other computing engines use the second data in the process of executing the collaborative computing task;
wherein the other compute engines include: a first offline compute engine, other than the first offline compute engine, deployed on a node device on which any of the at least two participant nodes is deployed.
Optionally, the calculation contract is used for: and maintaining desensitization information corresponding to each constituent element of the execution result respectively in response to a result return transaction initiated by each node device deployed with the participant node, wherein the constituent elements are used for integrating the execution result.
Optionally, the method further includes:
a request receiving unit 504, configured to respond to a data request for a first component received from a data consumer, where the data request is initiated by the data consumer by querying the offline computation contract to obtain a first node device from which a first component node originates;
an element authorization unit 505, configured to, if it is determined that the data user has the usage right of the first element, provide authorization information corresponding to the first element to the data user, where the authorization information is used for the data user to acquire the first element.
Alternatively to this, the first and second parts may,
the first desensitization information is a first resource address of the first component on the first node device, the data request comprises the first resource address as first component index information, and the authorization information is the first component; alternatively, the first and second electrodes may be,
the first desensitization information is a first hash value obtained by performing hash operation on a first component, the data request comprises the first hash value serving as index information of the first component, and the authorization information is the first component; alternatively, the first and second electrodes may be,
the first desensitization information is a first encryption element obtained by encrypting the first constituent element, and the authorization information is a decryption key for decrypting the first encryption element into the first constituent element.
Optionally, the first component includes: the execution result is divided to obtain plaintext division information, the execution result is encrypted to obtain encrypted result, the encrypted result is divided to obtain ciphertext division information, or the execution result is encoded to obtain encoded state result, and the encoded state result is divided to obtain encoded split information.
Optionally, the method further includes:
a participant node determining unit 506, configured to determine that the first block link node belongs to the participant node if the description information of the at least two participant nodes includes the identification information of the first block link node.
Fig. 6 is a block diagram of a data processing apparatus provided in the present specification according to an exemplary embodiment, which may be applied to the device shown in fig. 4 to implement the technical solution of the present specification; the device is applied to a first block chain node, and a block chain network to which the first block chain node belongs is deployed with a calculation contract under a chain; the device comprises:
the event generating unit 601 is configured to invoke the offline computation contract to execute a transaction corresponding to an offline computation task, so as to generate a task event for a collaborative computation task, where the task event records description information of at least two participant nodes corresponding to the collaborative computation task.
A result maintaining unit 602, configured to receive a first result return transaction containing first desensitization information initiated by a first participant node device deployed with the participant node, invoke the offline computation contract to execute the first result return transaction, and maintain the first desensitization information under the offline computation contract, where the first desensitization information is generated by the first participant node device based on a first component of an execution result corresponding to the collaborative computation task, and the first component is obtained by the first participant node device invoking a first offline computation engine deployed by the first participant node device to execute the collaborative computation task when the first participant node device monitors the task event and determines that the first participant node device is deployed with the participant node, and the first component only contains information of a part of the execution result.
A result using unit 603, configured to receive a result use transaction initiated by a data user for the execution result, invoke the chain-down computation contract to execute the result use transaction to generate a result use event recorded with identity information of the data user and description information of the execution result, where the result use event is used to enable the first participant node device to provide the first component to the data user if the result use event is monitored and it is determined that the data user has a usage right of the first component of the execution result.
Optionally, the first participant node device provides a first constituent element to the data consumer, including:
the first participant node device sends the first component to the data consumer based on the communication address of the data consumer.
Optionally, the method further includes:
a result providing unit 604, configured to receive a result providing transaction initiated by the first participant node device and including a first cryptographic component, invoke the linked computation contract to execute the result providing transaction to generate a result providing event recorded with the first cryptographic component, so as to be intercepted and obtained by the data consumer, where the first cryptographic component is obtained by the first participant node device by encrypting the first component through a public key of the data consumer when the first component needs to be provided to the data consumer.
In the 90 s of the 20 th century, improvements in a technology could clearly distinguish between improvements in hardware (e.g., improvements in circuit structures such as diodes, transistors, switches, etc.) and improvements in software (improvements in process flow). However, as technology advances, many of today's process flow improvements have been seen as direct improvements in hardware circuit architecture. Designers almost always obtain the corresponding hardware circuit structure by programming an improved method flow into the hardware circuit. Thus, it cannot be said that an improvement in the process flow cannot be realized by hardware physical modules. For example, a Programmable Logic Device (PLD), such as a Field Programmable Gate Array (FPGA), is an integrated circuit whose Logic functions are determined by programming the Device by a user. A digital system is "integrated" on a PLD by the designer's own programming without requiring the chip manufacturer to design and fabricate application-specific integrated circuit chips. Furthermore, nowadays, instead of manually making an Integrated Circuit chip, such Programming is often implemented by "logic compiler" software, which is similar to a software compiler used in program development and writing, but the original code before compiling is also written by a specific Programming Language, which is called Hardware Description Language (HDL), and HDL is not only one but many, such as abel (advanced Boolean Expression Language), ahdl (alternate Hardware Description Language), traffic, pl (core universal Programming Language), HDCal (jhdware Description Language), lang, Lola, HDL, laspam, hardward Description Language (vhr Description Language), vhal (Hardware Description Language), and vhigh-Language, which are currently used in most common. It will also be apparent to those skilled in the art that hardware circuitry that implements the logical method flows can be readily obtained by merely slightly programming the method flows into an integrated circuit using the hardware description languages described above.
The controller may be implemented in any suitable manner, for example, the controller may take the form of, for example, a microprocessor or processor and a computer-readable medium storing computer-readable program code (e.g., software or firmware) executable by the (micro) processor, logic gates, switches, an Application Specific Integrated Circuit (ASIC), a programmable logic controller, and an embedded microcontroller, examples of which include, but are not limited to, the following microcontrollers: ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20, and Silicone Labs C8051F320, the memory controller may also be implemented as part of the control logic for the memory. Those skilled in the art will also appreciate that, in addition to implementing the controller as pure computer readable program code, the same functionality can be implemented by logically programming method steps such that the controller is in the form of logic gates, switches, application specific integrated circuits, programmable logic controllers, embedded microcontrollers and the like. Such a controller may thus be considered a hardware component, and the means included therein for performing the various functions may also be considered as a structure within the hardware component. Or even means for performing the functions may be regarded as being both a software module for performing the method and a structure within a hardware component.
The systems, devices, modules or units illustrated in the above embodiments may be implemented by a computer chip or an entity, or by a product with certain functions. One typical implementation device is a server system. Of course, the present invention does not exclude that as future computer technology develops, the computer implementing the functionality of the above described embodiments may be, for example, a personal computer, a laptop computer, a vehicle-mounted human-computer interaction device, a cellular phone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device or a combination of any of these devices.
Although one or more embodiments of the present description provide method operational steps as described in the embodiments or flowcharts, more or fewer operational steps may be included based on conventional or non-inventive approaches. The order of steps recited in the embodiments is merely one manner of performing the steps in a multitude of orders and does not represent the only order of execution. When an actual apparatus or end product executes, it may execute sequentially or in parallel (e.g., parallel processors or multi-threaded environments, or even distributed data processing environments) according to the method shown in the embodiment or the figures. The terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, the presence of additional identical or equivalent elements in a process, method, article, or apparatus that comprises the recited elements is not excluded. For example, the use of the terms first, second, etc. are used to denote names, but not to denote any particular order.
For convenience of description, the above devices are described as being divided into various modules by functions, and are described separately. Of course, when implementing one or more of the present description, the functions of each module may be implemented in one or more software and/or hardware, or a module implementing the same function may be implemented by a combination of multiple sub-modules or sub-units, etc. The above-described embodiments of the apparatus are merely illustrative, and for example, the division of the units is only one logical division, and other divisions may be realized in practice, for example, a plurality of units or components may be combined or integrated into another system, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, devices or units, and may be in an electrical, mechanical or other form.
The present invention is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each flow and/or block of the flowchart illustrations and/or block diagrams, and combinations of flows and/or blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
In a typical configuration, a computing device includes one or more processors (CPUs), input/output interfaces, network interfaces, and memory.
The memory may include forms of volatile memory in a computer readable medium, Random Access Memory (RAM) and/or non-volatile memory, such as Read Only Memory (ROM) or flash memory (flash RAM). Memory is an example of a computer-readable medium.
Computer-readable media, including both non-transitory and non-transitory, removable and non-removable media, may implement information storage by any method or technology. The information may be computer readable instructions, data structures, modules of a program, or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), Static Random Access Memory (SRAM), Dynamic Random Access Memory (DRAM), other types of Random Access Memory (RAM), Read Only Memory (ROM), Electrically Erasable Programmable Read Only Memory (EEPROM), flash memory or other memory technology, compact disc read only memory (CD-ROM), Digital Versatile Discs (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage, graphene storage or other magnetic storage devices, or any other non-transmission medium that can be used to store information that can be accessed by a computing device. As defined herein, a computer readable medium does not include a transitory computer readable medium such as a modulated data signal and a carrier wave.
As will be appreciated by one skilled in the art, one or more embodiments of the present description may be provided as a method, system, or computer program product. Accordingly, one or more embodiments of the present description may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, one or more embodiments of the present description may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
One or more embodiments of the present description may be described in the general context of computer-executable instructions, such as program modules, being executed by a computer. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types. One or more embodiments of the present specification can also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote computer storage media including memory storage devices.
The embodiments in the present specification are described in a progressive manner, and the same and similar parts among the embodiments are referred to each other, and each embodiment focuses on the differences from the other embodiments. In particular, for the system embodiment, since it is substantially similar to the method embodiment, the description is simple, and for the relevant points, reference may be made to the partial description of the method embodiment. In the description of the specification, reference to the description of the term "one embodiment," "some embodiments," "an example," "a specific example," or "some examples," etc., means that a particular feature, structure, material, or characteristic described in connection with the embodiment or example is included in at least one embodiment or example of the specification. In this specification, the schematic representations of the terms used above are not necessarily intended to refer to the same embodiment or example. Furthermore, the particular features, structures, materials, or characteristics described may be combined in any suitable manner in any one or more embodiments or examples. Furthermore, various embodiments or examples and features of different embodiments or examples described in this specification can be combined and combined by one skilled in the art without contradiction.
The above description is merely exemplary of one or more embodiments of the present disclosure and is not intended to limit the scope of one or more embodiments of the present disclosure. Various modifications and alterations to one or more embodiments described herein will be apparent to those skilled in the art. Any modification, equivalent replacement, improvement or the like made within the spirit and principle of the present specification should be included in the scope of the claims.

Claims (16)

1. A data processing method is applied to first node equipment with a first block chain node, and a block chain network to which the first block chain node belongs is provided with a calculating contract under a chain; the method comprises the following steps:
monitoring a task event aiming at a cooperative computing task generated by the calculation contract under the chain, wherein the task event records description information of at least two participant nodes corresponding to the cooperative computing task;
under the condition that the first block link point is determined to belong to the participant node, calling a first down-link computing engine deployed by first node equipment to execute the cooperative computing task so as to obtain a first component of an execution result corresponding to the cooperative computing task, and generating first desensitization information corresponding to the first component, wherein the first component only contains information of part of the execution result;
a first result return transaction containing first desensitization information is initiated to the down-link compute task contract by a first blockchain node.
2. The method according to claim 1, wherein the downlink computation contract maintains a task completion status corresponding to the downlink computation task, and the task completion status is used for describing a completion status of each subtask included in the downlink computation task; when the collaborative computing task belongs to a subtask of the calculation task under the chain, the monitoring a task event generated by the calculation contract under the chain and aiming at the collaborative computing task includes:
and monitoring the task event aiming at the collaborative computing task generated by the under-chain computing contract under the condition that the task completion state meets the execution condition corresponding to the collaborative computing task.
3. The method according to claim 2, wherein the task completion status is updated by the under-chain computation contract in response to a transaction trigger corresponding to the under-chain computation task, wherein the transaction corresponding to the under-chain computation task includes a task creation transaction corresponding to the under-chain computation task, or a result return transaction initiated by any node device when the execution of any subtask among the subtasks is completed.
4. The method of claim 1, the first down-link compute engine to: in the process of executing the collaborative computing task, acquiring first data sent by other down-link computing engines for use in the process of executing the collaborative computing task; and/or the presence of a gas in the gas,
sending second data generated in the process of executing the collaborative computing task to the other computing engines so that the other computing engines use the second data in the process of executing the collaborative computing task;
wherein the other compute engines include: a first offline compute engine, other than the first offline compute engine, deployed on a node device on which any of the at least two participant nodes is deployed.
5. The method of claim 1, the linked computation contract to: and maintaining desensitization information corresponding to each constituent element of the execution result respectively in response to a result return transaction initiated by each node device deployed with the participant node, wherein the constituent elements are used for integrating the execution result.
6. The method of claim 1, further comprising:
in response to a data request for a first component received from a data consumer, the data request initiated by the data consumer in case the contract is computed by querying the link to obtain a first node device from which a first component node originates;
and if the data user is determined to have the use authority of the first component, providing authorization information corresponding to the first component to the data user, wherein the authorization information is used for the data user to acquire the first component.
7. The method of claim 6, wherein the first and second light sources are selected from the group consisting of,
the first desensitization information is a first resource address of the first component on the first node device, the data request comprises the first resource address as first component index information, and the authorization information is the first component; alternatively, the first and second electrodes may be,
the first desensitization information is a first hash value obtained by performing hash operation on a first component, the data request comprises the first hash value serving as index information of the first component, and the authorization information is the first component; alternatively, the first and second electrodes may be,
the first desensitization information is a first encryption element obtained by encrypting the first constituent element, and the authorization information is a decryption key for decrypting the first encryption element into the first constituent element.
8. The method of claim 1, the first component comprising: the execution result is divided to obtain plaintext division information, the execution result is encrypted to obtain encrypted result, the encrypted result is divided to obtain ciphertext division information, or the execution result is encoded to obtain encoded state result, and the encoded state result is divided to obtain encoded split information.
9. The method of claim 1, further comprising:
determining that a first block link point belongs to the participant node when the description information of the at least two participant nodes includes identification information of a first block link node.
10. A data processing method is applied to a first block chain node, and a block chain network to which the first block chain node belongs is deployed with a downlink calculation contract; the method comprises the following steps:
calling the under-chain computation contract to execute the transaction corresponding to the under-chain computation task so as to generate a task event aiming at the collaborative computation task, wherein the task event records the description information of at least two participant nodes corresponding to the collaborative computation task;
receiving a first result return transaction which is initiated by a first participant node device and contains first desensitization information, calling the first result return transaction to execute the first result return transaction, and maintaining the first desensitization information in the first result return transaction, wherein the first desensitization information is generated by the first participant node device based on a first component of an execution result corresponding to the collaborative computing task, the first component is obtained by calling a first chain lower computing engine deployed by the first participant node device to execute the collaborative computing task under the condition that the first participant node device monitors the task event and determines that the first participant node device is deployed, and the first component only contains information of part of the execution result;
receiving a result use transaction initiated by a data user aiming at the execution result, calling the chain-down computing contract to execute the result use transaction to generate a result use event recorded with the identity information of the data user and the description information of the execution result, wherein the result use event is used for enabling a first participant node device to provide a first component element for the data user under the condition that the result use event is monitored and the data user is determined to have the use authority of the first component element of the execution result.
11. The method of claim 10, the first participant node device providing a first constituent element to the data consumer, comprising:
the first participant node device sends the first component to the data consumer based on the communication address of the data consumer.
12. The method of claim 10, further comprising:
the method comprises the steps of receiving a result providing transaction initiated by a first participant node device and containing a first encryption component, calling the chain-down computing contract to execute the result providing transaction to generate a result providing event recorded with the first encryption component, and allowing the data user to monitor and obtain the result providing event, wherein the first encryption component is obtained by encrypting the first component through a public key of the data user by the first participant node device under the condition that the first component needs to be provided to the data user.
13. A data processing device is applied to first node equipment with a first block chain node, and a block chain network to which the first block chain node belongs is provided with a calculation contract under a chain; the device comprises:
the event monitoring unit is used for monitoring a task event aiming at a collaborative computing task and generated by the calculation contract under the chain, and the task event records description information of at least two participant nodes corresponding to the collaborative computing task;
the task execution unit is used for calling a first under-link computing engine deployed by first node equipment to execute the collaborative computing task to acquire a first component of an execution result corresponding to the collaborative computing task and generate first desensitization information corresponding to the first component under the condition that the first block link point is determined to belong to the participant node, wherein the first component only contains information of part of the execution result;
and the result returning unit is used for initiating a first result returning transaction containing first desensitization information to the calculation task contract under the chain through the first block chain node.
14. A data processing device is applied to a first block chain node, and a block chain network to which the first block chain node belongs is deployed with a down-link calculation contract; the device comprises:
the event generation unit is used for calling the under-chain computation contract to execute the transaction corresponding to the under-chain computation task so as to generate a task event aiming at the collaborative computation task, and the task event records the description information of at least two participant nodes corresponding to the collaborative computation task;
a result maintenance unit, configured to receive a first result return transaction containing first desensitization information initiated by a first participant node device deployed with the participant node, invoke the offline computation contract to execute the first result return transaction, and maintain the first desensitization information in the offline computation contract, where the first desensitization information is generated by the first participant node device based on a first component of an execution result corresponding to the collaborative computation task, the first component is obtained by the first participant node device invoking a first offline computation engine deployed by the first participant node device to execute the collaborative computation task when the first participant node device monitors the task event and determines that the participant node is deployed by itself, and the first component only contains information of a part of the execution result;
a result using unit, configured to receive a result use transaction initiated by a data user for the execution result, invoke the chain-down computation contract to execute the result use transaction to generate a result use event recorded with identity information of the data user and description information of the execution result, where the result use event is used to enable a first participant node device to provide a first component to the data user if the result use event is monitored and it is determined that the data user has a usage right of the first component of the execution result.
15. An electronic device, comprising:
a processor;
a memory for storing processor-executable instructions;
wherein the processor implements the method of any one of claims 1-12 by executing the executable instructions.
16. A computer readable storage medium having stored thereon computer instructions which, when executed by a processor, carry out the steps of the method according to any one of claims 1 to 12.
CN202210473020.5A 2022-04-29 2022-04-29 Data processing method and device, electronic equipment and storage medium Pending CN114896635A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210473020.5A CN114896635A (en) 2022-04-29 2022-04-29 Data processing method and device, electronic equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210473020.5A CN114896635A (en) 2022-04-29 2022-04-29 Data processing method and device, electronic equipment and storage medium

Publications (1)

Publication Number Publication Date
CN114896635A true CN114896635A (en) 2022-08-12

Family

ID=82720393

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210473020.5A Pending CN114896635A (en) 2022-04-29 2022-04-29 Data processing method and device, electronic equipment and storage medium

Country Status (1)

Country Link
CN (1) CN114896635A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115118438A (en) * 2022-08-29 2022-09-27 北京智芯微电子科技有限公司 Block chain-based terminal digital identity management method and system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115118438A (en) * 2022-08-29 2022-09-27 北京智芯微电子科技有限公司 Block chain-based terminal digital identity management method and system
CN115118438B (en) * 2022-08-29 2023-01-20 北京智芯微电子科技有限公司 Block chain-based terminal digital identity management method and system

Similar Documents

Publication Publication Date Title
CN112671769B (en) Electronic contract signing method, device and equipment
CN112581131B (en) Asset transfer method, device, equipment and system
CN112182644A (en) Data processing method and device and electronic equipment
CN113079200A (en) Data processing method, device and system
CN111339565B (en) Business service providing method, device, equipment and system based on block chain
CN114884674B (en) User data circulation method, device and equipment based on block chain
WO2023207078A1 (en) Data processing method and apparatus, electronic device, and storage medium
CN116340897A (en) Digital asset processing method and device based on blockchain
CN110717190A (en) Distributed data storage method and device and data storage equipment
CN115296794A (en) Key management method and device based on block chain
CN114896635A (en) Data processing method and device, electronic equipment and storage medium
CN114741736A (en) Data processing method and device, electronic equipment and storage medium
CN116595571A (en) Block chain-based carbon data management method, device and equipment
CN114896637A (en) Data processing method and device, electronic equipment and storage medium
CN113761496B (en) Identity verification method and device based on blockchain and electronic equipment
CN114710492A (en) Method and device for establishing direct connection channel
CN114726858B (en) Data processing method and device, electronic equipment and storage medium
CN114726858A (en) Data processing method and device, electronic equipment and storage medium
CN111062814A (en) Resource transfer method, device and system based on block chain
CN114070584B (en) Secret calculation method, device, equipment and storage medium
CN114726537B (en) Data processing method and device
CN114896638A (en) Data processing method and device, electronic equipment and storage medium
CN115134136B (en) System, method, device, storage medium and computing device for socializing based on blockchain
CN114301710B (en) Method for determining whether message is tampered, secret pipe platform and secret pipe system
CN115037548B (en) System, method, device, medium and equipment for secure multiparty computation of data based on blockchain

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination