我们经常看到各大媒体争相报道,比特币以及区块链具有去中心化、不可篡改、不可伪造的特点。这是为什么呢?我会在这一讲为你来解答。你不要被「比特币的技术来源」这个标题给吓住了,内容中只会稍稍涉及到技术,我会用尽量通俗的语言,为你讲清楚,比特币以及区块链去中心化、不可篡改、不可伪造这几个特点,到底是依赖什么技术得以实现的。
去中心化
首先,来说说作为比特币和区块链最重要的特性之一去中心化,是依靠什么技术实现的呢?我们都知道中心化是需要一个类似银行的中心机构来验证交易的。去中心化,本质上是让所有的节点都能验证交易的真伪,TA那依靠什么来验证呢?中本聪用了非对称加密技术。那么,非对称加密技术又是什么呢?TA是指加密和解密的时候使用不同密钥的加密算法。如果加密和解密使用相同的密钥,我们称为对称加密。对称加密不安全的地方在于,大家使用的秘钥如果相同,这个密钥就已经不安全了。
对于非对称加密,详细的描述是:A要向B发送信息,A和B都要产生一对用于加密和解密的公钥和私钥。私钥,好比一把私有的钥匙,只有钥匙的拥有者才能打开,是用来加密的。公钥,好比一把公开的钥匙,可以告诉给需要的人,是用来解密用的。在这个过程中,A的私钥保密,A的公钥告诉B;B的私钥保密,B的公钥可以告诉A。A要给B发送信息时,A用B的公钥加密信息。B收到这个消息后,B用B的私钥解密A的消息。其他所有收到这个信息的人都无法解密,因为只有B才拥有这把私钥。
这个听上去有点复杂,简单的说就是,公钥和私钥在非对称加密机制里是成对存在的,公钥和私钥可以去相互验证对方,那么在比特币的世界里面,我们可以把地址理解为公钥,可以把签名、输密码的过程理解为私钥的签名。每个矿工在拿到一笔转账交易时候都可以验证公钥和私钥到底是不是匹配的,如果他们是匹配的,这笔交易就是合法的,这样每一个人只需要保管好TA自己的私钥,知道自己的比特币地址和对方的比特币地址就能够安全的将比特币进行转账,不需要一个中心化的机构来验证对方发的比特币是不是真的。非对称加密技术保证了比特币的去中心化特点,当然还有分布式存储也同样保证了比特币的去中心化。
无法被篡改
第二,我们再来看看,为什么说比特币的区块链账本是无法被篡改呢?这里说的篡改是网络中为了弄虚作假而对账本进行恶意修改。这一点由比特币采用工作量证明机制和最长链机制来保障的。
我们在第2讲中提到过比特币的共识机制是 “工作量证明机制”,是一种对在差不多时间内发生的事务的先后顺序达成共识的一种算法。工作量证明,简单理解就是一份证明,用来确认你做过一定量的工作。监测工作的整个过程通常是效率非常低的,而通过对工作的结果进行认证来证明完成了一定工作的工作量,是一种非常高效的方式。比如现实生活中的毕业证、驾驶证等等,也是通过检验你完成了一定知识的学习或者驾驶过一定时间的汽车,来证明你的技能的,也就是说通过这个结果证明你曾经做过这件事,曾经耗费过工作量所谓的工作量。
工作量证明的特点,对于执行的一方来说,难度是适中的。对于验证方来说是非常容易被验证的。矿工们进行哈希计算,你可以理解为是一种数学的游戏。获得正确答案,就会获得记账权,其他节点经过非常简单的验证之后,就可以同意其记账,并同步账本。打上时间戳后,紧接着进行下一轮算力竞赛。
如果这时候有人想把某个区块高度上某个交易信息进行修改,TA需要做什么呢?TA需要从这个区块开始把之后所有的区块都重新计算一遍,把账本再同步给其他人。而在他进行计算的同时,其他矿工们已经在原来的链上继续往前进行记账了。因为在比特币的网络里,大家认为最长的链才是正确的链。这个恶意篡改的人,需要在很短的时间内赶上现有区块的高度,让自己的这条区块链成为最长的链,让其他矿工误以为这是正确的账本。
除非这个恶意篡改的人,拥有非常大的算力,至少超过50%,否则基本上没有可能进行这样的篡改。我们算一笔账,现在全网算力是8 E 哈希每秒,就是大概每秒进行8*10^18次计算,现在的流行的主流矿机大概每一台的算力是10T左右。如果你想拥有全网51%算力,你需要至少40万台最新的矿机,一台矿机价格按照10000元计算,光是设备这一项就需要投入40亿元人民币。况且,最新的矿机生产赶不上销量,经常处于买不到现货的状态。加上老矿机不断被淘汰,算力不断上涨。你购置设备的速度很难赶上算力上涨的速度。从投资回报率的角度来说,这项投资的成本需要至少40个亿人民币,如果TA不是为了6、70个亿以上的利益,并且TA有非常雄厚的经济实力和技术实力做支持,一般人也不会有这个动力进行算力攻击的。从网络大环境来看,前面我们也说过,由于去中心化的存在,整个网络非常警惕影响比特币这一情况出现。
曾经在网络上出现有一个矿池的算力接近50%,后来大家就逐渐把自己的算力连接到其他矿池上。其实,从经济学的角度来说,这种51%的攻击也是非常不科学的。我们试想下,当这个攻击的发生,比特币的区块链得到了篡改,比特币的价格将会变得一文不值。TA通过这个篡改获得的利益也会受到很大的损失。总而言之,想篡改比特币账本,简直是比登天还要难,同时也无利可图。
不可伪造
第三,来说说为什么说比特币不可伪造呢?也就是说不能造假币。我发给你0.1枚比特币,为什么你相信这枚比特币不是我自己伪造出来的,而是真的比特币呢?或者,你怎么相信我没有把这0.1个比特币同时转给了2个人或3个人呢?这和比特币的UTXO结构有关系。所谓“UTXO”(每个字母的意思在音频播放器最下方查询),具体的意思是未花费的交易输出,它是比特币交易生成及验证的一个核心概念。我用你非常熟悉的纸币来举个这个例子。假设我要给你20元钱,其中2张5元纸币,1张10元纸币。而我的这2张5元,来自水果店老板给我的找零,这1张10元来自加油站给我的找零,拿到这三张钞票之后,我还没有花出去,才能给你。这就叫未花费的交易输出。水果店老板的这2张5元钞票,又来自其他人,加油站的1张10元钞票,也可能来自于其他人。这样这些钞票,可以顺藤摸瓜一直追溯到发行的那一刻,由印钞公司根据央行批准发行出来,并首先发给了哪家银行,最后流通到市场上的。由此验证这三张钞票都是真的。
比特币的UTXO也是这样的结构。在比特币世界里的每一笔转账,都能够追溯到上一笔交易。每一笔付款,都可以追溯到上一笔的收款。我给你的0.1个比特币,必须是别人给我的、我还没有进行花费的比特币。然后可以一直往上追溯到它诞生时矿工挖出来的那个区块。这个机制,保证了比特币不可被伪造,不可以被重复支付。重复支付,在比特币世界被叫做“双花”,就是花了2次。在比特币之前,一直没有数字资产能够解决双花问题,而中本聪用这个机制,解决了这个信任问题,使得比特币能够被广泛的应用。
本文地址: https://www.xiguacaijing.com/news/baike/2018/77.html
赞助商