Dstack-TEE / Dstack-TEE/dstack
Alternative to RATLS
- Dominant language
- Rust
- Stars
- 544
- Forks
- 96
- Avg merge
- 17h 57m
- Merged PRs (30d)
- 117
Description
## Summary
There's [discussion](https://github.com/Dstack-TEE/dstack/pull/91#discussion_r1937196136) about moving away from relying solely on Remote Attestation TLS (RATLS) and considering alternative approaches for secure communication between services.
## Current Approach
Currently using RATLS for several services:
- KMS: onboarding RPC, key providing RPC
- tproxy: registering RPC
- CVM: Inter-App Secure Communication (WIP)
## Concerns
- Performance issues with RATLS (~1s for Azure to establish connection, longer if PCCS fetch needed)
- RATLS hides some implementation details which may be less transparent
## Alternative Approaches
- **Application-level attestation**: Exchange regular TLS certificates along with their attestations
- **Pre-registration approach**: Have each KMS instance register locally generated TLS cert+attestation on boot
## Considerations
- Remote attestation must happen at some level (TLS, HTTP, or Application)
- TLS-level attestation is easier to abstract and reuse across services
- Application-level attestation makes the security more visible but requires additional MITM protections
- Performance is critical for inter-app communication, less so for registration/onboarding
Contributor guide
Assessment
This issue has not been assessed yet.