CN114915401A - Verifiable homomorphic proxy re-encryption method and system - Google Patents

Verifiable homomorphic proxy re-encryption method and system Download PDF

Info

Publication number
CN114915401A
CN114915401A CN202210514553.3A CN202210514553A CN114915401A CN 114915401 A CN114915401 A CN 114915401A CN 202210514553 A CN202210514553 A CN 202210514553A CN 114915401 A CN114915401 A CN 114915401A
Authority
CN
China
Prior art keywords
ciphertext
encryption
module
user
key
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.)
Pending
Application number
CN202210514553.3A
Other languages
Chinese (zh)
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.)
Guizhou University
Original Assignee
Guizhou University
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 Guizhou University filed Critical Guizhou University
Priority to CN202210514553.3A priority Critical patent/CN114915401A/en
Publication of CN114915401A publication Critical patent/CN114915401A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/008Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0478Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload applying multiple layers of encryption, e.g. nested tunnels or encrypting the content with a first key and then with at least a second key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

The invention relates to a verifiable homomorphic proxy re-encryption method and a verifiable homomorphic proxy re-encryption system. The invention introduces the idea of proxy re-encryption, each participant is encrypted by respective private key and then converted into the ciphertext of the cloud server, so that multi-party cloud computing can be realized, and the problem that the ciphertext under different public key encryption can not be homomorphic operated is solved; in order to meet the sharing requirements among different users, the calculation result can be selected to be sent to a designated and legal non-data provider, the one-time re-encryption technology is used again, and other users except the designated receiver can not decrypt the calculation result even if the original ciphertext of the data provider is obtained. Given a re-encryption key and a signature on the original message, the proxy can not only convert the ciphertext, but can also provide a signature of the converted ciphertext by evaluating the original signature using the re-encryption key, which can be used to verify whether the cloud server performs the correct function computation and the correctness of the function result.

Description

