Import BC Vault Wallet to Eternl (for Midnight Glacier Drop claim)

The BC Vault hardware wallet cannot do the message signing needed for claiming the Midnight Glacier Drop on its own (as far as I’m informed).

And it does not use seed phrases, but can only display a private key.

So, a couple of users asked if it is possible to import it into another wallet app. It is!

Attention: This totally spoils the security of a hardware wallet. Move funds to a newly created wallet! Since BC Vault can manage multiple wallets on the same device, you should be able to do that before even starting.

So, we have a test wallet. This is the private key displayed on the device:


It actually contains the 64 characters, 32 bytes E2936856D7CEE29969FDBAF41833949824D9ABD1D02EC7D5107E84C1D9270465 repeated twice.

The address for this test wallet is addr1qywzmhj4kkusnu52mdh705kqf402nn52hfkkztkeepq9swqu9h09tddep8eg4km0ulfvqn27488g4wndvyhdnjzqtquq8569mu

What you have to do is just create two text files (names can be freely chosen):
payment.skey:

{
    "type": "PaymentSigningKeyShelley_ed25519",
    "description": "BCVault Signing Key",
    "cborHex": "5820E2936856D7CEE29969FDBAF41833949824D9ABD1D02EC7D5107E84C1D9270465"
}

stake.skey:

{
    "type": "StakeSigningKeyShelley_ed25519",
    "description": "BCVault Signing Key",
    "cborHex": "5820E2936856D7CEE29969FDBAF41833949824D9ABD1D02EC7D5107E84C1D9270465"
}

The only thing that is different here for different wallets is that those same 32 bytes from above are put in "cborHex" after a header of 5820.

We can now import these two files into Eternl:

We already see that the address for this wallet is, in fact, the one of our test wallet from above. This looks good!

With that wallet selected in Eternl, we can go to the Midnight claim portal, select Cardano, select that we want to pair a browser wallet, select Eternl, and see that we are not eligible because it is a test wallet:


But also there we see the correct address.

If it were eligible, we would have to manually choose a different unused address as destination address. Use an unused address from another account – new or old. (Please use the “manual” option here, so that it keeps the connection to Eternl and offers you to just sign by clicking a button in the last step.)

This should be it.

3 Likes

Just tested this with my BC Vault wallet. Amazing work it worked like a charm. I’m so happy thank you so very much HeptaSean you ROCK!

1 Like

Wow, joined the forum just to say thank you.

Welcome!

Glad it helped.

If you find other BC Vault users with that situation, please share.
Seems to be easy enough and I don’t think there will be an easier method in time.

1 Like

For sure my buddies (3) also have the exact same wallet! They are all super happy you found a way to get this to work. Gonna be a busy weekend creating new wallets and extracting private keys but hey it works and that’s all thanks to you!