This repository contains the implementation of Trusted Compute Units, a system for enabling secure, verifiable, and auditable cross-organizational workflows.
The project is divided into three main components:
blockchain_storage/: Implementation of the Decentralized Management Platform (DMP)enclave_attestation/: Tools and utilities for Trusted Execution Environment (TEE) attestationverifiable_computation/: Implementation of Computing Part (AL) using TEEs and zkVMs
Test each component by following the instructions in their respective READMEs:
The blockchain_storage/ directory contains the smart contract implementation for the Decentralized Management Platform. This includes:
- TCU Registry
- Audit Trail
- Smart contracts for managing workflow states
To set up and run the blockchain component, refer to the README in the blockchain_storage/ directory.
The enclave_attestation/ directory contains tools and utilities for working with Trusted Execution Environments (TEEs), specifically AWS Nitro Enclaves. This includes:
- Attestation verification tools
- Secure communication utilities
For more information on setting up and using the enclave attestation tools, see the README in the enclave_attestation/ directory.
The verifiable_computation/ directory contains the implementation of Verifiable Computation Component (VCC) using both TEEs and zkVMs. This includes:
- Federating Learning Training and Aggregation implementations
- Matrix multiplication implementations
- Proving and verification modules
- Performance measurement tools
To run experiments and benchmarks, refer to the README in the verifiable_computation/ directory.
Contributions to this project are welcome. Please feel free to submit issues and pull requests.
Apache License, Version 2.0
For any questions or concerns, please open an issue in this repository.