Run a Hashi Node
These pages are for Sui validators joining the Hashi committee. They cover prerequisites, configuration, genesis, ongoing operations, and governance.
Hashi is a Sui-native asset orchestration protocol that secures and manages native BTC for use on Sui through threshold cryptography. Committee members run the hashi service alongside their Sui validator to participate in MPC threshold Schnorr signing for Bitcoin custody. The committee collectively manages a Bitcoin master key, and no single validator ever holds the full key. The work your node performs is the deposit and withdrawal flows, plus reconfiguration at every epoch boundary.
The pages cover both Hashi deployments, Testnet and Mainnet. The Networks table gives each network's status and parameters. Network-specific examples come in Mainnet and Testnet tabs: pick your network in any one of them and the rest of the section follows. Everywhere else, use the column for your target network.
Joining the committee
Onboarding takes 6 steps. The pages in this section cover the detail, the defaults, and the failure modes:
- Provision the two external dependencies: a Bitcoin archival node (
txindex,blockfilterindex,peerblockfilters) and a Sui fullnode serving the gRPC v2 API. On Mainnet, run the Sui fullnode yourself; running the Bitcoin node yourself is strongly encouraged. For a Mainnet Bitcoin node, provision 2TB of SSD storage. See External service dependencies, Sui RPC, and Bitcoin node. - Generate keys: a dedicated TLS key, a fresh operator key funded with at least 2 SUI, and an OpenPGP backup key. See TLS key (dedicated), Operator key (day-to-day signing), and Backup key (OpenPGP).
- Write the validator config: use your target network's column in Networks. See Validator config.
- Register your validator: run
hashi register --serialize-unsigned-transactionand sign the result offline with your Sui validator account key. See Registration must be signed by the account key and Step 2: register your validator. - Start the node: run
hashi serverand keep it online, including across epoch boundaries. See Step 3: start the server and Epoch Changes. - Monitor the node: watch the key metrics and push them to the Mysten collection endpoint. See Monitoring and Alerts.
These details trip up most operators:
- Your Sui validator account key must sign the initial registration. The operator key cannot. See Registration must be signed by the account key.
- Hashi defaults
bitcoin-rpcto port8332, the Mainnet port. On Testnet (Bitcoin Signet) you must set38332explicitly. See Bitcoin node. - A self-hosted Sui fullnode needs
rpc.enable-indexing: truein its own config, which is off by default. See Sui RPC. - Fund the operator address with at least 2 SUI. With exactly 1 SUI, the node's gas bootstrap fails with
InsufficientCoinBalanceand retries every 10 minutes until you add SUI. See Operator key (day-to-day signing).
Common questions
These answers summarize details from the pages in this section.
Does the Hashi node connect to your Sui validator?
The node's Sui connection is to a Sui fullnode (Sui RPC), not to your validator, and the Hashi node should run on a separate host from your Sui validator (Resources). The link to your validator is onchain: validator-address in the validator config is your Sui validator address, and your validator account key signs the initial registration (Registration must be signed by the account key).
Which validators can run a Hashi node?
Only active Sui validators. Onchain registration asserts that the sender is in the Sui active validator set, so the registration must come from your Sui validator account key (Registration must be signed by the account key, Registration and offline signing). Committee explains why the committee is not exactly the set of Sui validators.
Do you need to generate a backup key?
Yes. The backup key is required: backup-pgp-cert and backup-dir are both required in the validator config. Generate an OpenPGP key on a YubiKey or locally with sq or gpg, and give the node only the public certificate. See Backup key (OpenPGP) and Hashi Node Backups.
How much storage does the Bitcoin node need on Mainnet?
Provision 2TB of SSD storage for a self-hosted archival Mainnet Bitcoin node with txindex and blockfilterindex; see the Mainnet tab of Bitcoin node. This is separate from the Hashi process itself, which needs 10GB of persistent storage (Resources).
What does a Mainnet node depend on?
A Mainnet node depends on:
- A self-hosted Sui fullnode serving the gRPC v2 API with
rpc.enable-indexing: true - An archival Bitcoin Core v29 or newer node reachable over both JSON-RPC and P2P (self-hosting is strongly encouraged)
- A dedicated TLS key
- An operator key funded with at least 2 SUI
- An OpenPGP backup key
See External service dependencies, Sui RPC, Bitcoin node, and Keys and Security.
Pages in this section
📄️ Prerequisites
Hardware sizing, the Bitcoin and Sui dependencies, and how to build the Hashi binary before you run a Hashi node.
📄️ Keys and Security
The keys a Hashi node uses, which ones you generate, why the validator account key must sign registration, and how to delegate to and revoke an operator key.
📄️ Configuration
The Hashi validator config and CLI config templates for Mainnet and Testnet, the environment variables that override them, and the network ports and TLS the node uses.
📄️ Genesis and Joining the Committee
The Hashi genesis procedure from package publication through registration, launch, and DKG, and how a validator joins the committee after launch.
📄️ Governance Participation
How Hashi committee members create, vote on, and execute governance proposals, the proposal types and thresholds, and the configurable protocol parameters.
📄️ Monitoring and Alerts
The Hashi node Prometheus endpoint, the required metrics push to Mysten, the key metrics to watch, and suggested alerts.
📄️ Epoch Changes
What happens to a Hashi node at each Sui epoch change, what operators must do, and how to recover a stuck reconfiguration.
📄️ Backup and Restore
What a Hashi node backup contains, how the node writes one every epoch, and how to restore a node from a backup after machine or disk loss.
📄️ Hashi Node Backups
How node operators encrypt and restore essential node data with armored PGP backups, including YubiKey restore paths.
📄️ Troubleshooting
Symptoms, causes, and fixes for Hashi node startup failures, CLI configuration errors, registration and offline signing problems, and Bitcoin light client issues.