OutLayer — TEE Attestation

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

Full per-aspect verification for app c69f00b363dd5adc0baebd4cc359e4778daf3b57.

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.
instance 1 of 3 testnet-worker-0141-3 Worker testnet ✓ Verified
testnet-worker-0141-3 Worker testnet instance 1 of 3 running · up 1h 37m 29s
last push 2m ago app_id c69f00b363dd5adc0baebd4cc359e4778daf3b57 vm_id c5256b29-859c-44f1-9951-ada017776e8b attested via Intel DCAP (Intel PCS collateral) KMS-in-TEE ✓ gateway c69f00b363dd5adc0baebd4cc359e4778daf3b57-8081.dstack.outlayer.ai
2

TDX Hardware — Attestation

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

Signature ✓ TCB UpToDate Measurements ✓ On-chain ✓ approved (worker.outlayer.testnet)
mrtd7fe60787222bd394cb516abca2435f22f035ab2cc9c0a4b4b3b148e46297f3d931a237b72f359052c6e657d8c1409173
rtmr0530526e456733dff151712d1db1728cfc3bc85ed0a6c13653add2e644c57068009595b935f6a50ce4a714bad2b33bc8e
rtmr1e8601b64942f9f7a66f4d8f5727c0a7d4a71953cfc3c7d13e043f8ddf4f94d2358afd17e01f567a5d8209f3cf7479489
rtmr2ad1ed113dbecf8516b1ae1ba33a5188d61dd4a4baf5c181c1dd3c61ed8b91a624b5ac2242328028e540d9a2fb4f2dbfe
rtmr3912d7ec71a1e73f1386c39de34d501078a18338fbfcf4482ea2a29ba070b34c71994a9b7f03205c6f4a70101d01925d3
report_dataf275393f4e8c44b3f11017c9308fe6dbe20fbe9711229582696c78109c4648612fc43e405beeb64cde27a3c052e01fe98945f686536f8a457233a74c5c928414
mr_seam346bc77a1846cac214dd2e8edeb9ee4349449d6c3f9ff2c52149a634c27b7fd1bd314c2ef6b973eeebd55742952531a1
mr_signer_seam000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
tee_tcb_svn0e010400000000000000000000000000
td_attributes0000001000000000
xfame702060000000000
fmspc B0C06F000000
raw Intel TDX quote (hex)
040002008100000000000000939a7233f79c4ca9940a0db3957f06070a70698a1e9d04b2c4d8d756a5da5721000000000e010400000000000000000000000000346bc77a1846cac214dd2e8edeb9ee4349449d6c3f9ff2c52149a634c27b7fd1bd314c2ef6b973eeebd55742952531a100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000e7020600000000007fe60787222bd394cb516abca2435f22f035ab2cc9c0a4b4b3b148e46297f3d931a237b72f359052c6e657d8c140917301c69f00b363dd5adc0baebd4cc359e4778daf3b5713ee3b7ea112b1656e21f40d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000530526e456733dff151712d1db1728cfc3bc85ed0a6c13653add2e644c57068009595b935f6a50ce4a714bad2b33bc8ee8601b64942f9f7a66f4d8f5727c0a7d4a71953cfc3c7d13e043f8ddf4f94d2358afd17e01f567a5d8209f3cf7479489ad1ed113dbecf8516b1ae1ba33a5188d61dd4a4baf5c181c1dd3c61ed8b91a624b5ac2242328028e540d9a2fb4f2dbfe912d7ec71a1e73f1386c39de34d501078a18338fbfcf4482ea2a29ba070b34c71994a9b7f03205c6f4a70101d01925d3f275393f4e8c44b3f11017c9308fe6dbe20fbe9711229582696c78109c4648612fc43e405beeb64cde27a3c052e01fe98945f686536f8a457233a74c5c928414cc100000ad6af2971c3964d3f8551328220dee57474ba563525ae60fd47ab4bbe066fc30cd56b21c716363a8d7eef0b707a885d2925035ae2a0c48971ad0e774abd07b78ffbdc02d29e681562605cc758a65e873f068217804a256c678a15343e72f8b3f9f42b9d44d018713649bdccb0279c8930399078491a4ab33990b23fd987343960600461000000404191b04ff0006000000000000000000000000000000000000000000000000000000000000000000000000000000001500000000000000e700000000000000e5a3a7b5d830c2953b98534c6c59a3a34fdc34e933f7f5898f0a85cf08846bca0000000000000000000000000000000000000000000000000000000000000000dc9e2a7c6f948f17474e34a7fc43ed030f7c1563f1babddf6340c82e0e54a8c500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000645a6bec02c28eca73026584c079befc9d37e6fa11fe5e0f240db18a2c7b7091000000000000000000000000000000000000000000000000000000000000000071c186a1b3f91c322b37978c44d320fdd5f875af6eeac0f35fabfed55734f3a815df25a824b18d4c1d8ad4f2b6e3dfffcd556787004574fa07931aed846e76162000000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f05005e0e00002d2d2d2d2d424547494e2043455254494649434154452d2d2d2d2d0a4d49494538444343424a6167417749424167495557576756566c2b6478713232783158436a576e69652f4845327a4577436759494b6f5a497a6a3045417749770a634445694d434147413155454177775a535735305a577767553064594946424453794251624746305a6d397962534244515445614d42674741315545436777520a535735305a577767513239796347397959585270623234784644415342674e564241634d43314e68626e526849454e7359584a684d51737743515944565151490a44414a445154454c4d416b474131554542684d4356564d774868634e4d6a59774e6a49304d5441304d5441305768634e4d7a4d774e6a49304d5441304d5441300a576a42774d534977494159445651514444426c4a626e526c624342545231676755454e4c49454e6c636e52705a6d6c6a5958526c4d526f77474159445651514b0a4442464a626e526c6243424462334a7762334a6864476c76626a45554d424947413155454277774c553246756447456751327868636d4578437a414a42674e560a4241674d416b4e424d517377435159445651514745774a56557a425a4d424d4742797147534d34394167454743437147534d34394177454841304941424268660a6259335937394a4e76496d53774c5a6c395742717355747958706f50444a592b43424c526c323631664d3650547a7a6e2f6b4d4e48414b64345754714e3167500a466465546878426437413454497a584a5442756a67674d4d4d4949444344416642674e5648534d4547444157674253566231334e765276683655424a796454300a4d383442567776655644427242674e56485238455a4442694d47436758714263686c706f64485277637a6f764c32467761533530636e567a6447566b633256790a646d6c6a5a584d75615735305a577775593239744c334e6e6543396a5a584a3061575a7059324630615739754c3359304c33426a61324e796244396a595431770a624746305a6d397962535a6c626d4e765a476c755a7a316b5a584977485159445652304f42425945464632786963526263414f697a527369637242302b4979410a465969494d41344741315564447745422f775145417749477744414d42674e5648524d4241663845416a41414d4949434f51594a4b6f5a496876684e415130420a424949434b6a4343416959774867594b4b6f5a496876684e41513042415151513655423973394155344551773248306a74454279517a434341574d47436971470a534962345451454e41514977676746544d42414743797147534962345451454e41514942416745454d42414743797147534962345451454e41514943416745450a4d42414743797147534962345451454e41514944416745434d42414743797147534962345451454e41514945416745434d42414743797147534962345451454e0a41514946416745454d42414743797147534962345451454e41514947416745424d42414743797147534962345451454e41514948416745414d424147437971470a534962345451454e41514949416745464d42414743797147534962345451454e4151494a416745414d42414743797147534962345451454e4151494b416745410a4d42414743797147534962345451454e4151494c416745414d42414743797147534962345451454e4151494d416745414d42414743797147534962345451454e0a4151494e416745414d42414743797147534962345451454e4151494f416745414d42414743797147534962345451454e41514950416745414d424147437971470a534962345451454e41514951416745414d42414743797147534962345451454e415149524167454c4d42384743797147534962345451454e41514953424241450a42414943424145414251414141414141414141414d42414743697147534962345451454e41514d45416741414d42514743697147534962345451454e415151450a42724441627741414144415042676f71686b69472b45304244514546436745424d42344743697147534962345451454e4151594545455871485a4a42335245730a636d357a68667551676334775241594b4b6f5a496876684e41513042427a41324d42414743797147534962345451454e415163424151482f4d424147437971470a534962345451454e415163434151482f4d42414743797147534962345451454e415163444151482f4d416f4743437147534d343942414d43413067414d4555430a4951437478734a6364586c4e2b395370734c6373426e494a4a65446f7a774e4179677a4c51594c38776f5339326749674e527168344730374d4b352b306c45690a63433748696a42786a626c77677a41714b63365470424a563468633d0a2d2d2d2d2d454e442043455254494649434154452d2d2d2d2d0a2d2d2d2d2d424547494e2043455254494649434154452d2d2d2d2d0a4d4949436c6a4343416a32674177494241674956414a567658633239472b487051456e4a3150517a7a674658433935554d416f4743437147534d343942414d430a4d476778476a415942674e5642414d4d45556c756447567349464e48574342536232393049454e424d526f77474159445651514b4442464a626e526c624342440a62334a7762334a6864476c76626a45554d424947413155454277774c553246756447456751327868636d4578437a414a42674e564241674d416b4e424d5173770a435159445651514745774a56557a4165467730784f4441314d6a45784d4455774d5442614677307a4d7a41314d6a45784d4455774d5442614d484178496a41670a42674e5642414d4d47556c756447567349464e4857434251513073675547786864475a76636d306751304578476a415942674e5642416f4d45556c75644756730a49454e76636e4276636d4630615739754d5251774567594456515148444174545957353059534244624746795954454c4d416b474131554543417743513045780a437a414a42674e5642415954416c56544d466b77457759484b6f5a497a6a3043415159494b6f5a497a6a304441516344516741454e53422f377432316c58534f0a3243757a7078773734654a423732457944476757357258437478327456544c7136684b6b367a2b5569525a436e71523770734f766771466553786c6d546c4a6c0a65546d693257597a33714f42757a43427544416642674e5648534d4547444157674251695a517a575770303069664f44744a5653763141624f536347724442530a42674e5648523845537a424a4d45656752614244686b466f64485277637a6f764c324e6c636e52705a6d6c6a5958526c63793530636e567a6447566b633256790a646d6c6a5a584d75615735305a577775593239744c306c756447567355306459556d397664454e424c6d526c636a416442674e5648513445466751556c5739640a7a62306234656c4153636e553944504f4156634c336c517744675944565230504151482f42415144416745474d42494741315564457745422f7751494d4159420a4166384341514177436759494b6f5a497a6a30454177494452774177524149675873566b6930772b6936565947573355462f32327561586530594a446a3155650a6e412b546a44316169356343494359623153416d4435786b66545670766f34556f79695359787244574c6d5552344349394e4b7966504e2b0a2d2d2d2d2d454e442043455254494649434154452d2d2d2d2d0a2d2d2d2d2d424547494e2043455254494649434154452d2d2d2d2d0a4d4949436a7a4343416a53674177494241674955496d554d316c71644e496e7a6737535655723951477a6b6e42717777436759494b6f5a497a6a3045417749770a614445614d4267474131554541777752535735305a5777675530645949464a766233516751304578476a415942674e5642416f4d45556c756447567349454e760a636e4276636d4630615739754d5251774567594456515148444174545957353059534244624746795954454c4d416b47413155454341774351304578437a414a0a42674e5642415954416c56544d423458445445344d4455794d5445774e4455784d466f58445451354d54497a4d54497a4e546b314f566f77614445614d4267470a4131554541777752535735305a5777675530645949464a766233516751304578476a415942674e5642416f4d45556c756447567349454e76636e4276636d46300a615739754d5251774567594456515148444174545957353059534244624746795954454c4d416b47413155454341774351304578437a414a42674e56424159540a416c56544d466b77457759484b6f5a497a6a3043415159494b6f5a497a6a3044415163445167414543366e45774d4449595a4f6a2f69505773437a61454b69370a314f694f534c52466857476a626e42564a66566e6b59347533496a6b4459594c304d784f346d717379596a6c42616c54565978465032734a424b357a6c4b4f420a757a43427544416642674e5648534d4547444157674251695a517a575770303069664f44744a5653763141624f5363477244425342674e5648523845537a424a0a4d45656752614244686b466f64485277637a6f764c324e6c636e52705a6d6c6a5958526c63793530636e567a6447566b63325679646d6c6a5a584d75615735300a5a577775593239744c306c756447567355306459556d397664454e424c6d526c636a416442674e564851344546675155496d554d316c71644e496e7a673753560a55723951477a6b6e4271777744675944565230504151482f42415144416745474d42494741315564457745422f7751494d4159424166384341514577436759490a4b6f5a497a6a3045417749445351417752674968414f572f35516b522b533943695344634e6f6f774c7550524c735747662f59693747535839344267775477670a41694541344a306c72486f4d732b586f356f2f7358364f39515778485241765a55474f6452513763767152586171493d0a2d2d2d2d2d454e442043455254494649434154452d2d2d2d2d0a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000280300000001000008004073797374656d2d707265706172696e6700030000000100000800186170702d696450c69f00b363dd5adc0baebd4cc359e4778daf3b5703000000010000080030636f6d706f73652d6861736880c69f00b363dd5adc0baebd4cc359e4778daf3b5713ee3b7ea112b1656e21f40d0300000001000008002c696e7374616e63652d69640003000000010000080030626f6f742d6d722d646f6e6500030000000100000800186d722d6b6d738075f017143f240a7d770c54f24af58d4162e4230c5cc819c75fad78711a22981c030000000100000800346f732d696d6167652d6861736880c2aa0186182fe8a404f16d5f3facb334d89be32703b3571c401b114a8b6e700d030000000100000800306b65792d70726f766964657231037b226e616d65223a226b6d73222c226964223a223330353933303133303630373261383634386365336430323031303630383261383634386365336430333031303730333432303030343635343431633663353463306133343535373361363532383464336537396666353535386263383532316465343232613436626562653034306239383462653139326333373230366239373562303034636534623663326436306366353864653135383063646530643364663337363261343435353761643035646430656665227d0300000001000008002873746f726167652d66730c7a66730300000001000008003073797374656d2d726561647900284073797374656d2d707265706172696e6700186170702d696450c69f00b363dd5adc0baebd4cc359e4778daf3b5730636f6d706f73652d6861736880c69f00b363dd5adc0baebd4cc359e4778daf3b5713ee3b7ea112b1656e21f40d2c696e7374616e63652d69640030626f6f742d6d722d646f6e6500186d722d6b6d738075f017143f240a7d770c54f24af58d4162e4230c5cc819c75fad78711a22981c346f732d696d6167652d6861736880c2aa0186182fe8a404f16d5f3facb334d89be32703b3571c401b114a8b6e700d306b65792d70726f766964657231037b226e616d65223a226b6d73222c226964223a223330353933303133303630373261383634386365336430323031303630383261383634386365336430333031303730333432303030343635343431633663353463306133343535373361363532383464336537396666353535386263383532316465343232613436626562653034306239383462653139326333373230366239373562303034636534623663326436306366353864653135383063646530643364663337363261343435353761643035646430656665227d2873746f726167652d66730c7a66733073797374656d2d726561647900f275393f4e8c44b3f11017c9308fe6dbe20fbe9711229582696c78109c4648612fc43e405beeb64cde27a3c052e01fe98945f686536f8a457233a74c5c9284141d057b226f735f696d6167655f68617368223a2263326161303138363138326665386134303466313664356633666163623333346438396265333237303362333537316334303162313134613862366537303064222c226370755f636f756e74223a312c226d656d6f72795f73697a65223a313037333734313832342c2271656d755f76657273696f6e223a22382e322e32222c227063695f686f6c6536345f73697a65223a302c22687567657061676573223a66616c73652c226e756d5f67707573223a302c226e756d5f6e767377697463686573223a302c22686f74706c75675f6f6666223a66616c73652c22696d616765223a2264737461636b2d302e352e3131222c22686f73745f73686172655f6d6f6465223a223970222c226f766d665f76617269616e74223a22707265323032353035222c22737065635f76657273696f6e223a317d
independently verify this quote ↗
3

