Skip to content

Commit d934713

Browse files
committed
docs: ensure architectural consistency with PoC implementation status
- Mark Stage 1 (Verified Ingress / BYOD) as ROADMAP - Clarify Keylime Verifier role: TPM AK validation & Hardware integrity - Clarify Envoy role: Stateless ZKP verification at runtime - Distinguish between appraisal of TPM Quotes (PoC) and EAT/AppAttest (Roadmap)
1 parent 662d524 commit d934713

File tree

2 files changed

+31
-20
lines changed

2 files changed

+31
-20
lines changed

hybrid-cloud-poc/README-arch-sovereign-unified-identity.md

Lines changed: 27 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
1-
<!-- Version: 0.1.0 | Last Updated: 2025-12-29 -->
1+
<!-- Version: 0.2.0 | Last Updated: 2026-01-25 -->
22
# End-to-End Sovereign Unified Identity & Trust Framework
33

4+
> [!IMPORTANT]
5+
> **Implementation Scope**: This documentation covers the complete end-to-end vision. The current PoC implementation focuses on **Stage 2 (Trusted Egress & Managed Infrastructure)**. Sections marked with **[ROADMAP]** describe Stage 1 (Verified Ingress) features.
6+
47
## 🚀 Open Source Upstreaming-Ready Design
58

69
**Architecture Philosophy**: This implementation uses **plugin-based extension** rather than core modifications:
@@ -45,7 +48,7 @@ The framework treats both internal infrastructure and external end-user devices
4548
| **Session Model** | Persistent Workload Identity | Just-in-Time (JIT) AI Session |
4649
| **Remediation** | MDM Lockdown + Revocation | Gateway Quarantine (403 Forbidden) |
4750

48-
#### The "Point-in-Time" BYOD Loop
51+
#### The "Point-in-Time" BYOD Loop [ROADMAP]
4952
For unmanaged devices, AegisSovereignAI replaces permanent "Trust" with **Verifiable Evidence per Session**.
5053
1. The Enterprise App instance (e.g., JPM App) generates a hardware-rooted **Entity Attestation Token (EAT)**.
5154
2. The **Aegis Verifier** appraisals the evidence and registers the device as a temporary workload.
@@ -66,8 +69,8 @@ The Verifier acts as the translation layer between:
6669
By validating the high-entropy hardware evidence device-side and emitting an Enterprise-signed SVID, the Verifier allows downstream microservices to verify "Trust" using standard mTLS without needing to understand the complexities of individual hardware roots.
6770

6871
### The Identity Pipeline
69-
1. **Appraisal**: Verifier receives raw evidence (TPM Quote, EAT, or App Attest blob).
70-
2. **Verification**: Verifier validates the evidence against OEM public keys and local policy (e.g., location ZKP).
72+
1. **Appraisal**: Verifier receives raw evidence (TPM Quote or **[ROADMAP]** EAT/App Attest blob).
73+
2. **Verification**: Keylime Verifier validates the **TPM Attestation Key (AK)** and hardware integrity. Envoy/Gateway performs mathematical verification of location ZKPs.
7174
3. **Issuance**: Verifier signals the SPIRE Server to issue a Unified SVID containing the normalized claims.
7275

