首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

学习区块链 你不可不知的五层架构!

当前的区块链技术采用的是五层架构,从下到上分别是数据层、网络层、共识层、激励层、智能合约层,如下图所示。

五层架构

数据层

数据层最底层的技术,是一切的基础,主要实现了两个功能,一个是相关数据的存储,另一个是账户和交易的实现与安全。数据存储主要基于Merkle树,通过区块的方式和链式结构实现,大多以KV数据库的方式实现持久化,比如以太坊采用leveldb。帐号和交易的实现基于数字签名、哈希函数和非对称加密技术等多种密码学算法和技术,保证了交易在去中心化的情况下能够安全的进行。

网络层

网络层主要实现网络节点的连接和通讯,又称点对点技术,是没有中心服务器、依靠用户群交换信息的互联网体系。与有中心服务器的中央网络系统不同,对等网络的每个用户端既是一个节点,也有服务器的功能,其具有去中心化与健壮性等特点。

共识层

共识层主要实现全网所有节点对交易和数据达成一致,防范拜占庭攻击、女巫攻击、51%攻击等共识攻击,其算法称为共识机制,因为其应用场景不同,区块链2.0出现了多种富有特色的共识机制。

1. PoS:Proof of Stake,权益证明

原理:节点获得区块奖励的概率与该节点持有的代币数量和时间成正比,在获取区块奖励后,该节点的代币持有时间清零,重新计算。但由于代币在初期分配时人为因素过高,容易导致后期贫富差距过大。

2. DPoS:Delegate Proof of Stake,股份授权证明

原理:所有的节点投票选出100个(或其他数量)委托节点,区块完全由这100个委托节点按照一定算法生成,类似于美国的议会制。

3. Casper:投注共识

原理:以太坊下一代的共识机制,每个参与共识的节点都要支付一定的押金,节点获取奖励的概率和押金成正比,如果有节点作恶押金则要被扣掉。

4. PBFT:Practical Byzantine Fault Tolerance,拜占庭容错算法

原理:与一般公有链的共识机制主要基于经济博弈原理不同,PBFT基于异步网络环境下的状态机副本复制协议,本质上是由数学算法实现了共识,因此区块的确认不需要像公有链一样在若干区块之后才安全,可以实现出块即确认。

5. PoET:Proof of Elapsed Time,消逝时间量证明

原理:该共识机制由intel提出,核心是用Intel支持SGX技术的CPU硬件,在受控安全环境(TEE)下随机产生一些延时,同时CPU从硬件级别证明延时的可信性,类似于彩票算法,谁的延时最低,谁将获取记账权。这样,增加记账权的唯一方法就是多增加CPU的数量,具备了当初中本聪设想的一个CPU一票的可能,同时增加的CPU会提升整个系统的资源,变相实现了记账权与提供资源之间的正比例关系。

共识机制有各自的优缺点,适应不同的场景,进行对比,如下表所示。

不同共识算法对比

激励层

激励层主要实现区块链代币的发行和分配机制,比如以太坊,定位以太币为平台运行的燃料,可以通过挖矿获得,每挖到一个区块固定奖励5个以太币,同时运行智能合约和发送交易都需要向矿工支付一定的以太币。

智能合约层

智能合约赋予账本可编程的特性,区块链2.0通过虚拟机的方式运行代码实现智能合约的功能,比如以太坊的以太坊虚拟机(EVM)。同时,这一层通过在智能合约上添加能够与用户交互的前台界面,形成去中心化的应用(DAPP)。当然,在某些技术文档中认为DAPP应该在智能合约层之上单独为应用层,也是有一定道理,只要不影响读者理解即可。

推荐学习:

中机区块链实验室专家Jasmine将在《冷静区块链财富大转移》课程中揭秘区块链与大数据还有哪些繁杂的关系,让我们认清产业形态,洞悉2018最新区块链资讯,作出最适合企业的的架构方案!

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180409A19IH700?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券