Update Mithril Signer
In this example we will update from Mithril Signer version 0.2.243 to 0.2.249 - Updated: 6/16/2025
Please note this update didn't require any changes to the configuration files. Other updates may require changes to additional files.
📢 The Mithril team has created a one-line command to update your Mithril Signer. If you prefer that method see command and note below.
"You can easily update your Mithril signer with this one line command (it will be downloaded in the current directory, a custom folder can be specified with -p option):"
curl --proto '=https' --tlsv1.2 -sSf https://raw.githubusercontent.com/input-output-hk/mithril/refs/heads/main/mithril-install.sh | sh -s -- -c mithril-signer -d 2524.0 -p $(pwd)
If you prefer to compile on your own see steps below 👇.
Build on Your Own Method:
The following updates are done just on your Block Producer.
Step 1 - Update Rust
On Block Producer, run the following command to update Rust:
rustup update
Step 2 - Clone Mithril Git
Clone the Mithril git to your git folder. Run:
cd $HOME/git
git clone https://github.com/input-output-hk/mithril.git
Step 3 - Checkout Current Version
To find the current version go to https://github.com/input-output-hk/mithril/releases/latest and look for latest version. In this case the current version is Mithril v2524.0

Always make sure the version is compatible with Mainnet before updating


To checkout current version in this case Mithril v2524.0, first change to Mithril folder in git and then checkout version. Run:
cd $HOME/git/mithril
git checkout 2524.0
Step 4 - Change Directory
cd $HOME/git/mithril/mithril-signer
Step 5 - Run Tests (optional)
make test
Step 6 - Build the Executable
make build
Step 7 - Verify the Build Version
Stay in $HOME/git/mithril/mithril-signer
folder and then run:
./mithril-signer -V
Step 8 - Stop Mithril Signer Service
sudo systemctl stop mithril-signer
Step 9 - Move mithril Signer Executable
We keep our mithril signer in the following folder, please adjust to your path.
$NODE_HOME/mithril-signer
cd $HOME/git/mithril/mithril-signer
sudo mv -f mithril-signer $NODE_HOME/mithril-signer
Step 10 - Start Mithril Signer Service
sudo systemctl start mithril-signer
Step 11 - Verify Version and Status
Check version run:
We keep our mithril signer in the following folder, please adjust to your path.
$NODE_HOME/mithril-signer
cd $NODE_HOME/mithril-signer
./mithril-signer -V

Check status
systemctl status mithril-signer.service
Step 12 - Clean up
If you have the correct version and the status is good, go ahead and clean up files.
cd $HOME/git/
rm -rf mithril
Verify your signer is registered
Download the script into the mithril-signer directory
cd $NODE_HOME/mithril-signer
wget https://mithril.network/doc/scripts/verify_signer_registration.sh
Make the script executable:
cd $NODE_HOME/mithril-signer
chmod +x verify_signer_registration.sh
Run Script:
Replace "**POOL_ID**" with your pool ID, example below
cd $NODE_HOME/mithril-signer
PARTY_ID=**POOL_ID** AGGREGATOR_ENDPOINT=https://aggregator.release-mainnet.api.mithril.network/aggregator ./verify_signer_registration.sh
If your signer is registered, you should see this message:
>> Congrats, your signer node is registered!
If this is an error with registration you will see this message:
>> Oops, your signer node is not registered. Party ID not found among the signers registered at epoch XXX.
Verify your signer contributes with individual signatures
Download the script into the mithril-signer directory
cd $NODE_HOME/mithril-signer
wget https://mithril.network/doc/scripts/verify_signer_signature.sh
Make the script executable:
cd $NODE_HOME/mithril-signer
chmod +x verify_signer_signature.sh
Run Script:
Replace "**POOL_ID**" with your pool ID, example below
cd $NODE_HOME/mithril-signer
PARTY_ID=**POOL_ID** AGGREGATOR_ENDPOINT=https://aggregator.release-mainnet.api.mithril.network/aggregator ./verify_signer_signature.sh
If your signer is contributing, you should see this message:
>> Congrats, you have signed this certificate: ...
Otherwise, you should see this error message:
>> Oops, your party id was not found in the last 20 certificates. Please try again later.
Congratulations you did it!
Mithril Explorer: https://mithril.network/explorer/?aggregator=https%3A%2F%2Faggregator.release-mainnet.api.mithril.network%2Faggregator
Additional sources which helped create this guide: https://mithril.network/doc/manual/getting-started/run-signer-node/
Contributors
Thanks to the following pools for helping to put together these guides. Please consider delegating to their pools to support them. Are you a pool? Consider buying them a coffee
Last updated