Data processing methods, apparatus, equipment and media

By using elliptic curve cryptography and data segmentation techniques, combined with a trusted execution environment and unintentional transmission protocols, the problems of high computational resource consumption and insufficient security in federated learning tasks are solved, achieving efficient and secure data transmission and processing.

CN119232380BActive Publication Date: 2025-10-31SHENGDOUSHI SHANGHAI SCI & TECH DEV CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202310799559.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-06-30
Publication Date
2025-10-31
Estimated Expiration
2043-06-30

AI Technical Summary

Technical Problem

In federated learning tasks, existing encrypted computing methods consume a lot of computing resources and take a long time to compute, resulting in large data transmission volumes, low efficiency, and insufficient security.

Method used

Elliptic curve cryptography is used to encrypt the feature data of the participants, and combined with data segmentation, a trusted execution environment, and an unobtrusive transmission protocol to ensure the security and efficiency of data transmission.

Benefits of technology

This reduces the amount of data transmitted between participants, improves the processing efficiency of federated learning tasks, and enhances the security of data transmission.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119232380B_ABST
    Figure CN119232380B_ABST
Patent Text Reader

Abstract

This disclosure provides a data processing method, apparatus, device, and medium, relating to the field of artificial intelligence technology. The method includes: determining an elliptic curve for encryption, shared by the participant and other participants; encrypting first feature data of the participant using the elliptic curve to obtain a ciphertext matrix, wherein the first feature data is obtained by processing the participant's segmented original feature data using the elliptic curve; sending the ciphertext matrix to other participants; receiving intermediate data from other participants, wherein the intermediate data is obtained by processing second feature data and the ciphertext matrix of other participants based on the elliptic curve, wherein the second feature data is obtained by processing the other participants' segmented original feature data using the elliptic curve, and the original feature data of the participant and the original feature data of other participants correspond to at least one sample; and decrypting the intermediate data to obtain target data.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of artificial intelligence technology, specifically to the fields of machine learning, deep learning, and federated learning, and particularly to a data processing method, a data processing apparatus, a federated learning system, an electronic device, a computer-readable storage medium, and a computer program product. Background Technology

[0002] In a federated learning scenario, advertisers possess user ad conversion data, while media platforms possess user media platform behavior data. Both advertisers and media platforms need to utilize their respective data to complete neural network modeling without disclosing their own data to each other. This process requires frequent encryption and decryption operations. With the development of internet and big data technologies, the importance of data security is increasingly prominent. Therefore, during data transmission, computation, and storage, data encryption is necessary to ensure that data cannot be accessed by others, thereby guaranteeing data security.

[0003] Encryptive computation typically involves complex mathematical operations, thus requiring significant computational resources or a long computation time. Currently, there is a desire to improve existing data processing methods to reduce computational resource consumption or shorten computation time.

[0004] The methods described in this section are not necessarily methods that had been previously conceived or adopted. Unless otherwise specified, no method described in this section should be assumed to be prior art simply because it is included in this section. Similarly, unless otherwise specified, the issues mentioned in this section should not be considered to be accepted in any prior art. Summary of the Invention

[0005] This disclosure provides a data processing method, a data processing apparatus, an electronic device, a computer-readable storage medium, and a computer program product.

[0006] According to one aspect of this disclosure, a data processing method is provided, applied to any participant in a federated learning task, the participant being communicatively connected to other participants in the federated learning task. The method includes: determining an elliptic curve for encryption, wherein the participant and other participants are configured to use the same elliptic curve; encrypting first feature data of the participant using the elliptic curve to obtain a ciphertext matrix, wherein the first feature data is obtained by processing the participant's segmented original feature data using the elliptic curve; sending the ciphertext matrix to the other participants; receiving intermediate data from the other participants, wherein the intermediate data is obtained by processing the other participants' second feature data and the ciphertext matrix based on the elliptic curve, the second feature data being obtained by processing the other participants' segmented original feature data using the elliptic curve, the participant's original feature data and the other participants' original feature data corresponding to at least one sample; and decrypting the intermediate data to obtain target data for the federated learning task.

[0007] According to another aspect of this disclosure, a data processing method is provided, applied to any participant in a federated learning task, the participant being communicatively connected to other participants in the federated learning task. The method includes: determining an elliptic curve for encryption, wherein the participant and other participants are configured to use the same elliptic curve; receiving a ciphertext matrix from the other participants, wherein the ciphertext matrix is ​​obtained by encrypting first feature data of the other participants using the elliptic curve, the first feature data being obtained by processing segmented original feature data of the other participants using the elliptic curve; processing second feature data of the participant and the ciphertext matrix based on the elliptic curve to obtain intermediate data, the second feature data being obtained by processing segmented original feature data of the participant using the elliptic curve, the original feature data of the participant and the original feature data of other participants corresponding to at least one sample; and sending the intermediate data to the other participants.

[0008] According to another aspect of this disclosure, a data processing apparatus is provided, applied to any participant in a federated learning task, the participant being communicatively connected to other participants in the federated learning task. The apparatus includes: a first determining unit configured to determine an elliptic curve for encryption, wherein the participant and other participants are configured to use the same elliptic curve; an encryption unit configured to encrypt first feature data of the participant using the elliptic curve to obtain a ciphertext matrix, wherein the first feature data is obtained by processing the participant's segmented original feature data using the elliptic curve; a first sending unit configured to send the ciphertext matrix to the other participants; a first receiving unit configured to receive intermediate data from the other participants, wherein the intermediate data is obtained by processing the other participants' second feature data and the ciphertext matrix based on the elliptic curve, the second feature data being obtained by processing the other participants' segmented original feature data using the elliptic curve, the participant's original feature data and the other participants' original feature data corresponding to at least one sample; and a decryption unit configured to decrypt the intermediate data to obtain target data for the federated learning task.

[0009] According to another aspect of this disclosure, a data processing apparatus is provided, applied to any participant in a federated learning task, the participant being communicatively connected to other participants in the federated learning task. The apparatus includes: a second determining unit configured to determine an elliptic curve for encryption, wherein the participant and other participants are configured to use the same elliptic curve; a second receiving unit configured to receive a ciphertext matrix from the other participants, wherein the ciphertext matrix is ​​obtained by encrypting first feature data of the other participants using the elliptic curve, the first feature data being obtained by processing segmented original feature data of the other participants using the elliptic curve; a processing unit configured to process the participant's second feature data and the ciphertext matrix based on the elliptic curve to obtain intermediate data, the second feature data being obtained by processing the participant's segmented original feature data using the elliptic curve, the participant's original feature data and the other participants' original feature data corresponding to at least one sample; and a second sending unit configured to send the intermediate data to the other participants.

