Releases: Dstack-TEE/dstack
Verifier Release v0.5.11
Docker Image Information
Image: docker.io/dstacktee/dstack-verifier:0.5.11
Digest (SHA256): sha256:a000adea64ba689c8949647bfaa034e56b3e1f537ddf6ae97182abb95e7f560d
Verification: Verify on Sigstore
Python SDK v0.5.4
PyPI Package
Package: dstack-sdk 0.5.4
Install: pip install dstack-sdk==0.5.4
JS SDK v0.5.8
npm Package
Package: @phala/dstack-sdk@0.5.8
Install: npm install @phala/dstack-sdk@0.5.8
Dist-tag: latest
Registry: https://www.npmjs.com/package/@phala/dstack-sdk/v/0.5.8
Python SDK v0.5.4b1
PyPI Package
Package: dstack-sdk 0.5.4b1
Install: pip install dstack-sdk==0.5.4b1
JS SDK v0.5.8-beta.2
npm Package
Package: @phala/dstack-sdk@0.5.8-beta.2
Install: npm install @phala/dstack-sdk@0.5.8-beta.2
Dist-tag: beta
Registry: https://www.npmjs.com/package/@phala/dstack-sdk/v/0.5.8-beta.2
JS SDK v0.5.8-beta.1
npm Package
Package: @phala/dstack-sdk@0.5.8-beta.1
Install: npm install @phala/dstack-sdk@0.5.8-beta.1
Dist-tag: beta
Registry: https://www.npmjs.com/package/@phala/dstack-sdk/v/0.5.8-beta.1
dstack-sdk 0.1.3
Published to crates.io: dstack-sdk@0.1.3, dstack-sdk-types@0.1.3
v0.5.11
dstack-mr — Stable202505 OVMF event-layout support and refinements
PR #678 (a304dd96, 5aac58fa, 82c9bffb, c8271915, 3ec3f538) added a Stable202505 arm to dstack-mr covering the new 17-event RTMR[0] chain produced by edk2-stable202505-built OVMF. Most events are now derived from first principles (fw_cfg BootMenu/bootorder blobs, BootOrder/Boot0000/Boot0001 UEFI variable structures, etc.) instead of being hardcoded, plus extract_version_from_image_name now accepts an optional non-numeric .SUFFIX so images like dstack-0.5.10.rc1 resolve to a variant correctly.
c5eb9aac bumps MEASUREMENT_CACHE_VERSION so verifiers invalidate any RTMR0 they cached with the old (incomplete) Stable202505 model.
Known issue (memory-dependent SMBIOS digest): the
EV_EFI_HANDOFF_TABLESevent added bySmbiosMeasurementDxe.cin stable202505 hashes the filtered QEMU SMBIOS table, whose Type 16/17/19 contents scale with-m,-cpu, and-smbios type=1overrides. PR #678's hardcoded digest is captured against a single 2 GB CVM and so fails for any other memory size. Mitigated at the OVMF layer in meta-dstack#63 by pinning OVMF toedk2-stable202502— the most recent stable EDK2 tag that predatesSmbiosMeasurementDxeenablement (cd76265f1a).
Other changes
06684b79Fix IPsubjectAltNameentries in RA-TLS certificates864a988fkey-provider-build: pin transitive deps for reproduciblemr_enclave7bcb5c99,1b4b399d,f57d4d0d,dfd8716c,01d206e4KMS onboarding page enhancements: PPID display, site-name / chain-info / k256 pubkey on onboard view, configurable auth-mock policies, extra eth-rpc-url field onauth-eth-bun /info- Hono / fast-uri dependabot bumps across
kms/auth-*
Full commit log: v0.5.10...v0.5.11
KMS Release v0.5.11
Highlights
This release fixes a verification regression that prevented KMS from validating CVMs running dstack OS 0.5.10 under the new OVMF (edk2-stable202505).
What broke
OVMF was upgraded from an untagged 2024-09 snapshot to edk2-stable202505 in meta-dstack@f9f11f3. The new firmware emits 17 RTMR[0] events instead of the legacy 13 under the standard -kernel boot path, so quote replay against the cached "expected" measurements failed with errors like:
MRs do not match: RTMR0 mismatch:
expected=f8438db3…a6640
actual =a6d1a5ef…fbed
What changed
dstack-typesexposes a typedOvmfVariantenum (pre202505/stable202505);VmConfig.ovmf_variantandImageInfo.ovmf_variantcarry it through the image bundle and into measurements.dstack-mrdispatches on the variant for RTMR[0]. TheStable202505arm models the 4 new events plus reshapedBootOrder/Boot0000, withBoot0000/Boot0001/BootOrderdigests derived from first principles (OVMF FV+file GUIDs, descriptions, attributes — synthesised on the fly, not hardcoded) and thebootorderfw_cfg digest derived from QEMU'slinuxboot_dma.binROM path.dstack-verifierprefersvm_config.ovmf_variant; falls back to parsing the OS version suffix out ofvm_config.imagefor legacy CVMs that pre-date the field (so already-deployed 0.5.9 / 0.5.10 instances validate without any image rebuild).MEASUREMENT_CACHE_VERSIONbumped to v2 — stale on-disk cache entries written by the broken verifier are auto-invalidated on first request.dstack-mrCLI:--dstack-os-versionfor explicit override; also auto-detects frommetadata.json'sovmf_variant(preferred) orversionfield (fallback).
Backward compatibility
VmConfigaddsOption<OvmfVariant>with#[serde(default, skip_serializing_if = "Option::is_none")]— old wire formats decode cleanly; old KMS instances ignore the new field.- Verifier and CLI both fall back to image-name parsing when the field is absent — 0.5.9 / 0.5.10 CVMs already deployed continue to verify against this KMS without needing a new image build.
Verification
Re-verified end-to-end against a running 0.5.10 CVM: MRTD + RTMR[0..3] all match the on-chain quote byte-for-byte.
PR: #678
Docker Image Information
Image: docker.io/dstacktee/dstack-kms:0.5.11
Digest (SHA256): sha256:84b793feed825a5b5e70d04386e931e0e110461492793f17ab2128e39808d989
Verification: Verify on Sigstore
Contract ABIs
This release includes the compiled contract ABIs:
DstackKms.json- Main KMS contract ABIDstackApp.json- Application contract ABI
v0.5.10
Changes since v0.5.9
- KMS: add Prometheus metrics endpoint and enable metrics by default (#657)
- VMM: disallow ISO rootfs for modern images (#663)
- SDK: drop
hickory-dnsfrom reqwest features (#659) - CI: use fork
clone_urlfor Docker build checks on fork PRs (#654) - CI: pin rust-toolchain action refs (#661)
- Dependencies: bump
tar,axios,fast-xml-parser, and@aws-sdk/xml-builder(#592, #660, #662) - Bump workspace version and lockfile to 0.5.10
Full changelog
v0.5.9...v0.5.10