钱包原理——助记词与公私钥

目前钱包分为两种:
一种是非确定性(随机)的钱包,就是随机生成多个私钥,钱包管理这些私钥。如果需要成千上万的地址,通过随机的方式来生成私钥,这就需要存储那么多无规律的私钥,这样就很麻烦不好管理。
另一种是确定性(种子)的钱包,就是通过种子可以生成无数的私钥,我们只需要记住种子就可以了。我们在使用钱包时记住的助记词可以生成种子,只要我们保管好助记词,我们的币就能找回来。用一句话来解释助记词:它是私钥的明文显示。

主要流程

1、随机生成128到258位的随机数,称作熵;
2、熵经过一定处理方法,生成助记词;
3、助记词经过密钥延伸函数PBKDF2,生成种子;
4、种子经过HMAC-SHA512算法,生成母密钥;
5、通过CKD(child key derivation)函数,母密钥生成众多子密钥。

从熵到助记词

1、生成一个128到256位的数字,叫做熵,熵的长度是32的整数倍,分别为 128, 160, 192, 224, 256,也就是我们私钥的长度。
在这里插入图片描述
2、熵通过SHA256哈希得到一个值,取前面的几位(熵长/32),称为校验和, 所以校验和长度可为 4,5,6,7,8 位。

  • 1
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值