After exploring different storage methods, I have decided on a MultibitHD wallet saved offline on a flash drive (with a backup copy in a safe deposit box). Although I created the wallet offline, I know that I must be online to actually use it and receive Bitcoin, so I'm assuming that it isn't a "true" cold storage method and that it does to some degree require an online account.
The wallet was created offline with a secure password, so I'm not exactly worried about theft. My concern is, though, what if Multibit (the company/website" closes or goes under? Will my finds be lost or will they still be retrievable from the wallet files on my flash drives? I know the wallet will still exist on the flash drive, but without a profile to connect to through the website, what happens then?
Thanks!
The best idear would be to save the seedwords. These words can be used to recreate the xprv, which in turn can be used to derive the private keys from.
You can either mess around with a scripting language (it's not to hard to do this in python), or you can use premade tools like these ones:
https://github.com/iancoleman/bip39http://bip32.org/It would be the best idear to test this procedure for yourself: generate a throwaway multibit HD wallet, generate a couple addresses, then use the sites above (or download their sourcecode for offline usage) and try to generate the same addresses using these sites as the addresses generated with multibit HD. Then try to import the corresponding private keys into core or electrum, and see if you're able to sign a message with this electrum wallet. If everything works, you can generate a "real" wallet, while being relatively sure you know how to recuperate your wallet in case of disaster
BTW: i have little experience with multibit HD, but with, for example, electrum you can do true cold storage:
Create a new wallet on an offline PC (you'll need to add a cli parameter in order to start properly IIRC), export the xpub to a usb stick, move the xpub to an online pc and import it into an online electrum, generate receiving addresses using the online electrum, receive funds.
If you want to send funds: create the transaction with the online electrum, save the tx to a usb stick and move it to the offline pc, sign it with the offline electrum, save signed tx to the usb, move it back to the online machine, broadcast it with the online electrum