助记词生成原理

助记词 其实 就是 将 128bits 的 seed 补位成 132bits 的数值,然后 平均 拆分成 12个 数值,最后到 助记词列表中 根据下标 获取对应的 12个 单词 组成。

  • bip39的助记词列表:https://github.com/bitcoinjs/bip39/blob/master/wordlists/english.json

  • 生成过程:
    1.随机生成 128 bits 的 seed (需是32的倍数)
    2.将 seed 进行hash256运算,获取hash值 开头的 4个 bits,与 seed 组成一个组新数值
    3.以11bits为单位,拆分 上组新数值,每 11bits 个数值 转成一个10进制数
    4.用这个十进制数 作为 助记词单词数组 的下标,获取 对应的 一个单词作为 助记词
    5.一共12组11bits数,所以 生成 12个 单词

  • 图解(来源百度):
    助记词生成原理

posted on 2018-12-17 14:41  邹华栋  阅读(1930)  评论(0编辑  收藏  举报