zigner

air-gapped zcash signing for android

spending keys stay on an offline phone. zcli talks to zigner through QR codes — no wifi, no bluetooth, no USB.

get zigner

setup

# on zigner: generate wallet, display FVK QR
# on your machine:
zcli import-fvk --cam                     # scan the viewing key QR
zcli sync --wallet zigner                 # sync watch-only wallet
zcli balance --wallet zigner              # check balance

send

zcli send 1.0 u1... --wallet zigner --cam # build unsigned tx, show QR
# zigner scans it, signs offline, displays signed QR
# zcli scans signed QR back, broadcasts to network

the flow

zcli x zignerair-gapped
zigner (offline) zcli (online) ┌──────────────┐ ┌──────────────┐ generate keys FVK QR import-fvk hold spend key│ ──────────────▸ │ watch-only └──────────────┘ │ sync & build ┌──────────────┐ unsigned tx │ │ verify & sign │ ◂────────────── │ send --cam display QR │ ──────────────▸ │ broadcast └──────────────┘ signed tx └──────────────┘
keys never leave the deviceQR codes only