When Jim and I were selecting which combination of HD wallet structures to support we noted the following:

* BIP39 is a good standard list to select from that mandates words that do not look similar to each other, a certain spelling (no English US/UK confusion) and possible foreign language variants provided by experts later
* BIP32 (m/0h/0/0) and BIP44 (m/44h/0h/0h/0/0) allow for maximum compatibility with other wallets
* including a date in the "wallet words" themselves is open to spoofing since the generator cannot be sure the date is correct (local time drift, provided externally by untrusted third party etc)
* a timestamp as optional external metadata is useful to reduce sync times in SPV
* our experience verified that users will very often enter a timestamp incorrectly (locale, fat fingers, bad memory etc) so we opted for "number of days elapsed since Bitcoin genesis block with a modulo 97 checksum appended" (e.g. 1850/07) to mitigate this
* if a user has no timestamp then blank is the only alternative (no guessing) which is interpreted as "earliest possible BIP32 date"
* if restoring the user has to select where the "wallet words" came from (e.g. MultiBit HD, Trezor, Mycelium etc)

Users will naturally assume that they can type their "wallet words" (a more mainstream-friendly term than "seed phrase") into any wallet and with a bit of fiddling about get their bitcoins back. As wallet developers it is within our capability to make that happen and I think we're quite close already.

On 12 March 2015 at 16:47, Mike Hearn <mike@plan99.net> wrote:
b) "Creation date" is just a short-term hack.

I agree, but we need things to be easy in the short term as well as the long term :) 

The long term solution is clearly to have the 12 word seed be an encryption key for a wallet backup with all associated metadata. We're heading in that direction one step at a time. Unfortunately it will take time for wallets to start working this way, and all the pieces to fall into place. Restoring from the block chain will be a semi regular operation for users until then.

WRT version number I have no real strong feelings about this. But representing short pieces of binary data as words is so convenient, it seems likely that it could be similar to addresses: people find other uses for this mechanism beyond just storing a raw private key. Bitcoin addresses have versions and that's proven to be useful several times, even though in theory an address is "just" a hash of a pubkey.

------------------------------------------------------------------------------
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the
conversation now. http://goparallel.sourceforge.net/
_______________________________________________
Bitcoin-development mailing list
Bitcoin-development@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/bitcoin-development




--
Bitcoin Solutions Ltd provides bespoke software and consultancy. Find us at bitcoin-solutions.co.uk.