Write, autoreview, editor, reviewer
3,129
edits
Line 78: | Line 78: | ||
####Server measures the last register to get a secret text <math>y = </math>AltHE.Enc<math>_{pk}(\mu_0,r_0)</math>, where <math>\mu_0\oplus\mu_1=s</math>. | ####Server measures the last register to get a secret text <math>y = </math>AltHE.Enc<math>_{pk}(\mu_0,r_0)</math>, where <math>\mu_0\oplus\mu_1=s</math>. | ||
####Server performs Hadamard on second register and measures it to get a string d such that first register of input quantum state is reduced to: the following ideal state:</br><math>(Z^{d\cdot ((\mu_0,r_0)\oplus (\mu_1,r_1))}\otimes X^{\mu_0})\textrm{CNOT}_{1,2}^s|\psi\rangle</math> </br>where <math>\text{AltHE.Enc}_{pk}(\mu_0;r_0) = \text{AltHE.Enc}_{pk}(\mu_1;r_1) \oplus_H \hat{c}</math> and <math>\oplus_H</math> is the homomorphic XOR operation. | ####Server performs Hadamard on second register and measures it to get a string d such that first register of input quantum state is reduced to: the following ideal state:</br><math>(Z^{d\cdot ((\mu_0,r_0)\oplus (\mu_1,r_1))}\otimes X^{\mu_0})\textrm{CNOT}_{1,2}^s|\psi\rangle</math> </br>where <math>\text{AltHE.Enc}_{pk}(\mu_0;r_0) = \text{AltHE.Enc}_{pk}(\mu_1;r_1) \oplus_H \hat{c}</math> and <math>\oplus_H</math> is the homomorphic XOR operation. | ||
####The server uses <math>pk_{i+1}</math> to compute HE.Enc<math>_{pk_{i+1}}(c_{ | ####The server uses <math>pk_{i+1}</math> to compute HE.Enc<math>_{pk_{i+1}}(c_{x,z,pk_i})</math> and HE.Enc<math>_{pk_{i+1}}(\hat{c},y,d)</math>. | ||
####The server computes the encryption of <math> | ####The server computes the encryption of <math>x,z</math> under <math>pk_{i+1}</math> by homomorphically running the decryption circuit on inputs <math>\mathrm{HE.Enc}_{pk_{i+1}}(sk_i)</math> and HE.Enc<math>_{pk_{i+1}}(c_{x,z,pk_i})</math>. | ||
####The server homomorphically computes <math>(\mu_0,r_0)</math> and <math>(\mu_1,r_1)</math>, using the secret texts encrypting <math>t_{sk_i},sk_i,\hat{c},y,d</math> (all encrypted with HE under public key | ####The server homomorphically computes <math>(\mu_0,r_0)</math> and <math>(\mu_1,r_1)</math>, using the secret texts encrypting <math>t_{sk_i},sk_i,\hat{c},y,d</math> (all encrypted with HE under public key <math>pk_{i+1}</math>). The server then uses this result, along with the secret texts encrypting <math>x,z,d</math>, to homomorphically compute <math>\tilde{z} = z + (d\cdot ((\mu_0,r_0)\oplus (\mu_1,r_1)),0)</math> and <math>\tilde{x} = x + (0,\mu_0)</math>. | ||
#Server sends updated encryptions of Pauli corrections <math>\tilde{ | #Server sends updated encryptions of Pauli corrections <math>\tilde{x},\tilde{z}</math> and the classical outcome after measurement of the output state (or Quantum one time padded state in case of quantum output) to Client. | ||
=== '''Stage 3''' Client’s Output Correction === | === '''Stage 3''' Client’s Output Correction === |