Data processing method and device, equipment and medium

Through the combination of elliptic curve encryption algorithm and data segmentation, the problems of high cryptographic computing resources and insufficient security in federated learning are solved, efficient and secure data transmission is achieved, and the efficiency and security of federated learning tasks are improved.

CN119232380AActive Publication Date: 2024-12-31SHENGDOUSHI SHANGHAI SCI & TECH DEV CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

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

AI Technical Summary

Technical Problem

In federated learning tasks, existing encryption computing methods occupy more computing resources or require a long computing time, resulting in large data transmission, low efficiency, and insufficient security.

Method used

The elliptic curve encryption algorithm is used to encrypt the feature data, and combined with the data segmentation, the feature data segmented is processed through the elliptic curve to achieve efficient encryption and secure transmission.

Benefits of technology

It reduces the amount of data transmission between participants, improves the efficiency and security of federated learning tasks, reduces the use of computing resources and time, and improves the efficiency and security of data transmission.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119232380A_ABST
    Figure CN119232380A_ABST
Patent Text Reader

Abstract

The invention provides a data processing method and device, equipment and a medium, and relates to the technical field of artificial intelligence. The method comprises the following steps: determining an elliptic curve for encryption, wherein the participant and other participants share the elliptic curve; encrypting first feature data of the participant by using an elliptic curve to obtain a ciphertext matrix, the first feature data being obtained by processing segmented original feature data of the participant by using the elliptic curve; sending the ciphertext matrix to other participants; receiving intermediate data from other participants, the intermediate data being obtained by processing second feature data and the ciphertext matrix of other participants by other participants based on an elliptic curve, and the second feature data being obtained by processing segmented original feature data of other participants by using the elliptic curve, the original feature data of the participant and the original feature data of other participants correspond to at least one same 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] The present disclosure relates to the field of artificial intelligence technology, specifically to the field of machine learning, deep learning, and federated learning technology, and in particular to a data processing method, a data processing device, a federated learning system, an electronic device, a computer-readable storage medium, and a computer program product. Background Art

[0002] In the federated learning task scenario, advertisers include users' advertising conversion data, and media platforms include users' media platform behavior data. Advertisers and media platforms need to use their own data to complete neural network modeling without leaking their own data to each other, and this process requires both parties to perform frequent encryption and decryption operations. With the development of Internet technology and big data technology, the importance of data security has become increasingly prominent. Therefore, in the process of data transmission, calculation, and storage, data needs to be encrypted to ensure that the data will not be obtained by others, thereby ensuring data security.

[0003] Encryption calculations usually involve complex mathematical operations, so encryption calculations usually require more computing resources or require a long computing time. At present, it is hoped that the existing data processing methods can be improved to reduce the computing resources occupied or reduce the computing time used.

[0004] The methods described in this section are not necessarily methods that have been previously conceived or employed. Unless otherwise indicated, it should not be assumed that any method described in this section is considered to be prior art simply because it is included in this section. Similarly, unless otherwise indicated, the issues mentioned in this section should not be considered to have been recognized in any prior art. Summary of the invention

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

[0006] According to one aspect of the present disclosure, a data processing method is provided, which is applied to any participant in a federated learning task, and the participant is 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 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; sending the ciphertext matrix to other participants; receiving intermediate data from other participants, wherein the intermediate data is obtained by other participants processing the second feature data and the ciphertext matrix of other participants based on the elliptic curve, the second feature data is obtained by processing the original feature data of other participants after segmentation using the elliptic curve, and the original feature data of the participant and the original feature data of other participants correspond to the same at least one sample; and decrypting the intermediate data to obtain the target data for the federated learning task.

[0007] According to another aspect of the present disclosure, a data processing method is provided, which is applied to any participant in a federated learning task, and the participant is 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 other participants, wherein the ciphertext matrix is ​​obtained by the other participants encrypting the first feature data of the other participants using the elliptic curve, and the first feature data is obtained by the other participants processing the original feature data of the other participants after segmentation using the elliptic curve; 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 is obtained by processing the original feature data of the participant after segmentation using the elliptic curve, and the original feature data of the participant and the original feature data of the other participants correspond to the same at least one sample; and sending the intermediate data to other participants.

[0008] According to another aspect of the present disclosure, a data processing device is provided, which is applied to any participant in a federated learning task, and the participant is connected to other participants in the federated learning task. The device includes: a first determination 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 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; a first sending unit, configured to send the ciphertext matrix to other participants; a first receiving unit, configured to receive intermediate data from other participants, wherein the intermediate data is obtained by other participants processing the second feature data and the ciphertext matrix of other participants based on the elliptic curve, the second feature data is obtained by processing the original feature data of other participants after segmentation using the elliptic curve, and the original feature data of the participant and the original feature data of other participants correspond to the same 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 the present disclosure, a data processing device is provided, which is applied to any participant in a federated learning task, and the participant is connected to other participants in the federated learning task. The device includes: a second determination 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 other participants, wherein the ciphertext matrix is ​​obtained by encrypting the first feature data of other participants using the elliptic curve by other participants, and the first feature data is obtained by processing the original feature data of other participants after segmentation by other participants using the elliptic curve; a processing unit, configured to process the second feature data and the ciphertext matrix of the participant based on the elliptic curve to obtain intermediate data, the second feature data is obtained by processing the original feature data of the participant after segmentation using the elliptic curve, and the original feature data of the participant and the original feature data of other participants correspond to the same at least one sample; and a second sending unit, configured to send the intermediate data to other participants.

