Guides

Signing Messages with Ledger Nano S / Nano X using Ledger Live, Electrum & MEW

Message signing – Do you know that other than signing a transaction the private keys can also be used to sign a message. Jump to the tutorial.

You can sign a message with your Bitcoin public address using your private keys. It is called Bitcoin signature. Similarly you can sign a message with your Ethereum address and Litecoin address. Not just that but basically you can sign any message with any of your cryptocurrency address using your private keys. So what is the purpose of digital signatures and why sign a message?

Sign message use cases

You can sign various messages using your private key for different purposes. Some common applications where message signing feature is being used are: To claim forked coins, airdrops, to show credit worthiness, to prove ownership of funds for audit purposes, collateral and there are several other applications.

For example let’s say there is an airdrop event going on and to claim that you are asked to sign a message. Whether you are claiming an airdrop or forked coins you’ll be asked to sign a given message with your Bitcoin address. This is to prove the ownership of the address. You might think why not just share the public address. Since Bitcoin, Ethereum and most blockchains are public anybody can say that they are the owner of the address.

One way to prove that you actually own the Bitcoin address is by signing a message using your private keys. By signing a message you are proving that you control the specific Bitcoin address and the funds associated with it. Once signed you can share the signature and the signed message publicly. The third party will then verify the signature and ensure the ownership of private keys of your Bitcoin address.

Message signing is one of the most important feature and most wallet has the option to sign / verify signatures.

We once explained how to sign a message using your Bitcoin address. But that only covers core and electrum wallet. Here we’ll show you how to do it with your Ledger wallet.

The following tutorial will explain how to sign a message with your Bitcoin, Ethereum address from your Ledger Nano S and Nano X wallet.

Signing messages using Ledger Nano

First of all to use your hardware wallet, that is whether you wish to sign a transaction or sign a message you need a software wallet to manage the device.

Ledger Live is the official wallet app for the Ledger device. It is the most popular interface application that enables users of Ledger Nano S and Nano X to manager their hardware wallet.

But the thing is currently Ledger Live only has some basic functionalities like send / receive coins. You can only sign transaction and there is no option anywhere on the interface to sign or verify a message. So how do you sign message using Ledger Live?

Message signing with Ledger Live

Previously users of Ledger hardware wallet were using old Bitcoin desktop software and chrome apps to manage their device. It had the feature to sign verify messages. But the old wallet software and chrome apps has been deactivated and is now replaced by Ledger Live.

Sign / Verify message is the most requested feature by Ledger users. But as we said this feature is not available on Ledger Live currently. Its been several years and still the developers haven’t implemented the message signing feature to the Ledger live app.

Hope they implement message signing not just for Bitcoin address but for all supported coins from one place.

Once it gets supported in the future we’ll update this article.

How to sign a message with Ledger wallet? – Nano S / Nano X

For now Ledger users have to rely on third party apps to sign a message. But wait! Is it secure? Yes, it is. You are not actually importing / exporting private key to other wallet. Also you are not sending funds from your ledger to other wallet. Instead you are just going to connect your hardware device to a software wallet that has the option to sign / verify massages.

There are several third party wallets with message signing feature and that has the option to connect with Ledger Nano S / Nano X. You can use electrum for Bitcoin. Similarly for Bitcoin cash you can use Electron cash. For Litecoin you can use the Litecoin electrum wallet. To sign your Ethereum address you can use MEW (My Ether Wallet).

Here now lets see how to securely sign messages using your Ledger Nano device? This tutorial will cover signing a message with both Bitcoin as well as Ethereum address. For this we’ll be using Electrum Bitcoin and MEW (MyEtherWallet).

Getting things ready

Before getting into the guide we are assuming that you have your ledger device setup and ready with all the necessary apps.

For Bitcoin you’ll need the Bitcoin (BTC) app and for Ethereum you’ll need the Ethereum (ETH) app installed on your device. This can be only installed from your Ledger Live.

Download Ledger Live: https://www.ledger.com/ledger-live. Now before you install the software and use it make sure you verify ledger live. Once the installation is complete connect your ledger device and unlock PIN. Then go to manager and install both Bitcoin and Ethereum app to your device.

ledger live wallet app

Once you have the apps installed you can close your Ledger Live.

Now download and install electrum wallet. Beware of fake electrum wallets and phishing sites. Make sure you always download electrum from the official site: https://electrum.org/#download.

Here is how to verify electrum signatures. Also if you have electrum installed already then here is a guide to safely update your electrum wallet.

