首页 > 编程知识 正文

tp钱包导出助记词,比特币助记词随机碰撞

时间:2023-05-06 20:01:20 阅读:22633 作者:228

1 .定义助记符号的生成

使用助记符语句(mnemonic word sequence )作为密码,用几个助记符替换最近直接生成随机数的方式(确定性钱包的种子随机数)。

1.1 .生成步骤

1 )生成128~256位(bits )随机数,称为熵);以128bits为例);

因为正态熵的比特数目必须是32的整数倍,所以熵的长度取值在值位128到256之间的32的整数倍,分别是128、160、192、224和256;

2 )熵checksum计算

对熵进行SHA256散列,提取前4位用作校验数字; (校验码长度=数据全长/32 );

3 )将原始熵和checksum连接到132bits的长度

4 )将132bits的长度以11bits分割为12部分

5 ) .每11bits对应于2048个长度的单词表中的一个单词;

(助记符有2048个词,11位可以搜索词典中的所有词,作为词的索引)

1.2 .随机位数和助记符号个数对应表

校验和=熵长度/32位

助记符号数=(熵和)/11

熵(bits )校验和(bits )熵校验和(bits )助记符的数量为128413212160516515192619818212568264242。 助记符生成主序列(512位,64字节)

BIP39利用PBKDF2函数估计种子。

将散列函数hmac-sha512(key=“mnemonic”,作为盐为passphrase ) 2048作为重复计算的次数

【参考】[1] HMAC算法可以引用' HMAC(2)散列运算消息认证码hmac '

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。