App Store
A country-scoped catalogue of verified confidential applications running on Privasys infrastructure, where every listing is backed by hardware attestation.
The Privasys App Store at privasys.org/uk/apps is a public catalogue of confidential applications built on the Privasys Developer Platform. Every listed application is backed by cryptographic proof of integrity.
How It Works
Every application listed in the App Store runs inside hardware-protected infrastructure (Intel SGX or Intel TDX). The listing includes:
- Attestation status showing whether the application has been independently verified
- TEE type (SGX or TDX) and deployment target (WASM or Container)
- Source code link so anyone can inspect and audit the application
- RA-TLS verification example showing how to connect and verify the attestation
Country-Scoped Catalogue
The App Store follows a country-scoped URL pattern, similar to other major app stores:
| URL | Region |
|---|---|
privasys.org/uk/apps | United Kingdom |
privasys.org/us/apps | United States |
privasys.org/eu/apps | European Union |
privasys.org/fr/apps | France |
privasys.org/de/apps | Germany |
privasys.org/sg/apps | Singapore |
privasys.org/jp/apps | Japan |
privasys.org/au/apps | Australia |
Verification
Every listed app is provably attested. Clients can verify any application by connecting with an RA-TLS client library:
from ratls_client import RaTlsClient
client = RaTlsClient("service.example.com", 443)
response = client.get("/")See Verification Libraries for all available language bindings.
Listing an Application
Developers who have deployed a confidential application on the Developer Platform can submit it for listing:
- Deploy your application through the Developer Platform at developer.privasys.org
- Once deployed and attested, submit a listing request from the application's detail page
- An automated verification step connects to the declared endpoint and verifies the attestation quote
- If verification passes, the listing is reviewed and published
- The App Store updates and the application appears in the catalogue
Verification Badges
| Badge | Meaning |
|---|---|
| Verified | The endpoint was verified within the last 24 hours |
| Stale | The endpoint was verified more than 24 hours ago but less than 7 days |
| Unverified | The endpoint failed verification or has never been verified |
Declaring your listing in privasys.json
You can declare the App Store listing alongside your tools in privasys.json, so it
travels with your code instead of being retyped in the portal. Add an optional
store block:
{
"tools": [ /* ... */ ],
"store": {
"tagline": "A one-line summary",
"description": "What your app does, the problems it solves, key features.",
"category": "Productivity",
"keywords": "privacy, ai, health",
"icon_url": "https://example.com/icon.png",
"screenshots": [
"https://example.com/shot-1.png",
"https://example.com/shot-2.png"
],
"website_url": "https://yourapp.com",
"support_email": "support@yourapp.com",
"privacy_url": "https://yourapp.com/privacy",
"tos_url": "https://yourapp.com/terms"
}
}The platform ingests this fill-if-empty: each field seeds the listing only when
it is not already set in the portal, so your manual edits are never overwritten by a
later re-detect. description and category are required before an app can deploy,
so declaring them here means a fresh app is deploy-ready without extra steps.
For package (pre-built image) apps, privasys.json must be embedded as the
org.privasys.manifest OCI image label so the platform can read it. Add it in your
image build, for example:
LABELS="--label org.privasys.manifest=$(jq -c . privasys.json)"
docker build $LABELS -t ghcr.io/org/app:tag .For GitHub-source apps, the privasys.json at the built commit is read
automatically. Use Detect AI Tools on the app's AI Tools tab to refresh both the
tools and the listing from the current source at any time.