WO2021068444A1 - Procédé et dispositif de traitement de données, appareil informatique et support d'enregistrement - Google Patents

Procédé et dispositif de traitement de données, appareil informatique et support d'enregistrement Download PDF

Info

Publication number
WO2021068444A1
WO2021068444A1 PCT/CN2020/076140 CN2020076140W WO2021068444A1 WO 2021068444 A1 WO2021068444 A1 WO 2021068444A1 CN 2020076140 W CN2020076140 W CN 2020076140W WO 2021068444 A1 WO2021068444 A1 WO 2021068444A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
ciphertext
preset
client
operator
Prior art date
Application number
PCT/CN2020/076140
Other languages
English (en)
Chinese (zh)
Inventor
唐虹刚
李升林
谢翔
孙立林
Original Assignee
云图技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 云图技术有限公司 filed Critical 云图技术有限公司
Publication of WO2021068444A1 publication Critical patent/WO2021068444A1/fr

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/008Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption

Definitions

  • This application relates to the field of artificial intelligence technology, and in particular to a data processing method, device, computer equipment, and storage medium.
  • the server can process the target data sent by the client according to the trained deep learning model to obtain the processing result.
  • the server can perform diagnosis processing on the medical image data sent by the client according to the trained diagnosis model, so as to obtain the diagnosis result.
  • the aforementioned medical image data may often involve user privacy, and the aforementioned methods are prone to leakage of user privacy data during specific data processing.
  • the embodiments of the present application provide a data processing method, device, computer equipment, and storage medium to provide a data processing method that can protect user privacy.
  • the embodiment of the application provides a data processing method, including: receiving a data processing request sent by a client, wherein the data processing request carries ciphertext data, and the ciphertext data is processed by the client using a homomorphic encryption algorithm on the target data.
  • the convolution operator in the preset model is called to perform the convolution operation on the ciphertext data to obtain the ciphertext feature data; combine the ciphertext feature data with the preset
  • the preset operator in the model is sent to the agent, where the agent is used to call the preset operator with the client according to the preset MPC protocol to process the ciphertext feature data to obtain the ciphertext processing result; wherein, the preset The model is compatible with the preset MPC protocol and is used to perform preset processing on ciphertext data under data encryption; the agent includes one of the following: a secure container running on the client, a virtual machine running on the client, A computer that establishes a local area network connection with the client.
  • the embodiment of the present application also provides a data processing method, which is applied to the agent, and includes: receiving the ciphertext feature data sent by the server and the preset operator in the preset model, wherein the ciphertext feature data is preset by the server according to The MPC protocol calls the convolution operator in the preset model to perform convolution operation on the ciphertext data.
  • the ciphertext data is obtained by encrypting the target data by the client using a homomorphic encryption algorithm; according to the preset MPC protocol Call the preset operator in the preset model to process the ciphertext feature data in cooperation with the client to obtain the ciphertext processing result; send the ciphertext processing result to the client; where the preset model is compatible with the preset MPC Protocol, used to perform preset processing on ciphertext data under data encryption; the agent includes one of the following: a secure container running on the client, a virtual machine running on the client, and establishing a local area network connection with the client Computer.
  • the embodiment of the present application also provides a data processing method, including: a client obtains target data, and encrypts the target data using a homomorphic encryption algorithm to obtain ciphertext data; the client sends a data processing request to the server, where the data The processing request carries the ciphertext data; in response to the data processing request, the server and the client call the convolution operator in the preset model according to the preset MPC protocol to perform the convolution operation on the ciphertext data to obtain the ciphertext feature data; The server sends the ciphertext feature data and the preset operator in the preset model to the agent; the agent calls the preset operator according to the preset MPC protocol to process the ciphertext feature data in cooperation with the client to obtain the ciphertext feature data Text processing result; the agent sends the ciphertext processing result to the client; the client decrypts the ciphertext processing result to obtain the plaintext processing result of the target data; among them, the preset model is compatible with the preset MPC protocol, which
  • An embodiment of the present application also provides a data processing device, including: a receiving module for receiving a data processing request sent by a client, wherein the data processing request carries ciphertext data, and the ciphertext data is homomorphic by the client
  • the encryption algorithm encrypts the target data and generates it
  • the convolution module is used to respond to the data processing request, according to the preset MPC protocol, call the convolution operator in the preset model to perform the convolution operation on the ciphertext data, and obtain the ciphertext data.
  • the sending module is used to send the cipher text feature data and the preset operator in the preset model to the agent, where the agent is used to call the preset operator pair with the client according to the preset MPC protocol
  • the ciphertext feature data is processed to obtain the ciphertext processing result; among them, the preset model is compatible with the preset MPC protocol, which is used to perform preset processing on the ciphertext data in the case of data encryption;
  • the agent includes one of the following: Run A secure container on the client, a virtual machine running on the client, and a computer that establishes a LAN connection with the client.
  • An embodiment of the present application further provides a computer device including a processor and a memory for storing executable instructions of the processor, and the processor implements the steps of the data processing method described in any of the foregoing embodiments when the processor executes the instructions.
  • the embodiments of the present application also provide a computer-readable storage medium on which computer instructions are stored, and when the instructions are executed, the steps of the data processing method described in any of the foregoing embodiments are implemented.
  • a data processing method uses a homomorphic encryption algorithm to encrypt target data to generate ciphertext data
  • the server receives a data processing request carrying ciphertext data sent by the client, and
  • the convolution operator in the preset model is called to perform the convolution operation on the ciphertext data to obtain the ciphertext feature data.
  • the server combines the ciphertext feature data with the preset model
  • the preset operator is sent to the agent, and the agent and the client call the preset operator according to the preset MPC protocol to process the ciphertext feature data, and obtain the ciphertext processing result.
  • the preset model is compatible with the preset MPC protocol, and is used to perform preset processing on the ciphertext data in the case of data encryption.
  • the target data is homomorphically encrypted to obtain the corresponding ciphertext data, so as to prevent the specific content of the target data from being leaked.
  • the server calls the convolution operator in the preset model compatible with the MPC protocol to perform the convolution operation on the ciphertext data according to the preset MPC protocol to obtain the ciphertext feature data, and combine the ciphertext feature data with the preset model
  • the preset operator of is sent to the agent, so that the agent and the client then call the preset operator in the preset model to perform specific processing on the ciphertext feature data according to the preset MPC protocol to obtain the ciphertext processing of the target data result. Realize that the target data can be specifically processed in the state of target data encryption, thereby effectively protecting data privacy.
  • the agent is a computer in the same local area network as the client or a secure container or virtual machine running on the client, it is more secure than directly having the server and the client perform ciphertext feature data.
  • Calculation, through the agent and the client according to the preset MPC protocol to call the preset operator to perform secure multi-party calculation of the ciphertext feature data which can effectively save the network bandwidth required for secure multi-party calculation, and greatly reduce the network delay. Effectively improve the efficiency of data processing.
  • Figure 1 shows a schematic diagram of an application scenario of a data processing method in some embodiments of the present application
  • Figure 2 shows a flowchart of a data processing method in some embodiments of the present application
  • Figure 3 shows a flowchart of a data processing method in some embodiments of the present application
  • Figure 4 shows a flowchart of a data processing method in some embodiments of the present application
  • Figure 5 shows a sequence diagram of a data processing method in some embodiments of the present application.
  • Fig. 6 shows a schematic diagram of a data processing device in some embodiments of the present application.
  • Fig. 7 shows a schematic diagram of a data processing device in some embodiments of the present application.
  • Fig. 8 shows a schematic diagram of a computer device in some embodiments of the present application.
  • FIG. 1 shows a schematic diagram of an application scenario of the data processing method in an embodiment of the present application.
  • the client can obtain target data.
  • the target data may be data to be processed.
  • the target data may include but is not limited to at least one of the following: face image data, medical image data, human body motion data, and so on.
  • the client can use the homomorphic encryption algorithm to encrypt the obtained target data to obtain ciphertext data.
  • the data encrypted by the homomorphic encryption algorithm is processed to obtain an output, and the output is decrypted, and the result is the same as the output result obtained by processing the unencrypted original data in the same method.
  • the client can send a data processing request to the server.
  • the data processing request may carry ciphertext data corresponding to the target data.
  • the server may call a convolution operator in the preset model to perform a convolution operation on the ciphertext data according to a preset MPC (Secure Multi-Party Computation) protocol to obtain the ciphertext feature data.
  • MPC Secure Multi-Party Computation
  • the server sends the ciphertext feature data and the preset operator in the preset model to the agent.
  • the agent and the client call the preset operator according to the preset MPC protocol to process the ciphertext feature data, and obtain the ciphertext processing result.
  • the preset operator may be an operator specified in the preset model.
  • the preset operator may include but is not limited to at least one of the following: an activation operator, a pooling operator, and a fully connected operator.
  • the preset model is on the server side.
  • the preset model can be compatible with the preset MPC protocol, and is used for preset processing of ciphertext data in the case of data encryption.
  • the preset MPC protocol can be used to implement the operations in the preset model when the input is ciphertext data, so as to complete the preset processing of the ciphertext data.
  • the preset model may include a trained preset deep learning model.
  • the preset model may be a trained convolutional neural network model.
  • the preset processing may include performing diagnosis processing on the ciphertext data obtained after homomorphic encryption of the medical image data.
  • the preset processing may include performing face recognition processing on the ciphertext data obtained after homomorphic encryption of the face image data.
  • the preset processing may include performing motion recognition processing on the ciphertext data obtained after homomorphic encryption of the human body motion data.
  • the data obtained after processing the first ciphertext feature data on the agent and the client may need to perform a convolution operation through the second convolutional layer.
  • the first ciphertext feature data may be obtained after the server calls the convolution operator of the first convolution layer to perform a convolution operation on the ciphertext data according to a preset MPC protocol. Therefore, the agent can send the processed data to the server.
  • the server invokes the convolution operator of the second convolution layer to perform a convolution operation on the received data according to the preset MPC protocol to obtain the second ciphertext feature data.
  • the server then sends the second ciphertext feature data to the agent, so that the agent and the client call the preset operator to process the second ciphertext feature data according to the preset MPC protocol, and so on, until the agent obtains the ciphertext feature data. Text processing results.
  • the agent can send the ciphertext processing result to the client.
  • the public key and private key generated by the homomorphic encryption algorithm are stored in the client. Among them, the public key is used to homomorphically encrypt the target data to obtain ciphertext data.
  • the private key is used to decrypt the received ciphertext processing result to obtain the plaintext processing result.
  • the client may be a client of a medical institution.
  • the client can obtain the patient's medical image data (for example, X-ray film data).
  • the client can use the homomorphic encryption algorithm to encrypt the X-ray film data to obtain the ciphertext X-ray film data.
  • the client sends a diagnosis request to the medical optical film diagnosis server.
  • the diagnosis request carries ciphertext X-ray film data.
  • the server may be a medical optical film diagnosis server.
  • the medical optical film diagnosis server calls the convolution operator in the preset deep learning model to perform the convolution operation on the ciphertext feature data according to the preset MPC protocol to obtain the ciphertext feature data.
  • the medical optical film diagnosis server sends the ciphertext feature data and the preset operator in the preset model to the agent.
  • the agent is a computer on the same intranet as the client or a secure container or virtual machine running on the client.
  • the agent and the client call the preset operator according to the preset MPC protocol to process the ciphertext feature data, so as to obtain the ciphertext diagnosis result.
  • the agent sends the ciphertext diagnosis result to the client.
  • the client decrypts the ciphertext diagnosis result, and obtains the plaintext diagnosis result of the X-ray film data.
  • the above-mentioned client can be a desktop computer, notebook, mobile phone terminal, PDA, etc., as long as it is a device that can homomorphically encrypt the target data and cooperate with the agent to perform preset processing on the ciphertext data.
  • the presentation form of the client This application is not limited.
  • the above-mentioned server can be a single server, a server cluster, or a cloud server, etc., as long as the device can perform convolution operations on ciphertext data according to the preset MPC protocol and preset model.
  • the specific The composition form of this application is also not limited.
  • the above-mentioned agent can be a computer that establishes a LAN connection with the client, a secure container running on the client, or a virtual machine running on the client, etc., as long as it can communicate with the server and can perform secure multi-party computing with the client. All are possible, and this application does not limit the presentation form of the agent.
  • Figure 2 shows a flowchart of a method in some embodiments of the present application, and the data processing method can be applied to the client.
  • this application provides method operation steps or device structures as shown in the following embodiments or drawings, the method or device may include more or less operation steps or module units based on conventional or no creative labor. .
  • the execution order of these steps or the module structure of the device is not limited to the execution order or module structure shown in the description of the embodiments of this application and the drawings.
  • the described method or module structure is applied to an actual device or terminal product, it can be executed sequentially or in parallel according to the method or module structure connection shown in the embodiments or drawings (for example, parallel processors or multi-threaded processing Environment, even distributed processing environment).
  • the data processing method may include the following steps:
  • Step S201 Receive a data processing request sent by a client, where the data processing request carries ciphertext data, and the ciphertext data is generated by the client after encrypting target data using a homomorphic encryption algorithm.
  • the client can obtain the target data.
  • the target data is the data to be processed.
  • the client uses a homomorphic encryption algorithm to encrypt the target data to obtain ciphertext data.
  • the client can use a homomorphic encryption algorithm to generate a public key and a private key, and then use the public key to encrypt the target data to obtain ciphertext data.
  • the client can send a data processing request to the server.
  • the data processing request carries ciphertext data.
  • the data processing request may also carry the public key generated by the homomorphic encryption algorithm.
  • the server receives the data processing request sent by the client.
  • Step S202 In response to the data processing request, according to the preset MPC protocol, the convolution operator in the preset model is called to perform a convolution operation on the ciphertext data to obtain the ciphertext feature data.
  • Step S203 Send the ciphertext feature data and the preset operator in the preset model to the agent, where the agent is used to call the preset operator with the client according to the preset MPC protocol to process the ciphertext feature data , Get the ciphertext processing result.
  • the server calls the convolution operator in the preset model to perform a convolution operation on the ciphertext data according to the preset MPC protocol to obtain the ciphertext feature data.
  • the server sends the obtained ciphertext feature data and the preset operator in the preset model to the agent.
  • the agent and the client call the preset operator according to the preset MPC protocol to process the ciphertext feature data, and obtain the ciphertext processing result.
  • the preset model is compatible with the preset MPC protocol, which is used to perform preset processing on ciphertext data in the case of data encryption;
  • the agent includes one of the following: a secure container running on the client, and a secure container running on the client A virtual machine, a computer that establishes a LAN connection with the client.
  • the preset model may be a trained deep learning model.
  • the deep learning model can be obtained by training with a large amount of plaintext data.
  • the floating-point data in the trained deep learning model is converted into integer data.
  • the preset MPC protocol can be used to implement various operations in the preset model when the input is ciphertext data, so as to realize the preset processing of ciphertext data.
  • the ciphertext processing result can be sent to the client.
  • the client can decrypt the ciphertext processing result according to the private key generated by the homomorphic encryption algorithm to obtain the plaintext processing result of the target data.
  • the target data is homomorphically encrypted to obtain the corresponding ciphertext data, so as to prevent the specific content of the target data from being leaked.
  • the server calls the convolution operator in the preset model compatible with the MPC protocol to perform the convolution operation on the ciphertext data according to the preset MPC protocol to obtain the ciphertext feature data, and combine the ciphertext feature data with the preset model
  • the preset operator of is sent to the agent, so that the agent and the client then call the preset operator in the preset model to perform specific processing on the ciphertext feature data according to the preset MPC protocol to obtain the ciphertext processing of the target data result.
  • the agent is a computer in the same local area network as the client or a secure container or virtual machine running on the client, it is more secure than directly having the server and the client perform ciphertext feature data.
  • Calculation, through the agent and the client according to the preset MPC protocol to call the preset operator to perform secure multi-party calculation of the ciphertext feature data which can effectively save the network bandwidth required for secure multi-party calculation, and greatly reduce the network delay. Effectively improve the efficiency of data processing.
  • the agent and the client call the preset operator according to the preset MPC protocol to process the ciphertext feature data
  • the obtained data that needs to be convolved is returned to the server.
  • the server performs a convolution operation on the received data and sends the obtained data to the agent, and so on until the ciphertext processing result is obtained.
  • the agent and the client may further include: corresponding to the data processing request
  • the transaction events are uploaded to the blockchain network for storage on the chain.
  • the server may be notified that the preset processing of the ciphertext data has been completed.
  • the server uploads the transaction event data corresponding to the data processing request to the blockchain network for on-chain storage.
  • the transaction event data may include data related to calculations performed by the server in response to the data processing request.
  • the target data may include but is not limited to at least one of the following: face image data, medical image data, and human body motion data.
  • the preset processing when the target data includes medical image data, the preset processing may include performing diagnosis processing on the medical image data.
  • the preset processing may include face recognition processing.
  • the target data includes human body motion data, the preset processing includes motion recognition processing.
  • invoking the convolution operator in the preset model to perform the convolution operation on the ciphertext data to obtain the ciphertext feature data may include: according to the preset MPC protocol With the homomorphic addition and multiplication characteristics of, the convolution operator in the preset model is called to perform the convolution operation on the ciphertext data to obtain the ciphertext feature data.
  • the preset model may be a trained convolutional neural network model.
  • Convolutional neural network models generally include: convolutional layer, excitation layer, pooling layer and fully connected layer. Among them, the number of each layer can be one or more.
  • the convolution layer may include a convolution operator for extracting features of the data.
  • the server After receiving the data processing request sent by the client, the server calls the convolution operator in the preset model to perform a private convolution operation on the ciphertext data according to the preset MPC protocol to obtain the ciphertext feature data.
  • the plaintext feature data obtained after decrypting the ciphertext feature data obtained by performing the privacy convolution operation on the ciphertext data is the same as the feature data obtained by directly performing the plaintext convolution operation on the plaintext data.
  • homomorphic encryption allows operations to be performed on the ciphertext, and the corresponding operations will be mapped to the plaintext.
  • the homomorphic encryption can be refined into the following two homomorphic encryption algorithms:
  • the convolution operation on the plaintext data is to multiply the corresponding elements in the plaintext data matrix and the convolution operator matrix and then sum them.
  • the convolution operation on the ciphertext data is obtained by multiplying the powers of the corresponding elements of the convolution operator matrix of the elements in the ciphertext data matrix.
  • a 3 ⁇ 3 is a plaintext data matrix
  • C 3 ⁇ 3 is a convolution operator matrix
  • a 3 ⁇ 3 is a ciphertext data matrix.
  • the plaintext convolution operation and privacy convolution operation are as follows:
  • FIG. 3 shows a flowchart of a data processing method provided by an embodiment of the present application.
  • the foregoing data processing method may include the following steps:
  • Step S301 Receive the ciphertext feature data and the preset operator in the preset model sent by the server.
  • the server may receive the data processing request sent by the client.
  • the data processing request may carry ciphertext data.
  • the ciphertext data can be obtained by encrypting the target data by the client using a homomorphic encryption algorithm.
  • the server may call the convolution operator in the preset model according to the preset MPC protocol in response to the data processing request to perform a convolution operation on the ciphertext data to obtain the ciphertext feature data.
  • the server sends the generated ciphertext feature data and the preset operator in the preset model to the agent.
  • the agent includes one of the following: a secure container running on the client, a virtual machine running on the client, and a computer that establishes a local area network connection with the client.
  • Step S302 Call the preset operator in the preset model according to the preset MPC protocol to process the ciphertext feature data in cooperation with the client to obtain the ciphertext processing result.
  • Step S303 Send the ciphertext processing result to the client.
  • the agent can call the preset operator in the preset model according to the preset MPC protocol, and cooperate with the client to process the ciphertext feature data to obtain the ciphertext processing result .
  • the preset model is compatible with the preset MPC protocol, and is used to perform preset processing on the ciphertext data in the case of data encryption.
  • the preset model may be a trained deep learning model.
  • the deep learning model can be obtained by training using a large amount of plaintext data.
  • the floating-point data in the trained deep learning model is converted into integer data.
  • the preset MPC protocol can be used to implement various operations in the preset model when the input is ciphertext data, so as to realize the preset processing of ciphertext data.
  • the agent After obtaining the ciphertext processing result, the agent sends the ciphertext processing result to the client.
  • the target data is homomorphically encrypted to obtain the corresponding ciphertext data, so as to prevent the specific content of the target data from being leaked.
  • the server calls the convolution operator in the preset model compatible with the MPC protocol to perform the convolution operation on the ciphertext data according to the preset MPC protocol to obtain the ciphertext feature data, and combine the ciphertext feature data with the preset model
  • the preset operator of is sent to the agent, so that the agent and the client then call the preset operator in the preset model to perform specific processing on the ciphertext feature data according to the preset MPC protocol to obtain the ciphertext processing of the target data result.
  • the agent is a computer in the same local area network as the client or a secure container or virtual machine running on the client, it is more secure than directly having the server and the client perform ciphertext feature data.
  • Calculation, through the agent and the client according to the preset MPC protocol to call the preset operator to perform secure multi-party calculation of the ciphertext feature data which can effectively save the network bandwidth required for secure multi-party calculation, and greatly reduce the network delay. Effectively improve the efficiency of data processing.
  • the client after sending the ciphertext processing result to the client, it may further include: the client decrypts the ciphertext processing result to obtain the plaintext processing result. Specifically, the client can decrypt the ciphertext processing result according to the private key obtained by the homomorphic encryption algorithm to obtain the plaintext processing result of the target data. Through the above method, the plaintext processing result of the target data can be revealed on the client.
  • the client may further include: the client obtains the verification result, where the verification result is used to indicate whether the plaintext processing result is correct; the client The verification result and the ciphertext processing result are sent to the blockchain network for on-chain storage.
  • the client obtains the verification result of the plaintext processing result.
  • the verification result may be obtained after the business personnel verify the plaintext processing result.
  • the verification result can also be inferred by the application in the client based on the target data and the plaintext processing result.
  • the verification result is used to indicate whether the plaintext processing result is correct.
  • the client sends the verification result and the ciphertext processing result to the blockchain network for on-chain storage, which is convenient for subsequent query, traceability, billing, verification, etc.
  • the client may send the data processing resource data to the contract account of the blockchain network.
  • the resource data may be fees that need to be paid for data processing, such as currency or Bitcoin.
  • the blockchain network determines whether the verification result is correct. When it is determined that the verification result is correct, the blockchain network sends the resource data in the contract account to the server's account.
  • calling the preset operator in the preset model according to the preset MPC protocol to process the ciphertext feature data in cooperation with the client to obtain the ciphertext processing result may include: The activation operator in the MPC protocol and the preset operator cooperates with the client to activate the ciphertext feature data to obtain the first activation data and the second activation data; according to the preset MPC protocol and the preset operator
  • the pooling operator of the client cooperates with the client to perform the pooling operation on the first activation data and the second activation data to obtain the first pooling data and the second pooling data; according to the preset MPC protocol and the preset operator
  • the fully connected operator cooperates with the client to perform a fully connected operation on the first pooled data and the second pooled data to obtain the ciphertext processing data.
  • the preset model may be a trained convolutional neural network model.
  • Convolutional neural network models generally include: convolutional layer, excitation layer, pooling layer and fully connected layer. Among them, the number of each layer can be one or more.
  • the convolution layer may include a convolution operator for extracting features of the data.
  • the excitation layer can include activation operators to add non-linear factors to simulate more subtle changes.
  • the pooling layer may include a pooling operator, which is used to compress the input features. On the one hand, the feature map is reduced and the network calculation complexity is simplified. On the other hand, the feature compression is performed to extract the main features.
  • the fully connected layer may include a fully connected operator, which is used to connect all the features, send the output value to the classifier, and obtain the processing result.
  • a fully connected operator which is used to connect all the features, send the output value to the classifier, and obtain the processing result.
  • the operation corresponding to the paper operator requires more computing resources, so it can be completed on the server side.
  • the agent and the client can call the activation operator, the pooling operator and the fully connected operator according to a preset protocol to perform secure multi-party calculations.
  • the preset operator may include but is not limited to at least one of the following: an activation operator, a pooling operator, and a fully connected operator.
  • the server After the server calls the convolution operator to perform the convolution operation on the ciphertext data according to the preset MPC protocol to obtain the ciphertext feature data, the server sends the ciphertext feature data and the preset operator to the agent.
  • the agent can call the activation operator in the preset operator according to the preset MPC protocol, and cooperate with the client to activate the ciphertext feature data to obtain the first activation data and the second activation data.
  • the first activation data is held by the agent
  • the second activation data is held by the client.
  • the agent performs a homomorphic encryption to secret sharing operation on the ciphertext feature data to obtain the first ciphertext data and the second ciphertext data.
  • the agent sends the first ciphertext data to the client.
  • the client decrypts the first ciphertext data to obtain the first plaintext data.
  • the agent converts the activation operator into a Boolean circuit and obtains the truth table of each circuit gate of the Boolean circuit. Then the agent selects two evenly distributed strings as labels for each door, which are used to represent 0 or 1 respectively. After that, the agent randomly generates a first random number, and generates a first label according to the second ciphertext data and the first random number. After replacing the truth table with the first label as input, the agent obtains the label table. For each circuit gate, the agent uses the tag table to encrypt, and generates a first encryption circuit (GC, Garbled Circuit).
  • GC Garbled Circuit
  • the agent sends the first encryption circuit to the client.
  • the client performs an inadvertent transfer (OT, Oblivious Transfer) to the first plaintext data to obtain the second label.
  • the client decrypts the first encryption circuit according to the second tag to obtain activation data.
  • Activation data is also feature data, which is used to characterize the features after adding nonlinear factors, and can simulate more subtle feature changes. Then, since the subsequent pooling operation is implemented through secure multi-party computing, the activation data can be secretly shared, so that the first activation data can be obtained on the agent side and the second activation data can be obtained on the client side.
  • the activation data is the sum of the first activation data and the second activation data. That is, the agent and the client perform secure multi-party calculation on the ciphertext feature data according to the preset MPC protocol and activation operator to obtain the first activation data and the second activation data.
  • the agent After the agent obtains the first activation data and the client obtains the second activation data, the agent calls the pooling operator in the preset operator according to the preset MPC protocol, and cooperates with the client to compare the first activation data and the second activation data. Activate the data to perform a pooling operation to obtain the first pooled data and the second pooled data.
  • the first pooled data can be held by the agent.
  • the second pooled data can be held by the client.
  • the agent converts the pooling operator into a Boolean circuit.
  • the agent randomly generates a second random number.
  • the agent generates a third label according to the first activation function and the random number.
  • the agent uses the third label as input to replace the truth table of the Boolean circuit to obtain the label table.
  • the agent uses the tag table to encrypt each gate of the Boolean circuit to generate a second encryption circuit.
  • the agent sends the second encryption circuit to the client.
  • the client inadvertently transmits the second activation data to obtain the fourth tag.
  • the client uses the fourth tag to decrypt the second encryption circuit to obtain pooled data.
  • Pooled data also belongs to feature data, which is the feature data obtained after the feature is compressed, which can characterize the main feature. After that, since the subsequent full connection operation is implemented through secure multi-party computing, the pooled data can be secretly shared, so that the agent obtains the first pooled data and the client obtains the second pooled data.
  • the pooled data is the sum of the first pooled data and the second pooled data. That is, the agent and the client can perform secure multi-party calculation on the first activation data and the second activation data according to the preset MPC protocol and pooling operator to obtain the first pooling data and the second pooling data.
  • the agent After the agent obtains the first pooled data and the client obtains the second pooled data, the agent performs the secret sharing to homomorphic encryption operation on the first pooled data, and the client performs secret sharing to the second pooled data. State encryption operation, so as to obtain pooled data on the agent side. Then the obtained pooled data is flattened into a one-dimensional array. The agent side multiplies each element in the one-dimensional array with the weight value on the connection line (that is, the element in the fully connected operator), adds and outputs the result, and obtains the ciphertext processing result.
  • the server cooperates with the client to perform a full connection operation on the first pooled data and the second pooled data according to the preset MPC protocol and the full connection operator in the preset operator to obtain the ciphertext processing data.
  • the agent sends the obtained ciphertext processing result to the client.
  • the client uses the private key of the homomorphic encryption algorithm to decrypt the ciphertext processing result to obtain the plaintext processing result of the target data.
  • the agent and the client call the activation operator, the pooling operator and the fully connected operator in the preset operator according to the preset MPC protocol to perform secure multi-party calculation of the ciphertext feature data ,
  • the ciphertext processing result is obtained, and the ciphertext data is processed or inferred through the preset model when the input is ciphertext, which can effectively protect the user's data privacy.
  • the activation operator, the pooling operator, and the fully connected operator are all calculated by the agent and the client according to the preset MPC protocol, but the application is not limited to this.
  • the calculation of operators that occupy more computing resources may be calculated by the server and the client according to a preset MPC protocol, such as an average pooling operator.
  • FIG. 4 shows a flowchart of a data processing method provided in an embodiment of the present application. As shown in Figure 4, the method may include:
  • step S401 the client obtains the target data, and encrypts the target data using a homomorphic encryption algorithm to obtain ciphertext data.
  • Step S402 The client sends a data processing request to the server, where the data processing request carries ciphertext data.
  • Step S403 In response to the data processing request, the server and the client call the convolution operator in the preset model to perform a convolution operation on the ciphertext data according to the preset MPC protocol to obtain the ciphertext feature data.
  • step S404 the server sends the ciphertext feature data and the preset operator in the preset model to the agent.
  • step S405 the agent invokes a preset operator according to the preset MPC protocol to process the ciphertext feature data in cooperation with the client to obtain the ciphertext processing result.
  • step S406 the agent sends the ciphertext processing result to the client.
  • step S407 the client decrypts the ciphertext processing result to obtain the plaintext processing result of the target data.
  • the target data is homomorphically encrypted to obtain the corresponding ciphertext data, so as to prevent the specific content of the target data from being leaked.
  • the server calls the convolution operator in the preset model compatible with the MPC protocol to perform the convolution operation on the ciphertext data according to the preset MPC protocol to obtain the ciphertext feature data, and combine the ciphertext feature data with the preset model
  • the preset operator of is sent to the agent, so that the agent and the client then call the preset operator in the preset model to perform specific processing on the ciphertext feature data according to the preset MPC protocol to obtain the ciphertext processing of the target data
  • the client can decrypt the ciphertext processing result to obtain the plaintext processing result of the target data.
  • the agent is a computer in the same local area network as the client or a secure container or virtual machine running on the client, it is more secure than directly having the server and the client perform ciphertext feature data.
  • Calculation, through the agent and the client according to the preset MPC protocol to call the preset operator to perform secure multi-party calculation of the ciphertext feature data which can effectively save the network bandwidth required for secure multi-party calculation, and greatly reduce the network delay. Effectively improve the efficiency of data processing.
  • the agent and the client may also include: the server will contact the data processing request
  • the corresponding transaction event is uploaded to the blockchain network for storage on the chain.
  • the target data may include but is not limited to at least one of the following: face image data, medical image data, and human body motion data.
  • the preset processing may include performing diagnosis processing on the medical image data.
  • the server calls the convolution operator in the preset model to perform the convolution operation on the ciphertext data according to the preset MPC protocol to obtain the ciphertext feature data, which may include: the server according to the preset MPC
  • the homomorphic addition and multiplication features in the protocol call the convolution operator in the preset model to perform the convolution operation on the ciphertext data to obtain the ciphertext feature data.
  • the client may further include: the client obtains the verification result, where the verification result is used to indicate whether the plaintext processing result is correct; the client The verification result and the ciphertext processing result are sent to the blockchain network for on-chain storage.
  • the agent invokes the preset operator according to the preset MPC protocol to process the ciphertext feature data in cooperation with the client to obtain the ciphertext processing result, which may include: according to the preset MPC protocol
  • the activation operator in the preset operator cooperates with the client to activate the ciphertext feature data to obtain the first activation data and the second activation data; according to the preset MPC protocol and the pooling in the preset operator Operator, cooperates with the client to perform pooling operations on the first activation data and the second activation data to obtain the first pooled data and the second pooled data; according to the preset MPC protocol and the full connection in the preset operator
  • the operator cooperates with the client to perform a full connection operation on the first pooled data and the second pooled data to obtain the ciphertext processing data.
  • Fig. 5 shows a sequence diagram of the data processing method in this specific embodiment. As shown in Figure 5, the data processing method may include the following steps:
  • Step 1 The client obtains the target data, and encrypts the target data using a homomorphic encryption algorithm to obtain the ciphertext data corresponding to the target data;
  • Step 2 The client sends a data processing request to the server, where the data processing request carries ciphertext data;
  • Step 3 The client mortgages the fee to the contract account of the blockchain network
  • Step 4 The server invokes the convolution operator in the preset model to perform a private convolution operation on the ciphertext data according to the preset MPC protocol to obtain the ciphertext feature data;
  • Step 5 The server sends the ciphertext feature data and the preset operator in the preset model to the agent;
  • Step 6 The agent and the client call the activation operator in the preset operator according to the preset MPC protocol to perform secure multi-party calculation on the ciphertext feature data, and obtain the first activation data at the agent and the second activation at the client.
  • Activation data
  • Step 7 The agent and the client call the pooling operator in the preset operator according to the preset MPC protocol to perform a secure multi-party calculation on the first activation data and the second activation data, and obtain the first pooling data at the agent. And get the second pooled data on the client;
  • Step 8 The agent and the client call the full connection operator in the preset model according to the preset MPC protocol to perform the full connection operation on the first pooled data and the second pooled data, and the ciphertext processing is obtained on the agent side. result;
  • Step 9 The agent sends the ciphertext processing result to the client;
  • Step 10 The server sends the transaction event data corresponding to the data processing request to the blockchain network for storage on the chain;
  • Step 11 The client uses the private key of the homomorphic encryption algorithm to decrypt the ciphertext processing result to obtain the plaintext processing result of the target data;
  • Step 12 The client obtains the verification result, where the verification result is used to indicate whether the plaintext processing result of the target data is correct;
  • Step 13 The client sends the plaintext processing result and the verification result to the blockchain network for storage on the chain;
  • Step 14 The blockchain network determines whether the verification result is correct
  • Step 15 In the case where it is determined that the verification result is correct, the blockchain network transfers the fees in the contract account to the server's account;
  • Step 16 In the case where it is determined that the verification result is incorrect, the blockchain network transfers the fees in the contract account to the client's account.
  • the ciphertext data is obtained by homomorphic encryption of the target data, which facilitates subsequent direct processing of the ciphertext data, and prevents the specific content of the target data from being leaked.
  • the server calls the convolution operator in the preset model to perform the convolution operation on the ciphertext data according to the preset MPC protocol, obtains the ciphertext feature data, and sends the ciphertext feature data and the preset operator in the preset model to Agent side.
  • the agent and the client call the activation operator, pooling operator and fully connected operator in the preset operator according to the preset MPC protocol, and perform preset processing on the ciphertext feature data to obtain the ciphertext processing result of the target data , which realizes the processing of data when the input is ciphertext data, which can effectively protect data privacy.
  • the server sends the data corresponding to this transaction event to the blockchain network for storage on the chain, so as to facilitate subsequent query, retrieval, verification, etc.
  • the agent sends the ciphertext processing result to the client, and the client decrypts the ciphertext processing result to obtain the plaintext processing result of the target data.
  • the client obtains the verification result of the plaintext processing result, and sends the ciphertext processing result and the verification result to the blockchain network for on-chain storage, which can further protect the privacy of the processing result and facilitate subsequent queries and backtracking.
  • the blockchain network determines that the verification result is correct, the cost of the client's mortgage in the contract account is transferred to the server's account.
  • the blockchain network determines that the verification result is wrong, the cost of the client's mortgage to the contract account is returned to the client's account. In this way, the billing and clearing problem of the business can be effectively solved.
  • the agent is a computer in the same local area network as the client or a secure container or virtual machine running on the client, it is more secure than directly having the server and the client perform ciphertext feature data.
  • Calculation, through the agent and the client according to the preset MPC protocol to call the preset operator to perform secure multi-party calculation of the ciphertext feature data which can effectively save the network bandwidth required for secure multi-party calculation, and greatly reduce the network delay. Effectively improve the efficiency of data processing.
  • an embodiment of the present application also provides a data processing device located on the server side, as described in the following embodiment. Since the problem-solving principle of the data processing device is similar to that of the data processing method, the implementation of the data processing device can refer to the implementation of the data processing method, and the repetition will not be repeated.
  • the term "unit” or "module” can be a combination of software and/or hardware that implements a predetermined function.
  • the devices described in the following embodiments are preferably implemented by software, implementation by hardware or a combination of software and hardware is also possible and conceived.
  • Fig. 6 is a structural block diagram of a data processing device according to an embodiment of the present application. As shown in Fig. 6, it includes: a receiving module 601, a convolution module 602, and a sending module 603. The structure is described below.
  • the receiving module 601 is configured to receive a data processing request sent by the client, where the data processing request carries ciphertext data, and the ciphertext data is generated by the client after encrypting the target data using a homomorphic encryption algorithm;
  • the convolution module 602 is configured to respond to the data processing request and call the convolution operator in the preset model to perform a convolution operation on the ciphertext data according to the preset MPC protocol to obtain the ciphertext feature data;
  • the sending module 603 is used to send the ciphertext feature data and the preset operator in the preset model to the agent, where the agent is used to call the preset operator to the ciphertext feature data according to the preset MPC protocol with the client. Perform processing to obtain the ciphertext processing result; among them, the preset model is compatible with the preset MPC protocol, and is used to perform preset processing on the ciphertext data in the case of data encryption; the agent includes one of the following: running on the client A secure container, a virtual machine running on the client, and a computer that establishes a local area network connection with the client.
  • the data processing device may further include a storage module, and the storage module may be used for: invoking a preset operator on the agent side and the client side according to a preset MPC protocol to process the ciphertext feature data, After the ciphertext processing result is obtained, the transaction event corresponding to the data processing request is uploaded to the blockchain network for storage on the chain.
  • the target data may include at least one of the following: face image data, medical image data, and human body motion data.
  • the preset processing may include performing diagnosis processing on the medical image data.
  • the convolution module may be specifically used to: according to the homomorphic addition and multiplication characteristics in the preset MPC protocol, call the convolution operator in the preset model to perform convolution operations on the ciphertext data, Obtain ciphertext feature data.
  • an embodiment of the present application also provides a data processing device located at the agent end, as described in the following embodiment. Since the problem-solving principle of the data processing device is similar to that of the data processing method, the implementation of the data processing device can refer to the implementation of the data processing method, and the repetition will not be repeated.
  • the term "unit” or "module” can be a combination of software and/or hardware that implements a predetermined function.
  • the devices described in the following embodiments are preferably implemented by software, implementation by hardware or a combination of software and hardware is also possible and conceived.
  • Fig. 7 is a structural block diagram of a data processing device according to an embodiment of the present application. As shown in Fig. 7, it includes: a receiving module 701, a processing module 702, and a sending module 703. The structure is described below.
  • the receiving module 701 is configured to receive the ciphertext feature data sent by the server and the preset operator in the preset model, where the ciphertext feature data is encrypted by the server calling the convolution operator in the preset model according to the preset MPC protocol.
  • the text data is obtained by convolution operation, and the cipher text data is obtained by encrypting the target data by the client using a homomorphic encryption algorithm;
  • the processing die hole 702 is used to call the preset operator in the preset model according to the preset MPC protocol to process the ciphertext feature data in cooperation with the client to obtain the ciphertext processing result;
  • the sending module 703 is used to send the ciphertext processing result to the client;
  • the preset model is compatible with the preset MPC protocol, and is used to perform preset processing on the ciphertext data in the case of data encryption;
  • the agent includes one of the following : A secure container running on the client, a virtual machine running on the client, and a computer that establishes a LAN connection with the client.
  • the client after sending the ciphertext processing result to the client, it may further include: the client decrypts the ciphertext processing result to obtain the plaintext processing result.
  • the client may further include: the client obtains the verification result, where the verification result is used to indicate whether the plaintext processing result is correct; the client The verification result and the ciphertext processing result are sent to the blockchain network for on-chain storage.
  • the processing die hole can be specifically used to: according to the preset MPC protocol and the activation operator in the preset operator, cooperate with the client to perform an activation operation on the ciphertext feature data to obtain the first activation Data and second activation data; according to the preset MPC protocol and the pooling operator in the preset operator, cooperate with the client to perform a pooling operation on the first activation data and the second activation data to obtain the first pooled data And the second pooled data; according to the preset MPC protocol and the fully connected operator in the preset operator, cooperate with the client to perform the fully connected operation on the first pooled data and the second pooled data to obtain ciphertext processing data.
  • the embodiments of the present application achieve the following technical effects: by homomorphically encrypting the target data, the corresponding ciphertext data is obtained, and the specific content of the target data is prevented from being leaked. Further, the server calls the convolution operator in the preset model compatible with the MPC protocol to perform the convolution operation on the ciphertext data according to the preset MPC protocol to obtain the ciphertext feature data, and combine the ciphertext feature data with the preset model The preset operator of is sent to the agent, so that the agent and the client then call the preset operator in the preset model to perform specific processing on the ciphertext feature data according to the preset MPC protocol to obtain the ciphertext processing of the target data result.
  • the agent is a computer in the same local area network as the client or a secure container or virtual machine running on the client, it is more secure than directly having the server and the client perform ciphertext feature data.
  • Calculation, through the agent and the client according to the preset MPC protocol to call the preset operator to perform secure multi-party calculation of the ciphertext feature data which can effectively save the network bandwidth required for secure multi-party calculation, and greatly reduce the network delay. Effectively improve the efficiency of data processing.
  • the embodiment of the present application also provides a computer device.
  • the computer device may specifically include an input device 81 and a processor. 82.
  • Memory 83 is used to store processor executable instructions.
  • the processor 82 implements the steps of the data processing method described in any of the foregoing embodiments when executing the instructions.
  • the input device may specifically be one of the main devices for information exchange between the user and the computer system.
  • the input device may include a keyboard, a mouse, a camera, a scanner, a light pen, a handwriting input board, a voice input device, etc.; the input device is used to input raw data and programs for processing these numbers into the computer.
  • the input device can also obtain and receive data transmitted from other modules, units, and devices.
  • the processor can be implemented in any suitable way.
  • the processor may take the form of a microprocessor or a processor and a computer readable medium, logic gates, switches, application specific integrated circuits ( Application Specific Integrated Circuit, ASIC), programmable logic controller and embedded microcontroller form, etc.
  • the memory may specifically be a memory device used to store information in modern information technology.
  • the memory can include multiple levels. In a digital system, as long as it can store binary data, it can be a memory; in an integrated circuit, a circuit with a storage function without a physical form is also called a memory, such as RAM, FIFO, etc.; In the system, storage devices in physical form are also called memory, such as memory sticks, TF cards, and so on.
  • the embodiment of the present application also provides a computer storage medium based on a data processing method, the computer storage medium stores computer program instructions, and when the computer program instructions are executed, the data processing method described in any of the above embodiments is implemented A step of.
  • the above-mentioned storage medium includes, but is not limited to, random access memory (Random Access Memory, RAM), read-only memory (Read-Only Memory, ROM), cache (Cache), and hard disk (Hard Disk Drive, HDD). Or memory card (Memory Card).
  • the memory can be used to store computer program instructions.
  • the network communication unit may be an interface set up in accordance with a standard stipulated by the communication protocol and used for network connection communication.
  • modules or steps of the embodiments of the present application described above can be implemented by a general computing device, and they can be concentrated on a single computing device or distributed among multiple computing devices.
  • they can be implemented by the program code executable by the computing device, so that they can be stored in the storage device for execution by the computing device, and in some cases, they can be different from here
  • the steps shown or described are performed in the order of, or they are respectively fabricated into individual integrated circuit modules, or multiple modules or steps of them are fabricated into a single integrated circuit module to achieve. In this way, the embodiments of the present application are not limited to any specific combination of hardware and software.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Telephonic Communication Services (AREA)

