Quantum random number distribution method based on homomorphic encryption algorithm

By generating a public and private key pair for each session through a homomorphic encryption algorithm and combining homomorphic encryption with integrity authentication, the problem of low key security in traditional encryption algorithms is solved, and the secure distribution of quantum random numbers on the cloud platform is realized.

CN117061087BActive Publication Date: 2025-09-12CAS QUANTUM NETWORK CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202311158723.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-09-08
Publication Date
2025-09-12
Estimated Expiration
2043-09-08

AI Technical Summary

Technical Problem

Existing technologies have the problem of low key security when distributing quantum random numbers, especially when using traditional encryption algorithms and preset symmetric keys. The risk of key leakage is high, and the risk of plaintext exposure increases when performing integrity authentication on cloud platforms.

Method used

A homomorphic encryption algorithm is used to generate a unique public-private key pair for each session, and combined with homomorphic encryption, homomorphic decryption and integrity authentication to ensure that quantum random numbers are transmitted and processed in an encrypted state, avoiding key pre-setting and plaintext exposure.

Benefits of technology

It improves the confidentiality and security of keys, reduces the risk of quantum random number plaintext exposure on cloud platforms, and realizes secure distribution in cloud computing environments.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117061087B_ABST
    Figure CN117061087B_ABST
Patent Text Reader

Abstract

The present invention provides a quantum random number distribution method based on a homomorphic encryption algorithm. The method includes a quantum random number receiving end generating a public-private key pair required by the homomorphic encryption algorithm. The quantum random number receiving end sends a request data date, a public key pubKey, and an identity identifier of the quantum random number receiving end to a quantum random number distribution server. After receiving the date and pubKey from the quantum random number receiving end, the quantum random number distribution server forwards the date and pubKey to a quantum random number generator. The present invention provides a quantum random number distribution method based on homomorphic encryption, aiming to address the low key security level of traditional encryption algorithms in the process of distributing quantum random numbers, as well as the risk of exposing the quantum random number plaintext when quantum communication technology is combined with cloud computing and the quantum random number distribution service is deployed on a cloud platform for integrity authentication, thereby achieving the secure distribution of quantum random numbers using the capabilities of cloud computing.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of quantum communication, and in particular to a quantum random number distribution method based on a homomorphic encryption algorithm. Background Art

[0002] While random numbers generated by traditional computer systems are often pseudo-random, quantum communication technology can generate truly random values ​​that are unpredictable and non-repeatable. With the rise of cloud computing, combining quantum communication technology with cloud computing has become a trend. However, leveraging the powerful computing power of cloud computing to securely distribute and protect these valuable quantum random numbers has become a challenge.

[0003] Existing technical solutions use traditional encryption algorithms and preset symmetric keys to encrypt quantum random numbers and securely transmit them to the recipient through a distribution mechanism. This technical solution first selects a commonly used and secure traditional encryption algorithm, such as AES (Advanced Encryption Standard) or DES (Data Encryption Standard). A symmetric key is then generated, ensuring its length and complexity are sufficiently high to increase the difficulty of cracking. Next, the quantum random number is encrypted using the selected traditional encryption algorithm and the preset symmetric key. By applying the encryption algorithm's operations and transformations, the quantum random number is converted into encrypted data, making it impossible for unauthorized individuals to decipher. Finally, the encrypted quantum random number is transmitted to the recipient through a suitable distribution mechanism. Upon receiving the encrypted data, the recipient can decrypt it using the preset symmetric key and the same encryption algorithm to recover the original quantum random number.

[0004] Existing technical solutions require the sharing and pre-setting of symmetric keys, ensuring that the recipient possesses the same key. Key pre-setting and updating require a sound process and policy to manage. Because of the use of a fixed, pre-set symmetric key, once the key is compromised, an attacker can easily decrypt the encrypted quantum random number, compromising data confidentiality and threatening key security. In existing technical solutions, integrity verification of quantum random numbers requires decrypting the plaintext before full verification can be performed. This means that if quantum random number distribution services are deployed on a cloud platform, the risk of potential information leakage increases, increasing the risk of exposing the plaintext quantum random numbers to third parties. Summary of the Invention

