作者:史中创造Bitcoin的中本聪,大概拥有110万枚Bitcoin。如果按照最近Bitcoin6万美元一枚的价格,中本聪有660亿美元。这么算的话,目前的世界首富毫无疑问是——马斯克。。。对,马斯克的身家大概是2100亿美
作者:史中
创造Bitcoin的中本聪,大概拥有110万枚Bitcoin。
如果按照最近Bitcoin6万美元一枚的价格,中本聪有660亿美元。这么算的话,目前的世界首富毫无疑问是——马斯克。。。
对,马斯克的身家大概是2100亿美元。即便你有110万枚Bitcoin,还是不及马斯克三分之一。
但问题是,马斯克的钱,人家一分也不给你啊。。。
你可能被整笑了:“中本聪的钱能给我是咋的?”
诶,他不给,你可以自己拿啊!
严格来说,你把马斯克的钱拿走,肯定会犯法;但是你把中本聪的币拿走,不会犯法。
最近有点儿时间,中哥就出一个教程,手把手教你把中本聪的币拿走,让我们开始吧!
我猜很多人的选择都是一样的:不声张,找个地方把金币藏起来。
接下来才是真正的难题:藏哪?
床底下?大衣柜?保险箱?微波炉?糕点盒?去院子里挖个坑埋了?上面再放一只死狗,上面再种一株珍稀植物?
这些地方当然都可以,但都有一定概率被其他人发现,只是概率有大有小。放在这些地方,你都不能百分百放心,肯定晚上睡不好觉。
其实,中本聪在构想Bitcoin大厦时,首先就是要解决这个“基石”问题:
能不能设计一个空间,让你、我、他可以在里面放心地藏金币嘞?
如果用沉重的钢筋混凝土造一个这样的世界,那成本肯定海了去了。于是,中本聪选了一种完全没有重量的东西——数字。
这个数字世界是什么样的呢?
咱们继续来想象:
你手里捧着小饭盒,面前有两扇门,左边写着0,右边写着1。
穿过这扇门,又有两扇门。
以此类推。
其实不是藏,大喇喇放地上就行。
本质上你的门没有“上锁”,也不用钥匙。
非要说的话,这个开门的顺序就是你的钥匙。
(二)做一次Bitcoin宇宙里的“赌狗”?
每次你有2个选项,要连选256次,所以可能的情况总共有2个。
算一下,这个数是:
115,792,089,237,316,195,423,570,985,008,687,907,853,269,984,665,640,564,039,457,584,007,913,129,639,936
这个数有多大呢?约等于1后面跟77个零。
这基本赶上了宇宙中的原子数量。
你不妨这样理解:Bitcoin用数学做了个“魔法”,把宇宙中每一个原子都变成了一颗星球。
你随便登录一颗星球,它恰好是另一个人登陆过的,可能性微乎其微。
说白了,如果用世界上最快的计算机一个星球一个星球地遍历尝试,你要想确定性地登陆中本聪那颗星球,(运气差的话)最多得耗费几十亿年。
这里介绍一个“信息熵”的概念。
所谓信息熵,可以理解为信息被“瞎蒙”出来的难易程度。越容易被蒙出来,信息熵越小。
而中本聪设计的这个“Bitcoin宇宙”,信息熵极大。
但即便如此,如果运气够好,你仍然可能在尝试的第一次就碰巧登陆了中本聪星球!
就算天王老子来了,这种撞大运的概率也不!为!零!!
其实不是多出来3个数,是少了8个数。
后面8个数,需要我们对前面256个数字进行计算才能得到——它的学名叫做“校验和”。
第二步:揉面。
我们要对前面256个数字进行一种名叫SHA-256的运算。
你可以把SHA-256理解为一个方程,任何一个数输入进去,它都能给出一个结果,而且这个结果还很规整,一定是长度为256位的二进制数。
这个方程非常复杂,充斥着各种杂糅和重复。
它有点儿像我们揉面,本来分离的面粉,经过反复揉搓最后就变成了一整个面团。
这个面团就叫“哈希值”(Hash)。
如果你有Mac电脑,可以打开“终端”,然后把下面的指令复制进去,一回车就能得到结果。
echo0100001111110101110110010010000010100110100010000100011100010110110010011011111010000011110010000011011111001000010101000001011101100110000110111000010011011011110011100101011110011010000010011100000100001001000001110011100111101011100011001110101101110001|shasum-a256-0
如果你是Windows电脑,不太方便,你就直接让ChatGPT帮忙算就好了。
因为一旦选定了前面的256个数,后面的8个数字就是确定的嘛,没有信息增量。
但如果你不小心把前面的数字抄错了,校验和就会变化,Bitcoin钱包就可以提醒你输错了——“校验”的意义就在于此。
看到这儿,最难的部分其实已经过去了。
接下来就是验证我们是不是押中了中本聪钱包的“开奖时刻”!
具体来说,刚才那串数字等于这些单词:
dumbputelseescapelovemergecheapsparesightsaladbenchconductgiantsecondhundredslaboldevokedrasticattackpactshoepunchchild
这就是你的“助记词”。
注意,这个助记词的“信息熵”和你最开始掷骰子选出的256个字还是一样的,也是可以相互转化的。
只不过在现实中,大家还是习惯用英文的,咱们就入乡随俗。
接下来,咱们去下载一个支持Bitcoin的数字钱包,把这24个助记词输入进去。
开奖时刻来了。
当当!这个星球上Bitcoin的余额是——0。
星星上有两座活火山,一座死火山,有一些毛虫、有风,有一些杂草。总之,这是一个普通到极点的星星。
但是小王子的家在那里,因为在这个小小星球上,有一支玫瑰。
有了这个玫瑰,B-612对于小王子来说,就瞬间不同于其他所有的星星。
这便是“意义”浮现的过程。
(四)从门到窗:卡宇宙的Bug
只要叫“转账”,就得有个基本特点:我可以主动转给你,但不能强迫你转给我。
它是一种不可逆的单向能力。
单向的能力,一般要基于“单向的结构”。
A点坐标经过x次的变换可以轻松推出B点坐标,
但是用B点和A点这两个坐标却不能推倒出x这个数是多少。
私钥变成公钥,就像面包做成热狗。
虽然“私钥”“公钥”“椭圆曲线”之类的名字高大上,但本质上,这就是数学家们先发现了宇宙的一个Bug,中本聪又发明了一个系统,疯狂卡这个Bug。
公钥转化成地址,就像热狗变成了套餐。
这个亲妈都不认识的数字,就称为你的“钱包地址”。
我们总结一下:
1、每个钱包地址都对应着一个公钥,而每个公钥又对应着一个私钥。换句话说,你选定了一个私钥时,冥冥之中你的公钥和地址都已经确定了。
2、只不过,别人拿到你的地址也反推不出你的公钥,拿到你的公钥也反推不出你的私钥。你的币永远只能由掌握私钥的人(你自己)来支配。
4、而且窗户是透明的,人人都可以看到里面。也就是说,你只要知道一个地址,你就能看到里面有多少币,不仅如此,历史上每一次有币进出,数量、时间也全都记录在案。
想象一下:
你好不容易撞了宇宙级狗屎运,找到中本聪的钱包,把币转给了自己,成了Bitcoin大亨。
但有坏人通过这些动账信息定位到了现实生活中的你,用最高效的破解方法——枪——逼着你把私钥交出来。
那数学世界里“门&窗”的设计再精巧,有卵用否?
中本聪早就想到了这个问题,他的解决方案是“一次性星球”。
这是个天才的构想,只不过在具体的实现方案上,稍微有点儿“失水准”。
我们一起来看看。
(五)“次抛星球”和“隐秘的丝线”
假设:我在“A星球”上有2个币,现在我想给小王子的星球转1个币。
这时,我必须得先找好另一个星球,就简称“B星球”吧。
小王子会告诉我他的“星球地址”。然后我发起转账。
注意!此时这2个币都会从我的A星球的门出去,其中一个币通过窗户落进小王子的星球,另一个币会通过窗户落入“B星球”。
这样一来,所有的钱都是“看上去没被花过的钱”。(有点绕,你品品)
它的好处很明显:如果有坏人想要追踪某个地址的资金流,他就很难判断到底哪个是收款星球,哪个是找零星球。
当然人的行为还是有深层规律的。如果使用大数据,有可能发现蛛丝马迹,我们在《Bitcoin追凶》和《暗网生死疲劳》里,都讲过这个技术劈开黑暗拯救世界的故事。
但毕竟,追踪的难度大多了,你要不是什么十恶不赦的大坏蛋,不会有人花这么大的代价分析你的Bitcoin资金流。
UTXO是一个天才的设计,但这里有个非常不优雅的特性,那就是你每次转账,都得换一个星球(地址),都得重新记录一次私钥,万一搞丢了最后那个私钥,你的币就永远留在那个星球上了。。。这太瘆人了呀!!
中本聪的意思是,想要安全,就得这么搞,别BB了。
他设计的Bitcoin钱包软件里,预留了100个星球的位置,也就是可以放100个私钥,一次转账就废掉一个。100个用完,你还得重新放进去100个。
前两样你已经有了,序号是啥?你可以简单理解为就是:1、2、3这样的顺序。
这三样输入派生算法,你会得到一个“B星球”的私钥,同时也会得到“B星球”的链码。
对于一个固定的星球来说,私钥和链码都是永远不变的。但序号你可以随便改。
所以只要把序号定为1、2、3、4、5,你就可以为A星球派生出B、C、D、E、F五个星球。它们是A星球的“子星球”。
如果你去B星球,用它的私钥和链码再派生出G、H、I、J、K五个星球,它们就是B星球的“子星球”,是A星球的“孙星球”。
在外人看来,所有的星球都一样,但是从你“月之暗面”的角度看,却像蜘蛛侠一样,用无数隐秘的丝线把这些星球串联起来。
2、子星球之间,也并不知道彼此的存在。
由于计算子星球需要“父私钥”、“父链码”和“序号”,这三个要素子星球都不知道。从子星球的角度看,它就是这样孤独地存在着,跟谁都没有关系。
这样设计的精巧之处在于“最小化关系链”:
1)坏人即便知道了你的某个星球的公钥,也不能推算出它和哪些星球是兄弟关系;
2)坏人即便偷到了你的某个星球的私钥,由于不知道链码,它也只能动这个星球上的币,不能动它的下级星球的币;
3)就算某个星球的私钥和链码都泄露了,坏人也只能动它的下级星球的币,层级比它高的一律动不了。但是,这里有个小问题,如果使用公钥和链码,是有可能推出所有子星球的公钥的。虽然只有公钥不能动账,但是却可以了解所有子星球的谱系关系。
你还记得我们之前卖的关子吗?
由于中本聪谨慎的设计,他没有把公钥直接当做地址,而是又做了两层加密才生成地址。
这就在“公钥”前面又加了一层黑洞,即便是公钥也不可能从地址被推算出来,这就让黑客即便只是倒推“分层钱包之间的关系”,也是不可能的。
如果向前追溯,一颗玫瑰的种子随机飘到了小王子的B-126星上,那才是所有的开端。
重要的是:你我这样的普通人,也和小王子一样。
我们平等而泯然,却拥有各自的狐狸、各自的玫瑰。而这种特殊,可能只源自某个谁也不能预先知道的种子,也许是——256次掷骰子。
真正重要的东西,眼睛是看不见的。
作家陈春成写过一篇短小的故事,《竹峰寺》。
在特殊的历史时期,竹峰寺住持为了防止镇寺之宝“蛱蝶碑”被毁,趁着夜色把它藏起来。
从此,这块石碑好似人间蒸发了,即便历史已改换了旋律,它也继续沉寂,再不露真容。
几十年后,“我”来寺庙小住。因为我的老屋已被拆迁,仅剩一把钥匙,作为和孩提时空的玄妙连接。我私心想在寺庙附近找到一个绝对安全的地方把钥匙藏起来。
“我”想把钥匙藏在一个无人知道的,千秋万载不会动摇的地方。只要不去取它,就能一直藏到世界末日。但又不能把钥匙扔进湖中或悬崖下,必须要“我”想取,就能够取到的地方。
什么时候来取,不一定,但这种可能性必须保留。这一点可能性会将我和它永远地联系在一起。
“我”苦心寻找藏钥匙的地点,却意外参悟了老住持的心意,于是,两个“藏东西的人”,跨越几十年的时光走到了一处。
原来,几十年前的夜里,老师傅和信赖的徒弟一起到寺庙外的小溪上,把小石桥搬走扔进山涧,用“蛱蝶碑”铺在原处取而代之。
这些年,各色寻找蛱蝶碑的人都从上面匆匆行过,无一人参透真相,而碑上的经文却默默驮负,摆渡了无明众生。
“我”摸黑走到了桥底,借手电微光饱览了“蛱蝶碑”威严婉丽的文字,最后一次握紧连接着故乡旧时光的钥匙,把它塞进了桥墩的缝隙。
“我”当然没有告诉任何人,两个秘密就此同眠。
在这个世界上,知道中本聪私钥的人只有中本聪吗?
想到这个问题,我脑海里划过一道闪电。
中本聪的110万个Bitcoin,如今已经成了Bitcoin世界的“定海神针”,它们如果永远沉睡,一切都会继续。
一旦其中有一个币被移动分毫,都会让所有人恐慌,因为这些“星球”的复活意味着中本聪不仅在世,而且可以甩卖掉所有的Bitcoin。不用真的卖,这个“可能性”已足够让Bitcoin的价值共识崩塌。
事实是,这些年中本聪的钱包地址如死去的火山一样沉寂。
那些星球的岩浆已经凝结,窗棂沉默黯然,只是时不时有些Bitcoin信徒向里面投一些币,仿佛以此能贴近这位神秘的“造物主”,聊表敬意。
这个世界上正在活着的人,已经死去的和尚未出生的人,他们曾经或将会发现中本聪的遗藏吗?
假如真有绝顶聪明的人,破解了中本聪的某一颗私钥,面对放在星球上价值连城的Bitcoin,他最好的选择是什么?
没错,当然是在此驻足片刻,然后悄然离开,让这个秘密在时间的浪涌中继续长眠。
我们的世界线不会因此产生任何波澜。
唯有他知道,在那个瞬间,自己曾与一个骄傲的灵魂对视。