一句话介绍区块链是什么

现在关于区块链的定义有很多,作者抽丝剥茧地列举了区块链技术的重要特性,诠释了他心中关于区块链的定义。

区块链相关技术文章投稿,请发送邮件至:[email protected]

区块链是用于资产交易、运行在对等网络上、仅能附加的、具有时间戳的共享帐簿。

区块链用于资产交易

区块链设计的目的是用来支持数字资产交易。相对于现在互联网上大多数应用支持的信息交换而言,区块链用来在互联网上进行价值交换。因此有人说,相对于现在的信息互联网,未来在互联网上的区块链应用所支撑的将是一个价值互联网。物理世界的有价物在数字化以后都可以是数字资产,当然数字资产还包括一开始就是诞生于互联网上的有价物,比如游戏中的装备,电商平台给予的积分,央行发行的数字货币,银行发行的数字票据,等等。

区块链运行在对等网络

一个P2P网络,各节点的地位完全对等,每个节点既是服务器也是客户端,没有中心节点,没有控制节点,各节点随意加入或者退出,另外,所有节点之间有一套共识达成机制,共同维护整个网络。这个具有共识机制的P2P网络保证了:高可用性(只要有节点在运行,服务就可用),任何人无法关掉整个网络(除非一个节点都没有),任何人无法控制整个网络(除非他控制了大多数节点),高效率(每个节点都可以从附近的任何节点获得服务),高扩展性(增加节点就可以提供更多的服务),节点越多整个网络的效率和安全性越高。

相对于现在已经极度中心化的互联网,对等网络体现的是真正的互联网精神:普惠大众,平等,公平,互惠,自治,自愿,隐私保护。另外,对等网络相对于中心控制型网络来说具有更大的活力和更强的生命力。(参见KK著《失控》)

区块链是一个帐簿

它记录了关于数字资产的所有的交易,全部的交易。这个帐簿是在节点之间共享的,每个节点自己有一份完全的拷贝。这样保证了信息的完全性和透明性,所有人有所有的信息。这个帐簿是只能在后面添加新记录,每条记录都有时间戳,任何老记录都不得修改,这样保证了信息的不可篡改,不可抵赖,和资产的可追溯性。

打上了真实的时间戳的数据有什么意义?如果当初达芬奇画完《蒙娜丽莎》后可以马上打上一个时间戳,那么就没有后面的赝品了,因为赝品无法回去500年前打上当时的时间戳。时间戳赋予了一条数据它的时间属性,或者说,一条真正完备的数据应该是具有时间维度的数据。想象一下,如果一个人的学历信息具有时间维度,他事后就很难造假了(他必须在当时造假)。

这里把区块链定义为一个帐簿,而不是一个数据库,原因之一是想强调区块链是用于有价物的,而不是通用的任何东西。原因之二是想强调区块链记录的是全体交易日志,任何记录无法更改,新的记录只能在后面附加。“帐簿”要比“数据库”更形象、更直观的传递了这个信息。原因之三,区块链并不适合作为一个通用的数据库使用。拿区块链跟SQL Server, Oracle, MySQL, MongoDB, Cassandra, Redis, Google Spanner, SAP Hana这些传统数据库,NoSQL,或者NewSQL数据库相比,其实是不恰当的。

另外,这里把区块链定义为一个“共享”帐簿,而不是“分布式”帐簿,原因之一是“分布式”这个词有很多歧义,对应的英语单词可以是distributed, 也可以是 decentralized. 这两者都不能很好说明区块链的“共享”(shared)属性。区块链本质不是要做成分布式,而是要在各个节点之间完全共享,以达到完全透明。共享是目的,分布式是手段。

在现阶段,主流的区块链例如比特币和以太坊,都是在所有全节点(full node)完全复制整个帐簿,这对节点的存储要求较高,并影响网络的整体效率。帐薄切分(sharding)是大势所趋。从这一点上看,区块链跟分布式数据库有着相似的诉求。

上面提到的这些特性,我认为应该是区块链的一些基本特性。另外还有一些特性,但这些特性不是所有的区块链都具备的。

匿名性

比特币中的账号采用了密码学技术实现了某种伪匿名性,虽然所有交易信息都是透明的,但是从一笔交易上无法识别是哪两个人进行的这笔交易。密码学技术的恰当使用可以很好的保护个人隐私,这在个人隐私信息泄露泛滥的中国是一剂良药。

可编程

比特币区块链是一条进行比特币数字资产交易的专用区块链,它的可编程性被特意设计得很弱,简洁明了的设计保证了比特币区块链的安全性和稳定性。相反的,以太坊是一个区块链技术平台,它支持各种复杂的计算逻辑(以太坊是图灵完备的),可以在以太坊区块链上开发各种有关操作某类数字资产的复杂程序(智能合约)。这样以太坊就可以看成一台巨大的分布式计算机,由成千上万个运行在全球各地的节点构成(世界计算机),上面运行着各种数字资产交易程序。另一方面,由于不允许降低安全性,可编程性带来了对安全性设计的更高的要求。

作者简介:

曹严明。架构师,现就职于SAP公司咨询服务部,专注于保险业核心系统、电子商务、企业移动应用等解 决方案。曾就职于微软和HCL公司,参与过SQL Server, SharePoint, Visual Studio等产品的研发。

你可能感兴趣的:(一句话介绍区块链是什么)