Abstract

L'invention concerne un procédé et un dispositif de traitement de données, un appareil informatique et un support d'enregistrement. Le procédé consiste : à recevoir une demande de traitement de données envoyée par un client (S201) ; en réponse à la demande de traitement de données, à appeler, selon un protocole de calcul multipartite (MPC) prédéfini, un opérateur de convolution dans un modèle prédéfini pour l'amener à effectuer une opération de convolution sur des données de caractéristique de texte chiffré, et à obtenir des données de caractéristique de texte chiffré (S202) ; et à envoyer les données de caractéristique de texte chiffré et un opérateur prédéfini dans le modèle prédéfini à un agent (S203), l'agent et le client appelant, selon le protocole MPC prédéfini, l'opérateur prédéfini pour l'amener à traiter les données de caractéristique de texte chiffré, et à obtenir un résultat de traitement de texte chiffré. Le procédé permet le traitement de données de texte chiffré entrées, ce qui permet de protéger efficacement la confidentialité des données et d'économiser des ressources de bande passante.
PCT/CN2020/076140 2019-10-11 2020-02-21 Procédé et dispositif de traitement de données, appareil informatique et support d'enregistrement WO2021068444A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201910962389.0 2019-10-11
CN201910962389.0A CN110750801B (zh) 2019-10-11 2019-10-11 数据处理方法、装置、计算机设备和存储介质

