CN113965314A - Homomorphic encryption processing method and related equipment - Google Patents

Homomorphic encryption processing method and related equipment Download PDF

Info

Publication number
CN113965314A
CN113965314A CN202111576363.6A CN202111576363A CN113965314A CN 113965314 A CN113965314 A CN 113965314A CN 202111576363 A CN202111576363 A CN 202111576363A CN 113965314 A CN113965314 A CN 113965314A
Authority
CN
China
Prior art keywords
zero
ciphertext
ciphertexts
plaintext
cipher text
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
CN202111576363.6A
Other languages
Chinese (zh)
Other versions
CN113965314B (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.)
Shenzhen Dongjian Intelligent Technology Co ltd
Original Assignee
Shenzhen Dongjian Intelligent 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 Shenzhen Dongjian Intelligent Technology Co ltd filed Critical Shenzhen Dongjian Intelligent Technology Co ltd
Priority to CN202111576363.6A priority Critical patent/CN113965314B/en
Priority to CN202210132649.3A priority patent/CN114444108A/en
Publication of CN113965314A publication Critical patent/CN113965314A/en
Application granted granted Critical
Publication of CN113965314B publication Critical patent/CN113965314B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/60Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers
    • G06F7/72Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers using residue arithmetic
    • G06F7/722Modular multiplication

Landscapes

  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

The embodiment of the application discloses a homomorphic encryption processing method and related equipment, wherein the homomorphic encryption processing method comprises the following steps: reading a first zero ciphertext and acquiring P second zero ciphertexts which are reserved recently, wherein P is a positive integer; detecting whether the first zero ciphertext is a new zero ciphertext; when the first zero ciphertext is a new zero ciphertext, encrypting a plaintext to be encrypted according to the first zero ciphertext to obtain a first ciphertext; when the first zero ciphertext is not a new zero ciphertext, selecting Q second zero ciphertexts from the P second zero ciphertexts, wherein Q is a positive integer less than or equal to P; and encrypting the plaintext to be encrypted according to the Q second zero ciphertexts to obtain a second ciphertext. By adopting the embodiment of the application, the homomorphic encryption efficiency can be improved.

Description

