KSM:科普 | 比特币的私钥:转码与使用

凡是关心自己的比特币财产安全的人都应该试着理解下图:

数字

如果你完全理解二进制、十进制和十六进制,可以跳过这部分。

十进制指每一位数都有10种可能。数字“6.15”有3位数。第一个数是“6”,第二个数是“1”,第三个数是“5”。这三个数可以是0、1、2、3、4、5、6、7、8、9中的任何一个。

在十进制中,我们从“0”数到“9”就没有新的数了,接下来就要在左边新增一位“1”,得到“10”,然后再从“0”开始数起——原先的“9”进了一位,十位数变成了“1”,个位数变成了“0”。

国务院:推进科普与区块链技术深度融合:为贯彻落实党中央、国务院关于科普和科学素质建设的重要部署,依据《中华人民共和国科学技术进步法》、《中华人民共和国科学技术普及法》制定《全民科学素质行动规划纲要(2021-2035年)》,其中要求实施智慧科普建设工程。推进科普与区块链等技术深度融合,强化需求感知、用户分层、情景应用理念,推动传播方式、组织动员、运营服务等创新升级,加强“科普中国”建设,强化科普信息落地应用,与智慧教育、智慧城市、智慧社区等深度融合。(新华社)[2021/7/10 0:40:52]

二进制指每一位数只有两种可能。

在二进制中,我们从“0”数起,然后是“1”,接着就是“10”!看见没?如果你觉得跨度很大,那是因为你还没有跳出十进制思维。

在十进制中,“10”就是普通人的手指数量——因为我们有10个手指,所以我们人类常用10进制。

动态 | 区块链技术入选科普杂志《科学美国人》2019十大突破性技术榜单:据新浪网今日新闻报道,美国科普杂志《科学美国人》公布 2019 十大突破性技术榜单。区块链技术因在保障食品安全中的作用而上榜。 入选榜单具体原因:区块链技术的发展应用将显著改善食品污染源数据追踪的困境。利用区块链云端系统,食品制造商可以依次在计算机储存各类过程的信息。[2019/9/29]

但是,在二进制中,“10”就是一个人的大拇指的数量。想象一下用你的大拇指数数:1、10、11、100、101、111、1000、1001……

如果这是你第一次了解二进制,可以用纸和笔自己算一下,可能会有帮助。这就像是第一次学习数数那样,而且还不能靠直觉。

十六进制指每一位数有16种可能。其中,a=10、b=11、c=12、d=13、e=14和f=15。

科普时报:区块链与云计算长期发展目标不谋而合:据《科普时报》今日报道,区块链与云计算两项技术的结合,从宏观上来说,一方面,利用云计算已有的基础服务设施或根据实际需求做相应改变,实现开发应用流程加速,满足未来区块链生态系统中初创企业、学术机构、开源机构、联盟和金融等机构对区块链应用的需求。另一方面,对于云计算来说,“可信、可靠、可控制”被认为是云计算发展必须要翻越的“三座山”,而区块链技术以去中心化、匿名性,以及数据不可篡改为主要特征,与云计算长期发展目标不谋而合。[2018/5/4]

就像扑克牌游戏一样,Jack=11、Queen=12、King=13、Ace=14或1。一个字母可以代表一个数字,这就是关键。

每一位数的可能性越多,表达一个大数字所用的位数就越少。例如,十进制下的2047,写成二进制就是11111111111,写成十六进制就是7FF。

财政部副部长朱光耀:数字经济还处在发展的过程中,要以科普、推动的态度来推进数字经济发展:今日,在中国发展高层论坛2018年会上,财政部副部长朱光耀表示:“数字经济还处在发展的过程中,要以科普、推动的态度来推进数字经济发展。也要关注数字经济的其他影响,包括税收征管、反监管措施等要跟上。”[2018/3/25]

总结:

扩展私钥是使用二进制私钥以及密语和衍生路径,根据你我都没必要知道的数学公式计算得出的。

请注意增加密语是如何彻底改变下游扩展私钥的。修改衍生路径也会改变下游数据。不要小看了你的软件钱包提供的默认衍生路径,请务必把它写下来保存好。我会另外写一篇文章来详细介绍衍生路径。

扩展私钥最终用来生成一个钱包中的所有比特币地址,而且可以花费这些地址上的比特币。如上图所示,扩展私钥可以生成多个独立私钥,每个私钥会生成独立的公钥,每个公钥又会生成一个地址。

扩展私钥还可以用来生成接下来要详细讨论的扩展公钥。

我们无法根据单个独立私钥倒推出扩展私钥。这是我个人的理解,但是我不是密码学专家,因此不能确定,不过这么想很合理。但是,每个独立私钥有可能指向后一个独立私钥,当然这点我也不确定。因此,为确保万无一失,别向任何人泄漏你的任何一个私钥。

可以确定的是,任何一个公钥都不会泄漏其对应的私钥。明白这一点很重要。

我在?https://iancoleman.io/bip39/?上生成了一个测试钱包。这个网站是练习生成虚拟钱包的好地方。

扩展私钥如下所示:

请注意,上图显示的是“账户”扩展私钥。我不知道这个网站为什么要这么标记。

再来看这个扩展私钥的开头是“x”。这意味着使用这个私钥将生成以“1”开头的传统地址。传统地址也叫作P2PKH地址。

使用以“y”开头的私钥会生成以“3”开头的地址。这些地址也叫作P2SH地址。

使用以“z”开头的私钥会生成原生的segwit/Bech32地址。这类地址以“bc1q”开头。

最后,以大写字母“X”、“Y”或“Z”开头的私钥会生成多签钱包的地址。

扩展公钥

扩展公钥的用途不是很明显。如果你仔细看示意图的底部,你会发现使用扩展公钥通过钱包软件生成的比特币地址与使用扩展私钥生成的一样,而且地址顺序相同。使用扩展公钥和扩展私钥生成的钱包看起来完全一样。那么区别在哪儿呢?

使用扩展私钥生成的钱包能够进行支付。

使用公钥生成的钱包无法进行支付。这种钱包通常被称为“观察”钱包。你可以将这个钱包放在安全性低的计算机上,不用担心会丢失私钥,但可以用来查看你的钱包余额,或是复制地址发送给其他人。

但你还是应该注意保护好自己的扩展公钥。一旦泄漏,其他人就可以通过访问你的扩展公钥来查询你的钱包余额和你的所有地址。从今往后,他们都可以查询你的钱包余额,就好像查询你的银行账单一样。

保护好你的金融隐私,更要保护好你的金融密钥。

注:扩展公钥如下图所示:

如上图所示,公钥不是以“xprv”开头,而是以“xpub”开头,另外也可以“ypub”、“zpub”、“Xpub”、“Ypub”和“Zpub”开头。

总结

我希望这篇文章能帮助你理解比特币的公钥和私钥,进而让你更容易理解比特币的运作原理。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

链链资讯

[0:0ms0-3:91ms