Skip to content

Frontier-Compute/zap1-telegram

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

zap1-telegram

Shielded Zcash access from Telegram. Split-key custody via Ika MPC.

What this does

A Telegram bot that gives any user a split-key Zcash wallet. Deposits are transparent (t-addr), then shielded into the Orchard pool. Every action attested on Zcash mainnet via ZAP1.

Neither the bot nor the MPC network can spend your ZEC alone. Policy enforced by Sui Move contracts.

Commands

Command What it does
/start Welcome, show commands
/wallet Create split-key wallet (secp256k1 dWallet on Ika)
/balance Check transparent + shielded balance
/shield Move ZEC from transparent (MPC) to shielded (Orchard)
/send Send ZEC (shielded or transparent depending on address)
/prove Get Merkle proof of latest attestation
/history View attestation history
/status Network status (Zebra, ZAP1, Ika)

How it works

User (Telegram)
  |
  | /wallet
  |
Bot creates dWallet on Ika (2PC-MPC)
  - user key share stored per-user
  - network key share on Ika nodes
  - one secp256k1 key signs for ZEC + BTC + ETH
  |
  | deposit ZEC to t-addr
  |
  | /shield
  |
Bot signs transparent TX via MPC -> shielded pool
  - attested to ZAP1 on Zcash mainnet
  - full Orchard privacy from this point

Setup

npm install
npm run build

# Get a bot token from @BotFather on Telegram
BOT_TOKEN=your-token npm start

Environment

Var Default Required
BOT_TOKEN - yes
ZAP1_API_URL https://pay.frontiercompute.io no
ZEBRA_RPC_URL http://127.0.0.1:8232 no

Stack

License

MIT

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors