说明:
1.本文是《Steem 指南》高级篇区块链第10.1什么是区块链的文字初稿。
2.由于自己的水平有限文字中难免有错误,希望大家多多提建议,我会在后面的版本继续完善,目标是既保证文章的专业性,又确保可读性。
3.本文版本0.1,后面我会根据大家的意见和建议不定期完善,直到编辑小组定稿。
2008年11月1日,一个化名为中本聪(Satoshi Nakamoto)的密码极客发布了比特币白皮书(《比特币白皮书:一种点对点的电子现金系统》),至此比特币开始了一场人类历史上伟大的数字货币实验。
很多分不清比特币与区块链,以为比特币就是区块链,区块链就是比特币,比特币是第一个成功的区块链应用,随着比特币价格的不断飙升,比特币背后的区块链技术逐渐进入到了大众视野。
区块链的发展最早可以追溯到1982年Leslie Lamport提出的拜占庭将军问题(Byzantine Generals Problem)。拜占庭将军问题是解释一致性问题的一个虚拟模型。拜占庭是古东罗马的首都,由于地域宽广,守卫的将军需要通过信使传递消息,达成一致的决定。但由于将军中可能存在叛徒,这些叛变的将军可能会发送错误的消息,干扰大家的决议。
拜占庭问题的提出是为了解决在这种情况下,怎样让忠诚的将军们达成一致的决议。
这个问题演变到计算机领域,就是在互联网中不同计算机通过通讯怎样达成一致。在实际过程中有些计算机可能出现错误,有些计算机有可能被黑客攻击,怎样保证网络上的计算机对某个事物达成一致就是这个理论模型要解决的问题。
拜占庭问题是区块链技术里共识机制的基础。正因为有了这样的理论基础,才使得区块链技术有了发展的科学基础。
在比特币之前,区块链经过了几代的演进,这期间包括 e-Cash、HashCash、B-money等相关的数字货币。这个期间属于数字货币的发展阶段。
1983年提出的e-Cash是一个数字化的支付系统,但由于采用了中心化的方式导致后来项目失败。
1997年的HashCash是一个采用工作量机制(Poof of Work,PoW)的数字货币,之后被数字货币大量广泛使用。
1998年提出的B-money是首个提出的去中心化的数字货币系统,遗憾的是没有提出具体的实现。
直到2009年1月比特币横空出世,才真正实现了去中心化的、账务公开的数字货币系统,正式开启了区块链技术发展。
区块链是一门综合学科,要彻底搞清楚区块链,需要从三个不同的视角来看待区块链。
一个形象的说法区块链就是一群人共同维护的一个大账本。
我们传统的信息系统,不管是银行系统,还是我们熟悉的支付宝、微信的数据库都是采用集中式管理方式运行,所有的数据安全都依赖于这个组织(比如阿里)是否可信,技术是否过硬,管理是否足够严格。
而区块链则不同,它是通过共识机制发动大量的节点来共同来记账,而这些节点之间地位平等。由于区块链采用了一群人共同记账的方式,使得数据不可篡改。
举个例子,在一个村子,张三借了李四一万元人民币,原来的方式就是张三给李四打一个借条,或者是找一个双方都信得过的人作为见证人。现在有了区块链之后,同样是张三借了李四一万元人民币,我们会发动全村的人都来记账,每个人都会在自己的本子上记一笔账,张三借了李四一万元人民币。原来一旦李四的借条丢了,或者张三贿赂了这个见证人,这笔借款有可能就收不回来了。但有了区块链之后,由于全村人都记账因此这比借款就变得无法抵赖。
因此,区块链的本质就是“记录不可篡改的数据库技术”。
传统数据库可以进行增加、删除、修改、查询,而区块链只有增加和查询,不能修改、不能删除。
那问题来了,凭什么全村人会帮李四来记这一笔账,只是人缘好不能让全村人都来记账,我们必须有一套机制来奖励这些人。这点就有点像像农村的红白喜事,全村人都来帮忙。以前是大家生活条件都不好,只要村里面有这种红白喜事,当事人都要大摆宴席答谢村里人的帮助。这其实就是一种奖励机制。
同样,区块链要让一群不相干的人来共同记账,因此需要一套奖励机制,也就是经济刺激,让参与记账的人可以获得经济上的回报。由于人性的贪婪,只要有经济刺激,就一定有人作弊,为了防止有人作弊,区块链引入了共识机制的方式以确保参与者无法作弊。
共识机制作用有两个,一个是奖励、另外一个是惩罚。比特币使用共识机制是POW工作量证明机制,Bitshares、Steemit、EOS采用的是DPOS股份授权证明机制。简单来讲比特币是以算力为基础来进行奖励和惩罚,如果发现有节点作弊不但不会得到比特币奖励,而且还会损失算力,白白浪费掉高额的电费;EOS以股权为基础进行奖励和惩罚,有点类似我们说人民代表大会制度,所有拥有EOS代币的人都可以参与节点的投票,被大家投票出来的节点参与记账,一旦作弊就会被系统投出。
在具体实现上,区块链是基于我们熟悉的P2P点对点网络作为基础的网络协议,也就是迅雷、暴风影音这些工具使用的技术,数据是存储在以时间为顺序的链状结构上,并采用加密算法对数据进行加密、签名,确保身份的唯一性和数据的机密性。
区块链天生具有去中心化的特点,因此只能通过维持一种扁平化、去中心化的P2P共识网络来实现。P2P网络架构既是区块链去中心化核心特性的反映,也是该特性的基石。
P2P网络中每一个节点彼此对等,各个节点共同提供服务,不存在任何特殊节点。P2P网络中不存在任何服务器、中心化服务及层级结构。P2P网络具有天生的伸缩性、去中心化和开放的特点。
区块链的数据不可篡改性,不是由密码学里的数字签名保证的(数字签名又被称为数字指纹,用来保证数据篡改后可被发现),而是由包含交易信息的区块从后向前有序链接起来的数据结构保证的。
区块是一种被包含在公开账簿包含 了交易信息的数据结构。由于区块里面包含了上一个“父区块哈希值”字段(哈希是一个通过SHA256算法对区块头进行二次哈希计算而得到的数字指纹。产生的32字节哈希值被称为区块哈希值),当其中一个区块链数据发生变化后,需要更改之后所有儿子的区块哈希值,一旦一个区块有很多代以后,这种瀑布效应将保证该区块不会被改变,除非强制重新计算该区块所有后续的区块。正是因为这样的重新计算需要耗费巨大的计算量,所以一个长区块链的存在可以让区块链的历史不可改变,这就是区块链数据不可篡改特性的根本。
如果以上的解释无法理解,你可以把区块链想象成地质构造中的地质层。表层可能会随着季节而变化,甚至在沉积之前就被风吹走了。但是越往深处,地质层就变得越稳定。到了几百英尺深的地方,你看到的将是保存了数百万年但依然保持历史原状的岩层。几千个区块后的区块链将变成确定的历史,永远不会改变。
以上对于共识机制、区块链、P2P网络的解释也可以简单概括如下:
区块是数据存储的容器,而P2P网络是保证区块链运行的基础协议,共识机制确保参与记账的节点在没有人干预的情况下可正常工作。
对区块链技术有了基本的理解后,可以看出区块链的伟大之处是基于算力、股权这些人类已经存在的共识基础,将人类几千年协作文明第一次用技术手段实现。
智能合约是 1990s 年代由尼克萨博提出的理念,几乎与互联网同龄。由于缺少可信的执行环境,智能合约并没有被应用到实际产业中,自比特币诞生后,人们认识到比特币的底层技术区块链天生可以为智能合约提供可信的执行环境,以太坊首先看到了区块链和智能合约的契合,发布了白皮书《以太坊:下一代智能合约和去中心话应用平台》,并一直致力于将以太坊打造成最佳智能合约平台。
智能合约实际上是一段无需干预可以自动执行的代码,人类可以用智能合约实现资产的转移无需任何中介干预。
举个例子,你如果有一笔数字资产要让下一代人继承,就可以开发一个智能合约运行在以太坊平台上,一旦你设定的条件匹配,这笔资产会自动转移到你指定人的账户里,无须中介、法院来干涉,一切都按照既定的规则自动执行,这就是智能合约的魅力。
因此,从广义上来讲,区块链是分布式系统、密码学、博弈论、网络协议(P2P)等诸多学科的合体,是人类发展史上一项伟大的创举。
说了这么多区块链与我们生活有什么关系?
区块链就是一个宝藏,太多的价值还未被人发掘。随着区块链基础设施(EOS、以太坊、NEO、量子 )的上线和不断迭代,属于区块链的伟大时代已经到来。对于传统行业来说,怎样将区块链应用在自己熟悉的产业中,是大家共同需要面对的问题。
刚才我们讲到了区块链的本质就是“记录不可篡改的数据库技术”,在现代社会数据被称为21世纪的石油,我们熟悉的阿里、腾讯都是因为拥有庞大的数据,才赢得了商业上的成功,而使用区块链可以采用代币的方式激励用户贡献数据,同时可以构建一个安全可信的大数据生态。因此,基于区块链的去中心化、免信任、数据不可篡改等特性,可以实现人类资产证券化(Token代币),建立安全可靠、自治高效现代社会。
从这个角度望去,由于区块链天生具备价值属性和建立信任的特点,因此区块链可以将任何资产数字化,可以对现有互联网进行重构。
区块链的应用已延伸到金融、版权分发、社交媒体、物联网、智能制造、供应链管理等多个领域,将为云计算、大数据、AI 等新一代信息技术的发展带来新的机遇,有能力引发新一轮的技术创新和产业变革。
正如《经济学人》杂志中所定义的那样,区块链是信任的机器。它将会重新定义生产关系,使得整个生态更加可信。
对区块链技术有了初步了解之后,下一节我们将会通过对steemit的学习一起探索区块链是怎样重构社交平台的。