Method for performing privacy computing task and privacy computing platform

CN116933320BActive Publication Date: 2026-08-11ANT BLOCKCHAIN TECHNOLOGY (SHANGHAI) CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-08-04
Publication Date
2026-08-11

AI Technical Summary

Benefits of technology

[0020]Through the methods and privacy computing platforms provided in one or more embodiments of this specification, for any first participant among multiple participants involved in a privacy computing task to be executed, the first privacy computing platform deployed on the first participant can first determine the first privacy computing algorithm required for the privacy computing task. Then, if the first privacy computing platform itself does not support the first privacy computing algorithm, it obtains a first container image, wherein the first container image contains an application for executing the first privacy computing algorithm. Next, the first privacy computing platform can create a first container instance based on the first container image and provide the first container instance with its own privacy data held by the first participant. This allows the first container instance to jointly execute the privacy computing task with other participants through a first execution process corresponding to the first privacy computing algorithm, based on the privacy data held by the first participant. In this way, it is not necessary to ensure that the privacy computing platforms deployed by each of the multiple participants support the same privacy computing algorithm, enabling the multiple participants to jointly execute the same privacy computing task using their respective deployed privacy computing platforms.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116933320B_ABST
    Figure CN116933320B_ABST
Patent Text Reader

Abstract

This specification provides a method for executing a privacy computing task and a privacy computing platform in its embodiments. The privacy computing task involves multiple participants, including a first participant. The first participant deploys a first privacy computing platform, and the method is executed by the first privacy computing platform. The method includes: determining a first privacy computing algorithm required for the privacy computing task; if the first privacy computing platform does not support the first privacy computing algorithm, obtaining a first container image, including an application for executing the first privacy computing algorithm; creating a first container instance based on the first container image, and providing the first container instance with its own privacy data held by the first participant, enabling the first container instance to jointly execute the privacy computing task with other participants through a first execution process based on the privacy data held by the first participant.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This specification relates to one or more embodiments in the field of computers, and more particularly to a method for performing privacy computing tasks and a privacy computing platform. Background Technology

[0002] Privacy-preserving computation typically involves secure multi-party computation, where multiple parties collaboratively compute the result of a function without disclosing the input data held by each party. The input data held by each party is usually considered privacy data, while the result of the function can be disclosed to designated individuals.

[0003] Typically, the same privacy computing platform needs to be deployed across multiple participants so that they can jointly execute privacy computing tasks using the same privacy computing algorithms supported by their respective deployed privacy computing platforms. Summary of the Invention

[0004] This specification provides a method for performing privacy computing tasks and a privacy computing platform in one or more embodiments.

[0005] In a first aspect, a method for executing a privacy computing task is provided. The privacy computing task involves multiple participants, including a first participant, in which a first privacy computing platform is deployed. The method is executed by the first privacy computing platform. The method includes: determining a first privacy computing algorithm required for the privacy computing task; if the first privacy computing platform does not support the first privacy computing algorithm, obtaining a first container image, including an application for executing the first privacy computing algorithm; creating a first container instance based on the first container image, and providing the first container instance with its own privacy data held by the first participant, so that the first container instance, based on its own privacy data held by the first participant, jointly executes the privacy computing task with other participants through a first execution process.

[0006] In one possible implementation, the plurality of participants also includes a second participant, wherein the first privacy computing platform and the second privacy computing platform deployed by the second participant are different platforms provided by different providers.

[0007] In one possible implementation, the method further includes: sending first connection information of the first container instance to a second privacy computing platform deployed by a second participant among the plurality of participants, so that the second participant establishes a first communication connection with the first container instance based on the first connection information, wherein the first communication connection is used to transmit intermediate data during the first execution process.

[0008] In one possible implementation, the method further includes: receiving second connection information of a second container instance from a second privacy computing platform deployed by a second participant among the plurality of participants, wherein the second container instance is created by the second privacy computing platform based on the first container image when it does not support the first privacy computing algorithm itself; after creating the first container instance based on the first container image, providing the second connection information to the first container instance, so that the first container instance establishes a second communication connection with the second container instance based on the second connection information, wherein the second communication connection is used to transmit intermediate data during the first execution process.

[0009] In one possible implementation, the method further includes: if the first privacy computing platform supports the first privacy computing algorithm, performing the privacy computing task jointly with other participants through a second execution process based on the privacy data held by the first participant.

[0010] In one possible implementation, the method further includes: receiving second connection information of a second container instance from a second privacy computing platform deployed by a second participant among the plurality of participants, wherein the second container instance is created by the second privacy computing platform based on the first container image when the second privacy computing platform itself does not support the first privacy computing algorithm; and establishing a third communication connection with the second container instance based on the second connection information, wherein the third communication connection is used to transmit intermediate data during the second execution process.

[0011] In one possible implementation, the privacy computing task can be of the type of secure multiplication, secure equality determination, or oblivious transfer (OT).

[0012] In one possible implementation, obtaining the first container image includes: querying the first participant's local container image repository to see if the first container image exists; if not, downloading the first container image from a trusted third party.

[0013] In one possible implementation, the trusted third party provides multiple container images and their respective descriptions, wherein each of the multiple container images includes an application for performing privacy computing algorithms, which is developed by several developers and verified by a pre-established organization before being packaged to obtain the multiple container images.

[0014] In one possible implementation, the method further includes: storing the first container image in the local container image library of the first participant.

[0015] In one possible implementation, providing the first container instance with the privacy data held by the first participant includes: obtaining description information of the first container image, including a first input format of the first container image; converting the privacy data in the original format held by the first participant into privacy data in the first input format, and providing the privacy data in the first input format to the first container instance.

[0016] In one possible implementation, determining the first privacy computing algorithm required for the privacy computing task includes: jointly executing an algorithm negotiation protocol with other participating parties to determine the first privacy computing algorithm required for the privacy computing task.

[0017] Secondly, a privacy computing platform is provided for performing privacy computing tasks involving multiple participants. Any two participants deploy the same or different privacy computing platforms. For any first participant among the two participants, the first privacy computing platform deployed includes at least: an algorithm negotiation unit configured to determine a first privacy computing algorithm required for the privacy computing task; an image acquisition unit configured to acquire a first container image, including an application for executing the first privacy computing algorithm, when the first privacy computing platform does not support the first privacy computing algorithm; and a container scheduling unit configured to create a first container instance based on the first container image and provide the first container instance with its own privacy data held by the first participant, enabling the first container instance to jointly execute the privacy computing task with other participants through a first execution process based on the privacy data held by the first participant.

[0018] Thirdly, a computer-readable storage medium is provided having a computer program / instructions stored thereon, wherein when the computer program / instructions are executed in a computing device, the computing device implements the method described in any one of the first aspects.

[0019] Fourthly, a computing device is provided, including a memory and a processor, wherein the memory stores a computer program / instruction, and the processor executes the computer program / instruction to implement the method described in any one of the first aspects.

[0020] Through the methods and privacy computing platforms provided in one or more embodiments of this specification, for any first participant among multiple participants involved in a privacy computing task to be executed, the first privacy computing platform deployed on the first participant can first determine the first privacy computing algorithm required for the privacy computing task. Then, if the first privacy computing platform itself does not support the first privacy computing algorithm, it obtains a first container image, wherein the first container image contains an application for executing the first privacy computing algorithm. Next, the first privacy computing platform can create a first container instance based on the first container image and provide the first container instance with its own privacy data held by the first participant. This allows the first container instance to jointly execute the privacy computing task with other participants through a first execution process corresponding to the first privacy computing algorithm, based on the privacy data held by the first participant. In this way, it is not necessary to ensure that the privacy computing platforms deployed by each of the multiple participants support the same privacy computing algorithm, enabling the multiple participants to jointly execute the same privacy computing task using their respective deployed privacy computing platforms. Attached Figure Description

[0021] To more clearly illustrate the technical solutions of the embodiments in this specification, the drawings used in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0022] Figure 1 This is a schematic diagram illustrating the process of publishing a container image and its description information, as exemplarily provided in the embodiments of this specification.

[0023] Figure 2 This is a flowchart illustrating an execution method for a privacy computing task provided in the embodiments of this specification;

[0024] Figure 3 This is an example diagram illustrating the establishment of a communication connection between two participating parties.

[0025] Figure 4 This is a schematic diagram of the structure of a privacy computing platform provided in the embodiments of this specification. Detailed Implementation

[0026] The various non-limiting embodiments provided in this specification will now be described in detail with reference to the accompanying drawings.

[0027] For any two privacy computing platforms provided by any two different developers / service providers, they may employ different privacy computing algorithms / protocols to perform the same type of privacy computing tasks. For example, privacy computing platform B1 provided by service provider A1 supports privacy computing algorithm C1 based on the GMW (Goldreich-Micali-Wigderson) protocol, and privacy computing platform B1 can use privacy computing algorithm A1 to perform privacy computing tasks of the type of security equals decision; privacy computing platform B2 provided by service provider A2 supports privacy computing algorithm C2 based on the OT protocol, and privacy computing platform B2 can use privacy computing algorithm A2 to perform privacy computing tasks of the type of security equals decision.

[0028] For multiple parties that need to jointly perform privacy-preserving computation tasks, the fact that each party deploys a different privacy-preserving computation platform may prevent them from jointly performing the task. For example, parties X1 and X2 hold privacy data Y1 and Y2 respectively. Party X1 deploys privacy-preserving computation platform B1, and party X2 deploys privacy-preserving computation platform B2. The privacy-preserving computation task that parties X1 and X2 wish to perform includes determining a secure equality between privacy data Y1 and Y2. Because privacy-preserving computation platforms B1 and B2 use different privacy-preserving computation algorithms to perform privacy-preserving computation tasks of the secure equality type, parties B1 and B2 will not be able to jointly perform the secure equality determination between privacy data Y1 and Y2 using their respective deployed privacy-preserving computation platforms B1 and B2.

[0029] In one possible implementation, privacy computing algorithms used to perform privacy-preserving computation tasks could be standardized. This would require all privacy computing platforms provided by various service providers to be engineered according to the same algorithm standard, ensuring that different privacy computing platforms can jointly execute privacy computing tasks using the same algorithm. However, the standardization negotiation process is extremely lengthy. Furthermore, for the privacy computing algorithms used to perform these tasks, relevant technical personnel may continuously optimize them, improving execution efficiency by reducing the frequency and amount of data exchanged between different participants. Standardization would then constrain the iteration of privacy computing algorithms. Therefore, this implementation method is inefficient and fundamentally difficult to promote.

[0030] In view of the above problems, this specification provides at least one method for executing a privacy computing task and a privacy computing platform in its embodiments. For any first participant among multiple participants involved in a privacy computing task to be executed, the first privacy computing platform deployed on the first participant can first determine the first privacy computing algorithm required for the privacy computing task. Then, if the first privacy computing platform itself does not support the first privacy computing algorithm, it obtains a first container image, wherein the first container image contains an application for executing the first privacy computing algorithm. Next, the first privacy computing platform can create a first container instance based on the first container image and provide the first container instance with its own privacy data held by the first participant. This allows the first container instance to jointly execute the privacy computing task with other participants through a first execution process corresponding to the first privacy computing algorithm, based on the privacy data held by the first participant. In this way, it is not necessary to ensure that the privacy computing platforms deployed by multiple participants all support the same privacy computing algorithm, enabling the multiple participants to jointly execute the same privacy computing task using their respective deployed privacy computing platforms.

[0031] For any developer / service provider, they can not only provide a privacy-preserving computing platform, but also a separate application for executing the privacy-preserving computing algorithms supported by the platform, along with a description of that application. The description of a single application provided by the service provider should include at least the algorithm name and purpose of the privacy-preserving computing algorithm executed by the application. The purpose refers to the type of privacy-preserving computing task the application can perform with the corresponding algorithm, such as secure equality determination, secure multiplication, OT, and various other possible task types. Additionally, it may include one or more of the following: algorithm version, service provider name, input data format, output data format, the port number (corresponding to the mapped port on the host machine) required for the container image obtained by packaging the application, and other conditional information.

[0032] A trusted third party or other pre-established verification authority can verify the application used to perform privacy-preserving computation tasks. Once the application passes verification, the service provider, verification authority, or trusted third party can package it into a container image, which includes at least the application and all components required for its runtime, and may also include other components provided by the trusted third party to implement the predetermined transactions.

[0033] The resulting container image and its corresponding application description information can be stored in a trusted third party at a specified location that is allowed to be downloaded. For example, the application description information included in the container image can be directly used as the description information of the container image. The container image and its description information can be published to a trusted third party's local container image library.

[0034] Figure 1 This diagram illustrates the process of publishing a container image and its description information, as exemplified in the embodiments of this specification. See also... Figure 1 As shown, service provider A1 can provide a privacy computing platform B1 that can be deployed to any participant. Privacy computing platform B1 itself supports privacy computing algorithm C1. Correspondingly, service provider A1 can also provide an application App-C1 and its description information D1 that can be used independently to execute the privacy computing algorithm C1. Application App-C1 and its description information D1 can be submitted to a verification authority, which will conduct a series of verifications on application App-C1 and its description information D1, including security review, correctness verification, and performance testing. The verified application App-C1 and its description information D1 can be submitted to a trusted third party. The trusted third party can encapsulate application App-C1, all components required for application App-C1 to run, and other components provided by the trusted third party to implement the predetermined transactions, obtaining the corresponding container image E1. The description information D1 of application App-C1 can be directly used as the description information of container image E1 and published together with container image E1 to the trusted third party's container image library.

[0035] Through the process described in the example above, a trusted third party can obtain and provide multiple container images along with their respective descriptive information.

[0036] Figure 2 This is a flowchart illustrating a method for executing a privacy-preserving computation task as provided in an embodiment of this specification. The privacy-preserving computation task involves multiple parties, each of which deploys a privacy-preserving computation platform. For any two parties, their respective privacy-preserving computation platforms can be different platforms provided by different providers (i.e., different service providers), or they can be the same platform provided by the same provider. This method can be executed by a first privacy-preserving computation platform deployed by any first party among the multiple parties; in other words, each privacy-preserving computation platform deployed by the multiple parties may execute this method, thereby jointly performing the desired privacy-preserving computation task.

[0037] See Figure 2 As shown, the method may include, but is not limited to, some or all of the following steps S201 to S221.

[0038] Step S201: Determine the first privacy computing algorithm required for the privacy computing task to be performed.

[0039] The types of privacy-preserving computation tasks may include, but are not limited to, secure multiplication, secure equality determination, or unintentional transmission.

[0040] The first privacy computing platform can jointly execute the algorithm negotiation protocol with the privacy computing platforms deployed by other participating parties besides the first participating party to determine the first privacy computing algorithm required to perform the desired privacy computing task.

[0041] Multiple participants can offline determine the first privacy computing algorithm required for the privacy computing task to be performed. Staff members input the identification information of the first privacy computing algorithm into the first privacy computing platform, so that the first privacy computing platform knows that the privacy computing algorithm required for the privacy computing task to be performed is the first privacy computing algorithm.

[0042] The identification information of the first privacy computing algorithm may include the algorithm name of the first privacy computing algorithm, the application name of the application used to execute the first privacy computing algorithm, or the image name of the container image containing the application. If the first privacy computing algorithm includes multiple versions, the identification information may also include the corresponding algorithm version. For example, if the first privacy computing algorithm is privacy computing algorithm C1, the identification information of privacy computing algorithm C1 may include the algorithm name "C1", the application name "App-C1" of the application App-C1 used to execute privacy computing algorithm C1, or the image name "E1" of the container image E1 containing the application App-C1. When privacy computing algorithm C1 includes multiple versions, the identification information of privacy computing algorithm C1 may also include the corresponding algorithm version.

[0043] Step S203: Determine whether the first privacy computing platform itself supports the first privacy computing algorithm. In other words, determine whether the first privacy computing platform itself supports performing the privacy computing task using the first privacy computing algorithm.

[0044] If the first privacy computing platform itself does not support the first privacy computing algorithm, then the first privacy computing platform may execute some or all of the following steps S205 to S215. If the first privacy computing platform itself supports the first privacy computing algorithm, then the first privacy computing platform may execute some or all of the following steps S217 to S221.

[0045] Step S205: Obtain a first container image, which includes an application for executing a first privacy computation algorithm.

[0046] The first privacy computing platform can also obtain the description information of the first container image.

[0047] If the first participant has a local container image repository, the first privacy computing platform can query whether the first container image exists in the first participant's local container image repository. If it does, the first container image is directly obtained from the first participant's local container image repository; otherwise, the first privacy computing platform can download / obtain the first container image and its description information from a trusted third party or the corresponding service provider. After downloading / obtaining the first container image and its description information for the first time, the first container image and its description information can be stored in the first participant's local container image repository.

[0048] If the first participant has not deployed a local container image repository, the first privacy computing platform can directly download / obtain the first container image and its description information from a trusted third party or the corresponding service provider on demand.

[0049] Step S207: Create a first container instance based on the first container image.