Verifiable homomorphic agent re-encryption method and system
Technical Field
The invention relates to the technical field of data encryption, in particular to a verifiable homomorphic proxy re-encryption method and a verifiable homomorphic proxy re-encryption system.
Background
The rapid development of networks and informatization has led to the explosive growth of data, and in order to save local resources and efficiently utilize the data, more and more organizations and users select to encrypt a large amount of data and upload the encrypted data to a cloud server for storage and processing. In order to facilitate the sharing of the ciphertext data, an agent re-encryption mechanism is usually adopted, the ciphertext file to be shared is directly converted into a ciphertext file which can be decrypted by another user through a cloud server, and the cloud server cannot obtain any bottom layer plaintext information in the process. However, the proxy re-encryption technology cannot realize the operation and processing between ciphertexts, which brings inconvenience to many practical requirements in the real world. Therefore, how to calculate ciphertext data under the condition of protecting the information security and privacy of the user is a problem which is urgently needed to be solved under the current cloud environment. The homomorphic encryption has strong cryptographic calculation capacity, so that an untrusted third party can process information in a ciphertext environment, and any information of a user is not disclosed.
The patent with application number 202011045388.9 provides a lattice-based homomorphic proxy re-encryption method for resisting collusion attack, the proxy re-encryption method of the method only relates to a layer of ciphertext, layered processing is not needed to be carried out on the ciphertext, interaction overhead is saved, but the method cannot verify the correct behavior of a server, and the private key of a user is overlarge in size and needs to occupy a larger storage space; the patent with application number 202111314232.0 provides a proxy re-encryption system and method based on double entities, and the method has the problems of more required parameters, high operation overhead, complex operation, incapability of resisting quantum attack, incapability of verifying the correctness of a server, incapability of carrying out homomorphic operation and the like.
The diversity and complexity of users in a cloud environment require homomorphic encryption technology to meet the requirements of ciphertext calculation and sharing of multiple users, but the traditional homomorphic encryption technology is only suitable for homomorphic calculation of ciphertext related to a single user, namely all ciphertexts participating in calculation belong to the same user, and the homomorphic encryption technology cannot be used when random operation is required to be performed on ciphertexts among different users. However, in many real-world scenarios, secure multi-party joint computation of data uploaded to the cloud by multiple users is generally required. When an agent has many ciphertexts sent from different authorizers and needs to perform calculation on the ciphertexts without revealing the information of the ciphertexts, the agent needs to support homomorphic operation. How to combine proxy re-encryption with homomorphic encryption is a challenging problem to design a homomorphic proxy re-encryption method which is quantum attack resistant and can be verified.
Disclosure of Invention
In view of the problems in the prior art, the invention discloses a verifiable homomorphic proxy re-encryption system, which comprises a system establishing module IB-VHPRE λ ,1 L ) Private key extraction module IB-VHPRE
Figure BDA0003639034250000021
Re-encryption module
Figure BDA0003639034250000022
Verification module
Figure BDA0003639034250000023
Decryption module IB-VHPRE 1 ,C 2 F), specifically:
setup module IB-vhpre λ ,1 L ):
Inputting a safety parameter lambda, the number of circuit layers L, selecting a modulus q with a binary bit represented by k bits, where k is a polynomial k ═ k (lambda, L) with respect to lambda and L, a grid dimension n ═ n (lambda, L), an error distribution χ ═ χ (lambda, L), a parameter m ═ m (lambda, L) ═ o (nlogq),
Figure BDA0003639034250000024
matrix generation using trapdoor generation algorithm trapGen (q, n)
Figure BDA0003639034250000025
And its grid
Figure BDA0003639034250000026
A trap door base
Figure BDA0003639034250000027
Randomly selecting a vector
Figure BDA0003639034250000028
Two matrices
Figure BDA0003639034250000029
The output common parameter is pp ═ n, q, χ, m, a 0 ,A 1 ,A 2 U) the system master private key is
Figure BDA00036390342500000210
Private key extraction module IB-vhpre extract (pp, msk, id):
inputting a public parameter pp, a system main private key msk and a user identity id
Figure BDA00036390342500000211
Running left-sampling algorithm output vector
Figure BDA0003639034250000031
So that P is id s ═ u; order to
Figure BDA0003639034250000032
Figure BDA0003639034250000033
With B id T is 0; export public key pk id =B id Private key sk id =t;
Encryption module IB-vhpre. encryption (pp, m, id):
inputting a public parameter pp, a message bit m ← {0,1} and a user identity id; selecting a noise vector e ← χ (1+2m)×1 Randomly selecting a uniform vector r ← -1,1} n×1 Outputting the ciphertext
Figure BDA0003639034250000034
Wherein x is 1 Is (1,0,0,.., 0);
re-encryption key generation module
Figure BDA0003639034250000035
(1) Inputting the private key of the ith participant
Figure BDA0003639034250000036
And a public key pk of the cloud server o =B o Let us order
Figure BDA0003639034250000037
Randomly selecting an invertible matrix
Figure BDA0003639034250000038
Generating proxy re-encryption key rk of cloud server i→o =(Power2(t i )Z XG);
(2) Inputting the private key of the ith participant
Figure BDA0003639034250000039
User id j Public key pk of j =B j Randomly selecting two error vectors e 1 ,e 2 ←χ n Generating a user id j Proxy re-encryption key of
rk i→j =(e 1 B j e 2 -Power2(t i ));
(3) And running AFHS (advanced software architecture) KeyGen (MSK, f, tau) algorithm to generate a signature key
Figure BDA00036390342500000310
Let rk i→j Each row of (1) with x i Marking, running
Figure BDA00036390342500000311
Algorithm generating signature sigma i
(4) And the re-encryption key and the corresponding signature (rk) i→ji ) Sending the data to a cloud server;
re-encryption module
Figure BDA00036390342500000312
(1) And inputting the ciphertext of the user i
Figure BDA00036390342500000313
Re-encryption key rk i→o And the inverse matrix X of the matrix X -1 Converting the ciphertext of the user i into the ciphertext C of the cloud server o =G -1 (C i )X -1 ·rk i→o
(2) And inputting the ciphertext of the user i
Figure BDA0003639034250000041
And re-encrypting the secret key rk i→j Converting the ciphertext of user i into the ciphertext of user j
Figure BDA0003639034250000042
(3) And run
Figure BDA0003639034250000043
Algorithmic generation of signatures
Figure BDA0003639034250000044
Wherein the function
Figure BDA0003639034250000045
Is defined as
Figure BDA0003639034250000046
(4) Outputting the re-encrypted ciphertext and the signature;
verification module
Figure BDA0003639034250000047
Inputting authentication keys
Figure BDA0003639034250000048
Ciphertext and signature set (C) id*→j ) If it is the original ciphertext
Figure BDA0003639034250000049
Then the signature σ *→j Is empty; if the ciphertext is converted
Figure BDA00036390342500000410
The signature is σ i→j (ii) a Operation of
Figure BDA00036390342500000411
Figure BDA00036390342500000412
An algorithm for outputting a verification result;
decryption module IB-vhpre. decryption (C, sk):
(1) and using the private key sk of each party to the ciphertext of each party i Calculating m' ═ 2<C,sk>] q
(2) And for the ciphertext C converted into the cloud server o The cloud server uses its own private key sk o
Decrypting to obtain the ciphertext C of each participant id '=[<C 0 ,sk 0 >] q
(3) And for the user j ciphertext subjected to proxy re-encryption conversion
Figure BDA00036390342500000413
User j uses its own private key sk j Decrypting to obtain the final result m i '=[<C j ,sk j >] q
Homomorphic computing module Eval (C) 1 ,C 2 ,f):
Performing multi-party cloud computing, wherein a cloud server performs homomorphic operation on ciphertext subjected to proxy re-encryption by each participant;
(1)Add(C 1 ,C 2 ):C Add @C 1 +C 2
(2)Mult(C 1 ,C 2 ):C Mult @C 1 ·G -1 (C 2 )
(3)NAND(C 1 ,C 2 ):C NAND @G-C 1 ·G -1 (C 2 )
the cloud server sends the homomorphic calculation result to each participant, and each participant obtains a final calculation result through decryption of a private key of each participant, so that multi-party cloud calculation is realized, and the problem that cryptographs generated by encryption of different public keys cannot be homomorphic calculated is solved.
Based on the system, the verifiable homomorphic proxy re-encryption method comprises the following steps:
step one, a private key extraction module IB-VHPRE.extract (pp, msk, id) establishes a module IB-VHPRE.setup (1) according to a system λ ,1 L ) Generating a public and private key pair of a user by the generated public parameter and a system main private key; entering an encryption module IB-VHPRE.
Step two, generating module by re-encrypting key
Figure BDA0003639034250000051
And re-encryption module
Figure BDA0003639034250000052
Generating a ciphertext of the cloud server, and carrying out homomorphic computing module Eval (C) by the cloud server according to the function f 1 ,C 2 ,f);
Step three, sending homomorphic ciphertext results to each user;
step four, entering a verification module
Figure BDA0003639034250000053
If the verification is passed, entering a decryption module IB-VHPRE.
Step five, re-entering the re-encryption key generation module
Figure BDA0003639034250000054
And re-encryption module
Figure BDA0003639034250000055
Generating a new ciphertext of the user P, and decrypting by the user P by using a private key of the user P to obtain a homomorphic operation result so as to realize ciphertext sharing; the whole process is finished.
The invention has the beneficial effects that: in order to realize multi-user homomorphic operation, the concept of proxy re-encryption is introduced, each participant is encrypted by a respective private key and then converted into a ciphertext of a cloud server, so that multi-party cloud computing can be realized, and the problem that the ciphertext cannot be subjected to homomorphic operation under different public key encryption is solved; in order to meet the sharing requirements among different users, the calculation result can be selected to be sent to a designated and legal non-data provider, the one-time re-encryption technology is used again, and other users except a designated receiver can not decrypt the calculation result even if the original ciphertext of the data provider is obtained, so that the confidentiality effect is better. The authorization function homomorphic signature is embedded into a homomorphic proxy re-encryption scheme as a black box to realize re-encryption verification, namely, given a re-encryption key and a signature on an original message, the proxy not only can convert a ciphertext, but also can provide a signature of the converted ciphertext by evaluating the original signature by using the re-encryption key, and can be used for verifying whether the cloud server executes correct function calculation and the correctness of a function result.
Drawings
FIG. 1 is a flowchart illustrating an embodiment of a verifiable homomorphic proxy re-encryption method;
FIG. 2 is a flow chart of an expert telemedicine consultation system in an embodiment.
Detailed Description
Example 1
The verifiable homomorphic proxy re-encryption system comprises a system establishment module IB-VHPRE λ ,1 L ) Private key extraction module IB-VHPRE
Figure BDA0003639034250000061
Re-encryption module
Figure BDA0003639034250000062
Verification module
Figure BDA0003639034250000063
Decryption module IB-VHPRE 1 ,C 2 F), specifically:
setup (1) of system setup module IB-vhpre λ ,1 L ):
Inputting a safety parameter lambda, a number of circuit layers L, selecting a modulus q with a binary bit represented as k bits, where k is a polynomial k (lambda, L) about lambda and L, grid dimension n (lambda, L), error distribution χ (χ, L), parameter m (λ, L) o (nlogq),
Figure BDA0003639034250000064
matrix generation by using trapdoor generation algorithm TrapGen (q, n)
Figure BDA0003639034250000065
And its grid
Figure BDA0003639034250000066
A trap door base
Figure BDA0003639034250000067
Randomly selecting a vector
Figure BDA0003639034250000068
Two matrices
Figure BDA0003639034250000069
The output common parameter is pp ═ n, q, χ, m, a 0 ,A 1 ,A 2 U) the system master private key is
Figure BDA00036390342500000610
Private key extraction module IB-vhpre extract (pp, msk, id):
inputting public parameter pp, system major and privateKey msk and user identity id
Figure BDA0003639034250000071
Running left-sampling algorithm output vector
Figure BDA0003639034250000072
So that P is id s ═ u; order to
Figure BDA0003639034250000073
Figure BDA0003639034250000074
Has B id T is 0; export public key pk id =B id Private key sk id =t;
Encryption module IB-vhpre. encryption (pp, m, id):
inputting a public parameter pp, a message bit m ← {0,1} and a user identity id; selecting a noise vector e ← χ (1+2m)×1 Randomly selecting a uniform vector r ← -1,1} n×1 Outputting the ciphertext
Figure BDA0003639034250000075
Wherein x is 1 Is (1,0,0,.., 0);
re-encryption key generation module
Figure BDA0003639034250000076
(1) Inputting the private key of the ith participant
Figure BDA0003639034250000077
And public key pk of cloud server o =B o Let us order
Figure BDA0003639034250000078
Randomly selecting an invertible matrix
Figure BDA0003639034250000079
Generating proxy re-encryption key rk of cloud server i→o =(Power2(t i )Z XG);
(2) Inputting the private key of the ith participant
Figure BDA00036390342500000710
User id j Public key pk j =B j Randomly selecting two error vectors e 1 ,e 2 ←χ n Generating a user id j Proxy re-encryption key of
rk i→j =(e 1 B j e 2 -Power2(t i ));
(3) Running AFHS KeyGen (MSK, f, tau) algorithm to generate signature key
Figure BDA00036390342500000711
Let rk i→j Each row of (1) with x i Marking, running
Figure BDA00036390342500000712
Algorithm generation of signature σ i
(4) And the re-encryption key and the corresponding signature (rk) i→ji ) Sending the data to a cloud server;
re-encryption module
Figure BDA00036390342500000713
(1) And inputting the ciphertext of the user i
Figure BDA0003639034250000081
Re-encryption key rk i→o And inverse matrix X of matrix X -1 Converting the ciphertext of the user i into the ciphertext C of the cloud server o =G -1 (C i )X -1 ·rk i→o
(2) Inputting ciphertext of user i
Figure BDA0003639034250000082
And re-encryption key rk i→j Converting the ciphertext of user i into the ciphertext of user j
Figure BDA0003639034250000083
(3) And run
Figure BDA0003639034250000084
Algorithmic generation of signatures
Figure BDA0003639034250000085
Wherein the function
Figure BDA0003639034250000086
Is defined as
Figure BDA0003639034250000087
(4) Outputting the re-encrypted ciphertext and the signature;
verification module
Figure BDA0003639034250000088
Inputting authentication keys
Figure BDA0003639034250000089
Ciphertext and signature set (C) id*→j ) If it is the original ciphertext
Figure BDA00036390342500000810
Then the signature σ *→j Is empty; if the ciphertext is converted
Figure BDA00036390342500000811
The signature is σ i→j (ii) a Operation of
Figure BDA00036390342500000812
Figure BDA00036390342500000813
An algorithm outputs a verification result;
decryption module IB-vhpre. decryption (C, sk):
(1) and using the private key sk of each party to the ciphertext of each party i Calculating m' ═ 2<C,sk>] q
(2) And for the ciphertext C converted into the cloud server o The cloud server uses its own private key sk o
Decrypting to obtain ciphertext C of each participant id '=[<C 0 ,sk 0 >] q
(3) And for the user j ciphertext subjected to proxy re-encryption conversion
Figure BDA00036390342500000814
User j uses its own private key sk j Decrypting to obtain the final result m i '=[<C j ,sk j >] q
Homomorphic computing module Eval (C) 1 ,C 2 ,f):
Performing multi-party cloud computing, wherein a cloud server performs homomorphic operation on ciphertext subjected to proxy re-encryption by each participant;
(4)Add(C 1 ,C 2 ):C Add @C 1 +C 2
(5)Mult(C 1 ,C 2 ):C Mult @C 1 ·G -1 (C 2 )
(6)NAND(C 1 ,C 2 ):C NAND @G-C 1 ·G -1 (C 2 )
the cloud server sends the homomorphic calculation result to each participant, and each participant obtains a final calculation result through decryption of a private key of each participant, so that multi-party cloud calculation is realized, and the problem that cryptographs generated by encryption of different public keys cannot be homomorphic calculated is solved.
As shown in fig. 1, a verifiable homomorphic proxy re-encryption method based on the above system includes the following steps:
step one, a private key extraction module IB-VHPRE.extract (pp, msk, id) establishes a module IB-VHPRE.setup (1) according to a system λ ,1 L ) Generating a public and private key pair of a user by the generated public parameter and a system main private key; entering an encryption module IB-VHPRE.
Step two, passing through heavyEncryption key generation module
Figure BDA0003639034250000091
And re-encryption module
Figure BDA0003639034250000092
Generating a ciphertext of the cloud server, and carrying out homomorphic computing on a module Eval (C) by the cloud server according to the function f 1 ,C 2 ,f);
Step three, sending homomorphic ciphertext results to each user;
step four, entering a verification module
Figure BDA0003639034250000093
If the verification is passed, entering a decryption module IB-VHPRE.
Step five, re-entering the re-encryption key generation module
Figure BDA0003639034250000094
And re-encryption module
Figure BDA0003639034250000095
Generating a new ciphertext of the user P, and decrypting by the user P by using a private key of the user P to obtain a homomorphic operation result so as to realize ciphertext sharing; the whole process is finished.
The specific implementation case is as follows: the invention can be applied to a personal electronic health medical record system, such as a flow chart of an expert remote medical consultation system shown in figure 2, and comprises the following specific steps:
step one, a credible center registers doctors and patients according to a system establishing module and generates public parameters of the system;
secondly, the doctor and the patient run the key extraction module to generate respective public and private key pairs;
step three, the patient runs the encryption module to encrypt the electronic health medical record of the patient and uploads the encrypted electronic health medical record to the cloud server for storage;
step four, assuming that a doctor needs to analyze and calculate the electronic medical records of a plurality of patients, and in order to save the local calculation and communication overhead, the doctor hands the calculation task to a cloud agent;
running a re-encryption key generation module and a re-encryption module to generate a ciphertext of the cloud server, running a homomorphic calculation module by the cloud server, and executing homomorphic operation on the re-encrypted ciphertext;
the cloud server operates the re-encryption module again to generate a cipher text of the doctor;
and step seven, downloading the homomorphic calculation result by the doctor, firstly verifying whether the ciphertext is legal, and if the ciphertext is verified to be legal, decrypting locally by using a decryption algorithm to acquire the required data.
Parts not described in detail herein are prior art.
Although the present invention has been described in detail with reference to the specific embodiments thereof, the present invention is not limited to the above embodiments, and various changes can be made without departing from the gist of the present invention within the knowledge of those skilled in the art without departing from the scope of the present invention.