[0010] According to another aspect of this disclosure, a federated learning system is provided, including the aforementioned data processing apparatus having an encryption unit and a decryption unit, and the aforementioned data processing apparatus having a processing unit.

[0011] According to another aspect of this disclosure, an electronic device is provided, comprising: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to enable the at least one processor to perform a data processing method as disclosed herein.

[0012] According to another aspect of this disclosure, a non-transitory computer-readable storage medium is provided storing computer instructions, wherein the computer instructions are used to cause a computer to perform a data processing method as disclosed herein.

[0013] According to another aspect of this disclosure, a computer program product is provided, including a computer program, wherein the computer program, when executed by a processor, implements the data processing method as disclosed herein.

[0014] According to one or more embodiments of this disclosure, efficient encryption of feature data of each participant in a federated learning task can be achieved by using elliptic curves, and the amount of data transmission between participants can be reduced, thereby improving the efficiency of each participant in processing the federated learning task. Furthermore, by combining data segmentation and elliptic curve encryption, the security of the federated learning process can be further enhanced.

[0015] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of this disclosure, nor is it intended to limit the scope of this disclosure. Other features of this disclosure will become readily apparent from the following description. Attached Figure Description

[0016] The accompanying drawings exemplify embodiments and form part of the specification, serving together with the textual description to explain exemplary implementations of the embodiments. The illustrated embodiments are for illustrative purposes only and do not limit the scope of the claims. Throughout the drawings, the same reference numerals refer to similar but not necessarily identical elements.

[0017] Figure 1 A flowchart of a data processing method according to an exemplary embodiment of the present disclosure is shown;

[0018] Figure 2 A flowchart of a data processing method according to an exemplary embodiment of the present disclosure is shown;

[0019] Figure 3 A flowchart is shown illustrating the encryption of a first feature data of a participant using elliptic curves to obtain a ciphertext matrix according to an exemplary embodiment of the present disclosure;

[0020] Figure 4 A flowchart illustrating the transmission of a ciphertext matrix to other participants according to an exemplary embodiment of this disclosure is shown;

[0021] Figure 5 A flowchart of a data processing method according to an exemplary embodiment of the present disclosure is shown;

[0022] Figure 6 A structural block diagram of a data processing apparatus according to an exemplary embodiment of the present disclosure is shown;

[0023] Figure 7 A structural block diagram of a data processing apparatus according to an exemplary embodiment of the present disclosure is shown; and

[0024] Figure 8 A block diagram of an electronic device according to an embodiment of the present disclosure is shown. Detailed Implementation

[0025] The exemplary embodiments of this disclosure are described below with reference to the accompanying drawings, including various details of the embodiments to aid understanding, and should be considered merely exemplary. Therefore, those skilled in the art will recognize that various changes and modifications can be made to the embodiments described herein without departing from the scope of this disclosure. Similarly, for clarity and brevity, descriptions of well-known functions and structures are omitted in the following description.

[0026] In this disclosure, unless otherwise stated, the use of terms such as "first," "second," etc., to describe various elements is not intended to define the positional, temporal, or importance relationships of these elements; such terms are merely used to distinguish one element from another. In some examples, the first element and the second element may refer to the same instance of that element, while in other cases, based on the context, they may refer to different instances.

[0027] The terminology used in the description of the various examples described in this disclosure is for the purpose of describing particular examples only and is not intended to be limiting. Unless the context explicitly indicates otherwise, an element may be one or more unless the number of elements is specifically limited. Furthermore, the term "and / or" as used in this disclosure covers any one of the listed items and all possible combinations thereof.

[0028] The collection, storage, use, processing, transmission, provision, and disclosure of user personal information involved in the technical solution disclosed herein comply with the provisions of relevant laws and regulations and do not violate public order and good morals.

[0029] In related technologies, existing federated learning tasks typically use Advanced Encryption Standard (AES) encryption algorithms or Secure Multi-Party Computation (MPC) protocols for encryption and multi-party communication. However, such methods result in large data transmission volumes and low efficiency.

[0030] To address the aforementioned issues, this disclosure utilizes elliptic curve cryptography to efficiently encrypt the feature data of each participant in a federated learning task, while reducing the amount of data transmission between participants, thereby improving the efficiency of each participant in processing the federated learning task. Furthermore, by combining data partitioning with elliptic curve cryptography, the security of the federated learning process can be further enhanced.

[0031] Figure 1 A flowchart of a data processing method according to an exemplary embodiment of this disclosure is shown. The method is applied to any participant in a federated learning task, which has communicative connections with other participants in the task. Figure 1 As shown, the method includes: step S101, determining an elliptic curve for encryption, wherein the participant and other participants are configured to share the elliptic curve; step S102, encrypting the participant's first feature data using the elliptic curve to obtain a ciphertext matrix, wherein the first feature data is obtained by processing the participant's segmented original feature data using the elliptic curve; step S103, sending the ciphertext matrix to other participants; step S104, receiving intermediate data from other participants, wherein the intermediate data is obtained by processing the other participants' original feature data and ciphertext matrix based on the elliptic curve, wherein the participant's original first feature data and the other participants' original feature data correspond to at least one sample; and step S105, decrypting the intermediate data to obtain target data for the federated learning task.

[0032] Elliptic Curve Cryptography (ECC) is an asymmetric encryption algorithm based on elliptic curve mathematical theory. Compared to other asymmetric encryption algorithms, ECC can achieve the same or higher security levels using shorter keys. Due to this characteristic, the encrypted feature data of participants in a federated learning task has a relatively small number of bits, allowing for bit expansion and fusion processing. Furthermore, compared to methods like AES, ECC is more efficient and avoids information loss (e.g., exchanged information, digital information).

[0033] Therefore, by using elliptic curve cryptography, efficient encryption of feature data from all participants in a federated learning task can be achieved, reducing the amount of data transmission between participants and thus improving the efficiency of each participant in processing the federated learning task. Furthermore, combining data partitioning with elliptic curve cryptography can further enhance the security of the federated learning process.

[0034] It is important to note that, in relation to Figure 1 In a corresponding embodiment, "the participating party" can refer to the initiator of the federated learning task, while "other participating parties" can refer to non-initiators. In an exemplary embodiment, the federated learning task has two participating parties, where "the participating party" is the GUEST party and "other participating parties" are the HOST parties.