Homomorphic encryption processing method and related equipment
Technical Field
The present application relates to the field of data encryption technologies, and in particular, to a homomorphic encryption processing method and related devices.
Background
In recent years, the academia and industry have begun to use federal learning solutions to address such problems. Federal learning aims to improve the actual effect of the AI model on the premise of ensuring data privacy safety and legal compliance by using knowledge such as cryptography, machine learning and the like. Homomorphic encryption has become the most widely used privacy protection technique in federal learning in the industry because it supports direct computation on ciphertext.
In homomorphic encryption, the encryption process for plaintext includes a large number of large digital-to-analog multiplications and modular exponentiations on a large number of multiplicative cyclic groups, which makes the encryption process very time consuming. At present, many optimization methods are used in homomorphic encryption calculation, for example, the length of a secret key is reduced, so that the number of the secret key participating in the operation is reduced, or the secret key is replaced by an encryption scheme with a higher calculation speed, which usually loses certain precision and safety; in addition, hardware-based optimization through multiprocessing, distribution, design of specific encryption computing chips and the like has certain requirements on hardware storage and supply capacity of users. Therefore, the problem of how to improve the homomorphic encryption efficiency needs to be solved urgently.
Disclosure of Invention
The embodiment of the application provides a homomorphic encryption processing method and related equipment, and homomorphic encryption efficiency can be improved.
In a first aspect, an embodiment of the present application provides a homomorphic encryption processing method, where the method includes:
reading a first zero ciphertext and acquiring P second zero ciphertexts which are reserved recently, wherein P is a positive integer;
detecting whether the first zero ciphertext is a new zero ciphertext;
when the first zero ciphertext is a new zero ciphertext, encrypting a plaintext to be encrypted according to the first zero ciphertext to obtain a first ciphertext;
when the first zero ciphertext is not a new zero ciphertext, selecting Q second zero ciphertexts from the P second zero ciphertexts, wherein Q is a positive integer less than or equal to P;
and encrypting the plaintext to be encrypted according to the Q second zero ciphertexts to obtain a second ciphertext.
In a second aspect, an embodiment of the present application provides a homomorphic encryption processing apparatus, where the apparatus includes: a zero ciphertext obtaining unit, a detecting unit, a first encrypting unit and a second encrypting unit, wherein,
the zero ciphertext obtaining unit is configured to read a first zero ciphertext and obtain P second zero ciphertexts which are recently reserved, where P is a positive integer;
the detection unit is used for detecting whether the first zero ciphertext is a new zero ciphertext;
the first encryption unit is used for encrypting a plaintext to be encrypted according to the first zero ciphertext to obtain a first ciphertext when the first zero ciphertext is a new zero ciphertext;
the second encryption unit is configured to select Q second zero ciphertexts from the P second zero ciphertexts when the first zero ciphertext is not a new zero ciphertext, where Q is a positive integer less than or equal to P; and encrypting the plaintext to be encrypted according to the Q second zero ciphertexts to obtain a second ciphertext.
In a third aspect, an embodiment of the present application provides an electronic device, including a processor, a memory, a communication interface, and one or more programs, where the one or more programs are stored in the memory and configured to be executed by the processor, and the program includes instructions for executing the steps in the first aspect of the embodiment of the present application.
In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium, where the computer-readable storage medium stores a computer program for electronic data exchange, where the computer program enables a computer to perform some or all of the steps described in the first aspect of the embodiment of the present application.
In a fifth aspect, embodiments of the present application provide a computer program product, where the computer program product includes a non-transitory computer-readable storage medium storing a computer program, where the computer program is operable to cause a computer to perform some or all of the steps as described in the first aspect of the embodiments of the present application. The computer program product may be a software installation package.
In a sixth aspect, an embodiment of the present application provides a homomorphic encryption processing system, including: the system comprises a homomorphic encryption application system, a key generation center, a ciphertext storage center and a zero ciphertext system, wherein the homomorphic encryption processing system is used for executing part or all of the steps described in the first aspect of the embodiment of the present application.
The embodiment of the application has the following beneficial effects:
it can be seen that the homomorphic encryption processing method and the related device described in the embodiments of the present application, by reading the first zero ciphertext, and obtaining P second zero ciphertexts which are reserved recently, wherein P is a positive integer, detecting whether the first zero cipher text is a new zero cipher text, when the first zero ciphertext is a new zero ciphertext, encrypting the plaintext to be encrypted according to the first zero ciphertext to obtain a first ciphertext, when the first zero ciphertext is not the new zero ciphertext, Q second zero ciphertexts are selected from the P second zero ciphertexts, Q is a positive integer less than or equal to P, the plaintext to be encrypted is encrypted according to the Q second zero ciphertexts to obtain a second ciphertext, in the homomorphic encryption process, because the zero ciphertext is adopted to realize encryption, the modular exponentiation operation in the encryption process can be replaced by modular multiplication operation, so that the direct modular exponentiation operation is reduced, the high-efficiency lossless homomorphic encryption is realized, and the encryption efficiency is improved.
Drawings
In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, it is obvious that the drawings in the following description are only some embodiments of the present application, and for those skilled in the art, other drawings can be obtained according to the drawings without creative efforts.
Fig. 1 is a schematic structural diagram of a homomorphic encryption processing system for implementing a homomorphic encryption processing method according to an embodiment of the present application;
fig. 2 is a schematic flowchart of a homomorphic encryption processing method according to an embodiment of the present application;
FIG. 3 is a schematic diagram illustrating a matrix partitioning provided by an embodiment of the present application;
fig. 4 is a schematic flowchart of another homomorphic encryption processing method provided in this embodiment of the present application;
fig. 5 is a schematic flowchart of another homomorphic encryption processing method according to an embodiment of the present application;
fig. 6 is a schematic structural diagram of an electronic device according to an embodiment of the present application;
fig. 7 is a block diagram illustrating functional units of a homomorphic encryption processing apparatus according to an embodiment of the present disclosure.
Detailed Description
In order to make the technical solutions of the present application better understood, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application, and it is obvious that the described embodiments are only a part of the embodiments of the present application, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present application.
The terms "first," "second," and the like in the description and claims of the present application and in the above-described drawings are used for distinguishing between different objects and not for describing a particular order. Furthermore, the terms "include" and "have," as well as any variations thereof, are intended to cover non-exclusive inclusions. For example, a process, method, system, article, or apparatus that comprises a list of steps or elements is not limited to only those steps or elements listed, but may alternatively include other steps or elements not listed, or inherent to such process, method, article, or apparatus.
Reference herein to "an embodiment" means that a particular feature, structure, or characteristic described in connection with the embodiment can be included in at least one embodiment of the application. The appearances of the phrase in various places in the specification are not necessarily all referring to the same embodiment, nor are separate or alternative embodiments mutually exclusive of other embodiments. It is explicitly and implicitly understood by one skilled in the art that the embodiments described herein can be combined with other embodiments.
The electronic device described in the embodiment of the present application may include a smart Phone (e.g., an Android Phone, an iOS Phone, a Windows Phone, etc.), a tablet computer, a palm computer, a vehicle data recorder, a traffic guidance platform, a server, a notebook computer, a Mobile Internet device (MID, Mobile Internet Devices), or a wearable device (e.g., a smart watch, a bluetooth headset), which are merely examples, but are not exhaustive, and include but are not limited to the above electronic device, and the electronic device may also be a cloud server.
The following describes embodiments of the present application in detail.
Referring to fig. 1, fig. 1 is a schematic structural diagram of a homomorphic encryption processing system for implementing a homomorphic encryption processing method according to an embodiment of the present application, where the homomorphic encryption processing system includes: the system comprises a homomorphic encryption application system, a key generation center, a ciphertext storage center and a zero ciphertext system.
Wherein the key generation center is used for generating a public key. The key generation center may be independent of the homomorphic cryptographic application, or the key generation center may be integrated with the homomorphic cryptographic application. The ciphertext storage center may be independent of the homomorphic encryption application system, or the ciphertext storage center may be integrated with the homomorphic encryption application system. The zero cipher text system may be independent of the homomorphic encryption application system, or the zero cipher text system may be integrated with the homomorphic encryption application system. Of course, the homomorphic encryption application system, the key generation center, the ciphertext storage center and the zero-ciphertext system may be independent of each other. The zero ciphertext system may be an online system or an offline system. The homomorphic encryption application may be an online system. The ciphertext store may include at least one of: disks, database redis, distributed file system (HDFS), and the like, without limitation.
The homomorphic encryption application system may be any system suitable for homomorphic encryption, and the homomorphic encryption application system may include at least one of the following: federal learning systems, confidential computing systems, private computing systems, and the like, without limitation.
Based on the homomorphic encryption processing system, the method can be used for executing the following steps:
reading a first zero ciphertext and acquiring P second zero ciphertexts which are reserved recently, wherein P is a positive integer;
detecting whether the first zero ciphertext is a new zero ciphertext;
when the first zero ciphertext is a new zero ciphertext, encrypting a plaintext to be encrypted according to the first zero ciphertext to obtain a first ciphertext;
when the first zero ciphertext is not a new zero ciphertext, selecting Q second zero ciphertexts from the P second zero ciphertexts, wherein Q is a positive integer less than or equal to P;
and encrypting the plaintext to be encrypted according to the Q second zero ciphertexts to obtain a second ciphertext.
It can be seen that, in the embodiment of the present application, whether the first zero ciphertext is a new zero ciphertext is detected by reading the first zero ciphertext and obtaining P second zero ciphertexts that are most recently reserved, where P is a positive integer, and when the first zero ciphertext is the new zero ciphertext, encrypting the plaintext to be encrypted according to the first zero ciphertext to obtain the first ciphertext, and when the first zero ciphertext is not the new zero ciphertext, selecting Q second zero ciphertexts from the P second zero ciphertexts, where Q is a positive integer less than or equal to P, and encrypting the plaintext to be encrypted according to the Q second zero ciphertexts to obtain the second ciphertext.
Referring to fig. 2, fig. 2 is a schematic flowchart of a homomorphic encryption processing method according to an embodiment of the present application, applied to the homomorphic encryption processing system shown in fig. 1, where as shown in the figure, the homomorphic encryption processing method includes:
201. and reading the first zero ciphertext and acquiring P second zero ciphertexts which are reserved recently, wherein P is a positive integer.
In this embodiment, the zero ciphertext may be a ciphertext obtained by encrypting 0 with a public key. The first zero ciphertext may be obtained by encrypting 0 with a public key by a homomorphic encryption application system. The number of the first zero ciphertexts may be X, X is a positive integer, and X may be 1, 2, 3, and so on, which is not limited herein. Of course, the homomorphic encryption application system can also realize other encryption functions through the public key.
In a specific implementation, the first zero ciphertext may be read, and P second zero ciphertexts that are most recently reserved may be obtained, where P is a positive integer, for example, P may be 10, and the first zero ciphertext may be stored in a different location from the second zero ciphertext. For example, a first zero ciphertext may be stored in a homomorphic encryption application and a second zero ciphertext may be stored in a ciphertext storage center. Of course, the first zero ciphertext and the second zero ciphertext may be stored in the same location, for example, both may be stored in a ciphertext storage center or a homomorphic encryption application system.
In a specific implementation, the homomorphic encryption application system, the key generation center, the ciphertext storage center, and the zero ciphertext system may all be located in a server or an electronic device (client). For example, part of the homomorphic encryption application system, the key generation center, the ciphertext storage center, and the zero-ciphertext system is located in the server, and the other part of the system is located in the electronic device (client).
Of course, the number of the key generation centers may be 1 or 2, and when the number of the key generation centers is 1, it may be located in the server or the electronic device, and when the number of the key generation centers is 2, it may be one located in the server and one located in the electronic device.
For example, the homomorphic encryption application system may be disposed in the server, the zero ciphertext system may be disposed in the electronic device (client), the electronic device may generate the corresponding zero ciphertext before connecting to the server or when initiating the connection, the key generation center may be disposed in the server or the electronic device, and is configured to store the zero ciphertext generated by the zero ciphertext system, because the zero ciphertext is stored in the cloud server and the electronic device, the source of the zero ciphertext is enriched, the randomness of the zero ciphertext is also enriched, and further, the encryption security is further improved.
Optionally, in the step 201, obtaining the P second zero ciphertexts that are most recently reserved may include the following steps:
and obtaining the P second zero ciphertexts from a cipher text storage center, wherein the cipher text storage center stores M second zero cipher texts in advance, each second zero cipher text in the M second zero cipher texts is obtained by encrypting 0 through a public key by a zero cipher text system, and M is a positive integer greater than or equal to P.
In this embodiment of the present application, the ciphertext storage center may store M second zero ciphertexts, where M is an integer greater than or equal to P, and may randomly select P second zero ciphertexts from the M second zero ciphertexts, or may also select P second zero ciphertexts that are generated recently. The second zero ciphertext can be obtained by encrypting 0 by the zero ciphertext system through the public key, and the P second zero ciphertexts are different zero ciphertexts.
Optionally, the public key is a homomorphic encryption public key, and the public key is generated by a key generation center.
In the embodiment of the application, the public key is a homomorphic encryption public key, the public key is generated by a key generation center, and the public key can be distributed and transmitted to a zero ciphertext system and a homomorphic encryption application system. The zero ciphertext system is to encrypt 0 based on the public key to generate a second zero ciphertext. The homomorphic encryption application system can encrypt 0 based on the public key to obtain a first zero ciphertext or a second zero ciphertext, and can also realize other encryption functions based on the public key.
Optionally, the zero ciphertext system is an offline system or an online system.
The zero ciphertext system may be an online system, for example, which may generate the zero ciphertext in real time, or an offline system, which may generate the zero ciphertext in an offline state in advance, and store the zero ciphertext in the ciphertext storage center.
202. And detecting whether the first zero ciphertext is a new zero ciphertext.
In a specific implementation, whether the first zero ciphertext is a used zero ciphertext or not may be detected, if the first zero ciphertext is used, it indicates that the first zero ciphertext is not a new zero ciphertext, and if the first zero ciphertext is not used, it indicates that the first zero ciphertext is a new zero ciphertext, where the used zero ciphertext is used to encrypt a plaintext.
203. And when the first zero ciphertext is the new zero ciphertext, encrypting the plaintext to be encrypted according to the first zero ciphertext to obtain a first ciphertext.
In this embodiment of the present application, the plaintext to be encrypted may be a word or a character, and its expression form may include at least one of the following forms: numbers, vectors, matrices, etc., without limitation. In a specific implementation, the first zero ciphertext and the plaintext to be encrypted may be added to obtain the first ciphertext. For example, where the homomorphic cryptographic application system is a federated learning system, then the first ciphertext can be used for federated learning training.
The plaintext to be encrypted may be one-dimensional data or multidimensional data, for example, the plaintext to be encrypted may be image encoded data, and for example, the plaintext to be encrypted may be audio encoded data, and for example, the plaintext to be encrypted may be important privacy data, and for example, the plaintext to be encrypted may be internet financial data.
In a specific implementation, when the first zero ciphertext is a new zero ciphertext, because the new zero ciphertext is not used, the plaintext to be encrypted may be encrypted according to the first zero ciphertext to obtain the first ciphertext.
204. And when the first zero ciphertext is not the new zero ciphertext, selecting Q second zero ciphertexts from the P second zero ciphertexts, wherein Q is a positive integer less than or equal to P.
When the first zero ciphertext is not the new zero ciphertext, Q second zero ciphertexts may be randomly or sequentially selected from the P second zero ciphertexts, where Q is a positive integer less than or equal to P. The order may be the order of the storage time of the ciphertext or the order of the storage addresses of the ciphertext.
Optionally, in the step 204, selecting Q second zero ciphertexts from the P second zero ciphertexts may include the following steps:
41. acquiring target attribute information of the plaintext to be encrypted;
42. determining the distribution quantity of second zero ciphertexts corresponding to the target attribute information to obtain Q;
43. and selecting the Q second zero ciphertexts from the P second zero ciphertexts.
In this embodiment of the present application, the target attribute information may include at least one of the following: the type of plaintext, the length of plaintext, the importance level of plaintext, etc., are not limited herein. The plaintext type may comprise at least one of: numbers, vectors, matrices, etc., without limitation.
In a specific implementation, a mapping relationship between preset attribute information and the distribution number of the second zero ciphertexts may be stored in advance. After the target attribute information of the plaintext to be encrypted is acquired, the distribution number, namely Q, corresponding to the target attribute information can be determined according to the mapping relation, and then Q second zero ciphertexts can be selected from P second zero ciphertexts, so that the corresponding zero ciphertexts can be distributed based on the attributes of the plaintext, and dynamic encryption of data can be realized. For example, the vector may not correspond to the matrix for the number of second zero ciphertexts required.
205. And encrypting the plaintext to be encrypted according to the Q second zero ciphertexts to obtain a second ciphertext.
In the embodiment of the present application, for example, when Q is 1, the second zero ciphertext may be added to the plaintext to be encrypted to obtain the second ciphertext. For another example, when Q is greater than 1, the plaintext to be encrypted may be divided into Q segments, each segment corresponds to one second zero ciphertext, each second zero ciphertext is added to the plaintext to be encrypted of the corresponding segment, and the encrypted plaintext is spliced to obtain the second ciphertext, so that the security of homomorphic encryption can be improved. Next, for example, when the homomorphic encryption application system is a federated learning system, then the second ciphertext can be used for federated learning training.
In a specific implementation, once the first zero ciphertext or the second zero ciphertext is used, the homomorphic encryption application system may encrypt 0 through the public key to generate a new zero ciphertext for supplementation, or the zero ciphertext system may encrypt 0 through the public key to generate a new zero ciphertext for supplementation. The total number of the first zero ciphertext and the second zero ciphertext may be maintained within a preset range, and the preset range may be preset or default by the system.
Optionally, in step 205, encrypting the plaintext to be encrypted according to the Q second zero ciphertexts to obtain a second cipher text, the method may include the following steps:
51. dividing the plaintext to be encrypted into N sub-plaintext, wherein N is an integer greater than 1, and Q is greater than or equal to N;
52. dividing the Q second zero ciphertexts into N zero cipher text groups, wherein each zero cipher text group comprises at least one second zero cipher text;
53. encrypting the N sub-plaintexts according to the N zero ciphertext groups to obtain N ciphertexts;
54. and determining the second ciphertext according to the N ciphertexts.
In a specific implementation, the plaintext to be encrypted may be divided into N sub-plaintext, where N is an integer greater than 1, Q is greater than or equal to N, for example, when N is one number, the plaintext may be divided into N sub-plaintext according to a bit number, and for example, when N is one vector, the plaintext may be divided into N sub-plaintext according to a vector dimension, for example, when N is one matrix, the matrix may be decomposed into N sub-matrices, each sub-matrix may correspond to one sub-plaintext, or alternatively, the matrix may be divided into a plurality of regions, each region corresponds to one matrix block, as shown in fig. 3, one matrix (left diagram in fig. 3) may be divided into 4 matrix blocks (right diagram in fig. 3), as shown in fig. 3, the matrix block has a matrix size of a.b, and the matrix blocks have a matrix size of (a/2), as shown in fig. 3, where the entire rectangle may represent the matrix before partitioning and the 4 rectangles after partitioning may represent the 4 matrix blocks.
Furthermore, Q second zero ciphertexts may be divided into N zero cipher text groups, each zero cipher text group includes at least one second zero cipher text, and then the N sub-plaintext may be encrypted according to the N zero cipher text groups to obtain N cipher texts, for example, each sub-plaintext may be encrypted corresponding to one zero cipher text group, and finally, the second cipher text may be determined according to the N cipher texts, and if the N cipher texts are spliced, the second cipher text may be obtained, so that the security and the encryption efficiency may be improved.
In specific implementation, when the N sub-plaintexts are encrypted according to the N zero ciphertext groups, each zero ciphertext group may correspond to one thread or process, and the zero ciphertext group and the corresponding sub-plaintexts are encrypted synchronously through the thread or process, so that the encryption efficiency may be further improved.
In specific implementation, the embodiment of the application can improve the efficiency of the homomorphic encryption application field, such as the training of federal learning. In specific implementation, the embodiment of the present application is applied to any scenario involving homomorphic encryption, for example, network security in the internet, internet finance, data security transmission in the internet of things, and the like, and is not limited herein.
For example, as shown in fig. 4, when the homomorphic encryption application system is a federal learning system, the federal learning system may be an online system, and the zero ciphertext system may be an offline system, and the key generation center is configured to generate homomorphic encryption public keys and to respectively push the public keys to the federal learning system and the zero ciphertext system. The zero cipher text system encrypts 0 by using the public key to generate enough zero cipher texts to be stored in the cipher text storage center. The federated learning system can read the zero ciphertext, and obtain the newest 10 zero ciphertexts from the ciphertext storage center, detect whether these read zero ciphertexts have new zero ciphertexts, if yes, encrypt the plaintext to be encrypted through the new zero ciphertext to obtain the ciphertext, if not, select at least one zero ciphertext from the newest 10 zero ciphertexts, encrypt the plaintext to be encrypted by using the at least one zero ciphertext to obtain the ciphertext.
In the specific implementation, considering that the large number of modular exponentiation is the main reason of time consumption in the homomorphic encryption process, in the embodiment of the present application, the addition operation between the plaintext to be encrypted and a specific ciphertext (zero ciphertext) is used to encrypt the plaintext, so that the modular exponentiation in the encryption process is replaced by the modular multiplication operation, the direct modular exponentiation is reduced, the efficient and lossless homomorphic encryption scheme is implemented, and the training efficiency of federal learning is improved. Meanwhile, in consideration of the security of the encryption scheme, in the embodiment of the application, the encryption process of the plaintext is divided into two parts, namely the specific ciphertext generation part and the ciphertext addition part, and the specific ciphertext generation part does not depend on plaintext data to be encrypted, so that the encryption process can be completed offline. Based on the random encryption algorithm of the off-line specific ciphertext generation and the on-line plaintext encryption, the requirement of selecting the security of plaintext attack (CPA) can be still met.
The specific implementation process comprises the following steps: the method can be divided into two cases of off-line generation of zero ciphertext and on-line encryption. The detailed description is as follows.
And aiming at offline generation of zero ciphertext, the key generation center can be an independent system, a public key can be generated by using the key generation center offline, 0 is encrypted by using the public key to generate enough zero ciphertext, the zero ciphertext is stored in a ciphertext storage center, and the zero ciphertext is directly read and used when the model starts to train.
For some federal learning systems, the initial design is that the public key is generated and synchronized when a federal modeling starts, and the key generation center is a submodule of the federal learning system. In this case, after the federal learning system initializes to generate (or receive) the public key, the zero ciphertext generation system generates the zero ciphertext by using the public key (i.e. encrypts 0), and stores the zero ciphertext in the ciphertext storage center, and the zero ciphertext is read and used when the model training starts.
In addition, since the encryption of 0 is much slower (about 10-100 times slower) than the on-line ciphertext addition, the zero ciphertext of the ciphertext storage center may be insufficient just at the beginning of the federal learning training, and one of the existing zero ciphertext may be randomly selected for use (with a certain randomness) when no new ciphertext is generated. Because the zero ciphertext system is an independent system and can be independent of the federal learning system and run all the time to generate the zero ciphertext, enough zero ciphertext can be available at the later stage of model training.
For the online encryption scenario, as shown in fig. 4, the above offline generated zero ciphertext can be directly summed with the plaintext to be encrypted to implement random encryption of the plaintext. The method can comprise the following steps:
1. reading zero ciphertexts from the cipher text storage center, and reserving the 10 nearest zero cipher texts;
2. when the ciphertext storage center does not have a new zero ciphertext, randomly selecting a zero ciphertext from the reserved zero ciphertext;
3. adding the selected zero ciphertext into the plaintext to be encrypted to obtain the encryption result of the ciphertext;
4. and carrying out subsequent federal learning training or other applications by using the encrypted data.
The embodiment of the application can realize off-line generation of the homomorphic ciphertext of 0, namely the zero ciphertext, and on-line encryption of the plaintext to be encrypted by using the zero ciphertext (namely direct summation), so that the encryption process of data is greatly improved, and the training efficiency of federal learning is greatly improved.
In homomorphic encryption, the main overhead of encryption is large digital-to-analog exponentiation on a multiplication cycle group, the calculation efficiency can be greatly improved by specifically optimizing the module, in addition, according to homomorphic encryption, direct addition between a plaintext and a ciphertext can be supported to obtain the ciphertext, and the ciphertext can also be regarded as an encryption process of the plaintext. And the modular exponential operation is not involved any more, but the modular multiplication operation is changed into one time, and the efficiency is very high. And when the ciphertext participating in the addition operation is the ciphertext of 0, the ciphertext decryption obtained after the addition is equal to the plaintext participating in the addition operation.
In addition, because if only one ciphertext of 0 is used, the encrypted ciphertext of the data is certain and cannot meet the CPA security requirement, different ciphertexts of 0 should be generated as much as possible (homomorphic encryption algorithms are generally random encryption schemes, i.e., ciphertexts of 0 are different each time).
In the embodiment of the application, the number of large digital-to-analog power operations in real-time homomorphic encryption can be reduced, and the encryption efficiency of the real-time homomorphic encryption is greatly improved.
In summary, according to the embodiment of the application, on the premise that the accuracy and the safety of the federal learning model are not lost, the efficiency of real-time homomorphic encryption is effectively improved by designing a homomorphic encryption scheme supporting offline calculation, and then the training efficiency of federal learning is improved.
It can be seen that the homomorphic encryption processing method described in the embodiments of the present application, by reading the first zero ciphertext, and obtaining P second zero ciphertexts which are reserved recently, wherein P is a positive integer, detecting whether the first zero cipher text is a new zero cipher text, when the first zero ciphertext is a new zero ciphertext, encrypting the plaintext to be encrypted according to the first zero ciphertext to obtain a first ciphertext, when the first zero ciphertext is not the new zero ciphertext, Q second zero ciphertexts are selected from the P second zero ciphertexts, Q is a positive integer less than or equal to P, the plaintext to be encrypted is encrypted according to the Q second zero ciphertexts to obtain a second ciphertext, in the homomorphic encryption process, because the zero ciphertext is adopted to realize encryption, the modular exponentiation operation in the encryption process can be replaced by modular multiplication operation, so that the direct modular exponentiation operation is reduced, the high-efficiency lossless homomorphic encryption is realized, and the encryption efficiency is improved.
Referring to fig. 5 in a manner consistent with the embodiment shown in fig. 2, fig. 5 is a schematic flowchart of a homomorphic encryption processing method provided in an embodiment of the present application, and is applied to an electronic device, where as shown in the figure, the homomorphic encryption processing method includes:
501. reading a first zero ciphertext and acquiring P second zero ciphertexts from a ciphertext storage center, wherein M second zero ciphertexts are stored in the ciphertext storage center in advance, each second zero ciphertext of the M second zero ciphertexts is obtained by encrypting 0 through a public key by a zero ciphertext system, M is a positive integer greater than or equal to P, and P is a positive integer; the public key is a homomorphic encryption public key, the public key is generated by a secret key generation center, and the zero ciphertext system is an offline system.
502. And detecting whether the first zero ciphertext is a new zero ciphertext.
503. And when the first zero ciphertext is the new zero ciphertext, encrypting the plaintext to be encrypted according to the first zero ciphertext to obtain a first ciphertext.
504. And when the first zero ciphertext is not the new zero ciphertext, selecting Q second zero ciphertexts from the P second zero ciphertexts, wherein Q is a positive integer less than or equal to P.
505. And encrypting the plaintext to be encrypted according to the Q second zero ciphertexts to obtain a second ciphertext.
The detailed description of steps 501 to 505 may refer to the corresponding steps of the homomorphic encryption processing method described in fig. 2, and will not be repeated herein.
It can be seen that, in the homomorphic encryption processing method described in the embodiment of the present application, the addition operation between the plaintext to be encrypted and a specific ciphertext (zero ciphertext) is used to encrypt the plaintext, so that the modular exponentiation operation in the encryption process is replaced by the modular multiplication operation, the direct modular exponentiation operation is reduced, the efficient lossless homomorphic encryption scheme is implemented, and the training efficiency of federal learning is improved. Meanwhile, in consideration of the security of the encryption scheme, in the embodiment of the application, the encryption process of the plaintext is divided into two parts, namely the specific ciphertext generation part and the ciphertext addition part, and the specific ciphertext generation part does not depend on plaintext data to be encrypted, so that the encryption process can be completed offline. The random encryption algorithm based on the offline specific ciphertext generation and the online plaintext encryption can still meet the security requirement of CPA (chosen plaintext attack).
Referring to fig. 6 in keeping with the above embodiments, fig. 6 is a schematic structural diagram of an electronic device according to an embodiment of the present application, where the electronic device includes a processor, a memory, a communication interface, and one or more programs, and the one or more programs are applied to the electronic device, and are stored in the memory and configured to be executed by the processor, and in an embodiment of the present application, the programs include instructions for performing the following steps:
reading a first zero ciphertext and acquiring P second zero ciphertexts which are reserved recently, wherein P is a positive integer;
detecting whether the first zero ciphertext is a new zero ciphertext;
when the first zero ciphertext is a new zero ciphertext, encrypting a plaintext to be encrypted according to the first zero ciphertext to obtain a first ciphertext;
when the first zero ciphertext is not a new zero ciphertext, selecting Q second zero ciphertexts from the P second zero ciphertexts, wherein Q is a positive integer less than or equal to P;
and encrypting the plaintext to be encrypted according to the Q second zero ciphertexts to obtain a second ciphertext.
Optionally, in the aspect of obtaining the P second zero ciphertexts that are most recently reserved, the program includes instructions for performing the following steps:
and obtaining the P second zero ciphertexts from a cipher text storage center, wherein the cipher text storage center stores M second zero cipher texts in advance, each second zero cipher text in the M second zero cipher texts is obtained by encrypting 0 through a public key by a zero cipher text system, and M is a positive integer greater than or equal to P.
Optionally, the public key is a homomorphic encryption public key, and the public key is generated by a key generation center.
Optionally, the zero ciphertext system is an offline system or an online system.
Optionally, in the aspect of selecting Q second zero ciphertexts from the P second zero ciphertexts, the program includes instructions for performing the following steps:
acquiring target attribute information of the plaintext to be encrypted;
determining the distribution quantity of second zero ciphertexts corresponding to the target attribute information to obtain Q;
and selecting the Q second zero ciphertexts from the P second zero ciphertexts.
Optionally, in the aspect that the plaintext to be encrypted is encrypted according to the Q second zero ciphertexts to obtain a second cipher text, the program includes instructions for executing the following steps:
dividing the plaintext to be encrypted into N sub-plaintext, wherein N is an integer greater than 1, and Q is greater than or equal to N;
dividing the Q second zero ciphertexts into N zero cipher text groups, wherein each zero cipher text group comprises at least one second zero cipher text;
encrypting the N sub-plaintexts according to the N zero ciphertext groups to obtain N ciphertexts;
and determining the second ciphertext according to the N ciphertexts.
It can be seen that, in the electronic device described in this embodiment of the present application, by reading a first zero ciphertext and obtaining P second zero ciphertexts that are recently reserved, where P is a positive integer, it is detected whether the first zero ciphertext is a new zero ciphertext, when the first zero ciphertext is the new zero ciphertext, the plaintext to be encrypted is encrypted according to the first zero ciphertext to obtain the first ciphertext, when the first zero ciphertext is not the new zero ciphertext, Q second zero ciphertexts are selected from the P second zero ciphertexts, Q is a positive integer less than or equal to P, and the plaintext to be encrypted is encrypted according to the Q second zero ciphertexts to obtain the second ciphertext.
Fig. 7 is a block diagram showing functional units of a homomorphic encryption processing apparatus 700 according to an embodiment of the present application. The homomorphic encryption processing apparatus 700 is applied to an electronic device, and the apparatus 700 includes: a zero ciphertext acquisition unit 701, a detection unit 702, a first encryption unit 703, and a second encryption unit 704, wherein,
the zero ciphertext obtaining unit 701 is configured to read a first zero ciphertext and obtain P second zero ciphertexts that are recently reserved, where P is a positive integer;
the detecting unit 702 is configured to detect whether the first zero ciphertext is a new zero ciphertext;
the first encryption unit 703 is configured to encrypt a plaintext to be encrypted according to the first zero ciphertext to obtain a first ciphertext when the first zero ciphertext is a new zero ciphertext;
the second encrypting unit 704 is configured to, when the first zero ciphertext is not a new zero ciphertext, select Q second zero ciphertexts from the P second zero ciphertexts, where Q is a positive integer less than or equal to P; and encrypting the plaintext to be encrypted according to the Q second zero ciphertexts to obtain a second ciphertext.
Optionally, in the aspect of obtaining the P second zero ciphertexts that are retained recently, the zero cipher text obtaining unit 701 is specifically configured to:
and obtaining the P second zero ciphertexts from a cipher text storage center, wherein the cipher text storage center stores M second zero cipher texts in advance, each second zero cipher text in the M second zero cipher texts is obtained by encrypting 0 through a public key by a zero cipher text system, and M is a positive integer greater than or equal to P.
Optionally, the public key is a homomorphic encryption public key, and the public key is generated by a key generation center.
Optionally, the zero ciphertext system is an offline system or an online system.
Optionally, in the aspect of selecting Q second zero ciphertexts from the P second zero ciphertexts, the second encryption unit 704 is specifically configured to:
acquiring target attribute information of the plaintext to be encrypted;
determining the distribution quantity of second zero ciphertexts corresponding to the target attribute information to obtain Q;
and selecting the Q second zero ciphertexts from the P second zero ciphertexts.
Optionally, in the aspect that the plaintext to be encrypted is encrypted according to the Q second zero ciphertexts to obtain a second cipher text, the second encryption unit 704 is specifically configured to:
dividing the plaintext to be encrypted into N sub-plaintext, wherein N is an integer greater than 1, and Q is greater than or equal to N;
dividing the Q second zero ciphertexts into N zero cipher text groups, wherein each zero cipher text group comprises at least one second zero cipher text;
encrypting the N sub-plaintexts according to the N zero ciphertext groups to obtain N ciphertexts;
and determining the second ciphertext according to the N ciphertexts.
It can be seen that the homomorphic encryption processing apparatus described in the embodiment of the present application, by reading the first zero ciphertext, and obtaining P second zero ciphertexts which are reserved recently, wherein P is a positive integer, detecting whether the first zero cipher text is a new zero cipher text, when the first zero ciphertext is a new zero ciphertext, encrypting the plaintext to be encrypted according to the first zero ciphertext to obtain a first ciphertext, when the first zero ciphertext is not the new zero ciphertext, Q second zero ciphertexts are selected from the P second zero ciphertexts, Q is a positive integer less than or equal to P, the plaintext to be encrypted is encrypted according to the Q second zero ciphertexts to obtain a second ciphertext, in the homomorphic encryption process, because the zero ciphertext is adopted to realize encryption, the modular exponentiation operation in the encryption process can be replaced by modular multiplication operation, so that the direct modular exponentiation operation is reduced, the high-efficiency lossless homomorphic encryption is realized, and the encryption efficiency is improved.
It can be understood that the functions of each program module of the homomorphic encryption processing apparatus in this embodiment can be specifically implemented according to the method in the foregoing method embodiment, and the specific implementation process thereof may refer to the related description of the foregoing method embodiment, which is not described herein again.
Embodiments of the present application also provide a computer storage medium, where the computer storage medium stores a computer program for electronic data exchange, the computer program enabling a computer to execute part or all of the steps of any one of the methods described in the above method embodiments, and the computer includes an electronic device.
Embodiments of the present application also provide a computer program product comprising a non-transitory computer readable storage medium storing a computer program operable to cause a computer to perform some or all of the steps of any of the methods as described in the above method embodiments. The computer program product may be a software installation package, the computer comprising an electronic device.
It should be noted that, for simplicity of description, the above-mentioned method embodiments are described as a series of acts or combination of acts, but those skilled in the art will recognize that the present application is not limited by the order of acts described, as some steps may occur in other orders or concurrently depending on the application. Further, those skilled in the art should also appreciate that the embodiments described in the specification are preferred embodiments and that the acts and modules referred to are not necessarily required in this application.
In the foregoing embodiments, the descriptions of the respective embodiments have respective emphasis, and for parts that are not described in detail in a certain embodiment, reference may be made to related descriptions of other embodiments.
In the embodiments provided in the present application, it should be understood that the disclosed apparatus may be implemented in other manners. For example, the above-described embodiments of the apparatus are merely illustrative, and for example, the above-described division of the units is only one type of division of logical functions, and other divisions may be realized in practice, for example, a plurality of units or components may be combined or integrated into another system, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection of some interfaces, devices or units, and may be an electric or other form.
The units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
In addition, functional units in the embodiments of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit. The integrated unit can be realized in a form of hardware, and can also be realized in a form of a software functional unit.
The integrated unit may be stored in a computer readable memory if it is implemented in the form of a software functional unit and sold or used as a stand-alone product. Based on such understanding, the technical solution of the present application may be substantially implemented or a part of or all or part of the technical solution contributing to the prior art may be embodied in the form of a software product stored in a memory, and including several instructions for causing a computer device (which may be a personal computer, a server, or a network device) to execute all or part of the steps of the above-mentioned method of the embodiments of the present application. And the aforementioned memory comprises: a U-disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a removable hard disk, a magnetic or optical disk, and other various media capable of storing program codes.
Those skilled in the art will appreciate that all or part of the steps in the methods of the above embodiments may be implemented by associated hardware instructed by a program, which may be stored in a computer-readable memory, which may include: flash Memory disks, Read-Only memories (ROMs), Random Access Memories (RAMs), magnetic or optical disks, and the like.
The foregoing detailed description of the embodiments of the present application has been presented to illustrate the principles and implementations of the present application, and the above description of the embodiments is only provided to help understand the method and the core concept of the present application; meanwhile, for a person skilled in the art, according to the idea of the present application, there may be variations in the specific embodiments and the application scope, and in summary, the content of the present specification should not be construed as a limitation to the present application.

