To prevent loss when people forget their encryption password, we need to add recovery options. One of these would be to offer to print the master key when the wallet is encrypted.
- Qt has built-in support for printing: http://doc.qt.nokia.com/4.7-snapshot/printing.html so it shouldn't be a lot of work to implement.
- The decryption dialog and the change password dialog should accept this master key as well as the provided password (or, maybe better, but more work, add a dedicated "Recover wallet" option).
- It should be made difficult to write the master key to a file or copy-paste it, as that's risky.
Options for the key format would be base58 or hex, but I think hex is best here as there is no confusion between capitals and small letters. It will be a long string of 64 characters (512 bits) but heh, at least that discourages using the recovery key except for recovery :-) Another option would be to use words from a dictionary. This is easier to type but would result in an even longer string.