7376
---
@@ -123,18 +126,18 @@ SPIRE AGENT ATTESTATION PHASE:
123126
└──────────────┘ └──────────────┘ │ App Key) │ └──────────────┘ └──────────────┘ └──────────────┘
124127
└──────────────┘
125128
126-
SPIRE SERVER and KEYLIME VERIFIER VERIFICATION PHASE:
129+
SPIRE SERVER and KEYLIME VERIFIER ATTESTATION PHASE:
127130
┌──────────────┐ [8] ┌──────────────┐ [9] ┌──────────────┐ [10] ┌──────────────┐ [11] ┌──────────────┐ [12] ┌──────────────┐ [13] ┌──────────────┐ [14] ┌──────────────┐ [15] ┌──────────────┐
128131
│ SPIRE Server │──────>│ Keylime │──────>│ Keylime │──────>│ Keylime │──────>│ rust-keylime │──────>│ Mobile Sensor│──────>│ rust-keylime │──────>│ Keylime │──────>│ SPIRE Server │
129-
│ Extract: App │ │ Verifier │ │ Registrar │ │ Verifier │ │ Agent │ Microservice │ │ Agent │ │ Verifier │ │ Issue Agent │
130-
│ Key, Cert, │ │ Verify App │ │ Return: IP, │ │ Verify AK │ │ (Sidecar) │ │ (Mock MNO) │ │ (Sidecar) │ │ Verify ZKP │ │ SVID with
131-
│ Nonce, UUID │ │ Key Cert │ │ Port, AK, │ │ Registration │ │ Collect Loc │ │ Return Loc │ │ Generate ZKP │ │ Verify Quote │ │ BroaderClaims
132-
└──────────────┘ │ Signature │ │ mTLS Cert │ │ (PoC Check) │ └──────┬───────┘ └──────────────┘ │ (Plonky2) │ └──────┬───────┘ └──────────────┘
133-
└──────────────┘ └──────────────┘ └──────────────┘ │ └──────────────┘
132+
│ Extract: App │ │ Verifier │ │ Registrar │ │ Verifier │ │ (Sidecar) │ (Mock MNO) │ │ (Sidecar) │ │ Verifier │ │ Issue Agent │
133+
│ Key, Cert, │ │ Verify App │ │ Return: IP, │ │ Verify AK │ │ Collect Loc │ │ Return Loc │ │ Generate ZKP │ │ Verify Quote │ │ SVID containing
134+
│ Nonce, UUID │ │ Key Cert │ │ Port, AK, │ │ Registration │ └──────┬───────┘ └──────────────┘ │ (Plonky2) │ (Hardware) │ │ ZKP Receipt
135+
└──────────────┘ │ Signature │ │ mTLS Cert │ │ (PoC Check) │ └──────────────┘ └──────┬───────┘ └──────────────┘
136+
└──────────────┘ └──────────────┘ └──────────────┘ │
134137
└─────────────────── [13] ──────────────────────┘ │
135138
└──────────────┘
136139
137-
SPIRE AGENT SVID ISSUANCE & WORKLOAD SVID ISSUANCE:
140+
SPIRE AGENT SVID ISSUANCE & WORKLOAD SVID ISSUANCE: (Roadmap)
138141
┌──────────────┐ [16] ┌──────────────┐ [17] ┌──────────────┐ [18] ┌──────────────┐ [19] ┌──────────────┐ [20] ┌──────────────┐ [21] ┌──────────────┐
139142
│ SPIRE Server │──────>│ SPIRE Agent │──────>│ Workload │──────>│ SPIRE Agent │──────>│ SPIRE Server │──────>│ SPIRE Agent │──────>│ Workload │
140143
│ Issue Agent │ │ Receive │ │ (Application)│ │ Match Entry │ │ Issue │ │ Forward │ │ Receive │
@@ -160,7 +163,7 @@ SPIRE AGENT SVID ISSUANCE & WORKLOAD SVID ISSUANCE:
160163
**[12]** Location Detection: Agent (Sidecar) detects mobile sensor / GNSS coordinates
161164
**[13]** MNO Endorsement: Verifier fetches location from MNO (Mock MNO Microservice) to bind to session
162165
**[14]** ZKP Generation: Agent (Sidecar) runs Plonky2 circuits to prove: Coordinate-in-Geofence, binding to session nonce
163-
**[15]** Stateless Verification: Verifier validates ZKP proof and TPM quote result → SPIRE Server
166+
**[15]** Hardware Verification: Verifier validates TPM hardware integrity result → SPIRE Server
164167
**[16]** Agent SVID: Server issues agent SVID with BroaderClaims embedded → SPIRE Agent
165168
**[17]** Workload Request: Workload connects to Agent Workload API
166169
**[18]** Workload API: Workload requests SVID via Agent Workload API
@@ -195,8 +198,10 @@ SPIRE AGENT SVID ISSUANCE & WORKLOAD SVID ISSUANCE:
195198
- Supports three sensor modes: (1) GNSS local, (2.1) CAMARA direct, (2.2) CAMARA boundary verify
196199
- Agent handles TPM operations (PCR 15 extend, quote generation)
197200
- See **[Privacy-Preserving Geolocation](../docs/auditor-privacy-preserving-geolocation.md)** for architecture details
198-
- **Keylime Verifier**: TPM attestation verification, geolocation verification
201+
- **Keylime Verifier**: Hardware integrity attestation & AK validation
199202
- New API: `/v2.2/verify/sovereignattestation` (unified verification)
203+
- **AK Validation**: Verifier ensures the TPM **Attestation Key (AK)** is valid (optionally certified against an EK/Manufacturer CA) and originates from a registered host.
204+
- **Hardware Integrity**: Verifies the TPM Quote signatures and PCR measurements (e.g., PCR 15 for geolocation binding).
200205
- Optional feature - gated by `unified_identity_enabled` flag
201206
- **Geolocation verification works standalone**: Verifier can fetch and validate geolocation independently
202207
- **Keylime Registrar**: Agent registration database (no changes)
@@ -230,6 +235,9 @@ SPIRE AGENT SVID ISSUANCE & WORKLOAD SVID ISSUANCE:
230235