Claims (2)

1. An authenticatable homomorphic proxy re-encryption system is characterized by comprising a system establishment module IB-VHPRE λ ,1 L ) Private key extraction module IB-VHPRE
Figure FDA0003639034240000011
Re-encryption module
Figure FDA0003639034240000012
Verification module
Figure FDA0003639034240000013
Decryption module IB-VHPRE 1 ,C 2 F), specifically:
setup module IB-vhprep(1 λ ,1 L ):
Inputting a safety parameter lambda, a number of circuit layers L, selecting a modulus q with a binary bit represented as k bits, where k is a polynomial k (lambda, L) about lambda and L, grid dimension n (lambda, L), error distribution χ (χ, L), parameter m (λ, L) o (nlogq),
Figure FDA00036390342400000114
matrix generation using trapdoor generation algorithm trapGen (q, n)
Figure FDA0003639034240000014
And its grid
Figure FDA0003639034240000015
A trap door base
Figure FDA0003639034240000016
Randomly selecting a vector
Figure FDA0003639034240000017
Two matrices
Figure FDA0003639034240000018
The output common parameter is pp ═ n, q, χ, m, a 0 ,A 1 ,A 2 U) the system master private key is
Figure FDA0003639034240000019
Private key extraction module IB-vhpre extract (pp, msk, id):
inputting a public parameter pp, a system main private key msk and a user identity id
Figure FDA00036390342400000110
Running left-sampling algorithm output vector
Figure FDA00036390342400000111
So that P is id s ═ u; order to
Figure FDA00036390342400000112
Figure FDA00036390342400000113
Has B id T is 0; export public key pk id =B id Private key sk id T; encryption module IB-vhpre. encryption (pp, m, id):
inputting a public parameter pp, a message bit m ← {0,1} and a user identity id; selecting a noise vector e ← χ (1+2m)×1 Randomly selecting a uniform vector r ← -1,1} n×1 Outputting the ciphertext
Figure FDA0003639034240000021
Wherein x is 1 Is (1,0,0,.., 0);
re-encryption key generation module
Figure FDA0003639034240000022
(1) Inputting the private key of the ith participant
Figure FDA0003639034240000023
And public key pk of cloud server o =B o Let us order
Figure FDA0003639034240000024
Randomly selecting an invertible matrix
Figure FDA0003639034240000025
Generating proxy re-encryption key rk of cloud server i→o =(Power2(t i )Z XG);
(2) Inputting the private key of the ith participant
Figure FDA0003639034240000026
User id j Public key pk of j =B j Randomly selecting two error vectors e 1 ,e 2 ←χ n Generating a user id j Proxy re-encryption key rk of i→j =(e 1 B j e 2 -Power2(t i ));
(3) And running AFHS (advanced software architecture) KeyGen (MSK, f, tau) algorithm to generate a signature key
Figure FDA0003639034240000027
Let rk i→j Each row of (1) with x i Marking, running
Figure FDA0003639034240000028
Algorithm generation of signature σ i
(4) And the re-encryption key and the corresponding signature (rk) i→ji ) Sending the data to a cloud server;
re-encryption module
Figure FDA0003639034240000029
(1) And inputting the ciphertext of the user i
Figure FDA00036390342400000210
Re-encryption key rk i→o And inverse matrix X of matrix X -1 Converting the ciphertext of the user i into the ciphertext C of the cloud server o =G -1 (C i )X -1 ·rk i→o
(2) And inputting the ciphertext of the user i
Figure FDA00036390342400000211
And re-encryption key rk i→j Converting the ciphertext of the user i into the ciphertext of the user j
Figure FDA00036390342400000212
(3) And run
Figure FDA00036390342400000213
Algorithmic generation of signatures
Figure FDA00036390342400000214
Wherein the function
Figure FDA00036390342400000215
Is defined as
Figure FDA00036390342400000216
(4) Outputting the re-encrypted ciphertext and the signature;
verification module
Figure FDA0003639034240000031
Inputting authentication keys
Figure FDA0003639034240000032
Ciphertext and signature set (C) id*→j ) If it is the original ciphertext
Figure FDA0003639034240000033
Then the signature σ *→j Is empty; if the ciphertext is converted
Figure FDA0003639034240000034
The signature is σ i→j (ii) a Operation of
Figure FDA0003639034240000035
Figure FDA0003639034240000036
An algorithm outputs a verification result;
decryption module IB-vhpre. decryption (C, sk):
(1) and using the private key sk of each party to the ciphertext of each party i Calculating m' ═ 2<C,sk>] q
(2) And for the ciphertext C converted into the cloud server o The cloud server uses its ownPrivate key sk o Decrypting to obtain the ciphertext C of each participant id '=[<C 0 ,sk 0 >] q
(3) And for the user j ciphertext subjected to proxy re-encryption conversion
Figure FDA0003639034240000037
User j uses its own private key sk j Decrypting to obtain the final result m i '=[<C j ,sk j >] q
Homomorphic computing module Eval (C) 1 ,C 2 ,f):
Performing multi-party cloud computing, wherein a cloud server performs homomorphic operation on ciphertext subjected to proxy re-encryption by each participant;
(1)Add(C 1 ,C 2 ):C Add @C 1 +C 2
(2)Mult(C 1 ,C 2 ):C Mult @C 1 ·G -1 (C 2 )
(3)NAND(C 1 ,C 2 ):C NAND @G-C 1 ·G -1 (C 2 )
the cloud server sends the homomorphic calculation result to each participant, and each participant obtains a final calculation result through decryption of a private key of each participant, so that multi-party cloud calculation is realized, and the problem that cryptographs generated by encryption of different public keys cannot be homomorphic calculated is solved.
2. A verifiable homomorphic proxy re-encryption method is characterized by comprising the following steps:
step one, a private key extraction module IB-VHPRE.extract (pp, msk, id) establishes a module IB-VHPRE.setup (1) according to a system λ ,1 L ) Generating a public and private key pair of a user by the generated public parameter and a system main private key; entering an encryption module IB-VHPRE.
Step two, generating module by re-encrypting key
Figure FDA0003639034240000041
And re-encryption module
Figure FDA0003639034240000042
Generating a ciphertext of the cloud server, and carrying out homomorphic computing module Eval (C) by the cloud server according to the function f 1 ,C 2 ,f);
Step three, sending homomorphic ciphertext results to each user;
step four, entering a verification module
Figure FDA0003639034240000043
If the verification is passed, entering a decryption module IB-VHPRE.
Step five, re-entering the re-encryption key generation module
Figure FDA0003639034240000044
And re-encryption module
Figure FDA0003639034240000045
Generating a new ciphertext of the user P, and decrypting by the user P by using a private key of the user P to obtain a homomorphic operation result so as to realize ciphertext sharing; the whole process is finished.
CN202210514553.3A 2022-05-11 2022-05-11 Verifiable homomorphic proxy re-encryption method and system Pending CN114915401A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210514553.3A CN114915401A (en) 2022-05-11 2022-05-11 Verifiable homomorphic proxy re-encryption method and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210514553.3A CN114915401A (en) 2022-05-11 2022-05-11 Verifiable homomorphic proxy re-encryption method and system

