-
Notifications
You must be signed in to change notification settings - Fork 110
Export and limited import of private keys
MultiBit private keys file format, version 1
This is the format of the MultiBit private keys file:
multiBit.keys,1
firstTransactionDate, yyyy-MMM-dd HH:mm:ss
encrypted, false
"key to import 1"
"key to import 2"
"key to import 3"
...
"key to import n"
Notes on file format
-
Keys are in the same format as the Satoshi client dumpprivkey output i.e. Base58 encoded. In bitcoinj they will be produced and parsed by the class DumpedPrivateKey.
-
First line contains magic text to identify the file and the version number of the key file format. Current version number is "1".
-
Time of first transaction is used in replaying the block chain after private key import. It is UTC time but without the 'T' just before the time part.
-
The 'encrypted' property is for future incorporation of encrypted private keys once a bitcoinj-wide standard for encrypted private keys is decided.
-
Any number of private keys can be listed.
General Notes
Initially private keys are output in clear text to an output file. Produce an encrypted version when encryption routine well defined.
Strongly suggest the user puts them directly onto a USB/ Truecrypt volume.
This specifies a flat file mainly because of MultiBitMerchant support (which can add thousands of keys to a wallet - the address bucket). It would be a good option to be able to print out QR codes of the keys similar to bitaddress.org for wallets with smaller numbers of keys.
We currently need a 'wallet creation date' or 'earliest transaction date' so that we can replay the blocks like with 'reset blockchain and transactions' to resurrect a wallet. This is in a human readable form to enable people to hand craft these files if they want to import their own private keys.
Have a default private key file name suggested to the user of '.key' . E.g. if the wallet is called 'multibit.wallet' suggest a key file name of 'multibit.key'.
Other private key formats that are around and would be worth being able to import: Sipa, Hex,