[0010] According to another aspect of the present disclosure, a federated learning system is provided, comprising the above-mentioned data processing device having an encryption unit and a decryption unit and the above-mentioned data processing device having a processing unit.

[0011] According to another aspect of the present 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, and the instructions are executed by the at least one processor so that the at least one processor can execute a data processing method as disclosed in the present disclosure.

[0012] According to another aspect of the present disclosure, a non-transitory computer-readable storage medium storing computer instructions is provided, wherein the computer instructions are used to enable a computer to execute the data processing method of the present disclosure.

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

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

[0015] It should be understood that the content described in this section is not intended to identify the key or important features of the embodiments of the present disclosure, nor is it intended to limit the scope of the present disclosure. Other features of the present disclosure will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS

[0016] The accompanying drawings exemplarily illustrate the embodiments and constitute a part of the specification, and together with the text description of the specification, are used to explain the exemplary implementation of the embodiments. The embodiments shown are for illustrative purposes only and do not limit the scope of the claims. In all drawings, the same reference numerals refer to similar but not necessarily identical elements.

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

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

[0019] Figure 3 A flow chart of encrypting the first characteristic data of the participant by using an elliptic curve to obtain a ciphertext matrix according to an exemplary embodiment of the present disclosure is shown;

[0020] Figure 4 A flow chart of sending a ciphertext matrix to other participants according to an exemplary embodiment of the present disclosure is shown;

[0021] Figure 5 A flow chart showing 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 device according to an exemplary embodiment of the present disclosure is shown;

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

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

[0025] The following is a description of exemplary embodiments of the present disclosure in conjunction with the accompanying drawings, including various details of the embodiments of the present disclosure to facilitate understanding, which should be considered as merely exemplary. Therefore, it should be recognized by those of ordinary skill in the art that various changes and modifications may be made to the embodiments described herein without departing from the scope of the present disclosure. Similarly, for the sake of clarity and conciseness, the description of well-known functions and structures is omitted in the following description.

[0026] In the present disclosure, unless otherwise specified, the use of the terms "first", "second", etc. to describe various elements is not intended to limit the positional relationship, timing relationship, or importance relationship of these elements, and such terms are only used to distinguish one element from another element. In some examples, the first element and the second element may refer to the same instance of the element, and in some cases, based on the description of the context, they may also refer to different instances.

[0027] The terms used in the description of various examples in this disclosure are only for the purpose of describing specific examples and are not intended to be limiting. Unless the context clearly indicates otherwise, if the number of elements is not specifically limited, the element can be one or more. In addition, the term "and / or" used in this disclosure covers any one of the listed items and all possible combinations.

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

[0029] In the related technology, the existing federated learning tasks usually use the Advanced Encryption Standard (AES) encryption algorithm or the Secure Multi-Party Computation (MPC) protocol for encryption and multi-party communication. However, this method has a large amount of data transmission and low efficiency.

[0030] To solve the above problems, the present disclosure uses elliptic curves to achieve efficient encryption of feature data of each participant in the federated learning task, and can reduce the amount of data transmission between the participants, thereby improving the efficiency of each participant in processing the federated learning task. By combining data segmentation and elliptic curve encryption, the security of the federated learning process can be further improved.

[0031] Figure 1 A flow chart of a data processing method according to an exemplary embodiment of the present disclosure is shown. The method is applied to any participant in a federated learning task, which is in communication connection with other participants in the federated learning 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 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; step S103, sending the ciphertext matrix to other participants; step S104, receiving intermediate data from other participants, wherein the intermediate data is obtained after the other participants process the original feature data and the ciphertext matrix of the other participants based on the elliptic curve, and the original first feature data of the participant and the original feature data of the other participants correspond to the same 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 the mathematical theory of elliptic curves. Compared with other asymmetric encryption algorithms, elliptic curve cryptography can use shorter keys to achieve the same or higher security level as other algorithms. Based on this characteristic of elliptic curve cryptography, the number of bits obtained after encrypting the characteristic data of the participants in the federated learning task is relatively small, so bit expansion, fusion and other processing can be performed. In addition, compared with methods such as AES, the use of elliptic curve cryptography is efficient and there is no problem of information loss (for example, interactive information, digital information).

[0033] Therefore, by using elliptic curves, it is possible to achieve efficient encryption of the characteristic data of each participant in the federated learning task, and reduce the amount of data transmission between the participants, thereby improving the efficiency of each participant in processing the federated learning task. By combining data segmentation and elliptic curve encryption, the security of the federated learning process can be further improved.

