BTC.com手机客户端

确定性钱包,它们的优势以及被低估的缺陷

He1l_Q 发布在 技术指南,比特币 35 13364

如果你一直在关注最近一年比特币钱包的开发,那么你很有可能已经知道了后端设计的最新趋势:确定性钱包。与老式的比特币钱包(根据需要随机生成新的比特币地址和私钥)不同,确定性钱包中,所有的数据都是源自一个“种子”通过使用一个特定算法来生成的。这也就是说,如果你记录下了你的确定性钱包的“种子”,6个月以后你的硬盘坏了并且钱包没有办法恢复,在此情况下你完全可以同时同样的“种子”来创建一个新的钱包,并且你的老钱包里面的所有地址和私钥都会再次出现。这一钱包开发的趋势获得了几乎所有人的赞誉,并且几乎所有的用于控制多个地址的比特币客户端,要不已经实现了确定性钱包的功能,要不就正在计划实现这一功能。

Bitcoin-wallet

但是,确定性钱包不止于此。事实上,最新的确定性钱包已经超越了上面所描述的简单设计,并且拥有两大关键属性,这两大特性被它们的开发者大肆宣扬。第一大特性,是一个叫做“主公钥master public key”的概念。主公钥是一枚可以通过钱包的主私钥(就是“种子”或者其衍生物)生成的秘钥,它拥有生成一个比特币钱包里所有地址的能力,但不包括私钥。如此这般,拥有主公钥的人可以查看一个确定性钱包的余额,但不能花掉这些余额,因为他们没有办法生成对应于每个地址的私钥。第二大特性,是“层级结构”:你从主私钥生成的私钥,本身就可以成为一把主私钥,并因此充当一个确定性钱包。

确定性钱包的工作原理

事实证明,当前有两大类型的确定性钱包:Electrum钱包和BIP32钱包;它们使用的算法非常类似,这使得它们双双拥有“主公钥”的特性,BIP32钱包走得更远——它还拥有“层级结构”的特性,Electrum钱包是被设计成只有两级的机构,尽管Electrum协议是可以进行扩展以支持层级结构的。

“主公钥”特性可能是确定性钱包的更加让人惊讶的特性,并且我们将首先研究它。它行之有效的原因是,比特币的公钥(和比特币地址不完全是一回事,但有紧密的关系)可以像普通整数一样进行加减(尽管如此,但你不能把两个公钥相乘),并因此同样的算术运算可以在两个“级别”上进行——要生成私钥,算术运算在整数的级别上进行;而要生成公钥,算术运算就在公钥的级别上进行。

被所有确定性钱包系统使用的精确算法如下。为了计算第i号私钥(这里假设i=5),那么就先使用一个带有变量i和主公钥的函数(技术上来说,是个哈希)计算一个“偏移值”参数。然后就把主私钥和那个偏移值加在一起(译者注:就能得到第i号私钥了)。为了计算第i号公钥,那么就用同样的方法计算出那个偏移值,把这个偏移值转换成一把公钥,然后把主公钥和这个偏移值公钥相加(译者注:就能得到第i号公钥了)。

下面是几个使用Electrum钱包的例子,通过使用我自己的pybitcointools库完成的。

首先,我们从“种子”生成主私钥和主公钥:

> seed = random_electrum_seed()

‘afc3eef71d96c468ca52b437c385a621′

> mprivkey = electrum_stretch(seed)

’5df10c922a1c7888b5c3a5a7106e72576f09c17f0993f4f2ce0ef5ccdb2f53c5′

> mpubkey = ’04′+electrum_mpk(mprivkey)

’04fd6d91db1bdfc231116fd7d44c61a02e032b38b90aad419ecf75acf501eebdc7a0b7818e16a97a6c87693c723106e6fe17d4da743fae991139b05e6d1fe5c8a8′

现在,我们生成0号私钥:

> offset = dbl_sha256('0:0:'+mpubkey[2:].decode('hex'))
'429251ad9607fd39040072d23f53d54fc3b1ea526310fa45ca2a2df0629e2db2'
> priv0 = add_privkeys(mprivkey,offset)
'a0835e3fc02475c1b9c418794fc247a732bbabd16ca4ef38983923bd3dcd8177'

现在,公钥:

