View Attestation Report on Dashboard
Open the Attestation tab in your CVM dashboard. Click Check Attestation to verify the default report generated during bootstrap.Generate Attestation Programmatically
Prerequisites: Configure Docker Compose
Your application needs access to the dstack service to generate attestation quotes. Mount the dstack socket into your container:Using dstack SDK
The dstack SDK connects to/var/run/dstack.sock automatically. Install for your language:
- JavaScript/TypeScript: @phala/dstack-sdk
- Python: dstack-sdk
- Go: github.com/Dstack-TEE/dstack
Attaching Custom Data (reportData)
The attestation quote includes a 64-bytereportData field for your custom data. Important: The SDK throws an error if you exceed 64 bytes—it does not auto-hash.
Two patterns:
- Short data (≤64 bytes): Nonces, small challenges, or hashes—pass directly
- Long data (>64 bytes): Any arbitrary data—hash it first with SHA256 (produces 32 bytes)
reportData Parameter RequiredThe
getQuote() method requires a reportData parameter. If you don’t need custom data, pass an empty value: '' in TypeScript or b'' in Python. Calling getQuote() without any parameter will fail.Exposing Attestation via API
Expose attestation endpoints so external verifiers can validate your CVM. The/attestation endpoint provides the quote for hardware verification, while /info provides the application configuration for code verification:
Next Steps
Verify Your Application
Prove your exact code is running
Verify the Platform
Verify OS, KMS, and infrastructure
Field Reference
Understand what each field in the quote means
Complete Security Checklist
Complete verification with no trust assumptions

