Task processing method and device, electronic equipment and storage medium

Through blockchain system and smart contract technology, decentralized approval and signature of data sharing tasks are achieved, solving the problem of the risk of evil done by centralized platforms and improving the credibility and security of tasks.

CN120200727APending Publication Date: 2025-06-24TENCENT TECHNOLOGY (SHENZHEN) CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202311780034.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-12-21
Publication Date
2025-06-24

AI Technical Summary

Technical Problem

In the existing data sharing tasks, the approval and authorization of participants depends on the centralized platform, and there is a risk of evil deeds from the centralized platform.

Method used

Through the blockchain system, the approval transaction processing of data sharing tasks is realized, and the smart contract event is triggered. The management nodes of each participant sign the task based on the private key, and the signature information is on the link, and the task status is updated to authorization completion.

Benefits of technology

It avoids the risk of evil committed by a centralized platform, improves the credibility and security of tasks, and ensures the reliable execution of tasks.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120200727A_ABST
    Figure CN120200727A_ABST
Patent Text Reader

Abstract

The invention relates to a block chain technology, and discloses a task processing method and device, electronic equipment and a storage medium. Comprising the steps of generating a first data sharing task approval transaction based on a first data sharing task; performing uplink processing on the first data sharing task approval transaction in a block chain system, so that when at least one block chain node in the block chain system determines that the uplink of the first data sharing task approval transaction is successful, a first intelligent contract event is triggered; if it is determined that the first data sharing task passes signature verification according to the first signature information, the state of the first data sharing task is updated to be an authorization completion state, so that a gateway node in a mechanism to which the first participant belongs responds to the authorization completion state of the first data sharing task and executes the first data sharing task, a centralized platform does not need to be maintained among a plurality of participants to approve the first data sharing task, so that the centralized platform is prevented from being disadvantaged.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of blockchain technology, and more particularly, to a task processing method, apparatus, electronic device, and storage medium. Background Art

[0002] Currently, in data sharing tasks, task participants all use a centralized platform for task approval authorization. Each participant's approval authorization for the data sharing task is carried out on this centralized platform. After all participants in the data sharing task have approved, the centralized platform performs task scheduling and execution.

[0003] However, with the above method, the approval authorization of all participants is carried out on a centralized platform, which has the risk of the centralized platform acting maliciously. Summary of the Invention

[0004] In view of the above problems, embodiments of this application propose a task processing method, apparatus, electronic device, and storage medium to improve the above problems.

[0005] According to one aspect of the embodiments of this application, a task processing method is provided, which is applied to a target management node in the institution to which the first initiator of the first data sharing task belongs; the method includes: in response to the first initiator creating a first data sharing task involving multiple parties, generating a first data sharing task approval transaction based on the participant information of each first participant and the task parameters of the first data sharing task, where the first participants are the participants in the first data sharing task;

[0006] Performing an on-chain process on the first data sharing task approval transaction in the blockchain system, so that when at least one blockchain node in the blockchain system determines that the first data sharing task approval transaction is successfully on-chain, triggering a first smart contract event; the first smart contract event is used for the first management node to sign the first data sharing task based on the private keys of at least one first participant and perform an on-chain process on the obtained first signature information; the first management node refers to the management node in the institution to which the first participant belongs;

[0007] If it is determined according to the first signature information that the first data sharing task passes the signature verification, updating the status of the first data sharing task to the authorized completed state, so that the gateway node in the institution to which the first participant belongs responds to the first data sharing task being in the authorized completed state and executes the first data sharing task.

[0008] According to one aspect of the embodiments of this application, a task processing apparatus is provided, which is applied to a target management node in the institution to which the first initiator of the first data sharing task belongs; the apparatus includes:

[0009] A generation module, which is configured to, in response to a first initiator creating a first data sharing task involving multiple parties, generate a first data sharing task approval transaction based on the participant information of each first participant and the task parameters of the first data sharing task, where the first participants are the participants of the first data sharing task;

[0010] A blockchain module, which is configured to perform blockchain processing on the first data sharing task approval transaction in a blockchain system, so that when at least one blockchain node in the blockchain system determines that the first data sharing task approval transaction is successfully uploaded to the blockchain, a first smart contract event is triggered; the first smart contract event is used for a first management node to sign the first data sharing task based on the private keys of at least one first participant and upload the obtained first signature information of the signature to the blockchain; the first management node refers to the management node in the institution to which the first participant belongs;

[0011] An update module, which is configured to, if it is determined that the first data sharing task passes the signature verification according to the first signature information, update the status of the first data sharing task to the authorized completion status, so that the gateway node in the institution to which the first participant belongs responds to the first data sharing task being in the authorized completion status and executes the first data sharing task.

[0012] Optionally, the device further includes a signature verification module, and the signature verification module includes:

[0013] A signature verification sub-module, which is configured to, for each first participant, verify the signature of the first signature information from the first management node to which the first participant belongs according to the public key of the first participant, and obtain the signature verification result of each first signature information;

[0014] A signature verification determination sub-module, which is configured to, if it is determined that all the first signature information for the first data sharing task passes the signature verification according to the signature verification results of each first signature information, and it is determined that all the first management nodes have signed the first data sharing task according to the first signature information, determine that the first data sharing task passes the signature verification.

[0015] Optionally, the device further includes a signature module, and the signature module includes:

[0016] A signature information acquisition sub-module, which is configured to, if a second smart contract event triggered by a second data sharing task approval transaction is detected in the blockchain system, obtain second signature information obtained by a second participant signing the second data sharing task based on its own private key; the second data sharing task approval transaction is generated in response to a second data sharing task initiated by a second initiator, and the second participant refers to the participant among the participants involved in the second data sharing task whose institution belongs to the institution of the target management node;

[0017] A signature information processing sub-module, which is configured to perform blockchain processing on the second signature information in the blockchain system.

[0018] Optionally, the signature information acquisition sub-module includes:

[0019] A sending unit, configured to send a signature request to a second participating party if it is determined that the second participating party has not performed signature pre-authorization on the second data sharing task;

[0020] A receiving unit, configured to receive response information returned by the second participating party in response to the signature request;

[0021] A first acquisition unit, configured to sign the second data sharing task with the private key of the second participating party to obtain second signature information if the response information indicates consent to sign.

[0022] Optionally, the signature information acquisition sub-module includes:

[0023] A second acquisition unit, configured to sign the second data sharing task based on the private key of the second participating party to obtain second signature information if it is determined that the second participating party has performed signature pre-authorization on the second data sharing task.

[0024] Optionally, the second smart contract event includes task parameters of the second data sharing task and participating party information of the participating parties in the second data sharing task; the participating party information includes a participating party identifier and the role of the participating party in the second data sharing task; the task parameters include a task identifier; the signature information processing sub-module includes:

[0025] An information acquisition unit, configured to acquire the role of the second participating party and the participating party identifier of the second participating party from the second smart contract event;

[0026] A storage unit, configured to send the role of the second participating party, the participating party identifier of the second participating party, the task identifier of the second data sharing task, the signature identity certificate of the second participating party, and the second signature information to a blockchain node in the blockchain system, so that the blockchain node forms a composite key based on the role of the second participating party, the participating party identifier of the second participating party, and the task identifier of the second data sharing task, and pushes the signature identity certificate of the second participating party and the second signature information as the value of the composite key to the blockchain.

[0027] According to one aspect of the embodiments of the present application, an electronic device is provided, including: a processor; a memory, on which computer-readable instructions are stored, and when the computer-readable instructions are executed by the processor, a task processing method is implemented.

[0028] According to one aspect of the embodiments of the present application, a computer-readable storage medium is provided, on which computer-readable instructions are stored, and when the computer-readable instructions are executed by a processor, a task processing method is implemented.

[0029] According to one aspect of the embodiments of the present application, a computer program product is provided, including computer instructions that implement a task processing method when executed by a processor.

[0030] In the present application, a management node in an organization can communicate with a blockchain node in a blockchain system. After a first data sharing task is sent to a target management node, the target management node generates a first data sharing task approval transaction based on the participant information of each first participant involved in the first data sharing task and the task parameters of the first data sharing task, and submits the first data sharing task approval transaction to the blockchain system. After the first data sharing task approval transaction is successfully uploaded to the chain, a first smart contract event is triggered, and the management nodes of the organizations to which each first participant of the first data sharing task belongs (i.e., the first management nodes) sign the first data sharing task, and the obtained first signature information is uploaded to the chain. Subsequently, after the target management node determines that the first data sharing task passes the verification based on the first signature information, the status of the first data sharing task is updated to the authorized completion status, so that the gateway node in the organization to which the first participant belongs responds to the first data sharing task being in the authorized completion status and executes the first data sharing task. In this way, it is realized to conduct signature voting on the first data sharing task through the blockchain system, collect the first signature information on the blockchain system, and perform signature verification of the first data sharing task based on the first signature information. If the verification passes, it indicates that the first data sharing task has completed endorsement authorization and can be executed. In this way, there is no need to maintain a centralized platform among multiple participants to approve the first data sharing task. Replacing this centralized platform with the blockchain system can avoid the centralized platform from acting maliciously. Moreover, the nodes in different organizations are managed by the management nodes in the organizations, which is not likely to lead to the leakage of user information in the organizations. At the same time, the entire approval authorization of the first data sharing task is stored on the chain, which can prevent tampering and ensure the credibility of the task. BRIEF DESCRIPTION OF THE DRAWINGS

