Prepare-and-Send Universal Blind Quantum Computation: Difference between revisions

Line 22: Line 22:




  ''Protocol 1a: Client is assumed to be able to prepare quantum states.
  '''''Protocol 1a:''' Client is assumed to be able to prepare quantum states.
''
''
* '''Client’s preparation''' Client sends the initial qubits for construction of brickwork state to Server in this step. Client has in her mind a quantum computation as a measurement pattern on the brickwork state. She prepares m x n single qubit states with randomly chosen local phase in order to hide her classical inputs later.
* '''Client’s preparation''' Client sends the initial qubits for construction of brickwork state to Server in this step. Client has in her mind a quantum computation as a measurement pattern on the brickwork state. She prepares m x 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. Thus, ends preparation stage.
* '''Server’s preparation''' Server prepares brickwork state of m rows and n columns. It entangles all the received qubits as per Client’s instructions. Thus, ends preparation stage.
* '''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 '''[[Supplementary Information#Flow Construction-Determinism|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.
* '''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 '''[[Supplementary Information#Flow Construction-Determinism|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.
  ''Protocol 1b: Protocol 1a can be modified as follows if Client is provided with m quantum input states beforehand. Client is assumed to be able to prepare quantum states and apply single qubit gates (Pauli gates).
  '''''Protocol 1b:''' Protocol 1a can be modified as follows if Client is provided with m quantum input states beforehand. Client is assumed to be able to prepare quantum states and apply single qubit gates (Pauli gates).
''* '''Client’s input preparation''' This step encrypts the input state column using quantum one time pad. Client rotates her input qubits using single qubit gate Z(θ), in order to add random local phase. She randomly chooses to flip each qubit using single qubit gate X or do nothing. She then sends these qubits to Server. This is the only extra step as compared to Protocol 1a.
''* '''Client’s input preparation''' This step encrypts the input state column using quantum one time pad. Client rotates her input qubits using single qubit gate Z(θ), in order to add random local phase. She randomly chooses to flip each qubit using single qubit gate X or do nothing. She then sends these qubits to Server. This is the only extra step as compared to Protocol 1a.
* '''Client’s auxilliary preparation''' This step is exactly same as Client’s preparation of m x n initial quantum states for brickwork state in Protocol 1a.
* '''Client’s auxilliary preparation''' This step is exactly same as Client’s preparation of m x n initial quantum states for brickwork state in Protocol 1a.
*''' Server’s preparation''' Server prepares brickwork state of m rows and n+1 columns in the order instructed by the Client. The ’m’ quantum inputs constitute the first column of brickwork state for this protocol. Thus ends the preparation stage
*''' Server’s preparation''' Server prepares brickwork state of m rows and n+1 columns in the order instructed by the Client. The ’m’ quantum inputs constitute the first column of brickwork state for this protocol. Thus ends the preparation stage
* '''Interaction and Measurement''' This step remains the same as Protocol 1a except that the bit flip used to hide Client’s input is taken care of while computing measurement angle to be sent for the first column.
* '''Interaction and Measurement''' This step remains the same as Protocol 1a except that the bit flip used to hide Client’s input is taken care of while computing measurement angle to be sent for the first column.
  ''Protocol 1c: This protocol is different from Protocol 1a such that the last column of the brickwork state is not measured but sent back to the Client. Client is assumed to be able to prepare quantum states and apply single qubit gates (Pauli gates). The following steps account for the modified protocol.
  '''''Protocol 1c:''' This protocol is different from Protocol 1a such that the last column of the brickwork state is not measured but sent back to the Client. Client is assumed to be able to prepare quantum states and apply single qubit gates (Pauli gates). The following steps account for the modified protocol.
''
''
* '''Client’s auxilliary preparation''' This step is exactly same as Client’s preparation in Protocol 1a. The difference being, she prepares only m x n-1 initial states this time.
* '''Client’s auxilliary preparation''' This step is exactly same as Client’s preparation in Protocol 1a. The difference being, she prepares only m x n-1 initial states this time.
Write, autoreview, editor, reviewer
3,125

edits