[0050] When the description information of the first container image includes the port number of the mapped port required by the first container instance, during the process of creating the first container instance based on the first container image, the host operating system corresponding to the first container instance can be requested to use the port number in the description information as the mapped port of the first container instance.

[0051] When the description information of the first container image does not define the port number of the mapped port required by the first container instance, during the process of creating the first container instance based on the first container image, the host operating system corresponding to the first container instance can use any free port as the mapped port of the first container instance according to its own port allocation policy, and return the port number of the mapped port to the first privacy computing platform.

[0052] Optionally, in step S209, the first connection information of the first container instance is sent to the second privacy computing platform deployed by the second participant among the multiple participants, so that the second participant can establish a first communication connection with the first container instance according to the first connection information, wherein the first communication connection is used to transmit intermediate data during the first execution process.

[0053] The first connection information of the first container instance includes at least the port number of the mapped port used by the first container instance; it may also include the address information of the host machine of the first container instance, such as the Internet Protocol IP address of the host machine.

[0054] The second privacy computing platform deployed by the second participant may also obtain the connection information of the first container instance through other means. For example, the second privacy computing platform can pre-configure the port number of the mapped port required by the container image that may use the first privacy computing algorithm to jointly execute privacy computing tasks with it, or read the port number of the mapped port required by the first container image from the description information of the first container image it obtains, or have the staff directly input the port number of the mapped port used by the first container instance into the second privacy computing platform. In this way, the second privacy computing platform can obtain the first connection information of the first container instance without receiving the first connection information of the first container instance from the first privacy computing platform, based on the fact that the second privacy computing platform already knows the address information of the host machine of the first container image.

[0055] Similar to the first privacy computing platform's execution of steps S201 to S209, if the second privacy computing platform itself does not support the first privacy computing algorithm, then the second privacy computing platform will obtain the first container image, create a second container instance based on the first container image, and may send the second connection information of the second container instance to the first privacy computing platform. Correspondingly, the first privacy computing platform may also sequentially execute steps S209 and S211.

[0056] Step S211: Receive second connection information of the second container instance from the second privacy computing platform deployed by the second participant among multiple participants, wherein the second container instance is created by the second privacy computing platform based on the first container image when it does not support the first privacy computing algorithm itself.

[0057] Step S213: Provide the first container instance with second connection information, so that the first container instance can establish a second communication connection with the second container instance based on the second connection information. The second communication connection is used to transmit intermediate data during the first execution process.

[0058] For any first participant and any second participant among multiple participants, see [link to relevant documentation]. Figure 3 As shown, if the second privacy computing platform itself supports the first privacy computing algorithm, then the first communication connection is a communication connection established between the second privacy computing platform and the first container instance based on the first connection information; if the second privacy computing platform itself does not support the first privacy computing algorithm, then the first communication connection is a communication connection established between the first container instance and the second container instance by the first container instance based on the second connection information and / or the second container instance based on the first connection information after the second privacy computing platform completes the creation of the second container instance and provides the first connection information to the second container instance.

[0059] Step S215: Provide the first container instance with the privacy data held by the first participant, so that the first container instance can jointly execute the privacy computing task with other participants through the first execution process based on the privacy data held by the first participant.

[0060] When an application performing privacy-preserving computation tasks has format requirements for the data it processes, the first privacy-preserving computation platform can obtain the first input format of the first container image from its description information. It can then convert the original format of its own privacy data held by the first participant into the first input format and provide this first input format privacy data to the first container instance. For example, if the description information required by the first container image defines the input data format as CSV, while the privacy data held by the first participant is in TXT format, the first privacy-preserving computation platform can first convert the TXT format privacy data held by the first participant into CSV format privacy data, and then provide the CSV format privacy data to the first container instance.

[0061] Similarly, after the first container instance executes the privacy computing task jointly with other participants through the first execution process, it will obtain its own execution result of the privacy computing task. The own execution result may be output to the first privacy computing platform in CSV format. The first privacy computing platform can convert the own execution result in CSV format into the data format expected by the first participant, such as converting it into the own execution result in TXT format.

[0062] For any first participant and any second participant among multiple participants, the first container instance jointly executes the privacy computing task with other participants through the first execution process. Specifically, it runs the application packaged in the first container image for executing the first privacy computing algorithm, processes the privacy data held by the first participant according to the first privacy computing algorithm, and interacts with the second participant to finally complete the execution of the privacy computing task.

