Public money reveals private business.
Wallet activity can expose an invoice amount, a contribution size, a commercial price or a settlement value. Blank hides the amount, not the existence of the transaction.
paid [ amount encrypted ] USDC to a public recipient. The transfer can be confirmed without disclosing its value.
One privacy model across real payment jobs.
The user chooses a normal financial action. Blank supplies encrypted amount handling and a visible outcome.
Confidential commerce, seen by every party.
A real storefront path on the live testnet product. Dave offers an item with encrypted price handling, Bob pays, and Dave sees the purchased listing after returning to his seller view.
The product path behind the receipt.
A user signs in Rabby. Blank encrypts the amount client-side for a CoFHE-aware contract call. The chain records the state transition and the application returns the resulting status.
User approves the action from a standard EOA wallet.
Amount input is prepared for encrypted contract execution.
Encrypted values are stored and processed on testnet.
The user sees status, receipt link and counterparty state.
Receipts, screenshots and cross-user outcomes.
This archive supports the product story above. It records desktop Rabby EOA flows driven on Ethereum Sepolia and Base Sepolia from the live application. Arbitrum Sepolia (chain 421614) is deployed as a third testnet running the same contract set, with the encrypted-vault flow proven on-chain (shield tx). The Arbitrum real-wallet sweep is captured in the Arbitrum Sepolia section below. Mobile transaction coverage and sponsored/passkey readiness are not claimed on this page.
Recorded desktop coverage
The visual sections focus on shareable and offramp headline journeys. The matrix below states the Rabby EOA outcomes recorded during live QA on both Sepolia chains.
| Outcome verified | Base Sepolia | Ethereum Sepolia |
|---|---|---|
| Shield and encrypted send | Verified | Verified |
| Payment request settlement and invoice settlement | Verified | Verified |
| Gift claim, claim link used-state, storefront sale, crowdfund contributions | Verified | Verified |
| Stealth inbox, groups, inheritance, encrypted proof | Verified | Verified |
| Escrow delivery and release | Verified | Verified |
| P2P Exchange create and counterparty fill | Verified | Verified |
| P2P Offramp take, proof, challenge window and release | Verified | Verified |
| Cross-user refresh truth and failure handling | Verified | Verified |
Arbitrum Sepolia · real-wallet sweep
Chain 421614 runs the same contract set as Base and Ethereum Sepolia. The feature set was driven through the live application with a real browser wallet (Rabby), multi-wallet (Dave, Bob, Carol), on Arbitrum Sepolia. Create flows for the full feature set, plus the second-party consume flows below, each with an on-chain transaction. The encrypted-vault shield is proven by this shield transaction.
| Outcome on Arbitrum Sepolia | Rabby sweep |
|---|---|
| Wallet identity, Dave/Bob/Carol switched per step | Verified |
| Encrypted send | Verified |
| Claim link: created, claimed, used-state blocked | Verified |
| Storefront purchase, crowdfund contributions | Verified |
| Gift envelope: created and claimed | Verified |
| Payment request: created and paid | Verified |
| Stealth payment, creator tip | Verified |
| Groups, inheritance, encrypted proof, invoice, escrow (created) | Verified |
| P2P Offramp full lifecycle: create, take, proof, challenge window, release | Verified |
| Negative cases: invalid claim link honest error, empty-input gating | Verified |
1. Wallet identity
Three personas (Dave/Bob/Carol) on the same Rabby profile, switched between via the extension popup. Every flow below switches Rabby to the right persona before each step.
2. Claim Link · send to anyone
Dave creates a magic link, Bob opens it and claims, Carol is rejected on the spent link. Used → blocked enforcement is on-chain. Same flow proven on both chains.
3. Storefront · encrypted sales
Dave lists, Bob buys, Carol can browse but can't see Bob's purchase. Dave revisits /app/sell after the buy and sees the listing in his "Your listings" section with up-to-date state. Same flow proven on both chains.
4. Crowdfund · encrypted contributions
Bob and Carol contribute privately to Dave's campaign. Their amounts are encrypted; only the on-chain total handle is visible. Dave revisits /app/fundraise and sees the campaign with both contributions reflected.
5. P2P Exchange · encrypted swap
Encrypted-amount swap offer on the P2PExchange contract. Dave creates, Bob fills, and both users see the filled result. Fresh full lifecycles were driven on the live deployment on both chains.
Create + fill proof · 2026-05-25
- Eth Create:0x66234851… · Fill sequence:0x7665f3be…
- Base Create:0x728e9ebe… · Fill sequence:0xc01b152c…
6. P2P Offramp · create (headline)
Encrypted offramp headline build. Dave creates an encrypted offramp offer: 1 USDC for $1 PhonePe UPI. The USDC amount is committed encrypted; the fiat rail + price are public so takers can find it. Offer appears in the public book.
7. P2P Offramp · full lifecycle
Bob takes Dave's offer, follows the off-chain payment step, submits testnet settlement evidence, waits the 300-second challenge window, then releases the encrypted USDC to himself. The testnet build uses an operator-signed mock Reclaim verifier; production settlement requires an approved live proof provider and independent security review.
On-chain proof · both chains
- Eth0x785db560… · FillLocked (Bob takeOffer)
- Eth0x85b3bbfd… · ProofSubmitted
- Eth0x159e292c… · FillReleased
- Base0x2fb0361d… · FillLocked (Bob takeOffer)
- Base0x98b34e7e… · ProofSubmitted
- Base0x8a82353b… · FillReleased
8. Highlighted on-chain transaction index
The linked headline-flow transactions below have successful receipts on the labeled chain. Click through to Etherscan or Basescan to verify independently.
Eth Sepolia P2P Exchange lifecycle
- Create offer:0x66234851…
- Bob fill completes:0x7665f3be…
Base Sepolia P2P Exchange lifecycle
- Create offer:0x728e9ebe…
- Bob fill completes:0xc01b152c…
Eth Sepolia Offramp lifecycle
- Approve+create:0xe20a1bef… + 0xd7837090…
- takeOffer:0x785db560…
- submitProof:0x85b3bbfd…
- releaseFill:0x159e292c…
Base Sepolia Offramp lifecycle
- Approve+create:0xc24ad035… + 0x61dac989… + 0x440c7908…
- takeOffer:0x2fb0361d…
- submitProof:0x98b34e7e…
- releaseFill:0x8a82353b…
FHE invariant (mock-Reclaim signer = on-chain operator on both chains)
- Server signer: 0xb860513A3C5348C46cF52a573Fd743bA03c2c53F (source:
/api/relaykind=mock-reclaim-sign) - Eth on-chain:
MockReclaimVerifier(0xdfc2606B…).operator()= same address - Base on-chain:
MockReclaimVerifier(0xB36441E8…).operator()= same address - Verify:
verifyAndConsume(sig, …)returns(true, 0x301f8c…)on both