B-4.5 Public Key Encryption

The encryption scheme in §B-4.2 assumes that it is the secret key owner who encrypts each plaintext. In this section, we explain a public key encryption scheme in which we create a public key counterpart of the secret key Anyone who knows the public key can encrypt the plaintext in such a way that only the secret key owner can decrypt it. The high-level idea is that a portion of the components to be used in the encryption stage is pre-computed at the setup stage and published as a public key. At the actual encryption stage, the public key is multiplied by an additional randomness (U) and added to additional noise (E1,E2) to create unpredictable randomness for each encrypted ciphertext. The actual scheme is as follows:

Summary B-4.2 GLWE Public Key Encryption

Initial Setup:


Encryption Input: M Rn,t, U $Rn,𝑡𝑒𝑟𝑛, E1 χσRn,q, E2 χσRn,qk

1.
Scale up MΔM  Rn,q
2.
Compute the following:

B = 𝑃𝐾1 U + ΔM + E1  Rn,q

D = 𝑃𝐾2 U + E2 Rn,qk 𝑃𝐾2 U multiplies each element of 𝑃𝐾2 by U

3.
𝖦𝖫𝖶𝖤S,σ(ΔM + E𝑎𝑙𝑙) = (D,B)  Rn,qk+1 where E𝑎𝑙𝑙 = E U + E1 E2 S


Decryption Input: 𝖼𝗍 = (D,B)  Rn,qk+1

1.
𝖦𝖫𝖶𝖤S,σ1(𝖼𝗍) = B D S = ΔM + E𝑎𝑙𝑙  Rn,q
2.
Scale down ΔM + E𝑎𝑙𝑙 Δ = M  Rn,t

For correct decryption, every noise coefficient ei of polynomial E𝑎𝑙𝑙 should be: ei < Δ 2.

The equation in the 1st step of the decryption process is derived as follows:

𝖦𝖫𝖶𝖤S,σ1( 𝖼𝗍 = (B,D) ) = B D S

= (𝑃𝐾1 U + ΔM + E1) (𝑃𝐾2 U + E2) S

= (A S + E) U + ΔM + E1 (A U) S E2 S

= (U A) S + E U + ΔM + E1 (U A) S E2 S

= ΔM + E U + E1 E2 S

= ΔM + E𝑎𝑙𝑙 where E𝑎𝑙𝑙 = E U + E1 E2 S

Security: The GLWE encryption scheme’s encryption formula (Summary B-4.2 in §B-4.2) is as follows:

𝖦𝖫𝖶𝖤S,σ(ΔM + E) = ( A, B = A S + ΔM + E )

, where the hardness of the LWE and RLWE problems guarantees that guessing S is difficult given A and E are randomly picked at each encryption. On the other hand, the public key encryption scheme is as follows:

𝖦𝖫𝖶𝖤S,σ(ΔM + E𝑎𝑙𝑙) = ( D = 𝑃𝐾2 U + E2, B = 𝑃𝐾1 U + ΔM + E1 )

, where 𝑃𝐾1, 𝑃𝐾2 are fixed and U, E1, E2 are randomly picked at each encryption. Given the polynomial degree n is large, both schemes provide the equivalent level of hardness to solve the problem.