【本文由赞我(zaneds.com)独家冠名】
这个系列分为两部分。今天先更第一部分。
如今,人人都在谈论比特币。我们这篇文章不是告诉你如何从比特币中赚钱。我将试图帮助你理解让比特币起作用的底层技术-区块链,以及在未来几十年区块链将如何发挥作用。
历史概述
2008年10月31日,一位名叫中本聪(Satoshi Nakamoto)的匿名人士或组织发表了一份白皮书,解释了一种不涉及任何金融中介机构、直接将资金从发送人到接受人的新方法。
论文给这个概念起了个名字——比特币。由于比特币使用了一些加密的基本概念,这种新的货币交换方式被归类为加密货币。比特币的唯一用途是用于金融交易,但研究人员意识到,它的基础技术可以被用来构建其他安全、强大的应用程序,从而彻底改变当前系统的工作方式。“区块链”是这个基础技术的名字。看上去很技术化是不是?今天让我们使用一种可以讲个五岁孩子的方式去试着阐述下什么是区块链。
什么是区块链?-一个真实世界的类比
假设你住在一个城市,这个城市有一个很大的停车位,一次可以停放200辆车(假设这个停车位只有一层)。这个停车位有一个大门,大门是锁着的,只有当汽车进进出出时才会打开。现在让我们从不同的角度来分析这个停车场建筑
价格:
这个停车场是由私人公司专为停车而建,所有的维修费用由业主公司承担,所以如果租赁一个停车位,租金会很高。
安全:
如果小偷进入了大门,他们可以很容易地进入你的车(偷走轮子,燃料,或者损坏刹车,任何东西!)
规模:
如果你所在城市的汽车数量从200辆增加到300辆,停车场将不会有足够的空间容纳所有的汽车,一些其他的私人机构将不得不建立一个新的停车位。
值得信赖的:
每个人都信任这个停车位的建筑公司,他们负责保证你的车辆的安全和可靠性。
中心化:
因为所有的车都在一个大楼里,我们可以把它看作是一个集中的停车场。
现在,让我们修改一下当前的场景。想象一下,在你的城市里有200座房子,所有的200座房子都有两个车库。为了让我们的说明更简单一些,我们假设每个房子只有一辆车)。所以,每个房子都有一个空车库。现在,假设这个城市的人们决定把额外的车库出租给任何需要停车的人。这种提供车位的模式可以解决200辆以上的车位的问题(如果人们迁入迁出城市),不需要为整个城市建立任何更大的车库。让我们再次分析这个场景-
价格:
由于人们并不是专门为了租赁而建的第二个车库,维护费用也会比较低,所以额外空间的租金相对于大的中央停车场来说会比较低
安全:
每辆车都被锁在不同的车库里,因此窃贼必须打开所有的车库里的锁才能进入汽车,从而提供更多的安全保障。(区块链中的安全性有点不同,但为了简单起见,现在让我们这样考虑它!)
规模:
随着房子数量的增加,假设每个新房子都有额外的车库空间,那么容纳更多汽车的空间就会不断增加。因此,承租人和出租人的数量也会越来越多。
无信任:
由于没有中央机构控制这些分布式停车位,我们假设所有参与的车库业主都会制定规则来出租他们的车位。
去中心化:正如前面提到的,这些停车位分布在城市的各个角落,我们可以把它看作是分散的停车场。
上面的类比为理解区块链的实际技术基础提供了基础。
停车模式到技术模式
停车模型展示了一些真实世界中区块链的基本概述。现在,让我们尝试将我们的停车示例的元素与实际的技术模型一一相匹配。
大中央停车库是AWS、谷歌云等中心系统(这些云平台也有一定的分布,但为了简单起见,我们假设它们是一个单一实体)。
汽车是数据和应用。
分布式停车是一种分散的系统——区块链。
还有一个最重要的东西!
所有分散的系统都不是区块链!!
是的,区块链是一种特殊的分散系统,它有一个独特的特性。哪个属性?让我们来谈谈它。
“区块”造就区块连。
让我们重新审视我们的分布式停车实例并做一个小的改变。让我们假设一个特定车库的锁是在一辆车停在里面的时候产生的(我们假设每天同一辆车停在同一个停车场)。
另外,假设我们按顺序对所有分布式车库进行了编号。车库50的锁钥匙对是基于车库49的锁钥匙对,也基于停放在车库50中的汽车的特性(如颜色、重量、发动机号等),这个过程从车库1开始,直到车库200甚至更多。
每个车库的锁钥匙对取决于车库的汽车功能和前一个车库的锁钥匙对。
因此,如果一个小偷试图进入车库# 49和修改车的任何特性,比如它的颜色或注册号,车停在车库# 49,这意味着49号车库将生成一个新的锁钥匙对。由于50号车库的锁钥匙对是基于49号车库的锁钥对生成的,车库# 50的锁钥匙对也会改变,以后的每个车库的锁钥匙对都会改变。
现在,让我们做最后一个假设,计算一个锁钥匙对需要大量的计算资源,这意味着如果我们必须重新计算这些锁钥匙对,以防任何小偷修改任何车库的任何汽车,重新计算所有的锁钥匙对几乎是不可能的。
如果锁-钥匙对被更改会发生什么?
我们说过所有的车库主人都遵守一些规则。
其中一个规则是检查一个有效的车库。如果您可以验证它的锁键对,并且如果任何锁钥匙对被更改,那么以下所有车库的锁钥匙对都将无效,因为每一对都依赖于前一对。(与生成锁钥匙对相比,验证特定车库的锁钥匙对的过程非常快)。
在技术世界中,这些车库是“块”,因此得名——区块链。
区块链中的块通过散列绑定到下一个块,就像我们示例中的锁键对一样。与车库示例类似,如果修改了一个块中的数据,那么需要重新计算以后所有块的哈希值,由于计算哈希值是一项非常耗费资源的操作,因此实际上不可能这样做,因此网络将无效的块排除在外。散列的计算称为挖掘,我们将在以后再详细说它。
块如何从修改中恢复?
区块链网络上的所有计算机,都保留完整的区块链的副本,所以如果某台计算机或多台计算机上的一个块或一个完整的链被修改,整个网络就会试图将其与自己的完整链副本进行比较。
如果网络上的大多数节点或者计算机发现修改后的链无效,而用其他节点的有效链替换修改后的链,这使得区块链容易受到51%的攻击。简单说,如果网络上超过百分之五十的节点是恶意的,也就是有一个经过修改的 链,那么整个网络都被破坏了。
相信您看完这篇文章,基本对区块链有一个基本的了解,可以试试把它讲给父母或者孩子或者对区块连一无所知的人。
下一次,我们将讨论以太坊,智能合约和采矿。