Skip to main content
Every model served at https://inference.phala.com/v1 uses the TEE-only policy. The Phala gateway requires upstream verification and an enforceable channel binding before forwarding your prompt. Evidence coverage varies by provider: a verified router, a model instance, and a provider broker prove different boundaries. The public model catalog lists serving providers in providers. The receipt identifies the session that actually served a response; inspect that session’s upstream_name, verifier_id, channel_binding, claims, and evidence. A route label such as phala-267 is distinct from the catalog provider phala.

Provider evidence

These are the providers in the live catalog. Availability changes; the catalog and each response’s verified session remain authoritative. The implementation is public in the gateway provider verifiers and provider evidence bridges.

Binding methods

Bindings and typed claims are in the session, referenced by the receipt’s upstream.verified.session_id. The receipt event records model_id, result, required, and session_id; do not assume it embeds all verification details.

Claim coverage

Claims have lowercase statuses asserted, refuted, or unknown, and a source that distinguishes hardware proof, verifier derivation, and provider/operator assertions.
  • tee_attested describes the verified TEE boundary above. Check its source as well as its status: Privatemode reports verifier_derived, based on the measured proxy and its Contrast-attested secret path, rather than hardware_proven.
  • tcb_up_to_date can be refuted for a stale TCB; successful verification does not silently turn it into an up-to-date claim.
  • serving_software_known_good depends on the verifier’s measurement/provenance policy.
  • gpu_attested depends on provider evidence. A genuine GPU attestation alone does not establish its binding to the serving CPU TEE.
  • model_weights_provenance is not generally proven. Treat unknown as unproven.
Zero data retention is a separate property. Send provider: {"zdr": true} when the provider must not keep prompt or completion content after serving. See Zero Data Retention. Ordinary clients do not verify each response. Use the TypeScript ACI verifier or Private AI Proxy for client-side verification.

TCB and Claims

Receipts and Sessions