[0005] In order to solve the above problems, the present invention provides a quantum random number distribution method based on a homomorphic encryption algorithm, the method comprising the following steps:

[0006] Step 1: The quantum random number receiver generates the public-private key pair required for the homomorphic encryption algorithm, which includes a public key pubKey and a private key privKey. A new public-private key pair is generated each time a quantum random number is requested, ensuring that the encryption key for each session is unique.

[0007] Step 2: The quantum random number receiving end sends the request data date, public key pubKey and the identity of the quantum random number receiving end to the quantum random number distribution server, where the request data date includes the number of quantum random numbers to be applied for and the length of the quantum random number. After receiving the date and pubKey from the quantum random number receiving end, the quantum random number distribution server forwards the date and pubKey to the quantum random number generator;

[0008] Step 3: After receiving the date and pubKey from the quantum random number distribution server, the quantum random number generator generates the corresponding quantum random number quaKey according to the number of quantum random numbers to be applied for and the length of the quantum random number in the date;

[0009] Step 4: The quantum random number generator uses the public key pubKey as the encryption key of the homomorphic encryption algorithm and encrypts the quantum random number quaKey using the homomorphic encryption function Encrypt(quaKey,pubKey) to obtain the ciphertext quaKey';

[0010] Step 5: The quantum random number generator uses the integrity authentication method to perform an integrity authentication operation on quaKey, and the integrity authentication result is auKey;

[0011] Step 6: The quantum random number generator sends quaKey', auKey, integrity authentication method Auth(), and homomorphic encryption method to the quantum random number distribution server;

[0012] Step 7: The quantum random number distribution server verifies the encrypted quantum random number quaKey' using the integrity authentication method Auth() and compares the result with auKey: if the two are equal, the quantum random number distribution server sends quaKey' to the quantum random number receiver; if the two are not equal, the quantum random number distribution server obtains the quantum random number from the quantum random number generator again;