[0031] The accompanying drawings herein are incorporated into the specification and constitute a part of this specification, showing embodiments consistent with the present application, and are used together with the specification to explain the principles of the present application. Obviously, the accompanying drawings in the following description are only some embodiments of the present application. For those of ordinary skill in the art, other drawings can be obtained based on these drawings without creative efforts.

[0032] Figure 1 is a schematic diagram of a blockchain system provided according to an embodiment of the present application.

[0033] Figure 2 is a schematic diagram of multiple blocks in a blockchain system provided according to an embodiment of the present application.

[0034] Figure 3 It is a schematic diagram of the process of generating a new block in a blockchain system provided according to an embodiment of the present application.

[0035] Figure 4 It is a flowchart of a task processing method shown according to an embodiment of the present application.

[0036] Figure 5 It is a schematic diagram of the steps before step 210 shown according to an embodiment of the present application.

[0037] Figure 6 It is a flowchart of a task processing method shown according to another embodiment of the present application.

[0038] Figure 7 It is a schematic diagram of a task processing system shown according to an embodiment of the present application.

[0039] Figure 8 It is a schematic diagram of triggering a first smart contract shown according to an embodiment of the present application.

[0040] Figure 9 It is a schematic diagram of signing a first data sharing task shown according to an embodiment of the present application.

[0041] Figure 10 It is a schematic diagram of signing a first data sharing task shown according to another embodiment of the present application.

[0042] Figure 11 It is a block diagram of a task processing device shown according to an embodiment of the present application.

[0043] Figure 12 It shows a schematic diagram of the structure of a computer system of an electronic device suitable for implementing the embodiments of the present application. Detailed implementation manners

[0044] Now, example embodiments will be described more fully with reference to the accompanying drawings. However, the example embodiments can be implemented in various forms and should not be construed as limited to the examples set forth herein; rather, these embodiments are provided so that this application will be more complete and comprehensive, and will fully convey the concept of the example embodiments to those skilled in the art.

[0045] In addition, the described features, structures, or characteristics may be combined in any suitable manner in one or more embodiments. In the following description, numerous specific details are provided to give a thorough understanding of the embodiments of the present application. However, those skilled in the art will realize that the technical solutions of the present application can be practiced without one or more of the specific details, or other methods, components, devices, steps, etc. may be used. In other cases, well-known methods, devices, implementations, or operations are not shown or described in detail to avoid obscuring aspects of the present application.

[0046] The block diagrams shown in the drawings are only functional entities and do not necessarily correspond to physically independent entities. That is, these functional entities can be implemented in software form, or implemented in one or more hardware modules or integrated circuits, or implemented in different networks and / or processor devices and / or microcontroller devices.

[0047] The flowcharts shown in the drawings are only illustrative and do not necessarily include all the content and operations / steps, nor are they necessarily executed in the order described. For example, some operations / steps can be decomposed, while some operations / steps can be combined or partially combined, so the actual execution order may change according to the actual situation.

[0048] It should be noted that: "a plurality of" mentioned in this article refers to two or more. "And / or" describes the association relationship of associated objects and indicates that three relationships can exist. For example, A and / or B can represent: A exists alone, A and B exist simultaneously, and B exists alone. The character " / " generally represents an "or" relationship between the associated objects before and after.

[0049] In the present application, the management nodes in each institution can communicate with the blockchain nodes in the blockchain system, so that devices in different institutions can perform cross-institutional data sharing tasks based on the communication connection between the management nodes in the institution and the blockchain nodes in the blockchain system.

[0050] See Figure 1The blockchain system shown. The blockchain system 100 refers to a system used for data sharing between blockchain nodes. This blockchain system may include multiple blockchain nodes 101, and the multiple blockchain nodes 101 may refer to the clients corresponding to each institution in the blockchain system. Each blockchain node 101 can receive input information during normal operation and maintain the shared data within the blockchain system based on the received input information. To ensure information interconnection within the blockchain system, there can be information connections between each blockchain node in the blockchain system, and the blockchain nodes can transmit information through the above-mentioned information connections. For example, when any blockchain node in the blockchain system receives input information, other blockchain nodes in the blockchain system obtain the input information according to the consensus algorithm and store the input information as data in the shared data, so that the data stored on all blockchain nodes in the blockchain system is consistent.

[0051] For each blockchain node in the blockchain system, there is a corresponding blockchain node identifier, and each blockchain node in the blockchain system can store the blockchain node identifiers of other blockchain nodes in the blockchain system, so as to broadcast the generated block to other blockchain nodes in the blockchain system based on the blockchain node identifiers of other blockchain nodes in the future. Each blockchain node can maintain a blockchain node identifier list as shown in the following table, and store the blockchain node name and the blockchain node identifier in the blockchain node identifier list correspondingly. Among them, the blockchain node identifier can be an IP (Internet Protocol) address and any other information that can be used to identify the blockchain node. Only the IP address is used as an example in Table 1 for illustration.

[0052] Blockchain node name Blockchain node identifier Blockchain node 1 xxx.xxx.xxx.xxx Blockchain node 2 xxx.xxx.xxx.xxx … … Blockchain node N xxx.xxx.xxx.xxx

[0053] Each blockchain node in the blockchain system stores an identical blockchain. The blockchain consists of multiple blocks. See Figure 2 , the blockchain consists of multiple blocks. The genesis block includes a block header and a block body. The block header stores the input information feature value, version number, timestamp, and difficulty value, and the block body stores the input information; the next block of the genesis block uses the genesis block as the parent block, and the next block also includes a block header and a block body. The block header stores the input information feature value of the current block, the block header feature value of the parent block, version number, timestamp, and difficulty value, and so on, so that the block data stored in each block in the blockchain is associated with the block data stored in the parent block, ensuring the security of the input information in the block.

[0054] When generating each block in the blockchain, see Figure 3When the blockchain node where the blockchain is located receives the input information, it verifies the input information. After the verification is completed, it stores the input information in the memory pool and updates the hash tree used to record the input information. Then, it updates the update timestamp to the time when the input information is received and tries different random numbers, performing eigenvalue calculations multiple times so that the calculated eigenvalue can satisfy the following formula:

[0055] SHA256(SHA256(version+prev_hash+merkle_root+ntime+nbits+x))<TARGET,

[0056] where SHA256 is the eigenvalue algorithm used to calculate the eigenvalue; version (version number) is the version information of the relevant block protocol in the blockchain; prev_hash is the block header eigenvalue of the parent block of the current block; merkle_root is the eigenvalue of the input information; ntime is the update time of the update timestamp; nbits is the current difficulty, which is a fixed value within a certain period of time and is determined again after exceeding the fixed time period; x is a random number; TARGET is the eigenvalue threshold, and this eigenvalue threshold can be determined according to nbits.

[0057] In this way, when a random number that satisfies the above formula is calculated, the information can be stored correspondingly, generating a block header and a block body to obtain the current block. Subsequently, the blockchain node where the blockchain is located sends the newly generated block to other blockchain nodes in its blockchain system according to the blockchain node identifiers of other blockchain nodes in the blockchain system. Other blockchain nodes verify the newly generated block and add the newly generated block to the blockchain they store after the verification is completed.

[0058] The implementation details of the technical solution of the embodiment of the present application are elaborated in detail below:

[0059] Figure 4 shows a flowchart of a task processing method according to an embodiment of the present application. This method can be applied to a target management node in the organization to which the first initiator of the first data sharing task belongs. Refer to Figure 4 As shown, this method at least includes steps S210 to S230, which are introduced in detail as follows:

[0060] S210. In response to the first initiator creating a first data sharing task involving multiple parties, generate a first data sharing task approval transaction based on the participant information of each first participant and the task parameters of the first data sharing task.

[0061] Among them, the first participating party is the participating party of the first data sharing task, which can be a node participating in the execution of the first data sharing task. It is worth mentioning that since the first data sharing task is a data sharing task that requires multiple parties to participate, there are multiple first participating parties for the first data sharing task. The first participating party includes at least two types of participating parties, namely: the first participating party as the data provider and the first participating party as the data user. Among them, the number of first participating parties as data users can be one or more, and no specific limitation is made here. Of course, in some embodiments, the initiator of the first data sharing task can also be the data provider or the data user of the first data sharing task.

[0062] The participating party information of the first participating party includes at least the participating party identifier of the first participating party, the role of the first participating party in the first data sharing task, and the institution to which the first participating party belongs. Each institution to which the first participating party belongs includes at least a management node and other nodes managed by the management node. The other nodes can be the nodes where the terminals are located. Further, the institution can also include a gateway node. In some embodiments, the management node in the institution can also undertake the function of the gateway node, that is, the management node in the institution is responsible for managing other nodes in the institution and also undertakes the function of the gateway to communicate with nodes in other institutions. Among them, the management node is the management platform in the institution, and an event management center is set therein, which can subscribe to events on the blockchain system.

[0063] The first initiator refers to the node (which can be a terminal such as a smart phone, a tablet computer, a desktop computer, a vehicle-mounted terminal, a smart home device, etc.), a server, or other devices that initiate the first data sharing task. The first data sharing task refers to the data sharing task to be processed currently. The data sharing task is used to achieve data sharing, that is, to share the data of the data provider for the data user to use.

[0064] The target management node refers to the management node in the institution to which the first initiator belongs. In this application, a management node is provided in each institution, and the management nodes in each institution are communicatively connected to the blockchain system. Thus, the non-management nodes in each institution can interact with the blockchain system through the management node in the institution, or further, interact with the management nodes in other institutions through the management node in the institution and the blockchain system.