Publications (1)

Publication Number Publication Date
CN114915401A true CN114915401A (en) 2022-08-16

Family

ID=82765927

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210514553.3A Pending CN114915401A (en) 2022-05-11 2022-05-11 Verifiable homomorphic proxy re-encryption method and system

Country Status (1)

Country Link
CN (1) CN114915401A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115442134A (en) * 2022-09-02 2022-12-06 暨南大学 Multi-key multi-party secure computing method based on homomorphic bidirectional proxy re-encryption
CN117196017A (en) * 2023-09-28 2023-12-08 数力聚(北京)科技有限公司 Federal learning method, system, equipment and medium for lightweight privacy protection and integrity verification

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115442134A (en) * 2022-09-02 2022-12-06 暨南大学 Multi-key multi-party secure computing method based on homomorphic bidirectional proxy re-encryption
CN117196017A (en) * 2023-09-28 2023-12-08 数力聚(北京)科技有限公司 Federal learning method, system, equipment and medium for lightweight privacy protection and integrity verification

Similar Documents

Publication Publication Date Title
Hu et al. A secure and verifiable access control scheme for big data storage in clouds
US20220141038A1 (en) Method of rsa signature or decryption protected using a homomorphic encryption
CN111342976B (en) Verifiable ideal on-grid threshold proxy re-encryption method and system
CN111275202A (en) Machine learning prediction method and system for data privacy protection
CN110635909B (en) Attribute-based collusion attack resistant proxy re-encryption method
JP2023500570A (en) Digital signature generation using cold wallet
CN114915401A (en) Verifiable homomorphic proxy re-encryption method and system
CN115004627A (en) Distributed symmetric encryption
CN111314050A (en) Encryption and decryption method and device
Guo et al. Non-transferable proxy re-encryption
Venkatraman et al. Dynamic virtual cluster cloud security using hybrid steganographic image authentication algorithm
Huang et al. A secure communication over wireless environments by using a data connection core
Mohamed New Frontiers in Cryptography: Quantum, Blockchain, Lightweight, Chaotic and DNA
CN116980194A (en) Safe and efficient data transmission method and system based on cloud edge end cooperation
Hitaswi et al. A bio-inspired model to provide data security in cloud storage
Kumar et al. A novel framework for secure file transmission using modified AES and MD5 algorithms
WO2022239129A1 (en) Key exchange system, device, key exchange method, and program
CN115336224A (en) Adaptive attack-resistant distributed symmetric encryption
Jain et al. Improving the security by using various cryptographic techniques in cloud computing
Neela et al. A Hybrid Cryptography Technique with Blockchain for Data Integrity and Confidentiality in Cloud Computing
CN115460020B (en) Data sharing method, device, equipment and storage medium
Eshghi et al. Security Enhancement of Wireless Sensor Networks: A Hybrid Efficient Encryption Algorithm Approach
CN115442102B (en) Equation test method based on SM9 algorithm
Ukwuoma et al. Optimised Privacy Model for Cloud Data
Durga et al. Implementing RSA algorithm for network security using dual prime secure protocol in crypt analysis

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