<optgroup id="qyq6o"><small id="qyq6o"></small></optgroup><optgroup id="qyq6o"><small id="qyq6o"></small></optgroup><optgroup id="qyq6o"><small id="qyq6o"></small></optgroup><center id="qyq6o"><small id="qyq6o"></small></center>
<optgroup id="qyq6o"><small id="qyq6o"></small></optgroup>
<code id="qyq6o"></code><code id="qyq6o"><small id="qyq6o"></small></code>
<sup id="qyq6o"><acronym id="qyq6o"></acronym></sup>
本站专注区块链信息及金融服务,但不代表任何投资建议

HALO课堂|NO.22 区块链的架构设计

Halo研究所 ·

02月21日

热度: 3216

区块链作为一种架构设计的实现,与基础语言或平台等差别较大。区块链是加密货币背后的技术,是当下与VR虚拟现实等比肩的热门技术之一,本身不是新技术,类似Ajax,可以说它是一种技术架构,所以我们从架构设计的角度谈谈区块链的技术实现。

区块链作为一种架构设计的实现,与基础语言或平台等差别较大。区块链是加密货币背后的技术,是当下与VR虚拟现实等比肩的热门技术之一,本身不是新技术,类似Ajax,可以说它是一种技术架构,所以我们从架构设计的角度谈谈区块链的技术实现。

无论你擅长什么编程语言,都能够参考这种设计去实现一款区块链产品。与?#36865;?#26102;,梳理与之相关的知识?#35745;?#21644;体系,帮助大家系统的去学习研究。

 

从架构设计上来说,区块链可以简单的分为三个层次,协议层、扩?#20849;?#21644;应用层。其中,协议层又可以分为存储层和网络层,它们相互独立但又不可分割。如图:

 

而区块链的架构模型又分为6层架构模型,包括数据层、网络层、共识层、激励层、合约层、应用层。每层分别完成一项核心功能,各层之间互相配合,实现一个去?#34892;?#21270;的信任机制。

 

一、数据层

数据层主要描述区块链技术的物理?#38382;健?#21306;块链系统设计的技术人员们首先建立的一个起始节点是?#25353;词?#21306;块?#20445;?#20043;后在同样规则下创建的规格相同的区块通过一个链式的结构?#26469;?#30456;连组成一条主链条。随着运行时间越来越长,新的区块通过验证后不断被添加到主链上,主链?#19981;?#19981;?#31995;?#24310;长。

每个区块中也包含了许多技术,比如时间戳技术,它可以确保每一个区块按时间顺序相连接;再比如哈希函数,它能够确保交易信息不被篡改。

 

二、网络层

网络层的主要目的是实现区块链网络中节点之间的信息交流。区块链网络本质上是一个P2P(点对点)网络。每一个节点既接收信息,也产生信息。节点之间通过维护一个共同的区块链来保持通信。

区块链的网络中,每一个节点都可以创造新的区块,在新区块被创造后会以广播的?#38382;?#36890;知其他节点,其他节点会对这个区块进行验证,?#27604;?#21306;块链网络中超过51%的用户验证通过后,这个新区块就可以被添加到主链上了。

三、共识层

共识层封装?#36865;?#32476;节点的各类共识机制算法。共识机制算法是区块链的核心技术,因为这决定?#35828;?#24213;是谁来进行记账,而记账决定方式将会影响整个系统的安全?#38498;?#21487;靠性。目前已经出现了十余种共识机制算法,其中比较最为知名的有工作量证明机制(PoW,Proof of Work)、权益证明机制(PoS,Proof of Stake)、股份授权证明机制(DPoS,Delegated Proof of Stake)等,在此前文章中也有所涉猎。

数据层、网络层、共识层是构建区块链技术的必要元素,缺少任何一层都将不能称之为真正意义上的区块链技术。

 

四、激励层

激励层的主要功能是提供一定的激励措施,鼓励节点参与区块链的安全验证工作。我们以比特币为例,它的奖励机制有两种。在比特币总量达到2100万枚之前,奖励机制有两种,新区块产生后系统奖励的比特币和每?#24335;?#26131;扣除的比特币(?#20013;?#36153;)。而当比特币总量达到2100万时,新产生的区块将不再生成比特币,这时奖励机制主要是每?#24335;?#26131;扣除的?#20013;?#36153;。

五、合约层

合约层主要是封装各类脚本、算法和智能合约,是区块链可编程特性的基础。比特币本身就具有简单脚本的编写功能,而以太坊极大的强化了编程语言协议,理论上可以编写实现任何功能的应用。如果把比特币看成是全球账本的话,以太坊可以看作是一台“全球计算机?#20445;?#20219;何人都可以上传和执行?#25105;?#30340;应用程序,并?#39029;?#24207;的?#34892;?#25191;行能得到保证。

六、应用层

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

声明:本文为入驻“火星号”作者作品,不代表火星财经官方立场。转载请注明出处、作者和本文链接
提示:投资有风险,入?#34892;?#35880;慎。本资讯不作为投资理财建议。
语音技术由科大讯飞提供
关键字: btc eth 区块链 比特币

推广
相关新闻

涨幅榜

你可能?#34892;?#36259;的内容
下一篇

区块链市场大家觉得什么时候泡沫去的差不多了

寻求报道 寻求融资 APP下载
APP下载 扫描下载APP
陕西11选五开奖结果