Bitcoin Forum

Bitcoin => Development & Technical Discussion => Topic started by: charlton on February 22, 2016, 07:59:15 AM



Title: Standardizing mnemonic translations
Post by: charlton on February 22, 2016, 07:59:15 AM
It seems to me that there ought to be a standard way to convert numbers such as 256-bit private keys to mnemonic words and back again, using standardized word list(s).

The closest I've been able to find is BIP39, which is really not suited for this purpose as it's intended for generating deterministic wallets and cannot perform these conversions in a general way.  I haven't been able to use the tool at  https://dcpos.github.io/bip39/ for example to convert a 256-bit private key into a 24-word mnemonic.  And anyway I'm not so sure that a 2048 word list should be standard as 11 bits isn't as suitable for binary length boundaries as 12 bits or even 10 bits.

I am wondering if I am overlooking a tool that does this or if a standard needs to be defined and then tool created that will do the job?


Title: Re: Standardizing mnemonic translations
Post by: charlton on February 24, 2016, 06:16:13 PM
Just a follow-up:

I've found there is a standard using a 2048 wordlist of <=4 letters each:  RFC 1751 (http://www.rfc-base.org/rfc-1751.html)

Unfortunately this isn't a very good standard as the words are actually harder to remember than a longer wordlist with longer words.

There is nothing standard in the 4096 or 8192 wordlist space.  16384 may be promising.  There is a 65536 wordlist but with that many words you get many words you've never heard of, along with concatenations, plurals, etc.  Nothing has been standardized.

It is very disappointing that we do not have a standard.  You cannot have a base-4096 (or 2048, 8192, etc) numeric system without defining the numerals (in this case words).

Here's an article I found that explains why laying this kind of groundword is difficult, but I believe it very important to the future of cryptocurrency:
https://www.ivankovic.me/blog/2013/12/26/why-constructing-human-readable-sha256-or-other-hashes-is-hard-part-1/ (https://www.ivankovic.me/blog/2013/12/26/why-constructing-human-readable-sha256-or-other-hashes-is-hard-part-1/)


Title: Re: Standardizing mnemonic translations
Post by: charlton on February 25, 2016, 05:28:49 PM
Seems like this would be a good "laying the groundwork" project for our cryptocurrency future.

I wish I had the expertise to do it myself.  If anyone takes this on I'll contribute.