Architecture¶
BlindTranspiler follows a modular layered architecture for rapid prototyping of blind quantum computation (BQC) protocols.
The framework separates orchestration logic, protocol-specific translation rules, and low-level instruction abstractions, allowing independent development and experimentation of different blind quantum computation models.
Design Philosophy¶
BlindTranspiler is designed as a research-oriented framework for experimentation in delegated secure quantum computation.
BlindTranspiler follows a layered modular architecture.
Layer 0 : Qiskit Primitives
↓
Layer 1 : Core I/O Modules
↓
Layer 2 : Controllers
↓
Layer 3 : Translators
The architecture separates:
framework primitives
orchestration logic
translation rules
delegated instruction representation
This provides:
modularity
maintainability
protocol scalability
framework independence
High-Level Design¶
The library is divided into three primary layers:
controllers— protocol orchestration and workflow managementtranslators— circuit-to-blind transformation rulesessentials— intermediate instruction abstractions
The modular design allows researchers to:
rapidly prototype new BQC protocols
benchmark blindness overheads
compare resource requirements
integrate custom translation strategies
experiment with hybrid delegation models
Package Structure¶
blind_transpiler/
│
├── essentials/
│ ├── bop.py
│ └── bqc_instruction.py
│
├── controllers/
│ ├── orchestrator.py
│ ├── qhe.py
│ ├── ubqc.py
│ ├── fdqc.py
│ └── ssdqc.py
│
└── translators/
├── homomorphicTranslator.py
├── universalRecursiveRotationTranslator.py
├── universalOrderedSetTranslator.py
└── universalFixedRotationTranslator.py
Controllers¶
The controllers layer coordinates protocol execution and
delegated computation workflows.
Responsibilities include:
orchestration of transpilation pipelines
protocol selection and execution
blindness resource estimation
basis-set preparation
compute-space management
Supported protocol controllers include:
QHE— quantum homomorphic encryptionUBQC— universal blind quantum computationFDQC— full delegated quantum computationSSDQC— single-server delegated quantum computation
Translators¶
The translators layer defines the transformation rules
used to convert standard quantum circuits into blind forms.
Different translators implement different blindness assumptions and gate decomposition strategies.
Responsibilities include:
gate rewriting
encrypted gate synthesis
basis transformation
blind instruction generation
recursive rotation decomposition
The translator layer is intentionally modular to support future protocol extensions.
Implemented Translation Libraries¶
HomomorphicTranslatorUniversalOrderedSetTranslatorUniversalFixedRotationTranslatorUniversalRecursiveRotationTranslator
Essentials¶
The essentials layer provides core abstractions used
throughout the framework.
Key components include:
BQCInstruction— intermediate blind instruction formatBOP— blind operation primitives
These abstractions decouple protocol logic from low-level circuit manipulation.
Typical Workflow¶
A standard workflow in BlindTranspiler follows:
User creates a Qiskit circuit.
A controller selects the target protocol.
The circuit is transpiled into an appropriate basis set.
A translator converts the circuit into blind instructions.
The resulting blind representation is returned for delegation.