You can either use the portable or installer version and the installation is pretty simple. Once you have your electrum ready open the wallet. You’ll see installation wizard if it is your first time.

ledger electrum run

Signing a message on ledger using electrum

First you need to setup and connect your Ledger device to electrum.

1. Connect your ledger device to your computer. Once connected unlock PIN and open the Bitcoin app on the device. Once you see application is ready message proceed to step 2.

2. On electrum name your wallet and choose standard wallet.

electrum ledger standard wallet

3. On the next screen you’ll see keystore option. Choose “use a hardware device” and click next. Electrum will now scan for your device.

electrum keystore selection

If you have trouble connecting your ledger device to electrum then follow this tutorial: https://coinguides.org/ledger-nano-not-detected-electrum-fix/

4. Choose your device and on the next screen you’ll be asked to choose the scrypt type and derivation path. Its nothing but the address formats.

electrum derivation path

See: https://en.bitcoin.it/wiki/Invoice_address

Currently Bitcoin has three different address formats in use. Legacy address starts with 1, p2sh-segwit starts with 3 and native SegWit address type starts with bc1. For example if you have funds in your address that starts with 3 then choose p2sh-segwit and click next. If you want to use all the three address formats you need to setup three separate wallet for each address type.

5. You can then set wallet file encryption which is completely optional and is up to you.

That’s it! Your ledger device is now connected to electrum. Go to address tab and you’ll see the list of all your Bitcoin addresses.

Note: If you wallet is passphrase protected then access the passphrase protected account before you connect your device to electrum. Then follow the steps below for signing an address.

Signing Message: Electrum – Ledger (Bitcoin)

1. Right click and copy the address that you wish to sign.

sign verify message ledger

2. Go to Tools >> open sign / verify message.

3. Paste the copied address in the address field.

ledger signing message btc

4. Next enter the message that you want to sign. There are no limitations. You can enter any message you want.

5. Once the message is clear click sign on electrum. You’ll see the ledger signing message status.

6. Now on your ledger device you’ll see sign message text. Navigate and confirm the message hash shown on the device to the one shown on the electrum wallet.

message hash ledger

7. Once it is correct use the navigate button again and confirm sign message.

signing message confirm

That’s it! Electrum wallet will now show the signature. Click verify signature to ensure if it is a valid signature. Once the signature is verified you can share the details.

bitcoin signature ledger

You need to share the signature, address as well as the message to prove that you control the particular Bitcoin address. This is how you sign a BTC address on your ledger wallet.

Now lets see how to sign a Ethereum address with ledger? For signing Ethereum address we’ll be using My Ether Wallet.

Signing a message using MyEtherWallet

1. Unlock your ledger device and open the Ethereum app.

2. Once the Ethereum application is ready >> go to https://www.myetherwallet.com/access-my-wallet and choose hardware.

mew ledger access

3. Next choose Ledger >> click continue. Then choose the app you opened in Ledger and click next.

choose ledger app mew

4. On MEW you’ll now see the list of Ethereum addresses along with the balance it holds.

eth signing address ledger

5. Choose the address you wish to sign, agree to terms and click Access My Wallet. It will take you to the wallet interface.

Signing Message: MEW – Ledger (Ethereum)

1. On MEW interface on the left side menu you’ll find Message option. Drop down and choose sign message.

ethereum signature

2. Next enter the custom message you want to sign and click sign.

3. Now on your ledger device navigate, verify message hash and confirm sign message.

4. MEW will show the confirmation screen where it will display the signing address, message and the message in HEX. Click confirm signing.

sign message ethereum

5. You’ll get another popup screen which will provide you the signed message similar to this.

{
"address": "0x1e85ed1aa5bb0177c11a6a2245a496441ec1b797",
"msg": "Ethereum Signature - CoinGuides.org",
"sig": "0xbb439085f074b7f526f0d278884ec82ef022c1f28d7be216a8d1e4dbc23b4f59713d50164c35f1eff92346dab8a0f7772346c2d994dd72a78695ef96fc29d97701",
"version": "3",
"signer": "ledger"
}

verify signed message

Copy that and use the verify message menu to verify the message. Once the signature and the message is verified you can share the signed message.

That’s it! This is how you sign a ETH address on your ledger wallet. The procedure applies to both Ledger Nano S as well as Nano X.

Show More

coinguides

We are crypto enthusiasts and our main intention with Coin Guides is to educate people about Cryptocurrency and Blockchain technology. We regularly publish content about Bitcoin, Ethereum, Altcoins, wallet guides, mining tutorials and trading tips.

Related Articles

Leave a Reply

Your email address will not be published.

Back to top button