5.5 LightWallet

LightWallet是一个实现BIP32、BIP39和BIP44的HD钱包。LightWallet提供API来创建和签署交易,或者使用LightWallet生成的地址和密钥加密和解密数据。

LightWallet API被分成4个命名空间,即keystore、signing、encryption和txutils。signing、encrpytion和 txutils分别用来提供API以签名交易、非对称的密码和创建交易,而keystore命名空间用于创建keystore、生成种子等。 keystore是一个存储加密种子和密钥的对象。如果使用Hooked-Web3-Provider,keystore命名空间实现交易签名者方法,该 方法要求签署we3.eth.sendTransaction()调用。因此keystore命名空间对于在其中发现的地址可以自动创建和签署交易。实际 上,LightWallet的主要目的是成为Hooked-Web3-Provider的一个签名提供方。

可以配置密钥存储实例,来创建和签署交易或者加密和解密数据。签署交易用secp256k1参数,加密和解密用curve25519参数。

LightWallet的种子是一个12词的助记符,容易记住但不容易进行破解。它不是任意12个词,而是LightWallet生成的种子。LightWallet生成的种子在选择词和其他东西方面有特定的属性。

HD衍生路径

HD衍生路径是一个字符串,可以使多个加密货币(假设它们使用相同的签名算法)、多个区块链和多个账户等的处理变得容易。

HD衍生路径需要多少参数就可以有多少参数,还可以对参数使用不同的数值,可以产生不同的地址群和相关密钥。

LightWallet默认使用m/0'/0'/0'衍生路径。这里,/n'是参数,n是参数值。

每个HD衍生路径都有curve和purpose。purpose可以是sign或者asymEncrypt。 sign表示该路径用于签署交易,asyEncrypt表示该路径用于加密和解码。curve表示ECC的参数。为了签名,参数必须是 secp256k1;对于不对称加密,curve必须是curve25591,因为LightWallet出于自身利益强迫我们使用这些参数。


来源:我是码农,转载请保留出处和链接!

本文链接:http://www.54manong.com/?id=557

'); (window.slotbydup = window.slotbydup || []).push({ id: "u3646208", container: s }); })();
'); (window.slotbydup = window.slotbydup || []).push({ id: "u3646147", container: s }); })();
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值