Source Code — Compose

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

ContainerImageDigestVerify
worker docker.io/outlayer/near-outlayer-workerOutLayer-built sha256:4c649c1f8e53f7b553d2c742ea12cc40b14cae34840a1e6018e10772b2119b71 Sigstore ↗ release ↗

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": "outlayer-worker-testnet-0.1.41",
    "runner": "docker-compose",
    "docker_compose_file": "# OutLayer worker — deployed as a dstack CVM on a self-hosted TDX node.\n#\n# - image is pinned BY DIGEST (verifiable, Sigstore-attested release build) so the\n#   app-compose hash (measured into RTMR3) is deterministic. 40-deploy-worker.sh\n#   rewrites this digest for the chosen --version from the GitHub release.\n# - secrets are NOT here: env VALUES come via `vmm-cli ... --env-file worker.env`\n#   (encrypted by the per-node KMS + embedded as a ciphertext blob). The compose text\n#   keeps only ${VAR} references, so plaintext secrets never enter the measured compose;\n#   dstack decrypts the env inside the CVM and docker-compose substitutes at runtime.\n# - the worker is outbound-only (polls the coordinator); no inbound ports.\n# - /var/run/dstack.sock is provided by dstack inside the CVM (TDX quotes).\n# - single worker service, no compiler sidecar (COMPILATION_ENABLED=false); no docker.sock —\n#   execution is in-process wasmedge.\n\nservices:\n  worker:\n    image: docker.io/outlayer/near-outlayer-worker@sha256:4c649c1f8e53f7b553d2c742ea12cc40b14cae34840a1e6018e10772b2119b71\n    restart: on-failure:5\n    environment:\n      API_BASE_URL: ${API_BASE_URL}\n      API_AUTH_TOKEN: ${API_AUTH_TOKEN}\n      NEAR_RPC_URL: ${NEAR_RPC_URL}\n      OFFCHAINVM_CONTRACT_ID: ${OFFCHAINVM_CONTRACT_ID}\n      OPERATOR_ACCOUNT_ID: ${OPERATOR_ACCOUNT_ID}\n      # In TEE mode the operator key is generated at registration; only set for legacy mode.\n      OPERATOR_PRIVATE_KEY: ${OPERATOR_PRIVATE_KEY:-}\n      TEE_MODE: ${TEE_MODE}\n      USE_TEE_REGISTRATION: ${USE_TEE_REGISTRATION}\n      # Signature scheme for the on-chain worker key: ed25519 (default) or ml-dsa-65.\n      WORKER_KEY_TYPE: ${WORKER_KEY_TYPE:-ed25519}\n      COMPILATION_ENABLED: ${COMPILATION_ENABLED}\n      # NOTE: do NOT pass COMPILATION_MODE to an EXECUTION worker. The worker rejects\n      # COMPILATION_MODE=native + EXECUTION_ENABLED=true (a native compiler could exfiltrate\n      # env secrets). This is an execution-only worker (COMPILATION_ENABLED=false), so leave\n      # COMPILATION_MODE unset for an execution-only worker. (The env file may still\n      # carry it harmlessly; the worker only sees what this compose passes.)\n      EXECUTION_ENABLED: ${EXECUTION_ENABLED}\n      # Init account pays gas for worker registration when USE_TEE_REGISTRATION=true.\n      INIT_ACCOUNT_ID: ${INIT_ACCOUNT_ID:-}\n      INIT_ACCOUNT_PRIVATE_KEY: ${INIT_ACCOUNT_PRIVATE_KEY:-}\n      KEYSTORE_BASE_URL: ${KEYSTORE_BASE_URL:-}\n      KEYSTORE_AUTH_TOKEN: ${KEYSTORE_AUTH_TOKEN:-}\n      RUST_LOG: ${RUST_LOG:-info}\n      SAVE_SYSTEM_HIDDEN_LOGS_TO_DEBUG: ${SAVE_SYSTEM_HIDDEN_LOGS_TO_DEBUG:-false}\n      PRINT_WASM_STDERR: ${PRINT_WASM_STDERR:-false}\n      ENABLE_EVENT_MONITOR: ${ENABLE_EVENT_MONITOR:-false}\n      NEARDATA_API_URL: ${NEARDATA_API_URL:-}\n      FASTNEAR_API_URL: ${FASTNEAR_API_URL:-}\n      START_BLOCK_HEIGHT: ${START_BLOCK_HEIGHT:-0}\n      WASM_CACHE_MAX_SIZE_MB: ${WASM_CACHE_MAX_SIZE_MB:-100}\n      POLL_TIMEOUT_SECONDS: 30\n    volumes:\n      - /var/run/dstack.sock:/var/run/dstack.sock:ro\n",
    "kms_enabled": true,
    "gateway_enabled": false,
    "local_key_provider_enabled": false,
    "key_provider_id": "",
    "public_logs": true,
    "public_sysinfo": false,
    "allowed_envs": [
        "API_BASE_URL",
        "API_AUTH_TOKEN",
        "NEAR_RPC_URL",
        "NEARDATA_API_URL",
        "FASTNEAR_API_URL",
        "START_BLOCK_HEIGHT",
        "OFFCHAINVM_CONTRACT_ID",
        "OPERATOR_ACCOUNT_ID",
        "TEE_MODE",
        "USE_TEE_REGISTRATION",
        "EXECUTION_ENABLED",
        "COMPILATION_ENABLED",
        "COMPILATION_MODE",
        "ENABLE_EVENT_MONITOR",
        "INIT_ACCOUNT_ID",
        "INIT_ACCOUNT_PRIVATE_KEY",
        "WORKER_KEY_TYPE",
        "KEYSTORE_BASE_URL",
        "KEYSTORE_AUTH_TOKEN",
        "RUST_LOG",
        "WASM_CACHE_MAX_SIZE_MB",
        "SAVE_SYSTEM_HIDDEN_LOGS_TO_DEBUG",
        "PRINT_WASM_STDERR"
    ],
    "no_instance_id": true,
    "secure_time": false
}
image_digests docker.io/outlayer/near-outlayer-worker@sha256:4c649c1f8e53f7b553d2c742ea12cc40b14cae34840a1e6018e10772b2119b71
4

