CN115276947A - Privacy data processing method, device, system and storage medium - Google Patents

Privacy data processing method, device, system and storage medium Download PDF

Info

Publication number
CN115276947A
CN115276947A CN202210828134.7A CN202210828134A CN115276947A CN 115276947 A CN115276947 A CN 115276947A CN 202210828134 A CN202210828134 A CN 202210828134A CN 115276947 A CN115276947 A CN 115276947A
Authority
CN
China
Prior art keywords
data
ciphertext
participant
privacy
data processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202210828134.7A
Other languages
Chinese (zh)
Other versions
CN115276947B (en
Inventor
不公告发明人
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Xufang Technology Co ltd
Original Assignee
Beijing Xufang Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Xufang Technology Co ltd filed Critical Beijing Xufang Technology Co ltd
Priority to CN202210828134.7A priority Critical patent/CN115276947B/en
Publication of CN115276947A publication Critical patent/CN115276947A/en
Application granted granted Critical
Publication of CN115276947B publication Critical patent/CN115276947B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Theoretical Computer Science (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

The invention provides a method, a device, a system and a storage medium for processing private data, wherein the method comprises the following steps: encrypting first private data in a first participant by using a local public key and adopting an agreed fully homomorphic encryption algorithm to obtain first ciphertext data; sending the first ciphertext data to a second participant in the privacy data processing system, wherein the second participant performs ciphertext operation on the first ciphertext data by using a preset data processing rule and second privacy data in the second participant to obtain second ciphertext data, and sends the second ciphertext data to the first participant; after receiving the second ciphertext data, decrypting the second ciphertext data by using the local private key to obtain a decryption vector; and determining the vector inner product of the first private data and the second private data according to the preset data processing rule and the decryption vector. The invention solves the technical problem of redundancy in the calculation process of the vector inner product under the condition of protecting the data privacy and safety in the related technology.

Description

Privacy data processing method, device, system and storage medium
Technical Field
The present invention relates to the field of data processing technologies, and in particular, to a method, an apparatus, a system, and a storage medium for processing private data.
Background
With the wide attention of the social circles on the problems of data privacy and data security, how to realize effective utilization of data value while protecting data privacy becomes an important problem to be solved urgently in academia and industry.
The privacy calculation is a technical system for realizing data value mining on the premise of providing privacy protection. At present, one of the main application scenarios of privacy computation is to combine machine learning technology to solve the problem of joint modeling of different data sources on the premise of guaranteeing data privacy; in the modeling process, the privacy computation problem of the linear function and the nonlinear function needs to be solved, wherein the vector inner product is one of the typical privacy computation problems of the linear function, and the method has a wide application range.
To solve the privacy computation problem of vector inner products, there are mainly the following three schemes: 1) Based on a multi-party security computing technology, a Beaver triple is often used for computing ciphertext multiplication; 2) Based on a semi-homomorphic encryption algorithm, a Paillier algorithm is generally used, and the Paillier algorithm is an addition homomorphic algorithm and supports ciphertext addition and calculation of ciphertext multiplication constants; 3) Based on the fully homomorphic encryption algorithm, in order to realize the ciphertext calculation of the vector inner product of N/2 dimensions, the ciphertext-to-plaintext and the log are required to be operated once2And N-1 ciphertext shift operations. In the process of implementing the three schemes to calculate the private data, the inventor finds that the method based on the multi-party security calculation technology needs additional third-party auxiliary calculation; in the method based on the semi-homomorphic encryption algorithm, the operations of multiplying the ciphertext by the constant are required to be executed bit by bit when the inner product of the ciphertext is calculated, and the calculation amount is large; the method based on the fully homomorphic encryption algorithm needs to run the cryptograph by the plaintext and the log once2N-1 ciphertext shift operation, it can be seen that any one privacy calculation scheme has the problems of complex operation in the calculation process, redundant calculation process, large calculation amount, low calculation efficiency and the like under the condition of protecting data privacy safety.
Disclosure of Invention
In view of the foregoing problems, the present invention provides a method, an apparatus, a system, and a storage medium for processing private data, so as to at least solve the technical problem of redundancy in the calculation process of vector inner product under the condition of protecting data privacy security in the related art.
In a first aspect, the present invention provides a method for processing private data, which is applied to a first participant in a private data processing system, and the method includes:
encrypting first private data in the first participant by using the local public key and adopting an agreed fully homomorphic encryption algorithm to obtain first ciphertext data;
sending the first ciphertext data to a second participant in the privacy data processing system, wherein the second participant performs ciphertext operation on the first ciphertext data by using a preset data processing rule and second privacy data in the second participant to obtain second ciphertext data, and sends the second ciphertext data to the first participant;
after receiving the second ciphertext data, decrypting the second ciphertext data by using a local private key to obtain a decryption vector;
and determining the vector inner product of the first private data and the second private data according to the preset data processing rule and the decryption vector.
In a second aspect, the present invention provides another private data processing method for a second party in a private data processing system, the method comprising:
receiving first ciphertext data sent by a first participant in the privacy data processing system, wherein the first ciphertext data is obtained by encrypting the first privacy data in the first participant by the first participant through a self public key by adopting an agreed homomorphic encryption algorithm;
carrying out ciphertext operation on the first ciphertext data by using a preset data processing rule and second privacy data in the second party to obtain second ciphertext data;
sending the second ciphertext data to the first party, wherein the first party decrypts the second ciphertext data by using a private key of the party to obtain a decryption vector; and determining a vector inner product of the first private data and the second private data according to the preset data processing rule and the decryption vector.
In a third aspect, the present invention provides a private data processing apparatus for use by a first party in a private data processing system, the apparatus comprising:
the encryption module is used for encrypting the first privacy data in the first participant by using the local public key and adopting an agreed homomorphic encryption algorithm to obtain first ciphertext data;
the sending module is used for sending the first ciphertext data to a second participant in the privacy data processing system, wherein the second participant performs ciphertext operation on the first ciphertext data by using a preset data processing rule and second privacy data in the second participant to obtain second ciphertext data, and sends the second ciphertext data to the first participant;
the decryption module is used for decrypting the second ciphertext data by using the local private key after receiving the second ciphertext data to obtain a decryption vector;
and the determining module is used for determining the vector inner product of the first privacy data and the second privacy data according to the preset data processing rule and the decryption vector.
In a fourth aspect, the present invention provides another private data processing apparatus for use by a second party in a private data processing system, the apparatus comprising:
the receiving module is used for receiving first ciphertext data sent by a first participant in the privacy data processing system, wherein the first ciphertext data is obtained by encrypting the first privacy data in the first participant by the first participant through a self public key by adopting an agreed homomorphic encryption algorithm;
the operation module is used for carrying out ciphertext operation on the first ciphertext data by using a preset data processing rule and second privacy data in the second party to obtain second ciphertext data;
the sending module is used for sending the second ciphertext data to the first party, wherein the first party decrypts the second ciphertext data by using a private key of the party to obtain a decryption vector; and determining a vector inner product of the first private data and the second private data according to the preset data processing rule and the decryption vector.
In a fifth aspect, the present invention provides a private data processing system comprising the apparatus of any one of the above.
In a sixth aspect, the present invention also provides an electronic device, comprising a memory and a processor, wherein the memory stores a computer program, and the processor is configured to run the computer program to perform the steps of any one of the method embodiments described above.
In a seventh aspect, the present invention also provides a storage medium, in which a computer program is stored, wherein the computer program is configured to perform the steps in any of the apparatus embodiments described above when executed.
According to the privacy data processing method provided by the embodiment of the invention, a first participant in a privacy data processing system encrypts first privacy data held by the first participant as plaintext data by using a public key of the party and adopting an agreed homomorphic encryption algorithm to obtain first ciphertext data; then sending the first ciphertext data to a second participant in the privacy data processing system, using second privacy data held by the second participant as plaintext data, performing ciphertext operation on the first ciphertext data by using a preset data processing rule and the second privacy data to obtain second ciphertext data, namely combining operation between the plaintext and the ciphertext, and sending the second ciphertext data to the first participant; after receiving the second ciphertext data, decrypting the second ciphertext data by using the local private key to obtain a decryption vector; the vector inner product of the first private data and the second private data is determined according to the preset data processing rule and the decryption vector, the privacy safety of the private data held by the first participant and the second participant is guaranteed by the preset data processing rule, bit-by-bit ciphertext shift operation is not needed, the redundant calculation process is greatly reduced, and the technical problem of redundancy in the calculation process of the vector inner product under the condition of protecting the data privacy safety in the related technology is solved.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings used in the description of the embodiments of the present invention will be briefly described below.
Fig. 1 is a flowchart of a private data processing method according to an embodiment of the present invention;
fig. 2 is a flowchart of another privacy data processing method provided in accordance with an embodiment of the present invention;
fig. 3 is a block diagram of a private data processing apparatus according to an embodiment of the present invention;
fig. 4 is a block diagram of another privacy data processing apparatus provided in accordance with an embodiment of the present invention.
Detailed Description
Exemplary embodiments of the present invention will be described in more detail below with reference to the accompanying drawings. While exemplary embodiments of the invention are shown in the drawings, it should be understood that the invention can be embodied in various forms and should not be limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art.
It should be noted that the terms "first," "second," and the like in the description and claims of the present invention and in the drawings described above are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order. It is to be understood that such uses are interchangeable under appropriate circumstances such that the embodiments of the invention described herein are capable of operation in sequences other than those illustrated or described herein. Furthermore, the term "include" and its variants are to be read as open-ended terms meaning "including, but not limited to".
In order to solve the technical problems in the related art, a private data processing method is provided in the present embodiment. The following describes the technical solution of the present invention and how to solve the above technical problems in detail by specific examples. The following several specific embodiments may be combined with each other, and details of the same or similar concepts or processes may not be repeated in some embodiments. Embodiments of the present invention will be described below with reference to the accompanying drawings.
Fig. 1 is a flowchart of a private data processing method provided in an embodiment of the present invention, where the method is applied to a first participant in a private data processing system, as shown in fig. 1, and the flow includes the following steps:
and S102, encrypting the first private data in the first participant by using the local public key and adopting an agreed homomorphic encryption algorithm to obtain first ciphertext data.
In this embodiment, a key of the CKKS homomorphic encryption algorithm is taken as an example, and is distributed in the ring R according to the gaussian distribution XqRandomly selecting an element s ← X as a private key, and then in ring RqRandomly and uniformly selecting an element a1 ← RqAnd meanwhile, randomly selecting an error e = -a1s + e on the Gaussian distribution X, and calculating a0= -a1s + e. Let the private key sk = s and the public key pk = (a 0, a 1). Through the method, a group of key pairs of the first participant can be obtained through calculation, the key pairs comprise a public key and a private key, the public key is used for encryption and can be shared, and the private key is used for decryption and must be kept secret.
In the method based on the fully homomorphic encryption algorithm, the most efficient method for realizing ciphertext calculation is based on the CKKS fully homomorphic encryption algorithm, the CKKS algorithm supports operations such as ciphertext addition, ciphertext multiplication by plaintext and ciphertext shift, and the method is mainly characterized in that the calculation result is an approximate result rather than an accurate result; since the influence of the approximation result on the whole system is limited in the field of machine learning, the ciphertext calculation for realizing the vector inner product by using the CKKS homomorphic encryption algorithm is a practical and effective method. In this embodiment, a fully homomorphic CKKS-based encryption algorithm is preferred.
And step S104, sending the first ciphertext data to a second participant in the privacy data processing system, wherein the second participant performs ciphertext operation on the first ciphertext data by using a preset data processing rule and second privacy data in the second participant to obtain second ciphertext data, and sends the second ciphertext data to the first participant.
It should be noted that, in this embodiment, the first privacy data and the second privacy data are agreed in advance, and both have the same vector dimension.
The existing homomorphic encryption algorithm carries out vector inner product, in the calculation process of cipher text inner product, elements at each position need to be summed after multiplication, because the plaintext and the cipher text of the algorithm are not in one-to-one correspondence, the elements at different positions need to be summed, and cipher text shift operation needs to be used; therefore, in the existing ciphertext inner product calculation process, in order to realize ciphertext calculation of N/2-dimensional vector inner product, ciphertext-to-plaintext and log need to be operated once2N-1 ciphertext shift operations are complicated in calculation process and large in calculation amount.
In order to solve the problem of redundancy in the calculation process of the vector inner product ciphertext, in this embodiment, a first participant sends a ciphertext (i.e., the first ciphertext data) obtained by encrypting first privacy data and an input key, which are stored by the first participant, to a second participant, and the method adopts a fully homomorphic encryption algorithm, so that under the condition of protecting the privacy security of the first privacy data, the calculability of the first privacy data is kept, and the second participant can directly perform an operation on the first ciphertext data.
Furthermore, after receiving the first ciphertext data, the second party performs ciphertext operation on the privacy data of the second party according to the preset data processing rule to obtain second ciphertext data, namely, the second privacy data is encrypted and operated, so that the problem of leakage of the second privacy data in the second party is solved.
And S106, after receiving the second ciphertext data, decrypting the second ciphertext data by using the local private key to obtain a decryption vector.
And step S108, determining the vector inner product of the first private data and the second private data according to the preset data processing rule and the decryption vector.
In an application scenario of the present disclosure, it is assumed that a first participant is an evaluation mechanism, a second participant is a bank, and the evaluation mechanism performs an evaluation on the user value of the user 1 according to various data of the user 1 in the bank. The evaluation organization holds evaluation parameters (a 1, a2, a 3) (i.e. the above first privacy data), the data of the user 1 is (b 1, b2, b 3) (i.e. the above second privacy data), for example, b1 refers to deposit data of the user 1, b2 refers to loan data of the user 1, and b3 refers to income data of the user 1;
further, in order to protect the evaluation parameters of the evaluation organization and the privacy security of the data of the user 1 in the bank, the evaluation parameters of the evaluation organization are fully homomorphic encrypted by adopting a fully homomorphic encryption algorithm based on the CKKS and a public key generated by the fully homomorphic encryption algorithm of the CKKS to obtain first ciphertext data so as to protect the privacy of the data in the evaluation organization; and then sending the first ciphertext data to a bank (namely a second party), carrying out ciphertext operation on various data of the user 1 by the bank according to a preset data processing rule to obtain second ciphertext data, feeding the second ciphertext data back to the evaluation mechanism, and processing the preset data processing rule and the second ciphertext data by the evaluation mechanism by using a calculation function of the vector inner product. Under the condition of protecting the data privacy security of each data party, the computability is not influenced; and finally, performing vector inner product on the evaluation parameters held by the evaluation organization and the user 1 data of the bank at the evaluation organization, and taking the calculated approximate result as the analysis data of the user 1 value.
According to the embodiment, a first participant in the privacy data processing system encrypts first privacy data, which is held by the first participant, as plaintext data by using a public key of the party and by using an agreed homomorphic encryption algorithm to obtain first ciphertext data; then sending the first ciphertext data to a second participant in the privacy data processing system, using second privacy data owned by the second participant as plaintext data, performing ciphertext operation on the first ciphertext data by using a preset data processing rule and the second privacy data to obtain second ciphertext data, namely combining operation between the plaintext and the ciphertext, and sending the second ciphertext data to the first participant; after receiving the second ciphertext data, decrypting the second ciphertext data by using the local private key to obtain a decryption vector; the vector inner product of the first private data and the second private data is determined according to the preset data processing rule and the decryption vector, the privacy safety of the private data held by the first participant and the second participant is guaranteed by the preset data processing rule, bit-by-bit ciphertext shift operation is not needed, the redundant calculation process is greatly reduced, and the technical problem of redundancy in the calculation process of the vector inner product under the condition of protecting the data privacy safety in the related technology is solved.
In an optional embodiment of the present disclosure, the preset data processing rule is a target array agreed in advance by the first participant and the second participant, and a dimension of the target array, a dimension of the first privacy data, and a dimension of the second privacy data are all the same;
the preset data processing rule at least comprises one of the following rules: first 2 in the target arrayρThe array value of the term is 1, the array value of the rest terms is 0, wherein rho is a natural number which is more than or equal to 1, and 1 is less than or equal to 2ρDimension is less than or equal to the dimension; every 2 in the target arrayτThe array value of 1 term is 1, the array values of the rest terms are 0, wherein tau is a natural number which is more than or equal to 1, and 1 is less than or equal to 2τ-1 ≦ dimension; top 2 in the target arrayρEvery other 2 of the termsτThe array value of the 1 term is 1 and the array value of the remaining terms is 0.
For example, the target array C = { C =0,…,cN/2-1}∈{0,1}N/2(ii) a The preset data processing rule satisfies the following 3 conditions:
1) Front 2 of CρThe term is 1, the remainder are 0, i.e.
Figure BDA0003744792090000081
2) Every 2 of Cτ1 is 1 and the remainder is 0, i.e.
Figure BDA0003744792090000082
3) Front 2 of CρEvery 2 of the itemsτ1 is 1 and the remainder is 0, i.e.
Figure BDA0003744792090000083
Through the embodiment, the selection items in the private data of each participant can be selected according to the convention among the participants and the conventional preset data processing rule, and the vector inner product of the private data in each participant is calculated by using the selection items, so that the calculation amount of the data is reduced, and the privacy problem of the data held by each participant is further ensured.
In an optional embodiment of the present disclosure, the step S108 includes: constructing a first operation model corresponding to the vector inner product of the first privacy data and the second privacy data; processing the first operation model according to a preset data processing rule to obtain a second operation model; processing the second operation model according to a preset mapping rule to obtain a third operation model; and substituting the system parameters and the decryption vector in the privacy data processing system into a third operation model for operation to obtain the vector inner product of the first privacy data and the second privacy data.
In specific implementation, the first privacy data held by the participant A is VA={a0,…,aN/2-1V is the second privacy data held by the participant BB={b0,…,bN/2-1In which the vector dimension is
Figure BDA0003744792090000091
Processing rules by preset data: top 2 in the target arrayρThe array value of the term is 1 and the array value of the remaining terms is 0, i.e.
Figure BDA0003744792090000092
First construct VAAnd VBA first operational model of the vector inner product of (1), i.e.
Figure BDA0003744792090000093
Further, due to ciIs taken as a value of
Figure BDA0003744792090000094
Further, according to the Canonical mapping rule (i.e. the above-mentioned preset mapping)Rule) are provided with
Figure BDA0003744792090000095
Figure BDA0003744792090000096
The Canonical mapping maps the imaginary vectors into a cyclotomic polynomial, for example: the complex vector (3 +4i, 2-i) corresponds to
Figure BDA0003744792090000097
Let X take two root xi of origin respectively8,
Figure BDA0003744792090000098
The complex vector can be obtained by substituting the polynomial, and the polynomial for calculating the complex vector is the inverse operation of the above calculation so as to decrypt the encrypted vector and further process the data with the complex data type.
Based on the private data processing method provided in the foregoing embodiments, based on the same inventive concept, another private data processing method is also provided in this embodiment, and the method is used to implement the foregoing embodiments and preferred embodiments, and is already described and will not be described again.
Fig. 2 is a flowchart of another private data processing method provided in an embodiment of the present invention, and the method is applied to a second participant in a private data processing system, as shown in fig. 2, and the flowchart includes the following steps:
step S202, receiving first ciphertext data sent by a first participant in the privacy data processing system, wherein the first ciphertext data is obtained by encrypting the first privacy data in the first participant by the first participant through a private public key by using an agreed homomorphic encryption algorithm;
step S204, carrying out ciphertext operation on the first ciphertext data by using a preset data processing rule and second privacy data in a second party to obtain second ciphertext data;
step S206, the second ciphertext data is sent to the first party, wherein the first party decrypts the second ciphertext data by using the private key of the party to obtain a decryption vector; and determining the vector inner product of the first private data and the second private data according to a preset data processing rule and the decryption vector.
The preset data processing rule in the embodiment is a target array agreed by a first participant and a second participant in advance, and the dimensionality of the target array, the dimensionality of the first privacy data and the dimensionality of the second privacy data are the same;
the preset data processing rule at least comprises one of the following rules: first 2 in the target arrayρThe array value of the term is 1, the array value of the rest terms is 0, wherein rho is a natural number which is more than or equal to 1, and 1 is less than or equal to 2ρDimension is less than or equal to; every 2 in the target arrayτThe array value of 1 term is 1, the array values of the rest terms are 0, wherein tau is a natural number which is more than or equal to 1, and 1 is less than or equal to 2τ-1 ≦ dimension; first 2 in the target arrayρEvery other 2 of the termsτThe array value of the 1 term is 1 and the array value of the remaining terms is 0.
Further, the step S206 specifically includes: performing multiplication operation on the second privacy data and the first ciphertext data to obtain third ciphertext data; randomly selecting an initial vector with the same dimensionality as the data dimensionality of the second private data from the data space of the second participant; calculating a preset data processing rule and an initial vector to obtain a target vector, wherein the dimensionality of the target vector is twice that of the initial vector; and performing addition operation on the third ciphertext data and the target vector to obtain second ciphertext data.
In the process of carrying out inner product calculation on a ciphertext by using the existing homomorphic encryption algorithm, elements at each position need to be summed after multiplication, and the plaintext and the ciphertext of the algorithm are not in a one-to-one correspondence relationship. For example: the (m 1, m2, m 3) corresponds to the (c 1, c2, c 3) after being encrypted; but any element in the plain text is changed, such as: (m 1, m2, m 4), each position of the corresponding ciphertext is different, such as (c 4, c5, c 6). Therefore, elements at different positions need to be summed, and ciphertext shift operations must be used; therefore, in the existing ciphertext inner product calculation process, in order to realize ciphertext calculation of N/2-dimensional vector inner product, one needs to be operatedThe secondary ciphertext times the plaintext and log2And the cipher text shift operation for N-1 times is complex in calculation process and large in calculation amount.
In order to solve the problem of redundancy in the vector inner product ciphertext calculation process, in this embodiment, the participant a sends a ciphertext (i.e., the first ciphertext data) obtained by encrypting the first privacy data and the input key of the participant a to the participant B, and a homomorphic encryption algorithm is used to keep the calculability of the first privacy data under the privacy security condition of protecting the first privacy data, so that the participant B can directly perform an operation on the first ciphertext data.
Further, after receiving the first ciphertext data, the participant B obtains third ciphertext data by calculating the plaintext by the ciphertext with the second privacy data stored by the participant B. For example, the first private data of party a is a = (a 1, a2, a 3), the second private data of party B is approximately B = (B1, B2, B3), the inner product of a and B is calculated, C = Enc (a) = (C1, C2, C3) is obtained by encrypting a, and ciphertext by plaintext calculation C = (C4, C5, C6) = Enc (a 1= B1, a 2= B2, a3 = (i.e., the third ciphertext data) is performed.
After obtaining the third ciphertext data, party B may be at Zq N/2-1Randomly selecting N/2-1 dimensional vector E in space0={e1,…eN/2-1H, calculate an n-dimensional vector E = { E =0,…,eN/2-1In which e0Calculated according to the target data C (i.e. the preset data processing rule),
Figure BDA0003744792090000111
and the participant B calculates R = T + E by a ciphertext plus plaintext method, where T is the third ciphertext data, and transmits R (i.e., the second ciphertext data) to the participant a.
In a conventional ciphertext inner product calculation process, ciphertext shift is required to be performed on C × B, for example, C × B + rotation (C × B, 1) + rotation (C × B, 2) = Enc (a 1 × B1+ a2 × B2+ a3 × B3, X), where rotation refers to ciphertext shift, so as to decrypt to obtain an inner product. According to the embodiment, partial data in plaintext data is selected according to the appointed preset data processing rule, one plaintext-ciphertext operation and one ciphertext-plaintext operation are performed, privacy of private data is protected, operation is simple, a bitwise ciphertext shifting algorithm is not needed, and the calculation amount is reduced.
The following further describes the private data processing method provided by the present invention with reference to a specific embodiment:
the embodiment of the invention provides a vector inner product privacy calculation method based on fully homomorphic encryption and supporting option operation, which specifically comprises the following steps:
party A holds a private data vector VA={a0,…,aN/2-1}, party B holds a private data vector VB={b0,…,bN/2-1The two parties agree on the option coefficient C = { C = }0,…,cN/2-1}∈{0,1}N/2(i.e., the preset data processing rules) calculates V held by participant AAAnd V held by participant BBThe vector inner product of (b) is expressed as
Figure BDA0003744792090000121
(i.e., the first operation model), wherein the option coefficient C satisfies one of the following three conditions:
one, the front 2 of CρThe term is 1 and the remainder is 0, i.e.
Figure BDA0003744792090000122
Two, every 2 of Cτ1 is 1 and the remainder is 0, i.e.
Figure BDA0003744792090000123
Third, the first 2 of CρEvery 2 of the itemsτThe term-1 is 1 and the remainder are 0, i.e.
Figure BDA00037447920900001211
Further, the method comprises the following steps:
step one, a participant A acquires a data vector VA={a0,…,aN/2-1As input plaintext, the public key PK of AAAs input secretThe key is encrypted as Enc (V) using the fully homomorphic CKKS algorithmA) And Enc (V)A) Sending to a participant B;
step two, the participant B carries the owned data vector VB={b0,…,bN/2-1T = Enc (V) calculated by ciphertext by plaintext methodA)×VB
Step three, the participant B is in Zq N/2Randomly selecting N/2-1 dimensional vector E in-1 space0={e1,…eN/2-1H, compute an n-dimensional vector E = { E = }0,…,eN/2-1In which e0Calculated according to the item selection coefficient C,
Figure BDA0003744792090000124
step four, the participant B calculates R = T + E by a ciphertext and plaintext method, and sends R to the participant A;
step five, using private key SK by participant AADecrypting to obtain vector VR=Dec(R)={r0,…,rN-1}, calculating
Figure BDA0003744792090000125
Wherein M/2= N =2n-1,
Figure BDA0003744792090000126
ξM=e-2πi/MAnd when the condition C satisfies the condition one,
Figure BDA0003744792090000127
when the C satisfies the condition two, the C,
Figure BDA0003744792090000128
when the C satisfies the condition three, the C,
Figure BDA0003744792090000129
further, the calculation process for each of the above three cases is as follows:
1. first 2 of the target array CρItem 1, whichThe remainder being 0, i.e
Figure BDA00037447920900001210
To calculate the inner product of the vector
Figure BDA0003744792090000131
Due to ciBy taking the value of (A), it is known
Figure BDA0003744792090000132
According to the Canonical mapping rule, there are
Figure BDA0003744792090000133
Spreading j and k according to bits respectively to obtain
Figure BDA0003744792090000134
Figure BDA0003744792090000135
Wherein j isl,klRespectively, represents the l-th bit of j, k, and thus
Figure BDA0003744792090000136
Figure BDA0003744792090000137
According to
Figure BDA0003744792090000138
Property of (b) to k in the formulaρ-1To k0Sequentially simplifying to obtain
Figure BDA0003744792090000139
Figure BDA00037447920900001310
2. Every 2 of Cτ1 is 1 and the remainder is 0, i.e.
Figure BDA00037447920900001311
Is to calculate
Figure BDA00037447920900001312
Due to ciBy taking the value of (A), it is known
Figure BDA00037447920900001313
According to the Canonical mapping rule, there are
Figure BDA00037447920900001314
Spreading j and k according to bits respectively to obtain
Figure BDA00037447920900001315
Wherein jl,klRespectively represent the l-th bit of j, k, and therefore
Figure BDA00037447920900001316
According to
Figure BDA00037447920900001317
Figure BDA00037447920900001318
Property of (b) to k in the formulan-3-τTo k0Are simplified in sequence to obtain
Figure BDA00037447920900001319
3. Front 2 of CρEvery other 2 of the termsτThe term-1 is 1 and the remainder are 0, i.e.
Figure BDA00037447920900001320
Is to calculate
Figure BDA00037447920900001321
Due to ciBy taking the value of (A), it is known
Figure BDA00037447920900001322
According to the Canonical mapping rule, there are
Figure BDA00037447920900001323
Figure BDA00037447920900001324
Spreading j and k according to bits respectively to obtain
Figure BDA00037447920900001325
Figure BDA00037447920900001326
Wherein j isl,klRespectively, represents the l-th bit of j, k, and thus
Figure BDA00037447920900001327
Figure BDA00037447920900001328
According to
Figure BDA00037447920900001329
Figure BDA00037447920900001330
Property of (b) to k in the formulaρ-τ-1To k0Sequentially simplifying to obtain
Figure BDA00037447920900001331
Figure BDA00037447920900001332
Order to
Figure BDA0003744792090000141
When the condition C is satisfied as the case one,
Figure BDA0003744792090000142
Figure BDA0003744792090000143
when the C satisfies the condition two, the C,
Figure BDA0003744792090000144
Figure BDA0003744792090000145
when the C satisfies the condition three, the C,
Figure BDA0003744792090000146
Figure BDA0003744792090000147
it should be noted that, in the following description,
Figure BDA0003744792090000148
is the vector dimension of the private data, j represents 0, N-1]So for any J, it can be decomposed bit by bit into strings of 0 and 1, where each position is Jl;ξMIn relation to M only, M/2= N =2n-1,bn-2Storing as fixed parameters, and in each calculation of s, the calculation result is only corresponding to dimension, rho or tau in preset data processing rule and corresponding fixed parameter bn-2Regarding, regardless of the input private data and the input key pair (i.e., the public key and the private key) the modulus, the number of layers that affect the security strength of CKKS can be pre-calculated. Therefore, in the process of carrying out a large amount of vector inner product privacy calculations, only relevant input data (including selection of a selection coefficient C) and system parameters need to be combined with pre-calculation of fixed parameters to obtain a final result. The calculation process can be simplified, and the operation efficiency of the algorithm is improved.
Optionally, for the above three cases, most practical scenarios are satisfied by adjusting the input sequence, for example: the input data is (a 0, \8230; a 9), (b 0, \8230; b 9), the sum of the internal products of items 1, 5, 7 need to be calculated, i.e. c1= c5= c7=1, which does not satisfy the above three cases, but the input order can be interchanged, such as: a0< - > a1, a2< - > a5 and a4< - > a7, so as to meet the third condition, every 1 item in the first 5 items is 1, an option coefficient can be set according to specific needs, the method can be flexibly used by combining input transformation, and a wider applicable scene is provided by the scheme.
According to the embodiment of the invention, the vector inner product privacy calculation method based on the fully homomorphic encryption separates the input parameters and the system parameters required in the vector inner product privacy calculation process, and performs pre-calculation on the system parameters, so that the redundant calculation process is reduced, and the algorithm efficiency is improved.
Based on the private data processing method provided in the foregoing embodiments, based on the same inventive concept, the present embodiment further provides a private data processing apparatus, which is used for implementing the foregoing embodiments and preferred embodiments, and the description of the apparatus is omitted. As used below, the term "module" may be a combination of software and/or hardware that implements a predetermined function. Although the means described in the embodiments below are preferably implemented in software, an implementation in hardware, or a combination of software and hardware is also possible and contemplated.
Fig. 3 is a block diagram of a private data processing apparatus provided in an embodiment of the present invention, and as shown in fig. 3, the apparatus is applied to a first participant in a private data processing system, and includes:
the encryption module 30 is configured to encrypt first privacy data in the first party by using the local public key and using an agreed homomorphic encryption algorithm to obtain first ciphertext data;
a sending module 32, connected to the encryption module 30, configured to send the first ciphertext data to a second party in the privacy data processing system, where the second party performs ciphertext operation on the first ciphertext data by using a preset data processing rule and second privacy data in the second party to obtain second ciphertext data, and sends the second ciphertext data to the first party;
a decryption module 34, connected to the sending module 32, configured to decrypt the second ciphertext data by using the local private key after receiving the second ciphertext data, so as to obtain a decryption vector;
and a determining module 36, connected to the decrypting module 34, for determining a vector inner product of the first private data and the second private data according to a preset data processing rule and the decryption vector.
Furthermore, the preset data processing rule is a target array agreed by the first participant and the second participant in advance, and the dimensionality of the target array, the dimensionality of the first privacy data and the dimensionality of the second privacy data are the same;
wherein, the preset data processing rule at least comprises one of the following rules: the array value of the first 2 rho items in the target array is 1, the array values of the rest items are 0, wherein rho is a natural number which is more than or equal to 1, and 1 is less than or equal to 2ρDimension is less than or equal to; every other 2 in the target arrayτThe array value of 1 term is 1, the array values of the rest terms are 0, wherein tau is a natural number which is more than or equal to 1, and 1 is less than or equal to 2τ-1 ≦ dimension; top 2 in the target arrayρEvery other 2 of the termsτThe array value of 1 term is 1 and the array value of the remaining terms is 0.
Further, the determination module 36 includes:
the device comprises a construction unit and a calculation unit, wherein the construction unit is used for constructing a first operation model corresponding to the vector inner product of first privacy data and second privacy data;
the first processing unit is used for processing the first operation model according to a preset data processing rule to obtain a second operation model;
the second processing unit is used for processing the second operation model according to a preset mapping rule to obtain a third operation model;
and the operation unit is used for substituting the system parameters and the decryption vectors in the privacy data processing system into the third operation model to perform operation so as to obtain the vector inner product of the first privacy data and the second privacy data.
Fig. 4 is a block diagram of another privacy data processing apparatus provided in an embodiment of the present invention, and as shown in fig. 4, the apparatus is applied to a second party in a privacy data processing system, and includes:
the receiving module 40 is configured to receive first ciphertext data sent by a first participant in the privacy data processing system, where the first ciphertext data is obtained by encrypting, by the first participant, first privacy data in the first participant by using a common key of the party and using an agreed homomorphic encryption algorithm;
an operation module 42, connected to the receiving module 40, configured to perform ciphertext operation on the first ciphertext data by using a preset data processing rule and second privacy data in the second party, so as to obtain second ciphertext data;
a sending module 44, connected to the operation module 42, configured to send the second ciphertext data to the first party, where the first party decrypts the second ciphertext data by using the local private key to obtain a decryption vector; and determining the vector inner product of the first private data and the second private data according to the preset data processing rule and the decryption vector.
Furthermore, the preset data processing rule is a target array agreed by the first participant and the second participant in advance, and the dimensionality of the target array, the dimensionality of the first privacy data and the dimensionality of the second privacy data are the same;
the preset data processing rule at least comprises one of the following rules: first 2 in the target arrayρThe array value of the term is 1, the array value of the rest terms is 0, wherein rho is a natural number which is more than or equal to 1, and 1 is less than or equal to 2ρDimension is less than or equal to; every other 2 in the target arrayτThe array value of 1 term is 1, the array values of the rest terms are 0, wherein tau is a natural number which is more than or equal to 1, and 1 is less than or equal to 2τ-1 ≦ dimension; first 2 in the target arrayρEvery 2 of the itemsτThe array value of 1 term is 1 and the array value of the remaining terms is 0.
Further, the operation module 42 includes:
the first operation unit is used for performing multiplication operation on the second privacy data and the first ciphertext data to obtain third ciphertext data;
the selecting unit is used for randomly selecting an initial vector with the same dimensionality as the data dimensionality of the second privacy data from the data space of the second participant;
the second operation unit is used for operating the preset data processing rule and the initial vector to obtain a target vector, wherein the dimensionality of the target vector is twice that of the initial vector;
and the third operation unit is used for performing addition operation on the third ciphertext data and the target vector to obtain second ciphertext data.
It should be noted that, the above modules may be implemented by software or hardware, and for the latter, the following may be implemented, but not limited to: the modules are all positioned in the same processor; alternatively, the modules are located in different processors in any combination.
An embodiment of the invention also provides a private data processing system, which comprises any one of the devices.
Embodiments of the present invention also provide a storage medium having a computer program stored therein, wherein the computer program is arranged to perform the steps of any of the above method embodiments when executed.
Alternatively, in the present embodiment, the storage medium may be configured to store a computer program for executing the steps of:
s1, encrypting first privacy data in the first participant by using a local public key and adopting an agreed homomorphic encryption algorithm to obtain first ciphertext data;
s2, sending the first ciphertext data to a second participant in the privacy data processing system, wherein the second participant performs ciphertext operation on the first ciphertext data by using a preset data processing rule and second privacy data in the second participant to obtain second ciphertext data, and sends the second ciphertext data to the first participant;
s3, after receiving the second ciphertext data, decrypting the second ciphertext data by using a local private key to obtain a decryption vector;
and S4, determining a vector inner product of the first private data and the second private data according to the preset data processing rule and the decryption vector.
Optionally, in this embodiment, the storage medium may be further configured to store a computer program for executing the following steps:
the method comprises the following steps that S1, first ciphertext data sent by a first participant in the privacy data processing system are received, wherein the first ciphertext data are obtained by encrypting the first privacy data in the first participant through a party public key by adopting an agreed homomorphic encryption algorithm;
s2, carrying out ciphertext operation on the first ciphertext data by using a preset data processing rule and second privacy data in the second party to obtain second ciphertext data;
s3, sending the second ciphertext data to the first party, wherein the first party decrypts the second ciphertext data by using a local private key to obtain a decryption vector; and determining a vector inner product of the first private data and the second private data according to the preset data processing rule and the decryption vector.
Optionally, in this embodiment, the storage medium may include, but is not limited to: various media capable of storing computer programs, such as a usb disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a removable hard disk, a magnetic disk, or an optical disk.
It will be apparent to those skilled in the art that the modules or steps of the present invention described above may be implemented by a general purpose computing device, they may be centralized in a single computing device or distributed across a network of multiple computing devices, and alternatively, they may be implemented by program code executable by a computing device, such that they may be stored in a memory device and executed by a computing device, and in some cases, the steps shown or described may be executed out of order, or separately as individual integrated circuit modules, or multiple modules or steps thereof may be implemented as a single integrated circuit module. Thus, the present invention is not limited to any specific combination of hardware and software.
The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention, and various modifications and changes may be made by those skilled in the art. Any modification, equivalent replacement, or improvement made within the principle of the present invention shall be included in the protection scope of the present invention.

Claims (10)

1. A method of private data processing, for use by a first party in a private data processing system, the method comprising:
encrypting first privacy data in the first participant by using the local public key and adopting an agreed homomorphic encryption algorithm to obtain first ciphertext data;
sending the first ciphertext data to a second participant in the privacy data processing system, wherein the second participant performs ciphertext operation on the first ciphertext data by using a preset data processing rule and second privacy data in the second participant to obtain second ciphertext data, and sends the second ciphertext data to the first participant;
after receiving the second ciphertext data, decrypting the second ciphertext data by using the local private key to obtain a decryption vector;
and determining the vector inner product of the first private data and the second private data according to the preset data processing rule and the decryption vector.
2. The method according to claim 1, wherein the preset data processing rule is a target array agreed in advance by the first participant and the second participant, and the dimensions of the target array, the dimensions of the first privacy data and the dimensions of the second privacy data are all the same;
wherein the preset data processing rule at least comprises one of the following rules: top 2 in the target arrayρThe array value of the term is 1, the array values of the other terms are 0, wherein rho is a natural number which is more than or equal to 1, and 1 is less than or equal to 2ρDimension is less than or equal to the dimension; every 2 in the target arrayτThe array value of 1 term is 1, the array values of the rest terms are 0, wherein tau is a natural number which is more than or equal to 1, and 1 is less than or equal to 2τ-1 ≦ dimension; top 2 in the target arrayρEvery other 2 of the termsτThe array value of the 1 term is 1 and the array value of the remaining terms is 0.
3. The method according to claim 1 or 2, wherein the determining a vector inner product of the first private data and the second private data according to the preset data processing rule and the decryption vector comprises:
constructing a first operation model corresponding to the vector inner product of the first privacy data and the second privacy data;
processing the first operation model according to the preset data processing rule to obtain a second operation model;
processing the second operation model according to a preset mapping rule to obtain a third operation model;
and substituting the system parameters in the privacy data processing system and the decryption vector into the third operation model to perform operation to obtain a vector inner product of the first privacy data and the second privacy data.
4. A method of privacy data processing for use by a second party in a privacy data processing system, the method comprising:
receiving first ciphertext data sent by a first participant in the privacy data processing system, wherein the first ciphertext data is obtained by encrypting the first privacy data in the first participant by the first participant through a self public key by adopting an agreed homomorphic encryption algorithm;
performing ciphertext operation on the first ciphertext data by using a preset data processing rule and second privacy data in the second party to obtain second ciphertext data;
sending the second ciphertext data to the first party, wherein the first party decrypts the second ciphertext data by using a private key of the party to obtain a decryption vector; and determining a vector inner product of the first private data and the second private data according to the preset data processing rule and the decryption vector.
5. The method according to claim 4, wherein the preset data processing rule is a target array agreed in advance by the first participant and the second participant, and the dimension of the target array, the dimension of the first privacy data and the dimension of the second privacy data are all the same;
wherein the preset data processing rule at least comprises one of the following rules: top 2 in the target arrayρThe array value of the term is 1, the array values of the other terms are 0, wherein rho is a natural number which is more than or equal to 1, and 1 is less than or equal to 2ρDimension is less than or equal to; every other 2 in the target arrayτThe array value of 1 term is 1, the array values of the rest terms are 0, wherein tau is a natural number which is more than or equal to 1, and 1 is less than or equal to 2τ-1 ≦ dimension; top 2 in the target arrayρEvery other 2 of the termsτThe array value of 1 term is 1 and the array value of the remaining terms is 0.
6. The method according to claim 4 or 5, wherein the ciphertext operation on the first ciphertext data by using a preset data processing rule and second privacy data in the second party to obtain second ciphertext data comprises:
performing multiplication operation on the second privacy data and the first ciphertext data to obtain third ciphertext data;
randomly selecting an initial vector with the same dimensionality as the data dimensionality of the second privacy data from the data space of the second participant;
calculating the preset data processing rule and the initial vector to obtain a target vector, wherein the dimension of the target vector is twice that of the initial vector;
and performing addition operation on the third ciphertext data and the target vector to obtain the second ciphertext data.
7. A private data processing apparatus for use with a first party in a private data processing system, the apparatus comprising:
the encryption module is used for encrypting first privacy data in the first participant by using a local public key and adopting an agreed fully homomorphic encryption algorithm to obtain first ciphertext data;
the sending module is used for sending the first ciphertext data to a second participant in the privacy data processing system, wherein the second participant performs ciphertext operation on the first ciphertext data by using a preset data processing rule and second privacy data in the second participant to obtain second ciphertext data, and sends the second ciphertext data to the first participant;
the decryption module is used for decrypting the second ciphertext data by using the local private key after receiving the second ciphertext data to obtain a decryption vector;
and the determining module is used for determining the vector inner product of the first private data and the second private data according to the preset data processing rule and the decryption vector.
8. A private data processing apparatus for use by a second party in a private data processing system, the apparatus comprising:
the receiving module is used for receiving first ciphertext data sent by a first participant in the privacy data processing system, wherein the first ciphertext data is obtained by encrypting the first privacy data in the first participant by the first participant through a self public key by adopting an agreed homomorphic encryption algorithm;
the operation module is used for carrying out ciphertext operation on the first ciphertext data by using a preset data processing rule and second privacy data in the second party to obtain second ciphertext data;
the sending module is used for sending the second ciphertext data to the first party, wherein the first party decrypts the second ciphertext data by using a local private key to obtain a decryption vector; and determining a vector inner product of the first private data and the second private data according to the preset data processing rule and the decryption vector.
9. A private data processing system, characterized in that the system comprises the apparatus of claim 7 and the apparatus of claim 8.
10. A storage medium on which a computer program is stored which, when being executed by a processor, carries out the steps of the method of any one of claims 1 to 6.
CN202210828134.7A 2022-07-13 2022-07-13 Private data processing method, device, system and storage medium Active CN115276947B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210828134.7A CN115276947B (en) 2022-07-13 2022-07-13 Private data processing method, device, system and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210828134.7A CN115276947B (en) 2022-07-13 2022-07-13 Private data processing method, device, system and storage medium

Publications (2)

Publication Number Publication Date
CN115276947A true CN115276947A (en) 2022-11-01
CN115276947B CN115276947B (en) 2023-08-22

Family

ID=83764667

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210828134.7A Active CN115276947B (en) 2022-07-13 2022-07-13 Private data processing method, device, system and storage medium

Country Status (1)

Country Link
CN (1) CN115276947B (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115913544A (en) * 2022-12-02 2023-04-04 北京瑞莱智慧科技有限公司 Data processing method, data processing device, electronic equipment and computer program product
CN115935438A (en) * 2023-02-03 2023-04-07 杭州金智塔科技有限公司 Data privacy intersection system and method
CN116204909A (en) * 2023-04-17 2023-06-02 北京数牍科技有限公司 Vector element mapping method, electronic device and computer readable storage medium
CN117614612A (en) * 2024-01-24 2024-02-27 蓝象智联(杭州)科技有限公司 Multiparty data statistics method for protecting privacy

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3007382A1 (en) * 2014-10-10 2016-04-13 Fujitsu Limited Homomorphic cryptographic processing method and cryptographic processing device for pattern matching
CN108111294A (en) * 2017-12-13 2018-06-01 南京航空航天大学 A kind of multiple labeling sorting technique of the protection privacy based on ML-kNN
WO2019209555A1 (en) * 2018-04-27 2019-10-31 Microsoft Technology Licensing, Llc Enabling constant plaintext space in bootstrapping in fully homomorphic encryption
US20190363870A1 (en) * 2018-05-24 2019-11-28 Visa International Service Association Efficient concurrent scalar product calculation
WO2020216875A1 (en) * 2019-04-23 2020-10-29 Onespan Nv Methods and systems for privacy preserving evaluation of machine learning models
US20210135837A1 (en) * 2019-10-30 2021-05-06 Via Science, Inc. Secure data processing
CN112989368A (en) * 2021-02-07 2021-06-18 支付宝(杭州)信息技术有限公司 Method and device for processing private data by combining multiple parties
WO2021218618A1 (en) * 2020-04-26 2021-11-04 华为技术有限公司 Data processing method, apparatus and system, device, and medium
WO2021223873A1 (en) * 2020-05-08 2021-11-11 Ecole Polytechnique Federale De Lausanne (Epfl) System and method for privacy-preserving distributed training of machine learning models on distributed datasets

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3007382A1 (en) * 2014-10-10 2016-04-13 Fujitsu Limited Homomorphic cryptographic processing method and cryptographic processing device for pattern matching
CN108111294A (en) * 2017-12-13 2018-06-01 南京航空航天大学 A kind of multiple labeling sorting technique of the protection privacy based on ML-kNN
WO2019209555A1 (en) * 2018-04-27 2019-10-31 Microsoft Technology Licensing, Llc Enabling constant plaintext space in bootstrapping in fully homomorphic encryption
US20190363870A1 (en) * 2018-05-24 2019-11-28 Visa International Service Association Efficient concurrent scalar product calculation
WO2020216875A1 (en) * 2019-04-23 2020-10-29 Onespan Nv Methods and systems for privacy preserving evaluation of machine learning models
US20210135837A1 (en) * 2019-10-30 2021-05-06 Via Science, Inc. Secure data processing
WO2021218618A1 (en) * 2020-04-26 2021-11-04 华为技术有限公司 Data processing method, apparatus and system, device, and medium
WO2021223873A1 (en) * 2020-05-08 2021-11-11 Ecole Polytechnique Federale De Lausanne (Epfl) System and method for privacy-preserving distributed training of machine learning models on distributed datasets
CN112989368A (en) * 2021-02-07 2021-06-18 支付宝(杭州)信息技术有限公司 Method and device for processing private data by combining multiple parties

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
CHEON J H等: "homomorphic encryption for arithmetic of approximate mumbers", 《PROCEEDINGS OF THE 23RD INTERNATIONAL CONFERENCE ON THE THEORY AND APPLICATIONS OF CRYPTOLOGY AND INFORMATION SECURITY》 *
李凤云;李金双;薛丽芳;孙欣然;: "移动社交网络中隐私保护的用户相似度计算协议研究", 计算机与数字工程, no. 10 *
蒋瀚;刘怡然;宋祥福;王皓;郑志华;徐秋亮;: "隐私保护机器学习的密码学方法", 电子与信息学报, no. 05 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115913544A (en) * 2022-12-02 2023-04-04 北京瑞莱智慧科技有限公司 Data processing method, data processing device, electronic equipment and computer program product
CN115913544B (en) * 2022-12-02 2023-11-07 北京瑞莱智慧科技有限公司 Data processing method, device, electronic equipment and computer readable storage medium
CN115935438A (en) * 2023-02-03 2023-04-07 杭州金智塔科技有限公司 Data privacy intersection system and method
CN116204909A (en) * 2023-04-17 2023-06-02 北京数牍科技有限公司 Vector element mapping method, electronic device and computer readable storage medium
CN116204909B (en) * 2023-04-17 2023-07-07 北京数牍科技有限公司 Vector element mapping method, electronic device and computer readable storage medium
CN117614612A (en) * 2024-01-24 2024-02-27 蓝象智联(杭州)科技有限公司 Multiparty data statistics method for protecting privacy

Also Published As

Publication number Publication date
CN115276947B (en) 2023-08-22

Similar Documents

Publication Publication Date Title
US11201734B2 (en) Method and system for fault tolerant and secure multiparty computation with SPDZ
EP3725023B1 (en) Method for faster secure multiparty inner product with spdz
EP3688921B1 (en) Method for faster secure multiparty inner product computation with spdz
CN112989368B (en) Method and device for processing private data by combining multiple parties
CN115276947A (en) Privacy data processing method, device, system and storage medium
US11394525B2 (en) Cryptography device having secure provision of random number sequences
US6658569B1 (en) Secret key cryptographic process for protecting a computer system against attacks by physical analysis
US8595513B2 (en) Method and system for protecting a cryptography device
CN110635909B (en) Attribute-based collusion attack resistant proxy re-encryption method
CN114465708B (en) Privacy data processing method, device, system, electronic equipment and storage medium
KR20150015518A (en) Encryption system, encryption method, encryption program and decryption device
CN115102688A (en) Data processing method, polynomial calculation method and electronic equipment
US6111952A (en) Asymmetrical cryptographic communication method and portable object therefore
Kuang et al. Indistinguishability and non-deterministic encryption of the quantum safe multivariate polynomial public key cryptographic system
EP3376706B1 (en) Method and system for privacy-preserving order statistics in a star network
CN116170142B (en) Distributed collaborative decryption method, device and storage medium
Vidhya et al. A novel approach for Chaotic image Encryption based on block level permutation and bit-wise substitution
US7280663B1 (en) Encryption system based on crossed inverse quasigroups
Chen et al. A novel (t, n) secret sharing scheme based upon Euler’s theorem
Arampatzis What is homomorphic encryption [& how it is used]
CN116601691A (en) Hidden information processing system and hidden information processing method
Prakancharoen Database secure manipulation based on paillier’s homomorphic encryption (DSM-PHE)
Naskar et al. Ultra secured and authentic key distribution protocol using a novel secret sharing technique
Kebache et al. Reducing the Encrypted Data Size: Healthcare with IoT-Cloud Computing Applications.
CN113268707B (en) Ciphertext covariance matrix calculation method based on row coding

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant