Most mobile wallets are powered by someone else’s server. Every balance check and every transaction you broadcast tells that server which addresses are yours, and they can switch you off whenever they like. Fully Noded is built on a different idea: your wallet should talk only to your own node.
The big picture
[ Fully Noded ] --Tor--> [ onion service ] --> [ Bitcoin Core RPC ]
iPhone/Mac on your Mac (FN-Server) on your Mac
- Bitcoin Core (or Knots) is the node. It validates every block and transaction itself and holds your watch-only wallets.
- FN-Server installs, verifies, configures and supervises the node, Tor and Join Market on your Mac.
- Fully Noded is the remote control and the signer. It sends commands to your node and signs transactions on your device.
Talking to your node: RPC
Bitcoin Core has a huge amount of functionality that its GUI never shows. It’s all reachable over a JSON-RPC interface, the same commands you’d type into bitcoin-cli. Fully Noded turns your taps into those calls. For example, opening a wallet’s transaction list sends something equivalent to:
curl --data-binary '{"jsonrpc":"1.0","id":"fn","method":"listtransactions","params":["*",50,0,true]}' \
-H 'content-type: text/plain;' http://USER:PASS@yournode.onion:8332/
There’s no Electrum server, no indexer and no company API in between. Anything you can do with bitcoin-cli is possible in principle, and the dashboard lets you tap any tile to see the raw RPC response.
Reaching it from anywhere: Tor
FN-Server embeds Tor and automatically creates v3 onion services for your node’s RPC port. Fully Noded embeds Tor too, so the connection runs end to end inside the Tor network:
- No port forwarding and no dynamic DNS: it works behind any router or NAT.
- Your phone’s IP is never revealed to your node’s network, and your node’s IP is never revealed to your phone’s network.
- Traffic is encrypted by Tor. You can add Tor v3 client authentication so that only your device can even reach the onion service.
On the same LAN you can connect directly to localhost or a local IP instead, optionally pinning your node’s SSL certificate.
Credentials: rpcauth, not plaintext
When you add a node manually, Fully Noded generates a random password and gives you an rpcauth= line for bitcoin.conf. That line contains only a salted hash of the password, so your node’s config file never stores the password itself. Quick Connect packs the same details into a btcrpc://user:pass@host.onion:port URI shown as a QR code, which is why that QR must be kept private.
FN-Server keeps its own RPC credentials encrypted on disk using a key held in your Mac’s Keychain, and only uses them locally.
Keys stay with you
Your node holds watch-only wallets built from output descriptors, so it can track balances and build transactions but can’t spend. Private keys live in Fully Noded’s Signers: BIP39 seeds are double-encrypted on your device. Fully Noded asks the node to create an unsigned PSBT, signs it locally (no internet needed for signing), and sends the signed transaction back to your node to broadcast. Because everything is descriptor-based, multisig, miniscript, Taproot and hardware-wallet setups all work the same way.
What FN-Server does on your Mac

- Verified installs: downloads Bitcoin Core from bitcoincore.org, checks SHA256 sums and offers one-click GPG verification of the release signatures.
- Sensible defaults: binaries live in
~/.fullynoded, and Bitcoin’s data directory stays where it always is, so FN-Server works alongside an existing node. - Join Market: installs from the official repo, creates a dedicated wallet in Core and configures
jmwalletdso FN-JoinMarket can coinjoin through your node. - Multiple networks: run mainnet, testnet, signet and regtest side by side.
- Low profile: it checks service heartbeats while the window is open. When you close it, it drops to a minimal menu bar app that does nothing until you click.
Why it matters
- Privacy: no third party learns your addresses, balances or IP.
- Sovereignty: your node enforces the rules you choose to run.
- Censorship resistance: there’s no server that can be shut down, pressured or told to drop you.
Everything is open source, so don’t trust, verify: Fully Noded · FN-Server. Ready to set it up? Start here.
