Invisible

MVP Architecture

TEE Coordinators, FROST share delegation, and the asynchronous privacy pool.

V3: Asynchronous Privacy Pool with TEE Coordinators

Core Principle

A network of decentralized coordinators running inside a Trusted Execution Environment (TEE) (Intel SGX / AWS Nitro Enclaves), with mandatory Remote Attestation before any sensitive signing operation.

Security Shift

Before (POC)After (V3)
Behavioral security (client monitoring, best-effort execution)Cryptographic execution security (attested binary + binding settlement/fee logic)

Cryptographic Guarantees

1. Binary Integrity via Remote Attestation — users verify the enclave measurement before sending FROST shares. A coordinator fork that removes fees or ignores policies is rejected.

2. Protocol Fee Hard-Bound to Settlement — the enclave builds settlement transactions with a mandatory fee output. Removing the fee invalidates the signing process.

3. Software Atomicity — the TEE aggregates all signatures and broadcasts only when all transactions are ready. No vulnerability window.

FROST Share Delegation

Why DKG + Delegation (Not a Raw Private Key)?

ApproachAdvantage
DKG + delegation (our approach)Key never existed in full form before delegation. LP can verify the TEE participated in DKG. Pre-signed refund possible before delegating.
Raw private key handoffSimpler but no process verifiability, no pre-delegation refund, separate key management path.

LP Delegation Flow

LP                                          TEE Enclave
 |                                           |
 |  1. 2/2 FROST DKG ────────────────────►  |
 |     → W_lp (joint pubkey)                |
 |                                           |
 |  2. Verifies attestation                  |  Proven code:
 |     (MRENCLAVE / PCR)                     |  - spending rules
 |                                           |  - no key export
 |  3. Sends share_lp ────────────────────►  |  - refund logic
 |     via encrypted attested channel        |  - fee logic
 |                                           |
 |  4. Funds W_lp ────────────────────────►  |  Holds:
 |     (SystemProgram.transfer)              |  share_lp + share_tee
 |                                           |  = solo signing
 |  5. Disconnects                           |

Spending Policies

At delegation time, the LP registers a signed spending policy:

ParameterExamplePurpose
max_amount_per_swap5 SOLCap per individual swap
total_committed20 SOLTotal amount committed to the pool
payout_deadline3 weeksAfter this, TEE must auto-refund
refund_addressLP_originWhere funds go if no swap or deadline reached
min_fee_bps30 bpsMinimum acceptable fee

The attested binary refuses to sign any transaction that violates these constraints.

TEE Orchestration (Asynchronous)

Once Alice has deposited and delegated:

  1. Matching — select LP wallets whose constraints are compatible
  2. Scheduling — generate a random payout schedule using attested CSPRNG. Amounts are fragmented non-uniformly
  3. Deferred execution — at each scheduled slot, the TEE signs and broadcasts:
    • W_lp_N → Alice_fresh_N (payout)
    • W_alice → LP_refund_address (reimbursement)
    • Fee output to protocol xPub address
  4. All transactions are SystemProgram.transfer only

Example Payout Schedule

Timeline (3 weeks)
──────────────────────────────────────────────────

  Day 2       Day 5       Day 11      Day 16      Day 20
  0.4 SOL     1.1 SOL     0.3 SOL     0.8 SOL     0.4 SOL
    |            |           |            |           |
    v            v           v            v           v
  W_lp_1 →   W_lp_2 →   W_lp_1 →   W_lp_4 →   W_lp_2 →
  Alice_1     Alice_2     Alice_3     Alice_4     Alice_5

Each payout goes to a fresh address. No link between Alice_1 through Alice_5 on-chain.

On this page