Network — Zero Trust Gateway

TLS terminates inside the TEE — the gateway never sees plaintext.

guarded domainc69f00b363dd5adc0baebd4cc359e4778daf3b57-8081.dstack.outlayer.ai
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_aggregated4fa0a4c1c2b83cff7fcfb4a914921984cfa2010f2ac66ec57a7b1faa04decb01
compose_hashc69f00b363dd5adc0baebd4cc359e4778daf3b5713ee3b7ea112b1656e21f40d
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 kms
instance 2 of 3 testnet-worker-0141-1 Worker testnet ✓ Verified
testnet-worker-0141-1 Worker testnet instance 2 of 3 running · up 2h 33m 41s
last push 1m ago app_id c69f00b363dd5adc0baebd4cc359e4778daf3b57 vm_id a4c14199-ac4e-4d04-888f-74e3fe444e3a attested via Intel DCAP (Intel PCS collateral) KMS-in-TEE ✓ gateway c69f00b363dd5adc0baebd4cc359e4778daf3b57-8081.dstack.outlayer.ai
2

TDX Hardware — Attestation

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

Signature ✓ TCB UpToDate Measurements ✓ On-chain ✓ approved (worker.outlayer.testnet)
mrtd7fe60787222bd394cb516abca2435f22f035ab2cc9c0a4b4b3b148e46297f3d931a237b72f359052c6e657d8c1409173
rtmr0530526e456733dff151712d1db1728cfc3bc85ed0a6c13653add2e644c57068009595b935f6a50ce4a714bad2b33bc8e
rtmr1e8601b64942f9f7a66f4d8f5727c0a7d4a71953cfc3c7d13e043f8ddf4f94d2358afd17e01f567a5d8209f3cf7479489
rtmr2ad1ed113dbecf8516b1ae1ba33a5188d61dd4a4baf5c181c1dd3c61ed8b91a624b5ac2242328028e540d9a2fb4f2dbfe
rtmr3650030802c5f05135ef9c63a67e01dd236c7d8b1536b70aad144144f4f6c9ee084dfc3823066758574ac289de8fe2e31
report_datae663121aac9102a3dab3db5499db6a0c770c5363b7fb862ba070236a04812923c51f9d171e97494b5dcafe44b3d2f55423296600189cb95fdc6d7bc8f29c836d
mr_seam346bc77a1846cac214dd2e8edeb9ee4349449d6c3f9ff2c52149a634c27b7fd1bd314c2ef6b973eeebd55742952531a1
mr_signer_seam000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
tee_tcb_svn0e010400000000000000000000000000
td_attributes0000001000000000
xfame702060000000000
fmspc B0C06F000000
raw Intel TDX quote (hex)
040002008100000000000000939a7233f79c4ca9940a0db3957f06070f5653fb3a17c211c1a8b923dadde72d000000000e010400000000000000000000000000346bc77a1846cac214dd2e8edeb9ee4349449d6c3f9ff2c52149a634c27b7fd1bd314c2ef6b973eeebd55742952531a100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000e7020600000000007fe60787222bd394cb516abca2435f22f035ab2cc9c0a4b4b3b148e46297f3d931a237b72f359052c6e657d8c140917301c69f00b363dd5adc0baebd4cc359e4778daf3b5713ee3b7ea112b1656e21f40d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000530526e456733dff151712d1db1728cfc3bc85ed0a6c13653add2e644c57068009595b935f6a50ce4a714bad2b33bc8ee8601b64942f9f7a66f4d8f5727c0a7d4a71953cfc3c7d13e043f8ddf4f94d2358afd17e01f567a5d8209f3cf7479489ad1ed113dbecf8516b1ae1ba33a5188d61dd4a4baf5c181c1dd3c61ed8b91a624b5ac2242328028e540d9a2fb4f2dbfe650030802c5f05135ef9c63a67e01dd236c7d8b1536b70aad144144f4f6c9ee084dfc3823066758574ac289de8fe2e31e663121aac9102a3dab3db5499db6a0c770c5363b7fb862ba070236a04812923c51f9d171e97494b5dcafe44b3d2f55423296600189cb95fdc6d7bc8f29c836dcc1000006a7fe0c2c7f83751cb65edffba47027e033c848d23c78f96a84f680e9c4d95a9a3ff00fb997f244bb02d6a221fa2085c926e0050dce647697f6edf3bcab6d966ef1f1cf8feb233c0acc81deb150a55ff8b2c71d81ec0662ca2615cd8eb42e143b5d1834b936a2e1872e843b8eaa068eecb242566a6c7aec44eab07a84e91098c0600461000000404191b04ff0006000000000000000000000000000000000000000000000000000000000000000000000000000000001500000000000000e700000000000000e5a3a7b5d830c2953b98534c6c59a3a34fdc34e933f7f5898f0a85cf08846bca0000000000000000000000000000000000000000000000000000000000000000dc9e2a7c6f948f17474e34a7fc43ed030f7c1563f1babddf6340c82e0e54a8c500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a9311fe5e0a216fba47ef5034404cadf87d8a0b80fbeaa6459b8943bac9b66c30000000000000000000000000000000000000000000000000000000000000000eec2a9018f0cd434f3a0ef5a61b3cdf2ac28b1794219e131e9df4f648ef269729137ad274fd10c7fbed89a5d666ad6b4fa6940b09b304b5b140b5a33602b1f052000000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f05005e0e00002d2d2d2d2d424547494e2043455254494649434154452d2d2d2d2d0a4d49494538444343424a61674177494241674955557a44746f56506f624e4b5443552f5145786c584b4f67536c4c5977436759494b6f5a497a6a3045417749770a634445694d434147413155454177775a535735305a577767553064594946424453794251624746305a6d397962534244515445614d42674741315545436777520a535735305a577767513239796347397959585270623234784644415342674e564241634d43314e68626e526849454e7359584a684d51737743515944565151490a44414a445154454c4d416b474131554542684d4356564d774868634e4d6a59774e6a45334d4467304d6a45785768634e4d7a4d774e6a45334d4467304d6a45780a576a42774d534977494159445651514444426c4a626e526c624342545231676755454e4c49454e6c636e52705a6d6c6a5958526c4d526f77474159445651514b0a4442464a626e526c6243424462334a7762334a6864476c76626a45554d424947413155454277774c553246756447456751327868636d4578437a414a42674e560a4241674d416b4e424d517377435159445651514745774a56557a425a4d424d4742797147534d34394167454743437147534d343941774548413049414243346d0a6c676c3368572f32796a3364307433714c744258317967705a49673753786a463348676946382f30724367527368787a6f585264776730573457476c494e68700a2b3672596f37327247783566676c704d4136576a67674d4d4d4949444344416642674e5648534d4547444157674253566231334e765276683655424a796454300a4d383442567776655644427242674e56485238455a4442694d47436758714263686c706f64485277637a6f764c32467761533530636e567a6447566b633256790a646d6c6a5a584d75615735305a577775593239744c334e6e6543396a5a584a3061575a7059324630615739754c3359304c33426a61324e796244396a595431770a624746305a6d397962535a6c626d4e765a476c755a7a316b5a584977485159445652304f42425945464438344e6e2b6f334d422b44586c6f666847654d6f34430a4a5047584d41344741315564447745422f775145417749477744414d42674e5648524d4241663845416a41414d4949434f51594a4b6f5a496876684e415130420a424949434b6a4343416959774867594b4b6f5a496876684e41513042415151516e7a5a794c2f434f52656d764f546c354c6e61733554434341574d47436971470a534962345451454e41514977676746544d42414743797147534962345451454e41514942416745454d42414743797147534962345451454e41514943416745450a4d42414743797147534962345451454e41514944416745434d42414743797147534962345451454e41514945416745434d42414743797147534962345451454e0a41514946416745454d42414743797147534962345451454e41514947416745424d42414743797147534962345451454e41514948416745414d424147437971470a534962345451454e41514949416745464d42414743797147534962345451454e4151494a416745414d42414743797147534962345451454e4151494b416745410a4d42414743797147534962345451454e4151494c416745414d42414743797147534962345451454e4151494d416745414d42414743797147534962345451454e0a4151494e416745414d42414743797147534962345451454e4151494f416745414d42414743797147534962345451454e41514950416745414d424147437971470a534962345451454e41514951416745414d42414743797147534962345451454e415149524167454c4d42384743797147534962345451454e41514953424241450a42414943424145414251414141414141414141414d42414743697147534962345451454e41514d45416741414d42514743697147534962345451454e415151450a42724441627741414144415042676f71686b69472b45304244514546436745424d42344743697147534962345451454e41515945454d30396e37352b774a714b0a5038742f2f5841594e5251775241594b4b6f5a496876684e41513042427a41324d42414743797147534962345451454e415163424151482f4d424147437971470a534962345451454e41516343415145414d42414743797147534962345451454e415163444151482f4d416f4743437147534d343942414d43413067414d4555430a494835436278595a49324f7041737a525a355751556f4d766530716f543244476c4759366a577a6875625869416945417267425362462b774569687445434f6c0a3537386e4576595a52697772474c6244413964686373756f3362343d0a2d2d2d2d2d454e442043455254494649434154452d2d2d2d2d0a2d2d2d2d2d424547494e2043455254494649434154452d2d2d2d2d0a4d4949436c6a4343416a32674177494241674956414a567658633239472b487051456e4a3150517a7a674658433935554d416f4743437147534d343942414d430a4d476778476a415942674e5642414d4d45556c756447567349464e48574342536232393049454e424d526f77474159445651514b4442464a626e526c624342440a62334a7762334a6864476c76626a45554d424947413155454277774c553246756447456751327868636d4578437a414a42674e564241674d416b4e424d5173770a435159445651514745774a56557a4165467730784f4441314d6a45784d4455774d5442614677307a4d7a41314d6a45784d4455774d5442614d484178496a41670a42674e5642414d4d47556c756447567349464e4857434251513073675547786864475a76636d306751304578476a415942674e5642416f4d45556c75644756730a49454e76636e4276636d4630615739754d5251774567594456515148444174545957353059534244624746795954454c4d416b474131554543417743513045780a437a414a42674e5642415954416c56544d466b77457759484b6f5a497a6a3043415159494b6f5a497a6a304441516344516741454e53422f377432316c58534f0a3243757a7078773734654a423732457944476757357258437478327456544c7136684b6b367a2b5569525a436e71523770734f766771466553786c6d546c4a6c0a65546d693257597a33714f42757a43427544416642674e5648534d4547444157674251695a517a575770303069664f44744a5653763141624f536347724442530a42674e5648523845537a424a4d45656752614244686b466f64485277637a6f764c324e6c636e52705a6d6c6a5958526c63793530636e567a6447566b633256790a646d6c6a5a584d75615735305a577775593239744c306c756447567355306459556d397664454e424c6d526c636a416442674e5648513445466751556c5739640a7a62306234656c4153636e553944504f4156634c336c517744675944565230504151482f42415144416745474d42494741315564457745422f7751494d4159420a4166384341514177436759494b6f5a497a6a30454177494452774177524149675873566b6930772b6936565947573355462f32327561586530594a446a3155650a6e412b546a44316169356343494359623153416d4435786b66545670766f34556f79695359787244574c6d5552344349394e4b7966504e2b0a2d2d2d2d2d454e442043455254494649434154452d2d2d2d2d0a2d2d2d2d2d424547494e2043455254494649434154452d2d2d2d2d0a4d4949436a7a4343416a53674177494241674955496d554d316c71644e496e7a6737535655723951477a6b6e42717777436759494b6f5a497a6a3045417749770a614445614d4267474131554541777752535735305a5777675530645949464a766233516751304578476a415942674e5642416f4d45556c756447567349454e760a636e4276636d4630615739754d5251774567594456515148444174545957353059534244624746795954454c4d416b47413155454341774351304578437a414a0a42674e5642415954416c56544d423458445445344d4455794d5445774e4455784d466f58445451354d54497a4d54497a4e546b314f566f77614445614d4267470a4131554541777752535735305a5777675530645949464a766233516751304578476a415942674e5642416f4d45556c756447567349454e76636e4276636d46300a615739754d5251774567594456515148444174545957353059534244624746795954454c4d416b47413155454341774351304578437a414a42674e56424159540a416c56544d466b77457759484b6f5a497a6a3043415159494b6f5a497a6a3044415163445167414543366e45774d4449595a4f6a2f69505773437a61454b69370a314f694f534c52466857476a626e42564a66566e6b59347533496a6b4459594c304d784f346d717379596a6c42616c54565978465032734a424b357a6c4b4f420a757a43427544416642674e5648534d4547444157674251695a517a575770303069664f44744a5653763141624f5363477244425342674e5648523845537a424a0a4d45656752614244686b466f64485277637a6f764c324e6c636e52705a6d6c6a5958526c63793530636e567a6447566b63325679646d6c6a5a584d75615735300a5a577775593239744c306c756447567355306459556d397664454e424c6d526c636a416442674e564851344546675155496d554d316c71644e496e7a673753560a55723951477a6b6e4271777744675944565230504151482f42415144416745474d42494741315564457745422f7751494d4159424166384341514577436759490a4b6f5a497a6a3045417749445351417752674968414f572f35516b522b533943695344634e6f6f774c7550524c735747662f59693747535839344267775477670a41694541344a306c72486f4d732b586f356f2f7358364f39515778485241765a55474f6452513763767152586171493d0a2d2d2d2d2d454e442043455254494649434154452d2d2d2d2d0a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000280300000001000008004073797374656d2d707265706172696e6700030000000100000800186170702d696450c69f00b363dd5adc0baebd4cc359e4778daf3b5703000000010000080030636f6d706f73652d6861736880c69f00b363dd5adc0baebd4cc359e4778daf3b5713ee3b7ea112b1656e21f40d0300000001000008002c696e7374616e63652d69640003000000010000080030626f6f742d6d722d646f6e6500030000000100000800186d722d6b6d7380df1987ba3ab3ecc904a1170cd5d45b122535ce4144f1517afa1c7237db5a53b9030000000100000800346f732d696d6167652d6861736880c2aa0186182fe8a404f16d5f3facb334d89be32703b3571c401b114a8b6e700d030000000100000800306b65792d70726f766964657231037b226e616d65223a226b6d73222c226964223a223330353933303133303630373261383634386365336430323031303630383261383634386365336430333031303730333432303030346237383164363832376564373039323537393533393131663162396364313030663635653938373037366436613666386431656163636434343736313533393935303766633030343562626431666433616436643865613463306134336233616261326237623232326535383861363333356336646234633561336463393733227d0300000001000008002873746f726167652d66730c7a66730300000001000008003073797374656d2d726561647900284073797374656d2d707265706172696e6700186170702d696450c69f00b363dd5adc0baebd4cc359e4778daf3b5730636f6d706f73652d6861736880c69f00b363dd5adc0baebd4cc359e4778daf3b5713ee3b7ea112b1656e21f40d2c696e7374616e63652d69640030626f6f742d6d722d646f6e6500186d722d6b6d7380df1987ba3ab3ecc904a1170cd5d45b122535ce4144f1517afa1c7237db5a53b9346f732d696d6167652d6861736880c2aa0186182fe8a404f16d5f3facb334d89be32703b3571c401b114a8b6e700d306b65792d70726f766964657231037b226e616d65223a226b6d73222c226964223a223330353933303133303630373261383634386365336430323031303630383261383634386365336430333031303730333432303030346237383164363832376564373039323537393533393131663162396364313030663635653938373037366436613666386431656163636434343736313533393935303766633030343562626431666433616436643865613463306134336233616261326237623232326535383861363333356336646234633561336463393733227d2873746f726167652d66730c7a66733073797374656d2d726561647900e663121aac9102a3dab3db5499db6a0c770c5363b7fb862ba070236a04812923c51f9d171e97494b5dcafe44b3d2f55423296600189cb95fdc6d7bc8f29c836d1d057b226f735f696d6167655f68617368223a2263326161303138363138326665386134303466313664356633666163623333346438396265333237303362333537316334303162313134613862366537303064222c226370755f636f756e74223a312c226d656d6f72795f73697a65223a313037333734313832342c2271656d755f76657273696f6e223a22382e322e32222c227063695f686f6c6536345f73697a65223a302c22687567657061676573223a66616c73652c226e756d5f67707573223a302c226e756d5f6e767377697463686573223a302c22686f74706c75675f6f6666223a66616c73652c22696d616765223a2264737461636b2d302e352e3131222c22686f73745f73686172655f6d6f6465223a223970222c226f766d665f76617269616e74223a22707265323032353035222c22737065635f76657273696f6e223a317d
independently verify this quote ↗
3

