1
0
mirror of https://github.com/bitcoin/bips.git synced 2024-11-19 01:40:05 +01:00

Fix two errors in the BIP 39 French wordlist

The BIP 39 wordlist contained two significant technical errors:

 - Byte Order Marker (BOM) U+FEFF at the beginning of the first line,
   preceding the word "abaisser".

 - No newline '\n' char terminating the last line, after "zoologie".

The former may cause user loss of funds.  An implementation which
generates a mnemonic phrase and also turns it into a BIP 39 seed value
may feed the string "<U+FEFF>abaisser" to the KDF, while displaying the
word "abaisser" to the user.  Of course, it cannot be expected that the
user would enter "<U+FEFF>abaisser" upon attempt to restore a wallet.
In the face of a buggy wordlist, whitespace handling and normalization
cannot be absolutely relied on to remove a notoriously mischievous
character.  Those who provide technical support may be well advised to
ask French users with unrestorable wallets, "Did your mnemonic phrase
contain the word 'abaisser'?"

The latter broke the shell script I use to massage wordlists into C
sources when building https://github.com/nym-zone/easyseed .

I know of only one commonplace platform where software regularly
prepends UTF-8 files with a spurious U+FEFF, and oftentimes omits a line
terminator on the last line even when asked to create a Unix ('\n') text
file.  It is RECOMMENDED that new wordlists be examined for correctness
using standard shell tools on a sane platform.
This commit is contained in:
nullius 2018-01-01 04:50:24 +00:00
parent 38a7545b8b
commit 50c4f1255e
No known key found for this signature in database
GPG Key ID: C42793159F9EF949

View File

@ -1,4 +1,4 @@
abaisser
abaisser
abandon
abdiquer
abeille
@ -2045,4 +2045,4 @@ yacht
zèbre
zénith
zeste
zoologie
zoologie