Privacy wallet for Telos EVM with native Rust proofs
Telos wanted private payments usable in an everyday wallet, not only in a protocol spec. Zero-knowledge privacy protocols give strong guarantees, but generating proofs in a browser is slow enough to discourage routine use. Telos worked with Protofire to build zkTelos Wallet, a shielded-transaction wallet for Telos EVM.
Protofire adapted the open-source zkBob wallet and client library to Telos, then moved proof generation out of the browser into a native Rust addon packaged inside an Electron desktop app. The wallet ships as a web app and as desktop builds for macOS, Windows, and Linux. The primary engineering artifact is public at github.com/protofire/telos-privacy-wallet.
“Shielded-payment protocols existed, but adopting one is not the same as shipping a wallet people use.”
Why private payments on Telos EVM needed more than a protocol
Telos runs an EVM-compatible layer-1 aimed at fast, low-cost transactions, and privacy was the gap. Shielded-payment protocols existed, but adopting one is not the same as shipping a wallet people use. A user sending a private transfer generates a zero-knowledge proof on their own device, and doing that in a browser is slow enough to discourage repeat use.
A working privacy wallet is also more than one interface. It needs privacy smart contracts on-chain, ZK circuits, a relayer so users can transact without exposing their own address as the fee payer, and indexing so the wallet can reconstruct shielded state. Miss one and the wallet does not function.
How Protofire built the Telos zkWallet privacy stack
Protofire built on zkBob, an open-source privacy protocol, adapting its wallet interface and client library to run on Telos EVM. The core engineering decision was where proofs get generated. The web build proves in the browser through a WASM module. For the desktop build, Protofire compiled the zkBob Rust proving code into a native Node addon and packaged the wallet as an Electron application, so proofs run natively on the user's machine rather than in a browser sandbox.
The public repository reflects this split: a WASM proving package for the web and a native Rust addon wired into the Electron build for desktop, alongside the ZK-SNARK circuits and the TypeScript application. Protofire shipped desktop builds for macOS, Windows, and Linux.
Results
Proof pack
The primary artifact is public: protofire/telos-privacy-wallet is the wallet Protofire built. By its own README, the wallet is built on zkBob's open-source UI and client library, adapted for Telos, with a native Rust proving addon and Electron desktop packaging added on top.
The GitHub repository sits in the Protofire org and is not a GitHub fork, but the code descends from zkBob, so the boundary is clear: Protofire adapted and extended an open protocol and its reference wallet rather than authoring the base privacy protocol. The repository carries the TypeScript application, the ZK circuits, and both the WASM and native Rust proving paths.