Source Code — Compose

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

ContainerImageDigestVerify
worker docker.io/outlayer/near-outlayer-workerOutLayer-built sha256:4c649c1f8e53f7b553d2c742ea12cc40b14cae34840a1e6018e10772b2119b71 Sigstore ↗ release ↗

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": "outlayer-worker-testnet-0.1.41",
    "runner": "docker-compose",
    "docker_compose_file": "# OutLayer worker — deployed as a dstack CVM on a self-hosted TDX node.\n#\n# - image is pinned BY DIGEST (verifiable, Sigstore-attested release build) so the\n#   app-compose hash (measured into RTMR3) is deterministic. 40-deploy-worker.sh\n#   rewrites this digest for the chosen --version from the GitHub release.\n# - secrets are NOT here: env VALUES come via `vmm-cli ... --env-file worker.env`\n#   (encrypted by the per-node KMS + embedded as a ciphertext blob). The compose text\n#   keeps only ${VAR} references, so plaintext secrets never enter the measured compose;\n#   dstack decrypts the env inside the CVM and docker-compose substitutes at runtime.\n# - the worker is outbound-only (polls the coordinator); no inbound ports.\n# - /var/run/dstack.sock is provided by dstack inside the CVM (TDX quotes).\n# - single worker service, no compiler sidecar (COMPILATION_ENABLED=false); no docker.sock —\n#   execution is in-process wasmedge.\n\nservices:\n  worker:\n    image: docker.io/outlayer/near-outlayer-worker@sha256:4c649c1f8e53f7b553d2c742ea12cc40b14cae34840a1e6018e10772b2119b71\n    restart: on-failure:5\n    environment:\n      API_BASE_URL: ${API_BASE_URL}\n      API_AUTH_TOKEN: ${API_AUTH_TOKEN}\n      NEAR_RPC_URL: ${NEAR_RPC_URL}\n      OFFCHAINVM_CONTRACT_ID: ${OFFCHAINVM_CONTRACT_ID}\n      OPERATOR_ACCOUNT_ID: ${OPERATOR_ACCOUNT_ID}\n      # In TEE mode the operator key is generated at registration; only set for legacy mode.\n      OPERATOR_PRIVATE_KEY: ${OPERATOR_PRIVATE_KEY:-}\n      TEE_MODE: ${TEE_MODE}\n      USE_TEE_REGISTRATION: ${USE_TEE_REGISTRATION}\n      # Signature scheme for the on-chain worker key: ed25519 (default) or ml-dsa-65.\n      WORKER_KEY_TYPE: ${WORKER_KEY_TYPE:-ed25519}\n      COMPILATION_ENABLED: ${COMPILATION_ENABLED}\n      # NOTE: do NOT pass COMPILATION_MODE to an EXECUTION worker. The worker rejects\n      # COMPILATION_MODE=native + EXECUTION_ENABLED=true (a native compiler could exfiltrate\n      # env secrets). This is an execution-only worker (COMPILATION_ENABLED=false), so leave\n      # COMPILATION_MODE unset for an execution-only worker. (The env file may still\n      # carry it harmlessly; the worker only sees what this compose passes.)\n      EXECUTION_ENABLED: ${EXECUTION_ENABLED}\n      # Init account pays gas for worker registration when USE_TEE_REGISTRATION=true.\n      INIT_ACCOUNT_ID: ${INIT_ACCOUNT_ID:-}\n      INIT_ACCOUNT_PRIVATE_KEY: ${INIT_ACCOUNT_PRIVATE_KEY:-}\n      KEYSTORE_BASE_URL: ${KEYSTORE_BASE_URL:-}\n      KEYSTORE_AUTH_TOKEN: ${KEYSTORE_AUTH_TOKEN:-}\n      RUST_LOG: ${RUST_LOG:-info}\n      SAVE_SYSTEM_HIDDEN_LOGS_TO_DEBUG: ${SAVE_SYSTEM_HIDDEN_LOGS_TO_DEBUG:-false}\n      PRINT_WASM_STDERR: ${PRINT_WASM_STDERR:-false}\n      ENABLE_EVENT_MONITOR: ${ENABLE_EVENT_MONITOR:-false}\n      NEARDATA_API_URL: ${NEARDATA_API_URL:-}\n      FASTNEAR_API_URL: ${FASTNEAR_API_URL:-}\n      START_BLOCK_HEIGHT: ${START_BLOCK_HEIGHT:-0}\n      WASM_CACHE_MAX_SIZE_MB: ${WASM_CACHE_MAX_SIZE_MB:-100}\n      POLL_TIMEOUT_SECONDS: 30\n    volumes:\n      - /var/run/dstack.sock:/var/run/dstack.sock:ro\n",
    "kms_enabled": true,
    "gateway_enabled": false,
    "local_key_provider_enabled": false,
    "key_provider_id": "",
    "public_logs": true,
    "public_sysinfo": false,
    "allowed_envs": [
        "API_BASE_URL",
        "API_AUTH_TOKEN",
        "NEAR_RPC_URL",
        "NEARDATA_API_URL",
        "FASTNEAR_API_URL",
        "START_BLOCK_HEIGHT",
        "OFFCHAINVM_CONTRACT_ID",
        "OPERATOR_ACCOUNT_ID",
        "TEE_MODE",
        "USE_TEE_REGISTRATION",
        "EXECUTION_ENABLED",
        "COMPILATION_ENABLED",
        "COMPILATION_MODE",
        "ENABLE_EVENT_MONITOR",
        "INIT_ACCOUNT_ID",
        "INIT_ACCOUNT_PRIVATE_KEY",
        "WORKER_KEY_TYPE",
        "KEYSTORE_BASE_URL",
        "KEYSTORE_AUTH_TOKEN",
        "RUST_LOG",
        "WASM_CACHE_MAX_SIZE_MB",
        "SAVE_SYSTEM_HIDDEN_LOGS_TO_DEBUG",
        "PRINT_WASM_STDERR"
    ],
    "no_instance_id": true,
    "secure_time": false
}
image_digests docker.io/outlayer/near-outlayer-worker@sha256:4c649c1f8e53f7b553d2c742ea12cc40b14cae34840a1e6018e10772b2119b71
4