[0063] Step S217: Receive second connection information of the second container instance from the second privacy computing platform deployed by the second participant among multiple participants, wherein the second container instance is created by the second privacy computing platform based on the first container image when it does not support the first privacy computing algorithm itself.

[0064] Step S219: Establish a third communication connection with the second container instance based on the second connection information, wherein the third communication connection is used to transmit intermediate data during the second execution process.

[0065] See Figure 3As shown, if the second privacy computing platform itself does not support the first privacy computing algorithm, the second privacy computing platform can create a second container instance based on the first container image, send the second connection information of the second container instance to the first privacy computing platform, and then the first privacy computing platform can create a third communication connection between the first privacy computing platform and the second container instance based on the second connection information.

[0066] Step S221: Based on the privacy data held by the first participating party, the privacy computation task is jointly performed with other participating parties through the second execution process.

[0067] For any first participant and any second participant among multiple participants, the first privacy computing platform jointly executes the privacy computing task with other participants through the second execution process. Specifically, the second privacy computing platform processes the privacy data held by the first participant and interacts with the second container instance according to the first privacy computing algorithm it supports, and finally completes the execution of the privacy computing task.

[0068] When a container image encapsulates components provided by a trusted third party for implementing predetermined transactions, the container instance created and run based on the container image may also execute predetermined transactions that the trusted third party expects to execute through the corresponding components. For example, it may report statistical information such as the startup time and runtime of the container instance to the trusted third party so that the trusted third party can perform other transactions based on various statistical information. For example, it may report relevant container image statistical information to relevant service providers or participants who may use the container image to perform privacy computing tasks, and charge relevant participants based on the statistical information.

[0069] Based on the same concept as the aforementioned method embodiments, this specification also provides a privacy computing platform 400 for performing privacy computing tasks. The privacy computing task involves multiple participants, and any two of these participants deploy the same or different privacy computing platforms 400. For any first participant among the two participants, the first privacy computing platform 400 deployed includes at least: an algorithm negotiation unit 401 configured to determine a first privacy computing algorithm required for the privacy computing task; an image acquisition unit 403 configured to acquire a first container image, including an application for executing the first privacy computing algorithm, when the first privacy computing platform does not support the first privacy computing algorithm; and a container scheduling unit 405 configured to create a first container instance based on the first container image and provide the first container instance with its own privacy data held by the first participant, enabling the first container instance to jointly execute the privacy computing task with other participants through a first execution process based on the privacy data held by the first participant.

[0070] Those skilled in the art will recognize that, in one or more of the examples above, the functions described herein can be implemented using hardware, software, firmware, or any combination thereof. When implemented in software, the computer program corresponding to these functions can be stored in a computer-readable medium or transmitted as one or more instructions / code on a computer-readable medium so that when the computer program corresponding to these functions is executed by a computer, the methods described in any embodiment of this specification can be implemented by the computer.

[0071] This specification also provides a computer-readable storage medium storing a computer program, which, when executed in a computing device, enables the computing device to execute a privacy computing task execution method provided in any embodiment of this specification.

[0072] This specification also provides a computing device in its embodiments, including a memory and a processor. The memory stores executable code, and when the processor executes the executable code, it implements a method for executing a privacy computing task provided in any embodiment of this specification.

[0073] The various embodiments in this specification are described in a progressive manner. Similar or identical parts in each embodiment can be referred to interchangeably. Each embodiment focuses on describing the differences from other embodiments. In particular, the apparatus embodiments are basically similar to the method embodiments, so the description is relatively simple; relevant parts can be referred to the descriptions in the method embodiments.

[0074] The foregoing has described specific embodiments of this specification. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recited in the claims may be performed in a different order than that shown in the embodiments and may still achieve the desired result. Furthermore, the processes depicted in the drawings do not necessarily require the specific or sequential order shown to achieve the desired result. In some embodiments, multitasking and parallel processing are possible or may be advantageous.

[0075] The specific embodiments described above further illustrate the purpose, technical solution, and beneficial effects of the present invention. It should be understood that the above description is only a specific embodiment of the present invention and is not intended to limit the scope of protection of the present invention. Any modifications, equivalent substitutions, improvements, etc., made on the basis of the technical solution of the present invention should be included within the scope of protection of the present invention.

Claims