[0035] According to some embodiments, the participants may include advertisers, and other participants may include media platforms. The original feature data of the participants may include the corresponding user's advertising conversion data (i.e., whether an advertising conversion occurred for a specific user), and the original feature data of other participants may include the corresponding user's media platform behavior data (e.g., browsing data of the user on the media platform obtained with the user's consent). In some embodiments, the original feature data may be unencrypted raw data, while both the first feature data and the second feature data may be encrypted feature data. Thus, by using the method of this disclosure, it is possible to efficiently encrypt the advertising conversion data of users included in the advertiser and the media platform behavior data of users included in the media platform during the execution of the federated learning task, and effectively improve the security of the federated learning task.

[0036] This disclosure primarily uses a federated learning system with two participants as an example to illustrate the method of this disclosure, but it is not intended to limit the number of participants. It is understood that "other participants" may also include multiple participants.

[0037] The methods disclosed herein are applicable to federated learning tasks including preprocessing, feature engineering, training, and inference tasks, where preprocessing tasks may include, for example, verification of encryption / decryption patterns. It is understood that the methods disclosed herein can also be used for other federated learning tasks, and are not limited thereto.

[0038] According to some embodiments, the participating party and other participating parties may each have a Trusted Execute Environment (TEE) for generating an elliptic curve shared by multiple participating parties and for synchronizing operations on the elliptic curve (e.g., sampling points, which may also be referred to as "parameters" in this disclosure, such as the first and fourth parameters described below) among multiple participating parties, or in other words, enabling multiple participating parties to perform the same operation on the same elliptic curve. By using a Trusted Execute Environment, the protection of feature data can be enhanced, and data encryption (and segmentation) can be performed without the knowledge of users of each participating party regarding encryption (and feature data segmentation as described below). The Trusted Execute Environment may consist of specific hardware devices (e.g., registers) and / or software.

[0039] In some embodiments, secure intersection can be performed between the participant and other participants to determine the sample intersection between the two or more parties, thereby obtaining the original feature data of the participant for the federated learning task and the original feature data of other participants for the federated learning task.

[0040] According to some embodiments, such as Figure 2 As shown, the data processing method may further include: step S202, determining a segmentation method for splitting the original feature data, wherein the participant and other participants are configured to use the same segmentation method to segment their respective original feature data. It is understood that... Figure 2 The operations in steps S201 and S203-S206 are respectively and Figure 1 The operations of steps S101-S105 are similar and will not be described in detail here.

[0041] In some embodiments, the segmentation method of the original feature data can be determined using the trusted execution environments of the participating party and other participating parties. The trusted execution environment can store multiple preset segmentation methods, and when a federated learning task is initiated, the distribution process is executed on the participating party and other participating parties, enabling them to use the same segmentation method to segment their respective feature data. By segmenting the feature data, an additional layer of protection can be achieved for data encryption (encryption within the trusted execution environment), making federated learning more secure and improving the speed of random number distribution and computational efficiency. Furthermore, by having multiple participating parties process their data using the same elliptic curve and the same segmentation method, it can be ensured that each participating party can decrypt and obtain the required target data.

[0042] In some embodiments, such as Figure 3As shown, step S203, encrypting the first feature data of the participant using elliptic curves to obtain a ciphertext matrix, may include: step S301, segmenting the original feature data of the participant using a segmentation method to obtain first slice data and second slice data; and step S302, determining the first feature data based on the first slice data and the second slice data.

[0043] During segmentation, a discrete random signal can be added to the original feature data for obfuscation, converting one value into two values, i.e., two slices of data. The discrete random signal can be generated in the executable environment. In an exemplary embodiment, the original feature data to be segmented can first be converted to ASCII, and the data can be segmented into length-related information based on the number of bits in the original feature data. In an exemplary embodiment, each slice can be obtained by changing the position of the numbers in the feature data (and / or obfuscating them).

[0044] In some embodiments, the intermediate data is obtained by other participants processing the second feature data and the ciphertext matrix based on elliptic curves. The second feature data may be determined by other participants based on the third and fourth slice data. The third and fourth slice data are obtained by other participants segmenting their original feature data using a segmentation method. It is understood that the method of obtaining the third and fourth slice data is similar to the method of obtaining the first and second slice data described above, and will not be elaborated here.

[0045] According to some embodiments, step S302, determining the first feature data based on the first slice data and the second slice data, may include: determining the first feature data based on the intersection point of the first slice data and the second slice data on the elliptic curve. The second feature data may be determined by other participants based on the intersection point of the third slice data and the fourth slice data on the elliptic curve. Therefore, by utilizing the first slice data and the second slice data to determine the encrypted data on the elliptic curve, the elliptic curve and data segmentation can be organically combined, further enhancing the security of the federated learning task.

[0046] According to some embodiments, step S302, determining the first feature data based on the first slice data and the second slice data, may include: determining at least one of the first slice data, the second slice data, and the fused data of the first slice data and the second slice data as the first feature data based on an unintentional transmission protocol between the participating party and other participating parties. Other participating parties may also determine at least one of the third slice data, the fourth slice data, and the fused data of the third slice data and the fourth slice data as the fourth feature data using the same unintentional transmission protocol. It should be noted that the participating party and other participating parties using the unintentional transmission protocol will determine the first feature data and the second feature data in the above-mentioned items based on the same logic.

[0047] Therefore, by using the Oblivious Transfer (OT) protocol, the participants are unaware of which slice of data has been sent, thereby further enhancing the security of federated learning tasks.

[0048] In addition to the methods described above, other methods can also be used to generate first feature data for federated learning tasks based on the first slice data and the second slice data, which are not limited here.

[0049] Returning to step S201. According to some embodiments, step S201, determining the elliptic curve for encryption, may include: determining a first parameter on the elliptic curve, wherein the participant and other participants are configured to share the first parameter. Step S203, encrypting the participant's first feature data using the elliptic curve to obtain a ciphertext matrix, may include: step S303, determining a second parameter for the participant; and step S304, encrypting the first feature data based on the first and second parameters to obtain the ciphertext matrix.

[0050] In some embodiments, the intermediate data is obtained by other participants based on the first parameter, the second feature data, and the ciphertext matrix. Thus, by determining the first parameter shared by the participant and other participants on the elliptic curve, the public key of both (or more) parties is obtained.

[0051] According to some embodiments, the first feature data may include feature data corresponding to at least one sample. Step S304, encrypting the first feature data based on the first parameter and the second parameter to obtain a ciphertext matrix, may include: adding the product of the first parameter and the second parameter to the feature data of each of the at least one sample to obtain the ciphertext matrix. The feature data corresponding to at least one sample included in the first feature data may represent encrypted advertising conversion data of a user on the advertiser's side. The ciphertext matrix Y can be represented by the following formula:

[0052] Y = r * G + x1

[0053] Wherein, G is a first parameter shared by multiple participants for encryption, r is a second parameter used by that participant, and x1 is first feature data. In some embodiments, the second parameter is a random number used by the participant, for example, a random number with constraints.

[0054] According to some embodiments, the intermediate data may include first intermediate data and second intermediate data. The first intermediate data may be obtained based on a first parameter and a third parameter for other participants, and the second intermediate data may be obtained based on a ciphertext matrix, second feature data, and the third parameter. The first intermediate data represents the fusion result of multiple parameters used for encryption, and the second intermediate data represents the fusion result of merging encrypted user advertising conversion data of advertisers and encrypted user media platform behavior data of media platforms. Step S206, decrypting the intermediate data to obtain target data for the federated learning task may include obtaining target data based on the second parameter, the first intermediate data, and the second intermediate data. Thus, through the above method, intermediate data related to the first parameter shared by multiple participants, the third parameter used by other participants, the ciphertext matrix, and the second feature data of other participants can be generated by other participants, and then the participant can use the second parameter to decrypt and obtain the corresponding target data. This method has a small data transmission volume and high efficiency.

[0055] According to some embodiments, the first intermediate data can be obtained by multiplying the first parameter and the third parameter. The first intermediate data C1 can be represented by the following formula:

[0056] C1=t*G

[0057] Where G is the first parameter shared by multiple participants, and t is the third parameter used by other participants, i.e., the random number used by other participants.

[0058] According to some embodiments, the second intermediate data can be obtained by multiplying the result of subtracting a preset value from the second feature data, adding it to the ciphertext matrix, and then multiplying it by a third parameter. The second intermediate data C2 can be represented by the following formula:

[0059] C2=t(Y+(x2-m))

[0060] Where t is the second parameter used by other participants, Y is the aforementioned ciphertext matrix, x2 is the second feature data, and m is a preset value.

[0061] According to some embodiments, obtaining target data based on a second parameter, first intermediate data, and second intermediate data may include: subtracting the second intermediate data from the product of the second parameter and the first intermediate data to obtain the target data. The target data can be represented by the following formula:

[0062] C2–r*C1

[0063] Where r is the second parameter used by the participant, and C1 and C2 are the first and second intermediate data mentioned above, respectively.

[0064] According to some embodiments, the federated learning task may include a preprocessing task to verify whether the feature data of the participant (e.g., an advertiser) and the target participant (e.g., a media platform) are the same. The data processing method may further include: in response to determining that the target data meets a preset condition, determining that the first feature data and the second feature data are the same. In some embodiments, the preset condition may be that the value of the target data is equal to a preset value.

[0065] In some embodiments, according to the data segmentation rules, the sum of feature data obtained from the same original feature data using the same segmentation method equals 1, and the sum of feature data obtained from different original feature data using the same segmentation method equals 0. Therefore, the aforementioned preset value m can be set to 1. Since the target data calculated in the above manner is equivalent to the product of (x1+x2-1) and other numbers, the preset condition can be that the value of the target data is equal to 0. In some embodiments, parameter K can be generated by the participant and other participants, and K can be added to the above C2, that is, C2=t(Y+(x2-1))+K, then the preset condition can be that the value of the target data is equal to K.

[0066] In some embodiments, the federated learning task may further include a preprocessing task to verify the success and effectiveness of the encryption / decryption strategy, thereby performing basic vulnerability screening of the trusted execution environment. In such an embodiment, the participant may receive feature data from other participants in advance and use the received data as first feature data. That is, the first feature data and the second feature data are completely identical. Therefore, if the final target data meets the preset conditions, it can be concluded that the encryption / decryption process is correct and usable, and thus the next step of the federated learning task can proceed.

[0067] It is understandable that, in addition to the methods described above, other computational methods can be used to determine the ciphertext matrix, the first intermediate result, and the second intermediate result to suit different federated learning tasks, and no limitation is made here.

[0068] Returning to step S201. According to some embodiments, step S201, determining the elliptic curve for encryption, includes: determining a fourth parameter on the elliptic curve, wherein the participant and other participants are configured to share the fourth parameter, which characterizes the weights in the neural network to be trained. The first feature data may include feature data corresponding to at least one sample. Step S304, encrypting the first feature data based on the first parameter and the second parameter to obtain a ciphertext matrix, includes: adding the product of the first parameter and the second parameter to the product of the feature data and the corresponding fourth parameter of each of the at least one sample, respectively, to obtain the ciphertext matrix. This can be described using a formula:

[0069] Y = r*G + x1*H

[0070] Here, H represents the fourth parameter mentioned above. Therefore, by determining the fourth parameter used for multiplication with feature data on an elliptic curve, the security of federated learning can be further enhanced. Furthermore, this fourth parameter can be used to characterize the weights in the neural network, thus enabling the integration of elliptic curve cryptography with neural network training, which is beneficial for neural network interaction. Compared to other encryption methods, the above approach reduces the computational and data transmission volume during the execution of federated learning tasks, thereby improving the execution efficiency of federated learning tasks.

[0071] In some embodiments, the second intermediate data can be obtained based on the ciphertext matrix, the second feature data, the third parameter, and the fourth parameter. That is, other participants also need to use the fourth parameter to process the received ciphertext matrix and the second feature data of the other participants. In some embodiments, based on the formula representing C2 above, the term (x2-1) can be multiplied by H, that is:

[0072] C2=t(Y+(x2-1)H)

[0073] This results in the feature data of each participant being multiplied by H, which is consistent with the process of multiplying feature data by neural network weights during the training or inference of a neural network.

[0074] According to some embodiments, the data processing method may further include: adjusting the fourth parameter based on the target data, according to the change of the tangent on the elliptic curve. During the training of the neural network, the changes in the first parameter (point G) and feature weights (point H) on the elliptic curve can be consistent with the changes on the elliptic curve, that is, the same weight changes are performed according to the changes in the tangent on the elliptic curve, thereby tightly integrating elliptic curve encryption and neural network training. Compared to other encryption methods, the above method can reduce the computational and data transmission volume during the execution of federated learning tasks, and improve the execution efficiency of federated learning tasks.

[0075] According to some embodiments, the second parameter can characterize the bias in the neural network to be trained. Besides the fourth parameter, the second parameter can also be closely related to the training of the neural network. The above describes multiplying the feature data by the weights and then adding the result to the second parameter (the product of the first parameter), thus enabling the second parameter to characterize the bias in the neural network. During training, the change of the first parameter operates in a gradient chaining mode of the registers, thereby enabling the optimization of the bias. It is understood that the weights and biases in the aforementioned neural network can be parameters adjusted during the training process of the neural network (e.g., backpropagation optimization).

[0076] In some embodiments, advertisers and media platforms performing federated learning tasks can determine a shared elliptic curve for encryption and a shared segmentation method for dividing their respective raw feature data. Advertisers can use the determined segmentation method to segment their users' ad conversion data to obtain a first slice and a second slice, and then obtain first feature data based on the intersection of the first and second slices on the determined elliptic curve. Similarly, media platforms can use the determined segmentation method to segment their users' media platform behavior data to obtain a third slice and a fourth slice, and then obtain second feature data based on the intersection of the third and fourth slices on the elliptic curve. It is understood that the first feature data characterizes the encrypted ad conversion data of advertisers' users, and the second feature data characterizes the encrypted media platform behavior data of media platform users.

[0077] Furthermore, the first feature data can be encrypted using elliptic curves to obtain a ciphertext matrix. Specifically, a first parameter G shared by both parties can be determined on the elliptic curve, and a second parameter r used by the advertiser can be determined. The first parameter G can serve as a public key among the parties, and the second parameter r can be a random number used only by the advertiser. Then, the first feature data x1 can be encrypted based on the first parameter G and the second parameter r to obtain a ciphertext matrix. In an exemplary embodiment, the ciphertext matrix Y = r*G + x1.

[0078] The ciphertext matrix can be encrypted information related to the federated learning task on the advertiser's side, sent to the media platform. Upon receiving the ciphertext matrix, the media platform can encrypt and process the media platform user's media platform behavior data together to calculate intermediate data to be sent back to the advertiser. The media platform can determine a third parameter t, which can be a random number used only by the media platform. In an exemplary embodiment, the intermediate data includes two parts: first intermediate data and second intermediate data. The first intermediate data C1 can be expressed as C1 = t * G (i.e., the product of the first and third parameters), and the second intermediate data C2 can be expressed as C2 = t(Y + (x² - m)), where m is a preset value. In some embodiments, a specific segmentation rule indicates that the sum of the feature data obtained from the same original feature data using this segmentation method equals 1, and the sum of the feature data obtained from different original feature data using this segmentation method equals 0. Therefore, the preset value m can be set to 1. The intermediate data can be the sum of the first intermediate data C1 and the second intermediate data C2.

[0079] After receiving the first intermediate data C1 and the second intermediate data C2, the advertiser can obtain the target data by calculating C2 – r*C1. The target data can be specific data related to the federated learning task, such as the prediction result of whether to serve ads from the output of a neural network.

[0080] In some embodiments, advertisers and media platforms can jointly determine the fourth parameter H on the elliptic curve, then the ciphertext matrix can be represented as: Y = r*G + x1*H. Correspondingly, the second intermediate result can be represented as: C2 = t(Y + (x2-1)H). The fourth parameter H can characterize the weights of the neural network. By adjusting the fourth parameter according to the changes in the tangent on the elliptic curve, data segmentation, elliptic curve encryption, and neural network training can be coupled, strengthening the collaboration between the encryption and training parts in the federated learning task. Compared to other encryption methods, the above method can reduce the computational and data transmission volume during the execution of the federated learning task, improving the execution efficiency of the federated learning task.

[0081] In some embodiments, each item in the ciphertext matrix can be 16 bits. If the result of processing the feature data does not meet the 16-bit requirement, padding can be added accordingly. Figure 4As shown, step S204, sending the ciphertext matrix to other participants, may include: step S401, splitting the ciphertext matrix according to the digit product method to obtain four ciphertext split matrices, wherein each item in the ciphertext split matrix is ​​a 4-digit number; and step S402, sending the four ciphertext split matrices to other participants. In this way, data can be converted into a character structure with higher transmission efficiency, thereby reducing data transmission time. Other participants can combine the received four ciphertext split matrices to obtain the ciphertext matrix.

[0082] In one exemplary embodiment, the ciphertext can be split according to the number of digits. That is, the first ciphertext splitting matrix can retain the first 1-4 digits of each item in the ciphertext matrix, the second ciphertext splitting matrix can retain the fifth-8 digits of each item in the ciphertext matrix, and so on. When combining the ciphertext splitting matrices, the first ciphertext splitting matrix can be multiplied by 10 to the power of 12, the second ciphertext splitting matrix can be multiplied by 10 to the power of 8, the third ciphertext splitting matrix can be multiplied by 10 to the power of 4, and finally the fourth ciphertext splitting matrix can be added to obtain the final concatenated ciphertext matrix.

[0083] According to another aspect of this disclosure, a data processing method is provided, applied to any participant in a federated learning task, which is communicatively connected to other participants in the federated learning task. For example... Figure 5 As shown, the method may include: step S501, determining an elliptic curve for encryption, wherein the participant and other participants are configured to use the same elliptic curve; step S502, receiving a ciphertext matrix from other participants, wherein the ciphertext matrix is ​​obtained by encrypting the first feature data of other participants using the elliptic curve, the first feature data being obtained by processing the segmented original feature data of other participants using the elliptic curve; step S503, processing the second feature data of the participant and the ciphertext matrix based on the elliptic curve to obtain intermediate data, the second feature data being obtained by processing the segmented original feature data of the participant using the elliptic curve, the original feature data of the participant and the original feature data of other participants corresponding to at least one sample; and step S504, sending the intermediate data to other participants. It is understood that steps S501-S504 above are similar to... Figure 1 Steps S101-S104 are similar, except that the executing entity changes from the initiator of the federated learning task to a non-initiator, so they will not be described again here.

[0084] According to some embodiments, the data processing method may further include: determining a segmentation method for dividing the original feature data, wherein the participant and other participants are configured to segment their respective original feature data using the same segmentation method; segmenting the participant's original feature data using the segmentation method to obtain third slice data and fourth slice data; and determining second feature data based on the third slice data and fourth slice data. The first feature data may be determined by other participants based on the first slice data and the second slice data. The first slice data and the second slice data may be obtained by other participants segmenting the other participants' original feature data using the segmentation method.

[0085] According to some embodiments, determining the second feature data based on the third and fourth slice data may include determining the second feature data based on the intersection of the third and fourth slice data on the elliptic curve. The first feature data may be determined by other parties based on the intersection of the first and second slice data on the elliptic curve.

[0086] According to some embodiments, step S501, determining the elliptic curve for encryption, may include: determining a first parameter on the elliptic curve, wherein the participant and other participants are configured to use the same first parameter. The ciphertext matrix may be obtained by encrypting the first feature data based on the first participant and the second parameter for the other participants. Processing the second feature data of the participant and the ciphertext matrix based on the elliptic curve to obtain intermediate data may include: obtaining intermediate data based on the first parameter, the second feature data, and the ciphertext matrix.

[0087] According to some embodiments, the intermediate data may include first intermediate data and second intermediate data. Processing the second feature data and ciphertext matrix of the participant based on elliptic curves to obtain the intermediate data includes: obtaining first intermediate data based on a first parameter and a third parameter for other participants; and obtaining second intermediate data based on the ciphertext matrix, the second feature data, and the third parameter.

[0088] According to some embodiments, step S501, determining the elliptic curve for encryption, may include: determining a fourth parameter on the elliptic curve, wherein the participant and other participants are configured to use the same fourth parameter, and the fourth parameter characterizes the weights in the neural network to be trained. The first feature data may include feature data corresponding to at least one sample. The ciphertext matrix may be obtained by adding the product of the first parameter and the second parameter to the product of the feature data and the corresponding fourth parameter of each of the at least one sample, respectively. Obtaining the second intermediate data based on the ciphertext matrix, the second feature data, and the third parameter may include: obtaining the second intermediate data based on the ciphertext matrix, the second feature data, the third parameter, and the fourth parameter.

[0089] According to another aspect of this disclosure, a data processing apparatus is provided for use by any participant in a federated learning task, which is communicatively connected to other participants in the federated learning task. For example... Figure 6 As shown, the apparatus 600 includes: a first determining unit 610 configured to determine an elliptic curve for encryption, wherein the participant and other participants are configured to use the same elliptic curve; an encryption unit 620 configured to encrypt the participant's first feature data using the elliptic curve to obtain a ciphertext matrix, wherein the first feature data is obtained by processing the participant's segmented original feature data using the elliptic curve; a first sending unit 630 configured to send the ciphertext matrix to other participants; a first receiving unit 640 configured to receive intermediate data from other participants, wherein the intermediate data is obtained by processing other participants' second feature data and the ciphertext matrix based on the elliptic curve, wherein the second feature data is obtained by processing other participants' segmented original feature data using the elliptic curve, and the participant's original feature data corresponds to at least one sample as other participants' original feature data; and a decryption unit 650 configured to decrypt the intermediate data to obtain target data for a federated learning task. It is understood that the operations of units 610-650 in the apparatus 600 are similar to... Figure 1 The operations of steps S101-S105 are similar and will not be described in detail here.

[0090] According to another aspect of this disclosure, a data processing apparatus is provided for use by any participant in a federated learning task, which is communicatively connected to other participants in the federated learning task. For example... Figure 7 As shown, the apparatus 700 includes: a second determining unit 710 configured to determine an elliptic curve for encryption, wherein the participant and other participants are configured to use the same elliptic curve; a second receiving unit 720 configured to receive a ciphertext matrix from other participants, wherein the ciphertext matrix is ​​obtained by encrypting the first feature data of other participants using the elliptic curve, the first feature data being obtained by processing the segmented original feature data of other participants using the elliptic curve; a processing unit 730 configured to process the second feature data of the participant and the ciphertext matrix based on the elliptic curve to obtain intermediate data, the second feature data being obtained by processing the segmented original feature data of the participant using the elliptic curve, the original feature data of the participant and the original feature data of other participants corresponding to at least one sample; and a second sending unit 740 configured to send the intermediate data to other participants. It is understood that the operations of units 710-740 in the apparatus 700 are similar to... Figure 1 The operations of steps S501-S504 are similar and will not be described in detail here.

[0091] According to another aspect of this disclosure, a federated learning system is provided, including the aforementioned apparatus 600 and apparatus 700.

[0092] According to another aspect of this disclosure, an electronic device is also provided, comprising: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to enable the at least one processor to perform the data processing method described above.

[0093] According to another aspect of this disclosure, a non-transitory computer-readable storage medium storing computer instructions is also provided, wherein the computer instructions are used to cause a computer to perform the data processing method described above.

[0094] According to another aspect of this disclosure, a computer program product is also provided, including a computer program, wherein the computer program, when executed by a processor, implements the above-described data processing method.

[0095] See Figure 6 The following description serves as a structural block diagram of the electronic device 800 disclosed herein, which is an example of a hardware device applicable to various aspects of this disclosure. The electronic device can be different types of computer devices, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital processors, cellular phones, smartphones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the disclosure described and / or claimed herein.

[0096] Figure 8 A block diagram of an electronic device according to an embodiment of the present disclosure is shown. Figure 8 As shown, the electronic device 800 may include at least one processor 801, working memory 802, I / O device 804, display device 805, storage device 806 and communication interface 807 that are capable of communicating with each other via system bus 803.

[0097] Processor 801 may be a single processing unit or multiple processing units, and all processing units may include single or multiple computing units or multiple cores. Processor 801 may be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuits, and / or any device that manipulates signals based on operating instructions. Processor 801 may be configured to acquire and execute computer-readable instructions stored in working memory 802, storage device 806, or other computer-readable media, such as program code of operating system 802a, program code of application program 802b, etc.

[0098] Working memory 802 and storage device 806 are examples of computer-readable storage media for storing instructions that are executed by processor 801 to perform the various functions described above. Working memory 802 may include both volatile and non-volatile memory (e.g., RAM, ROM, etc.). Furthermore, storage device 806 may include hard disk drives, solid-state drives, removable media including external and removable drives, memory cards, flash memory, floppy disks, optical disks (e.g., CDs, DVDs), storage arrays, network-attached storage, storage area networks, etc. Working memory 802 and storage device 806 may be collectively referred to herein as memory or computer-readable storage media, and may be non-transitory media capable of storing computer-readable, processor-executable program instructions as computer program code that can be executed by processor 801 as a specific machine configured to perform the operations and functions described in the examples herein.

[0099] I / O device 804 may include input devices and / or output devices. Input devices may be any type of device capable of inputting information to electronic device 800, and may include, but are not limited to, a mouse, keyboard, touch screen, trackpad, trackball, joystick, microphone, and / or remote control. Output devices may be any type of device capable of presenting information, and may include, but are not limited to, video / audio output terminals, vibrators, and / or printers.

[0100] Communication interface 807 allows electronic device 800 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunication networks, and may include, but is not limited to, modems, network interface cards, infrared communication devices, wireless communication transceivers and / or chipsets, such as Bluetooth. TM Devices, 802.11 devices, WiFi devices, WiMax devices, cellular communication devices and / or the like.

[0101] The application program 802b in working register 802 can be loaded to execute the various methods and processes described above, for example... Figure 1Steps S101-S104 and Figure 5 Steps S501-S504 are described above. In some embodiments, part or all of the computer program may be loaded and / or installed on the electronic device 800 via storage device 806 and / or communication interface 807. When the computer program is loaded and executed by processor 801, one or more steps of the data processing method described above may be performed.

[0102] Various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-a-chip (SoCs), payload-programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transmitting data and instructions to the storage system, the at least one input device, and the at least one output device.

[0103] The program code used to implement the methods of this disclosure may be written in any combination of one or more programming languages. This program code may be provided to a processor or controller of a general-purpose computer, special-purpose computer, or other programmable data processing apparatus, such that when executed by the processor or controller, the program code causes the functions / operations specified in the flowcharts and / or block diagrams to be implemented. The program code may be executed entirely on a machine, partially on a machine, as a standalone software package partially on a machine and partially on a remote machine, or entirely on a remote machine or server.

[0104] In the context of this disclosure, a machine-readable medium can be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can be, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.

[0105] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device for displaying information to the user (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor); and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the computer. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).