Claims (10)

1. A homomorphic encryption processing method, the method comprising:
reading a first zero ciphertext and acquiring P second zero ciphertexts which are reserved recently, wherein P is a positive integer;
detecting whether the first zero ciphertext is a new zero ciphertext;
when the first zero ciphertext is a new zero ciphertext, encrypting a plaintext to be encrypted according to the first zero ciphertext to obtain a first ciphertext;
when the first zero ciphertext is not a new zero ciphertext, selecting Q second zero ciphertexts from the P second zero ciphertexts, wherein Q is a positive integer less than or equal to P;
and encrypting the plaintext to be encrypted according to the Q second zero ciphertexts to obtain a second ciphertext.
2. The method of claim 1, wherein obtaining the most recently reserved P second zero ciphertexts comprises:
and obtaining the P second zero ciphertexts from a cipher text storage center, wherein the cipher text storage center stores M second zero cipher texts in advance, each second zero cipher text in the M second zero cipher texts is obtained by encrypting 0 through a public key by a zero cipher text system, and M is a positive integer greater than or equal to P.
3. The method of claim 2, wherein the public key is a homomorphic cryptographic public key generated by a key generation center.
4. The method of claim 2 or 3, wherein the zero cipher text system is an offline system or an online system.
5. The method according to any one of claims 1 to 3, wherein the selecting Q second zero ciphertexts from the P second zero ciphertexts comprises:
acquiring target attribute information of the plaintext to be encrypted;
determining the distribution quantity of second zero ciphertexts corresponding to the target attribute information to obtain Q;
and selecting the Q second zero ciphertexts from the P second zero ciphertexts.
6. The method according to any one of claims 1 to 3, wherein the encrypting the plaintext to be encrypted according to the Q second zero ciphertexts to obtain a second cipher text comprises:
dividing the plaintext to be encrypted into N sub-plaintext, wherein N is an integer greater than 1, and Q is greater than or equal to N;
dividing the Q second zero ciphertexts into N zero cipher text groups, wherein each zero cipher text group comprises at least one second zero cipher text;
encrypting the N sub-plaintexts according to the N zero ciphertext groups to obtain N ciphertexts;
and determining the second ciphertext according to the N ciphertexts.
7. A homomorphic cryptographic processing apparatus, characterized in that the apparatus comprises: a zero ciphertext obtaining unit, a detecting unit, a first encrypting unit and a second encrypting unit, wherein,
the zero ciphertext obtaining unit is configured to read a first zero ciphertext and obtain P second zero ciphertexts which are recently reserved, where P is a positive integer;
the detection unit is used for detecting whether the first zero ciphertext is a new zero ciphertext;
the first encryption unit is used for encrypting a plaintext to be encrypted according to the first zero ciphertext to obtain a first ciphertext when the first zero ciphertext is a new zero ciphertext;
the second encryption unit is configured to select Q second zero ciphertexts from the P second zero ciphertexts when the first zero ciphertext is not a new zero ciphertext, where Q is a positive integer less than or equal to P; and encrypting the plaintext to be encrypted according to the Q second zero ciphertexts to obtain a second ciphertext.
8. The apparatus according to claim 7, wherein in said obtaining P second zero ciphertexts that have been retained recently, the zero cipher text obtaining unit is specifically configured to:
and obtaining the P second zero ciphertexts from a cipher text storage center, wherein the cipher text storage center stores M second zero cipher texts in advance, each second zero cipher text in the M second zero cipher texts is obtained by encrypting 0 through a public key by a zero cipher text system, and M is a positive integer greater than or equal to P.
9. An electronic device comprising a processor, a memory for storing one or more programs and configured for execution by the processor, the programs comprising instructions for performing the steps in the method of any of claims 1-6.
10. A computer-readable storage medium, characterized in that a computer program for electronic data exchange is stored, wherein the computer program causes a computer to perform the method according to any one of claims 1-6.
CN202111576363.6A 2021-12-22 2021-12-22 Homomorphic encryption processing method and related equipment Active CN113965314B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202111576363.6A CN113965314B (en) 2021-12-22 2021-12-22 Homomorphic encryption processing method and related equipment
CN202210132649.3A CN114444108A (en) 2021-12-22 2021-12-22 Homomorphic encryption processing method and related equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111576363.6A CN113965314B (en) 2021-12-22 2021-12-22 Homomorphic encryption processing method and related equipment

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202210132649.3A Division CN114444108A (en) 2021-12-22 2021-12-22 Homomorphic encryption processing method and related equipment