[0034] It should be noted that in Figure 1 In the corresponding embodiment, "the participant" may refer to the initiator of the federated learning task, and "other participants" may refer to non-initiators. In an exemplary embodiment, the federated learning task has two participants, where "the participant" is the GUEST party and "other participants" is the HOST party.

[0035] According to some embodiments, the participant may include an advertiser, and other participants may include a media platform. The original feature data of the participant may include the advertising conversion data of the corresponding user (i.e., whether an advertising conversion has been generated for a specific user), and the original feature data of other participants may include the media platform behavior data of the corresponding user (e.g., in response to the browsing data of the user on the media platform obtained with the user's consent, etc.). In some embodiments, the original feature data may be unencrypted original data, and the first feature data and the second feature data may both be encrypted feature data. Thus, by using the method disclosed in the present invention, it is possible to achieve efficient encryption of the advertising conversion data of the users included in the advertiser and the media platform behavior data of the users included in the media platform during the execution of the federated learning task, and the security of the federated learning task can be effectively improved.

[0036] The present disclosure mainly uses a federated learning system with two participants as an example to illustrate the method of the present disclosure, but does not intend to limit the number of participants. It is understandable that "other participants" may also include multiple participants.

[0037] The federated learning tasks to which the method of the present disclosure is applicable include preprocessing tasks, feature engineering tasks, training tasks, and reasoning tasks, wherein the preprocessing tasks may include, for example, verification of encryption / decryption modes. It is understandable that the method of the present disclosure may also be used for other federated learning tasks, which are not limited here.

[0038] According to some embodiments, the participant and other participants may each have a trusted execution environment (TEE) for generating an elliptic curve used by multiple participants, and can synchronize operations on the elliptic curve between multiple participants (such as sampling points, which may also be referred to as "parameters" in the present disclosure, such as the first parameter and the fourth parameter to be described below), or in other words, can enable multiple participants to perform the same operation on the same elliptic curve. By using a trusted execution environment, the protection of feature data can be improved, and encryption (and segmentation) of data can be completed without the users of each participant knowing information related to encryption (and feature data segmentation to be described below). The trusted execution environment can be composed of specific hardware devices (for example, registers) and / or software.

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

[0040] According to some embodiments, Figure 2 As shown, the data processing method may further include: step S202, determining a 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. It is understandable that Figure 2 The operations of step S201, step S203-step S206 in Figure 1 The operations of step S101 to step S105 are similar and will not be described in detail here.

[0041] In some embodiments, the trusted execution environment of the participant and other participants can be used to determine the segmentation method of the original feature data. A variety of preset segmentation methods can be stored in the trusted execution environment, and the distribution process is executed on the participant and other participants when the federated learning task is initiated, so that the participant and other participants can use the same segmentation method to segment their respective feature data. By segmenting the feature data, a further layer of protection for data encryption (encryption in a trusted execution environment) can be achieved, making federated learning more secure, and the speed of random number distribution can be increased, and computing efficiency can be improved. By allowing multiple participants to use the same elliptic curve and the same segmentation method to process their respective data, it can be ensured that the participant can decrypt and obtain the required target data.

[0042] In some embodiments, Figure 3As shown, step S203, using an elliptic curve to encrypt the first characteristic data of the participant to obtain a ciphertext matrix may include: step S301, using a segmentation method to segment the original characteristic data of the participant to obtain first slice data and second slice data; and step S302, determining the first characteristic data based on the first slice data and the second slice data.

[0043] When segmenting, a discrete random signal can be added to the original feature data for confusion, and a numerical value can be converted into two numerical values, i.e., two slice data. The discrete random signal can be generated in an executable environment. In an exemplary embodiment, the original feature data to be segmented can be first converted to ASCII, and the data can be segmented into information related to the length according to the number of bits of 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 performing confusion).

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

[0045] According to some embodiments, step S302, based on the first slice data and the second slice data, determining the first feature data may include: determining the first feature data based on the intersection 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 of the third slice data and the fourth slice data on the elliptic curve. Thus, by using 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 to further improve the security of the federated learning task.

[0046] According to some embodiments, step S302, based on the first slice data and the second slice data, determining the first feature data may include: based on an oblivious transfer protocol between the participant and other participants, determining at least one of the first slice data, the second slice data, and the fusion data of the first slice data and the second slice data as the first feature data. Other participants may also determine at least one of the third slice data, the fourth slice data, and the fusion data of the third slice data and the fourth slice data as the fourth feature data through the oblivious transfer protocol. It should be noted that the participant and other participants using the oblivious transfer protocol will determine the first feature data and the second feature data in the above items based on the same logic.

[0047] Therefore, by using the Oblivious Transfer (OT) protocol, the participants do not know which slice data is sent, which can further improve the security of the federated learning task.

[0048] In addition to the above method, the first feature data for the federated learning task may be generated based on the first slice data and the second slice data in other ways, which are not limited here.

[0049] Return to step S201. According to some embodiments, step S201, determining an 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 first characteristic data of the participant 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 characteristic data based on the first parameter and the second parameter to obtain a ciphertext matrix.

