首页 > 世链号 > 第 5 章 公钥和私钥
3点钟资讯  

第 5 章 公钥和私钥

摘要:这里正是采用非对称加密真正精髓之处,用户的公钥是由私钥计算得来,而用户的私钥则反直觉的由用户自己生成。

本系列连载自《重新创造比特币》,它是一本比特币入门书籍,通过一个虚拟故事,让读者体验从零开始创造比特币的过程,从而理解比特币为什么如此设计。

重新创造比特币 | 第 5 章 公钥和私钥 (连载)

1. 公钥和私钥

那么用户的公钥和私钥又是如何生成的呢?

这里正是采用非对称加密真正精髓之处,用户的公钥是由私钥计算得来,而用户的私钥则反直觉的由用户自己生成。

用户如何自己生成一个私钥呢?
(备注:公钥私钥更加详细的技术讲解可以阅读 aaron67 的文章:[学习笔记] 比特币的私钥和公钥)

私钥的本质是一个数字,公钥的本质也是一个数字,如果把任何数字当成私钥,都可以利用椭圆曲线加密算法生成这个数字对应的公钥,即,Function 椭圆曲线加密算法 (私钥)= 公钥

如果让用户随机生成数字,并且数字的随机范围足够大,就可以避免两个用户生成了相同的私钥,即,私钥冲突。

多大的数字够用呢?

答案是 2 的 256 次方。

创建私钥本质上是“取得一个 1 到 2 的 256 次方之间的数字”。

你可以通过投 256 次骰子,并且用铅笔和纸张将结果记录下来。

结果看起来是这样:

111110010111110010001
00110101010101011001
111000011010000000
000000000000000
000000000000000
000000000000000
000000000000000
000000000000000
000000000000000
000000000000000
000000000000000
000000000000000
000000000000000
000000000000000
0000000000000000
0000000000000000

一共 256 个二进制的字符。为了让它看起来短点,我们将其转换成十六进制,这样就减少到了 64 个字符,每位代表 4 个 bit。(备注:一个二进制的数字就代表着 1bit。再进一步解释 bit 的定义是:可以让 50% 概率的事情变为 100% 的确定性的信息,这个信息所等价的能量就是 1bit。例如:在二进制中,下一个我要写的数字只能在 0 或 1 中选择,这时候下一个数字的概率就是 50%,如果我写出来了 1,那么这个 1 就是将 50% 的不确定性,变成了 100% 的确定性,这个 1 代表的就是 1bit 的能量,同理如果我选择的是 0,这个 0 同样代表着 1bit 的能量,也就是说将不确定性变为确定性,需要信息,而信息的形成需要能量,1bit 就是表示能量的大小) 转换成十六进制看起来是这样:f97c89aaacf0cd2e47d
dbacc97dae1f88bec49
106ac37716c451dcdd0
08a4b62 公钥是根据私钥计算得来,所以公钥也是一个很长的数字,用十六进制表示是这个样子:b4327ae841ca6cfd120
3cc6e135a48d893cbfb
2c388c0f64a79694199
cc9b4cb 为了方便使用,如果想再短些,我们还可以将其转换成 64 进制(base64)看起来是这个样子:1BJhat1AMGYbT9HYJxV
ekoCaPaqB9ZyTyF2 进制:1 个字符对应的范围是 0~1,有 2 个选择。16 进制:1 个字符对应的范围是 0~15,有 16 个选择。它由 0-9,A-F 组成。64 进制:1 个字符对应的范围是 0~63,有 64 个选择。64 进制几乎用上了我
们键盘上的所有按钮。理论上,如果我们制造一个按钮超多的键盘,什么星星,三角,方块,菱形,各种新符号,如果能凑齐 128 个,我们就可以实现 128 进制。只不过因为我们全球共识的通用字符也就比 64 多一点,所以就到 64 进制为止了。(备注:现实世界的比特币系统用的是 base58,是基于 base64 的改良版,技术细节推荐阅读:aaron67 的文章 [学习笔记] 比特币的地址) 2 的 256 次方是一个难以想象的大数,以十进制表示,它大概是 10 的 77 次方,而宇宙的可见部分,其组成也就大概 10 的 80 次方个原子。所以,通过随机碰撞出相同私钥的概率可以小到忽略不计。正是由于用户不通过服务端生成自己的私钥和公钥,服务端不会预先知道任何用户的存在,所以才可以舍弃账户模型,从根本上去掉了用户注册。
舍弃了用户注册和账户模型,服务端就变得难以限制用户的使用自由。用户以公钥示人,如果你不说没人知道某个公钥是谁的,除非你俩之间发生了交易,这种交易易名的方式实现了对个人隐私的保护。就这样,Bitcoin 朝着交易的更加自由,迈出了它的第一步!(备注:这里要注意,Bitcoin 的隐私保护是通过易名而非匿名,关于这个概念可以阅读邱少贤的《比特币重生-比特币隐私模型》
)夕阳透过窗子洒进了咖啡馆,它将屋子里的人都镀成了金色。中本聪还在全神贯注的盯着屏幕,敏捷的敲击着键盘。Gilfoyle 在一次又一次的投掷着硬币,每次硬币落到桌子上,他就用铅笔记录一次结果。中本聪一边盯着屏幕,一边问道:“你在干什么?”Gilfoyle:“我在生成我自己的私钥”。中本聪:“用计算机的随机算法生成,一秒钟就能搞定!”。Gilfoyle:“我不相信计算机,我只相信硬币”。

重新创造比特币 | 第 5 章 公钥和私钥 (连载)生成私钥


来源:比特币协会 BA
免责声明
世链财经作为开放的信息发布平台,所有资讯仅代表作者个人观点,与世链财经无关。如文章、图片、音频或视频出现侵权、违规及其他不当言论,请提供相关材料,发送到:2785592653@qq.com。
风险提示:本站所提供的资讯不代表任何投资暗示。投资有风险,入市须谨慎。
世链粉丝群:提供最新热点新闻,空投糖果、红包等福利,微信:msy2134。