Network — Zero Trust Gateway

TLS terminates inside the TEE — the gateway never sees plaintext.

guarded domainc69f00b363dd5adc0baebd4cc359e4778daf3b57-8081.dstack.outlayer.ai
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_aggregated48306b038612b739de95eca983dd4208f7a426ad32a19ba2db8ce46b016084fc
compose_hashc69f00b363dd5adc0baebd4cc359e4778daf3b5713ee3b7ea112b1656e21f40d
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 kms
instance 3 of 3 testnet-worker-0141-2 Worker testnet ✓ Verified
testnet-worker-0141-2 Worker testnet instance 3 of 3 running · up 2h 32m 19s
last push 1m ago app_id c69f00b363dd5adc0baebd4cc359e4778daf3b57 vm_id 2aa06135-341a-4f14-bbd8-ca7597ce8239 attested via Intel DCAP (Intel PCS collateral) KMS-in-TEE ✓ gateway c69f00b363dd5adc0baebd4cc359e4778daf3b57-8081.dstack.outlayer.ai
2

TDX Hardware — Attestation

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

Signature ✓ TCB UpToDate Measurements ✓ On-chain ✓ approved (worker.outlayer.testnet)
mrtd7fe60787222bd394cb516abca2435f22f035ab2cc9c0a4b4b3b148e46297f3d931a237b72f359052c6e657d8c1409173
rtmr0530526e456733dff151712d1db1728cfc3bc85ed0a6c13653add2e644c57068009595b935f6a50ce4a714bad2b33bc8e
rtmr1e8601b64942f9f7a66f4d8f5727c0a7d4a71953cfc3c7d13e043f8ddf4f94d2358afd17e01f567a5d8209f3cf7479489
rtmr2ad1ed113dbecf8516b1ae1ba33a5188d61dd4a4baf5c181c1dd3c61ed8b91a624b5ac2242328028e540d9a2fb4f2dbfe
rtmr3650030802c5f05135ef9c63a67e01dd236c7d8b1536b70aad144144f4f6c9ee084dfc3823066758574ac289de8fe2e31
report_data8b6570b14bcd1255a2263b0f87db2cfb57c4770c8c10ce38382fc70e894b9d1ac94ceb6733923101a208f0d8ac4ee5cd95ce29bb8ba44f6fd342c4c9836f6d85
mr_seam346bc77a1846cac214dd2e8edeb9ee4349449d6c3f9ff2c52149a634c27b7fd1bd314c2ef6b973eeebd55742952531a1
mr_signer_seam000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
tee_tcb_svn0e010400000000000000000000000000
td_attributes0000001000000000
xfame702060000000000
fmspc B0C06F000000
raw Intel TDX quote (hex)
040002008100000000000000939a7233f79c4ca9940a0db3957f06070f5653fb3a17c211c1a8b923dadde72d000000000e010400000000000000000000000000346bc77a1846cac214dd2e8edeb9ee4349449d6c3f9ff2c52149a634c27b7fd1bd314c2ef6b973eeebd55742952531a100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000e7020600000000007fe60787222bd394cb516abca2435f22f035ab2cc9c0a4b4b3b148e46297f3d931a237b72f359052c6e657d8c140917301c69f00b363dd5adc0baebd4cc359e4778daf3b5713ee3b7ea112b1656e21f40d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000530526e456733dff151712d1db1728cfc3bc85ed0a6c13653add2e644c57068009595b935f6a50ce4a714bad2b33bc8ee8601b64942f9f7a66f4d8f5727c0a7d4a71953cfc3c7d13e043f8ddf4f94d2358afd17e01f567a5d8209f3cf7479489ad1ed113dbecf8516b1ae1ba33a5188d61dd4a4baf5c181c1dd3c61ed8b91a624b5ac2242328028e540d9a2fb4f2dbfe650030802c5f05135ef9c63a67e01dd236c7d8b1536b70aad144144f4f6c9ee084dfc3823066758574ac289de8fe2e318b6570b14bcd1255a2263b0f87db2cfb57c4770c8c10ce38382fc70e894b9d1ac94ceb6733923101a208f0d8ac4ee5cd95ce29bb8ba44f6fd342c4c9836f6d85cc10000094d40040564601348337f7147429b0080e41e6c9ae92fcddb128c58493d627fad1c28b82d3e09fbb8272fdb9e8c6b923eff8e2feb5ce6472e11085ab6e0bc833ef1f1cf8feb233c0acc81deb150a55ff8b2c71d81ec0662ca2615cd8eb42e143b5d1834b936a2e1872e843b8eaa068eecb242566a6c7aec44eab07a84e91098c0600461000000404191b04ff0006000000000000000000000000000000000000000000000000000000000000000000000000000000001500000000000000e700000000000000e5a3a7b5d830c2953b98534c6c59a3a34fdc34e933f7f5898f0a85cf08846bca0000000000000000000000000000000000000000000000000000000000000000dc9e2a7c6f948f17474e34a7fc43ed030f7c1563f1babddf6340c82e0e54a8c500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a9311fe5e0a216fba47ef5034404cadf87d8a0b80fbeaa6459b8943bac9b66c30000000000000000000000000000000000000000000000000000000000000000eec2a9018f0cd434f3a0ef5a61b3cdf2ac28b1794219e131e9df4f648ef269729137ad274fd10c7fbed89a5d666ad6b4fa6940b09b304b5b140b5a33602b1f052000000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f05005e0e00002d2d2d2d2d424547494e2043455254494649434154452d2d2d2d2d0a4d49494538444343424a61674177494241674955557a44746f56506f624e4b5443552f5145786c584b4f67536c4c5977436759494b6f5a497a6a3045417749770a634445694d434147413155454177775a535735305a577767553064594946424453794251624746305a6d397962534244515445614d42674741315545436777520a535735305a577767513239796347397959585270623234784644415342674e564241634d43314e68626e526849454e7359584a684d51737743515944565151490a44414a445154454c4d416b474131554542684d4356564d774868634e4d6a59774e6a45334d4467304d6a45785768634e4d7a4d774e6a45334d4467304d6a45780a576a42774d534977494159445651514444426c4a626e526c624342545231676755454e4c49454e6c636e52705a6d6c6a5958526c4d526f77474159445651514b0a4442464a626e526c6243424462334a7762334a6864476c76626a45554d424947413155454277774c553246756447456751327868636d4578437a414a42674e560a4241674d416b4e424d517377435159445651514745774a56557a425a4d424d4742797147534d34394167454743437147534d343941774548413049414243346d0a6c676c3368572f32796a3364307433714c744258317967705a49673753786a463348676946382f30724367527368787a6f585264776730573457476c494e68700a2b3672596f37327247783566676c704d4136576a67674d4d4d4949444344416642674e5648534d4547444157674253566231334e765276683655424a796454300a4d383442567776655644427242674e56485238455a4442694d47436758714263686c706f64485277637a6f764c32467761533530636e567a6447566b633256790a646d6c6a5a584d75615735305a577775593239744c334e6e6543396a5a584a3061575a7059324630615739754c3359304c33426a61324e796244396a595431770a624746305a6d397962535a6c626d4e765a476c755a7a316b5a584977485159445652304f42425945464438344e6e2b6f334d422b44586c6f666847654d6f34430a4a5047584d41344741315564447745422f775145417749477744414d42674e5648524d4241663845416a41414d4949434f51594a4b6f5a496876684e415130420a424949434b6a4343416959774867594b4b6f5a496876684e41513042415151516e7a5a794c2f434f52656d764f546c354c6e61733554434341574d47436971470a534962345451454e41514977676746544d42414743797147534962345451454e41514942416745454d42414743797147534962345451454e41514943416745450a4d42414743797147534962345451454e41514944416745434d42414743797147534962345451454e41514945416745434d42414743797147534962345451454e0a41514946416745454d42414743797147534962345451454e41514947416745424d42414743797147534962345451454e41514948416745414d424147437971470a534962345451454e41514949416745464d42414743797147534962345451454e4151494a416745414d42414743797147534962345451454e4151494b416745410a4d42414743797147534962345451454e4151494c416745414d42414743797147534962345451454e4151494d416745414d42414743797147534962345451454e0a4151494e416745414d42414743797147534962345451454e4151494f416745414d42414743797147534962345451454e41514950416745414d424147437971470a534962345451454e41514951416745414d42414743797147534962345451454e415149524167454c4d42384743797147534962345451454e41514953424241450a42414943424145414251414141414141414141414d42414743697147534962345451454e41514d45416741414d42514743697147534962345451454e415151450a42724441627741414144415042676f71686b69472b45304244514546436745424d42344743697147534962345451454e41515945454d30396e37352b774a714b0a5038742f2f5841594e5251775241594b4b6f5a496876684e41513042427a41324d42414743797147534962345451454e415163424151482f4d424147437971470a534962345451454e41516343415145414d42414743797147534962345451454e415163444151482f4d416f4743437147534d343942414d43413067414d4555430a494835436278595a49324f7041737a525a355751556f4d766530716f543244476c4759366a577a6875625869416945417267425362462b774569687445434f6c0a3537386e4576595a52697772474c6244413964686373756f3362343d0a2d2d2d2d2d454e442043455254494649434154452d2d2d2d2d0a2d2d2d2d2d424547494e2043455254494649434154452d2d2d2d2d0a4d4949436c6a4343416a32674177494241674956414a567658633239472b487051456e4a3150517a7a674658433935554d416f4743437147534d343942414d430a4d476778476a415942674e5642414d4d45556c756447567349464e48574342536232393049454e424d526f77474159445651514b4442464a626e526c624342440a62334a7762334a6864476c76626a45554d424947413155454277774c553246756447456751327868636d4578437a414a42674e564241674d416b4e424d5173770a435159445651514745774a56557a4165467730784f4441314d6a45784d4455774d5442614677307a4d7a41314d6a45784d4455774d5442614d484178496a41670a42674e5642414d4d47556c756447567349464e4857434251513073675547786864475a76636d306751304578476a415942674e5642416f4d45556c75644756730a49454e76636e4276636d4630615739754d5251774567594456515148444174545957353059534244624746795954454c4d416b474131554543417743513045780a437a414a42674e5642415954416c56544d466b77457759484b6f5a497a6a3043415159494b6f5a497a6a304441516344516741454e53422f377432316c58534f0a3243757a7078773734654a423732457944476757357258437478327456544c7136684b6b367a2b5569525a436e71523770734f766771466553786c6d546c4a6c0a65546d693257597a33714f42757a43427544416642674e5648534d4547444157674251695a517a575770303069664f44744a5653763141624f536347724442530a42674e5648523845537a424a4d45656752614244686b466f64485277637a6f764c324e6c636e52705a6d6c6a5958526c63793530636e567a6447566b633256790a646d6c6a5a584d75615735305a577775593239744c306c756447567355306459556d397664454e424c6d526c636a416442674e5648513445466751556c5739640a7a62306234656c4153636e553944504f4156634c336c517744675944565230504151482f42415144416745474d42494741315564457745422f7751494d4159420a4166384341514177436759494b6f5a497a6a30454177494452774177524149675873566b6930772b6936565947573355462f32327561586530594a446a3155650a6e412b546a44316169356343494359623153416d4435786b66545670766f34556f79695359787244574c6d5552344349394e4b7966504e2b0a2d2d2d2d2d454e442043455254494649434154452d2d2d2d2d0a2d2d2d2d2d424547494e2043455254494649434154452d2d2d2d2d0a4d4949436a7a4343416a53674177494241674955496d554d316c71644e496e7a6737535655723951477a6b6e42717777436759494b6f5a497a6a3045417749770a614445614d4267474131554541777752535735305a5777675530645949464a766233516751304578476a415942674e5642416f4d45556c756447567349454e760a636e4276636d4630615739754d5251774567594456515148444174545957353059534244624746795954454c4d416b47413155454341774351304578437a414a0a42674e5642415954416c56544d423458445445344d4455794d5445774e4455784d466f58445451354d54497a4d54497a4e546b314f566f77614445614d4267470a4131554541777752535735305a5777675530645949464a766233516751304578476a415942674e5642416f4d45556c756447567349454e76636e4276636d46300a615739754d5251774567594456515148444174545957353059534244624746795954454c4d416b47413155454341774351304578437a414a42674e56424159540a416c56544d466b77457759484b6f5a497a6a3043415159494b6f5a497a6a3044415163445167414543366e45774d4449595a4f6a2f69505773437a61454b69370a314f694f534c52466857476a626e42564a66566e6b59347533496a6b4459594c304d784f346d717379596a6c42616c54565978465032734a424b357a6c4b4f420a757a43427544416642674e5648534d4547444157674251695a517a575770303069664f44744a5653763141624f5363477244425342674e5648523845537a424a0a4d45656752614244686b466f64485277637a6f764c324e6c636e52705a6d6c6a5958526c63793530636e567a6447566b63325679646d6c6a5a584d75615735300a5a577775593239744c306c756447567355306459556d397664454e424c6d526c636a416442674e564851344546675155496d554d316c71644e496e7a673753560a55723951477a6b6e4271777744675944565230504151482f42415144416745474d42494741315564457745422f7751494d4159424166384341514577436759490a4b6f5a497a6a3045417749445351417752674968414f572f35516b522b533943695344634e6f6f774c7550524c735747662f59693747535839344267775477670a41694541344a306c72486f4d732b586f356f2f7358364f39515778485241765a55474f6452513763767152586171493d0a2d2d2d2d2d454e442043455254494649434154452d2d2d2d2d0a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000280300000001000008004073797374656d2d707265706172696e6700030000000100000800186170702d696450c69f00b363dd5adc0baebd4cc359e4778daf3b5703000000010000080030636f6d706f73652d6861736880c69f00b363dd5adc0baebd4cc359e4778daf3b5713ee3b7ea112b1656e21f40d0300000001000008002c696e7374616e63652d69640003000000010000080030626f6f742d6d722d646f6e6500030000000100000800186d722d6b6d7380df1987ba3ab3ecc904a1170cd5d45b122535ce4144f1517afa1c7237db5a53b9030000000100000800346f732d696d6167652d6861736880c2aa0186182fe8a404f16d5f3facb334d89be32703b3571c401b114a8b6e700d030000000100000800306b65792d70726f766964657231037b226e616d65223a226b6d73222c226964223a223330353933303133303630373261383634386365336430323031303630383261383634386365336430333031303730333432303030346237383164363832376564373039323537393533393131663162396364313030663635653938373037366436613666386431656163636434343736313533393935303766633030343562626431666433616436643865613463306134336233616261326237623232326535383861363333356336646234633561336463393733227d0300000001000008002873746f726167652d66730c7a66730300000001000008003073797374656d2d726561647900284073797374656d2d707265706172696e6700186170702d696450c69f00b363dd5adc0baebd4cc359e4778daf3b5730636f6d706f73652d6861736880c69f00b363dd5adc0baebd4cc359e4778daf3b5713ee3b7ea112b1656e21f40d2c696e7374616e63652d69640030626f6f742d6d722d646f6e6500186d722d6b6d7380df1987ba3ab3ecc904a1170cd5d45b122535ce4144f1517afa1c7237db5a53b9346f732d696d6167652d6861736880c2aa0186182fe8a404f16d5f3facb334d89be32703b3571c401b114a8b6e700d306b65792d70726f766964657231037b226e616d65223a226b6d73222c226964223a223330353933303133303630373261383634386365336430323031303630383261383634386365336430333031303730333432303030346237383164363832376564373039323537393533393131663162396364313030663635653938373037366436613666386431656163636434343736313533393935303766633030343562626431666433616436643865613463306134336233616261326237623232326535383861363333356336646234633561336463393733227d2873746f726167652d66730c7a66733073797374656d2d7265616479008b6570b14bcd1255a2263b0f87db2cfb57c4770c8c10ce38382fc70e894b9d1ac94ceb6733923101a208f0d8ac4ee5cd95ce29bb8ba44f6fd342c4c9836f6d851d057b226f735f696d6167655f68617368223a2263326161303138363138326665386134303466313664356633666163623333346438396265333237303362333537316334303162313134613862366537303064222c226370755f636f756e74223a312c226d656d6f72795f73697a65223a313037333734313832342c2271656d755f76657273696f6e223a22382e322e32222c227063695f686f6c6536345f73697a65223a302c22687567657061676573223a66616c73652c226e756d5f67707573223a302c226e756d5f6e767377697463686573223a302c22686f74706c75675f6f6666223a66616c73652c22696d616765223a2264737461636b2d302e352e3131222c22686f73745f73686172655f6d6f6465223a223970222c226f766d665f76617269616e74223a22707265323032353035222c22737065635f76657273696f6e223a317d
independently verify this quote ↗
3