[0065] The task parameters of the first data sharing task at least include the identifier of the target data to be shared, which can be the address information of the target data, the name of the target data, the target data summary, etc., which can uniquely identify the target data. Among them, the data provider and data user corresponding to the first data sharing task can also be specified through the task parameters of the first data sharing task. The gateway node can be a node with proxy gateway function, which is used for forwarding information and data.

[0066] For the convenience of distinction, the approval transaction generated for the first data sharing task is called the first data sharing task approval transaction. This first data sharing task approval transaction includes the participant information of all the first participants involved in the first data sharing task and the task parameters of the first data sharing task. The format of this first data sharing task approval transaction follows the transaction format required by the blockchain system. In other words, the target management node encapsulates the participant information of all the first participants involved in the first data sharing task and the task parameters of the first data sharing task according to the transaction format required by the blockchain system to obtain the first data sharing task approval transaction. It can also be understood that the participant information of all the first participants involved in the first data sharing task and the task parameters of the first data sharing task serve as the transaction data of the first data sharing task approval transaction. Further, the transaction data of this first data sharing task approval transaction can also include the transaction identifier assigned to the first data sharing task approval transaction. In some embodiments, the first data sharing task approval transaction can also include the signature information of the target management node.

[0067] If the first initiator creates multiple first data sharing tasks at the same time, each first data sharing task can be processed in sequence according to the timestamps of the creation of the multiple first data sharing tasks. For the first data sharing tasks that have obtained signature pre-authorization, they can be preferentially processed. It is also possible to determine the processing order of the first data sharing tasks according to the association relationship between the target data in the multiple first data sharing tasks. The association relationship can be whether multiple target data are used in the same computing task. Based on this association relationship, the first data sharing tasks corresponding to multiple target data used in the same computing task can be processed successively and continuously.

[0068] For example, the first initiator creates the first data sharing task A, the first data sharing task B, the first data sharing task C, the first data sharing task D, and the first data sharing task E. The target data A1 in the first data sharing task A and the target data E1 in the first data sharing task E are used for the computing task M. The first data sharing task A and the first data sharing task E can be processed successively and continuously. For example, after processing the first data sharing task A, the first data sharing task E is processed next, or after processing the first data sharing task E, the first data sharing task A is processed next.

[0069] S220. Process the first data sharing task approval transaction on the blockchain system for on-chain processing, so that when at least one blockchain node in the blockchain system determines that the first data sharing task approval transaction is successfully uploaded to the chain, a first smart contract event is triggered.

[0070] Among them, the first smart contract event is used for the first management node to sign the first data sharing task based on the private keys of at least one first participant and perform on-chain processing on the obtained first signature information; the first management node refers to the management node in the institution to which the first participant belongs.

[0071] The target management node can submit the first data sharing task approval transaction to a blockchain node in the blockchain system. After that, the first data sharing task approval transaction can be broadcast in the blockchain system to perform consensus processing on the first data sharing task approval transaction in the blockchain system, and after determining that the first data sharing task approval transaction passes the consensus, write the first data sharing task approval transaction to the blockchain.

[0072] In the application, the smart contract event triggered after the first data sharing task approval transaction is successfully uploaded to the chain is called the first smart contract event. In this application, after the approval transaction for the data sharing task is successfully uploaded to the chain, a smart contract is triggered to call to collect the signatures of the participants in the data sharing task through the smart contract. When the call to the smart contract is triggered, a smart contract event is correspondingly generated.

[0073] A smart contract event refers to an event defined and triggered in a smart contract, which can be triggered by specific conditions or actions inside the smart contract. For example, when a certain time node is reached or a specific message is received, the smart contract event is triggered, and the smart contract automatically executes the corresponding event processing program. It can also be triggered by external factors. For example, here, after determining that the first data sharing task approval transaction is successfully uploaded to the chain, the smart contract event is triggered, and the smart contract automatically executes the first data sharing task approval processing program.

[0074] In the present application, the first smart contract event may include various information in the first data sharing task approval transaction, such as the participant information of all the first participants involved in the first data sharing task and the task parameters of the first data sharing task.

[0075] In some embodiments, after the first data sharing task approval transaction is uploaded to the blockchain system, the blockchain node updates the status of the first data sharing task to "under approval by task participants" and triggers the first smart contract event.

[0076] As described above, the management nodes in each institution may subscribe to the smart contract events on the blockchain system in advance. When a smart contract event is triggered and generated by the blockchain system, the smart contract event will be pushed to the management nodes that have subscribed to the smart contract event. Similarly, after the first smart contract event is triggered and generated in the blockchain system, the first smart contract event will be pushed to the management nodes of each institution. After receiving the first smart contract event, the management node determines whether there is a node in the institution where the management node is located that is a first participant in the first data sharing task according to the participant information of the first participant in the first smart contract event. If there is, the private key of the first participant in the institution where the management node belongs signs the first data sharing task. If there are multiple first participants in the institution where the management node belongs, the first data sharing task is signed respectively by the private keys corresponding to the multiple first participants in the institution where the management node belongs.

[0077] For the sake of distinction, the management node in the institution where the first participant belongs is called the first management node, and the signature information obtained by signing the first data sharing task with the private key of the first participant is called the first signature information. Each first participant corresponds to one first signature information. Then, the management node (i.e., the first management node) uploads the obtained first signature information to the blockchain system. The process of uploading the first signature information to the blockchain system is basically the same as the process of uploading the first data sharing task approval transaction to the blockchain system, which will not be elaborated here. It is worth mentioning that the first management nodes corresponding to the first participants belonging to different institutions are also different. A first management node can be responsible for signing the first data sharing task with the private key of the first participant in the institution where it is located to obtain the corresponding first signature information. Of course, for the first data sharing task, two different first participants may also belong to the same institution.

[0078] On the contrary, if the management node that receives the first smart contract event determines that there is no node in the institution where the management node is located that is a first participant in the first data sharing task, then there is no need to process the first smart contract event.

[0079] In this application, if a participant in a data sharing task signs the data sharing task, it indicates that the participant agrees to participate in the execution of the data sharing task. Therefore, in this application, by collecting the first signature information of each first participant, it is determined whether all first participants agree to participate in the execution of the first data sharing task.

[0080] Among them, a private key and a public key form a key pair. The private key is held personally by the holder and is not made public, and is used for decryption and signature. The public key is published by the holder to others and is used for encryption and signature verification. In some embodiments, the key pairs of the nodes in an organization can be generated by the management node in the organization.

[0081] In some embodiments, key pairs can be generated based on methods such as the Data Encryption Standard (DES), Triple Data Encryption Standard (3DES), Advanced Encryption Standard (AES), Rivest-Shamir-Adleman (RSA) encryption method, Digital Signature Algorithm (DSA), and Elliptic Curves Cryptography (ECC), and the private key in the key pair is used for encryption signature.

[0082] Exemplarily, the signature data structure of the first signature information corresponding to the data provider among the first participants can be:

[0083] [T202309141458437277608---2051100233---DataSourceProvider]=>{"Sign":"MEUCIQDQ5wuHTaG / sNl2IzITITWKOU5Neokq+Qt9lizLnnLKzgIgZFwZlUoq94GlFbySfLcjH7jBGtA8x81Ce3QXQSSop2g="};

[0084] The signature data structure of the first signature information corresponding to the data user among the first participants can be:

[0085] [T202309141458437277608---2051100228---ResultUser] => {"Sign": "MEQCIAISJAPI93dUIyY / NQ4rvndDpAD+Cejp8Z6CBG+aNu4SAiBE+o0kaVArD8jrLUkXV4e1JYYNzZFT3Arwz0xc153rgw=="};

[0086] It can also be:

[0087] [T202309141458437277608---2051100233---ResultUser] => {"Sign": "MEQCICZK6oGlJ1zAIaRNvG9rIJJIug2GoxMHZM1iopf6jXYuAiBiJLsCVR3FRbzqcV39104vziwXnAbZLmM / MYpr1C0WpNw=="};

[0088] In some embodiments, the first initiator of the first data sharing task can be the first participant in the first data sharing task (for example, the first initiator acts as the data provider of the first data sharing task or as the data user of the first data sharing task). In this case, it may not be necessary for the target management node corresponding to the first initiator to sign the first data sharing task because when the first initiator creates the first data sharing task, its signature information for the first data sharing task has been attached to the first data sharing task. In some other embodiments, when the first initiator of the first data sharing task is also the first participant in the first data sharing task and the first initiator does not sign the first data sharing task when creating it, then in the subsequent process, the target management node signs the first data sharing task using the private key of the first initiator according to a similar process to obtain the corresponding first signature information.

[0089] S230. If it is determined according to the first signature information that the first data sharing task passes the signature verification, update the status of the first data sharing task to the authorized completion status, so that the gateway node in the organization to which the first participant belongs responds to the first data sharing task being in the authorized completion status and executes the first data sharing task.

[0090] In some embodiments, the target management node can verify the first signature information using the public keys of each first participant. If it is determined that all first participants in the first data sharing task have signed the first data sharing task and all signature verifications pass, then it is determined that the first data sharing task passes the signature verification. On the one hand, it ensures that the number of first signature information is the same as the number of first participants in the first data sharing task, so as to ensure that all first participants in the first data sharing task agree to participate in the execution of the first data sharing task. On the other hand, verifying the first signature information can accurately identify cases of forged signatures.

