区块链科普系列第3天:区块链演变和架构
文/杜豆豆
1
前面我们讲了区块链的基本知识,首先复盘一下。在基本知识里,我们了解到以下几点:
第一点、区块链系统实际上就是一个维护公共数据账本的系统,所有的技术设计都是围绕维护好这个公共账本来进行的。这些技术设计组合在一起,被称为技术栈。
第二点、技术栈中有5个重要的模块:区块链账本、共识机制、密码算法、脚本系统和网络路由。
第三点、区块链通过共识机制达成节点账本的数据一致,通过密码算法确保账本数据的不可篡改以及数据发送的安全,通过脚本系统扩展账本数据的表达范畴。
今天,我们讲区块链的演变。
2
说区块链,就不得不从比特币开始说起。
区块链听起来很高大上,或者有新鲜感,其实究其根基,也就是个特别设计的分布式数据库系统。只不过,和P2P网络、加密解密技术等组合在一起,一不小心就诞生了比特币。很多人,就是因为看到比特币的疯狂发展,才开始研究它背后的技术——区块链的。
2008年金融危机带来了一系列的蝴蝶效应,银行倒闭、股市崩盘、次贷危机,也引起了美国等金融大国国民对政府和银行的不满和失望。这时,有个叫做中本聪的日裔美国人,发表了一篇《 A Peer-to-Peer Electronic Cash System》(中文译为:《比特币白皮书》)的论文,引起了广泛关注。2009年,出现了比特币的第一个区块,人称创世区块。
在比特币的发展史上,有一个叫做“密码朋克”的团体非常神秘。这个团体群聚了众多密码天才,在比特币的一系列创新,大量借鉴了这些天才们的技术贡献。密码朋克们有这么一个观念:个人隐私和权力正在不断被侵蚀,在数字时代,要维持一个开放社会的同时,还要用技术来保障对隐私的保护。体现到比特币中就是:去中心化、匿名、自由主义。
2010年时,有人用10000个比特币买了一个披萨,这是第一次以比特币为代表的数字货币在线下进行了交易,对后期比特币在市场上进行交易和升值具有重要的意义。放到今天,这10000个比特币已经升值到7亿人民币,想一想,这大概是世界上最贵的匹萨了!
2013年到2014年,Vitalik创建以太坊,它和比特币最大的区别就是加入了智能合约的内容。这一事件,这成为区块链2.0时代到来的标志性事件。
2015年R3金融联盟成立,Hyperledger组织开始做fabric项目,fabric是IBM倡导的一个项目,现在很多公司都在使用fabric的技术和平台。这一时期,已经不再局限在金融范畴的应用,而是广泛到了范围更广的各种业务数据了。
到了2017年下半年,比特币的价值持续往上升,尽管跌过一段时间,但之后就回稳了,被越来越多的国家所认可,从整体上来说,价值始终是在逐步升高的。
进入2018年,区块链技术被称为下一个风口,成为与人工智能、大数据、云计算并称的最新技术,并被各个国家提到了规划和大力发展的层面,看起来,似乎就要风生云起了。
所以,现在,还不懂区块链的小白,要赶快捡起来了,不然,你真的就要OUT了!
3
接下来,我们再从技术角度,来看看区块链的架构是怎么发展变化的。
从上面的介绍,我们可以清晰看到3个阶段的发展:
第一个阶段,也就是早期的区块链系统。这些系统都是面向数字货币的,比如比特币、莱特币。这个阶段,通常被我们认为是一个支持数字货币合约的系统。
第二个阶段,出现了能够支持自定义智能合约的系统,比如以太坊,它实现了对比特币这样数字货币系统的扩展,但是应用更多的还是金融范畴。
第三个阶段,就是之后的多应用阶段。比如,超级账本项目,尤其是IBM倡导的Fabric子项目,在此系统中,已经不再局限于金融范畴的应用,而是开始支持各种领域的数据定义。
这三个阶段,我们将它们称为区块链系的1.0、2.0、3.0结构时期。
4
下面,我就针对这三个阶段的区块链架构演变,为大家做个介绍。
(1)区块链1.0架构
这个阶段的区块链系统,主要是用来实现数字货币的,如下图所示:
如图所示,在整个结构中,分为核心节点和前端工具。我们重点来看一下核心节点中的“矿工”功能。在矿工的1.0系统中,主要承担两个任务:
第一个是通过竞争获得区块数据的打包权后,将内存池(待确认交易数据)中的交易数据打包进区块,并且广播给其他节点;
第二个是接受系统对打包行为的数字货币奖励,从而系统通过这种奖励机制完成新货币的发行。
在前端工具中,重点说说钱包工具,钱包工具是提供给用户管理自己账户地址以及余额的;浏览器是用来查看区块链网络中发生的数据情况,比如最新的区块高度,内存池的交易数、单位时间的网络处理能力等;PRC客户端和命令行接口都是用来访问节点的功能的,在这个时候,核心节点就相当于一个服务器,通过PRC服务提供功能调用接口。
(2)区块链2.0架构
我们用以太坊的典型架构来说明。如下图:
大家应该看出差别了吧。与1.0的架构相比,最大的特点就是支持智能合约,在以太坊中,我们使用智能合约开发工具开发合约程序,并且编译为字节码,最终部署到以太坊的区块链账本中。部署后的智能合约是运行在虚拟机上的,称为“以太坊虚拟机”。智能合约的实现,扩展了区块链系统的功能。不过,它依然使用钱包,支持数字货币。
(3)区块链3.0架构
我们先来看一下架构图。
在3.0的架构中,超越了对数字货币或者金融的应用范畴,而将区块链技术作为一种泛解决方案,可以在其他行业领域使用。
行业应用一般是需要具备企业级属性的,比如身份认证、许可授权、加密传输等,并且对数据的处理性能也会有要求,因此企业级场景下的应用,往往都是联盟链或者私有链。数字货币不再是一个必选的组件了,当然如果需要,我们也可以通过智能合约的方式来实现数字货币的。
与之前的架构相比,最大的特点就是增加了一个网关控制,实际上就是增加了对安全保密的需求的支持,并且通过数据审计加强对数据的可靠性管理。
在3.0中,实际上可以看成是一套框架,通过对框架的配置和二次开发可以适应各行业的需求,比如图中的“可插拔共识”,意思就是共识机制不是固定的,而是可以通过用户自己去选用配置。
(未完待续)
本文观点和案例参考了《白话区块链》和搜狐作者“技术最前沿”部分文章。
原创不易,非授权不得转载,转载请注明出处。如果您觉的文章有用,别忘了在文末点赞哦。
读更多好书,请访问我的文集:《一生必读的万卷好书》
欢迎加入“万卷好书读书会”:在这个群里,大家可以分享电子书,交流读书心得,以文会友,自由点赞支持。目前该群已超过100人,需要群主发邀请才能进,有兴趣的简友请加微信dudoudou189联系我。读书会座右铭:在浮躁的时代,安心读书写作,养育心灵。
我已晋升最高级别的“简书会员合伙人”,欢迎使用我的专属会员推广链接:https://www.jianshu.com/mobile/club?ref=11f3ab2f1288,订阅会员,享受最优惠福利。