Home Stealth Sync

Stealth Sync

How private wallet sync works and why it is safer
By Miguel Abascal
• 3 articles

How Stealth Sync keeps your wallet private

How Stealth Sync keeps your wallet private The short version: your browser does the work, and our server only ever stores sealed data it cannot open. Self-custody for your data, the same way your keys work. The sync, step by step 1. Unlock. Your encrypted vault, the sealed store that holds your wallet details, opens in your browser with your password. The key is never sent to our servers. 2. Derive addresses. The wallet's public key is expanded into its receiving addresses, locally. Nothing is sent anywhere. 3. Download public filter files. Your browser fetches small summary files of recent Bitcoin blocks. They are the same public files for every user and every wallet, so the files themselves reveal nothing about your addresses. 4. Match in your browser. The addresses are checked against those summaries on your own machine. This is the step other tools outsource to someone else's server. We never see it. 5. Fetch only matching blocks. Full blocks are downloaded only where a summary showed a possible match, then parsed locally to pull out the wallet's real transactions. 6. Seal and store. The results are encrypted in your browser before upload. What our server stores is sealed bytes it cannot open. Only your apps, with your key, can read them. Why not just look the wallet up somewhere? Unless you run your own Bitcoin node, syncing a wallet usually means showing it to someone. Here is the honest comparison. Paste your xpub into a block explorer The explorer's server expands your wallet and looks up every address for you. That one paste hands over your full balance, your entire history, and every future transaction, tied to your IP address. You are trusting them to never log it, forever. Let a sync service hold your wallet's public key A server stores your wallet's public key and scans the chain on your behalf. Their database becomes a map of your finances. One breach, subpoena, or bad employee exposes everything, and you may never know it happened. Stealth Sync Your browser does the scan itself, using the same public files everyone downloads, and seals the results before they leave your machine. Our server stores sealed bytes it cannot open. Your addresses, balances, and history stay yours. One honest caveat Like any website, our server could observe traffic patterns, such as which block ranges a browser fetches. It cannot see your addresses or your keys, and it does not learn which transactions in those blocks are yours. The stored results stay sealed. See it yourself The whole flow runs as an interactive demo at orangerails.app/demo. No wallet needed.

Last updated on Jul 02, 2026

Is this zero-knowledge? Two meanings, one honest answer

Is this zero-knowledge? Two meanings, one honest answer Short version: two different things share the name "zero-knowledge." We are built on one of them, we do not use the other, and our product language is self-custody for your data so nobody has to guess which one we mean. The two meanings Zero-knowledge proofs (ZK-SNARKs, ZK-STARKs and friends) are a cryptographic protocol family: a way to prove a statement is true without revealing the underlying data. They power some blockchain scaling and privacy systems. OrangeRails does not use zero-knowledge proofs. Zero-knowledge architecture is the password-manager sense of the word, the one Bitwarden, 1Password, and Proton built their reputations on: the operator stores only ciphertext it cannot decrypt, because the keys are derived from secrets only the user holds. This is the idea OrangeRails is built on. Why we say "self-custody for your data" instead Bitcoiners already own the strongest version of this concept: not your keys, not your coins. We apply the same principle to your financial data: not your keys, not your data, for anyone, including us. The guarantee is mechanical, not promissory: - Credentials are encrypted in your browser with a key derived from your password (Argon2id). Our server stores ciphertext only. - Stealth Sync matches your wallet against public block data entirely in your browser and seals the results before upload. The server stores sealed bytes it cannot open. - The code is public (Apache 2.0), so none of this needs to be taken on trust. We even removed a convenience feature because it required our server to momentarily handle plaintext. When convenience and the guarantee conflict, the guarantee wins. See it work The interactive demo at orangerails.app/demo shows the whole flow with sample data, no wallet needed.

Last updated on Jul 02, 2026