Source Code — Compose

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

ContainerImageDigestVerify
worker docker.io/outlayer/near-outlayer-workerOutLayer-built sha256:4c649c1f8e53f7b553d2c742ea12cc40b14cae34840a1e6018e10772b2119b71 Sigstore ↗ release ↗

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": "outlayer-worker-testnet-0.1.41",
    "runner": "docker-compose",
    "docker_compose_file": "# OutLayer worker — deployed as a dstack CVM on a self-hosted TDX node.\n#\n# - image is pinned BY DIGEST (verifiable, Sigstore-attested release build) so the\n#   app-compose hash (measured into RTMR3) is deterministic. 40-deploy-worker.sh\n#   rewrites this digest for the chosen --version from the GitHub release.\n# - secrets are NOT here: env VALUES come via `vmm-cli ... --env-file worker.env`\n#   (encrypted by the per-node KMS + embedded as a ciphertext blob). The compose text\n#   keeps only ${VAR} references, so plaintext secrets never enter the measured compose;\n#   dstack decrypts the env inside the CVM and docker-compose substitutes at runtime.\n# - the worker is outbound-only (polls the coordinator); no inbound ports.\n# - /var/run/dstack.sock is provided by dstack inside the CVM (TDX quotes).\n# - single worker service, no compiler sidecar (COMPILATION_ENABLED=false); no docker.sock —\n#   execution is in-process wasmedge.\n\nservices:\n  worker:\n    image: docker.io/outlayer/near-outlayer-worker@sha256:4c649c1f8e53f7b553d2c742ea12cc40b14cae34840a1e6018e10772b2119b71\n    restart: on-failure:5\n    environment:\n      API_BASE_URL: ${API_BASE_URL}\n      API_AUTH_TOKEN: ${API_AUTH_TOKEN}\n      NEAR_RPC_URL: ${NEAR_RPC_URL}\n      OFFCHAINVM_CONTRACT_ID: ${OFFCHAINVM_CONTRACT_ID}\n      OPERATOR_ACCOUNT_ID: ${OPERATOR_ACCOUNT_ID}\n      # In TEE mode the operator key is generated at registration; only set for legacy mode.\n      OPERATOR_PRIVATE_KEY: ${OPERATOR_PRIVATE_KEY:-}\n      TEE_MODE: ${TEE_MODE}\n      USE_TEE_REGISTRATION: ${USE_TEE_REGISTRATION}\n      # Signature scheme for the on-chain worker key: ed25519 (default) or ml-dsa-65.\n      WORKER_KEY_TYPE: ${WORKER_KEY_TYPE:-ed25519}\n      COMPILATION_ENABLED: ${COMPILATION_ENABLED}\n      # NOTE: do NOT pass COMPILATION_MODE to an EXECUTION worker. The worker rejects\n      # COMPILATION_MODE=native + EXECUTION_ENABLED=true (a native compiler could exfiltrate\n      # env secrets). This is an execution-only worker (COMPILATION_ENABLED=false), so leave\n      # COMPILATION_MODE unset for an execution-only worker. (The env file may still\n      # carry it harmlessly; the worker only sees what this compose passes.)\n      EXECUTION_ENABLED: ${EXECUTION_ENABLED}\n      # Init account pays gas for worker registration when USE_TEE_REGISTRATION=true.\n      INIT_ACCOUNT_ID: ${INIT_ACCOUNT_ID:-}\n      INIT_ACCOUNT_PRIVATE_KEY: ${INIT_ACCOUNT_PRIVATE_KEY:-}\n      KEYSTORE_BASE_URL: ${KEYSTORE_BASE_URL:-}\n      KEYSTORE_AUTH_TOKEN: ${KEYSTORE_AUTH_TOKEN:-}\n      RUST_LOG: ${RUST_LOG:-info}\n      SAVE_SYSTEM_HIDDEN_LOGS_TO_DEBUG: ${SAVE_SYSTEM_HIDDEN_LOGS_TO_DEBUG:-false}\n      PRINT_WASM_STDERR: ${PRINT_WASM_STDERR:-false}\n      ENABLE_EVENT_MONITOR: ${ENABLE_EVENT_MONITOR:-false}\n      NEARDATA_API_URL: ${NEARDATA_API_URL:-}\n      FASTNEAR_API_URL: ${FASTNEAR_API_URL:-}\n      START_BLOCK_HEIGHT: ${START_BLOCK_HEIGHT:-0}\n      WASM_CACHE_MAX_SIZE_MB: ${WASM_CACHE_MAX_SIZE_MB:-100}\n      POLL_TIMEOUT_SECONDS: 30\n    volumes:\n      - /var/run/dstack.sock:/var/run/dstack.sock:ro\n",
    "kms_enabled": true,
    "gateway_enabled": false,
    "local_key_provider_enabled": false,
    "key_provider_id": "",
    "public_logs": true,
    "public_sysinfo": false,
    "allowed_envs": [
        "API_BASE_URL",
        "API_AUTH_TOKEN",
        "NEAR_RPC_URL",
        "NEARDATA_API_URL",
        "FASTNEAR_API_URL",
        "START_BLOCK_HEIGHT",
        "OFFCHAINVM_CONTRACT_ID",
        "OPERATOR_ACCOUNT_ID",
        "TEE_MODE",
        "USE_TEE_REGISTRATION",
        "EXECUTION_ENABLED",
        "COMPILATION_ENABLED",
        "COMPILATION_MODE",
        "ENABLE_EVENT_MONITOR",
        "INIT_ACCOUNT_ID",
        "INIT_ACCOUNT_PRIVATE_KEY",
        "WORKER_KEY_TYPE",
        "KEYSTORE_BASE_URL",
        "KEYSTORE_AUTH_TOKEN",
        "RUST_LOG",
        "WASM_CACHE_MAX_SIZE_MB",
        "SAVE_SYSTEM_HIDDEN_LOGS_TO_DEBUG",
        "PRINT_WASM_STDERR"
    ],
    "no_instance_id": true,
    "secure_time": false
}
image_digests docker.io/outlayer/near-outlayer-worker@sha256:4c649c1f8e53f7b553d2c742ea12cc40b14cae34840a1e6018e10772b2119b71
4

Network — Zero Trust Gateway

TLS terminates inside the TEE — the gateway never sees plaintext.

guarded domainc69f00b363dd5adc0baebd4cc359e4778daf3b57-8081.dstack.outlayer.ai
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_aggregated48306b038612b739de95eca983dd4208f7a426ad32a19ba2db8ce46b016084fc
compose_hashc69f00b363dd5adc0baebd4cc359e4778daf3b5713ee3b7ea112b1656e21f40d
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 kms