mirror of
https://github.com/bitcoin/bips.git
synced 2025-05-12 12:03:29 +00:00
Usage of UTF-8 NFKD
This commit is contained in:
parent
6a3bb51e3f
commit
041f51c2ff
@ -78,7 +78,8 @@ c) sorted wordlists
|
|||||||
(i.e. implementation can use binary search instead of linear search)
|
(i.e. implementation can use binary search instead of linear search)
|
||||||
- this also allows trie (prefix tree) to be used, e.g. for better compression
|
- this also allows trie (prefix tree) to be used, e.g. for better compression
|
||||||
|
|
||||||
The wordlist can contain native characters, but they have to be encoded using UTF-8.
|
The wordlist can contain native characters, but they have to be encoded in UTF-8
|
||||||
|
using Normalization Form Compatibility Decomposition (NFKD).
|
||||||
|
|
||||||
==From mnemonic to seed==
|
==From mnemonic to seed==
|
||||||
|
|
||||||
@ -86,8 +87,8 @@ A user may decide to protect their mnemonic by passphrase. If a passphrase is no
|
|||||||
present, an empty string "" is used instead.
|
present, an empty string "" is used instead.
|
||||||
|
|
||||||
To create a binary seed from the mnemonic, we use PBKDF2 function with a mnemonic
|
To create a binary seed from the mnemonic, we use PBKDF2 function with a mnemonic
|
||||||
sentence (in UTF-8) used as a password and string "mnemonic" + passphrase (again
|
sentence (in UTF-8 NFKD) used as a password and string "mnemonic" + passphrase (again
|
||||||
in UTF-8) used as a salt. Iteration count is set to 2048 and HMAC-SHA512 is used as
|
in UTF-8 NFKD) used as a salt. Iteration count is set to 2048 and HMAC-SHA512 is used as
|
||||||
a pseudo-random function. Desired length of the derived key is 512 bits (= 64 bytes).
|
a pseudo-random function. Desired length of the derived key is 512 bits (= 64 bytes).
|
||||||
|
|
||||||
This seed can be later used to generate deterministic wallets using BIP-0032 or
|
This seed can be later used to generate deterministic wallets using BIP-0032 or
|
||||||
|
Loading…
x
Reference in New Issue
Block a user