区块链这个词现在相当地火红。然而什么是区块链呢?区块链究竟是如何运行,以及能解决什么问题,我们该如何使用它?
区块链简单来说是一条包含信息的链。这项技术最初于1991年由一组研究人员发明,最初的目的是为数字文档添加时间戳,和像公证人一样保证人们不能篡改这些文档。2008年,中本聪发明了数字货币比特币,在比特币上区块链得到了第一次的大范围的使用。
区块链是一个对任何人完全开放的分布式账本。区块链有一个有趣的特性,数据只要被记录在区块链中,就很难篡改它。这个特性是如何实现的呢?我们仔细看块,每个块包含一些数据,哈希值,和前一个块的哈希。存储在块内的数据取决于区块链的类型。对于比特币中的区块链来说,数据内容就是,发件人,收件人和金额。每个块都有一个哈希值,你可以把块的哈希比作人的指纹。对于人来说指纹是独一无二的,对于文件来说哈希也是独一无二的,哈希标识着每个块和它包含的所有内容,这个哈希在块创建的时候就固定了,试图改变块的内容,会导致哈希值的改变换句话说,哈希用来保证块的内容不会改变。如果块的哈希发生了改变,我们就认为这个块发生了改变。每个块内的第三个元素是前一个块的哈希,这就有效的创建了一个链式的结构,这就是区块链技术。
我们举一个例子吧。这里我们有一个一共有三个块的区块链。正如你所看到的。每个块都有自己的哈希值和指向前一个块的哈希值。所以3号方块指向2号方块2号指向1号。现在第一个区块有点特别,它不能指向以前的块,因为它就是第一个。我们称之为创世区块。现在让我们假设你篡改了第二个块。这会导致块的散列发生变动。这会导致链接到原来hash的第三个块找不到对应的哈希值,即块3和之后的块,都不再具备验证的能力,从而失效。
所以单独改变一个块,将连带性地致使后面的所有内容都变成无效。但要防止篡改,只有哈希是不够的。现在的电脑速度非常快,可以计算数十万次哈希每秒。你可以有效地篡改块,并重新计算其他块的所有哈希值,从而使您的区块链再次有效。所以为了减轻这一点,区块链有一样机制,我们称之为pow(工作证明)。这是一种会减缓哈希计算速度从而产生有效的新块的机制。比特币情况下:大约需要10分钟计算所需的工作证明和添加一个新的块到链中。这种机制使其非常难以篡改,因为如果你篡改一个块,你需要重新计算工作证明为所有以下块。所以区块链的安全性来自于它对哈希的创造性使用和工作证明机制。区块链另外通过分发副本的机制,来保护自身。区块链使用点对点网络,没有任何中心节点,任何人都可以加入。当有人加入这个网络时他就得到了区块链网络的完整副本。同步副本目的是为了要让不同的节点也可以借此互相验证。
现在就让我们看看有人创建区块时会发生什么事吧。一个新的块。而这个新块被发到网络上所有的节点。然后每个节点都要验证新块确定它没有被篡改。等到验证结束,每个节点才会添加这个新块到区块链。区块链网络中的所有节点都达成共识。大家一起决议哪个区块有效,哪些无效。擅自篡改的块将会被网络上的其他节点拒绝所以要成功篡改区块链,你需要篡改所有的块,这不但得重做每个区块纪录的工作证明,还得控制超过50%的点对点网络节点。只有这样你的篡改块才会被其他人接受。这几乎是不可能的!区块链也在不断发展。最近的一个发展是,创造智能合约。这些合同是简单的程序,存储在区块链中,他能基于合约内所记载的条件自动执行只要条件成立,依照合约自动完成交易关于智能合约将来会做更多介绍。创建区块链的技术引起许多人的兴趣。不久以后,其他人将会意识到这项技术可以用于存储帐本以外的内容例如医疗记录,创建数字公证 甚至收税等等..你现在已经了解区块炼和它背后运作的基本原理,以及它能解决什么问题。非常感谢您的收看。