How a sealed-bid auction stays sealed
ShadowBid runs on Arcium's encrypted computation. Here's the exact path your bid takes — and what nobody can see along the way.
Encrypt locally
Your browser generates an ephemeral X25519 keypair, performs ECDH with the MXE's public key, and feeds the shared secret into RescueCipher. The plaintext bid never leaves your machine.
Submit ciphertext to Solana
place_bid sends only ciphertexts + nonces. Solana validators (and the entire mempool) cannot read the amount. MEV bots have nothing to sandwich.
Compare inside the MXE
An Arcium multi-party compute cluster runs the place_bid Arcis circuit on encrypted inputs and updates the MXE-encrypted AuctionState. Even the Arx node operators see nothing.
Reveal exactly one number
When the seller calls reveal_winner, the MXE decrypts only the winning amount + bidder. Losing amounts are sealed forever.
That row above is what a validator, an Arx node, an indexer, or your nosy neighbor sees when they read the auction account.
Threat model
- Other bidders see only the public bid count + the same ciphertext you see.
- MEV bots can't read the amount in flight, so there's nothing to sandwich.
- The seller can call reveal_winner — but only the winning amount + bidder are decrypted; losers stay sealed forever.
FAQ
Can the MXE operators see my bid?
No. The MPC protocol guarantees no single Arx node ever holds plaintext; bids are computed under encryption inside the cluster.
What stops me from being front-run?
The mempool sees ciphertext + a random nonce. There is no readable amount for searchers to sandwich. After reveal, the auction is already over.
What's stored on Solana?
Each Auction PDA holds a 96-byte encrypted state (a u64 + two u128 limbs that encode a Pubkey), a state nonce, the bid count, and — once revealed — the winner + winning bid in cleartext.
Why is there a per-bid Arcium computation account?
Every queued MXE computation gets its own Solana account so the cluster can post the verified output. After finalization you can reclaim its rent from your dashboard.
Are losing bidders refunded automatically?
Not yet — escrow + auto-refund is on the roadmap. Today the auction is informational; the seller settles off-chain or via a follow-up program.
Try it now
Spin up an auction in one click, share the PDA, watch sealed bids stack against each other, then dramatically reveal the winner.