231236
## Technical Details: Verified Ingress (Edge Workloads)
232237

238+
> [!NOTE]
239+
> **Implementation Status**: This section describes the **Architectural Roadmap** for Verified Ingress. The current PoC implementation focuses on **Stage 2: Trusted Egress** within the data center.
240+
233241
AegisSovereignAI treats the Enterprise Application (e.g., at JPMC or HSBC) as a **First-Class Edge Workload**. This ensures that the "Chain of Trust" is unbroken from the consumer's glass to the sovereign data center.
234242

235243
### Unified SVID Claim Schema (OIDs & JSON Paths)
@@ -1845,9 +1853,9 @@ sequenceDiagram
18451853
Note over KAgent: Prove: Location is in Category Radius
18461854
18471855
KAgent-->>Verifier: Integrity Quote + ZKP Proof
1848-
Verifier->>Verifier: Stateless ZKP Verification
1856+
Verifier->>Verifier: Verify Hardware Integrity (TPM)
18491857
1850-
Verifier-->>Server: Attested Claims (compliant) + Proof Receipt
1858+
Verifier-->>Server: Attested Hardware Claims + Proof Receipt
18511859
18521860
Server-->>Agent: Agent SVID + grc.sovereignty_receipt
18531861
@@ -1856,12 +1864,15 @@ sequenceDiagram
18561864
18571865
Note over Workload, Envoy: 4. RUNTIME VERIFICATION (Stateless)
18581866
Workload->>Envoy: mTLS Request with SVID Chain
1867+
Note right of Envoy: Envoy verifies ZKP Proof<br/>statelessly during mTLS
18591868
Envoy->>Envoy: Extract & Verify ZKP Receipt (Plonky2)
18601869
Envoy-->>Workload: Allowed (Verified Sovereign)
18611870
```
18621871

18631872
> [!IMPORTANT]
1864-
> **Gen 4 Implementation Status**: The ZKP Prover logic (Plonky2) and stateless verification are fully implemented. The remaining dependency for absolute zero-trust is **MNO Local Response Signing**, which ensures the location input to the ZKP circuit is authenticated by the carrier before proof generation.
1873+
> **Gen 4 Implementation Status**: The ZKP Prover logic (Plonky2) and stateless verification are fully implemented.
1874+
> - **Keylime Verifier**: Focuses on **Hardware Integrity Attestation** (TPM Quote).
1875+
> - **Envoy Proxy**: Performs the **Stateless ZKP Verification** of location claims at runtime.
18651876
18661877
### Evolution: Gen 3 → Gen 4
18671878

hybrid-cloud-poc/README.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -67,10 +67,10 @@ This PoC provides end-to-end implementation for **Stage 2: Trusted Egress & Data
6767

6868
| Use Case | Stage 1: Verified Ingress | Stage 2: Trusted Egress | PoC Status |
6969
|----------|---------------------------|-------------------------|------------|
70-
| **Enterprise Customer** | ✅ Implemented (ZKP-based) | ✅ Implemented | Full (Privacy-Preserving) |
71-
| **Enterprise Employee** | ✅ Implemented (ZKP-based) | ✅ Implemented | Full (Privacy-Preserving) |
72-
| **Enterprise Tenant** | N/A (Internal workload isolation) | ✅ Implemented | Full |
73-
| **Regulator** | ✅ Implemented (ZKP-based) | ✅ Implemented | Full (Data center audit ready) |
70+
| **Enterprise Customer** | 🔲 Roadmap (ZKP Pilot) | ✅ Implemented | Full (Egress Only) |
71+
| **Enterprise Employee** | 🔲 Roadmap (ZKP Pilot) | ✅ Implemented | Full (Egress Only) |
72+
| **Enterprise Tenant** | N/A (Internal isolation) | ✅ Implemented | Full |
73+
| **Regulator** | 🔲 Roadmap (ZKP Pilot) | ✅ Implemented | Full (Egress Only) |
7474

7575
**What This PoC Currently Demonstrates:**
7676
- ✅ Hardware-rooted identity (TPM attestation via Keylime)

0 commit comments

Comments
 (0)