[0091] In some embodiments, after triggering the first smart contract event, the target management node performs on-chain detection of the approval status of the first data sharing task. Each time a first signature information is detected on the chain, a signature verification is performed. The signature verification includes checking the number of first signature information already on the blockchain and verifying the authenticity of each first signature information. After determining that the first data sharing task passes the signature verification, that is, the number of first signature information on the blockchain is the same as the number of first participants and the content of each first signature information is true, a collection instruction is sent to the blockchain node so that the blockchain node can collect all the first signature information into the first data sharing task, and the target management node updates the status of the first data sharing task to the authorized completion status.

[0092] After receiving the collection instruction, the blockchain node needs to check whether the sender of the collection instruction is the management node. After determining that the sender of the collection instruction is the target management node, it obtains the signature information of each first participant in the first data sharing task and collects it into the data structure of the first data sharing task. Among them, collection refers to the process of gathering data from multiple different sources to a central location. Here, it means gathering the respective first signature information of the first participants onto the first data sharing task, or adding the first signature information of the first participants to the task information of the first data sharing task.

[0093] After the first data sharing task is in the authorized completion status, a smart contract event for task execution will be triggered on the blockchain system. This smart contract event for task execution is used for the gateway node in the institution to which the first participant belongs to execute the first data sharing task.

[0094] Similarly, the gateway nodes in each institution have subscribed to the smart contract event for task execution on the blockchain system. When the smart contract event for task execution on the blockchain system is triggered, it will push the smart contract event for task execution to the corresponding subscribed gateway node. Only the gateway node in the institution to which the first participant in the first data sharing task belongs can process the smart contract event for task execution, and other gateway nodes ignore the smart contract event for task execution.

[0095] The process of executing the first data sharing task is as follows: obtain target data from the data provider of the first data sharing task and send the target data to the data user of the first data sharing task.

[0096] In one embodiment, the first participating parties include a data provider and a data user; the task parameter indicates the target data to be shared. During the process of executing the first data sharing task, the first gateway node in the institution where the data provider belongs obtains the target data from the data provider and sends the target data to the second gateway nodes in the institutions where each data user belongs, so that the second gateway nodes send the target data to the data users.

[0097] In this embodiment, the forwarding of the target data is performed through the gateway nodes in the institutions. Among them, communication connections can be established between the gateway nodes in different institutions. In this way, non-gateway nodes in different institutions can perform cross-institutional data interaction through the gateway nodes.

[0098] For the convenience of distinction, the gateway node in the institution where the data provider belongs is called the first gateway node, and the gateway node in the structure where the data user belongs is called the second gateway node. The first gateway node can obtain the target data from the database on the data provider side and send the target data to the second gateway node. The second gateway node can send the target data to the data user or store the target data in the database on the data user side, so that when the data user needs to use the target data, the target data can be obtained from the corresponding database.

[0099] In some embodiments, before the first gateway node sends the target data to each second gateway node, the first gateway node also needs to perform signature verification on the first signature information collected for the first data sharing task to determine that all the first signature information passes the signature verification and all the first management nodes sign the first data sharing task.

[0100] In this embodiment, the target data is not written into the data sharing task. Instead, after the status of the data sharing task is the authorized completion status, the gateway node obtains the target data from the data provider and sends it to the data user, which can avoid mistakes during the process of writing the target data into the data sharing task and affect the use of the data user.

[0101] In this application, the management node in the organization can communicate with the blockchain node in the blockchain system. After the first data sharing task is sent to the target management node, the target management node generates a first data sharing task approval transaction based on the participant information of each first participant involved in the first data sharing task and the task parameters of the first data sharing task, and submits the first data sharing task approval transaction to the blockchain system. After the first data sharing task approval transaction is successfully uploaded to the chain, a first smart contract event is triggered, and the management nodes (i.e., the first management nodes) of the institutions to which each first participant in the first data sharing task belongs sign the first data sharing task, and the obtained first signature information after signing is processed for uploading to the chain. Subsequently, after the target management node determines that the first data sharing task passes the verification based on the first signature information, the status of the first data sharing task is updated to the authorized completion status, so that the gateway node in the institution to which the first participant belongs responds to the first data sharing task being in the authorized completion status and executes the first data sharing task. In this way, it is realized that the first data sharing task is signed and voted through the blockchain system, the first signature information is collected on the blockchain system, and the signature verification of the first data sharing task is performed based on the first signature information. If the verification passes, it indicates that the first data sharing task has completed the endorsement authorization and can be executed. In this way, there is no need to maintain a centralized platform among multiple participants to approve the first data sharing task. Replacing this centralized platform with the blockchain system can avoid the centralized platform from acting maliciously. Moreover, the nodes in different institutions are managed by the management nodes in the institutions, which is not likely to lead to the leakage of user information in the institutions. At the same time, the entire approval and authorization of the first data sharing task will be stored on the chain, which can prevent tampering and ensure the credibility of the task.

[0102] In one embodiment, as Figure 5 shown, before S230, the method further includes:

[0103] S310. For each first participant, verify the first signature information originating from the first management node of the first participant according to the public key of the first participant, and obtain the verification results of each first signature information.

[0104] Among them, the public key of the first participant corresponds one-to-one with the private key of the first participant, and the verification result is used to indicate whether the first signature information is authentic.

[0105] As described above, the key pair of the node that is not a management node in the institution can be generated by the management node in the institution. In some embodiments, after the management node generates the key pair, the public keys of each non-management node in the institution can be stored. On this basis, for the target management node, in S310, it can request the public key of the first participant from the first management node in the institution to which the first participant belongs for verifying the corresponding first signature information.

[0106] In some other embodiments, the management node in the institution may also send the public keys of each non - management node in the institution to the blockchain nodes in the blockchain system. In this way, the blockchain nodes can write the public keys of the non - management nodes in each institution onto the blockchain. Thus, in S310, the target management node may request the blockchain nodes to obtain the public keys of each first participant from the blockchain. In this embodiment, since the public keys of the non - management nodes in the institution are stored on the blockchain, it can be avoided that the public keys of the non - management nodes in the institution are tampered with, and it can also be avoided that due to the abnormality of the management node in the institution, the public keys of the first participants cannot be obtained in time when signature verification is required.

[0107] In some embodiments, the process of signature verification may be performed after the target management node determines that the first participant has successfully uploaded the corresponding first signature information to the chain.

[0108] S320. If it is determined according to the signature verification results of each first signature information that all the first signature information for the first data sharing task passes the signature verification, and it is determined according to the first signature information that all the first management nodes have signed the first data sharing task, it is determined that the first data sharing task passes the signature verification.

[0109] In some implementation manners, if the signature verification results of each first signature information are all that the signature information is true, it is determined that all the first signature information for the first data sharing task passes the signature verification.

[0110] In some implementation manners, it may be determined that all the first management nodes have signed the first data sharing task through an accumulator. Each time the target management node obtains a first signature information, it controls the accumulator to perform an accumulation once until the accumulated result is the same as the number of first participants, and it is determined that all the first management nodes have signed the first data sharing task.

[0111] In this embodiment, by verifying the first signature information signed with the private key of the first participant based on its own public key, it is ensured that the first signature information is signed based on the private key of the first participant, guaranteeing the authenticity of the source of the first signature information and improving the security of the first signature information. After the signature verification result is that the signature verification passes and it is determined that all the management nodes have signed the data sharing task, it is determined that the data sharing task approval transaction passes the signature verification, which can ensure that the first data sharing task is executed only when all the first participants in the first data sharing task agree to execute the first data sharing task.

[0112] In one embodiment, the process of the target management node using the private key of the non - management node in the managed institution to sign the data sharing task may be as Figure 6 shown, and the method further includes:

[0113] S410. If a second smart contract event triggered by an approval transaction for a second data sharing task is detected in the blockchain system, obtain second signature information obtained by the second participating party signing the second data sharing task based on its own private key.

[0114] Among them, the approval transaction for the second data sharing task is generated in response to the second data sharing task initiated by the second initiator. The second participating party refers to the participating party among the participating parties involved in the second data sharing task whose affiliated institution is the affiliated institution of the target management node. The second smart contract event is used for the second management node to sign the second data sharing task based on the private key of the second participating party and chain the obtained second signature information.

[0115] Similarly, after the management node in the affiliated institution of the second initiator receives the second data sharing task created by the second initiator, it checks the legality of its parameters and whether all the affiliated institutions of the second participating parties are institutions connected to the blockchain system, configures the data provider of the second data sharing task and its corresponding gateway node, as well as the data user and its corresponding gateway node. After the configuration is completed, it checks whether the data provider of the second data sharing task and its corresponding gateway node, as well as the data user and its corresponding gateway node, are available (that is, detects whether the data provider of the first data sharing task and the gateway node in the institution where the data provider is located are in a normal communication state, and detects whether the data user of the second data sharing task and the gateway node in the institution where the data user is located are in a normal communication state). If available, construct the data structure of the second data sharing task, generate an approval transaction for the second data sharing task, and then submit the approval transaction for the second data sharing task to the blockchain system for broadcast consensus on the blockchain system. After the consensus is passed, the approval transaction for the second data sharing task is written into the blockchain.

[0116] In some embodiments, S410 may include: if it is determined that the second participating party has not pre-authorized the signature of the second data sharing task, send a signature request to the second participating party; receive the response information returned by the second participating party in response to the signature request; if the response information indicates consent to sign, use the private key of the second participating party to sign the second data sharing task to obtain second signature information. Among them, pre-authorization means that the second participating party pre-agrees to sign.