[0050] In some embodiments, the intermediate data is obtained by other participants based on the first parameter, the second characteristic data and the ciphertext matrix. Thus, by determining the first parameter shared by the participant and other participants on the elliptic curve, the public keys of both parties (or multiple parties) are 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 sample in the at least one sample to obtain the ciphertext matrix. The feature data corresponding to the at least one sample included in the first feature data may be characterized as encrypted advertising conversion data of a user on the advertiser side. The ciphertext matrix Y may be represented by the following formula:

[0052] Y=r*G+x1

[0053] Wherein, G is a first parameter for encryption shared by multiple participants, r is a second parameter for the participant, and x1 is the first characteristic 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 the first parameter and the third parameter for other participants, and the second intermediate data may be obtained based on the ciphertext matrix, the second characteristic 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 result of fusion of the encrypted user's advertising conversion data of the advertiser and the encrypted user's media platform behavior data of the media platform. Step S206, decrypting the intermediate data to obtain the target data for the federated learning task may include: obtaining the 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 for other participants, the ciphertext matrix, and the second characteristic data of other participants can be generated in other participants, and then the second parameter can be used to decrypt the participant to obtain the corresponding target data. This method has a small amount of data transmission and high efficiency.

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

[0056] C1=t*G

[0057] Among them, G is the first parameter shared by multiple participants, and t is the third parameter used for other participants, that is, the random number used by other participants.

[0058] According to some embodiments, the second intermediate data may be obtained by multiplying the result of adding the second feature data minus the preset value to the ciphertext matrix by the third parameter. The second intermediate data C2 may be expressed by the following formula:

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

[0060] Among them, t is the second parameter used for other participants, Y is the above-mentioned ciphertext matrix, x2 is the second characteristic data, and m is a preset value.

[0061] According to some embodiments, obtaining the target data based on the second parameter, the first intermediate data, and the 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 may be expressed by the following formula:

[0062] C2–r*C1

[0063] Among them, r is the second parameter used for the participant, C1 and C2 are the above-mentioned first intermediate data and second intermediate data respectively.

[0064] According to some embodiments, the federated learning task may include a pre-processing task of verifying whether the feature data of the participant (e.g., advertiser) and the target participant (e.g., media platform) are the same. The data processing method may also include: in response to determining that the target data satisfies 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 feature data obtained by using the same segmentation method for the same original feature data is equal to 1 after addition, and the feature data obtained by using the same segmentation method for different original feature data is equal to 0 after addition. Therefore, the above 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, a parameter K can be generated for 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 also include a pre-processing task to verify whether the encryption / decryption strategy is successful and effective, so as to implement basic vulnerability troubleshooting for the trusted execution environment. In such an embodiment, the participant can receive feature data from other participants in advance and use the received data as the first feature data. In other words, the first feature data and the second feature data are completely consistent. Therefore, if the target data finally obtained meets the preset conditions, it can be said that the encryption / decryption process is correct and can be used, so the next step of the federated learning task can be continued.

[0067] It is understandable that in addition to the above method, the ciphertext matrix, the first intermediate result, and the second intermediate result can also be determined by other calculation methods to be suitable for different federated learning tasks, which is not limited here.

[0068] Return to step S201. According to some embodiments, step S201, determining an 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, and the fourth parameter represents the weight 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 of each sample in at least one sample and the corresponding fourth parameter, respectively, to obtain a ciphertext matrix. It can be described using the formula:

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

[0070] Wherein, H is the fourth parameter mentioned above. Therefore, by determining the fourth parameter used to multiply the feature data on the elliptic curve, the security of federated learning can be further improved. In addition, the fourth parameter can be used to characterize the weights in the neural network, so that the elliptic curve encryption method can be combined with the training of the neural network, which is beneficial to the interaction of the neural network. Compared with other encryption methods, the above method can reduce the amount of calculation and data transmission during the execution of the federated learning task, and improve the execution efficiency of the federated learning task.

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

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

[0073] As a result, the characteristic data of each participant is multiplied by H, which is consistent with the multiplication of characteristic data by neural network weights during the training or reasoning process of the neural network.

