Overview
The Trust Center is an open-source verification platform that automates the validation of TEE attestations for dstack-based applications. It performs multi-dimensional verification across hardware, operating system, source code, and domain ownership to provide cryptographic proof of deployment integrity. Architecture: Monorepo with TypeScript verifier library, background worker queue, and web dashboard. Repository: https://github.com/Phala-Network/trust-centerSystem Architecture
Components
-
Verifier Package (
@phala/dstack-verifier
)- Core TypeScript library for attestation verification
- Modular verifier classes with configurable flags
- Supports Intel TDX quote validation
- Platform-specific verifiers (PhalaCloud, Redpill.ai)
-
Background Worker
- Built on BullMQ for reliable job processing
- PostgreSQL for task persistence
- Redis for queue management
- Asynchronous verification execution
-
Web Application
- Next.js dashboard for report visualization
- Direct database access for read operations
- Real-time verification status updates
- Public report URLs for transparency
-
Storage Layer
- PostgreSQL: Verification tasks and results
- Redis: Job queue state
- S3-compatible: Raw attestation data and quotes
Verification Phases
The Trust Center performs verification in four distinct phases:Phase 1: Hardware Attestation
Validates the TEE quote to prove execution on genuine Intel hardware. What’s verified:- Quote signature: ECDSA-P256 signature validation using Intel certificates
- Certificate chain: Validates back to Intel root CA
- TCB status: Checks Trusted Computing Base security version
- Platform identity: Confirms genuine Intel TDX processor
- Revocation status: Verifies no certificates or platforms are revoked
- Quote verification with DCAP-QVL
- Invalid signature: Quote not signed by genuine TEE
- Revoked certificates: Platform or attestation key compromised
- Outdated TCB: Security patches not applied
Phase 2: Operating System Integrity
Confirms the OS image matches a known trusted dstack version. What’s verified:- MRTD: Measurement Root of Trust Domain (TD initial state)
- RTMR0: Virtual hardware environment
- RTMR1: Linux kernel measurement
- RTMR2: Kernel command line and initrd
- Dstack image verification with dstack-mr-cli
Phase 3: Source Code Verification
Validates the application code matches the deployed version. What’s verified:- compose-hash: SHA256 hash of
docker-compose.yaml
- app-id: Application identifier (used for key derivation)
- instance-id: Specific deployment instance
- key-provider: KMS service address
- RTMR3: Application measurement register containing above values
Phase 4: Domain Verification (Gateway Only)
For applications with custom domains, verifies zero-trust HTTPS. What’s verified:- TLS certificate: Private key generated in TEE
- CAA records: DNS locked to TEE-controlled Let’s Encrypt account
- Certificate Transparency: All certs logged to public CT logs
- Domain control: Cryptographic proof of domain ownership
- Extract TLS public key from
reportData
field - Query Certificate Transparency logs (via crt.sh)
- Verify all certificates for domain match the TEE public key
- Check CAA records point to TEE Let’s Encrypt account
- Confirm no unauthorized certificates exist
Using the Verifier Package
Basic Usage
Configurable Verification Flags
Platform-Specific Configuration
Error Handling
Self-Hosting Trust Center
Organizations can run their own Trust Center instance for private verification.Prerequisites
- Node.js 18+ / Bun
- PostgreSQL 14+
- Redis 6+
- S3-compatible storage (MinIO, AWS S3, etc.)
Setup
Configuration
.env
file:
Docker Deployment
Next Steps
- User Documentation: Trust Center Verification Reports
- Attestation Basics: Understanding TEE Attestation
- API Reference: Attestation API
- Dstack SDK: Getting Started with Dstack
Additional Resources
- GitHub Repository: trust-center
- DeepWiki Analysis: Technical Deep Dive
- Live Platform: trust.phala.com
- Dstack Attestation Docs: attestation.md