浅谈比特币(3)——比特币几大特点的技术基础
去中心化
在传统的金融体系里,人们需要一个类似银行的中心机构来验证交易的。这种集中验证交易的方式是中心化的。 去中心化,本质上是让所有的参与者都能验证交易的真伪。比特币是如何实现去中心化的,就是采用了竞争记账和全网见证的方式,这一点可以参看《浅谈比特币(2)——比特币的挖矿与转账》。其中,非对称加密技术在这一过程中起了很大的作用。
非对称加密技术是指加密和解密的时候使用不同密钥的加密算法。如果加密和解密使用相同的密钥,我们称为对称加密。
下面先举个例子来简要说明一下对称加密的工作过程。甲和乙是一对生意搭档,他们住在不同的城市。由于生意上的需要,他们经常会相互之间邮寄重要的货物。为了保证货物的安全,他们商定制作一个保险盒,将物品放入其中。他们打造了两把相同的钥匙分别保管,以便在收到包裹时用这个钥匙打开保险盒,以及在邮寄货物前用这把钥匙锁上保险盒。对称加密不安全的地方在于,大家使用的秘钥如果相同,这个密钥就已经不安全了。
对于非对称加密,可用下面例子:甲和乙都要有邮箱地址,这就是两个人的公钥;每个人的邮件地址对应着自己的密码,即公钥对应的私钥。公钥和私钥在非对称加密机制里是成对存在的,公钥和私钥可以去相互验证对方。甲要向乙写邮件,在这个过程中,甲的邮箱密码不公开,但甲的邮箱地址告诉乙;乙的邮箱密码保密,邮箱地址可以告诉甲。甲向乙发送邮件时,需要乙的邮箱地址来加密信息,而乙只有用自己邮箱地址对应的密码才能解密信息。在比特币的世界里面,我们可以把地址理解为公钥,可以把输密码的过程理解为私钥的签名。就是甲要给乙发送信息时,甲用乙的公钥加密信息。乙收到这个消息后,乙用乙的私钥签名来解密甲的消息。其他所有人都无法解密,因为只有乙才拥有这把私钥。
每个矿工在拿到一笔转账交易时候都可以验证公钥和私钥到底是不是匹配的,如果他们是匹配的,这笔交易就是合法的,这样每一个人只需要保管好TA自己的私钥,知道自己的比特币地址和对方的比特币地址就能够安全的将比特币进行转账,不需要一个中心化的机构来验证对方发的比特币是不是真的。
非对称加密技术保证了比特币的去中心化特点,当然还有分布式存储也同样保证了比特币的去中心化。
无法被篡改
比特币无法被篡改的特点是由比特币采用工作量证明机制和最长链机制来保障的。
比特币的共识机制是 工作量证明,,简单理解就是一份证明,用来确认你做过一定量的工作。通常来说,我们如果要监测工作的整个过程,将会是非常耗能和低效的,而通过对工作的结果进行认证来证明完成了一定工作的工作量,是一种非常高效的方式。现实生活中的毕业证、驾驶证等,就是一种工作量证明,通过检验你完成了一定知识的学习或者驾驶过一定时间的汽车,来证明你耗费过相应的工作量。
比特币矿工的工作量证明,是哈希计算的答案。哈希计算,你可以理解为是一种数学的游戏,矿工通过这个计算来竞争记账权。获得正确答案,就说明你为这个计算付出了一定的工作量,其他节点经过非常简单的验证之后,就可以同意其记账,并同步账本。打上时间戳后,紧接着进行下一轮算力竞赛。
在比特币的网络里,大家认为最长的链才是正确的链。如果这时候有人想把某个区块高度上某个交易信息进行修改,他需要从这个区块开始把之后所有的区块都重新计算一遍,把账本再同步给其他人。而在他进行计算的同时,其他矿工们已经在原来的链上继续往前进行记账了。这个恶意篡改的人,需要在很短的时间内赶上现有区块的高度,让自己的这条区块链成为最长的链,让其他矿工误以为这是正确的账本。除非这个恶意篡改的人,拥有非常大的算力,至少超过50%,否则基本上没有可能进行这样的篡改。
从网络大环境来看,由于去中心化的存在,整个网络非常警惕篡改比特币这一情况出现。从经济学的角度来说,这种51%的攻击也是非常不划算的——假设篡改者付出巨大的成本获得了超过51%的算力,当他发出攻击篡改后,比特币的价格将会变得一文不值,篡改者的利益也会受到很大的损失。总而言之,想篡改比特币账本,简直是比登天还要难,同时也无利可图。
不可伪造
比特币的UTXO结构使得它不可伪造。在比特币之前,一直没有数字资产能够解决重复支付,即双花的问题。中本聪用UTXO机制,解决了数字货币的重复支付,从而解决了这个信任问题,使得比特币能够被广泛的应用
UTXO,英文全称为Unspent Transaction Outputs,具体的意思是未花费的交易输出,它是比特币交易生成及验证的一个核心概念。
比特币的UTXO是这样的结构:在比特币世界里的每一笔转账,都能够追溯到上一笔交易。每一笔付款,都可以追溯到上一笔的收款。我给你的0.1个比特币,必须是别人给我的、我还没有进行花费的比特币。然后可以一直往上追溯到它诞生时矿工挖出来的那个区块。这个机制,保证了比特币不可被伪造,不可以被重复支付。
Please upvote, resteem and follow me if you like it!
@alexma