Publications (2)

Publication Number Publication Date
CN113965314A true CN113965314A (en) 2022-01-21
CN113965314B CN113965314B (en) 2022-03-11

Family

ID=79473718

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202210132649.3A Pending CN114444108A (en) 2021-12-22 2021-12-22 Homomorphic encryption processing method and related equipment
CN202111576363.6A Active CN113965314B (en) 2021-12-22 2021-12-22 Homomorphic encryption processing method and related equipment

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN202210132649.3A Pending CN114444108A (en) 2021-12-22 2021-12-22 Homomorphic encryption processing method and related equipment

Country Status (1)

Country Link
CN (2) CN114444108A (en)

Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105049208A (en) * 2015-06-15 2015-11-11 浙江金大科技有限公司 Data encryption method based on dual difficulties
CN109409114A (en) * 2018-11-05 2019-03-01 重庆邮电大学 Based on easy sympletic structure can parallel figure encryption method
CN109818752A (en) * 2019-02-27 2019-05-28 矩阵元技术(深圳)有限公司 Credit scoring generation method, device, computer equipment and storage medium
CN110348231A (en) * 2019-06-18 2019-10-18 阿里巴巴集团控股有限公司 Realize the data homomorphism encryption and decryption method and device of secret protection
CN110601814A (en) * 2019-09-24 2019-12-20 深圳前海微众银行股份有限公司 Federal learning data encryption method, device, equipment and readable storage medium
CN111342950A (en) * 2019-12-16 2020-06-26 中国人民武装警察部队工程大学 BGV type multi-key fully homomorphic encryption method with directional decryption function
CN111526148A (en) * 2020-04-26 2020-08-11 中山大学 System and method for safely denoising encrypted audio in cloud computing environment
CN112149160A (en) * 2020-08-28 2020-12-29 山东大学 Homomorphic pseudo-random number-based federated learning privacy protection method and system
WO2021147620A1 (en) * 2020-01-23 2021-07-29 华为技术有限公司 Communication method, device, and system based on model training
CN113271209A (en) * 2021-04-21 2021-08-17 山东大学 Trustable public key encryption system and method based on non-interactive zero-knowledge proof
CN113516253A (en) * 2021-07-02 2021-10-19 深圳市洞见智慧科技有限公司 Data encryption optimization method and device in federated learning
CN113542228A (en) * 2021-06-18 2021-10-22 腾讯科技(深圳)有限公司 Data transmission method and device based on federal learning and readable storage medium
CN113688408A (en) * 2021-08-03 2021-11-23 华东师范大学 Maximum information coefficient method based on safe multi-party calculation
CN113746620A (en) * 2021-09-13 2021-12-03 深圳前海微众银行股份有限公司 Homomorphic encryption method, apparatus, medium, and computer program product

