Mnemonic-Seed

助記詞->助記句標準化了嗎?

  • November 22, 2017

我正在閱讀 BIP 39,並註意到它並沒有提到用於種子計算的助記句是如何由助記片語成的。這實際上很麻煩,因為在日語的情況下,bip39 npm 包將助記符與IDEOGRAPHIC SPACE(U+3000)加入了助記符,該空格字元通常用作日語的空格。似乎 copay 正在使用此庫,因此遵循此規則。其他一些實現可能決定使用(更機器友好的)空間(U+20)或其他東西,這使得只記住助記詞就足以恢復錢包(在其他錢包中)。

題:

  • 助記詞如何組成助記句有什麼標準嗎?

bip39

為了從助記符創建二進制種子,我們使用 PBKDF2 函式,將助記語句(在 UTF-8 NFKD 中)用作密碼,將字元串“助記符”+密碼(同樣在 UTF-8 NFKD 中)用作鹽。迭代次數設置為 2048,HMAC-SHA512 用作偽隨機函式。派生密鑰的長度為 512 位(= 64 字節)。

以 NFKD形式規範化 unicode 時,看起來相同的字元變得相同,因此U+3000變為U+20. 這也可能導致長度發生變化,因為複合字元被分解為其組成部分。

引用自:https://bitcoin.stackexchange.com/questions/57258