[0117] Each management node can store the pre-authorization information of the nodes in its affiliated organization. This pre-authorization information is used to indicate the nodes in the organization that have performed signature pre-authorization. If the pre-authorization information of the management node includes the identifier of the second party, it can be determined that the second party has performed signature pre-authorization. Further, the pre-authorization information can include the private key of the node. Thus, the management node can use the private key of the node in the pre-authorization information to perform signatures. Conversely, if the pre-authorization information of the management node does not include the identifier of the second party, it can be determined that the second party has not performed signature pre-authorization.

[0118] In the case where it is determined that the second party has not performed signature pre-authorization for the second data sharing task, the target management node can send a signature request to the second party. The signature request can include the task information of the second data sharing task. The task information can be, for example, the participant information of each participant in the second data sharing task, and the data requested to be shared in the second data sharing task. In this way, it is convenient for the user on the side of the second party who receives the signature request to know the details of the second data sharing task based on the task information of the second data sharing task to determine whether to agree to perform the signature. In this application, the response information sent by the second party to the target management node is used to indicate whether to agree to perform the signature. In the case where the response information indicates agreement to perform the signature, the response information also includes the private key of the second party that sends the response information. Thus, the second data sharing task is signed based on the private key of the second party in the response information.

[0119] In some embodiments, if the response information indicates disagreement to perform the signature, the target management node corresponding to it does not need to sign the second data sharing task. In other embodiments, if the response information indicates disagreement to perform the signature, the target management node can perform on-chain processing on the specified signature information. The specified signature information is fictional signature information. Since the specified signature information is fictional, in the subsequent signature verification process, this fictional specified signature information will surely fail the signature verification. The fictional specified signature information is used to indicate that the corresponding party disagrees to perform the signature.

[0120] In other implementation manners, S410 may include: if it is determined that the second party has performed signature pre-authorization for the second data sharing task, sign the second data sharing task based on the private key of the second party to obtain the second signature information.

[0121] S420: Perform on-chain processing on the second signature information in the blockchain system.

[0122] After obtaining the second signature information, the second signature information can be uploaded to the chain according to the corresponding interface on the smart contract. After being uploaded to the chain, the management node in the organization to which the second initiator belongs will perform signature verification on the second signature information.

[0123] In some embodiments, the second smart contract event includes the task parameters of the second data sharing task and the participant information of the participants in the second data sharing task; the participant information includes the participant identifier and the role of the participant in the second data sharing task; the task parameters include the task identifier, and S420 may include: obtaining the role of the second participant and the participant identifier of the second participant from the second smart contract event; sending the role of the second participant, the participant identifier of the second participant, the task identifier of the second data sharing task, the signature identity certificate of the second participant, and the second signature information to the blockchain nodes in the blockchain system, so that the blockchain nodes form a composite key based on the role of the second participant, the participant identifier of the second participant, and the task identifier of the second data sharing task, use the signature identity certificate of the second participant and the second signature information as the value of the composite key, and associate and write the composite key and the value of the composite key into the blockchain.

[0124] Among them, the task identifier can uniquely identify a data sharing task. The task identifier can be the task number (TaskNo) of the data sharing task. The role of the second participant refers to whether the second participant is a data provider or a data user in the data sharing task. Different roles can be represented by a role identifier (RoleId). The participant identifier (AppId) can represent the identifier of the user as a participant in the task. The signature identity certificate (SignCrt) is a digital certificate used to identify the identity of the certificate holder in network communication, including the identity information of the holder, the public key, and the signature of the certificate authority (Certificate Authority, CA center).

[0125] Each composite key corresponds to a value. Each composite key (Key) and its corresponding value (Value) form a key-value pair (Key-Value). Each participant corresponds to a composite key in each data sharing task. The composite key corresponding to the second participant is obtained by combining the role of the second participant, the participant identifier of the second participant, and the task identifier of the second data sharing task. If the second participant is a data provider, the composite key represents the signature information of the second participant in the second data sharing task for the data provider. The value corresponding to the composite key includes the signature identity certificate of the second participant as the data provider and the second signature information.

[0126] Exemplarily, the data structure obtained by aggregating the key-value pair formed by the first signature information, the role of the first participant, the participant identifier of the first participant, the task identifier of the first data sharing task, and the signature identity certificate of the first participant in the example of S220 into the first data sharing task may be:

[0127] {

[0128] "AppId" (participant identifier): "",

[0129] "TaskNo" (Task identifier): "",

[0130] "TaskName" (Task name): "",

[0131] "ConsortiumName" (Sharing consortium): "",

[0132] "AuthInfo" (Authorization information): {

[0133] },

[0134] "DataProviderSign" (Signature information of the data provider): {

[0135] "AppId" (Participant identifier): "2051100233",

[0136] "Sign" (Signature information):

[0137] "MEUCIQDQ5wuHTaG / sNl2IzITITWKOU5Neokq+Qt9lizLnnLKzgIgZFwZlUoq94GlFbySfLcjH7jBGtA8x81Ce3QXQSSop2g="

[0138] },

[0139] "ResultUserSignList" (Signature information of the data users): [{

[0140] "AppId": "2051100228",

[0141] "Sign":

[0142] "MEQCIAISJAPI93dUIyY / NQ4rvndDpAD+Cejp8Z6CBG+aNu4SAiBE+o0kaVArD8jrLUkXV4e1JYYNzZFT3Arwz0xc153rgw=="

[0143] },{

[0144] "AppId": "2051100233",

[0145] "Sign":

[0146] "MEQCICZK6oGlJ1zAIaRNvG9rIJJIug2GoxMHZM1iopf6jXYuAiBiJLsCVR3FRbzqcV39104vziwXnAbZLmM / MYpr1C0WpNw=="

[0147] }],

[0148] "TxId" (Transaction Identification):

[0149] "2391c81dd12e44c3ab21004b9a6d5fc8dcf91208e19d41eaa2f3505520f7634a",

[0150] "TxTimestamp" (Transaction Timestamp): "1694674723"

[0151] }

[0152] In this embodiment, the management node in the organization to which the participating party in the data sharing task belongs needs to obtain the authorization of each participating party before signing, and then sign, and upload the obtained signature information to the chain, which can prevent tampering and non-repudiation, and ensure the reliability of the signature information.

[0153] The process of the management node in other organizations signing the data sharing task is similar to the process of the target management node signing the second data sharing task, and will not be elaborated here.

[0154] Figure 7 shows a schematic diagram of a task processing system according to an embodiment of the present application, as Figure 7 shown, Figure 7 illustrated by taking the processing process of the first data sharing task as an example. Figure 7 shows four organizations and the blockchain system 100. Each organization includes a management node connected to the blockchain system 100 and a gateway node. Among them, node 623 is the initiator of the first data sharing task (i.e., the first initiator), and at the same time, node 623 also serves as a data user of the first data sharing task; node 633 is the data provider of the first data sharing task; node 643 is another data user of the first data sharing task. That is, nodes 623, 633, and 643 all serve as the first participating parties of the first data sharing task.

[0155] The management node 621 is the target management node (i.e., the management node of the organization to which the first initiator belongs), and at the same time, it is also the management node of the organization to which the data user of the first data sharing task belongs. In other words, the first initiator serves as both the initiator and the data user of the first data sharing task.

[0156] The management node 631 is the management node in the organization to which node 633 belongs. The management node 641 is the management node of the organization to which node 643 belongs. The management node 651 is the management node in the organization where there is no first party. The gateway node 622 is the gateway node of the organization to which the management node 622 belongs. The gateway node 632 is the gateway node of the organization to which the management node 631 belongs. The gateway node 642 is the gateway node of the organization to which the management node 641 belongs.

[0157] Each management node and gateway node accessing the blockchain system subscribes to the smart contract events on the blockchain system.

[0158] The processing of the first data sharing task includes the following 1)-7):

[0159] 1) Node 623 creates a first data sharing task and sends the first data sharing task to the management node 621.

[0160] The first data sharing task indicates the identities of the first parties participating in the first data sharing task, the roles of the first parties, the organization identifiers of the organizations to which the first parties belong, and the target data to be shared.

[0161] 2) The management node 621 receives the first data sharing task sent by the node 623, generates a first data sharing task approval transaction according to the party information of the first parties involved in the first data sharing task and the task parameters of the first data sharing task, and sends the first data sharing task approval transaction to the blockchain system 100.

[0162] 3) After the blockchain node writes the first data sharing task approval transaction into the blockchain, it triggers a first smart contract event.

[0163] After receiving the first data sharing task approval transaction, the blockchain nodes in the blockchain system 100 broadcast and reach a consensus on the first data sharing task approval transaction. After the consensus is passed, the first data sharing task approval transaction is written into the blockchain, and a first smart contract event is triggered.

[0164] Since the management nodes in each organization have subscribed to the smart contract events in the blockchain system in advance, after the first smart contract event is triggered, the blockchain nodes will automatically push the first smart contract event to each management node.

[0165] 4) In response to the received first smart contract event, the management node 631 (and the management node 641) signs the first data sharing task with the private key of the node in its organization that is the first party, and processes the obtained first signature information onto the chain.

