Set up the LEDGER device and install the Concordium Governance LEDGER App#
Warning
The steps here are only for members of the governance committee. If you are not a member of the governance committee, see Install the Concordium LEDGER app using LEDGER Live for instructions on how to install.
See also
To read about the latest changes, see the changelog.
To be able to sign and send transactions using the Desktop Wallet, you need a LEDGER hardware wallet, and you need to install the Concordium LEDGER Application on the LEDGER device. You can use Windows, macOS or Ubuntu to install the app.
Note
Only Ledger Nano S/S+ is currently supported.
Prerequisites#
LEDGER hardware wallet
Warning
During the process described in this guide, you’ll generate private keys on the LEDGER device, and you’ll receive a 24-word recovery phrase. This is the only backup of your private keys. Make sure that you store it securely.
Set up the LEDGER device#
The LEDGER device will generate the unique 24-word recovery phrase that is used to derive your private keys.
Download and install Ledger Live. For information on how to do this, see Ledger’s documentation. You’ll only need Ledger Live when you set up the LEDGER device and update the firmware.
Open Ledger Live, select Get started, and then select Ledger device.
Follow the on-screen setup instructions to set up your PIN code on the LEDGER device.
Follow the on-screen instructions to get your 24-word recovery phrase.
Warning
Make sure that you write down the recovery phrase precisely as displayed and in the correct order. The recovery phrase is the only backup of your private keys.
Once you’ve set up the LEDGER device, you must check that it’s running the proper firmware version for your device. The Concordium LEDGER App currently supports LEDGER firmware version 2.1.0 for LEDGER NANO S.
Once you’ve set up the LEDGER device, you must check that it’s running the proper firmware version for your device. The Concordium LEDGER App currently supports LEDGER firmware version 1.4.0 for LEDGER NANO S+.
Update the LEDGER device firmware#
To update the LEDGER device firmware, do the following:
On the LEDGER device press both buttons for a little while until the Settings icon appears. Press both buttons to enter the Settings menu.
Press both buttons on the General menu item.
Press the right button to navigate to Firmware version.
Press both buttons to view the Secure Element version.
If it says 2.1.0, you don’t have to update the firmware. If there’s a lower version number, you’ll have to update the firmware.
On the LEDGER device press both buttons for a little while until the Settings icon appears. Press both buttons to enter the Settings menu.
Press both buttons on the General menu item.
Press the right button to navigate to Firmware version.
Press both buttons to view the Secure Element version.
If it says 1.4.0, you don’t have to update the firmware. If there’s a lower version number, you’ll have to update the firmware.
Note
For details on how to update the LEDGER firmware, see LEDGER NANO S PLUS guide.
Install Python and pip#
You need to install Python and pip to proceed with installing the Concordium LEDGER app. The installation steps depend on your operating system.
In the Start menu, type store to open the Microsoft store.
In Search, in the upper right corner, enter python.
Select Python 3, and then select Install.
Python is downloaded and installed automatically. Depending on the setup of your computer, you might see a message saying Python 3 just got installed.
Restart your computer, and then confirm that Python and Pip were installed.
In the Start menu, type PowerShell and select Windows PowerShell. The command-line window opens.
To confirm that Python3 was installed, enter
$python3 --version
To confirm that the package manager named pip is installed, enter
$pip --version
To install ledgerblue, copy the following into the Terminal and press Enter:
$pip install ledgerblue
Open the Terminal application.
Install the package manager Homebrew (if not already available on your mac); you will need the Homebrew tool to install the remaining dependencies. Copy the following line into the Terminal and press enter.
$/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
To install Python3, Pip3, libusb, and libjpeg, copy the following into the Terminal and press Enter:
$brew install python@3 libusb libjpeg
You can use pyenv if you need multiple python versions. Installing libjpeg is only necessary if you have a Mac with an M1 or similar Apple Silicon CPU.
To install ledgerblue, copy the following into the Terminal and press Enter:
$pip3 install ledgerblue
Add udev rules. For more information, see the Linux section in LEDGER ‘s guide Fix connection history.
$wget -q -O - https://raw.githubusercontent.com/LedgerHQ/udev-rules/master/add_udev_rules.sh | sudo bash
Install python3:
$sudo apt-get install python3
Install pip:
$sudo apt-get install python3-pip
Install
$sudo apt-get install libudev-dev libusb-1.0-0-dev python-dev
Install ledgerblue:
$sudo pip3 install ledgerblue
Download Concordium Governance LEDGER app#
Once you have updated the firmware version, you can download the LEDGER app:
Download the Concordium Governance LEDGER App for LEDGER Nano S
Extract the files from the
.zip
folder to a folder on your computer.
Download the Concordium Governance LEDGER App for LEDGER Nano S+
Extract the files from the
.zip
folder to a folder on your computer.
Install the custom certificate (Nano S only)#
Note
If the certificate is already installed on the device, it should not be necessary to update this. If you’re a LEDGER Nano S+ user, you can also skip this section.
You need to install a custom certificate to ensure that the LEDGER device trusts applications signed by Concordium’s private key.
Close all applications that might be connected to the LEDGER device such as LEDGER LIVE and Concordium Desktop Wallet and keep them closed until you’ve completed the steps in this guide.
Disconnect the LEDGER device from your computer.
Now you need to start recovery mode on the LEDGER device.
On the LEDGER device, press the left button and hold it down while you reconnect the LEDGER device to the computer. Navigate to Recovery mode and press both buttons to enter recovery mode.
Enter your PIN code.
Open the folder you extracted the files to and double-click the
loadcertificate.bat
file. If there’s a message saying Windows protected your PC, select More info, and then select Run anyway. A command-line window opens.The LEDGER device says Deny unsafe manager. Press the right button to navigate through the public key until the LEDGER device says Allow unsafe manager. Press both buttons. You can safely ignore the message in the command-line window saying Broken certificate chain - loading from user key. This is expected behavior.
The LEDGER device says Certificate concordium. Press the right button to navigate through the key, while confirming that it is the following:
04af7e6a68fa79b3f7a035a5cd75f916ee67c4a71fc990fe9ba2b2e1fb54dd7cdc950a73b5a4adf52ea95df16f5c17602090f639f0d35a760e34afae7cbd60792b
Press both buttons when the LEDGER device says Trust certificate.
Enter your PIN. The certificate has now been installed on the LEDGER device.
Close all applications that might be connected to the LEDGER device such as LEDGER LIVE and Concordium Desktop Wallet and keep them closed until you’ve completed the steps in this guide.
Disconnect the LEDGER device from your computer.
Now you need to start recovery mode on the LEDGER device.
On the LEDGER device, press the left button and hold it down while you reconnect the LEDGER device to the computer. Navigate to Recovery mode and press both buttons to enter recovery mode.
Enter your PIN code.
Open the Terminal application.
Navigate to where you have downloaded and extracted the LEDGER install package. For example to navigate to the default download directory in a Terminal, enter
$cd ~/Downloads/concordium-governance-ledger-app-1.3.0-nanos-2.1.0
Load the certificate onto the LEDGER device by running the following script from the extracted folder:
$./loadcertificate.sh
The LEDGER device says Deny unsafe manager. Press the right button to navigate through the public key until the LEDGER device says Allow unsafe manager. Press both buttons. You can safely ignore the message in the command-line window saying Broken certificate chain - loading from user key. This is expected behavior.
The LEDGER device says Certificate concordium. Press the right button to navigate through the key, while confirming that it is the following:
04af7e6a68fa79b3f7a035a5cd75f916ee67c4a71fc990fe9ba2b2e1fb54dd7cdc950a73b5a4adf52ea95df16f5c17602090f639f0d35a760e34afae7cbd60792b
Press both buttons when the LEDGER device says Trust certificate.
Enter your PIN. The certificate has now been installed on the LEDGER device.
Close all applications that might be connected to the LEDGER device such as LEDGER LIVE and Concordium Desktop Wallet and keep them closed until you’ve completed the steps in this guide.
Disconnect the LEDGER device from your computer.
Now you need to start recovery mode on the LEDGER device.
On the LEDGER device, press the left button and hold it down while you reconnect the LEDGER device to the computer. Navigate to Recovery mode and press both buttons to enter recovery mode.
Enter your PIN code.
Run the following script from the folder you extracted the files to:
$./loadcertificate.sh
The LEDGER device says Deny unsafe manager. Press the right button to navigate through the public key until the LEDGER device says Allow unsafe manager. Press both buttons. You can safely ignore the message in the command-line window saying Broken certificate chain - loading from user key. This is expected behavior.
The LEDGER device says Certificate concordium. Press the right button to navigate through the key, while confirming that it is the following:
04af7e6a68fa79b3f7a035a5cd75f916ee67c4a71fc990fe9ba2b2e1fb54dd7cdc950a73b5a4adf52ea95df16f5c17602090f639f0d35a760e34afae7cbd60792b
Press both buttons when the LEDGER device says Trust certificate.
Enter your PIN. The certificate has now been installed on the LEDGER device.
Install the Concordium Governance LEDGER app#
After installing the certificate, you can proceed to install the Concordium LEDGER app.
In the folder that you extracted the files to, double-click the
install.bat
file. If there’s a message saying Windows protected your PC, select More info, and then select Run anyway.The LEDGER device says Deny unsafe manager. Press the right button to navigate through the public key until the LEDGER device says Allow unsafe manager. Press both buttons. The LEDGER device says Loading, please wait while it installs the app.
The LEDGER device says Concordium. Press both buttons. The LEDGER device says Concordium is ready. You can now use the LEDGER device with the Desktop Wallet.
Open the Terminal application.
Navigate to where you have downloaded and extracted the LEDGER install package. For example to navigate to the default download directory in a Terminal, enter
$cd ~/Downloads/concordium-governance-ledger-app-1.3.0-nanos-2.1.0
$cd ~/Downloads/concordium-governance-ledger-app-1.3.0-nanosplus
Install the Concordium application on the LEDGER device by running the following script from the folder you extracted the files to:
$./install.sh
The LEDGER device says Deny unsafe manager. Press the right button to navigate through the public key until the LEDGER device says Allow unsafe manager. Press both buttons. The LEDGER device says Loading, please wait while it installs the app.
The LEDGER device says Concordium. Press both buttons. The LEDGER device says Concordium is ready. You can now use the LEDGER device with the Desktop Wallet.
Install the Concordium application on the LEDGER device by running the following script from the folder you extracted the files to:
$./install.sh
The LEDGER device says Deny unsafe manager. Press the right button to navigate through the public key until the LEDGER device says Allow unsafe manager. Press both buttons. The LEDGER device says Loading, please wait while it installs the app.
The LEDGER device says Concordium. Press both buttons. The LEDGER device says Concordium is ready. You can now use the LEDGER device with the Desktop Wallet.
Update the Concordium LEDGER app#
For the app to work properly with the current version of the Desktop Wallet, make sure that you update to the latest version of the app.
Note
Before updating, verify that you have installed Python3, pip, and the Python tools for LEDGER (ledgerblue) before updating the app.
Download the LEDGER app if you haven’t done so already.
In the folder that you extracted the files to, double-click the
install.bat
file. If there’s a message saying Windows protected your PC, select More info, and then select Run anyway.
Note
If you get the error loadApp.py: error: unrecognized arguments: --apiLevel 1
this means that you have an older version of the Python tools for LEDGER (ledgerblue). To update, run $pip3 install ledgerblue --upgrade
.
The LEDGER device says Deny unsafe manager. Press the right button to navigate through the public key until the LEDGER device says Allow unsafe manager. Press both buttons.
Before you can install the new version of the LEDGER app, you have to uninstall the old one. The LEDGER device says Uninstall Concordium. Press the right button to navigate through the identifier until the LEDGER device says Confirm action. Press both buttons to confirm. The LEDGER device says Loading, please wait while it installs the app.
The LEDGER device says Concordium. Press both buttons. The LEDGER device says Concordium is ready. Press the left button to verify that you’ve installed the latest version of the LEDGER app.
When you update your LEDGER device, it should not be necessary to update the certificate.
Note
If you’re using a different computer than the one you used when you installed the app, you must install Python3, pip, and the Python tools tools for LEDGER (ledgerblue) before updating the app.
Download the LEDGER app if you haven’t done so already.
Open the Terminal application.
Navigate to where you have downloaded the LEDGER install package. For example to navigate to the default download directory in a Terminal, enter
$cd ~/Downloads/concordium-governance-ledger-app-1.3.0-nanos-2.1.0
$cd ~/Downloads/concordium-governance-ledger-app-1.3.0-nanosplus
Install the Concordium application on the LEDGER device by running the following script from the folder you extracted the files to:
$./install.sh
Note
If you get the error
loadApp.py: error: unrecognized arguments: --apiLevel 1
this means that you have an older version of the Python tools for LEDGER (ledgerblue). To update, run$pip3 install ledgerblue --upgrade
.The LEDGER device says Deny unsafe manager. Press the right button to navigate through the public key until the LEDGER device says Allow unsafe manager.
Before you can install the new version of the LEDGER app, you have to uninstall the old one. The LEDGER device says Uninstall Concordium. Press the right button to navigate through the identifier until the LEDGER device says Confirm action. Press both buttons to confirm. The LEDGER device says Loading, please wait while it installs the app.
The LEDGER device says Concordium. Press both buttons. The LEDGER device says Concordium is ready. Press the left button to verify that you’ve installed the latest version of the LEDGER app.
Note
If you’re using a different computer than the one you used when you installed the app, you must install Python3, pip, and the Python tools for LEDGER (ledgerblue) before updating the app.
Download the latest version of the LEDGER app if you haven’t done so already.
Run the
install.sh
file from the folder that you extracted the files to.Note
If you get the error
loadApp.py: error: unrecognized arguments: --apiLevel 1
this means that you have an older version of the Python tools for LEDGER (ledgerblue). To update, run$sudo pip3 install ledgerblue --upgrade
.The LEDGER device says Deny unsafe manager. Press the right button to navigate through the public key until the LEDGER device says Allow unsafe manager.
Before you can install the new version of the LEDGER app, you have to uninstall the old one. The LEDGER device says Uninstall Concordium. Press the right button to navigate through the identifier until the LEDGER device says Confirm action. Press both buttons to confirm. The LEDGER device says Loading, please wait while it installs the app.
The LEDGER device says Concordium. Press both buttons. The LEDGER device says Concordium is ready. Press the left button to verify that you’ve installed the latest version of the LEDGER app.