> pub0 = add_pubkeys(mpubkey,privkey_to_pubkey(offset))
'04d96f3a8ebb0de48a98a5d77003c1d3ed5a36aae3eb20ee138a233e0c644becf77263c6e56cca6cfe064eb87582dcf92e9066d567ae0ffa67b0a5a4fda2bd7d68'
> addr = pubkey_to_address(pub0)
'14EkQ9qsKxWKiBJm5f7mT7ozSKKZbQoZGS'

然后,看一下我们成功了:

> privkey_to_pubkey(priv0)
'04d96f3a8ebb0de48a98a5d77003c1d3ed5a36aae3eb20ee138a233e0c644becf77263c6e56cca6cfe064eb87582dcf92e9066d567ae0ffa67b0a5a4fda2bd7d68'

我们可以重复这一流程以生成其他密钥(1号、2号、诸如此类);如果你拥有Electrum钱包的话,可以自己尝试一下。重点在此:你可以放心的把你的主公钥放在一个不安全的地方,或者甚至说把它交给像审计员这样的第三方,如果这是有必要的话;自己只需要保存好主私钥(还有“种子”)。

层级结构

现在,让我们开始层级结构特性的话题。这个也是最好通过实例来说明。

> w = bip32_master_key('qweqweqweqweqwe')
'xprv9s21ZrQH143K2KhRQVuMqhz798mvW89J1aJMWEKNfZzv3BPAgBc4TH59K8ZcLt8RrNJvbUzA72A92Grm3MorG2FnFaoZ7B8SDTYXgUBALoi'
> w0 = bip32_ckd(w,0)
'xprv9uyTuGongdyZAMxZ2euUBbpsAdtE2nxFBmcQn89UT4ZyzrMg5TXD7azCnsnpH9Q7yrYgG7nVakE6BTxJUarLrDA28VxS3ZWDsgYWZUxtNiH'
> w000 = bip32_ckd(bip32_ckd(bip32_ckd(w,0),0),0)
'xprv9zL8JVf2Us8VKFYoi3A8F3LSFuHnxNhAdVyrWuECgcbW13WcSrAZt9QxbbMvrFZsvUtrktVpNJ5iN1JhgUYDZoeXC5qtGfLuLw3reVWSRir'

这一特性的主要使用情景是在层级式组织中:公司的财务官可以控制BIP0032钱包的根私钥,并把每个“子种子”交给公司的各个部门,各个部门然后使用得到的种子来运作他们自己的钱包。财务官将拥有一切的主密钥,但每个部门将只会持有他们自己那部分的资金的密钥。

当然,BIP32和Electrum拥有同样的主公钥特性,但更加的健壮:

> wp = bip32_privtopub(w)
'xpub661MyMwAqRbcEomtWXSNCqvqhAcQuas9NoDxJcizDuXtuyiKDivK15PdAPVkPwVXT9rFbjAnE9P3sLh6xnDawXF1uUXrruH1UvALHF89qdP'
> wp000 = bip32_ckd(bip32_ckd(bip32_ckd(wp,0),0),0)
'xpub6DKUi1BvKEgnXjdGp4h8cBHAow8HMqR1ziuTKHdpEx8UsqqkzPUpRwjSStDzFc5ALo93wyYXmRr9rvXWcrfw5MPFKCET11KFg3kNrESyWZ6'
> wp000_2 = bip32_privtopub(w000)
'xpub6DKUi1BvKEgnXjdGp4h8cBHAow8HMqR1ziuTKHdpEx8UsqqkzPUpRwjSStDzFc5ALo93wyYXmRr9rvXWcrfw5MPFKCET11KFg3kNrESyWZ6'

如此这般,BIP32的主私钥可以被认为是一颗无限分级的n叉树的顶端,可以恢复在其之下的每一把私钥。并且BIP32的主公钥也是如此,除了它只能用于恢复所有公钥和地址。我们还有一种比喻的方法,私钥就像是在雨林的冠层之上,而公钥是在其下方的地面上。不论你从哪里跳下去,最后的目的地地面都是同一个地方,但一旦到了地面就没办法再爬上去了(可以从公钥地面层爬上去到私钥冠层之上的猴子,至少在目前看来,只存在于理论之中)。

一个被低估的问题

从上面的描述我们可以看到,你可能已经了解确定性钱包拥有两大特性。首先,你可以从母密钥追溯到子密钥,但不能反过来。其次,你可以放心的给出你的主公钥,而不会威胁到你的资金安全。并且,这也是几乎所有人(至少是那些技术上足以理解确定性钱包是什么的人)在今天看待BIP0032钱包的方式。那个公司 (把子密钥交给各个部门,主公钥交给会计师和审计员) 的模型,在BIP0032钱包的发展前景中占用重要位置。然而,如我们即将谈到的,这一对于层级结构钱包的描述是有致命缺陷的。