[0166] Taking the management node 631 as an example, the process will be specifically described below. After receiving the first smart contract event, the management node 631 determines whether the first participant (i.e., node 633) in its affiliated institution has pre-authorized the signature for the first data sharing task based on the signature pre-authorization information stored in the management node 631; if it is determined that the signature for the first data sharing task has not been pre-authorized, a signature request is sent to node 633; and the response information returned by node 633 in response to the signature request is received; if the response information indicates consent to sign, the private key of node 633 is used to sign the first data sharing task to obtain the first signature information; if it is determined that node 633 has pre-authorized the signature for the first data sharing task, the first data sharing task is signed based on the private key of node 633 to obtain the corresponding first signature information and upload it to the chain.

[0167] In some embodiments, the non-management nodes in the institution can pre-authorize the task signature according to the task type. For example, each non-management node can authorize the management node in its affiliated institution to authorize the signature for the tasks belonging to the data sharing task type participated by the non-management node. In this way, the management node can record the task types for which the non-management node agrees to pre-authorize the signature in the pre-authorization information of the non-management node. For example, node 633 can authorize management node 631 to sign tasks belonging to the data sharing task type. In this way, after receiving the first smart contract event, management node 631 determines, based on the event information in the first smart contract event, that the task to be signed is the first data sharing task and determines that the first data sharing task belongs to the data sharing task type. Since node 633 has authorized management node 631 to sign tasks belonging to the data sharing task type, management node 631 can determine that node 633 has pre-authorized the signature for the first data sharing task. In this embodiment, since the non-management nodes in the institution can pre-authorize the signature according to the task type, the management node does not need to send a signature request to the non-management node for each task, which can reduce the processing pressure on the management node.

[0168] Signing the first data sharing task can be understood as signing the task information of the first data sharing task. The task information of the first data sharing task is obtained from the event information of the first smart contract event. The task information of the first data sharing task includes the participant information of each first participant participating in the first data sharing task and the task parameters of the first data sharing task as pointed out above. Among them, the management node 631 can perform a hash operation on the task information of the first data sharing task to obtain the digital digest of the first data sharing task; then, the private key of node 633 is used to encrypt the digital digest of the first data sharing task to obtain the first signature information corresponding to node 633.

[0169] After obtaining the first signature information corresponding to node 633, the management node 631 may send the first signature information to the blockchain nodes for broadcast consensus in the blockchain system, and after the consensus is passed, write the first signature information into the blockchain.

[0170] It is worth mentioning that the signature and the process of writing to the chain performed by the management node 641 are similar and will not be elaborated in this article.

[0171] 5) After receiving the first smart contract event, the management node 651 ignores the first smart contract event.

[0172] Since there is no first participating party in the organization where the management node 651 is located that needs to participate in the first data sharing task, the management node 651 does not need to respond to the first smart contract event.

[0173] 6) The management node 621 performs signature verification on the first signature information on the blockchain, and updates the status of the first data sharing task to the authorized completion status after determining that the first data sharing task passes the signature verification.

[0174] As described above, on the one hand, the management node 621 verifies whether the number of the first signature information is the same as the number of the first participating parties of the first data sharing task, and on the other hand, determines whether all the first signature information passes the signature verification. If both are satisfied, it is determined that the first data sharing task passes the signature verification.

[0175] It is worth mentioning that the management node 621 also manages the status of the first data sharing task. For example, after receiving the first smart contract event, it updates the status of the first data sharing task to the authorized status; after determining that the first data sharing task passes the signature verification, it updates the status of the first data sharing task to the authorized completion status.

[0176] In some embodiments, after determining that the first data sharing task passes the signature verification, the management node 621 may send an aggregation instruction to the blockchain system so that the blockchain nodes aggregate all the first signature information of the first data sharing task onto the data structure of the first data sharing task.

[0177] In some embodiments, the blockchain node may also maintain the status of the first data sharing task. For example, after triggering the first smart contract event, the status of the first data sharing task is updated to the authorized status; after determining that all the first signature information of the first data sharing task is collected on the data structure of the first data sharing task, the status of the first data sharing task is updated to the authorized completed status. In some embodiments, the blockchain node triggers a smart contract event for task execution of the first data sharing task in response to the status of the first data sharing task being the authorized completed status. In this way, the nodes subscribing to the smart contract event of task execution in each organization can receive the smart contract event for task execution of the first data sharing task.

[0178] 7) After the gateway node 632 determines that the first data sharing task is in the authorized completed status, it obtains the target data from the database on the side of the node 633 and sends it to the gateway node 622 and the gateway node 642.

[0179] In some embodiments, the gateway node 632 may determine that the first data sharing task is in the authorized completed status after receiving the smart contract event for task execution of the first data sharing task. In other embodiments, the management node 621 may synchronize the updated status of the first data sharing task to the gateway node 632 after updating the status of the first data sharing task. Therefore, after the management node 621 updates the status of the first data sharing task to the authorized completed status and synchronizes it to the gateway node 632, the gateway node 632 correspondingly determines that the status of the first data sharing task is the authorized completed status.

[0180] The gateway node 622 sends the received target data to the database on the side of the node 623 for the node 623 to use the target data. Similarly, the gateway node 642 sends the received target data to the database on the side of the node 643 for the node 643 to use the target data.

[0181] In some embodiments, Figure 8 shows a flowchart from the first data sharing task to triggering the first smart contract event, as Figure 8 shown, the first initiator sends the created first data sharing task involving multiple parties to the target management node. After receiving the first data sharing task, the target management node checks the first data sharing task. On the one hand, it checks the parameter legality of the first data sharing task; on the other hand, it checks whether all the first participating parties' affiliated organizations are the organizations accessing the blockchain system (that is, checks whether the management nodes in the first participating parties' affiliated organizations can communicate with the blockchain system).

[0182] Among them, checking the parameter legality of the first data sharing task means checking whether the task information of the first data sharing task includes task requirement parameters and whether the quantity of the task requirement parameters included in the task information meets the requirements. Among them, the task requirement parameters may include parameters for specifying the data user, parameters for specifying the data provider, and parameters for specifying the target data to be shared. In some other embodiments, checking the parameter legality of the first data sharing may further include checking whether the values of each task requirement parameter meet the requirements. For example, whether the value of the parameter for specifying the data user or the value of the parameter for specifying the data provider is the node identifier of a node in a certain institution, etc. If it is determined that the task information of the first data sharing task includes task requirement parameters, the quantity of the task requirement parameters included in the task information meets the requirements, and the values of each task requirement parameter meet the corresponding requirements, it can be determined that the first data sharing task meets the parameter legality requirements.

[0183] If the parameters of the first data sharing task are legal and all the institutions to which the first participating parties belong are institutions accessing the blockchain system, configure the data provider of the first data sharing task and its corresponding gateway node according to the participant information of the first participating parties, and configure the data user of the first data sharing task and its corresponding gateway node. The gateway nodes corresponding to the data provider and the data user are the gateway nodes in their respective institutions.

[0184] Among them, the process of gateway node configuration performed by the target management node can also be understood as: adding the node information (such as node identifier, address information of the gateway node, etc.) of the gateway node in the institution to which the data user belongs and adding the node information of the gateway node in the institution to which the data provider belongs in the first data sharing task.

[0185] After the configuration is completed, check whether the data provider of the first data sharing task and its corresponding gateway node and the data user of the first data sharing task and its corresponding gateway node are available, that is, check and determine whether the data provider of the first data sharing task, the gateway node on the data provider side, the data user, and the gateway node on the data user side are in a normal communication state; if it is determined that they are in a normal communication state, it is determined that they are available.

[0186] In some embodiments, each management node may maintain a node communication status table in the organization. The node communication status table includes the communication status of each non-management node in the organization. For example, the communication status of each non-management node in the organization can be determined through heartbeat detection, or the non-management nodes in the organization can actively report their own communication status to the management nodes in the organization for the management nodes to update the communication status of the corresponding nodes in the node communication status table in a timely manner. On this basis, the target management node may send a communication status request to the management nodes in the organizations where each first participant is located. After receiving the communication status request, the management nodes in the organizations where the first participants are located obtain the communication status of the first participants and the communication status of the gateway nodes from the maintained node communication status table, and send the communication status of the first participants and the communication status of the gateway nodes to the target management node for the target management node to determine whether the data provider, the gateway node on the data provider side, the data user, and the gateway node on the data user side of the first data sharing task are in a normal communication state.

[0187] In some embodiments, the target management node further checks whether the data provider has the resource usage permission for the target data. For example, if the data provider has an authorization license for the target data in the database on the data provider side, the target management node can check whether the data provider has the resource usage permission for the target data by checking whether the data provider has the authorization license. The authorization license at least includes permission to provide the target data externally. At the same time, the authorization license can be a timed permission for the target data or a permanent permission for the target data. The authorization license can have an authorization license ID, and the target management node can check whether the data provider has the resource usage permission for the target data by checking the authorization license ID. The authorization license ID can be pre-stored in the management node corresponding to each first participant of the first data sharing task.

[0188] If the target management node determines that the data provider, the gateway node on the data provider side, the data user, and the gateway node on the data user side of the first data sharing task are all available, construct a data structure of the first data sharing task (this data structure is used to store information related to the first data sharing task, such as the participant information of the first participant mentioned above, task parameters, and node information of the gateway nodes in the organizations where the data provider / data user belongs, etc.), and submit the first data sharing task to the blockchain system.