Patent Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105049208A (en) * 2015-06-15 2015-11-11 浙江金大科技有限公司 Data encryption method based on dual difficulties
CN109409114A (en) * 2018-11-05 2019-03-01 重庆邮电大学 Based on easy sympletic structure can parallel figure encryption method
CN109818752A (en) * 2019-02-27 2019-05-28 矩阵元技术(深圳)有限公司 Credit scoring generation method, device, computer equipment and storage medium
CN110348231A (en) * 2019-06-18 2019-10-18 阿里巴巴集团控股有限公司 Realize the data homomorphism encryption and decryption method and device of secret protection
CN110601814A (en) * 2019-09-24 2019-12-20 深圳前海微众银行股份有限公司 Federal learning data encryption method, device, equipment and readable storage medium
CN111342950A (en) * 2019-12-16 2020-06-26 中国人民武装警察部队工程大学 BGV type multi-key fully homomorphic encryption method with directional decryption function
WO2021147620A1 (en) * 2020-01-23 2021-07-29 华为技术有限公司 Communication method, device, and system based on model training
CN111526148A (en) * 2020-04-26 2020-08-11 中山大学 System and method for safely denoising encrypted audio in cloud computing environment
CN112149160A (en) * 2020-08-28 2020-12-29 山东大学 Homomorphic pseudo-random number-based federated learning privacy protection method and system
CN113271209A (en) * 2021-04-21 2021-08-17 山东大学 Trustable public key encryption system and method based on non-interactive zero-knowledge proof
CN113542228A (en) * 2021-06-18 2021-10-22 腾讯科技(深圳)有限公司 Data transmission method and device based on federal learning and readable storage medium
CN113516253A (en) * 2021-07-02 2021-10-19 深圳市洞见智慧科技有限公司 Data encryption optimization method and device in federated learning
CN113688408A (en) * 2021-08-03 2021-11-23 华东师范大学 Maximum information coefficient method based on safe multi-party calculation
CN113746620A (en) * 2021-09-13 2021-12-03 深圳前海微众银行股份有限公司 Homomorphic encryption method, apparatus, medium, and computer program product

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
JING-LI HAN ECT.: "Secure Multiparty Computation via Fully Homomorphic Encryption Scheme", 《 2018 EIGHTH INTERNATIONAL CONFERENCE ON INSTRUMENTATION & MEASUREMENT, COMPUTER, COMMUNICATION AND CONTROL (IMCCC)》 *
仝秦玮等: ""一种基于智能合约的全同态加密方法"", 《网络空间安全》 *
魏占祯等: "RSA乘法同态的数据库密文检索实现", 《哈尔滨工程大学学报》 *