问题在此:尽管你当然可以安全的交出子密钥,而母密钥不会有风险,并且你可以交出主公钥,而主私钥不会有风险,但你不能同时做这两件事情。如果那一情况发生了,破解将非常简单,并且可以通过两行的pybitcointools 代码来实现。我将使用Electrum为例,因为Electrum钱包更加的透明。下面是我之前创建的主公钥和子私钥:

> mpubkey
'04fd6d91db1bdfc231116fd7d44c61a02e032b38b90aad419ecf75acf501eebdc7a0b7818e16a97a6c87693c723106e6fe17d4da743fae991139b05e6d1fe5c8a8'
> priv0
'a0835e3fc02475c1b9c418794fc247a732bbabd16ca4ef38983923bd3dcd8177'

如上所示,第一个私钥可以通过这样的公式来计算得出:mprivkey + calc_offset(mpubkey, index)。所以,我们该怎么做?如果你仔细想想,答案显而易见:

> offset = dbl_sha256('0:0:'+mpubkey[2:].decode('hex'))
'429251ad9607fd39040072d23f53d54fc3b1ea526310fa45ca2a2df0629e2db2'
> mprivkey_2 = subtract_privkeys(priv0,offset)
'5df10c922a1c7888b5c3a5a7106e72576f09c17f0993f4f2ce0ef5ccdb2f53c5'

哈哈,我们拿到了主私钥。现在,我们可以提取出这个钱包内的所有其他地址,甚至包括那些钱包所有者从未打算触碰过的。我甚至在pybitcointools 中提供了一个命令,让这一切变得更简单:

> crack_electrum_wallet(mpubkey,priv0,0)
'5df10c922a1c7888b5c3a5a7106e72576f09c17f0993f4f2ce0ef5ccdb2f53c5'

BIP32也有相同的漏洞:

> wp = bip32_privtopub(w)
> w0 = bip32_ckd(w,0)
> crack_bip32_privkey(wp,w0)
'xprv9s21ZrQH143K2KhRQVuMqhz798mvW89J1aJMWEKNfZzv3BPAgBc4TH59K8ZcLt8RrNJvbUzA72A92Grm3MorG2FnFaoZ7B8SDTYXgUBALoi'

公平的说,我们需要留意这不是一个突然发现的0day漏洞;许多的比特币开发者已经知道这个漏洞有一段时间了。但是,根据很多人暗中推动的对层级式钱包的直观理解,包括把子密钥交给组织的各个部分并把主公钥交给审计员的理念,彻底的瓦解了这些确定性钱包所拥有的安全保障。某家大型组织决定采用层级式确定性钱包来保护它的比特币资金,并且突然发现它的一名部门负责人和一名审计员合谋把整个公司的资金卷走了,这可能只是一个时间上早晚的问题。所以现在有个显而易见的问题:这个漏洞可以被修复吗?答案似乎是否定的;因为对公钥的唯一可行的运算就是加减,实现带有主公钥特性的确定性钱包的唯一途径是使用这里描述的“偏移”机制。如果这一切是真的的话,那么提高认识就是唯一的解决方案了,同时还要在客户端上做出修改,以明确主公钥特性和层级式钱包特性不要一起使用。

可能还有一种可以绕过这一漏洞的方法:制造三个层级式BIP32钱包,沿着特定的子密钥衍生路径生成所有地址,每个地址都是这三个钱包的2-of-3合成签名地址(译者注:也就是说3把私钥中任意2把私钥组合在一起才可签名发币)。然后,审计员可以拿着三把主公钥中的一把,并在区块链中搜索所有的脚本中包含了从那把主公钥生成的所有公钥的交易。这一解决方案很复杂,不为现有的任何客户端所支持,并且远不完美,但像这样的方法是避开这一漏洞的唯一途径了。在大多数情况下,干脆不放出主公钥可能是更好的方法。

