QHE Controller

The QHE controller implements blind quantum computation using Quantum Homomorphic Encryption (QHE) based delegation techniques.

Translation Backend

Uses:

  • HomomorphicTranslator

The translator converts gates into encrypted delegated operations represented as BOP objects.

Supported Gates

The controller supports delegated execution of:

  • H

  • S

  • S†

  • T

  • T†

  • CX

  • CZ

  • CCX

  • arbitrary Rz

Module Documentation

class blind_transpiler.controllers.qhe.QHE[source]

Bases: BaseController

qhe(trans_circ, keys)[source]

Convert the circuit in half-blind quantum computation circuit. Note: An efficient way to coding might be through converting to DAG and adding the circuit, for now do the easy one.

Logic:
iterate the circuit element by element
check if element is client implementable

add instruction as op_type = ‘client’

if not

used ‘HomomorphicTranslation’ class to convert get the sequence of gates and store in list with order no.

Parameters:

trans_circ (QuantumCircuit) – transpiled circuit in the basis set whose translation is present in translator library.

Returns:

bqc_instruction (list[BOP])

list of BOP in order which they need to be implemented.