Publications (1)

Publication Number Publication Date
WO2021068444A1 true WO2021068444A1 (fr) 2021-04-15

Family

ID=69278006

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/076140 WO2021068444A1 (fr) 2019-10-11 2020-02-21 Procédé et dispositif de traitement de données, appareil informatique et support d'enregistrement

Country Status (2)

Country Link
CN (1) CN110750801B (fr)
WO (1) WO2021068444A1 (fr)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115118535A (zh) * 2022-05-25 2022-09-27 成都吉胜科技有限责任公司 一种基于循环责任链的网吧分布式并行计费方法及系统

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110765473A (zh) * 2019-10-11 2020-02-07 矩阵元技术(深圳)有限公司 数据处理方法、装置、计算机设备和存储介质
CN110750801B (zh) * 2019-10-11 2022-06-10 矩阵元技术(深圳)有限公司 数据处理方法、装置、计算机设备和存储介质
CN111310734A (zh) * 2020-03-19 2020-06-19 支付宝(杭州)信息技术有限公司 保护用户隐私的人脸识别方法和装置
CN111401273B (zh) * 2020-03-19 2022-04-29 支付宝(杭州)信息技术有限公司 一种用于隐私保护的用户特征提取系统及设备
CN111414646B (zh) * 2020-03-20 2024-03-29 矩阵元技术(深圳)有限公司 实现隐私保护的数据处理方法和装置
WO2021203260A1 (fr) * 2020-04-08 2021-10-14 云图技术有限公司 Procédé, appareil, dispositif et système de mise en correspondance de nœuds
WO2021223104A1 (fr) * 2020-05-06 2021-11-11 云图技术有限公司 Procédé et appareil de test de système
CN111726225B (zh) * 2020-06-10 2022-12-02 暨南大学 一种基于秘密共享的外包隐私保护交集计算方法
CN111737755B (zh) * 2020-07-31 2020-11-13 支付宝(杭州)信息技术有限公司 业务模型的联合训练方法及装置
CN112699391B (zh) * 2020-12-31 2023-06-06 青岛海尔科技有限公司 目标数据的发送方法及隐私计算平台
CN114764501A (zh) * 2021-01-15 2022-07-19 阿里巴巴集团控股有限公司 数据处理方法、装置和系统
CN113206832B (zh) * 2021-03-31 2022-12-06 华控清交信息科技(北京)有限公司 一种数据处理方法、装置和用于数据处理的装置
CN113254956B (zh) * 2021-05-07 2024-07-02 华控清交信息科技(北京)有限公司 一种数据处理方法、装置和用于数据处理的装置
CN114331739A (zh) * 2021-12-29 2022-04-12 迅鳐成都科技有限公司 基于区块链的金融授信数据处理方法、装置、系统及存储介质
CN114826546A (zh) * 2022-04-02 2022-07-29 支付宝(杭州)信息技术有限公司 一种交易数据处理方法及装置
CN116800906B (zh) * 2023-08-22 2023-11-07 北京电子科技学院 一种基于模分量同态的密文卷积神经网络图像分类方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103812638A (zh) * 2014-01-22 2014-05-21 北京工业大学 一种加密域surf图像特征提取方法
US20160323098A1 (en) * 2015-04-28 2016-11-03 United States Government As Represented By The Secretary Of The Navy System and Method for High-Assurance Data Storage and Processing based on Homomorphic Encryption
CN110175461A (zh) * 2019-05-08 2019-08-27 矩阵元技术(深圳)有限公司 安全多方计算的实现方法、装置、计算机设备和存储介质
CN110750801A (zh) * 2019-10-11 2020-02-04 矩阵元技术(深圳)有限公司 数据处理方法、装置、计算机设备和存储介质

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101475747B1 (ko) * 2014-01-22 2014-12-23 고려대학교 산학협력단 동형 암호를 이용한 다자간 위탁 연산 방법
CN104883580B (zh) * 2015-06-03 2020-12-11 合肥工业大学 一种基于同态加密的视频安全卷积计算系统及方法
WO2018174873A1 (fr) * 2017-03-22 2018-09-27 Visa International Service Association Apprentissage-machine de protection de la vie privée
US20190244138A1 (en) * 2018-02-08 2019-08-08 Apple Inc. Privatized machine learning using generative adversarial networks
CN110084063B (zh) * 2019-04-23 2022-07-15 中国科学技术大学 一种保护隐私数据的梯度下降计算方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103812638A (zh) * 2014-01-22 2014-05-21 北京工业大学 一种加密域surf图像特征提取方法
US20160323098A1 (en) * 2015-04-28 2016-11-03 United States Government As Represented By The Secretary Of The Navy System and Method for High-Assurance Data Storage and Processing based on Homomorphic Encryption
CN110175461A (zh) * 2019-05-08 2019-08-27 矩阵元技术(深圳)有限公司 安全多方计算的实现方法、装置、计算机设备和存储介质
CN110750801A (zh) * 2019-10-11 2020-02-04 矩阵元技术(深圳)有限公司 数据处理方法、装置、计算机设备和存储介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115118535A (zh) * 2022-05-25 2022-09-27 成都吉胜科技有限责任公司 一种基于循环责任链的网吧分布式并行计费方法及系统
CN115118535B (zh) * 2022-05-25 2023-08-25 成都吉胜科技有限责任公司 一种基于循环责任链的网吧分布式并行计费方法及系统

