Detailed text description: Attestation flow
This page provides a long description of the attestation flow diagram used in the Attestation and the trustee service article. It shows how a confidential service gets started with the help of the trustee service.
Overview
Background colors mark trust. Green areas are trusted. Red areas with a dashed border are untrusted. The untrusted infrastructure is on the left. The trusted external infrastructure and the image registry are on the right.
Main components
- Untrusted infrastructure:
- A red area labeled with the Codesphere platform and hosts.
- Contains a green confidential micro-VM.
- Confidential micro-VM:
- Runs inside the untrusted infrastructure.
- Contains a gray attestation agent at the top.
- Contains the user workload below the attestation agent.
- All numbered arrows start or end at the attestation agent, except step 5.
- Trustee service:
- Runs on a green area labeled trusted external infrastructure.
- Image registry:
- Positioned below the trustee service, outside both areas.
Steps
- The untrusted infrastructure schedules the micro-VM.
- The attestation agent gets a nonce from the trustee service.
- The attestation agent generates the attestation report. This step is drawn as an arrow that loops back to the agent.
- The attestation agent sends the attestation report to the trustee service.
- The trustee service verifies the report. This step is drawn as an arrow that loops back to the trustee service.
- The trustee service releases keys and secrets to the attestation agent.
- The attestation agent pulls the image from the image registry.
- The attestation agent starts the user workload with the image and the secrets.