[0106] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as a data server), or computing systems that include middleware components (e.g., an application server), or computing systems that include frontend components (e.g., a user computer with a graphical user interface or web browser through which a user can interact with embodiments of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or medium (e.g., a communication network). Examples of communication networks include local area networks (LANs), wide area networks (WANs), and the Internet.

[0107] A computing system may include clients and servers. Clients and servers are generally located far apart and typically interact through a communication network. The client-server relationship is created by computer programs running on the respective computers and having a client-server relationship with each other.

[0108] It should be understood that the various forms of processes shown above can be used to rearrange, add, or delete steps. For example, the steps described in this disclosure can be performed in parallel, sequentially, or in a different order, as long as the desired result of the technical solution disclosed in this disclosure can be achieved, and this is not limited herein.

[0109] While embodiments or examples of this disclosure have been described with reference to the accompanying drawings, it should be understood that the methods, systems, and devices described above are merely exemplary embodiments or examples, and the scope of the invention is not limited by these embodiments or examples, but only by the granted claims and their equivalents. Various elements in the embodiments or examples may be omitted or replaced by their equivalents. Furthermore, the steps may be performed in a different order than that described in this disclosure. Further, various elements in the embodiments or examples may be combined in various ways. Importantly, as the technology evolves, many elements described herein can be replaced by equivalents that appear after this disclosure.

Claims

1. A data processing method applied to any participant in a federated learning task, the participant being communicatively connected to other participants in the federated learning task, the method comprising: An elliptic curve is determined for encryption, wherein the participant and the other participants are configured to share the elliptic curve; Determine the segmentation method for segmenting the original feature data, wherein the participant and the other participants are configured to segment their respective original feature data using the same segmentation method; The first feature data of the participant is encrypted using the elliptic curve to obtain a ciphertext matrix, wherein the first feature data is obtained by processing the original feature data of the participant after segmentation using the elliptic curve. The ciphertext matrix is ​​sent to the other participants; Intermediate data is received from the other participants, wherein the intermediate data is obtained by the other participants processing their second feature data and the ciphertext matrix based on the elliptic curve. The second feature data is obtained by processing the other participants' segmented original feature data using the elliptic curve, and the original feature data of the other participants and the original feature data of the other participants correspond to at least one sample of the same type. The intermediate data is decrypted to obtain the target data for the federated learning task.

2. The method according to claim 1, wherein, The elliptic curves used for encryption include: A first parameter is determined on the elliptic curve, wherein the participating party and the other participating parties are configured to share the first parameter. The first feature data of the participant is encrypted using the elliptic curve to obtain a ciphertext matrix, which includes: Determine the second parameter for this participant; and The first feature data is encrypted based on the first parameter and the second parameter to obtain a ciphertext matrix. The intermediate data is obtained by the other participants based on the first parameter, the second feature data, and the ciphertext matrix.

3. The method according to claim 2, wherein, The first feature data includes feature data corresponding to at least one sample. The first feature data is encrypted based on the first parameter and the second parameter to obtain a ciphertext matrix, including: The product of the first parameter and the second parameter is added to the feature data of each of the at least one sample to obtain the ciphertext matrix.

4. The method according to claim 2, wherein, The intermediate data includes first intermediate data and second intermediate data. The first intermediate data is obtained based on the first parameter and the third parameter used by the other participants. The second intermediate data is obtained based on the ciphertext matrix, the second feature data, and the third parameter. The process of decrypting the intermediate data to obtain the target data for the federated learning task includes: The target data is obtained based on the second parameter, the first intermediate data, and the second intermediate data.

5. The method according to claim 4, wherein, The first intermediate data is obtained by multiplying the first parameter and the third parameter.

6. The method according to claim 4, wherein, The second intermediate data is obtained by multiplying the result of subtracting a preset value from the second feature data, adding it to the ciphertext matrix, and then multiplying it by the third parameter.

7. The method according to claim 5, wherein, Based on the second parameter, the first intermediate data, and the second intermediate data, the target data is obtained as follows: The target data is obtained by subtracting the product of the second intermediate data and the second parameter and the first intermediate data.

8. The method according to claim 5, further comprising: In response to determining that the target data meets a preset condition, it is determined that the first feature data and the second feature data are the same.

9. The method according to claim 5, wherein, The elliptic curves used for encryption include: A fourth parameter is determined on the elliptic curve, wherein the participant and the other participants are configured to share the fourth parameter, which characterizes the weights in the neural network to be trained. The first feature data includes feature data corresponding to at least one sample. The first feature data is encrypted based on the first parameter and the second parameter to obtain a ciphertext matrix, which includes: The product of the first parameter and the second parameter is added to the product of the feature data and the corresponding fourth parameter of each of the at least one sample to obtain the ciphertext matrix. The second intermediate data is obtained based on the ciphertext matrix, the second feature data, the third parameter, and the fourth parameter.

10. The method of claim 9, further comprising: Based on the target data, the fourth parameter is adjusted according to the change of the tangent on the elliptic curve.

11. The method according to claim 9, wherein, The second parameter characterizes the bias in the neural network to be trained.

12. The method according to claim 1, wherein, The first feature data of the participant is encrypted using the elliptic curve to obtain a ciphertext matrix including: The original feature data of the participant is segmented using the aforementioned segmentation method to obtain first slice data and second slice data; and Based on the first slice data and the second slice data, the first feature data is determined. The second feature data is determined by the other participants based on the third slice data and the fourth slice data, which are obtained by the other participants using the segmentation method to segment their original feature data.

13. The method according to claim 12, wherein, Based on the first slice data and the second slice data, the first feature data is determined to include: Based on the intersection of the first slice data and the second slice data on the elliptic curve, the first feature data is determined. The second feature data is determined by the other participants based on the intersection of the third slice data and the fourth slice data on the elliptic curve.

14. The method according to claim 1, wherein, Each item in the ciphertext matrix is ​​16 bits, and sending the ciphertext matrix to the other participants includes: The ciphertext matrix is ​​split according to the digit product method to obtain four first ciphertext split matrices, wherein each item in the first ciphertext split matrix is ​​a 4-digit number; and The four first ciphertext splitting matrices are sent to the other participants.

15. The method according to claim 12, wherein, Both the elliptic curve and the segmentation method are determined by the trusted execution environments of the participating party and the other participating parties.

16. The method according to claim 1, wherein, The participants include advertisers, and the other participants include media platforms. The original feature data of the participants includes the advertising conversion data of the corresponding users, and the original feature data of the other participants includes the media platform behavior data of the corresponding users.

17. A data processing method applied to any participant in a federated learning task, the participant being communicatively connected to other participants in the federated learning task, the method comprising: An elliptic curve is determined for encryption, wherein the participant and the other participants are configured to share the elliptic curve; Determine the segmentation method for segmenting the original feature data, wherein the participant and the other participants are configured to segment their respective original feature data using the same segmentation method; The ciphertext matrix is ​​received from the other participants, wherein the ciphertext matrix is ​​obtained by the other participants encrypting their first feature data using the elliptic curve, and the first feature data is obtained by the other participants processing their original segmented feature data using the elliptic curve. Based on the elliptic curve, the second feature data of the participant and the ciphertext matrix are processed to obtain intermediate data. The second feature data is obtained by processing the segmented original feature data of the participant using the elliptic curve. The original feature data of this participant and the original feature data of the other participants correspond to at least one sample of the same type. The intermediate data is sent to the other participants.

18. The method according to claim 17, wherein, The elliptic curves used for encryption include: A first parameter is determined on the elliptic curve, wherein the participating party and the other participating parties are configured to use the same first parameter. The ciphertext matrix is ​​obtained by encrypting the first feature data based on the first parameter and the second parameter used by the other participants. Specifically, the intermediate data obtained by processing the second feature data of the participant and the ciphertext matrix based on the elliptic curve includes: The intermediate data is obtained based on the first parameter, the second feature data, and the ciphertext matrix.

19. The method of claim 18, wherein, The intermediate data includes first intermediate data and second intermediate data. Based on the elliptic curve, the second feature data of the participant and the ciphertext matrix are processed to obtain the intermediate data, which includes: Based on the first parameter and the third parameter for the other participants, the first intermediate data is obtained; and The second intermediate data is obtained based on the ciphertext matrix, the second feature data, and the third parameter.

20. The method according to claim 19, wherein, The elliptic curves used for encryption include: A fourth parameter is determined on the elliptic curve, wherein the participant and the other participants are configured to use the same fourth parameter, and the fourth parameter characterizes the weights in the neural network to be trained. The first feature data includes feature data corresponding to at least one sample. The ciphertext matrix is ​​obtained by adding the product of the first parameter and the second parameter to the product of the feature data and the corresponding fourth parameter of each of the at least one sample. The second intermediate data, obtained based on the ciphertext matrix, the second feature data, and the third parameter, includes: The second intermediate data is obtained based on the ciphertext matrix, the second feature data, the third parameter, and the fourth parameter.

21. The method of claim 17, further comprising: The original feature data of the participant is segmented using the aforementioned segmentation method to obtain third and fourth slice data. as well as Based on the third slice data and the fourth slice data, the second feature data is determined. Wherein, the first feature data is determined by the other participants based on the first slice data and the second slice data, and the first slice data and the second slice data are obtained by the other participants using the segmentation method to segment the original feature data of the other participants.

22. The method according to claim 21, wherein, Based on the third slice data and the fourth slice data, the second feature data is determined to include: Based on the intersection of the third slice data and the fourth slice data on the elliptic curve, the second feature data is determined. The first feature data is determined by the other participants based on the intersection of the first slice data and the second slice data on the elliptic curve.

23. A data processing apparatus applied to any participant in a federated learning task, the participant being communicatively connected to other participants in the federated learning task, the apparatus comprising: The first determining unit is configured to determine an elliptic curve for encryption, wherein the participating party and the other participating parties are configured to share the elliptic curve; The segmentation method determination unit is configured to determine the segmentation method for segmenting the original feature data, wherein the participant and the other participants are configured to segment their respective original feature data using the same segmentation method; The encryption unit is configured to encrypt the first feature data of the participant using the elliptic curve to obtain a ciphertext matrix, wherein the first feature data is obtained by processing the original feature data of the participant after segmentation using the elliptic curve. The first sending unit is configured to send the ciphertext matrix to the other participants; A first receiving unit is configured to receive intermediate data from the other participants, wherein the intermediate data is obtained by the other participants processing their second feature data and the ciphertext matrix based on the elliptic curve. The second feature data is obtained by processing the other participants' segmented original feature data using the elliptic curve, and the original feature data of the first participant and the original feature data of the other participants correspond to at least one sample of the same type. The decryption unit is configured to decrypt the intermediate data to obtain target data for the federated learning task.

24. A data processing apparatus applied to any participant in a federated learning task, the participant being communicatively connected to other participants in the federated learning task, the apparatus comprising: The second determining unit is configured to determine the elliptic curve for encryption, wherein the participating party and the other participating parties are configured to share the elliptic curve; The segmentation method determination unit is configured to determine the segmentation method for segmenting the original feature data, wherein the participant and the other participants are configured to use the same segmentation method to segment their respective original feature data; The second receiving unit is configured to receive a ciphertext matrix from the other participants, wherein the ciphertext matrix is ​​obtained by the other participants encrypting their first feature data using the elliptic curve, and the first feature data is obtained by the other participants processing their segmented original feature data using the elliptic curve. The processing unit is configured to process the second feature data of the participant and the ciphertext matrix based on the elliptic curve to obtain intermediate data. The second feature data is obtained by processing the segmented original feature data of the participant using the elliptic curve. The original feature data of the participant and the original feature data of the other participants correspond to at least one sample of the same type. The second sending unit is configured to send the intermediate data to the other participants.

25. A federated learning system, comprising: The apparatus according to claim 23; as well as The apparatus according to claim 24.

26. An electronic device, comprising: At least one processor; as well as A memory that is communicatively connected to the at least one processor; in The memory stores instructions that can be executed by the at least one processor to enable the at least one processor to perform the method of any one of claims 1-22.

27. A non-transitory computer-readable storage medium storing computer instructions, wherein, The computer instructions are used to cause the computer to perform the method according to any one of claims 1-22.

28. A computer program product comprising a computer program, wherein, When the computer program is executed by a processor, it implements the method of any one of claims 1-22.

Citation Information

Patent Citations

  • Information processing method and device, electronic equipment and storage medium

    CN115883212A

  • Cooperative data access request authorization in a dispersed storage network

    US20140351891A1