Problem
MemPrivacy currently protects sensitive data primarily through local detection and pseudonymization. However:
- Privacy detection is probabilistic and may miss sensitive spans.
- Users still need to trust the remote service not to inspect or retain plaintext that passes through.
- Open-source code alone cannot prove that the same code is running in production.
Proposal
Add an optional Confidential Execution Mode based on TEE + Remote Attestation.
Client
│
├─ Verify remote attestation
├─ Verify expected workload measurement
│
└─ Encrypt request with attested public key
↓
┌─────────────┐
│ TEE │
│ MemPrivacy │
│ Processing │
└─────────────┘
↓
Encrypted result
The client should only release sensitive data or encryption keys after verifying that:
- the workload is running inside a supported TEE;
- its code measurement matches an approved build;
- debug mode is disabled.
Why
This changes MemPrivacy's security model from:
"Sensitive information is unlikely to leave the client if correctly detected."
to:
"Even if sensitive information reaches the server, the infrastructure operator cannot directly access it."
A minimal first implementation could target one backend such as AWS Nitro Enclaves, keeping the existing local redaction pipeline unchanged.
This would make privacy defense-in-depth rather than dependent solely on detection accuracy.
Problem
MemPrivacy currently protects sensitive data primarily through local detection and pseudonymization. However:
Proposal
Add an optional Confidential Execution Mode based on TEE + Remote Attestation.
The client should only release sensitive data or encryption keys after verifying that:
Why
This changes MemPrivacy's security model from:
to:
A minimal first implementation could target one backend such as AWS Nitro Enclaves, keeping the existing local redaction pipeline unchanged.
This would make privacy defense-in-depth rather than dependent solely on detection accuracy.