找回密码
 注册加入

扫一扫,极速登录

QQ登录

只需一步,快速开始

搜索
查看: 172|回复: 0

分析区块链研习 - 两种典型的区块链设计思路之差

[复制链接]
发表于 2021-8-14 13:50:31 | 显示全部楼层 |阅读模式

区块链发展到了现在,产生了很多不同形式的区块链技术。随着技术的发展,目前比较公认的看法是区块链已经走进了20时代。区块链10是以比特币为代表的去中心化数字货币区块链系统,而20则是引入了智能合约的区块链系统。为了便于用户有更好的体验,MetaMask手机钱包v2.5.0安卓版在产品上做了很多的升级尝试,结果也是非常的好,市场表现也趋于良好状态。

                               
登录/注册后可看大图



在支持智能合约的区块链系统中,L基金会所属的H F(由IBM贡献)和V B所的以太坊基金会所创造并管理的E(以太坊)是两个典型。这两种区块链系统具有截然不同的设计思路,充分体现了传统企业信息系统思维设计模式(F)和区块链原教旨主义思维设计模式的区别。


首先看一下E,E是非常典型的受到B(比特币)架构影响的一个区块链系统。其最典型的特点是——链是基础。所有的信任都来自与基于H密码学安全的链式数据结构,在这个信任基础上,架构所有的功能。


而对于F来说,系统一定要有一个漂亮的技术架构:可插拔的模块化设计、高扩展性、高内聚低耦合。在一个漂亮的技术架构上,调用各个模块,来构造一个功能——链,每增加一个功能,可以使用已有的链,也可以创建一个新链。


E使用了虚拟机方式实现智能合约,E中的虚拟机叫做EVM,是一个轻量级的沙盒执行环境。为了让智能合约更加方便,以太坊开发者创造了新的语言来编写智能合约,目前最流行的EVM编程语言是S。EVM的一大特点就是只能对链上的数据进行读写,非链上的数据只能在调用智能合约的时候,由调用者通过函数参数传递到智能合约中。(EVM的这个特点确保了智能合约的结果是确定的,不会因不同的节点执行而导致不同的结果。)而智能合约本身和智能合约的调用过程(或者叫做使用智能合约的交易)都会记录在链上。


因此,我们可以看出,以太坊的架构中,“链”是信任的锚点,所有的信任都来自于链。


而F使用了D机制实现智能合约。相比于E的EVM,D可以算是一个重量级的沙盒执行环境。由于D的特性,F可以使用很多语言开发智能合约,同时也可以使用很多库函数和系统函数,因此,F的智能合约灵活性更高,(比如可以和物联设备通讯),但是这种灵活性也导致了可能不同的节点执行后产生不同的结果而无法达成共识的风险。而C的引入,使得F的智能合约是直接部署在某几个节点上的。每个智能合约可以创建新的链,也可以和其他智能合约共用一个链。“链”在F的架构里,相当于实现某个功能时,参与该功能的几个节点所共用的一个存储空间。


明白了这两种智能合约的实现方式区别后,我们就会发现这两种典型的区块链的设计思路的区别了——“链”到底应该位于架构的哪一层?


在区块链原教旨主义中,由于大家都不可信,所以只能相信由H算法串起来的一个完整的数据系统。而在面向企业间应用的联盟链中,由于节点都是需要身份认证才能加入的,因此可信程度高一些。所以,只要关键的一些数据达成共识实现可信就可以了。


正是由于这种设计思路上的区别,在E中,所有的智能合约都运行在同一个链上,大家共用一个可信的基础设施;而在F中,一个应用对应一个链,整个系统由很多子链构成,这些子链共用一套基本互信的基础设施。


从系统架构角度看,E是一个完整基础设施,不会拆散了来用。虽然E内部的设计耦合性很高,各个模块依赖性极强,甚至整个系统都依赖于某些基础的智能合约(例如以太币合约),但这可以看做是整个基础设施的内聚性导致的。


而F更像是一个区块链云服务平台,能够让用户方便的在基础平台上,使用各个模块创建一个一个的链进而实现一个一个的应用。所以,F是低耦合设计的一个平台。(作者:敖萌)
您需要登录后才可以回帖 登录 | 注册加入  

本版积分规则

Archiver|手机版|小黑屋|Discuz!扩展中心 ( 浙ICP备14042422号-1 )|网站地图QQ机器人

GMT+8, 2024-5-17 17:16 , Processed in 0.150923 second(s), 11 queries , Gzip On, Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表