feat: update TEE+ZK settlement, private trade settlement, and add network anonymity pattern#85
feat: update TEE+ZK settlement, private trade settlement, and add network anonymity pattern#85
Conversation
| - **Phase 1**: Single-network private DvP on production infrastructure (shielded pool) | ||
| - **Phase 2**: Multi-asset settlement on same network (bonds + cash + collateral) | ||
| - **Phase 3**: Cross-network coordination with TEE or MPC if required by use case | ||
|
|
There was a problem hiding this comment.
do we need phasing in the approach doc?
There was a problem hiding this comment.
It's not a hard requirement, but it's a way to classify approaches' scope by maturity.
| ## More Details | ||
|
|
||
| 5. **Failure Recovery:** Operational procedures for handling complex multi-network settlement failures? | ||
| ### Implementation Recommendations |
There was a problem hiding this comment.
we should recommend that if the tee approach is used, and the proof system makes use of a gpu, the gpu should also support TEEs: https://developer.nvidia.com/blog/confidential-computing-on-h100-gpus-for-secure-and-trustworthy-ai/
and that the gpu attestation should be verified in the cpu tee, to improve security
There was a problem hiding this comment.
There was a problem hiding this comment.
- The host operator (not just the hardware vendor) can intercept, reorder, drop, replay, and inject all messages between the enclave and external systems, making the infrastructure operator a primary trusted party.
- Vsock metadata (packet sizes, processing duration, connection counts) leaks trade timing and size information even without breaking enclave confidentiality, enabling front-running.
- TEE-only deployments without constant-time cryptography remain vulnerable to cache timing and speculative execution side-channels that can extract plaintext order data.
- A single TEE coordinator is a single point of compromise; threshold key distribution across multiple TEE instances operated by independent parties is required before production use.
- Attestation verification must pin specific PCR values (not just PCR0), validate the full certificate chain to the hardware vendor root CA, and enforce measurement freshness to prevent enclave code substitution.
- The 24h timeout is also a griefing vector: a malicious operator can selectively stall settlement to lock counterparty capital while market conditions change.
- TEE trust is weaker than HSM trust along every axis (no physical tamper resistance, large attack surface, documented side-channel history), so institutional HSM acceptance does not transfer to TEEs without additional defense layers.
based on https://docs.bluethroatlabs.com
Co-authored-by: Aaryamann Challani <43716372+rymnc@users.noreply.github.com>
Co-authored-by: Aaryamann Challani <43716372+rymnc@users.noreply.github.com>
b91fbeb to
4267316
Compare
| maturity: PoC | ||
| layer: offchain | ||
| privacy_goal: Hide sender identity (IP, timing) for both reads and writes at the transport layer | ||
| assumptions: TEE availability on client side, semi-honest server majority |
There was a problem hiding this comment.
Can we decople network level anonymity from being solved with TEE? To me they seem like two different things? E.g. diff ways to get network anonymtiy
There was a problem hiding this comment.
This one seems specifically about TEE based approach (not clear from filename)
There was a problem hiding this comment.
Good point!
Addressed in 4279b81
oskarth
left a comment
There was a problem hiding this comment.
Skimmed some parts and focused on high-level, overall looks good!
Re lint: I suggest either fixing issues or adjusting lint to be less aggressive
| maturity: PoC | ||
| layer: offchain | ||
| privacy_goal: Hide sender identity (IP, timing) for both reads and writes at the transport layer | ||
| assumptions: TEE availability on client side, semi-honest server majority |
There was a problem hiding this comment.
This one seems specifically about TEE based approach (not clear from filename)
| @@ -25,11 +25,13 @@ This is a foundational pattern describing TEE trust models and failure modes. Sp | |||
|
|
|||
| ## Ingredients | |||
There was a problem hiding this comment.
I think there are quite a few research groups looking into TEE open stack security etc
Probably a good idea to reference some of these as external links? Otherwise our summary seems a bit random maybe
Summary
approach-dvp-atomic-settlement.mdfor atomicity primitives instead of duplicatingKey design decisions
approach-dvp-atomic-settlement.md— focuses on privacy layer, links to DvP doc for escrow/HTLC mechanicsTest plan
npm run validate— passes (word count warning on patterns expected, under error threshold)npm run check-terms— passes, all canonical GLOSSARY.md terms usedCloses #77, closes #79
🤖 Generated with Claude Code