[0189] After receiving the first data sharing task, the blockchain node can perform permission and resource availability checks on the first data sharing task, including at least checking whether the first data sharing task is configured with a data provider, the gateway node on the data provider side, a data user, and the gateway node on the data user side, and checking whether the configured data provider, the gateway node on the data provider side, the data user, and the gateway node on the data user side are available, and checking whether the blockchain node has the editing permission for the first data sharing task. For example, the permission to update the status of the first data sharing task, the permission to collect the first signature information into the first data sharing task, etc.

[0190] In some embodiments, it can be checked whether the data provider, the gateway node on the data provider side, the data user, and the gateway node on the data user side of the first data sharing task are in a normal communication state to check whether the configured data provider, the gateway node on the data provider side, the data user, and the gateway node on the data user side are available.

[0191] In some embodiments, it can be checked whether the blockchain node has the editing permission for the first data sharing task by checking whether the blockchain node can modify the parameters representing the status of the first data sharing task and whether it can edit the structure body of the first data sharing task, etc.

[0192] After determining that the first data sharing task passes the permission and resource availability checks, the blockchain node sends a check - passed message to the target management node.

[0193] In response to the check - passed message, the target management node generates a first data sharing task approval transaction based on the participation information of each first participant and the task parameters of the first data sharing task, and sends the first data sharing task approval transaction to the blockchain node to chain - up the first data sharing task approval transaction. Subsequently, the blockchain node broadcasts and reaches a consensus on the first data sharing task approval transaction. After the consensus is passed, the blockchain node writes the first data sharing task approval transaction into the blockchain, and after determining that the first data sharing task approval transaction is written into the blockchain, triggers a first smart contract event.

[0194] The process of each first management node signing the first data sharing task is as Figure 9 shown. As Figure 9 shown, the blockchain node sends the first smart contract event to the first management node, and the first management node determines whether the first participant in its affiliated institution has signed and pre - authorized the first data sharing task through the pre - authorization information. If the first data sharing task has been signed and pre - authorized, as Figure 9As shown, the first management node signs the first data sharing task in response to the first smart contract event, and uploads the obtained first signature information to the blockchain.

[0195] The target management node performs signature verification on the first signature information on the blockchain. If the verification passes, it sends an aggregation instruction to the blockchain node so that the blockchain node aggregates each first signature information into the first data sharing task. After the aggregation is successful, the target management node updates the status of the first data sharing task to authorized completion. If the verification fails, it waits for re-verification.

[0196] Further, when the blockchain node also maintains the status of the first data sharing task, after determining that the aggregation of the first signature information is completed, the target management node can also send status update indication information to the blockchain node so that the blockchain node updates the status of the first data sharing task to the authorized completion status according to the status update indication information.

[0197] If no signature pre-authorization is performed on the first data sharing task, the processing process of the first management node is as Figure 10 shown. The first management node sends a signature request to the first participant in its affiliated institution in response to the first smart contract event, receives the response information returned by the first participant in response to the signature request. If the response information indicates consent, it signs the first data sharing task, signs the first data sharing task, and uploads the obtained first signature information to the blockchain. The target management node performs signature verification on the first signature information on the blockchain. If the verification passes, it sends an aggregation instruction to the blockchain node so that the blockchain node aggregates each first signature information into the first data sharing task. After the aggregation is successful, the target management node updates the status of the first data sharing task to authorized completion.

[0198] If the verification fails, it waits for re-verification.

[0199] The following introduces the device embodiments of the present application, which can be used to execute the methods in the above embodiments of the present application. For details not disclosed in the device embodiments of the present application, please refer to the above method embodiments of the present application.

[0200] Figure 11 is a block diagram of a task processing device 800 shown according to an embodiment of the present application, applied to a target management node in the affiliated institution of the first initiator of the first data sharing task. The target management node can be an electronic device such as a server, as Figure 11 shown. The task processing device 800 includes:

[0201] A generation module 810, configured to generate a first data sharing task approval transaction based on the participant information of each first participant and the task parameters of the first data sharing task in response to a first initiator creating a first data sharing task involving multiple parties, where the first participants are the participants in the first data sharing task;

[0202] A blockchain module 820, configured to perform blockchain processing on the first data sharing task approval transaction in the blockchain system, so that when at least one blockchain node in the blockchain system determines that the first data sharing task approval transaction is successfully uploaded to the blockchain, a first smart contract event is triggered; the first smart contract event is used for a first management node to sign the first data sharing task based on the private keys of at least one first participant and upload the obtained first signature information; the first management node refers to the management node in the institution to which the first participant belongs;

[0203] An update module 830, configured to update the status of the first data sharing task to the authorized completion status if it is determined according to the first signature information that the first data sharing task passes the signature verification, so that the gateway node in the institution to which the first participant belongs executes the first data sharing task in response to the first data sharing task being in the authorized completion status.

[0204] Optionally, the first participants include a data provider and a data user; the task parameters indicate the target data to be shared; during the execution of the first data sharing task, the first gateway node in the institution to which the data provider belongs obtains the target data from the data provider and sends the target data to the second gateway nodes in the institutions to which the data users belong, so that the second gateway nodes send the target data to the data users.

[0205] In one embodiment, the task processing device 800 further includes a signature verification module, and the signature verification module includes:

[0206] A signature verification sub-module, configured to perform signature verification on the first signature information from the first management node belonging to each first participant according to the public key of the first participant, to obtain the signature verification results of the first signature information;

[0207] A signature verification determination sub-module, configured to determine that the first data sharing task passes the signature verification if it is determined according to the signature verification results of the first signature information that all the first signature information for the first data sharing task passes the signature verification, and it is determined according to the first signature information that all the first management nodes have signed the first data sharing task.

[0208] In one embodiment, the task processing device 800 further includes a signature module, and the signature module includes:

[0209] The signature information acquisition sub-module is used to obtain the second signature information obtained by the second party signing the second data sharing task based on its own private key if a second smart contract event triggered by the approval transaction of the second data sharing task is detected in the blockchain system; the approval transaction of the second data sharing task is generated in response to the second data sharing task initiated by the second initiator, and the second party refers to the party among the parties involved in the second data sharing task whose affiliated institution is the affiliated institution of the target management node;

[0210] The signature information processing sub-module is used to perform on-chain processing of the second signature information in the blockchain system.

[0211] Optionally, the signature information acquisition sub-module includes:

[0212] The sending unit is used to send a signature request to the second party if it is determined that the second party has not pre-authorized the signature of the second data sharing task;

[0213] The receiving unit is used to receive the response information returned by the second party in response to the signature request;

[0214] The first acquisition unit is used to sign the second data sharing task with the private key of the second party if the response information indicates consent to sign, and obtain the second signature information.

[0215] Optionally, the signature information acquisition sub-module includes:

[0216] The second acquisition unit is used to sign the second data sharing task based on the private key of the second party if it is determined that the second party has pre-authorized the signature of the second data sharing task, and obtain the second signature information.

[0217] Optionally, the second smart contract event includes the task parameters of the second data sharing task and the participant information of the participants in the second data sharing task; the participant information includes the participant identifier and the role of the participant in the second data sharing task; the task parameters include the task identifier; the signature information processing sub-module includes:

[0218] The information acquisition unit is used to obtain the role of the second party and the participant identifier of the second party from the second smart contract event;

[0219] The storage unit is used to send the role of the second party, the participant identifier of the second party, the task identifier of the second data sharing task, the signature identity certificate of the second party, and the second signature information to the blockchain nodes in the blockchain system, so that the blockchain nodes form a composite key based on the role of the second party, the participant identifier of the second party, and the task identifier of the second data sharing task, and push the signature identity certificate of the second party and the second signature information as the value of the composite key to the blockchain.

[0220] Figure 12 The figure shows a schematic structural diagram of a computer system of an electronic device suitable for implementing the embodiments of the present application. The electronic device can be used as the target management node in the above text and is used to implement the task processing method provided by the present application.

[0221] It should be noted that Figure 12 The computer system 900 of the shown electronic device is only an example and should not impose any limitations on the functions and usage scope of the embodiments of the present application.

[0222] As Figure 12 shown, the computer system 900 includes a central processing unit (CPU) 901, which can execute various appropriate actions and processes according to the program pushed to the read-only memory (ROM) 902 or the program loaded from the storage section 908 into the random access memory (RAM) 903, such as executing the method in the above embodiments. In the RAM 903, various programs and data required for system operation are also stored. The CPU 901, ROM 902, and RAM 903 are connected to each other via a bus 904. The input / output (I / O) interface 905 is also connected to the bus 904.

[0223] The following components are connected to the I / O interface 905: an input section 906 including a keyboard, a mouse, etc.; an output section 907 including such as a cathode ray tube (CRT), a liquid crystal display (LCD), etc. and a speaker, etc.; a storage section 908 including a hard disk, etc.; and a communication section 909 including a network interface card such as a LAN (Local Area Network) card, a modem, etc. The communication section 909 performs communication processing via a network such as the Internet. A drive 910 is also connected to the I / O interface 905 as required. A removable medium 911, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., is installed on the drive 910 as required so that the computer program read from it can be installed into the storage section 908 as required.

[0224] In particular, according to an embodiment of the present application, the process described above with reference to the flowchart can be implemented as a computer software program. For example, an embodiment of the present application includes a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program contains program codes for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from the network through the communication section 909, and / or installed from the removable medium 911. When the computer program is executed by the central processing unit (CPU) 901, various functions defined in the system of the present application are executed.