Also Published As

Publication number Publication date
CN110750801A (zh) 2020-02-04
CN110750801B (zh) 2022-06-10

Similar Documents

Publication Publication Date Title
WO2021068444A1 (fr) Procédé et dispositif de traitement de données, appareil informatique et support d'enregistrement
WO2021068445A1 (fr) Procédé et appareil de traitement de données, dispositif informatique et support d'informations
WO2021204040A1 (fr) Procédé et appareil de traitement de données d'apprentissage fédéré et dispositif et support d'enregistrement
CN110915164B (zh) 基于可信执行环境中执行的智能合约操作处理区块链数据
US10903976B2 (en) End-to-end secure operations using a query matrix
US11902413B2 (en) Secure machine learning analytics using homomorphic encryption
US20220092216A1 (en) Privacy-preserving machine learning in the three-server model
US11222138B2 (en) Privacy-preserving machine learning in the three-server model
CN110945550B (zh) 在可信执行环境下处理和存储区块链数据
US9158925B2 (en) Server-aided private set intersection (PSI) with data transfer
WO2020019341A1 (fr) Procédé et dispositif de traitement de compte de chaîne de blocs, et support de stockage
US10608811B2 (en) Private set intersection encryption techniques
WO2022247576A1 (fr) Procédé et appareil de traitement de données, dispositif et support de stockage lisible par ordinateur
US10951401B2 (en) Digital asset transfer system for secure digital asset transactions
CN110569227B (zh) 模型参数确定方法、装置和电子设备
US10885203B2 (en) Encrypted data exchange
CN110580409A (zh) 模型参数确定方法、装置和电子设备
WO2022068355A1 (fr) Procédé et appareil de chiffrement basés sur une caractéristique d'informations, dispositif, et support d'enregistrement
WO2023020216A1 (fr) Procédé et appareil de détermination d'extremum basés sur un calcul multipartite sécurisé, dispositif et support de stockage
CN109981576A (zh) 密钥迁移方法和装置
CN111949998B (zh) 对象检测及请求方法、数据处理系统、装置及存储介质
CN114039785A (zh) 数据加密、解密、处理方法、装置、设备和存储介质
Liu et al. Privacy-preserving collaborative analytics on medical time series data
JP2023114996A (ja) 相関係数取得方法、装置、電子機器および記憶媒体
CN113645294B (zh) 消息获取方法、装置、计算机设备和消息传输系统

Legal Events

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

Ref document number: 20874867

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20874867

Country of ref document: EP

Kind code of ref document: A1