"What happens if Casa disappears?" A Sovereign Recovery Overview

"Sovereign Recovery" is what we call the ability to create a transaction outside of Casa App using open-source, third-party tools. 

We don't plan on going anywhere, but in the event that Casa disappears, or Casa App should unexpectedly become unresponsive, you can still recover your funds even without the app.

The video tutorial below walks through how to do this step by step. If you prefer written instructions, we also have that below. 

Finding your Public Keys

In Sovereign Recovery, you should operate on the assumption that the Casa Recovery Key is unavailable, meaning you have 2-of-3 signing keys left. To complete a transaction, you need all 3 of your public keys, but only 2 private keys.

To sign, you will need both of your hardware wallets. If you have a Mobile Key, you'll need to export the seed phrase from the App.

To find your public keys - You can pull your hardware wallet public keys directly from the devices themselves when you connect them to Electrum (see full instructions below). Know that all your public keys can also be accessed directly from Casa App. To access them, just tap the key icon from your Basic Multisig screen, then tap View Public Keys. We also provide the Casa Recovery Key Public Key in our Sovereign Recovery email, for added redundancy.

Don’t forget to copy the derivation paths - When you view the public key for a specific account on a device, the current derivation path will be displayed beneath it. Derivation paths change every time you add a new device to Casa App; it’s important that you use the current path, otherwise the wrong addresses will be generated by your recovery wallet software.

IMPORTANT - Your public keys are secured locally on your iOS or Android phone. Meaning they can be accessed even if Casa’s infrastructure is unavailable, and even if your device does not have an active Internet connection. To ensure you’re able to log into your Casa App to access your public keys even if you’re offline, just be sure the “Clear Cache on Logout” option is DISABLED on your Settings tab.

Recovering funds without using Casa software or servers

Install Electrum

(Additional instructions for Linux users ONLY):

Install the appropriate libraries for your hardware wallets via the CLI:

  • sudo apt-get install libusb-1.0-0-dev libudev-dev
  • sudo pip3 install btchip-python
  • sudo pip3 install trezor
  • sudo pip3 install ckcc-protocol

Set hardware wallet udev rules

After setting the udev rules for the first time, reboot your computer.)

Set up your 2-of-3 multisig keyset

  • Run Electrum. For testnet, run “Electrum --testnet”
  • Create a new wallet and give it a name
  • Choose “multi-signature wallet”
  • Select “From 3 cosigners”
  • Select “Require 2 signatures”
  • Click next

For cosigner 1 of 3:

  • Choose “hardware wallet”
  • Plug in hardware device 1 if it isn’t already
  • Click next
  • Select your hardware device and click next.
  • Select "p2sh-segwit multisig"
  • The derivation path should change to something like m/48'/0'/0'/1' - replace it with the derivation path from your recovery data, which will look something like: m/49/0/0
  • Click next, then next again on the master public key screen

For cosigner 2 of 3

  • Choose “hardware wallet”
  • Plug in hardware device 2 if it isn’t already
  • Click next
  • Select your hardware device and click next
  • Select "p2sh-segwit multisig"
  • The derivation path should change to something like m/48'/0'/0'/1' - replace it with the derivation path from your recovery data, which will look something like: m/49/0/0
  • Click next, then next again on the master public key screen

For cosigner 3 of 3

  • Choose “Enter cosigner key” and click next
  • Paste the “Casa Recovery Public Key” for the appropriate account from your recovery data
  • Click next

On the password screen, leave both fields blank and click next

Electrum will now initialize your wallet and display all the transactions that have been received and sent by it. If your transactions don’t show up after a minute or so, something went wrong during the process and Electrum derived the wrong set of addresses.

To send your assets to a new wallet, click on the “send” tab and fill in the “pay to” field with an address owned by your new wallet. Click the “max” button to sweep all of the value out of the wallet, and slide the “fee” bar to an appropriate fee depending upon your urgency. If your wallet contains many UTXOs (over 100) then you may encounter issues trying to spend them all in one transaction; instead try sending smaller amounts in multiple transactions.

Once you click “send,” you will be prompted to confirm the amount and destination address on each hardware device.

Upon completing the second signature, the “broadcast” button will no longer be greyed out. Click “broadcast” and then copy the transaction id into a block explorer to check that the transaction has propagated across the network.

NOTE: Electrum can be finicky with hardware signing device support, especially on Linux. In order to prevent errors, ensure that you only have ONE Electrum instance running and plug both of your hardware devices in simultaneously rather than plugging and unplugging the devices as you sign.

Articles in this section

Was this article helpful?
1 out of 1 found this helpful
Share