Also Published As

Publication number Publication date
CN113965314B (en) 2022-03-11
CN114444108A (en) 2022-05-06

Similar Documents

Publication Publication Date Title
US20200177366A1 (en) Homomorphic data encryption method and apparatus for implementing privacy protection
CN110689349B (en) Transaction hash value storage and searching method and device in blockchain
CN110457945B (en) List query method, query party device, service party device and storage medium
US9602280B2 (en) System and method for content encryption in a key/value store
CN111698088B (en) Key alternation method, key alternation device, electronic equipment and medium
CN112184444B (en) Method, device, equipment and medium for processing information based on characteristics of information
CN110312054B (en) Image encryption and decryption method, related device and storage medium
CN105721156A (en) General Encoding Functions For Modular Exponentiation Encryption Schemes
CN115269938B (en) Homomorphic encryption-based keyword track hiding query method, system and related device
CN113691374B (en) Data encryption method and device, storage medium and electronic equipment
CN116527235A (en) Data encryption method and device based on key rotation and electronic equipment
CN112069525A (en) Encryption method, device and equipment for generating key based on attribute of information
CN113055153B (en) Data encryption method, system and medium based on fully homomorphic encryption algorithm
CN114417374A (en) Intelligent contract business card method, device, equipment and storage medium based on block chain
CN111798236B (en) Transaction data encryption and decryption methods, devices and equipment
CN111475690B (en) Character string matching method and device, data detection method and server
CN111526000B (en) Parallel part homomorphic encryption method and system based on confusion model projection
CN113965314B (en) Homomorphic encryption processing method and related equipment
CN112202555A (en) Information processing method, device and equipment for generating random number based on attribute of information
CN115544572A (en) Multi-party privacy data and financial privacy data processing method based on privacy protection
Liu et al. A parallel encryption algorithm for dual-core processor based on chaotic map
CN106570410B (en) Data encryption method, data decryption method, device and system
CN114006689B (en) Data processing method, device and medium based on federal learning
CN114817970B (en) Data analysis method and system based on data source protection and related equipment
CN116401253A (en) Data interconnection collision method, device, equipment and medium based on artificial intelligence

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