所以,确定性钱包的前景如何?在目前来看,BIP0032可以说是到此为止了;一个重要升级可能是BIP0032合成签名钱包,它把BIP0032 的层级式确定性魔法和一个比特币的高级特性(3把私钥中任意2把私钥组合在一起才可签名发币)结合在了一起。未来的另一个方向是脑钱包。记忆住比特币钱包有两大途径:1.选择一个密码,并使用这一密码或者密码的哈希值作为种子;2.随机生成一个种子,并把这个种子通过一种可以逆转的方式转换成一串密语。这两种途径的实现,在目前来看都有某些程度的缺陷——第一种方法的标准实现方式,对暴力破解的耐受力不强,然而第二种方法的标准(Electrum)实现方式有太难以记住了——研究表明像“glow date cost bloody curve wheel cousin picture ring finally bubble press”这样的密语(译注:这串密语是一堆单词的无意义堆砌),并不比相当安全级别的随机字符串要更容易被记住,并且它们不能在忘记其中一两个单词的情况下找回钱包。这些都是公开的问题——如果你是一名比特币开发者,你有机会提出解决方案并让它成为标准答案。

 

原文 http://bitcoinmagazine.com/8396/deterministic-wallets-advantages-flaw/

作者 Vitalik Buterin

翻译 He1l_Q

本文如有帮助,请考虑捐助:15X9AMhccjqqPRkhpgraoj7fgdqymW3iSC

欢迎转载,转载时请注明作者翻译者和出处,谢谢支持!

版权声明: by nc" sa 作者保留权利。文章为作者独立观点,不代表巴比特立场。

评论:35

