美文网首页自由点赞群区块链研习社0岁的产品经理
一分钟读书俱乐部(五十九):《区块链技术驱动金融》分层确定性钱包

一分钟读书俱乐部(五十九):《区块链技术驱动金融》分层确定性钱包

作者: 全职高手一叶之秋 | 来源:发表于2019-03-12 10:17 被阅读53次

    原文精选:一个比较有效的解决办法是使用一个分层确定性钱包(hierarchical deterministic wallet)。这个方法可以让冷储存端制造无限制的地址数量,然后通过一个短暂的、一次性的交换,让热储存端知晓所有地址。但这需要使用密码学的技巧。

    回想一下,我们在第1章谈到密钥生成和电子签名时,我们使用了“generateKeys”来生成一个公钥(也就是地址)和一个私钥。在分层确定性钱包里,生成密钥的方式不太一样。不同于生成一个单一地址,我们生成一个被称为“地址生成信息”的东西;我们也不只生成私钥,而是生成“私钥生成信息”。有了地址生成信息,我们就可以生成一系列地址。我们把地址生成信息和一个整数i作为地址生成函数的输入参数,就生成了序列里的第i个地址。同样,我们用私钥生成信息来生成一系列私钥。

    读书笔记:

    分层确定性钱包(hierarchical deterministic wallet),这个方法可以让冷储存端制造无限制的地址数量,然后通过一个短暂的、一次性的交换,让热储存端知晓所有地址。


    原文精选:密码学的神奇之处在于:对于每个i而言,第i个地址和第i个私钥相匹配——换言之,第i个私钥控制第i个地址的比特币,就好像这是用经典办法产生的。这样一来,我们就有一长串配对的公钥和密钥。

    密码学的另一个技术优点是安全性——地址生成信息并不会泄露关于私钥本身的任何信息。这意味着你可以放心地把地址生成信息给任何人,他就可以用它来生成第i个密钥。并不是所有的电子签名算法目前都可用于生成分层确定性密钥。比特币使用的电子签名算法ECDSA支持分层密钥,让我们可以使用这个技巧。即冷储存端生成任意多个密钥,热储存端生成相应的地址,见图4.2。


    读书笔记:

    冷储存端生成和保存私钥生成信息和地址生成信息,然后将地址生成信息一次性转给热储存端。当热储存端要给冷储存端转账时,就按次序生成新的地址。


    原文精选:ECDSA的工作机制如下:通常一个ECDSA私钥是一个随机数x,其对应的公钥是gx。为了生成分层确定性密钥,我们需要另外两个随机数k和y。

    私钥生成信息:k,x,y

    第i个私钥:x=y+H(kǁi)

    地址生成信息:k,gy

    第i个公钥:gxi=gH(kǁi)·gy

    第i个地址:H(gxi)

    分层确定性钱包有我们需要的所有特性:两方都可以生成公钥/私钥序列,而且这些公钥/私钥相互配对(因为与私钥x对应的公钥就是gx)。而且,这种方法还具有另外一种我们尚未提及的特性:当你向外提供这些公钥时,这些公钥之间没有联系,也就是说,别人无法断定这些公钥来自同一个钱包。稻草人方案(冷储存端生成大量的地址)也具有这种特性,但我们需要小心地保护这些地址,因为这些地址事实上并不是独立生成的。这种特性对于保护隐私和实现匿名是至关重要的。

    分层确定性钱包有两种不同的安全性,热储存端的安全性较低。如果热储存受到损害,那么上文提到的非相关性就不复存在,但这种情况下,私钥(以及比特币)仍然是安全的。通常,分层确定性钱包支持任意多个安全等级——这也是“分层”的由来——虽然,我们还没有讨论细节。这种安排非常有用,例如,当一家公司内部存在多种授权级别时,就需要这种特性。

    读书笔记:

    1,分层确定性钱包的两方都可以生成公钥/私钥序列,而且这些公钥/私钥相互配对。

    2,分层确定性钱包支持任意多个安全等级。


    一叶之秋带你一分钟速读经典书籍,每天一分钟(只需阅读读书笔记部分),天天获新知。


    一叶之秋——非著名股票分析师

    CCTV证券资讯频道特邀分析师

    币乎,币问内测作者;区分认证分析师

    金色财经,币世界专栏作家

    《区块链编年史》 《区块链重塑未来》系列作者

    量价时空战法体系,一分钟读书俱乐部创始人

    公众号:区块链项目评测

    007er

    相关文章

      网友评论

        本文标题:一分钟读书俱乐部(五十九):《区块链技术驱动金融》分层确定性钱包

        本文链接:https://www.haomeiwen.com/subject/sgqgpqtx.html