OutLayer — TEE Attestation

Verifiable off-chain compute for NEAR · outlayer.ai ↗

Full per-aspect verification for app 84e6f624b6e23f98254489c96da228fe3ae56f6e.

One running instance of this app on a self-hosted Intel TDX host. Every TDX quote is Intel-DCAP-verified (signature + TCB, via Intel's PCS) and cross-checked against the on-chain approved measurements — independently re-verifiable.
kms KMS running · up 3months 1day 22h 16m 16s
last push just now app_id 84e6f624b6e23f98254489c96da228fe3ae56f6e vm_id 36b47e71-b446-4ec4-923c-63cd01e2a0fb attested via Intel DCAP (Intel PCS collateral) gateway n/a
2

TDX Hardware — Attestation

The hardware-signed TDX quote, verified against Intel's PCS collateral — the Intel DCAP signature chain, not Intel Trust Authority.

verifying…

Quote not decoded yet — showing the measurements as reported (to be cryptographically verified).

mrtd7fe60787222bd394cb516abca2435f22f035ab2cc9c0a4b4b3b148e46297f3d931a237b72f359052c6e657d8c1409173
rtmr0c80cb986edb2c43eb73fef0a5d380488bfc10becde3b5bb61ae8076ccc05811bdebda9dd3bab959aab34ed5fe5e33d3e
rtmr1ff61e68fa04516b1813d2d478397a97a58f9ccc402b6d96fb73f5e5104a4acf155913caec99a0c19afc16ae0f3a77726
rtmr2ad1ed113dbecf8516b1ae1ba33a5188d61dd4a4baf5c181c1dd3c61ed8b91a624b5ac2242328028e540d9a2fb4f2dbfe
rtmr341793ed37f58abd22291d652a68ef0e601c738e0e520deb6c5c3267ddf166c73ee835666b068cb3e4a12fcada234f8d5
3

Source Code — Compose

The measured app-compose that pins exactly which container images run.

ContainerImageDigestVerify
kms dstacktee/dstack-kmsdstack system image sha256:84b793feed825a5b5e70d04386e931e0e110461492793f17ab2128e39808d989 Sigstore ↗

Each digest above is the one measured into RTMR3, so the attestation binds the running code to this exact image; the Sigstore link ties that digest back to its build provenance.

app-compose (measured source identity)
{
    "manifest_version": 2,
    "name": "kms",
    "runner": "docker-compose",
    "docker_compose_file": "# SPDX-FileCopyrightText: © 2025 Phala Network <[email protected]>\n#\n# SPDX-License-Identifier: Apache-2.0\n\n# KMS deployment with external auth-simple webhook\n# auth-simple runs outside the CVM (operator infrastructure)\n\nservices:\n  kms:\n    image: dstacktee/dstack-kms@sha256:84b793feed825a5b5e70d04386e931e0e110461492793f17ab2128e39808d989\n    network_mode: host\n    volumes:\n      - kms-volume:/kms\n      - /var/run/dstack.sock:/var/run/dstack.sock\n    restart: unless-stopped\n    configs:\n      - source: kms_config\n        target: /kms/kms.toml\n    command: sh -c 'mkdir -p /kms/certs /kms/images && exec dstack-kms -c /kms/kms.toml'\n\nvolumes:\n  kms-volume:\n\nconfigs:\n  kms_config:\n    content: |\n      [rpc]\n      address = \"0.0.0.0\"\n      port = 8000\n\n      [rpc.tls]\n      key = \"/kms/certs/rpc.key\"\n      certs = \"/kms/certs/rpc.crt\"\n\n      [rpc.tls.mutual]\n      ca_certs = \"/kms/certs/tmp-ca.crt\"\n      mandatory = false\n\n      [core]\n      cert_dir = \"/kms/certs\"\n      admin_token_hash = \"f7de6e5b9f3f9112a603089cab8a2c572296be0ff613c47582b5f26d12e7c4e6\"\n\n      [core.image]\n      verify = true\n      cache_dir = \"/kms/images\"\n      download_url = \"http://10.0.2.2:11008/dstack-0.5.11.tar.gz\"\n      download_timeout = \"2m\"\n\n      [core.auth_api]\n      type = \"webhook\"\n\n      [core.auth_api.webhook]\n      url = \"http://10.0.2.2:3001\"\n\n      [core.onboard]\n      enabled = true\n      auto_bootstrap_domain = \"\"\n      address = \"0.0.0.0\"\n      port = 8000\n",
    "kms_enabled": false,
    "gateway_enabled": false,
    "local_key_provider_enabled": true,
    "key_provider_id": "",
    "public_logs": true,
    "public_sysinfo": true,
    "allowed_envs": [],
    "no_instance_id": true,
    "secure_time": true
}
image_digests dstacktee/dstack-kms@sha256:84b793feed825a5b5e70d04386e931e0e110461492793f17ab2128e39808d989
4

Network — Zero Trust Gateway

no app-fronted gateway domain for this role (n/a)

5

App OS

The measured dstack guest OS image. The version is read live from each CVM's vm_config; the os_image_hash is the precise, measured OS identity. dstack releases ↗.

os_versiondstack-0.5.11
os_image_hashc2aa0186182fe8a404f16d5f3facb334d89be32703b3571c401b114a8b6e700d
mr_aggregateddf1987ba3ab3ecc904a1170cd5d45b122535ce4144f1517afa1c7237db5a53b9
compose_hash84e6f624b6e23f98254489c96da228fe3ae56f6ed9fc8bcb5de5d0dd46b2e221
6

KMS — deploy-time key provisioning

Deploy-time only. Governed by an on-chain contract, the dstack KMS releases this CVM's keys at boot only if its measurements are approved — those keys decrypt the deployment env file (so secrets never enter the measured compose) and provision the CVM's RA-TLS identity + disk encryption. This secures how the worker is deployed; it does not hold OutLayer's application or user secrets — those run through the OutLayer keystore (master derived in-TEE via MPC), not the dstack KMS.

key_provider local-sgx