Write, autoreview, editor, reviewer
3,129
edits
m (→Pseudo-Code) |
|||
Line 48: | Line 48: | ||
*Input: k, L, <math>L_c</math>, classical message m, ( and Quantum Input <math>\ket{\psi}</math> in case of quantum inputs) | *Input: k, L, <math>L_c</math>, classical message m, ( and Quantum Input <math>\ket{\psi}</math> in case of quantum inputs) | ||
*Output: Homomorphic key sets <math>(pk_i,evk_i,sk_i, t_{sk_i})</math>, encrypted pad key <math>\tilde{a}, \tilde{b}</math> (and Quantum One time Padded Output State <math>X^aZ^b\ | *Output: Homomorphic key sets <math>(pk_i,evk_i,sk_i, t_{sk_i})</math>, encrypted pad key <math>\tilde{a}, \tilde{b}</math> (and Quantum One time Padded Output State <math>X^aZ^b|\psi\rangle</math> in case of quantum output) | ||
**''Key Generation (FHE.KeyGen(<math>1^{\lambda}, 1^L</math>))' | **''Key Generation (FHE.KeyGen(<math>1^{\lambda}, 1^L</math>))' | ||
# For <math>1\leq i\leq L + 1</math>, | # For <math>1\leq i\leq L + 1</math>, | ||
Line 55: | Line 55: | ||
# Client chooses pad key for each message bit <math>a,b\in\{0,1\}^{\lambda}</math>. | # Client chooses pad key for each message bit <math>a,b\in\{0,1\}^{\lambda}</math>. | ||
# She then encrypts this pad key and sends it to the Server with the evaluation keys.</br>HE.Enc<math>_{pk_1}(a,b))</math>, | # She then encrypts this pad key and sends it to the Server with the evaluation keys.</br>HE.Enc<math>_{pk_1}(a,b))</math>, | ||
# She sends encrypted classical message <math>X^aZ^b\ | # She sends encrypted classical message <math>X^aZ^b|l\rangle</math> which can be represented as the classical string <math>a\oplus m</math>. In case of quantum output Client uses pad key to hide her quantum state using QOTP (<math>X^aZ^b|\psi\rangle/math>) and then sends this hidden state to the Server along with the encrypted pad key. | ||
=== '''Stage 2''' Server’s Computation === | === '''Stage 2''' Server’s Computation === |