Previously I setup an Armory online/offline/cold/paper bitcoin storage system. Recently I decided to migrate my bitcoin from Armory wallet cold storage to the BIP39 and related standards. I hadn't switched on the offline PC in a long time, and neither had I updated the blockchain on the online PC. Thus, I started considering my recovery options should something have broken or gone missing. Below are some of the ways I found to recover and move bitcoin in such failure scenarios.
The single-sheet Armory paper backup directly displays the Root Key, e.g.:
Root Key:     nidh jtfj ejue whkj dngt dftt hsss idgh ssss
              wwad dojw aeja idfg went ukkk sajj uuwj kwjt
The Root Key is all you need to send bitcoin from that wallet without using Armory, see Armory Root Key -> Addresses and Private Keys
The only way I know about at present is to install and run Armory on an OFFLINE PC and use the Armory wallet recovery. See Offline PC setup below. I will update if I find another way.
Same as above.
[ OFFLINE PC ]
- In Armory select the wallet from list. Click Wallet Propertiesbutton.
- Click Backup This Walletlink. (ClickSee Other Backup Optionsbutton.)
- Choose Export Key Listsradio. ClickExport Key Listsbutton.
- Tick Include Paper Backup Root.
- You can also tick Adresses StringandPrivate Key (Plain Base58)to immediately get a list of the addresses that Armory knows that you have used, but it is possible to get them later without using Armory. Keep private keys secret, do not use on an online PC.
- 
The window at the bottom will show the Root Keyand other wallet attributes, e.g.:Created: 2017-Apr-14 07:24pm Wallet ID: 23gXywZJw Wallet Name: Demo -------------------------------------------------------------------------------- The following is the same information contained on your paper backup. All NON-imported addresses in your wallet are backed up by this data. Root Key: nidh jtfj ejue whkj dngt dftt hsss idgh ssss wwad dojw aeja idfg went ukkk sajj uuwj kwjt --------------------------------------------------------------------------------CAUTION: keep the root key secret and do not use on an online PC. 
- 
The Root Keyis all you need to access the bitcoin in all addresses of the wallet, except any imported addresses. Be sure that you have a paper copy of theRoot Key- KEEP IT SAFE!.
The Armory wallet Root Key is the one stored on your paper backup
[ OFFLINE PC ]
- 
Open the .htmlfile that you saved from from https://brainwalletx.github.io with a web browser. See Offline PC setup below.
- 
Select Chains. SelectGeneration MethodasArmory.
- 
Type or paste your Root Keyinto thePaper Backupfield. You should see the other fields update.
- 
Select Wallet FormatasCSV.
- 
Below in Chainyou will see the first 10 addresses and private keys for the wallet, e.g:| Address | Private Key 1, "19M4vKEB53xbLhrgbnR9kFaAHQQ2325Gzm", "5Jim41weU9weqrZZnbF5bvn1Xx585uK2biFN4eq8oMD6UkopVBi" 2, "1DkaYhLHygTt29vqxdhvdh9gifsqoENae2", "5Hu8rGTy3mW5JMSCL6QTA5KAW6kD5PsXUQYn3RkkdpTTCdsrhq8" 3, "1E1XbVwMcgdjuyDMQh1o98F9YgHy1hPYMU", "5JJCfCWzqc2gYDkKwYggc8m6NJWbo7MgXetKp1WMybpN3wnZ1Mv" 4, "1C2ZgrkSTguf2awWZRf3NvC4a46V7sckeZ", "5Kj6Wi22PEufWGuR9LZAK9MoUWZcrcFbavhGorsurg77eK5gBey" 5, "1JiNkgnkmrqAJ2YrrBa11KsBMEfjGNtpEG", "5JoFWoE4aTtaXW2d3XikevQaBruzWUs81SJga3wXoqHVqpTMTUs" 6, "1s7hP3RyE6MatNxxaj5xN7fMyrQeDqk2m", "5Jxm27EWCpa5JzDwXGscSJXiVSPFWLc7ibZcALwsmYsZSL78hWr" 7, "1KzQkypw24QNgFf9t3q4HZLZtioR4Uf9T7", "5KkCunRN6KLxM5Li8rYQmcBcJZQdCQjC7AevZbEDg6yPWuXSoPP" 8, "1CcpLdrsdfkD2gQcZyHJomT8vnwXjKDyoJ", "5J6omKWRChFCGYUyL3DYcEXc31mKipncDzgDRgTCUCsEzqwNKbD" 9, "1HNKftQEkSDMyYVYv48NbEiUZkd34prFut", "5KSuArCYhfnCijQ6X5uy7ms1K8Up1XXwcxQuiX229pmTeaDTYBF" 10, "18zdaDMQEP42ea6vN3ojQZafD4BSJQ2rGK", "5KipHvcSEwix3uZAw3Fm9roAwcJJ7uPR6MvNP8FnXtsHH1jEccy"CAUTION: keep the private keys secret and do not use on an online PC. 
- 
If you want to lookup the value an address copy it to your online PC and search for it on https://blockchain.info/. Do not expose your private keys to the online PC. 
- 
To see more addresses increase the value in Primary Addresses.
Unfortunately, if you previously used the wallet a lot and generated a large number of addresses then this method, although it will work, is going to be very time consuming. At present I'm not aware of an easy way to do this other than setting up a full Armory online/offline system.
In the unusual situation that you don't happen to have the address for a private key it is easy to derive it from the private key.
[ OFFLINE PC ]
- Open the .htmlfile that you saved from from https://brainwalletx.github.io with a web browser.See Offline PC setup below.
- Select Generator. SelectGet Address FromasPrivate Key.
- Paste the private key into Private Keytextbox. You may have to clickToggle Keyto make it visible.
- Now Addressshould show the wallet address.
[ online PC ]
- 
On an online PC open: https://brainwalletx.github.io in your browser. 
- 
Select Transactions. SelectBuild Transaction FromasPrivate Key.
- 
Paste the address into Source Address(e.g.:19M4vKEB53xbLhrgbnR9kFaAHQQ2325Gzm). Then clickOKon the popup asking to download the transaction history. TheBTCshould show the bitcoins currently in that address. If get a popup sayingNo free outputs to spend, there are no bitcoin in that address to send.
- 
Click Edit History. SelectUse History FromasBlockChain Info.
- 
If the address contains bitcoin, Transaction Historyshould show JSON, e.g.:{ "unspent_outputs": [ { "tx_hash": "684462171be1baf98c968458aa2ada2603fee1424ebd89487b058a3e5fa915e9", "tx_hash_big_endian": "e915a95f3e8a04bb4889bd4e42e1f313267a2aaa5894968cf9bae11b17624568", "tx_index": 237208244, "tx_output_n": 1, "script": "76a91441c46612a4c71b6c4463e7df1dc19175c9ab95f087ac", "value": 2173722, "value_hex": "212b1a", "confirmations": 51 } ] }
- 
Copy the Transaction Historyand the destination address to your offline PC.
[ OFFLINE PC ]
- Open the .htmlfile that you saved from from https://brainwalletx.github.io with a web browser, see Offline PC setup.
- Select Transactions. SelectBuild Transaction FromasPrivate Key.
- Click Edit History. SelectUse History FromasBlockChain Info.
- Paste the Transaction HistoryJSON into the textbox.
- Paste the Private Keyfor the address into the text box above (e.g.:5Jim41weU9weqrZZnbF5bvn1Xx585uK2biFN4eq8oMD6UkopVBi).
- The Source Addressshould show the address you used to lookup the transaction history, andBTCshould show the available balance.
- Paste the Destination Addressinto the text box, and enter the amount of bitcoin you wish to send inBTC.
- JSON Transactionand- RAW Transactionbelow should now be populated.
- Scroll down and enter the miner Fee.
- If it is too small, the miners may take a long time, or forever, before they process the transaction. Thus, you need to determine an appropriate fee for the transaction. The fees vary from time to time. There are some online services that can help you determine the correct fee, e.g.: https://bitcoinfees.21.co/. JSON Transactionshows the transaction"size": ???.
- Review and double check that everything is as it should be.
- Copy Raw Transactionto your online PC.
[ online PC ]
If you first want to verify that you have copied the transaction correctly:
- On an online PC open: https://blockchain.info/decode-tx in your browser.
- Paste the Raw Transactioninto the textbox and clickSubmit Transaction.
- Verify that the JSON output is the same as JSON Transactionon your OFFLINE PC.
Now, to send the transaction to the network:
- On an online PC open: https://blockchain.info/pushtx in your browser.
- Paste the Raw Transactioninto the textbox and clickSubmit Transaction.
- Then lookup the address on https://blockchain.info/ to watch the status of the transaction.
To ensure that no malicious software can steal the secret parts of your wallets and addresses it is important to perform some operations on a PC that does not have any connection to the outside world, and never will.
This includes moving any storage medium from an offline PC to an online PC. There could be some malicious software on your offline PC writing your private keys to the inserted removable media. Other techniques to copy data to and from your online PC can be used, including QR Codes. However, in this exercise I just used a USB stick and trusted that my offline PC would not write any secret information to the stick.
There are various ways to achieve an offline PC, do your research. This guide may require you to have the following installed on your offline PC:
- Brainwallet tool:
- On an online PC open: https://brainwalletx.github.io in your browser.
- Save the page to a USB disk with File->Save Page As ..., and copy it onto your OFFLINE PC, be sure to copy both the.htmlfile the simlarly named folder.
- Armory:
To decode Armory .walletfiles,SecurePrintor fragmented paper backups, the easiest method I've foud so far is just to use the application.
- On an online PC download Armory.
- Copy it onto your OFLINE PC and install it there.