implements Secure Client-Server Delegated Computation
Introduction
Universal blind quantum computation achieves the functionality of Secure Client- Server Delegated Quantum Computation by assigning quantum computation to an untrusted device while maintaining privacy of the input, output and computation of the client. The client requires to be able to prepare and send quantum states while the server requires to possess a device with quantum memory, measurement and entanglement generation technology. Following description deals with a method which involves quantum offline and classical online communication, called Blind Quantum Computation. It means the protocol needs one-time quantum communication at the end or starting of the protocol while continuous classical communication between the parties, throughout the execution. It comes with the properties of correctness, blindness and universality.
Outline
The following Universal Blind Quantum Computation (UBQC) protocol uses the fact that Measurement Based Quantum Computation (MBQC) separates the classical and quantum parts of a computation. MBQC requires a set of initial entangled states, called graph states for computation. Here, we shall use a special family of graph states, brickwork states which are universal (can implement any quantum operation) for X-Y measurements and do not leak any specific data about the computation during preparation. The protocol can be divided into three stages: preparation, computation and output correction.
- The Preparation stage includes a partially quantum Client preparing and sending quantum states to the Server who constructs the required brickwork state.
- The Computation stage involves interaction.
- The Output Correction stage involves retrieval of correct output from the results sent by the Server.
We shall discuss below three protocols with different attributes but same functionality. All of the UBQC protocols discussed below require Client to prepare the required quantum states for computation and send those to the Server, hence the name Prepare and Send UBQC.
Protocol 1a deals with a partially quantum Client capable of preparing initial quantum states for the construction of brickwork state with classical input/output computation. Protocols 1b and 1c are extensions to accommodate quantum inputs and quantum outputs, respectively.
- Preparation
Clientโs preparation: Client sends the initial qubits for construction of brickwork state to Server in this step. Client has a secret quantum computation as a measurement pattern on the brickwork state. She preparesย mรnmรnย single qubit states with randomly chosen local phase in order to hide her classical inputs later.
Serverโs preparationย Server prepares brickwork state of m rows and n columns. It entangles all the received qubits as per Clientโs instructions.
- Interaction and Measurement
Client and Server interact to perform operations needed for computation. For a given computation and graph state, MBQC provides a measurement angle and some extra Pauli X, Z corrections, for each qubit. The correction sets (also called Dependency sets), unique for every graph state are based on previous measurement outcomes and can be obtained from flow construction. Also, as Clientโs input state has random local phase, the same should be added to the measurement angle for computation along with Pauli Corrections to get the correct outcome. Now, in order to hide the output, Client randomly chooses to add a ฯ rotation or not. The final measurement angle includes all the above parameters and hence, is sent to the Server. When Server returns the classical outcome, Client gets the correct outcome by taking into account the randomย ฯฯย rotation and then uses it to calculate measurement angle for for the next qubit. The step is repeated until every qubit has been measured. Server returns measurement outcomes for the last column to Client. Client deciphers this outcome to get the final result. This ends the computation stage.
**Output Correction** is only required if there is quantum compuation passed as input and output.
Assumptions
- Network Stage: Quantum Memory Network Stage
- Required Network Parameters:
- $\\\epsilon_j$, which measures the error due to noisy operations.
- Number of communication rounds
- Circuit depth
- Number of physical qubits used
- Client should have preparation devices
- Quantum offline channel
- Classical online channel
- Server should be able to generate and store large network of entangled quantum states.
Requirements
No content has been added to this section, yet!
Notation
-
$\\\phi$, measurement angle for given MBQC pattern to implement the required computation
-
$\\\phi_0$, measurement angle including Pauli X,Z corrections
-
$s_X,s_Z$ Dependency sets for Pauli X and Pauli Z corrections, respectively (obtained from flow construction).
-
$\\\theta$, randomly chosen angles by Client in order to hide classical input
-
r $\\\epsilon_R{0,1}$, randomly chosen parameter for $\\\pi$ rotation in order to hide classical output
-
$\\\delta_x,y$, final measurement angle for the qubit at position (x,y) in the brickwork state
Properties
- (m,n) define dimensions of the brickwork state
- This protocol is secure/blind in every setting (universal)
- The Protocol needs Client to be able to prepare given initial quantum states
- The Protocols needs a quantum channel from Client to Server to transfer initial quantum states
- This protocol requires no quantum memory for the Client
- This protocol is universally composable [1]
- *Universality* As brickwork states are universal for X-Y plane measurements, the protocol is universal. This protocol uses approximate universality although exact universality can be achieved if Client if allowed to communicate real numbers.
- *Correctness* If Client and Server follow the protocol as described above, the outcome will be correct.
- *Blindness* The protocol is blind while leaking at most (m,n) bits to the Server.
Technical Description
Stage 1: Preparation
- Input: Client: Dimensions of Brickwork State (m,n), Input States ($\\\psi_{0,y})$, Auxilliary Input States ($\\\psi_{x,y}$)
- Output: Server: Brickwork State $G_{\\\text{mxn}}$
- Clientโs preparation
- For each column x = 1,โฆ,n
- For each row y = 1,โฆ,m
- Client prepares and sends the qubits to Server.
- For each row y = 1,โฆ,m
- Serverโs preparation
- Server creates an entangled state from all received qubits, according to their indices, by applying CTRL-Z gates between the qubits in order to create a brickwork state $G_{\\\text{n x m}}$.
Stage 2: Computation Stage
- Input: Client: Measurement Angle: $\\\delta_{x,y}$
- Output: Server: Measurement Outcome: $s_{x,y}$
- Interaction and measurement
- For each column x = 1,โฆ,n
- For each row y = 1,โฆ,m
- Client computes $\\\phi\’_{x,y}$ where $s^X_{0,y}=s^Z_{0,y}=0$
- Client chooses $r_{x,y} \\\epsilon_R {0,1}$ and computes $\\\delta_{x,y}=\\\phi\’_{x,y}+\\\theta_{x,y}+\\\pi r_{x,y}$.
- Client transmits $\\\delta_{x,y}$ to Server. Server measures in the basis ${|+{\\\delta{x,y}}\\\rangle, |-{\\\delta{x,y}}\\\rangle}$
- Server transmits the result $s_{x,y}\\\epsilon {0,1}$ to Client.
- If $r_{x,y} = 1,$ Client flips $s_{x,y}$; otherwise she does nothing.
- For each row y = 1,โฆ,m
- Output Correction [only for quantum outputs]
- Server sends to Client all qubits in the last layer.
- Client performs the final Pauli corrections .
Experimental Implementations
No content has been added to this section, yet!
Further Information
No content has been added to this section, yet!
References
- Broadbent, Anne, Joseph Fitzsimons, and Elham Kashefi. โUniversal Blind Quantum Computationโ. In 2009 50th Annual IEEE Symposium on Foundations of Computer Science, 517โ26. IEEE, 2009. https://doi.org/10.1109/focs.2009.36.


Leave a Reply