1
随着对比特币的了解越多,越发觉得比特币的发明及设计是如此的令人惊叹,所以总也忍不住好奇比特币到底是怎么被发明出来的。
说到比特币,那就不得不提一个人,中本聪——比特币的创造者,一个江湖中到处都是他的传说,但却坚持要把神秘主义原则诠释到底,只留给世界一个背影的区块链技术领域的先行者和开拓者。
众所周知,中本聪的传奇历史,同时也是比特币的问世,始于2008年的一篇论文《比特币:一种点对点的电子现金系统》,背景是基于2008年的全球经济危机,美国政府仗着自己的记账权无限增发货币,这让中本聪觉得很不靠谱,于是思考能不能有这样一种现金支付体系:不需要一个中心来记账,大家都有权来记账,货币不能超发,整个账本完全公开透明,十分公平。
中本聪之所以有这样的想法,就在于对于记账货币来说必须有一个记账方,这个记账方多数时候是银行或者第三方支付机构,这是一个中心化的记账方式,一旦银行等受到类似黑客的攻击,数据就有可能被篡改,除此之外,它高度依赖于银行的信用,存在不安全的可能。
但如果记账方由一个中心变为多个中心,由原来的只能银行记账变成人人都可以记账,是不是就解决了上述问题,这也就是“去中心化”概念,同时也是中本聪发明了比特币的由来。
2
相信到此你也知道了比特币产生的背景及要解决的问题,那么新的问题来了。
既然人人都能记账,怎么保证每个人手里的账本是统一的呢?如何保证账本不被坏人恶意修改数据呢?毕竟,谁都有权利记账,也就意味着谁都有可能作弊。
这时候,就引出了比特币底层所依赖的一个叫做“区块链”的系列技术集合,来保证账本不被修改。
中本聪制定出了一套规则:
1.规定比特币总量恒定为2100万枚
这也就解决了传统的中心化组织可以无限发行货币,导致通货膨胀的问题。
2.那如何发行比特币呢?
中本聪把比特币发行与记账行为绑定在了一起,谁获得一次记账权,就会得到系统产生的新的比特币作为奖励。通常我们把通过竞争获得记账权的过程称为“挖矿”,而竞争挖矿(也就是记账)的人或组织称为“矿工”。这也解释了为什么大家要竞争记账。
3.记一次账对应一个区块的产生,也就是一页账单的生成,同时也是比特币的发行,那为了获得比特币,大家都抢着记账,怎么决定最终谁有记账权?
规定每10分钟出一页账单,即产生一个区块,这里先说一下,所谓的区块,就是平均每10分钟网络诞生账本的一页。在这10分钟内,大家要竞争记账权,通过解答数学题的方式,谁先解答出来谁就拥有了记账权,这中间有个“算力”的概念,即计算出数学难题答案的速度和能力,在比特币系统中,是计算机做随机的哈希碰撞来争夺记账权。
为什么要规定10分钟出一个块呢,可以理解为中本聪综合考虑了效率,网络延迟,宽带,安全等因素,10分钟是一个当时相对合适的时间,可以让大家有充分的时间同步所有的信息。
毫无疑问,算力越高,解答出难题的概率就越大,获得记账权的概率也就越高。这种为了获得记账权付出了工作量,依靠工作量来证明记账权达成的共识机制叫做“工作量证明”,简称POW。
简单理解,所谓的“工作量证明”,就是一份证明,用来确认你做过一定量的工作。比如现实生活中的毕业证、驾驶证等等,就是通过检验你完成了一定知识的学习或者驾驶过一定时间的汽车,来证明你的技能的。也就是说通过这个结果证明你曾经做过这件事,曾经耗费过所谓的工作量。
4.每次记账单的人能获得多少新比特币作为奖励呢?
最开始每个区块的奖励是50枚比特币,然后每21万个区块,也就是大概每4年减半一次,一直到2140年全部奖励完,也就是比特币全部发行完毕。目前的比特币奖励数量为2016年7月8号开始进行第二次减半之后的12.5枚。
5.如何判断什么时候减半?
根据区块高度,一个区块的高度是从比特币诞生以来,第多少个区块!通过区块高度,可以计算出大概还有多久,比特币会进行下一次减半、多久会进行难度的调整、多久进行一次大事件。
区块中包含什么信息呢?
大体来说两部分:第一部分信息是这个区块的身份信息 。包括这个区块诞生的时间、是第多少个、哈希值是多少、整个区块大小多少。这些信息证明了这个区块是正确的,是沿着上一个区块往下的区块 ,也给下一个区块提供了验证身份的信息。
区块的第二部分信息是这段时间内产生的网络里的交易,也就是这个账本的里记录的每一笔交易。注意,这里说的 “交易”,是指你给隔壁老王在某个时间点转了 N 个比特币的时候,这样的转账信息,不是我们说的用法定货币兑换比特币这样的买入卖出交易。
5.随着新生比特币每四年减半,新生比特币奖励越来越少,那么矿工还有动力挖矿吗?
答案是肯定的。因为矿工们挖矿除了系统产生的新比特币作为奖励外,还有另外一部分收入,就是大家给的比特币转账的手续费。随着使用比特币的人和机构越来越多,全球比特币转账越来越频繁,转账手续费总量也会越来越大,手续费会成为未来矿工的主要收入来源。
3
看到这里,还是不知道如何保证账本的统一及防止数据的篡改的话,继续往下:
我们知道比特币最重要的特性之一是:
去中心化
表现在于人人都能记账,每个人对应的每个节点在比特币系统中都是平等的,之前的中心化记账是由类似中央银行的机构来验证交易的,那去中心化的本质就是让所有节点都能验证交易的真伪。
依靠什么来验证?
中本聪使用了非对称加密,就是指加密和解密的时候使用不同秘钥的加密算法。
举个例子:A 要向 B 发送信息,A 和 B 都要产生一对用于加密和解密的公 钥和私钥。A 的私钥保密 ,A 的公钥告诉 B;B 的私钥保密,B 的公钥可以告诉 A。A 要给 B 发送信息时,A 用 B 的公钥加密信息。 B 收到这个消息后, B 用 B 的私钥解密 A 的消息。其他所有收到这个信息的人都无法解密,因为只有 B 才拥有这把私钥。
公钥和私钥在非对称加密机制里是成对存在的,公钥和私钥可以去相互验证对方。
这又让我想到了关于中本聪的传说,比特币历史上出现过好几次因为“中本聪”这个名字引起的大事件,因为中本聪实在是太神秘了,全世界没人见过中本聪,也没有人听过他的声音,FBI和全世界的媒体都在找他,但谁也没找到,直到一天一个澳大利亚企业家克雷格·史蒂芬·赖特站出来声称自己就是如假包换的比特币创始人中本聪,并出示了一笔交易来证明,那么他真的就是中本聪吗?人们会相信他吗?如何证明?
其实,要证明自己是中本聪很简单,只需要使用“创世区块”里的私钥对“创世区块”的公钥签名,随意使用什么签名文本都无所谓,因为“创世区块”的私钥一定为比特币的发明人所有。
结果不言自明,当然最后假中本聪事件还是被真中本聪的一封邮件给平息了,他在邮件淡定地说道“我不是克雷格·赖特,我们每个人都是中本聪”,转身又留给世界一个背影,在江湖上留下他的传说,好帅有没有?
这下我们知道,非对称加密技术保证了比特币的去中心化特点 ,当然还有分布式存储也同样保证了比特币的去中心化。
接着我们看比特币的另一特性:
无法被篡改
区块链技术如何保证账本无法被篡改? 或者为什么说区块链账本是无法篡改的?
这一点由比特币采用的工作量证明机制和最长链机制来保障。
工作量证明机制,上面说过了,是 一种对在差不多时间内发生的事务的先后顺序达成共识的一种算法。
工作量证明的特点,对于执行一方来说,难度是适中的,对于验证方来说却是非常容易被验证的,也就是说“解起来困难而验证容易”。
举个例子,可以把矿工们为获得记账权进行的哈希计算用大家比赛完成一个同等混乱程度的魔方的还原来代替,可能完成魔方的还原需要投入一定的精力,但验证魔方是否还原完成却一眼就可以验证。
在矿工挖矿成功获得记账权,也就是第一个成功还原魔方的人出现后,其他节点进行简单验证之后(其他人对该魔方进行验证)就可以同意矿工记账,与此同时大家同步自己的账本,紧接着开始下一轮算力竞赛,也就是开始新的一个魔方的还原竞赛。我们可以理解为每一页账单都对应有一个还原好的魔方。
补充一下:各个区块打包之后,会打上时间戳,按照严格的先后顺序,跟之前的区块连接起来,(这里需要知道,每个区块都会包含上一个区块的唯一标识值,一直可以追溯连接到创世区块),这也是区块链的由来。
如果某个人想要篡改区块链中的某一条交易信息,那么这条交易信息对应的区块就会随之改变,那么当前区块之后的下一个,下下一个…区块也会随之改变。
上面说了,每个区块都会包含上一个区块的唯一标识值,这个标识值的重要特性就是一旦上一个区块的信息有任何改变,原来的标识值就会立马失效,所以要篡改的人需要从当前区块开始把之后所有的区块都重新计算一遍, 把账本再同步给其他人。
也就是说需要把当前这页账单连同之后所有账单所对应的魔方都还原好,再赶上大家的进度并领先完成,要知道,他进行计算的同时,其他矿工们已经在原 来的链上继续往前进行记账了。 因为在比特币的网络里,大家认为最长的链才是正确的链。这个恶意篡改的人,需要在很短的时间内赶上现有区块的高度,让自己的这条区块链成为最长的链,让其他矿工误以为这是正确的账本。
除非这个恶意篡改的人,拥有非常大的算力,至少超过 50%,否则基本上没有可能进行这样的篡改。回到拼魔方的例子,两种情况,一是你是世界高手,每次都能第一个拼出来,秒杀其他人,然后修改数据,当然这种情况下会导致大家拼命的提高自己的技术;二是你没有完成魔方的还原,但贿赂所有参加魔方还原比赛的其他人,同意你已经完成, 可以获得记账权,但这样做也会让大家放弃比赛,那你的行为也将变得毫无意义。
另外,从经济学的角度来说,这种 51%的攻击也是非常不科学的。首先想拥有51%的算力需要非常雄厚的经济实力和技术实力做支持,其次当这个攻击的确发生,比特币的区块链得到了篡改,比特币的价格将会变得一文不值。通过这个篡改获得的利益也会受到很大的损失。总而言之,想篡改比特币账本,简直是比登天还要难,同时也无利可图。
最后,我们再来看看比特币的另一特性:
不可伪造
如何保证一笔交易中的比特币不是伪造出来的,而是真的比特币呢?或者如何保证一笔交易中的一个比特币没有同时转给两个人或者三个人呢?
这就不得不提到UTXO(Unspent Transaction Outputs),所谓“UTXO”,具体的意思是未花费的交易输出,是不能再分割、被所有者锁住或记录于区块链中的并被整个⽹络识别成货币单位的⼀定量的⽐特币货币。它是比特币交易生成及验证的一个核心概念。
注意:在⽐特币的世界⾥既没有账⼾,也没有余额,只有分散到区块链⾥的UTXO。
用我们非常熟悉的 纸币来举例帮我们理解UTXO,假设我要给你 20 元钱,其中 2 张 5 元纸币,1 张 10 元纸币。而我的这 2 张 5 元,来自水果店老板给我的找零,这 1 张 10 元来自加油站给我的找零,拿 到这三张钞票之后,我还没有花出去,才 能给你。
这就叫未花费的交易输出。
水果店老板的这 2 张 5 元钞票, 又来自其他人,加油站的 1 张 10 元钞票,也可能来自于其他人。这样这些钞票,可以顺藤摸瓜一直追溯到发行 的那一刻,由印钞公司根据央行批准发行出来,并首先发给了哪家银行, 最后流通到市场上的。由此验证这三张钞票都是真的。
比特币的 UTXO 也是这样的结构。在比特币世界里的每一笔转账,都能能够追溯到上一笔交易。每一笔付款,都可以追溯到上一笔的收款。我给你的0.1个比 特币, 必须是别人给我的、我还没有进行花费的比特币。 然后可以一直往上追溯到它诞生时矿工挖出来的那个区块。
这个机制, 保证了比特币不可被伪造,不可以被重复支付。重复支付,在比特币世界被叫做“双花 ”, 就是花了2 次 。 在 比特币之前 , 一直没有数字资产能够解决双花问题,而中本聪用这个机制,解决了这个信任问题,使得比特币能够被广泛的应用。
4
最后,基于上面所讲述的一系列区块链技术原理,比特币完美的实现了价值传递,所谓的价值传递,完全不同于互联网的信息传递。
众所周知,在互联网上,我们可以轻易的传送信息。不论你是在美国,还是在非洲,只要有互联网,就能实现点对点的信息传递。但是互联网传递信息的方式是复制,比如你有一张照片,发给了你的朋友,其实不是传递给了朋友,而是发给了他一份副本。
互联网这种副本的信息传递方式,在诸如版权、货币、票据等价值载体的传递中会出现问题。因为我们不可能传递给别人一份带有版权的文档之后,自己手里还有一份。举个极端的例子,你给别人转过去一笔钱,你不可能自己再拥有这笔钱的。
价值的传递和信息的传递,不一样在于:价值的传递要求信息的传递与价值的传递同时进行。而比特币所带来的区块链,在一个没有中心化机构的情况下,实现全球范围的价值传递,如何互联网将人类社会带入了信息时代一样,比特币所带来的区块链将有可能带领人类进入一个全新价值交换时代。
小结
关于比特币,关于区块链,还有很多值得我们探索的技术及知识,希望这篇文章可以帮助更多人了解比特币的基础原理,进入区块链世界的大门。
感谢您的阅读,欢迎你的关注,希望我们一起深耕,一起收获!
---------------------------------------
我是(币圈娜姑娘)李拉拉(微信号:lina_lala),一个职业编程妹子、区块链研究者、跑步健身爱好者,期望与您一起学习,一起进步!
喜欢记得点赞关注哦!
网友评论