Live on Base

Nobody can take it.
Nobody can trace it.

> $5any USB drive
2 / 3shards to sign
0txns traceable
One wallet, any two shards

A live preview of
the vault.

Marmo splits your key across a USB drive, a non-custodial co-signer, and a passkey — on Base. No single party holds enough to move your funds. Every payment routes through stealth addresses, so your balance and counterparties stay private.

Marmo Wallet 2-of-3
Base
Balance 1,420.08 USDC
0xb013…F2847 copy
A
DriveUSB · connected
signed
B
Co-signerapproved · blind
signed
C
Recoverylogin · resting
resting
Quorum reached
1 shard alone → rejected
Drive lost → recover with 2 & 3
Base live ERC-4337 smart accounts Stealth addresses Privacy pools Non-custodial co-signer Base live ERC-4337 smart accounts Stealth addresses Privacy pools Non-custodial co-signer
The two bad choices

Hot wallets leak. Hardware wallets cost. And neither is private.

The software way

Your 12 words sit in browser memory. One piece of malware and the wallet is drained.

single point of failure

The hardware way

A $150 proprietary box, shipped to your door, locked to one vendor's chip.

expensive & proprietary

The Marmo way

Split the key across hardware you already own, on Base. Math replaces the secure element. Every payment is private by default.

sovereign, private & free
Three shards, one wallet

A key split into pieces that
never meet

A

The drive shard

An encrypted shard written to any standard flash or hard drive. Cold by default, portable by nature. Unplug it and the wallet sleeps.

B

The co-signer

A non-custodial server that holds exactly one shard and signs blind, without seeing your transaction. Fully hacked, it still cannot move a single coin.

C

The recovery shard

A passkey, not a seed phrase. No twelve words to lose. Lose the drive and your passkey plus the co-signer bring the wallet back.

How a payment signs

Two shards shake hands.
The chain does the rest.

  1. 01

    Build

    The app composes your transaction and hands the bytes to your shards.

  2. 02

    Sign

    The drive signs, then the co-signer signs after you approve. Two of three.

  3. 03

    Combine

    The partial signatures merge into one signature, indistinguishable from a normal wallet.

  4. 04

    Settle

    The chain validates the quorum and finalizes. A single shard would be rejected.

Privacy, on by default

Your security is
invisible.

A normal multisig announces itself on-chain. Marmo does not. Threshold signing makes your wallet look like any ordinary account. Add stealth addresses and screened privacy pools, and your payments become unlinkable — private by cryptography, never by policy.

01

Invisible setup

Threshold signatures collapse your 2-of-3 into one ordinary signature. Nobody can tell you use Marmo, your threshold, or your co-signer.

02

Blind co-signing

The co-signer enforces your policy against a zero-knowledge proof. It approves the spend without ever seeing the transaction or profiling you.

03

Unlinkable receipts

Fresh stealth addresses (ERC-5564) per payment keep your inflows unlinkable. Outbound sends route through screened privacy pools — shielded USDC with provably clean funds, never unscreened mixing.

Why people switch

Elite security on
the hardware in
your drawer.

Get Marmo
2 / 3shards needed to spend. One is never enough.
0txns traceable. Stealth addresses make every receipt unlinkable.
$0extra hardware. Use the drive you already own.

No seed phrase to lose

Recovery rides on a passkey on Base, not twelve words on a sticky note. Lose the drive, keep the passkey — your wallet comes back.

Two ways in

One wallet.
Two doors.

Desktop or Telegram — same address, same funds. Pick your surface, switch anytime.

Desktop macOS · Windows · Linux
Full experience
  • Send & receive USDC / USDT
  • Swap — powered by 1inch
  • Private sends, stealth addresses
  • Hardware drive as shard A
  • Full 2-of-3 custody
Download
Telegram Any device · no install
No app needed
  • Send & receive USDC / USDT
  • Swap — powered by 1inch
  • Your own .marmo handle
  • Telegram auth = shard A
  • Non-custodial, same guarantee
Open on Telegram
Same address. Whether you open the app or message the bot, you're signing from the same smart wallet on Base. Marmo never holds a quorum.
The security model

Enforced by the chain,
not by our code.

Marmo builds on Base ERC-4337 smart accounts. The 2-of-3 threshold lives in a smart contract on-chain, enforced by the network — not by a script we wrote. No hand-rolled cryptography stands between you and your funds.

  • Steal the driveUseless. It is one shard of two.
  • Hack the laptopThe co-signer never co-signs without your approval.
  • Breach the serverOne shard cannot move funds. Full stop.
  • Lose a shardThe remaining two recover the wallet.
For developers

One API,
private by default.

Marmo ships as an open SDK for Base. Split a wallet into shards, route through stealth addresses, and send private USDC — in a handful of lines.

View on npm
two-of-three.ts
import { createShards, MarmoAccount, sendPrivate } from "@usemarmo/base-sdk";

const shards  = await createShards({ threshold: 2, total: 3 });
const account = await MarmoAccount.deploy(shards);

// private USDC — unlinkable, screened, non-custodial
await sendPrivate(account, { to: recipient, token: USDC, amount });
Get the app

Download Marmo

Detecting your platform…

All builds and checksums on the releases page.

Split your first wallet Download in minutes