[0225] It should be noted that the computer-readable medium shown in the embodiments of the present application can be a computer-readable signal medium or a computer-readable storage medium or any combination of the two. The computer-readable storage medium can be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the above. More specific examples of the computer-readable storage medium can include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM), a flash memory, an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In the present application, the computer-readable storage medium can be any tangible medium that contains or stores a program, and the program can be used by or in combination with an instruction execution system, apparatus, or device. In the present application, the computer-readable signal medium can include a data signal propagated in a baseband or as part of a carrier wave, which carries the computer-readable program code. Such a propagated data signal can take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. The computer-readable signal medium can also be any computer-readable medium other than the computer-readable storage medium, and the computer-readable medium can send, propagate, or transmit a program for use by or in combination with an instruction execution system, apparatus, or device. The program code contained on the computer-readable medium can be transmitted by any appropriate medium, including but not limited to: wireless, wired, etc., or any suitable combination of the above.

[0226] The flowcharts and block diagrams in the accompanying drawings illustrate the possible architectures, functions, and operations of systems, methods, and computer program products according to various embodiments of the present application. Among them, each block in the flowchart or block diagram may represent a module, a program segment, or a part of code, and the above-mentioned module, program segment, or part of code contains one or more executable instructions for implementing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the blocks may occur in a different order from that marked in the accompanying drawings. For example, two consecutive blocks shown may actually be executed substantially in parallel, and they may sometimes be executed in the reverse order, depending on the functions involved. It should also be noted that each block in the block diagram or flowchart, as well as the combination of blocks in the block diagram or flowchart, can be implemented by a dedicated hardware-based system for performing the specified functions or operations, or can be implemented by a combination of dedicated hardware and computer instructions.

[0227] The units involved in the embodiments described in the present application can be implemented in software or in hardware, and the described units can also be provided in a processor. Among them, the names of these units do not constitute a limitation on the units themselves in some cases.

[0228] On the other hand, the present application also provides a computer-readable storage medium, which may be included in the electronic device described in the above embodiments; or it may exist separately and not be assembled into the electronic device. The above computer-readable storage medium carries computer-readable instructions, and when the computer-readable storage instructions are executed by a processor, the method in any of the above embodiments is implemented.

[0229] In the embodiments of the present application, the term "module" or "unit" refers to a computer program or a part of a computer program with a predetermined function, which works together with other related parts to achieve a predetermined goal, and can be implemented in whole or in part by using software, hardware (such as a processing circuit or a memory), or a combination thereof. Similarly, a processor (or multiple processors or memories) can be used to implement one or more modules or units. In addition, each module or unit can be a whole module or a part of the unit of the function of the module or unit.

[0230] According to one aspect of the embodiments of the present application, there is provided a computer program product or a computer program, which includes computer instructions, and the computer instructions are pushed into a computer-readable storage medium. The processor of the computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the computer device executes the method in any of the above embodiments.

[0231] It should be noted that although several modules or units of a device for action execution are mentioned in the above detailed description, this division is not mandatory. In fact, according to the embodiments of the present application, the features and functions of two or more modules or units described above can be embodied in one module or unit. Conversely, the features and functions of one module or unit described above can be further divided and embodied by multiple modules or units.

[0232] From the description of the above embodiments, those skilled in the art can easily understand that the example embodiments described herein can be implemented by software, or by software in combination with necessary hardware. Therefore, the technical solutions according to the embodiments of the present application can be embodied in the form of a software product, which can be delivered to a non-volatile storage medium (which can be a CD-ROM, a USB flash drive, a mobile hard disk, etc.) or on the network, including several instructions to enable a computing device (which can be a personal computer, a server, a touch terminal, or a network device, etc.) to execute the method according to the embodiments of the present application.

[0233] After considering the specification and practicing the embodiments disclosed herein, those skilled in the art will readily conceive of other embodiments of the present application. The present application is intended to cover any variations, uses, or adaptations of the present application, which follow the general principles of the present application and include well-known knowledge or conventional technical means in the technical field not disclosed in the present application.

[0234] It should be understood that the present application is not limited to the exact structures described above and shown in the drawings, and various modifications and changes can be made without departing from its scope. The scope of the present application is only limited by the appended claims.

Claims

1. A task processing method, characterized in that, The target management node in the institution to which the first initiator of the first data sharing task belongs. The method includes: In response to the first initiator creating a first data sharing task involving multiple parties, generating a first data sharing task approval transaction based on the participation information of each first participant and the task parameters of the first data sharing task. The first participants are the participants in the first data sharing task; Uploading the first data sharing task approval transaction to the blockchain system, so that when at least one blockchain node in the blockchain system determines that the first data sharing task approval transaction is successfully uploaded, a first smart contract event is triggered. The first smart contract event is used for the first management node to sign the first data sharing task based on the private keys of at least one first participant and upload the obtained first signature information. The first management node refers to the management node in the institution to which the first participant belongs; If it is determined that the first data sharing task passes the signature verification based on the first signature information, updating the status of the first data sharing task to the authorized completion status, so that the gateway node in the institution to which the first participant belongs executes the first data sharing task in response to the first data sharing task being in the authorized completion status.

2. The method according to claim 1, wherein Before updating the status of the first data sharing task to the authorized completion status if it is determined that the first data sharing task passes the signature verification based on the first signature information, the method further includes: For each first participant, verifying the signature of the first signature information from the first management node belonging to the first participant based on the public key of the first participant to obtain the signature verification results of each first signature information; If it is determined that all the first signature information for the first data sharing task passes the signature verification based on the signature verification results of each first signature information, and it is determined that all the first management nodes have signed the first data sharing task based on the first signature information, it is determined that the first data sharing task passes the signature verification.

3. The method according to claim 1, wherein The first participants include a data provider and a data user. The task parameters indicate the target data to be shared; During the execution of the first data sharing task, the first gateway node in the institution to which the data provider belongs obtains the target data from the data provider and sends the target data to the second gateway nodes in the institutions to which the data users belong, so that the second gateway nodes send the target data to the data users.

4. The method according to claim 1, wherein The method further includes: If a second smart contract event triggered by a second data sharing task approval transaction is detected in the blockchain system, obtaining second signature information obtained by the second participant signing the second data sharing task based on its own private key. The second data sharing task approval transaction is generated in response to a second data sharing task initiated by a second initiator. The second participants are the participants in the second data sharing task whose institutions are the same as the institution to which the target management node belongs; Uploading the second signature information to the blockchain system.

5. The method according to claim 4, characterized in that Obtaining the second signature information obtained by the second participating party signing the second data sharing task based on its own private key includes: If it is determined that the second participating party has not pre-authorized the signature of the second data sharing task, sending a signature request to the second participating party; Receiving the response information returned by the second participating party in response to the signature request; If the response information indicates consent to sign, using the private key of the second participating party to sign the second data sharing task to obtain the second signature information.

6. The method according to claim 4, wherein Obtaining the second signature information obtained by the second participating party signing the second data sharing task based on its own private key includes: If it is determined that the second participating party has pre-authorized the signature of the second data sharing task, signing the second data sharing task based on the private key of the second participating party to obtain the second signature information.

7. The method according to claim 4, characterized in that, The second smart contract event includes the task parameters of the second data sharing task and the participating party information of the participating parties in the second data sharing task; the participating party information includes the participating party identifier and the role of the participating party in the second data sharing task; the task parameters include the task identifier; The process of uploading the second signature information to the blockchain system in the blockchain system includes: Obtaining the role of the second participating party and the participating party identifier of the second participating party from the second smart contract event; Sending the role of the second participating party, the participating party identifier of the second participating party, the task identifier of the second data sharing task, the signature identity certificate of the second participating party, and the second signature information to a blockchain node in the blockchain system, so that the blockchain node forms a composite key based on the role of the second participating party, the participating party identifier of the second participating party, and the task identifier of the second data sharing task, uses the signature identity certificate of the second participating party and the second signature information as the value of the composite key, and associates and writes the composite key and the value of the composite key into the blockchain.

8. A task processing device, characterized in that, Applied to the target management node in the institution to which the first initiating party of the first data sharing task belongs; the device includes: A generation module, configured to, in response to the first initiating party creating a first data sharing task involving multiple parties, generate a first data sharing task approval transaction based on the participating party information of each first participating party and the task parameters of the first data sharing task, where the first participating party is a participating party in the first data sharing task; An uploading module, configured to upload the first data sharing task approval transaction to the blockchain system in the blockchain system, so that when at least one blockchain node in the blockchain system determines that the first data sharing task approval transaction is successfully uploaded to the blockchain, a first smart contract event is triggered; the first smart contract event is used for the first management node to sign the first data sharing task based on the private keys of at least one first participating party and upload the first signature information obtained by the signature to the blockchain; the first management node refers to the management node in the institution to which the first participating party belongs; An update module, configured to update the status of the first data sharing task to an authorized completion status if it is determined according to the first signature information that the first data sharing task passes the signature verification, so that a gateway node in the institution to which the first participating party belongs responds to the first data sharing task being in the authorized completion status and executes the first data sharing task.

9. An electronic device, characterized in that, Comprising: A processor; A memory storing computer-readable instructions thereon, and when the computer-readable instructions are executed by the processor, the method according to any one of claims 1-7 is implemented.

10. A computer-readable storage medium, characterized in that, Computer-readable instructions are stored thereon, characterized in that when the computer-readable instructions are executed by a processor, the method according to any one of claims 1-7 is implemented.

11. A computer program product comprising computer instructions, characterized in that, When the computer instructions are executed by a processor, the method according to any one of claims 1-7 is implemented.