1. A method for executing a privacy-preserving computation task, the privacy-preserving computation task involving multiple participants, including a first participant and a second participant, wherein the first participant deploys a first privacy-preserving computation platform, and the first privacy-preserving computation platform and the second privacy-preserving computation platform deployed by the second participant are different platforms provided by different providers, the method being executed by the first privacy-preserving computation platform, the method comprising: Determine the first privacy-preserving computation algorithm required for the privacy-preserving computation task; If the first privacy computing platform does not support the first privacy computing algorithm, obtain a first container image, which includes an application for executing the first privacy computing algorithm; A first container instance is created based on the first container image, and the first container instance is provided with its own privacy data held by the first participant, so that the first container instance can jointly execute the privacy computing task with other participants through a first execution process based on the privacy data held by the first participant.

2. The method according to claim 1, further comprising: Send the first connection information of the first container instance to the second privacy computing platform deployed by the second participant among the plurality of participants, so that the second participant establishes a first communication connection with the first container instance based on the first connection information, wherein the first communication connection is used to transmit intermediate data during the first execution process.

3. The method according to claim 1, further comprising: The second privacy computing platform deployed by the second participant among the plurality of participants receives second connection information of the second container instance, wherein the second container instance is created by the second privacy computing platform based on the first container image when the second privacy computing platform itself does not support the first privacy computing algorithm; After creating a first container instance based on the first container image, the second connection information is provided to the first container instance, so that the first container instance establishes a second communication connection with the second container instance based on the second connection information, wherein the second communication connection is used to transmit intermediate data during the first execution process.

4. The method according to claim 1, further comprising: When the first privacy computing platform supports the first privacy computing algorithm, the privacy computing task is jointly executed with other participating parties through a second execution process based on the privacy data held by the first participating party.

5. The method according to claim 4, further comprising: The second privacy computing platform deployed by the second participant among the plurality of participants receives second connection information of the second container instance, wherein the second container instance is created by the second privacy computing platform based on the first container image when the second privacy computing platform itself does not support the first privacy computing algorithm; A third communication connection is established with the second container instance based on the second connection information, wherein the third communication connection is used to transmit intermediate data during the second execution process.

6. The method according to claim 1, wherein the type of the privacy computing task includes secure multiplication, secure equality determination, or unintentional transmission.

7. The method according to claim 1, wherein obtaining the first container image comprises: Check if the first container image exists in the local container image repository of the first participant; If not, download the first container image from a trusted third party.

8. The method according to claim 7, wherein the trusted third party provides multiple container images and their respective description information, wherein each of the multiple container images includes an application for performing privacy computing algorithms, which is developed by several developers and verified by a preset institution before being packaged to obtain the multiple container images.

9. The method according to claim 7, further comprising: The first container image is stored in the local container image library of the first participant.

10. The method according to claim 1, wherein providing the first container instance with the privacy data held by the first participating party includes: Obtain the description information of the first container image, including the first input format of the first container image; The original format of the privacy data held by the first participating party is converted into a first input format of privacy data, and the first input format of privacy data is provided to the first container instance.

11. The method according to any one of claims 1-10, wherein determining the first privacy computing algorithm required for the privacy computing task comprises: In collaboration with other stakeholders, an algorithm negotiation protocol is executed to determine the first privacy computing algorithm required for the privacy computing task.

12. A privacy computing platform for performing privacy computing tasks, the privacy computing tasks involving multiple participants, including a first participant and a second participant, wherein the first participant deploys a first privacy computing platform, and the first privacy computing platform and the second privacy computing platform deployed by the second participant are different platforms provided by different providers, the first privacy computing platform comprising at least: An algorithm negotiation unit is configured to determine the first privacy computing algorithm to be used for the privacy computing task. The image acquisition unit is configured to acquire a first container image, including an application for executing the first privacy computing algorithm, when the first privacy computing platform does not support the first privacy computing algorithm. The container scheduling unit is configured to create a first container instance based on the first container image and provide the first container instance with its own privacy data held by the first participant, so that the first container instance can jointly execute the privacy computing task with other participants through a first execution process based on the privacy data held by the first participant.

13. A computer-readable storage medium having a computer program stored thereon, wherein when the computer program is executed in a computing device, the computing device performs the method of any one of claims 1-11.

14. A computing device comprising a memory and a processor, wherein the memory stores executable code, and the processor, when executing the executable code, implements the method of any one of claims 1-11.

Citation Information

Patent Citations

  • Container-based mirror image updating and publishing method and device

    CN111654531A

  • Model evaluation method and system based on multi-party security computing

    CN112990260A