您需要登录后才可以回复 登录|注册
    胖胖_1983
    胖胖_1983 738 天前

    [鼓掌]//@比太钱包:[吃惊] 才发现,Vitalik Buterin 一年前关于 HD 钱包的文章,@He1l_Q 竟然第一时间就翻译好了,@巴比特资讯 不愧为圈内劳模、业内典范 [good] 此文甚好,翻译的也好,小伙伴们都应该看看哈 [可爱] http://t.cn/8k4C7TT

    +1
    +1
    我要点评
    COP平淡哥
    COP平淡哥 738 天前

    【高小燕被查 系十八大后首个落马女将军】少将军衔,任解放军信息工程大学副政委。http://t.cn/RzaMhDl (分享自@搜狐新闻客户端)

    +1
    +1
    我要点评
    海燕五月天
    海燕五月天 738 天前

    欢平推荐的极品,你懂的!//@宋欢平:极客文章,转发学习下。//@比太钱包: [吃惊] 才发现,Vitalik Buterin 一年前关于 HD 钱包的文章,@He1l_Q 竟然第一时间就翻译好了,@巴比特资讯 不愧为圈内劳模、业内典范 [good] 此文甚好,翻译的也好,小伙伴们都应该看看哈 [可爱] http://t.cn/8k4C7TT

    +1
    +1
    我要点评
    宋欢平
    宋欢平 738 天前

    极客文章,转发学习下。//@比太钱包: [吃惊] 才发现,Vitalik Buterin 一年前关于 HD 钱包的文章,@He1l_Q 竟然第一时间就翻译好了,@巴比特资讯 不愧为圈内劳模、业内典范 [good] 此文甚好,翻译的也好,小伙伴们都应该看看哈 [可爱] http://t.cn/8k4C7TT

    +1
    +1
    我要点评
    2岁大的黑猩猩
    2岁大的黑猩猩 738 天前

    [话筒][话筒][话筒]//@比太钱包: [吃惊] 才发现,Vitalik Buterin 一年前关于 HD 钱包的文章,@He1l_Q 竟然第一时间就翻译好了,@巴比特资讯 不愧为圈内劳模、业内典范 [good] 此文甚好,翻译的也好,小伙伴们都应该看看哈 [可爱] http://t.cn/8k4C7TT

    +1
    +1
    我要点评
    GoGoLucky0110
    GoGoLucky0110 738 天前

    巴比特又被玩坏了?上不了了

    +1
    +1
    我要点评
    BTC_吃猫的鱼
    BTC_吃猫的鱼 738 天前

    确实是好文章。//@长铗://@比太钱包: [吃惊] 才发现,Vitalik Buterin 一年前关于 HD 钱包的文章,@He1l_Q 竟然第一时间就翻译好了,@巴比特资讯 不愧为圈内劳模、业内典范 [good] 此文甚好,翻译的也好,小伙伴们都应该看看哈 [可爱] http://t.cn/8k4C7TT

    +1
    +1
    我要点评
    招财币冷月
    招财币冷月 738 天前

    说来说去还是使用方法上的误解,主公钥和子私钥不能同时暴露。Trezor方案硬件钱包的任何一把子私钥都不会离开硬件,所以在使用方式上避免了这个问题。//@长铗: //@比太钱包: [吃惊] 才发现,Vitalik Buterin 一年前关于 HD 钱包的文章,@He1l_Q 竟然第一时间就翻译好了 http://t.cn/8k4C7TT

    +1
    +1
    我要点评
    何小兑儿
    何小兑儿 738 天前

    @坂本Roger

    +1
    +1
    我要点评
    btcrobot
    btcrobot 738 天前

    先mark,最近恶补HD钱包。//@长铗://@比太钱包: [吃惊] 才发现,Vitalik Buterin 一年前关于 HD 钱包的文章,@He1l_Q 竟然第一时间就翻译好了,@巴比特资讯 不愧为圈内劳模、业内典范 [good] 此文甚好,翻译的也好,小伙伴们都应该看看哈 [可爱] http://t.cn/8k4C7TT

    +1
    +1
    我要点评
    长铗
    长铗 738 天前

    //@比太钱包: [吃惊] 才发现,Vitalik Buterin 一年前关于 HD 钱包的文章,@He1l_Q 竟然第一时间就翻译好了,@巴比特资讯 不愧为圈内劳模、业内典范 [good] 此文甚好,翻译的也好,小伙伴们都应该看看哈 [可爱] http://t.cn/8k4C7TT

    +1
    +1
    我要点评

    [得意地笑] http://t.cn/RzIvzw8

    +1
    +1
    我要点评
    Q小迪
    Q小迪 738 天前

    巴比特团队在资讯更新的时效性和准确性都是很赞的[呵呵]//@比太钱包: [吃惊] 才发现,Vitalik Buterin 一年前关于 HD 钱包的文章,@He1l_Q 竟然第一时间就翻译好了,@巴比特资讯 不愧为圈内劳模、业内典范 [good] 此文甚好,翻译的也好,小伙伴们都应该看看哈 [可爱] http://t.cn/8k4C7TT

    +1
    +1
    我要点评

    [猪头][猪头][猪头]

    +1
    +1
    我要点评
    姜家志
    姜家志 738 天前

    [good]//@码农周琪: [good]//@宋辰文: [good]//@i问号: [good]//@比太钱包:[吃惊] 才发现,Vitalik Buterin 一年前关于 HD 钱包的文章,@He1l_Q 竟然第一时间就翻译好了,@巴比特资讯 不愧为圈内劳模、业内典范 [good] 此文甚好,翻译的也好 http://t.cn/8k4C7TT

    +1
    +1
    我要点评
    姜家志
    姜家志 738 天前

    [good]//@码农周琪: [good]//@宋辰文: [good]//@i问号: [good]//@比太钱包:[吃惊] 才发现,Vitalik Buterin 一年前关于 HD 钱包的文章,@He1l_Q 竟然第一时间就翻译好了,@巴比特资讯 不愧为圈内劳模、业内典范 [good] 此文甚好,翻译的也好

    +1
    +1
    我要点评
    旺旺好男银
    旺旺好男银 738 天前

    把两篇文章一块读,很轻易就能弄懂HD钱包的原理和优缺点,赞!

    +1
    +1
    我要点评
    旺旺好男银
    旺旺好男银 738 天前

    把两篇文章一块读,很轻易就能弄懂HD钱包的原理和优缺点,赞!

    +1
    +1
    我要点评
    旺旺好男银
    旺旺好男银 738 天前

    把两篇文章一块读,很轻易就能弄懂HD钱包的原理和优缺点,赞!

    +1
    +1
    我要点评
    码农周琪
    码农周琪 738 天前

    [good]//@宋辰文: [good]//@i问号: [good]//@比太钱包:[吃惊] 才发现,Vitalik Buterin 一年前关于 HD 钱包的文章,@He1l_Q 竟然第一时间就翻译好了,@巴比特资讯 不愧为圈内劳模、业内典范 [good] 此文甚好,翻译的也好,小伙伴们都应该看看哈 [可爱] http://t.cn/8k4C7TT

    +1
    +1
    我要点评
    宋辰文
    宋辰文 738 天前

    [good]//@i问号: [good]//@比太钱包:[吃惊] 才发现,Vitalik Buterin 一年前关于 HD 钱包的文章,@He1l_Q 竟然第一时间就翻译好了,@巴比特资讯 不愧为圈内劳模、业内典范 [good] 此文甚好,翻译的也好,小伙伴们都应该看看哈 [可爱] http://t.cn/8k4C7TT

    +1
    +1
    我要点评
    i问号
    i问号 738 天前

    [good]//@比太钱包:[吃惊] 才发现,Vitalik Buterin 一年前关于 HD 钱包的文章,@He1l_Q 竟然第一时间就翻译好了,@巴比特资讯 不愧为圈内劳模、业内典范 [good] 此文甚好,翻译的也好,小伙伴们都应该看看哈 [可爱] http://t.cn/8k4C7TT

    +1
    +1
    我要点评
    比太钱包
    比太钱包 738 天前

    [吃惊] 才发现,Vitalik Buterin 一年前关于 HD 钱包的文章,@He1l_Q 竟然第一时间就翻译好了,@巴比特资讯 不愧为圈内劳模、业内典范 [good] 此文甚好,翻译的也好,小伙伴们都应该看看哈 [可爱] http://t.cn/8k4C7TT

    +1
    +1
    我要点评
    shakayang
    shakayang 1106 天前

    //@胡翌霖:在行情暴涨的日子里静下心来看看技术性讨论更有意义~我感觉光主公钥的设计就有一定意义。例如现在的比特币交易平台就可以在为每个用户分配独特的充值公钥的同时,公开主公钥以让人们确信平台没有挪用现象。//@BTC股票:[转发]

    +1
    +1
    我要点评
    Author Image
    changjia 1106 天前

    资助0.015BTC
    交易ID 9cbd83aba0b4e314b9716870a9f03ad14365cc0ed15016cbdac5c1f34537bc4a

    +1
    +1
    我要点评
    荒诞思考比特币
    荒诞思考比特币 1107 天前

    //@暴走恭亲王: //@胡翌霖:在行情暴涨的日子里静下心来看看技术性讨论更有意义~我感觉光主公钥的设计就有一定意义。例如现在的比特币交易平台就可以在为每个用户分配独特的充值公钥的同时,公开主公钥以让人们确信平台没有挪用现象。//@BTC股票:[转发]

    +1
    +1
    我要点评
    南小宁
    南小宁 1107 天前

    //@暴走恭亲王://@胡翌霖:在行情暴涨的日子里静下心来看看技术性讨论更有意义~我感觉光主公钥的设计就有一定意义。例如现在的比特币交易平台就可以在为每个用户分配独特的充值公钥的同时,公开主公钥以让人们确信平台没有挪用现象。//@BTC股票:[转发]

    +1
    +1
    我要点评
    暴走恭亲王
    暴走恭亲王 1107 天前

    //@胡翌霖:在行情暴涨的日子里静下心来看看技术性讨论更有意义~我感觉光主公钥的设计就有一定意义。例如现在的比特币交易平台就可以在为每个用户分配独特的充值公钥的同时,公开主公钥以让人们确信平台没有挪用现象。//@BTC股票:[转发]

    +1
    +1
    我要点评
    tiangq9928
    tiangq9928 1107 天前

    新版微博客户端,好听,好看,更好玩!自定义个人封面;音、视频直接播放;好友圈—好友消息不错过;支持屏蔽广告微博;广场音乐、电影、美食等频道升级。[good]快试试一键听歌:http://t.cn/zH4S4xq 下载地址:http://t.cn/8k4bu8A

    +1
    +1
    我要点评
    长铗
    长铗 1107 天前

    Vitalik的技术强文:确定性钱包,它们的优势以及被低估的缺陷http://t.cn/8k4C7TT 确定性钱包有两大特性:1、主公钥拥有生成一个比特币钱包里所有地址的能力,但不包括私钥。2、具“层级结构”:你从主私钥生成的私钥,本身就可以成为一把主私钥,并因此充当一个确定性钱包。

    +1
    +1
    我要点评
    BTC股票
    BTC股票 17146 天前

    [转发]

    +1
    +1
    我要点评
    炼金术士gewesen
    炼金术士gewesen 17146 天前

    想起来爱迪生人生中失败的第一个发明,产品很成功,销售很失败:电子表决器,可以大大缩短议会表决时间,但是议员们都希望借表决拖时间,所以没卖出去

    +1
    +1
    我要点评
    比特点点
    比特点点 17146 天前

    不错的发展,但需用到正确的场合

    +1
    +1
    我要点评