This example protocol implements the functionality of Quantum Encryption with Certified Deletion using single-qubit state preparation and measurement.
Assumptions
Outline
The scheme consists of 5 circuits-
- Key: This circuit generates the key used in later stages
- Enc: This circuit encrypts the message using the key
- Dec: This circuit decrypts the ciphertext using the key and generates an error flag bit
- Del: This circuit deletes the ciphertext state and generates a deletion certificate
- Ver: This circuit verifies the validity of the deletion certificate using the key
Notation
Properties
Protocol Description
Circuit 1: Key
The key generation circuit
Input : None
Output: A key state
- Sample

- Sample
where ![{\displaystyle {\tilde {\mathcal {I}}}=\{i\in [m]|\theta _{i}=1\}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/1f19b0f3dddd697ae0591e924169ae8cfc6823a4)
- Sample

- Sample

- Sample

- Sample

- Sample

- Output

Circuit 2: Enc
The encryption circuit
Input : A plaintext state
and a key state
Output: A ciphertext state
- Sample
where ![{\displaystyle {\mathcal {I}}=\{i\in [m]|\theta _{i}=0\}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/ae3642241854dc14daf83232b7309f67112ca4c1)
- Compute
where ![{\displaystyle {\mathcal {I}}=\{i\in [m]|\theta _{i}=0\}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/ae3642241854dc14daf83232b7309f67112ca4c1)
- Compute

- Compute

- Output

Circuit 3: Dec
The decryption circuit
Input : A key state
and a ciphertext
Output: A plaintext state
and an error flag
- Compute

- Measure
in the computational basis. Call the result 
- Compute
where ![{\displaystyle {\mathcal {I}}=\{i\in [m]|\theta _{i}=0\}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/ae3642241854dc14daf83232b7309f67112ca4c1)
- Compute

- If
, then set
. Else, set 
- Compute

- Output

Circuit 4: Del
The deletion circuit
Input : A ciphertext
Output: A certificate string
- Measure
in the Hadamard basis. Call the output y.
- Output

Circuit 5: Ver
The verification circuit
Input : A key state
and a certificate string
Output: A bit
- Compute
where ![{\displaystyle {\mathcal {\tilde {I}}}=\{i\in [m]|\theta _{i}=1\}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/762c34e30cbe605f5123a9b09971ef6b60488468)
- Compute

- If
, output
. Else, output
.
Further Information
References