A privacy computing method and device based on multi-party cooperation

Through the blockchain data collaboration platform, we obtain user computing needs and select suitable operators to generate instantiated computing processes, which solves the adaptation problem in privacy computing of multiple data sources and realizes transparent and reliable computing process and scenario adaptation.

CN115270202BActive Publication Date: 2025-10-10ANT BLOCKCHAIN TECHNOLOGY (SHANGHAI) CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210872158.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-07-22
Publication Date
2025-10-10
Estimated Expiration
2042-07-22

AI Technical Summary

Technical Problem

In privacy computing scenarios with multiple data sources, how can we flexibly adapt to different data privacy scenarios without understanding the data security requirements of each collaborative participant, achieve a transparent and reliable computing process, and facilitate traceability?

Method used

Through the blockchain-based data collaboration platform, the user-specified computing process is obtained, and operators that meet data security requirements are selected from the instantiated operator library, the instantiated computing process is generated, the smart contract is created and deployed to the blockchain network for user call.

Benefits of technology

It enables flexible adaptation to different data privacy scenarios without the user understanding the security requirements of each collaborative participant, enhances the transparency and credibility of the computing process, and facilitates traceability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115270202B_ABST
    Figure CN115270202B_ABST
Patent Text Reader

Abstract

One or more embodiments of the specification provide a privacy computing method and device based on multi-party collaboration. The method comprises: obtaining a computing flow specified by a user for privacy computing on data maintained by at least part of a plurality of collaborative participants; the computing flow comprises a computing flow composed of at least one functional operator specified by the user and related to the privacy computing; obtaining data security requirements of data maintained by at least part of the collaborative participants, selecting at least one instantiated operator corresponding to the at least one functional operator from an instantiated operator library related to the privacy computing and satisfying the data security requirements, and generating an instantiated computing flow corresponding to the computing flow based on the at least one instantiated operator; creating a smart contract containing privacy computing logic corresponding to the instantiated computing flow, and deploying the created smart contract to a blockchain network interfaced with a data collaboration platform.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] Embodiments of the present specification relate to the technical field of blockchain, and in particular to a privacy computing method and device based on multi-party cooperation. BACKGROUND

[0002] Privacy compute refers to a technology for realizing data analysis and calculation while protecting data from being leaked. For example, the current mainstream privacy computing technologies can generally include FL (Federated Learning) technology, MPC (Secure Multi-party Computation) technology, TEE (Trusted Execute Environment) technology, etc. In actual applications, the data participating in privacy computing can come from multiple different data sources. Therefore, how to utilize the data of multiple different data sources to perform privacy computing is a focus of the industry. SUMMARY

[0003] The present specification proposes a privacy computing method based on multi-party cooperation. A data cooperation platform based on a blockchain interfaces with multiple cooperation participants. The method is applied to a service end corresponding to any target cooperation participant in the multiple cooperation participants. The multiple cooperation participants maintain data for participating in privacy computing respectively. The method comprises the following steps.

[0004] Obtaining a computing flow specified by a user for performing privacy computation on data maintained by at least part of the multiple cooperation participants, wherein the computing flow comprises a computing flow composed of at least one functional operator specified by the user and related to the privacy computation;

[0005] Obtaining data security requirements of the data maintained by the at least part of the cooperation participants, selecting at least one instantiated operator corresponding to the at least one functional operator and satisfying the data security requirements from an instantiated operator library related to the privacy computation, and generating an instantiated computing flow corresponding to the computing flow based on the at least one instantiated operator;

[0006] Creating a smart contract containing privacy computation logic corresponding to the instantiated computing flow, and deploying the created smart contract to a blockchain network interfaced with the data cooperation platform for calling by the user.

[0007] This specification also proposes a privacy-preserving computing method based on multi-party collaboration, which is applied to a blockchain-based data collaboration platform. The data collaboration platform connects to multiple collaboration participants, each of which maintains data for participating in privacy-preserving computing. The method includes:

[0008] Obtaining a computational process, uploaded by a corresponding server of any target collaborative party among the multiple collaborative parties, for performing privacy-preserving computation on data maintained by at least some of the multiple collaborative parties, specified by the user; wherein the computational process includes a computational process consisting of at least one functional operator related to the privacy-preserving computation, specified by the user;

[0009] Obtaining data security requirements of at least some of the collaborative participants for the data they maintain, selecting at least one instantiated operator corresponding to the at least one functional operator that meets the data security requirements from a library of instantiated operators related to the privacy computing, and generating an instantiated computing process corresponding to the computing process based on the at least one instantiated operator;

[0010] Create a smart contract containing privacy computing logic corresponding to the instantiated computing process, and deploy the created smart contract to the blockchain network connected to the data collaboration platform for the user to call.

[0011] This specification also proposes a privacy-preserving computing device based on multi-party collaboration, wherein a blockchain-based data collaboration platform is connected to multiple collaboration participants; the method is applied to a server corresponding to any target collaboration participant among the multiple collaboration participants; wherein the multiple collaboration participants respectively maintain data for participating in privacy-preserving computing; the device includes:

[0012] a first acquisition module for acquiring a computational process specified by a user for performing privacy-preserving computation on data maintained by at least some of the multiple collaborative participants; wherein the computational process includes a computational process consisting of at least one functional operator specified by the user and related to the privacy-preserving computation;

[0013] A first generation module is configured to obtain data security requirements of at least some of the collaborative participants for the data they maintain, select at least one instantiated operator corresponding to the at least one functional operator that meets the data security requirements from a library of instantiated operators related to the privacy computing, and generate an instantiated computing process corresponding to the computing process based on the at least one instantiated operator;

[0014] The first deployment module creates a smart contract containing privacy computing logic corresponding to the instantiated computing process, and deploys the created smart contract to the blockchain network connected to the data collaboration platform for the user to call.

[0015] This specification also proposes a privacy-preserving computing device based on multi-party collaboration, which is applied to a blockchain-based data collaboration platform; wherein the data collaboration platform is connected to multiple collaboration participants; the multiple collaboration participants respectively maintain data for participating in privacy-preserving computing; the device includes:

[0016] A second acquisition module is configured to acquire a computational process, uploaded by a corresponding server of any target collaborative party among the multiple collaborative parties, for performing privacy-preserving computation on data maintained by at least some of the multiple collaborative parties, specified by the user; wherein the computational process includes a computational process consisting of at least one functional operator specified by the user and related to the privacy-preserving computation;

[0017] a second generation module, which obtains data security requirements of at least some of the collaborative participants for the data they maintain, selects at least one instantiated operator corresponding to the at least one functional operator that meets the data security requirements from a library of instantiated operators related to the privacy computing, and generates an instantiated computing process corresponding to the computing process based on the at least one instantiated operator;

[0018] The second deployment module creates a smart contract containing privacy computing logic corresponding to the instantiated computing process, and deploys the created smart contract to the blockchain network connected to the data collaboration platform for the user to call.