[0074] According to some embodiments, the data processing method may further include: adjusting the fourth parameter according to the change of the tangent on the elliptic curve based on the target data. During the training process of the neural network, the changes of the first parameter (point G) and the feature weight (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 of the tangent on the elliptic curve, thereby closely combining elliptic curve encryption and neural network training. Compared with other encryption methods, the above method can reduce the amount of calculation and data transmission 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. In addition to the fourth parameter, the second parameter can also be closely integrated with the training of the neural network. The above content describes that after multiplying the feature data with the weight, the second parameter (the product with the first parameter) is added, so the second parameter can be used to characterize the bias in the neural network. During the training process, the change process of the first parameter runs in the gradient chain mode of the register, so that the bias can be optimized. It can be understood that the weights and biases in the above-mentioned neural network can be parameters adjusted in the training process of the neural network (for example, back propagation optimization).

[0076] In some embodiments, advertisers and media platforms that need to perform federated learning tasks can determine a commonly used elliptic curve for encryption and a commonly used segmentation method for segmenting the original feature data of both parties. The advertiser side can use the determined segmentation method to segment the advertising conversion data of its users to obtain first slice data and second slice data, and then obtain first feature data based on the intersection of the first slice data and the second slice data on the determined elliptic curve. Similarly, the media platform side can use the determined segmentation method to segment the media platform behavior data of its users to obtain third slice data and fourth slice data, and then obtain second feature data based on the intersection of the third slice data and the fourth slice data on the elliptic curve. It can be understood that the first feature data can represent the encrypted advertising conversion data of the advertiser's users, and the second feature data can represent the encrypted media platform behavior data of the media platform's users.

[0077] Furthermore, the first feature data can be encrypted using an elliptic curve 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 for the advertiser can be determined. The first parameter G can be used as a public key between multiple parties, and the second parameter r can be a random number used only by the advertiser. Furthermore, 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 side for sending to the media platform. After receiving the ciphertext matrix, the media platform can encrypt the media platform behavior data of the users of the media platform and process it together to calculate the intermediate data for sending back to the advertiser. The media platform can determine the third parameter t used for the media platform, and the third parameter t can be a random number used only by the media platform. In an exemplary embodiment, the intermediate data includes two parts, the first intermediate data and the second intermediate data. The first intermediate data C1 can be expressed as C1=t*G (i.e., the product of the first parameter and the third parameter), and the second intermediate data C2 can be expressed as C2=t(Y+(x2-m)), where m is a preset value. In some embodiments, a specific segmentation rule indicates that the feature data obtained by using the segmentation method for the same original feature data is equal to 1 after addition, and the feature data obtained by using the segmentation method for different original feature data is equal to 0 after addition. Therefore, the above-mentioned 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 the neural network output on whether to place an advertisement.

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

[0081] According to some embodiments, each item in the ciphertext matrix may be a 16-digit number. If the result after processing the feature data does not satisfy the 16-digit number, padding may be performed 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. At other participants, the four received ciphertext split matrices can be combined to obtain a ciphertext matrix.

[0082] In an exemplary embodiment, the splitting can be performed based on digits. That is, the first ciphertext splitting matrix can retain the 1st to 4th digits of each item in the ciphertext matrix, the second ciphertext splitting matrix can retain the 5th to 8th digits of each item in the ciphertext matrix, and so on. When the ciphertext splitting matrices are combined, the first ciphertext splitting matrix can be multiplied by 10 to the 12th power, the second ciphertext splitting matrix can be multiplied by 10 to the 8th power, the third ciphertext splitting matrix can be multiplied by 10 to the 4th power, and finally the fourth ciphertext splitting matrix can be added to obtain the final concatenated ciphertext matrix.

[0083] According to another aspect of the present disclosure, a data processing method is provided, which is applied to any participant in a federated learning task, the participant being in communication connection with other participants in the federated learning task. Figure 5 As shown, the method may include: step S501, determining the elliptic curve used 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 other participants encrypting the first feature data of other participants using the elliptic curve, and the first feature data is obtained by other participants processing the original feature data of other participants after segmentation 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 is obtained by processing the original feature data of the participant after segmentation using the elliptic curve, and the original feature data of the participant and the original feature data of the other participants correspond to the same at least one sample; and step S504, sending the intermediate data to other participants. It can be understood that the above steps S501-S504 are the same as Figure 1 Steps S101 to S104 in are similar, except that the execution subject is changed from the initiator of the federated learning task to the non-initiator, so they will not be repeated here.

[0084] According to some embodiments, the data processing method may further include: determining a segmentation method for segmenting 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 original feature data of the participant 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 the 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 original feature data of other participants using the segmentation method.

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

[0086] According to some embodiments, step S501, determining an elliptic curve for encryption may include: determining a first parameter on the elliptic curve, wherein the participant and the other participants are configured to use the same first parameter. The ciphertext matrix may be obtained by encrypting the first characteristic data based on the first participant and the second parameter for the other participants. Processing the second characteristic data of the participant and the ciphertext matrix based on the elliptic curve to obtain intermediate data may include: obtaining the intermediate data based on the first parameter, the second characteristic 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 characteristic data and the ciphertext matrix of the participant based on the elliptic curve to obtain the intermediate data includes: obtaining the first intermediate data based on the first parameter and the third parameter for other participants; and obtaining the second intermediate data based on the ciphertext matrix, the second characteristic data, and the third parameter.

[0088] According to some embodiments, step S501, determining an elliptic curve for encryption may include: determining a fourth parameter on the elliptic curve, wherein the participant and the other participants are configured to use the same fourth parameter, and the fourth parameter represents the weight 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 of each sample in the at least one sample and the corresponding fourth parameter. Based on the ciphertext matrix, the second feature data, and the third parameter, obtaining the second intermediate data may include: based on the ciphertext matrix, the second feature data, the third parameter, and the fourth parameter, obtaining the second intermediate data.

[0089] According to another aspect of the present disclosure, a data processing device is provided, which is applied to any participant in a federated learning task, and the participant is connected to other participants in the federated learning task in a communication manner. Figure 6 As shown, the device 600 includes: a first determination unit 610, configured to determine the elliptic curve used for encryption, wherein the participant and other participants are configured to use the same elliptic curve; an encryption unit 620, 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; 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 other participants processing the second feature data and the ciphertext matrix of other participants based on the elliptic curve, the second feature data is obtained by processing the original feature data of other participants after segmentation using the elliptic curve, and the original feature data of the participant and the original feature data of other participants correspond to the same at least one sample; and a decryption unit 650, configured to decrypt the intermediate data to obtain the target data for the federated learning task. It can be understood that the operations of units 610-650 in the device 600 and Figure 1 The operations of step S101 to step S105 are similar and will not be described in detail here.

[0090] According to another aspect of the present disclosure, a data processing device is provided, which is applied to any participant in a federated learning task, and the participant is connected to other participants in the federated learning task in a communication manner. Figure 7 As shown, the device 700 includes: a second determination unit 710, configured to determine the elliptic curve used 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 the other participants encrypting the first feature data of the other participants using the elliptic curve, and the first feature data is obtained by the other participants processing the original feature data of the other participants after segmentation using the elliptic curve; a processing unit 730, configured to process the second feature data and the ciphertext matrix of the participant based on the elliptic curve to obtain intermediate data, the second feature data is obtained by processing the original feature data of the participant after segmentation using the elliptic curve, and the original feature data of the participant and the original feature data of the other participants correspond to the same at least one sample; and a second sending unit 740, configured to send the intermediate data to other participants. It can be understood that the operations of units 710-740 in the device 700 and Figure 1 The operations of step S501 to step S504 are similar and will not be described in detail here.

[0091] According to another aspect of the present disclosure, a federated learning system is provided, including the above-mentioned apparatus 600 and apparatus 700.

[0092] According to another aspect of the present 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, and the instructions are executed by the at least one processor so that the at least one processor can execute the above-mentioned data processing method.

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

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

[0095] See also Figure 6 , a block diagram of an electronic device 800 that can be used as the present disclosure will now be described, which is an example of a hardware device that can be applied to various aspects of the present disclosure. The electronic device can be a computer device of different types, such as a laptop computer, a desktop computer, a workbench, a personal digital assistant, a server, a blade server, a mainframe computer, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present disclosure described and / or required herein.

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

[0097] The processor 801 may be a single processing unit or multiple processing units, all of which may include a single or multiple computing units or multiple cores. The 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. The processor 801 may be configured to obtain and execute computer-readable instructions stored in a working memory 802, a storage device 806, or other computer-readable media, such as program codes of an operating system 802a, program codes of an application program 802b, and the like.

[0098] The working memory 802 and the storage device 806 are examples of computer-readable storage media for storing instructions, which are executed by the processor 801 to implement the various functions described above. The working memory 802 may include both volatile memory and non-volatile memory (e.g., RAM, ROM, etc.). In addition, the storage device 806 may include a hard disk drive, a solid-state drive, a removable medium, including external and removable drives, a memory card, a flash memory, a floppy disk, an optical disk (e.g., a CD, a DVD), a storage array, a network attached storage, a storage area network, etc. The working memory 802 and the storage device 806 may all be collectively referred to herein as memory or computer-readable storage media, and may be a non-transitory medium capable of storing computer-readable, processor-executable program instructions as computer program code, which may be executed by the processor 801 as a specific machine configured to implement the operations and functions described in the examples herein.

[0099] The I / O device 804 may include an input device and / or an output device. The input device may be any type of device capable of inputting information to the electronic device 800, and may include but is not limited to a mouse, a keyboard, a touch screen, a track pad, a track ball, a joystick, a microphone, and / or a remote controller. The output device may be any type of device capable of presenting information, and may include but is not limited to a video / audio output terminal, a vibrator, and / or a printer.

[0100] The communication interface 807 allows the electronic device 800 to exchange information / data with other devices through a computer network such as the Internet and / or various telecommunication networks, and may include but is not limited to a modem, a network card, an infrared communication device, a wireless communication transceiver and / or a chipset, such as a Bluetooth TM devices, 802.11 devices, WiFi devices, WiMax devices, cellular communication devices, and / or the like.

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

[0102] Various implementations 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 chips (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various implementations can include: being implemented in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.

[0103] The program code for implementing the method of the present disclosure may be written in any combination of one or more programming languages. These program codes may be provided to a processor or controller of a general-purpose computer, a special-purpose computer, or other programmable data processing device, so that the program code, when executed by the processor or controller, enables the functions / operations specified in the flow chart and / or block diagram to be implemented. The program code may be executed entirely on the machine, partially on the machine, partially on the machine and partially on a remote machine as a stand-alone software package, or entirely on a remote machine or server.

[0104] In the context of the present disclosure, a machine-readable medium may be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, device, or equipment. A machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or equipment, or any suitable combination of the foregoing. A more specific example of a machine-readable storage medium may include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, 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 (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user can provide input to the computer. Other types of devices can also be used to provide interaction with the user; for example, the 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 acoustic input, voice input, or tactile input).

[0106] The systems and techniques described herein may be implemented in a computing system that includes back-end components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes front-end components (e.g., a user computer with a graphical user interface or a web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such back-end components, middleware components, or front-end components. The components of the system may be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: a local area network (LAN), a wide area network (WAN), and the Internet.

[0107] A computing system may include clients and servers. Clients and servers are generally remote from each other and usually interact through a communication network. The relationship of client and server is generated by computer programs running on respective computers and having a client-server relationship to each other.

[0108] It should be understood that the various forms of processes shown above can be used to reorder, add or delete steps. For example, the steps described in this disclosure can be performed in parallel, sequentially or in different orders, as long as the desired results of the technical solutions disclosed in this disclosure can be achieved, and this document does not limit this.

[0109] Although the embodiments or examples of the present disclosure have been described with reference to the accompanying drawings, it should be understood that the above-mentioned methods, systems and devices are merely exemplary embodiments or examples, and the scope of the present invention is not limited by these embodiments or examples, but only by the claims after authorization and their equivalent scope. Various elements in the embodiments or examples can be omitted or replaced by their equivalent elements. In addition, each step can be performed in an order different from that described in the present disclosure. Further, the various elements in the embodiments or examples can be combined in various ways. It is important that with the evolution of technology, many elements described herein can be replaced by equivalent elements that appear after the present disclosure.

Claims

1. A data processing method, applied to any participant in a federated learning task, the participant being in communication connection with other participants in the federated learning task, the method comprising: Determining an elliptic curve for encryption, wherein the party and the other parties are configured to share the elliptic curve; Encrypting first characteristic data of the participant using the elliptic curve to obtain a ciphertext matrix, wherein the first characteristic data is obtained by processing the original characteristic data of the participant after segmentation using the elliptic curve; Sending the ciphertext matrix to the other participants; receiving intermediate data from the other party, wherein the intermediate data is obtained by the other party processing the second feature data of the other party and the ciphertext matrix based on the elliptic curve, the second feature data is obtained by processing the segmented original feature data of the other party using the elliptic curve, and the original feature data of the party and the original feature data of the other party correspond to the same at least one sample; and The intermediate data is decrypted to obtain target data for the federated learning task.

2. The method according to claim 1, wherein: The elliptic curves used for encryption are: determining a first parameter on the elliptic curve, wherein the participant and the other participants are configured to share the first parameter, The first characteristic data of the participant is encrypted using the elliptic curve to obtain a ciphertext matrix including: determining a second parameter for the party; and Encrypting the first feature data 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 characteristic 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, and encrypting the first feature data based on the first parameter and the second parameter to obtain a ciphertext matrix includes: The product of the first parameter and the second parameter is added to the feature data of each sample in 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 a third parameter for the other participants, and the second intermediate data is obtained based on the ciphertext matrix, the second feature data, and the third parameter. Wherein, decrypting the intermediate data to obtain target data for the federated learning task includes: 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 third parameter by the result of adding the result obtained by subtracting a preset value from the second feature data and the ciphertext matrix.

7. The method according to claim 5, wherein: Based on the second parameter, the first intermediate data and the second intermediate data, obtaining target data includes: The second intermediate data is subtracted from the product of the second parameter and the first intermediate data to obtain the target data.

8. The method according to claim 5, further comprising: In response to determining that the target data satisfies 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 are: determining a fourth parameter on the elliptic curve, wherein the participant and the other participants are configured to share the fourth parameter, and the fourth parameter represents a weight in a neural network to be trained, The first feature data includes feature data corresponding to at least one sample, and the first feature data is encrypted based on the first parameter and the second parameter to obtain a ciphertext matrix including: Adding the product of the first parameter and the second parameter to the product of the feature data of each sample in the at least one sample and the corresponding fourth parameter to obtain the ciphertext matrix, The second intermediate data is obtained based on the ciphertext matrix, the second characteristic data, the third parameter, and the fourth parameter.

10. The method according to 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 a bias in the neural network to be trained.

12. The method according to claim 1, further comprising: Determining a 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 characteristic data of the participant is encrypted using the elliptic curve to obtain a ciphertext matrix including: Using the segmentation method to segment the original feature data of the participant to obtain first slice data and second slice data; and determining the first feature data based on the first slice data and the second slice data, The second feature data is determined by the other participants based on the third slice data and the fourth slice data, and the third slice data and the fourth slice data are obtained by the other participants by segmenting the original feature data of the other participants using the segmentation method.

13. The method according to claim 12, wherein: Determining the first feature data based on the first slice data and the second slice data includes: determining the first feature data based on an intersection of the first slice data and the second slice data on the elliptic curve, The second characteristic 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 ​​a 16-digit number, wherein sending the ciphertext matrix to the other participants comprises: Splitting the ciphertext matrix according to a digit product method to obtain four first ciphertext split matrices, wherein each item in the first ciphertext split matrices 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: The elliptic curve and the segmentation method are both determined by the trusted execution environments of the participant and the other participants.

16. The method according to claim 1, wherein: The participant includes an advertiser, and the other participants include a media platform. The original feature data of the participant includes the advertising conversion data of the corresponding user, and the original feature data of the other participants includes the media platform behavior data of the corresponding user.

17. A data processing method, applied to any participant in a federated learning task, the participant being in communication connection with other participants in the federated learning task, the method comprising: Determining an elliptic curve for encryption, wherein the party and the other parties are configured to share the elliptic curve; receiving a ciphertext matrix from the other participant, wherein the ciphertext matrix is ​​obtained by the other participant encrypting first feature data of the other participant using the elliptic curve, and the first feature data is obtained by the other participant processing original feature data of the other participant after segmentation using the elliptic curve; Processing the second feature data of the participant and the ciphertext matrix based on the elliptic curve to obtain intermediate data, wherein the second feature data is obtained by processing the original feature data of the participant after segmentation using the elliptic curve, and the original feature data of the participant and the original feature data of the other participants correspond to the same at least one sample; and The intermediate data is sent to the other parties.

18. The method according to claim 17, wherein: The elliptic curves used for encryption are: determining a first parameter on the elliptic curve, wherein the participant and the other participants are configured to use the same first parameter, The ciphertext matrix is ​​obtained by encrypting the first feature data based on the first participant and the second parameter for the other participants, The second characteristic data of the participant and the ciphertext matrix are processed based on the elliptic curve to obtain the intermediate data, including: The intermediate data is obtained based on the first parameter, the second characteristic data and the ciphertext matrix.

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

20. The method according to claim 19, wherein: The elliptic curves used for encryption are: determining a fourth parameter on the elliptic curve, wherein the party and the other parties are configured to use the same fourth parameter, and the fourth parameter represents a weight in a neural network to be trained, The first feature data includes feature data corresponding to at least one sample, and the ciphertext matrix is ​​obtained by adding the product of the first parameter and the second parameter to the product of the feature data of each sample in the at least one sample and the corresponding fourth parameter, respectively. Wherein, obtaining the second intermediate data based on the ciphertext matrix, the second characteristic data, and the third parameter includes: The second intermediate data is obtained based on the ciphertext matrix, the second characteristic data, the third parameter, and the fourth parameter.

21. The method of claim 17, further comprising: Determining a 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; Using the segmentation method to segment the original feature data of the participant to obtain third slice data and fourth slice data; and determining the second feature data based on the third slice data and the fourth slice data, 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 segmenting the original feature data of the other participants using the segmentation method.

22. The method according to claim 21, wherein: Based on the third slice data and the fourth slice data, determining the second feature data includes: determining the second feature data based on an intersection of the third slice data and the fourth slice data on the elliptic curve, 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 device, applied to any participant in a federated learning task, the participant being in communication connection with other participants in the federated learning task, the device comprising: A first determining unit is configured to determine an elliptic curve for encryption, wherein the participant and the other participants are configured to share the 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 original feature data of the participant after segmentation 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 party, wherein the intermediate data is obtained by the other party processing the second feature data of the other party and the ciphertext matrix based on the elliptic curve, the second feature data is obtained by processing the original feature data of the other party after segmentation using the elliptic curve, and the original feature data of the party and the original feature data of the other party correspond to the same at least one sample; and A decryption unit is configured to decrypt the intermediate data to obtain target data for the federated learning task.

24. A data processing device, applied to any participant in a federated learning task, the participant being in communication connection with other participants in the federated learning task, the device comprising: A second determining unit is configured to determine an elliptic curve for encryption, wherein the participant and the other participants are configured to share the elliptic curve; A second receiving unit is configured to receive a ciphertext matrix from the other participant, wherein the ciphertext matrix is ​​obtained by the other participant encrypting the first feature data of the other participant using the elliptic curve, and the first feature data is obtained by the other participant processing the original feature data of the other participant after segmentation using the elliptic curve; a processing unit configured to process the second feature data of the participant and the ciphertext matrix based on the elliptic curve to obtain intermediate data, wherein the second feature data is obtained by processing the segmented original feature data of the participant using the elliptic curve, and the original feature data of the participant and the original feature data of the other participants correspond to the same at least one sample; and The second sending unit is configured to send the intermediate data to the other participants.

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

26. An electronic device comprising: at least one processor; as well as a memory communicatively coupled to the at least one processor; in The memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the method according to any one of claims 1 to 22.

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

28. A computer program product comprising a computer program, wherein: The computer program implements the method of any one of claims 1 to 22 when executed by a processor.

Citation Information

Patent Citations

  • Data processing method and device, equipment and storage medium

    CN115412243A

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

    CN115883212A

  • Private computing protocol distributed execution system and method

    CN116226907A

  • Cooperative data access request authorization in a dispersed storage network

    US20140351891A1