[0013] Step 8: The quantum random number receiving end applies the integrity authentication method Auth() to the encrypted quantum random number quaKey' and compares the result with auKey: If the two are equal, the corresponding decryption algorithm Decrypt is selected according to the homomorphic encryption method adopted, and the encrypted quantum random number quaKey' is decrypted using the private key privKey, that is, quaKey = Decrypt(quaKey', privKey); if the two are not equal, the request to obtain the quantum random number is re-initiated.

[0014] In one embodiment, the homomorphic encryption algorithm is a Paillier homomorphic encryption algorithm or an ElGamal homomorphic encryption algorithm.

[0015] In one embodiment, in step 1, after generating a public-private key pair of a public key pubKey and a private key privKey, the quantum random number receiving end securely stores the public key pubKey and the private key privKey in an encryption hardware device.

[0016] In one embodiment, in step 1, after generating a public-private key pair of a public key pubKey and a private key privKey, the quantum random number receiving end backs up and stores the public-private key pair in different locations.

[0017] In one embodiment, before step 2, the quantum random number receiving end selects a suitable hash algorithm to perform integrity authentication operation on the request data date and the public key pubKey.

[0018] In one embodiment, in step 2, after the quantum random number distribution server receives the data from the quantum random number receiving end, it performs data integrity authentication and identity authentication on the data. After the data is verified, the date, public key pubKey, and the identity of the quantum random number distribution server are forwarded to the quantum random number generator.

[0019] In one embodiment, in step 3, after the quantum random number generator receives the information from the quantum random number distribution server, it performs data integrity authentication and identity authentication on the data.

[0020] In one embodiment, in step 8, after receiving the data from the quantum random number distribution server, the quantum random number receiving end finds the corresponding private key privKey through the public key pubKey.

[0021] In one embodiment, the quantum random number distribution server in the above method is deployed on a cloud platform.

[0022] The present invention provides a quantum random number distribution method based on homomorphic encryption, which aims to solve the problems of low key security level (such as key pre-setting and key fixation) in the process of distributing quantum random numbers using traditional encryption algorithms, and the risk of exposing the plaintext of quantum random numbers when the quantum random number distribution service is deployed on a cloud platform for integrity authentication when quantum communication technology is combined with cloud computing, thereby achieving the goal of securely distributing quantum random numbers using the capabilities of cloud computing.

[0023] By introducing homomorphic encryption technology, the present invention organically combines the processes of public-private key pair generation, homomorphic encryption, homomorphic decryption, and integrity authentication, providing a more secure method for quantum random number distribution in a cloud platform.

[0024] In this invention, because session encryption keys are randomly generated, rather than using fixed, preset keys, this enhances the confidentiality and security of the encryption keys. Compared to fixed keys, randomly generated keys are more difficult to crack or infer. Therefore, during the quantum random number distribution process, the risk of exposing encryption keys to the cloud platform is avoided.

[0025] Homomorphic encryption is an advanced method for protecting data security, allowing computations to be performed on data in an encrypted state without the need for decryption. In this method, new public and private keys are generated each time a quantum random number is distributed, creating a "one-time, one-pad" (OTP) mechanism. Furthermore, homomorphic encryption algorithms are applied to the data encryption process, ensuring both data security and privacy. Encrypting and then distributing quantum random numbers through homomorphic encryption ensures the security of the quantum random number transmission process.

[0026] To ensure secure distribution, the solution also incorporates an integrity authentication mechanism. Leveraging digital signature technology, it can verify that the received distribution results are complete and untampered with. This ensures data integrity and credibility during the distribution process, minimizing the risk of tampering.

[0027] By employing a method of performing integrity authentication in a ciphertext state, when quantum random number distribution services are deployed on cloud platforms, the potential risk of plaintext exposure during integrity authentication is effectively minimized. This security mechanism maintains the encryption of communication content even during data verification in the cloud, preventing malicious attackers from accessing sensitive information. This method therefore provides a higher level of data protection and stronger security for quantum random number distribution services on cloud platforms.

[0028] Furthermore, the application of this invention in cloud platforms also enhances security. Cloud platforms offer a high degree of security and scalability, effectively protecting the distribution process. Furthermore, the powerful computing capabilities of cloud platforms can also meet the needs of complex computations such as homomorphic encryption and integrity authentication.

[0029] In summary, the present invention provides a more secure solution for quantum random number distribution in cloud platforms by introducing homomorphic encryption technology and combining the generation of public-private key pairs, homomorphic encryption, homomorphic decryption, integrity authentication and other processes.

[0030] The following is a list of abbreviations, English and key term definitions used in this invention:

[0031] Network channels: 4G network, 5G network, and the Internet.

[0032] Key: The key information or parameters that control the operation of a cryptographic algorithm.

[0033] Quantum random number: A random number generated by utilizing the uncertainty principle of quantum mechanics, which has true randomness.

[0034] Quantum communication technology: Quantum communication, a key branch of quantum information science, is a communication technology that uses quantum states as information carriers for information exchange. Quantum Key Distribution (QKD) is the first practical quantum information technology and a key area of ​​quantum communication. QKD enables the sharing of secret keys between spatially separated users in an information-theoretically secure manner.

[0035] Homomorphic encryption: It is a special encryption technology that allows specific computing operations to be performed on ciphertext without decrypting the ciphertext. The result obtained is the same as the result obtained by performing the same operation on the plaintext.

[0036] Client: quantum random number receiver.

[0037] Server: Quantum random number distribution server.

[0038] Cloud platform: public cloud, private cloud, and hybrid cloud.

[0039] Encrypt: Homomorphic encryption function.

[0040] Decrypt: Homomorphic decryption function.

[0041] Auth: Performs integrity authentication function in ciphertext state.

[0042] VPN: VPN (Virtual Private Network) is an encrypted tunnel established through a public network to ensure users' anonymity, secure access and data transmission on the Internet.

[0043] HTTPS: HTTPS (Hypertext Transfer Protocol Secure) is a secure communication protocol that protects data transmission through encryption and is used to securely transmit sensitive information on the Internet. BRIEF DESCRIPTION OF THE DRAWINGS

[0044] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the following briefly introduces the drawings required for use in the embodiments. Obviously, the drawings described below are only some embodiments recorded in the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.

[0045] Figure 1 This is a schematic diagram of the quantum random number distribution method based on homomorphic encryption of the present invention. DETAILED DESCRIPTION

[0046] In order to enable those skilled in the art to better understand the technical solutions in this application, the present invention will be further described below in conjunction with embodiments. Obviously, the embodiments described are only part of the embodiments of this application, rather than all the embodiments. Based on the embodiments in this application, all other embodiments obtained by those of ordinary skill in the art without making creative efforts should fall within the scope of protection of this application. The present invention will be further described below in conjunction with the accompanying drawings and embodiments.

[0047] like Figure 1 As shown, the quantum random number distribution method based on the homomorphic encryption algorithm of the present invention includes the following steps.

[0048] Step 1: The quantum random number receiver (Client) generates the public-private key pair required for the homomorphic encryption algorithm, which includes a public key pubKey and a private key privKey. Each time a quantum random number is requested, a new public-private key pair is generated to ensure that the encryption key for each session is unique, achieving a "one-time, one-key" effect. This solves the problem that traditional encryption algorithms require pre-setting fixed keys when distributing quantum random numbers.

[0049] Choose an appropriate homomorphic encryption algorithm based on your needs, such as the Paillier or ElGamal homomorphic encryption algorithms. For the Paillier homomorphic encryption algorithm, the generator needs to generate two large prime numbers, p and q, and calculate n = p * q. Then, based on n, the public key pub and private key priv are generated. For the ElGamal homomorphic encryption algorithm, the generator needs to generate a large prime number, p, and a generator, g, and then calculate the public and private keys.

[0050] In some implementations, after generating a public-private key pair, the client should securely store the public key pubKey and the private key privKey in a cryptographic hardware device to enhance key security. Furthermore, backups of the public-private key pair can be stored in different locations to ensure recovery in the event of key loss or damage.

[0051] Step 2: The quantum random number receiving end sends the request data date, public key pubKey and the identity of the quantum random number receiving end to the quantum random number distribution server, where the request data date includes the number of quantum random numbers to be applied for and the length of the quantum random number. After the quantum random number distribution server receives the date and pubKey from the quantum random number receiving end, it forwards the date and pubKey to the quantum random number generator.

[0052] In some implementations, the Client selects a suitable hash algorithm to perform integrity authentication on the request data date and the public key pubKey.

[0053] In some implementations, the client sends a request data (date), a public key (pubKey), and the Clicen identifier to the server (the quantum random number distribution server) via a secure channel. The request data (date) includes the requested quantum random number quantity, quantum random number length, and integrity verification results. Sending the request data and public key to the server ensures that the server can accurately process the request and interact with the quantum random number generator. The secure channel can use secure network protocols, such as HTTPS or VPN, to ensure the confidentiality and integrity of data transmission.

[0054] Step 3: After receiving the date and pubKey from the quantum random number distribution server, the quantum random number generator generates the corresponding quantum random number quaKey according to the number of quantum random numbers to be applied for and the length of the quantum random number in the date.

[0055] In some implementations, after receiving data from the client, the server verifies the data: data integrity and identity. If the server verifies the data successfully, it forwards the date, public key pubKey, and server identity to the quantum random number generator. If the verification fails, the server returns an error message to the client, which then resends the request. As an intermediary node, the server is responsible for transmitting data and keys to ensure data security during transmission.

[0056] In some embodiments, after receiving the information from the server, the quantum random number generator will verify the data: data integrity authentication and identity authentication.

[0057] In some embodiments, after the quantum random number generator verifies the data, it generates a truly random quantum random number quaKey of the corresponding number and length based on the number and length information in the request data date. If the verification fails, the quantum random number generator returns an error message to the server, which then resends the request. The quantum random number generator uses the unpredictability of physical processes, such as the quantum state of photons or the spin state of atoms, to generate truly random and unpredictable random numbers.

[0058] In some embodiments, the quantum random number generator selects appropriate homomorphic encryption algorithm and hash algorithm (SHA256, SM3, etc.) according to requirements. The homomorphic encryption algorithm is used to encrypt the quantum random number, and the hash algorithm is used to authenticate the integrity of the quantum random number.

[0059] Step 4: The quantum random number generator uses the public key pubKey as the encryption key of the homomorphic encryption algorithm and encrypts the quantum random number quaKey using the homomorphic encryption function Encrypt(quaKey,pubKey), generating the ciphertext quaKey'. This ensures the security of the generated quantum random number during transmission. Only the client with the private key can decrypt and obtain the original quantum random number.

[0060] Step 5: The quantum random number generator performs an integrity authentication operation on quaKey using an integrity authentication method. The integrity authentication result is auKey. Integrity authentication can detect whether the data has been tampered with or damaged, ensuring the integrity of the received quantum random number.

[0061] Step 6: The quantum random number generator sends quaKey', auKey, integrity authentication method Auth(), and homomorphic encryption method to the quantum random number distribution server.

[0062] Step 7: The quantum random number distribution server applies the integrity authentication method Auth() to the encrypted quantum random number quaKey' and compares the result with auKey: if the two are equal, the quantum random number distribution server sends quaKey' to the quantum random number receiving end; if the two are not equal, the quantum random number distribution server will obtain the quantum random number from the quantum random number generator again.

[0063] After receiving the data from the quantum random number generator, the server applies the integrity authentication method Auth() to the encrypted quantum random number quaKey' and compares the result with auKey. If the two are equal, it indicates that the integrity of the received quantum random number has not been compromised, and the server sends quaKey' to the client; if the two are not equal, it indicates that the data may have been tampered with or damaged, and the server will obtain the quantum random number from the quantum random number generator again. The purpose of integrity authentication in the encrypted state is to ensure the confidentiality of the original data quaKey. In particular, when the server is deployed on a cloud platform, protecting the ciphertext state of the quantum random number and performing integrity authentication on it to avoid exposing the plaintext to the cloud platform becomes an important security consideration.

[0064] Step 8: The quantum random number receiving end applies the integrity authentication method Auth() to the encrypted quantum random number quaKey' and compares the result with auKey: If the two are equal, the corresponding decryption algorithm Decrypt is selected according to the homomorphic encryption method adopted, and the encrypted quantum random number quaKey' is decrypted using the private key privKey, that is, quaKey = Decrypt(quaKey', privKey); if the two are not equal, the request to obtain the quantum random number is re-initiated.

[0065] In some implementations, after receiving data from the Server, the Client finds the corresponding private key privKey through the public key pubKey.

[0066] It is easy for those skilled in the art to understand that, under the premise of no conflict, the above-mentioned advantageous methods can be freely combined and superimposed.

[0067] The above are merely preferred embodiments of the present invention and are not intended to limit the present invention. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of the present invention shall be included within the scope of protection of the present invention. The above are merely preferred embodiments of the present invention. It should be noted that those skilled in the art may make various improvements and variations without departing from the technical principles of the present invention, and such improvements and variations shall also be considered within the scope of protection of the present invention.

Claims

1. A quantum random number distribution method based on a homomorphic encryption algorithm, characterized in that: The method comprises the following steps: Step 1: The quantum random number receiver generates the public-private key pair required for the homomorphic encryption algorithm, which includes a public key pubKey and a private key privKey. A new public-private key pair is generated each time a quantum random number is requested, ensuring that the encryption key for each session is unique. Step 2: The quantum random number receiving end sends the request data date, public key pubKey and the identity of the quantum random number receiving end to the quantum random number distribution server, where the request data date includes the number of quantum random numbers to be applied for and the length of the quantum random number. After receiving the date and pubKey from the quantum random number receiving end, the quantum random number distribution server forwards the date and pubKey to the quantum random number generator; Step 3: After receiving the date and pubKey from the quantum random number distribution server, the quantum random number generator generates the corresponding quantum random number quaKey according to the number of quantum random numbers to be applied for and the length of the quantum random number in the date; Step 4: The quantum random number generator uses the public key pubKey as the encryption key of the homomorphic encryption algorithm and encrypts the quantum random number quaKey using the homomorphic encryption function Encrypt(quaKey,pubKey) to obtain the ciphertext quaKey'; Step 5: The quantum random number generator uses the integrity authentication method to perform an integrity authentication operation on quaKey, and the integrity authentication result is auKey; Step 6: The quantum random number generator sends quaKey', auKey, integrity authentication method Auth(), and homomorphic encryption method to the quantum random number distribution server; Step 7: The quantum random number distribution server verifies the encrypted quantum random number quaKey' using the integrity authentication method Auth() and compares the result with auKey: if the two are equal, the quantum random number distribution server sends quaKey' to the quantum random number receiver; if the two are not equal, the quantum random number distribution server obtains the quantum random number from the quantum random number generator again; Step 8: The quantum random number receiving end applies the integrity authentication method Auth() to the encrypted quantum random number quaKey' and compares the result with auKey: If the two are equal, the corresponding decryption algorithm Decrypt is selected according to the homomorphic encryption method adopted, and the encrypted quantum random number quaKey' is decrypted using the private key privKey, that is, quaKey = Decrypt(quaKey', privKey); if the two are not equal, the request to obtain the quantum random number is re-initiated.

2. The quantum random number distribution method according to claim 1, characterized in that: The homomorphic encryption algorithm is the Paillier homomorphic encryption algorithm or the ElGamal homomorphic encryption algorithm.

3. The quantum random number distribution method according to claim 1, characterized in that: In step 1, after generating a public-private key pair of a public key pubKey and a private key privKey, the quantum random number receiving end securely stores the public key pubKey and the private key privKey in an encryption hardware device.

4. The quantum random number distribution method according to claim 3, characterized in that: In step 1, after generating a public-private key pair of a public key pubKey and a private key privKey, the quantum random number receiving end stores a backup of the public-private key pair in different locations.

5. The quantum random number distribution method according to claim 1, characterized in that: Before step 2, the quantum random number receiving end selects a suitable hash algorithm to perform integrity authentication operation on the request data date and the public key pubKey.

6. The quantum random number distribution method according to claim 1, characterized in that: In step 2, after receiving the data from the quantum random number receiving end, the quantum random number distribution server performs data integrity authentication and identity authentication on the data. After the data passes the verification, the date, public key pubKey, and the identity of the quantum random number distribution server are forwarded to the quantum random number generator.

7. The quantum random number distribution method according to claim 1, characterized in that: In step 3, after receiving the information from the quantum random number distribution server, the quantum random number generator will perform data integrity authentication and identity authentication on the data.

8. The quantum random number distribution method according to claim 1, characterized in that: In step 8, after the quantum random number receiving end receives the data transmitted by the quantum random number distribution server, it finds the corresponding private key privKey through the public key pubKey.

9. The method according to any one of claims 1 to 8, characterized in that: The quantum random number distribution server is deployed on a cloud platform.

Citation Information

Patent Citations

  • Dynamic verification method of cloud storage data using lattice-based linearly homomorphic signatures

    CN106301789A

  • Quantum security multi-party computing method based on quantum homomorphic encryption

    CN113660085A