[0019] In the above technical solutions in this specification, not only can the privacy computing process be made more transparent, reliable and easy to trace when performing privacy computing on data from multiple data sources; but also, based on the privacy computing capabilities of the data collaboration platform itself, different instantiated computing processes that can meet the security requirements of each collaborative participant for data usage can be planned for different computing needs of users based on the privacy computing capabilities of the data collaboration platform itself, so that the data collaboration platform can flexibly adapt to different data privacy scenarios and activate more privacy computing scenarios. BRIEF DESCRIPTION OF THE DRAWINGS

[0020] Figure 1 It is a system architecture diagram of a data collaboration platform shown in an exemplary embodiment of this specification.

[0021] Figure 2is a flow chart of a privacy computing method based on multi-party collaboration according to an example embodiment of the present specification.

[0022] Figure 3 is a schematic diagram of virtualization processing of data maintained by multiple collaborative participants according to an example embodiment of the present specification.

[0023] Figure 4 is a flow chart of another privacy computing method based on multi-party collaboration according to an example embodiment of the present specification.

[0024] Figure 5 is a schematic structural diagram of an electronic device provided by an example embodiment.

[0025] Figure 6 is a block diagram of a privacy computing device based on multi-party collaboration according to an example embodiment of the present specification.

[0026] Figure 7 is a block diagram of another privacy computing device based on multi-party collaboration according to an example embodiment of the present specification. DETAILED DESCRIPTION

[0027] In order to enable those skilled in the art to better understand the technical solutions in the present specification, the technical solutions in the present specification will be clearly and completely described below in conjunction with the drawings in the present specification. Obviously, the described embodiments are only part of the embodiments of the present specification, rather than all the embodiments. Based on the embodiments in the present specification, all other embodiments obtained by those skilled in the art without creative labor should fall within the scope of protection of the present specification.

[0028] It should be noted that: in other embodiments, the steps of the corresponding method do not necessarily have to be performed in the order shown and described in the present specification. In some other embodiments, the steps included in the method can be more or less than those described in the present specification. In addition, a single step described in the present specification can be divided into multiple steps for description in other embodiments; and multiple steps described in the present specification can also be combined into a single step for description in other embodiments.

[0029] In the scenario of privacy computation on data from multiple different data sources, in order to break the information silos between various data sources and achieve sufficient data fusion, a centralized data collaboration platform is usually built. The centralized data collaboration platform is usually responsible for scheduling and managing data of various data sources. When privacy computation on data from multiple different data sources is needed, the data collaboration platform can query data from different data sources respectively, and perform privacy computation on the queried data based on its own privacy computation capability.

[0030] However, in actual application, different data sources usually have different security requirements for the use of the data they maintain; for example, some data sources may prohibit data export from the data domain where the data is located for the purpose of privacy protection, or may not allow the data they maintain to be aggregated with data maintained by other data sources for use, and the like.

[0031] The differences in security requirements for data of different data sources can give rise to a large number of data query and privacy computation scenarios. Therefore, it is of great significance for the data collaboration platform to adapt to these data query and privacy computation scenarios flexibly.

[0032] Based on this, the present specification proposes a technical solution for planning an instantiated computation process that meets the security requirements of each data source corresponding to a computation process customized by a user, based on the privacy computation capability of a data collaboration platform, under the premise that the user does not know the security requirements of each collaboration participant for data use, in the scenario of privacy computation based on data maintained by multiple data sources.

[0033] In implementation, a data collaboration platform based on a blockchain can be built, which can interface with multiple collaboration participants. Each collaboration participant can maintain data for participating in privacy computation.

[0034] For any target collaboration participant in the multiple collaboration participants, a user accessing a server corresponding to the target collaboration participant can specify a computation process corresponding to the user's computation demand based on a functional operator in a functional operator library related to privacy computation when the user has a computation demand for privacy computation on data maintained by at least some of the multiple collaboration participants.

[0035] The server corresponding to the target collaborative participant, after obtaining the computing process specified by the user, can further obtain the data security requirements of at least some of the collaborative participants for the data they maintain, select at least one instantiated operator corresponding to the at least one functional operator that meets the data security requirements from the instantiated operator library related to privacy computing, and generate an instantiated computing process corresponding to the above computing process based on the above at least one instantiated operator.

[0036] Then, a smart contract containing the privacy computing logic corresponding to the instantiated computing process can be created, and the created smart contract can be deployed to the blockchain network connected to the data collaboration platform for the user to call.

[0037] The above technical solution not only makes the privacy computing process more transparent, trustworthy, and traceable when performing privacy computing on data from multiple data sources;

[0038] Moreover, without the user knowing the security requirements of each collaborative participant for data usage, based on the privacy computing capabilities of the data collaboration platform itself, different instantiated computing processes that can meet the security requirements of each collaborative participant for data usage can be planned according to the different computing needs of users. This allows the data collaboration platform to flexibly adapt to different data privacy scenarios and activate more privacy computing scenarios.

[0039] See Figure 1 , Figure 1 It is a system architecture diagram of a data collaboration platform shown in an exemplary embodiment of this specification.

[0040] like Figure 1 As shown, the aforementioned data collaboration platform can be a blockchain-based privacy collaboration platform that can connect to a blockchain network and multiple collaborating parties (i.e., multiple data sources). The data collaboration platform can perform computational scheduling on the data maintained by these multiple collaborating parties, completing privacy-preserving computations from a global data perspective.

[0041] For example, under the premise of meeting the data security requirements of each collaborative participant, the data maintained by each collaborative participant is treated as a whole for privacy calculation.

[0042] Each collaborative participant can maintain a data set and a computation result set. The data set stores the data involved in the privacy-preserving computation. The computation result set stores the computation results of the privacy-preserving computation performed on the data in the data set. These computation results can be either intermediate or final.

[0043] It should be noted that the above-mentioned data set and the above-mentioned calculation result set can specifically be a database. For different collaborative participants, the database used can be a homogeneous database or a heterogeneous database, which is not particularly limited in this specification.

[0044] In addition to the above-mentioned data sets and calculation result sets, each collaborative participant can also carry a number of instantiated operators and functional components related to privacy computing.

[0045] like Figure 1 As shown in the figure, the privacy-preserving computing-related instantiated operators deployed by each collaborative participant can include MPC-based instantiated operators, TEE-based instantiated operators, and TL-based instantiated operators, among others. Each instantiated operator corresponds to a computing operation or function implemented using a specific privacy-preserving computing technology. For a specific computing operation or function, multiple instantiated operators based on multiple privacy-preserving computing technologies can be used.

[0046] For example, if the computational function to be implemented is intersection calculation, then the instantiated operators corresponding to the intersection calculation function may specifically include an instantiated operator for intersection calculation based on MPC, an instantiated operator for intersection calculation based on TEE, and so on. In other words, for the intersection calculation function, two instantiated operators can be implemented based on MPC technology and TEE technology respectively.

[0047] like Figure 1 As shown in the figure, the functional components carried by each collaborative participant can specifically include the following:

[0048] The application execution planning component is used to select at least one instantiated operator corresponding to at least one functional operator included in the user-specified computational process from the instantiated operator library managed by the data collaboration platform, based on the data security requirements of each collaborative participant for the data they maintain. Based on this at least one instantiated operator, an instantiated computational process corresponding to the computational process is then planned, meeting the data security requirements of each collaborative participant. This instantiated computational process is a specific data collaboration application planned based on the user-specified computational process for performing privacy-preserving computing.

[0049] The application contract management component is used to generate execution code related to the privacy computing logic corresponding to the above-mentioned instantiated computing process, compile the generated execution code into smart contract code, and deploy the smart contract containing the above-mentioned smart contract code in the blockchain network connected to the data collaboration platform.

[0050] The execution scheduling component is used to interact with the above-mentioned smart contract. By monitoring the call results of the smart contract stored on the blockchain, it further calls the local instantiated operator to complete the relevant privacy calculations and submits the calculation results to the above-mentioned smart contract.

[0051] It should be noted that the various functional components shown above are only for illustration. In actual applications, some of the components can be integrated based on actual needs, or some components can be further split, which is not specifically limited in this specification.

[0052] It should also be noted that, in addition to the execution scheduling component, the other components of the functional components shown above can be distributedly deployed by the data collaboration platform on each collaboration participant ( Figure 1 The distributed deployment in each collaborative participant is shown), and it can also be centrally deployed on a data collaboration platform, which is not specifically limited in this specification. For example, it can be centrally deployed on a blockchain service platform ( Figure 1 (not shown).

[0053] Please continue to see Figure 1 For each collaborative participant, an application execution client can also be provided to the user.

[0054] The application execution client is specifically used to provide users with access services to the data collaboration platform. Users can use the application execution client to specify the computing process corresponding to their own privacy computing needs based on the functional operators managed by the data collaboration platform. They can also use the execution client to initiate contract calls for the above-mentioned smart contracts and query the call results of the smart contract through the application execution client.

[0055] See Figure 2 , Figure 2 This is a flowchart of a privacy computing method based on multi-party collaboration according to an exemplary embodiment of this specification. This method can be applied to Figure 1 A server corresponding to any target collaborative participant among the multiple collaborative participants shown; the method includes:

[0056] Step 202: Obtain a computational process specified by a user for performing privacy-preserving computation on data maintained by at least some of the multiple collaborative participants; wherein the computational process includes a computational process consisting of at least one functional operator specified by the user and related to the privacy-preserving computation;

[0057] The aforementioned collaborative participants may specifically be data providers connected to the data collaboration platform. For example, in one example, the aforementioned multiple collaborative participants may specifically include multiple data centers distributed in different regions.

[0058] The operators described in this specification refer to the various computational operations / computational functions involved in performing privacy-preserving computations on data maintained by various collaborative participants. In other words, any computational operation / computational function involved in performing privacy-preserving computations on data maintained by various collaborative participants can be referred to as an operator.

[0059] The functional operator mentioned above refers to a computational function or operation to be implemented. Any computational operation or function to be implemented during the privacy-preserving computation of data maintained by various collaborating parties can be considered a functional operator. The instantiated operator, on the other hand, refers to a computational function or operation that has already been implemented based on a specific privacy-preserving computing technology.

[0060] For example, current mainstream privacy computing technologies generally include FL technology, MPC technology, and TEE technology, etc. Therefore, the instantiated operators in the above-mentioned instantiated operator library can include instantiated operators implemented based on FL technology, instantiated operators implemented based on MPC technology, and operators implemented based on TEE technology, etc.

[0061] For example, if the functional operator is "intersection calculation," and the computational function to be implemented is "intersection calculation," then the instantiated operators corresponding to this functional operator may include an instantiated operator for intersection calculation implemented using MPC technology, an instantiated operator for intersection calculation implemented using TEE technology, and so on. In other words, for the intersection calculation function, two instantiated operators can be implemented using MPC technology and TEE technology, respectively.

[0062] In practical applications, the privacy computing capabilities of a data collaboration platform are usually determined by the instantiated operator library managed by the data collaboration platform. The richer the types of instantiated operators contained in the instantiated operator library, the stronger the privacy computing capabilities of the data collaboration platform itself.

[0063] In an embodiment shown, the instantiation operators in the instantiation operator library managed by the data collaboration platform can be based on the operators implemented by the privacy computing technologies supported by the data collaboration platform, and can also include operators implemented based on the privacy computing technologies supported by each collaboration participant. In this way, the data collaboration platform can cover the privacy computing capabilities of each collaboration participant accessing the data collaboration platform. In this specification, each collaboration participant can maintain a data set for participating in privacy computing at its local. In order to break the information silos between each collaboration participant, the data collaboration platform can perform data virtualization processing on the data sets maintained by each collaboration participant based on data virtualization technology.

[0064] Data virtualization technology is a technology that maps physical data maintained by multiple data sources into virtual data at a logical level, and then integrates the physical data maintained by multiple data sources into a logical virtual data set (also referred to as a logical view) for use by an upper layer application. By performing data virtualization processing on the data sets maintained by each collaboration participant, the data sets maintained by each collaboration participant can be integrated into a virtual data set for use by a user.

[0065] In mapping the physical data maintained by multiple data sources into virtual data, it usually refers to the process of mapping the physical data attributes contained in the physical data into virtual data attributes. It should be noted that when mapping the physical data attributes contained in the physical data into virtual data attributes, one-to-one mapping can be used to map one physical data attribute contained in the physical data into a corresponding virtual data attribute, or multiple-to-one mapping can be used to map multiple physical data attributes contained in the physical data into a corresponding virtual data attribute.

[0066] For example, please refer to Figure 3 , Figure 3 A schematic diagram of data virtualization processing on data maintained by multiple collaboration participants is shown for an exemplary embodiment of the present specification.

[0067] As shown in Figure 3 , it is assumed that the data stored in data set 1 maintained by collaboration participant 1 includes attributes 1-3, the data stored in data set 2 maintained by collaboration participant 2 includes attributes 4-7, and the data stored in data set 3 maintained by collaboration participant 3 includes attributes 8-11. Each attribute can represent a field in a data table. The virtual data table obtained after data virtualization processing on the data stored in data sets 1-3 can include attributes A-F.

[0068] In which, as Figure 3As can be seen from the data virtualization processing method shown, attribute 1 in dataset 1, attribute 4 in dataset 2, and attribute 8 in dataset 3 are mapped to attribute A in the virtual data table using a many-to-one mapping method; attribute 2 in dataset 1, attribute 5 in dataset 2, and attribute 9 in dataset 3 are mapped to attribute B in the virtual data table using a many-to-one mapping method; attribute 3 in dataset 1 and attribute 6 in dataset 2 are mapped to attribute C in the virtual data table using a many-to-one mapping method. Attribute 10 in dataset 3 is mapped to attribute D in the virtual data table using a one-to-one mapping method; attribute 7 in dataset 2 is mapped to attribute E in the virtual data table using a one-to-one mapping method; and attribute 11 in dataset 3 is mapped to attribute F in the virtual data table using a one-to-one mapping method.

[0069] It should be emphasized that Figure 3 The data mapping method shown is only exemplary. In actual applications, the data mapping method adopted when virtualizing data maintained by multiple collaborative participants usually depends on the data semantics of the data itself and is not specifically limited in this specification. For example, when performing data mapping, if the data semantics of multiple data fields distributed among different collaborative participants are related, the multiple data fields can be mapped into a virtual data attribute.

[0070] After completing the data virtualization processing for the data sets maintained by each collaborative participant, the obtained virtual data table can be sent to each collaborative participant, and each collaborative participant can further use the virtual data table as a data view that can globally reflect the data status maintained by each collaborative participant, and output it to the user.

[0071] When users who access the above-mentioned target collaborative participants through the client have privacy computing needs, they can initiate data queries from a global data perspective by inputting data query requests for the virtual data table through the client.

[0072] The data query request is specifically used to express the user's data query needs to the data collaboration platform. The specific form of the data query request is not particularly limited in this specification. For example, in one example, the data query request can be a data query statement (such as an SQL statement) input by the user.

[0073] After completing the data query, users can specify the computing process corresponding to their own privacy computing needs based on the functional operators managed by the data collaboration platform.

[0074] It should be noted that the specific content of the above-mentioned computational process generally depends on the user's privacy computing needs and is not specifically limited in this specification. In actual applications, users can customize the computational process corresponding to their own computing needs by combining the functional operators in the above-mentioned functional operator library in any form. Specifically, users specify the computational process operations corresponding to their privacy computing needs based on the functional operators managed by the data collaboration platform, which can be completed on the client.

[0075] For example, suppose the virtual data set described above is a user information table that stores user personal information, including gender and age fields. In this scenario, if the user's privacy calculation requirement for the user information table is to "query the average age data of male users stored in the user information table," then the user can select from the functional operator library the functional operators corresponding to the calculation function "query and calculate the user information of male users in the user information table," the functional operator corresponding to the calculation function "filter and calculate the age data in the user information of male users in the user information table," and the functional operator corresponding to the calculation function "calculate the average value of the filtered age data." Based on these three selected functional operators, the user can then customize the calculation process that corresponds to their privacy calculation requirement.

[0076] For example, if the user's privacy computing requirement for the user information table is "training a machine learning model based on the user data in the user information table", the user can select the functional operator corresponding to the computing function of "machine learning training" in the above-mentioned functional operator library to customize the computing process corresponding to his or her own privacy computing needs.

[0077] In one embodiment shown, the server corresponding to the above-mentioned target collaborative participant can specifically output the functional operator library related to privacy computing managed by the data collaboration platform to the user through the client, and obtain at least one functional operator selected by the user in the output functional operator library, and then generate a calculation process for privacy computing for the data maintained by at least some of the above-mentioned multiple collaborative participants based on the above-mentioned at least one functional operator.

[0078] In an implementation shown, the server corresponding to the target collaborative participant can output a computing flow planning interface to the user through the client, where the computing flow planning interface can include the functional operator library. The user can interact with the client through the computing flow planning interface to express the user's privacy computing requirement. For example, the user can select at least one functional operator from the functional operator library and specify a logical order for the at least one functional operator in the computing flow planning interface to express the user's computing requirement to the client. For example, in an example, the user can specify a one-way logical order for the at least one functional operator in the computing flow planning interface to form a DAG (Directed Acyclic Graph) graph structure with the at least one functional operator.

[0079] It should be noted that the user's operation in the computing flow planning interface is not particularly limited in the present specification. For example, in an example, the functional operators in the functional operator library can be input to the user in the form of options through the computing flow planning interface, and the user can select at least one functional operator from the options and set a one-way connection between the selected functional operators in the computing flow planning interface to express the logical order between the functional operators, and then concatenate the at least one functional operator into a DAG graph structure based on the one-way logical order to serve as the user's specified computing flow.

[0080] In step 204, the data security requirement of the data maintained by the at least part of the collaborative participants is obtained, at least one instantiated operator corresponding to the at least one functional operator that meets the data security requirement is selected from the instantiated operator library related to the privacy computing, and an instantiated computing flow corresponding to the computing flow is generated based on the at least one instantiated operator.

[0081] After obtaining the computing flow specified by the user for privacy computing of the data maintained by the at least part of the collaborative participants, the server corresponding to the target collaborative participant can select at least one instantiated operator corresponding to the at least one functional operator from the managed instantiated operator library, and generate an instantiated query flow corresponding to the computing flow based on the selected at least one instantiated operator.

[0082] It should be noted that in actual applications, different data sources typically have different security requirements for the use of the data they maintain. For example, some data sources may prohibit the export of data from their data domain for use for privacy protection purposes, or prohibit the aggregation of their data with data maintained by other data sources. Therefore, to ensure that the selected instantiation operator can meet the security requirements of each collaborative participant for data use, you can refer to the security requirements of each collaborative participant for data use and select an appropriate instantiation operator from the above instantiation operator library.

[0083] In this case, the server corresponding to the above-mentioned target collaborative participant, after obtaining the user-specified calculation process for performing privacy calculation on the data maintained by at least some of the above-mentioned multiple collaborative participants, can first obtain the data security requirements of each collaborative participant for the data it maintains, and then select at least one instantiation operator corresponding to the above-mentioned at least one functional operator that meets the above-mentioned data security requirements from the above-mentioned instantiation operator library.

[0084] In this way, even if users do not understand the security requirements of various collaborative participants for data usage, the data collaboration platform can still automatically select instantiated operators for users that can meet the security requirements of various collaborative participants for data usage based on the user's privacy computing needs.

[0085] Among them, since the data security policy configured by each collaborative participant for the data it maintains can, to some extent, reflect the security requirements of each collaborative participant for the use of data; therefore, when obtaining the data security requirements of each collaborative participant for the data it maintains, it is possible to first obtain the data security policy configured by each collaborative participant for the data it maintains. After obtaining the data security policy configured by each collaborative participant for the data it maintains, it is possible to further determine the data security requirements of each collaborative participant for the data it maintains based on the data security policy.

[0086] The specific content of the data security policy configured by each collaborative participant for the data it maintains usually depends on the specific security requirements of each collaborative participant for data use, and therefore will not be specifically limited in this specification.

[0087] In one embodiment, the data security policy may include one or more of the following:

[0088] the security level configured for the data;

[0089] the security protection level configured for the data;

[0090] Data trust relationships with other collaborative participants;

[0091] Corresponding to the above data security policy is the security requirement of each collaborative participant for data use, which may specifically include one or a combination of the following:

[0092] A security requirement for whether to allow data to be exported from the data domain where the data is located, determined based on the security level;

[0093] Security requirements for whether to allow data desensitization processing of the data and privacy calculation results of the data, determined based on the security protection level;

[0094] The security requirement of whether to allow the data to be aggregated with the data maintained by other collaborative participants is determined based on the data trust relationship.

[0095] In one embodiment shown, corresponding data security requirements may also be configured for the instantiated operator libraries included in the instantiated operator library. The data security requirements configured for the instantiated operator library are specifically used to indicate the data security requirements that the instantiated operator can meet.

[0096] In this case, specifically, at least one instantiated operator corresponding to the at least one functional operator may be searched in the instance operator library first; at this time, there may be instantiated operators among the instantiated operators found that do not meet the above security requirements.

[0097] Then, the data security requirements of at least some of the above-mentioned collaborative participants for the data they maintain can be matched with the data security requirements corresponding to the at least one instantiation operator found; then, based on the matching results, an instantiation operator that matches the data security requirements of at least some of the above-mentioned collaborative participants for the data they maintain can be further selected from the at least one instantiation operator.

[0098] In one embodiment shown, the data collaboration platform can specifically deploy a distributed process planning component on the server side corresponding to the above-mentioned multiple collaboration participants. The process planning component can be specifically used to obtain the data security requirements of at least some of the above-mentioned collaboration participants for the data they maintain, select at least one instantiated operator corresponding to the above-mentioned at least one functional operator that meets the above-mentioned data security requirements from the managed instantiated operator library, and generate an instantiated computing process corresponding to the computing process based on the above-mentioned at least one instantiated operator. The instantiated operator library managed by the above-mentioned data collaboration platform can also be specifically distributed to the server side corresponding to each collaboration participant, and maintained by each collaboration participant separately.

[0099] In this case, after obtaining the user-specified computing process, the server corresponding to the above-mentioned target collaborative participant can call the process planning component to obtain the data security requirements of at least some of the above-mentioned collaborative participants for the data they maintain, and select at least one instantiation operator corresponding to the above-mentioned at least one functional operator that meets the above-mentioned data security requirements from the locally maintained instantiation operator library related to the above-mentioned privacy computing, and generate an instantiation query process corresponding to the above-mentioned computing process based on the above-mentioned at least one instantiation operator.

[0100] For example, see Figure 1 , the above process planning components can specifically include Figure 1 The application execution planning component shown. At this time, the instantiated computing process is a specific data collaboration application for privacy computing planned based on the computing process composed of functional operators specified by the user.

[0101] In one embodiment, when generating an instantiated computation flow corresponding to the computation flow based on the at least one instantiated operator, multiple instantiated computation flows may be generated based on the at least one instantiated operator, and these multiple instantiated computation flows are then displayed to the user, allowing the user to select an optimal query flow from the multiple instantiated computation flows. Of course, in actual applications, a single optimal instantiated computation flow may be generated based on the at least one instantiated operator by default.

[0102] Step 208: Create a smart contract containing the privacy computing logic corresponding to the instantiated computing process, and deploy the created smart contract to the blockchain network connected to the data collaboration platform for the user to call.

[0103] After generating the instantiated computing process based on the at least one instantiated operator, the server corresponding to the target collaborative participant may further compile the instantiated computing process into a smart contract and deploy it to the blockchain network connected to the data collaboration platform.

[0104] For example, in one example, the server can first automatically generate execution code related to the privacy computing logic corresponding to the instantiated computing process, and compile the generated execution code into smart contract code; then, deploy the smart contract containing the smart contract code in the blockchain network connected to the data collaboration platform. The specific process of deploying the smart contract will not be described in detail in this manual. For example, in actual applications, a smart contract creation transaction can be packaged based on the smart contract code, and the smart contract creation transaction can be published to the blockchain network. The node devices in the blockchain network can perform consensus verification on the smart contract creation transaction, and after the consensus verification passes, execute the smart contract call transaction, create a smart contract account in the blockchain, and anchor the smart contract code to the smart contract account to complete the creation of the smart contract.

[0105] In one embodiment shown, the data collaboration platform can specifically deploy a distributed smart contract management component on the server side corresponding to the above-mentioned multiple collaborative participants. The smart contract management component can be specifically used to generate execution code related to the privacy computing logic corresponding to the above-mentioned instantiated computing process, and compile the generated execution code into smart contract code, and deploy the smart contract containing the smart contract code in the blockchain network connected to the data collaboration platform.

[0106] In this case, after the server corresponding to the above-mentioned target collaborative participant generates the above-mentioned instantiated computing process based on the above-mentioned at least one instantiated operator, it can call the smart contract management component to further generate execution code related to the privacy computing logic corresponding to the above-mentioned instantiated computing process, and compile the generated execution code into smart contract code, and deploy the smart contract containing the smart contract code in the blockchain network connected to the data collaboration platform.

[0107] For example, see Figure 1 , the above-mentioned smart contract management components can specifically include Figure 1 The application contract management component is shown.

[0108] In this specification, when the above-mentioned smart contract is deployed, the user can initiate a contract call for the smart contract through the client to complete the privacy calculation of the data maintained by at least some of the above-mentioned collaborative participants.

[0109] For example, see Figure 1 When the above smart contract is deployed, users can Figure 1 The application execution client is shown to initiate a contract call for the smart contract, and the call result of the smart contract is queried through the application execution client.

[0110] In one embodiment shown, the privacy computing logic corresponding to the above-mentioned instantiated computing process can specifically be a computing scheduling logic corresponding to the instantiated computing process; wherein, the computing scheduling logic is specifically used to perform computing scheduling for at least one of the above-mentioned instantiated operators to complete the privacy computing for the data maintained by at least some of the above-mentioned collaborative participants.

[0111] In this case, the smart contract can specifically be a smart contract that schedules computations for the privacy-preserving computation logic. In addition to maintaining the computation scheduling order corresponding to each instantiated operator in the instantiated computation process, this smart contract also needs to maintain the computation status corresponding to each instantiated operator, indicating whether the computation has been completed.

[0112] When a user triggers the smart contract through the client, the smart contract determines the first instantiated operator to call according to the computation scheduling order and generates a computation event corresponding to that instantiated operator. Upon listening to this computation event, the execution scheduling component on the server where the instantiated operator resides can further call the instantiated operator to perform data privacy computation and, upon completion, submit the result to the smart contract. Upon receiving this computation result, the smart contract triggers an update of the instantiated operator's computation status to "Completed." Once the computation status is updated to "Completed," the smart contract determines the next instantiated operator to call and executes the same execution process as described above, and so on, until all instantiated operators in the aforementioned computation process have completed the data privacy computation in the computation scheduling order.

[0113] See Figure 4 , Figure 4 This is a flowchart of a privacy computing method based on multi-party collaboration according to an exemplary embodiment of this specification. This method can be applied to Figure 1 The data collaboration platform shown; for example, the data collaboration platform may be a blockchain service platform for managing the above-mentioned blockchain network; for example, a BaaS (Blockchain as a Service) platform; the method includes:

[0114] Step 402: Obtain a computational process, uploaded by a corresponding server of any target collaborative party among the multiple collaborative parties, for performing privacy-preserving computation on data maintained by at least some of the multiple collaborative parties, specified by the user; wherein the computational process includes a computational process consisting of at least one functional operator specified by the user and related to the privacy-preserving computation;

[0115] In this embodiment, the server corresponding to the above-mentioned target collaborative participant, after obtaining the user-specified calculation process for performing privacy calculation on the data maintained by at least some of the above-mentioned multiple collaborative participants, can upload the data query request to the above-mentioned data collaboration platform, which will perform centralized processing.

[0116] Step 404: Obtain data security requirements of at least some of the collaborating parties for the data they maintain, select at least one instantiated operator corresponding to the at least one functional operator that meets the data security requirements from a library of instantiated operators related to the privacy-preserving computing, and generate an instantiated computing process corresponding to the computing process based on the at least one instantiated operator;

[0117] Step 406: Create a smart contract containing the privacy computing logic corresponding to the instantiated computing process, and deploy the created smart contract to the blockchain network connected to the data collaboration platform for the user to call.

[0118] After receiving the instantiation calculation process uploaded by the target collaboration participant, the data collaboration platform can execute the execution logic shown in steps 404-406 to centrally process the instantiation calculation process. For specific implementation details, please refer to Figure 2 The description of the illustrated embodiments will not be repeated in detail in this specification.

[0119] In the above technical solution, not only can the complexity of data use be reduced when performing privacy calculations on data from multiple data sources, but the data usage process can also be made more transparent, reliable and easy to trace.

[0120] For example, through data virtualization technology, the data maintained by each collaborative participant is virtualized to create a virtual data set. This not only enables full data integration from multiple data sources, but also allows users to use data from a global perspective based on this virtual data set, eliminating the need to store data in the data of each collaborative participant, thereby significantly reducing the complexity of data use. By deploying the generated query process on the blockchain in the form of a smart contract for user access, the characteristics of smart contracts can be fully utilized, making each query transparent, trustworthy, and easy to trace.

[0121] Moreover, based on the privacy computing capability of the data collaboration platform itself, different instantiated computing processes that can meet the security requirements of the data use of each collaborative participant can be planned for different computing needs of the user, so that the data collaboration platform can flexibly adapt to different data privacy scenarios and activate more privacy computing scenarios.

[0122] For example, different data sources usually have different security requirements for the use of the data they maintain. As a user party with data use needs, the user usually does not know the security requirements of each data source for the use of the data, which makes it difficult for the user to plan a computing process that perfectly meets the security requirements of each data source for the use of the data based on the user's own privacy computing needs.

[0123] Through the above technical solutions, since the security requirements of each data source for the use of the data can be taken as a reference to automatically plan an instantiated computing process that can meet the security requirements of each collaborative participant for the use of the data for the user based on the privacy computing capability of the data collaboration platform, the user no longer needs to focus on the security requirements of each data source for the use of the data, and the adaptation capability of the data collaboration platform to the privacy computing scenario is also obviously improved, so it is possible for the data collaboration platform to activate more data privacy computing scenarios that can meet the security requirements of different data sources.

[0124] Corresponding to the embodiments of the foregoing method, the present specification also provides embodiments of an apparatus, an electronic device, and a storage medium.

[0125] Figure 5 is a schematic structural diagram of an electronic device provided by an example embodiment. Please refer to Figure 5 At the hardware level, the device includes a processor 502, an internal bus 504, a network interface 506, a memory 508, and a non-volatile memory 510, and of course can also include other hardware required by the business. One or more embodiments of the present specification can be implemented in a software manner, such as reading the corresponding computer program from the non-volatile memory 510 into the memory 508 by the processor 502 and then running. Of course, in addition to the software implementation, one or more embodiments of the present specification do not exclude other implementation manners, such as logic devices or a combination of software and hardware, etc., that is, the execution subject of the following processing flow is not limited to each logic unit, but can also be hardware or a logic device.

[0126] As shown in Figure 6 , the device includes a processor 502, an internal bus 504, a network interface 506, a memory 508, and a non-volatile memory 510, and of course can also include other hardware required by the business. One or more embodiments of the present specification can be implemented in a software manner, such as reading the corresponding computer program from the non-volatile memory 510 into the memory 508 by the processor 502 and then running. Of course, in addition to the software implementation, one or more embodiments of the present specification do not exclude other implementation manners, such as logic devices or a combination of software and hardware, etc., that is, the execution subject of the following processing flow is not limited to each logic unit, but can also be hardware or a logic device. Figure 6This is a block diagram of a privacy computing device based on multi-party collaboration according to an exemplary embodiment of this specification. The device can be applied to Figure 5 In the electronic device shown in FIG. , the technical solution of this specification is implemented. The device 600 includes:

[0127] A first acquisition module 601 acquires a computational process specified by a user for performing privacy-preserving computation on data maintained by at least some of the multiple collaboration participants; wherein the computational process includes a computational process consisting of at least one functional operator specified by the user and related to the privacy-preserving computation;

[0128] A first generation module 602 is configured to obtain data security requirements of at least some of the collaborating parties for the data they maintain, select at least one instantiated operator corresponding to the at least one functional operator that meets the data security requirements from a library of instantiated operators related to the privacy-preserving computing, and generate an instantiated computing process corresponding to the computing process based on the at least one instantiated operator;

[0129] The first deployment module 603 creates a smart contract containing privacy computing logic corresponding to the instantiated computing process, and deploys the created smart contract to the blockchain network connected to the data collaboration platform for the user to call.

[0130] The specific details of each module of the above-mentioned device 600 have been described in detail in the method flow described above, and therefore will not be repeated here.

[0131] like Figure 7 As shown, Figure 7 This is a block diagram of another user service device according to an exemplary embodiment of the present specification. The device can also be applied to Figure 5 In the electronic device shown in FIG. 1 , the technical solution of this specification is implemented. The device 700 includes:

[0132] A second acquisition module 701 acquires a computational process, uploaded by a corresponding server of any target collaborative party among the multiple collaborative parties, for performing privacy-preserving computation on data maintained by at least some of the multiple collaborative parties, specified by the user; wherein the computational process includes a computational process consisting of at least one functional operator specified by the user and related to the privacy-preserving computation;

[0133] The second parsing module 702 obtains data security requirements of at least some of the collaborating parties for the data they maintain, selects at least one instantiated operator corresponding to the at least one functional operator that meets the data security requirements from a library of instantiated operators related to the privacy computing, and generates an instantiated computing process corresponding to the computing process based on the at least one instantiated operator;

[0134] The second generation module 703 creates a smart contract containing the privacy computing logic corresponding to the instantiated computing process, and deploys the created smart contract to the blockchain network connected to the data collaboration platform for the user to call.

[0135] The specific details of each module of the above-mentioned device 700 have been described in detail in the method flow described above, and therefore will not be repeated here.

[0136] Accordingly, this specification also provides an electronic device, which includes a processor; a memory for storing processor-executable instructions; wherein the processor is configured to implement the steps in all the method flows described above.

[0137] Accordingly, this specification also provides a computer-readable storage medium having executable instructions stored thereon; wherein, when the instructions are executed by a processor, the steps in all the method flows described above are implemented.

[0138] For the device embodiments, since they basically correspond to the method embodiments, the relevant parts can be referred to the partial description of the method embodiments. The device embodiments described above are merely illustrative, wherein the modules described as separate components may or may not be physically separated, and the components displayed as modules may or may not be physical modules, that is, they may be located in one place, or they may be distributed on multiple network modules. Some or all of the modules may be selected according to actual needs to achieve the purpose of the scheme of this specification. A person of ordinary skill in the art can understand and implement it without paying any creative work.

[0139] The systems, devices, modules, or units described in the above embodiments may be implemented by computer chips or entities, or by products having certain functions. A typical implementation device is a computer, which may be in the form of a personal computer, laptop computer, cellular phone, camera phone, smartphone, personal digital assistant, media player, navigation device, email transceiver, game console, tablet computer, wearable device, or any combination of these devices.

[0140] In a typical configuration, a computer includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.

[0141] Memory may include non-permanent storage in a computer-readable medium, random access memory (RAM) and / or non-volatile memory in the form of read-only memory (ROM) or flash RAM. Memory is an example of a computer-readable medium.

[0142] Computer-readable media include permanent and non-permanent, removable and non-removable media that can be used to store information using any method or technology. Information can be computer-readable instructions, data structures, program modules, or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disc read-only memory (CD-ROM), digital versatile disc (DVD) or other optical storage, magnetic cassettes, disk storage, quantum memory, graphene-based storage media or other magnetic storage devices, or any other non-transmission media that can be used to store information that can be accessed by a computing device. As defined herein, computer-readable media does not include transitory media such as modulated data signals and carrier waves.

[0143] It should also be noted that the terms "comprises," "includes," or any other variations thereof are intended to encompass non-exclusive inclusion, such that a process, method, commodity, or apparatus that includes a series of elements includes not only those elements but also other elements not explicitly listed, or includes elements inherent to such process, method, commodity, or apparatus. In the absence of further limitations, an element defined by the phrase "comprises a ..." does not exclude the presence of other identical elements in the process, method, commodity, or apparatus that includes the element.

[0144] The foregoing description of this specification describes specific embodiments. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recited in the claims can be performed in an order different from that described in the embodiments and still achieve the desired results. Furthermore, the processes depicted in the accompanying drawings do not necessarily require the specific order shown or the sequential order to achieve the desired results. In certain embodiments, multitasking and parallel processing are also possible or may be advantageous.

[0145] The terms used in one or more embodiments of this specification are for the purpose of describing specific embodiments only and are not intended to limit one or more embodiments of this specification. The singular forms "a," "an," "the," and "the" used in one or more embodiments of this specification and the appended claims are also intended to include plural forms unless the context clearly indicates otherwise. It should also be understood that the term "and / or" used herein refers to and includes any or all possible combinations of one or more associated listed items.

[0146] It should be understood that although the terms first, second, third, etc. may be used to describe various information in one or more embodiments of this specification, such information should not be limited to these terms. These terms are only used to distinguish the same type of information from each other. For example, without departing from the scope of one or more embodiments of this specification, first information may also be referred to as second information, and similarly, second information may also be referred to as first information. Depending on the context, the word "if" as used herein may be interpreted as "when..." or "when..." or "in response to determining."

[0147] The above description is merely a preferred embodiment of one or more embodiments of this specification and is not intended to limit one or more embodiments of this specification. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of one or more embodiments of this specification shall be included in the scope of protection of one or more embodiments of this specification.

Claims

1. A privacy-preserving computing method based on multi-party collaboration, wherein a blockchain-based data collaboration platform connects multiple collaboration participants; the method is applied to a server corresponding to any target collaboration participant among the multiple collaboration participants; wherein, The multiple collaborative participants respectively maintain data for participating in privacy computing; the method includes: Obtaining a computational process specified by a user for performing privacy-preserving computation on data maintained by at least some of the multiple collaborative participants; wherein the computational process includes a computational process consisting of at least one functional operator specified by the user and related to the privacy-preserving computation; Obtaining data security requirements of at least some of the collaborative participants for the data they maintain, selecting at least one instantiated operator corresponding to the at least one functional operator that meets the data security requirements from a library of instantiated operators related to the privacy computing, and generating an instantiated computational process corresponding to the computational process based on the at least one instantiated operator; wherein the functional operator represents the computation involved in the process of performing privacy computing on the data maintained by each collaborative participant to be implemented; and the instantiated operator represents the functional operator that has been implemented; Create a smart contract containing privacy computing logic corresponding to the instantiated computing process, and deploy the created smart contract to the blockchain network connected to the data collaboration platform for the user to call.

2. The method according to claim 1, wherein obtaining a user-specified computation process for performing privacy computation on data maintained by at least some of the multiple collaborative participants comprises: The functional operator library related to the privacy calculation is output to the user through the user client corresponding to the target collaborative participant, and at least one functional operator selected by the user in the output functional operator library is obtained. Based on the at least one functional operator, a calculation process for performing privacy calculation on the data maintained by at least some of the multiple collaborative participants is generated.

3. The method according to claim 2 comprises outputting the functional operator library to the user via a user client corresponding to the target collaborative participant, obtaining at least one functional operator selected by the user from the output functional operator library, and generating a computational process for performing privacy-preserving computation on data maintained by at least some of the multiple collaborative participants based on the at least one functional operator, comprising: Outputting a calculation process planning interface to the user through a user client corresponding to the target collaboration participant; wherein the calculation process planning interface includes the functional operator library; Acquiring at least one functional operator selected by the user from the functional operator library in the computing process planning interface, and a logical order specified for the at least one functional operator in the computing process planning interface; A computational process for performing privacy computation on data maintained by at least some of the multiple collaborative participants is generated based on the at least one functional operator and a logical order specified for the at least one functional operator. 4 . The method according to claim 3 , wherein the computing process comprises a DAG graph structure composed of the at least one functional operator.

5. The method according to claim 1, obtaining data security requirements of at least some of the collaboration participants for the data they maintain, comprising: Obtaining data security policies configured by at least some of the collaboration participants for the data they maintain; Determine, based on the data security policy, data security requirements of at least some of the collaboration participants for the data they maintain.

6. The method according to claim 5, wherein the data security policy comprises one or more combinations of the following: the security level configured for the data; The security protection level configured for the data; Data trust relationships with other collaborative participants; Accordingly, the data security requirements include one or more of the following: A security requirement for whether to allow the data to be exported from the data domain where the data is located, determined based on the security level; A security requirement, determined based on the security protection level, as to whether data desensitization processing of the data and privacy calculation results of the data is permitted; The security requirement of whether to allow the data to be aggregated with data maintained by other collaborative participants is determined based on the data trust relationship.

7. The method according to claim 1, wherein the data collaboration platform deploys a process planning component on the server side corresponding to the multiple collaboration participants in a distributed manner; and the server side corresponding to the multiple collaboration participants respectively maintains the instantiation operator library; Obtaining data security requirements of at least some of the collaborative participants for the data they maintain, selecting at least one instantiated operator corresponding to the at least one functional operator that meets the data security requirements from a library of instantiated operators related to the privacy computing, and generating an instantiated computing process corresponding to the computing process based on the at least one instantiated operator, including: Call the process planning component to obtain the data security requirements of at least some of the collaborative participants for the data they maintain, select at least one instantiation operator corresponding to the at least one functional operator that meets the data security requirements from the locally maintained instantiation operator library, and generate an instantiation computing process corresponding to the computing process based on the at least one instantiation operator.

8. The method according to claim 7, wherein the instantiation operator library includes a plurality of instantiation operators and data security requirements corresponding to the instantiation operators; Selecting at least one instantiation operator corresponding to the at least one functional operator that meets the data security requirement from the instantiation operator library includes: Searching for at least one instantiation operator corresponding to the at least one functional operator in the instantiation operator library; Matching the data security requirements of at least some of the collaboration participants for the data they maintain with the data security requirements corresponding to the at least one instantiated operator found; Based on the matching result, an instantiation operator that matches the data security requirement of at least some of the collaboration participants for the data maintained by them is selected from the at least one instantiation operator.

9. According to the method of claim 8, the instantiated operator includes an operator implemented based on the privacy computing technology supported by the data collaboration platform and the collaboration participants.

10. The method according to claim 9, wherein the instantiation operator comprises a combination of one or more of the following: Instantiated operators based on TEE implementation; Instantiated operators based on MPC implementation; Instantiated operators based on FL implementation.

11. The method according to claim 1, generating an instantiated computing process corresponding to the computing process based on the at least one instantiated operator, comprising: generating a plurality of instantiated computing processes based on the at least one instantiated operator; The multiple instantiated computing flows are output and displayed to the user, so that the user can select an instantiated computing flow corresponding to the computing flow from the multiple instantiated computing flows.

12. The method according to claim 1, wherein the data collaboration platform deploys a distributed smart contract management component on the server side corresponding to the multiple collaboration participants; Creating a smart contract containing privacy-preserving computing logic corresponding to the instantiated computing process, and deploying the created smart contract to a blockchain network connected to the data collaboration platform, including: Calling the smart contract management component to generate execution code related to the privacy computing logic corresponding to the instantiated computing process, and compiling the generated execution code into smart contract code; Deploy a smart contract containing the smart contract code in a blockchain network connected to the data collaboration platform.

13. The method according to claim 12, wherein the privacy computing logic corresponding to the instantiated computing process includes a computing scheduling logic corresponding to the instantiated computing process; wherein, The computation scheduling logic is used to perform computation scheduling for the at least one instantiated operator to complete privacy computation for the data maintained by at least some of the collaborative participants.

14. The method according to claim 1, wherein the plurality of collaboration participants include a plurality of data centers distributed in different regions.

15. According to the method of claim 1, the data collaboration platform includes a blockchain service platform corresponding to the blockchain network.

16. A privacy computing method based on multi-party collaboration, the method being applied to a blockchain-based data collaboration platform; wherein: The data collaboration platform is connected to multiple collaboration participants; The multiple collaborative participants respectively maintain data for participating in privacy computing; the method includes: Obtaining a computational process, uploaded by a corresponding server of any target collaborative party among the multiple collaborative parties, for performing privacy-preserving computation on data maintained by at least some of the multiple collaborative parties, specified by the user; wherein the computational process includes a computational process consisting of at least one functional operator related to the privacy-preserving computation, specified by the user; Obtaining data security requirements of at least some of the collaborative participants for the data they maintain, selecting at least one instantiated operator corresponding to the at least one functional operator that meets the data security requirements from a library of instantiated operators related to the privacy computing, and generating an instantiated computational process corresponding to the computational process based on the at least one instantiated operator; wherein the functional operator represents the computation involved in the process of performing privacy computing on the data maintained by each collaborative participant to be implemented; and the instantiated operator represents the functional operator that has been implemented; Create a smart contract containing privacy computing logic corresponding to the instantiated computing process, and deploy the created smart contract to the blockchain network connected to the data collaboration platform for the user to call.

17. A privacy computing device based on multi-party collaboration, wherein a blockchain-based data collaboration platform is connected to multiple collaboration participants; the device is applied to a server corresponding to any target collaboration participant among the multiple collaboration participants; wherein, The plurality of collaborative participants respectively maintain data for participating in privacy computing; the apparatus comprises: A first acquisition module is configured to acquire a computational process specified by a user for performing privacy-preserving computation on data maintained by at least some of the multiple collaborative participants; wherein the computational process includes a computational process consisting of at least one functional operator specified by the user and related to the privacy-preserving computation; The first generation module obtains data security requirements of at least some of the collaborative participants for the data they maintain, selects at least one instantiated operator corresponding to the at least one functional operator that meets the data security requirements from a library of instantiated operators related to the privacy computing, and generates an instantiated computation flow corresponding to the computation flow based on the at least one instantiated operator; wherein the functional operator represents the computation involved in the process of performing privacy computing on the data maintained by each collaborative participant to be implemented; and the instantiated operator represents an already implemented functional operator; The first deployment module creates a smart contract containing privacy computing logic corresponding to the instantiated computing process, and deploys the created smart contract to the blockchain network connected to the data collaboration platform for the user to call.

18. A privacy computing device based on multi-party collaboration, the device being applied to a data collaboration platform based on blockchain; wherein, The data collaboration platform is connected to multiple collaboration participants; The plurality of collaborative participants respectively maintain data for participating in privacy computing; the apparatus comprises: A second acquisition module is configured to acquire a computational process, uploaded by a corresponding server of any target collaborative party among the multiple collaborative parties, for performing privacy-preserving computation on data maintained by at least some of the multiple collaborative parties, specified by the user; wherein the computational process includes a computational process consisting of at least one functional operator specified by the user and related to the privacy-preserving computation; The second generation module obtains the data security requirements of at least some of the collaborative participants for the data they maintain, selects at least one instantiated operator corresponding to the at least one functional operator that meets the data security requirements from a library of instantiated operators related to the privacy computing, and generates an instantiated computation flow corresponding to the computation flow based on the at least one instantiated operator; wherein the functional operator represents the computation involved in the process of performing privacy computing on the data maintained by each collaborative participant to be implemented; and the instantiated operator represents the functional operator that has been implemented; The second deployment module creates a smart contract containing privacy computing logic corresponding to the instantiated computing process, and deploys the created smart contract to the blockchain network connected to the data collaboration platform for the user to call.

19. An electronic device comprising: processor; a memory for storing processor-executable instructions; The processor implements the method according to any one of claims 1 to 16 by running the executable instructions.

20. A computer-readable storage medium having computer instructions stored thereon, wherein when the instructions are executed by a processor, the steps of the method according to any one of claims 1 to 16 are implemented.

Citation Information

Patent Citations

  • Privacy calculation method based on smart contract in block chain and related equipment

    CN114358764A

  • Credit evaluation method and device based on block chain and privacy calculation

    CN114742640A