# Clifford Code for Quantum Authentication

Jump to: navigation, search

The Clifford Authentication Scheme is a non-interactive protocol for quantum authentication and was introduced in the paper Interactive Proofs For Quantum Computations by Aharanov et al.. It applies a random Clifford operator to the quantum message and an auxiliary register and then measures the auxiliary register to decide whether or not a eavesdropper has tampered the original quantum message.

## Outline

The Clifford code encodes a quantum message by appending an auxiliary register with each qubit in state ${\displaystyle |0\rangle }$ and then applying a random Clifford operator on all qubits. The authenticator then measures only the auxiliary register. If all qubits in the auxiliary register are still in state ${\displaystyle |0\rangle }$, the authenticator accepts and decodes the quantum message. Otherwise, the original quantum message was tampered by a third party and the authenticator aborts the process.

## Notations

• ${\displaystyle {\mathcal {S}}}$: suppliant (sender)
• ${\displaystyle {\mathcal {A}}}$: authenticator (prover)
• ${\displaystyle \rho }$: ${\displaystyle m}$-qubit state to be transmitted
• ${\displaystyle d\in \mathbb {N} }$: security parameter defining the number of qubits in the auxiliary register
• ${\displaystyle \{C_{k}\}}$: set of Clifford operations on ${\displaystyle n}$ qubits labelled by a classical key ${\displaystyle k\in {\mathcal {K}}}$

## Properties

• The Clifford code makes use of ${\displaystyle n=m+d+1}$ qubits
• The Clifford code is quantum authentication scheme with security ${\displaystyle 2^{-d}}$
• The qubit registers used can be divided into a message register with ${\displaystyle m}$ qubits, an auxiliary register with ${\displaystyle d}$ qubits, and a flag register with ${\displaystyle 1}$ qubit.

## Protocol Description

Input: ${\displaystyle \rho }$, ${\displaystyle d}$, ${\displaystyle k}$

Output: Quantum state ${\displaystyle \rho ^{\prime }}$ if the protocol accepts; fixed quantum state ${\displaystyle \Omega }$ if the protocol aborts

• Encoding:
1. ${\displaystyle {\mathcal {S}}}$ appends an auxiliary register of ${\displaystyle d}$ qubits in state ${\displaystyle |0\rangle \langle 0|}$ to the quantum message ${\displaystyle \rho }$, which results in ${\displaystyle \rho \otimes |0\rangle \langle 0|^{\otimes d}}$.
2. ${\displaystyle {\mathcal {S}}}$ then applies ${\displaystyle C_{k}}$ for a uniformly random ${\displaystyle k\in {\mathcal {K}}}$ on the total state.
3. ${\displaystyle {\mathcal {S}}}$ sends the result to ${\displaystyle {\mathcal {A}}}$.
• Mathematical Encoding Description:
Mathematically, the encoding process can be described by
${\displaystyle {\mathcal {E}}_{k}:\rho \mapsto C_{k}\left(\rho \otimes |0\rangle \langle 0|^{\otimes d}\right)C_{k}^{\dagger }}$
• Decoding:
1. ${\displaystyle {\mathcal {A}}}$ applies the inverse Clifford ${\displaystyle C_{k}^{\dagger }}$ to the received state, which is denoted by ${\displaystyle \rho ^{\prime }}$.
2. ${\displaystyle {\mathcal {A}}}$ measures the auxiliary register in the computational basis.
a. If all ${\displaystyle d}$ auxiliary qubits are 0, the state is accepted and an additional flag qubit in state ${\displaystyle |\mathrm {ACC} \rangle \langle \mathrm {ACC} |}$ is appended.
b. Otherwise, the remaining system is traced out and replaced with a fixed ${\displaystyle m}$-qubit state ${\displaystyle \Omega }$ and an additional flag qubit in state ${\displaystyle |\mathrm {REJ} \rangle \langle \mathrm {REJ} |}$ is appended.
• Mathematical Decoding Description:
Mathematically, the decoding process is described by
${\displaystyle {\mathcal {D}}_{k}:\rho ^{\prime }\mapsto \mathrm {tr} _{0}\left({\mathcal {P}}_{\mathrm {acc} }C_{k}^{\dagger }(\rho ^{\prime })C_{k}{\mathcal {P}}_{\mathrm {acc} }^{\dagger }\right)\otimes |\mathrm {ACC} \rangle \langle \mathrm {ACC} |+\mathrm {tr} \left({\mathcal {P}}_{\mathrm {rej} }C_{k}^{\dagger }(\rho ^{\prime })C_{k}{\mathcal {P}}_{\mathrm {rej} }^{\dagger }\right)\Omega \otimes |\mathrm {REJ} \rangle \langle \mathrm {REJ} |.}$
In the above, ${\displaystyle \mathrm {tr} _{0}}$ is the trace over the auxiliary register only, and ${\displaystyle \mathrm {tr} }$ is the trace over the quantum message system and the auxiliary system. Furthermore, ${\displaystyle {\mathcal {P}}_{\mathrm {acc} }}$ and ${\displaystyle {\mathcal {P}}_{\mathrm {rej} }}$ refer to the measurement projectors that determine whether the protocol accepts or aborts the received quantum message. It is
${\displaystyle {\mathcal {P}}_{\mathrm {acc} }=\mathbb {1} ^{\otimes n}\otimes |0\rangle \langle 0|^{\otimes d}}$
and
${\displaystyle {\mathcal {P}}_{\mathrm {rej} }=\mathbb {1} ^{\otimes (n+d)}-{\mathcal {P}}_{\mathrm {acc} }.}$

## References

Contributed by Isabel Nha Minh Le and Shraddha Singh
This page was created within the QOSF Mentorship Program Cohort 4