区块链资讯
数字货币行情

区块链的架构模型

区块链媒体

区块链技术架构

区块链系统由自下而上的数据层、网络层、共识层、激励层、合约层、应用层组成。该模型中基于时间戳的链式区块结构、分布式节点的共识机、基于共识机制的经济模型和灵活可编程的智能合约是区块链技术最具代表性的创新点,其中数据层、网络层和共识层是构建区块链应用的必要因素,否则将不能称为真正意义上的区块链。而激励层、合约层和应用层不是每个区块链应用的必要因素,有部分的区块链应用并不完整包含着这三层结构。

(一)数据层

1.数据区块(Block)

数据区块主要是保存交易数据,不同的系统采用的结构不同,下面以比特币的区块结构为例做介绍。

比特币的交易记录会保存在数据区块之中,比特币系统中大约每10分钟会产生一个区块,每个数据区块一般包含区块头(Header)和区块体(Body)两部分。区块头包括前一区块的哈希(PreHash)值和用于计算挖矿难度的随机数(nounce),而计算随机数规则决定了哪个矿工可以获得记录区块的权力。

2.链式结构(chain)

区块链是一种单向链式结构,由区块连接而成。第一个区块称为创始区块。除了创始区块外,每个区块都保留了上一个区块的哈希值,通过引用上一个区块的哈希值,区块间形成了链式关系,从而形成了区块链。区块链内区块的数量,称为区块的高度。

3.时间戳(Timestamp)

区块链通过时间戳保证每个区块依次顺序相连。时间戳使区块链上每一笔数据都具有时间标记。简单来说,时间戳证明了区块链上什么时候发生了什么事情,且任何人无法篡改。

4.哈希(Hash)函数

哈希函数是将任意长度的输入,经过不可逆的处理过程,转换为固定长度的输出内容。主要有两大类:Message Digest Algorithm(最常见的MD5,以及其前身MD2,MD3,MD4)以及Secure Hash Algorithm(常见的SHA-1,SHA-2,RIPEMD160)。

5.默克尔树(Merkle Tree)

通常也被称作Hash Tree,顾名思义,就是存储在Hash值的一棵树。Markle树的叶子是数据块(例如,文件或文件的集合)的Hash值。非叶节点是其对应节点串联字符串的Hash。

6.非对称加密

对称加密算法是指在加密和解密时使用的同一个密钥。非对称加密是现代密码学历史上最伟大的发明,可以很好地解决对称加密秀奥的以前分发密钥问题。加密密钥和解密密钥是不同的,分别称为公钥和私钥。公钥一般是公开的,人人可获取,私钥一般是个人持有,不能被他人获取。公钥用于加密,私钥用于解密。公钥由私钥生成,私钥可以推导出公钥,从公钥无法推导出私钥。

(二)网络层

网络层包括分布式组网机制、数据传输机制和数据验证机制等,由于采用了完全P2P的组网技术,也就意味着区块链是具有自动组网功能。这种P2P组网技术,在早先应用于BT(比特流)和eMule(电驴)之类的P2P下载软件中,也是一种相对来说非常成熟的技术。

P2P(Peer to Peer)网络:即对等网络,区块链网络的去中心化来自于采用P2P组网方式,网络中每个节点均地位对等且以扁平式拓扑结构相互连接和交互,不存在任何中心化的特殊节点和层级结构,每个节点均会承担网络路由、验证交易信息、传播交易信息、发现新节点等工作。

(三)共识层

共识层主要封装网络节点的各类共识机制算法。共识机制算法是区块链技术的核心技术,因为这决定了到底由谁来进行记账,记账者选择方式将会影响到整个系统的安全性和可靠性。目前已经实现了十余种共识机制算法吗,其中最为周末的有工作量证明机制(Proof of Work,Pow)、权益证明机制(Proof of Stake,PoS)、股份授权机制(Delegated Proof of Stake,Dpos)等。

1.工作量证明机制(PoW)

工作量证明机制通过解决一个不容易解答但是容易验证的问题来争取记账权以达到共识目的。它实现简单,节点间无需交换额外的信息,但是能源消费比较高且共识达成的周期较长。

比特币挖矿采用的就是工作量证明机制,比特币网络通过调节计算难度。保证每次竞争记账都需要全网矿工计算约10分钟,才能算出一个满足条件的随机结果,即获得本次记账权,发出本轮需要记录的数据,全网其它节点验证后一起存储。

2.权益证明机制(PoS)

3.股份授权证明机制(DPoS)

(四)激励层

激励层将经济因素集成到区块链技术体系中来,主要包括经济激励的发行机制和分配机制等,该层主要出现在公有链(Public Blockchain)中,因为在公有链节点中必须激励遵守规则参与记账的节点,并且惩罚不遵守规则的节点,才能让整个系统朝着良性循环的方向发展。所以激励机制往往也是一种博弈机制,让更多遵守规则的节点愿意进行记账。而在私有链(Private Blockchain)中,则不一定需要进行激励,因为参与记账的节点往往是在链外完成了博弈,也就是可能有强制力或者有其他需求来要求参与记账。

(五)合约层

合约层主要封装各类脚本、算法和智能合约,是区块链可编程特性的基础。以以太坊为首的新一代区块链系统试图完善比特币的合约层。比特币尽管也包含了脚本代码,但是并不是图灵完备的,即不支持循环语句:以太坊在比特币结构的基础上,内置了编程语言协议,从而在理论上可以实现任何应同功。如果把比特币看成是全球账本的话,那么就可以把以太坊看作是一台“全球计算机”——任何人都可以上传和执行任意的应用程序,并且程序的有效执行能够得到保证。

智能合约(Smart contract)是一种旨在以信息化方式传播、验证或执行合同的计算机协议。智能合约允许在没有第三方的情况下进行可信交易,这些交易可追踪且不可逆转。智能合约并不一定要依赖于区块链来实现,而区块链的部分基础链特效决定了智能合约更加适合于区块链上来实现。比如去中心化,数据的防篡改,高可用性等。

(六)应用层

应用层封装了区块链的各种应用场景和案例。比如搭建在以太坊上的各类区块链应用就是部署在应用层,所谓可编程货币和可编程金融也将会搭建在应用层。

赞(0) 打赏

华为系团队打造,不花一分钱,每天躺赚200元
未经允许不得转载:三氪猫数字货币媒体 » 区块链的架构模型

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