Setting Up a THORChain Multisig
To instantiate, store and deploy contracts on Rujira, teams need to setup a multisig on THORChain. There are currently three ways to setup a multisig on THORChain:
DAODAO
Keplr Multisig
Thornode Multisig Key
1. DAODAO
The preferred option to setup a multisig is using daodao.zone because it let's teams not just sign off on transactions, but contains a whole library of actions that satisfy all the needs a decentralised team will ever need:

You can create a DAO on DAODAO using this link: https://daodao.zone/dao/create?chain=thorchain-1
2. Keplr Multisig
THORChain is available on Keplr Wallet and hence Keplr Multisig, allowing teams to create simple multisigs to sign off on THORChain transactions:

You can create a Keplr Multisig using this link: https://multisig.keplr.app/account/register/create
Consider using only individual Keplr wallets that are connected to Ledger hardware wallet to add an extra level of security to the Keplr Multisig.
3. Thornode Multisig Key
This guide walks you through the complete process of creating and using a multisig wallet on THORChain, including the installation of thornode, setting up the multisig key, generating and signing transactions, and finally broadcasting them.
This guide has been prepared with love by the AutoRujira team ❤️
Special Instructions for macOS Users
If you're on macOS, you may encounter issues with default versions of tools like awk, sed, and find, which are not GNU-compliant. To fix this:
Install the GNU versions of the required utilities using Homebrew:
Add the GNU versions to your
PATH. Add the following lines to your shell config (~/.zshrcor~/.bash_profile):
Then run:
Update Go to the required version (at least Go 1.23.4):
Verify with:
Once all is set up, you're good to go with make install.
Prerequisites
Each member of the multisig must:
Have access to a local terminal.
Install
thornode.Share their public key with the group.
Be able to sign and submit transactions individually.
Step 1: Install thornode
thornodeInstall the Thorchain CLI binary on your machine:
This installs the
thornodebinary in your$GOPATH/bin. Make sure it's in your system path.
Step 2: Generate and Share Public Keys
Each participant should create a new key (if they don't already have one):
Then export your public key:
Share this public key with all other members.
To import a public key shared by another participant, use:
Once you have everyone's pubkeys imported, you can create the multisig key.
Step 3: Create the Multisig Key
Each participant must locally create the multisig key with the same set of public keys and threshold:
Example:
⚠️ This must be done identically by all participants.
Step 4: Generate the Transaction (Only Once)
One participant prepares a transaction to send 1 RUNE and exports it to JSON (leave some RUNE for paying the fee):
This transaction file is then shared with all multisig participants.
Step 5: Each Participant Signs the Transaction
Each participant signs the transaction using their own key and the multisig key:
Everyone sends their sig-<your-name>.json file to the coordinator.
Step 6: Combine Signatures and Broadcast
One person aggregates the signatures and broadcasts the final signed transaction:
Final Step: Test It
Once the multisig address is finalized and funded, you can test the setup by executing a multisig transaction that sends 1 RUNE to a known address as shown above.
Summary
Every member installs
thornode, generates their key, and shares the pubkey.All members must create the same multisig locally.
One person creates the transaction; everyone signs.
The final signed transaction is broadcast by one member.
The process ensures security and collective review before execution.
Last updated