现在许多商业区块链案例中,我们经常能看到BaaS这个词,所谓区块链BaaS是Blockchain as a Service的缩写,中文译为“区块链即服务”,那么区块链BaaS究竟是什么?让我们带着这个疑问跟着源中瑞龙先生往下看!
说到区块链BaaS平台,就不得不提到区块链BaaS的核心技术,一般包括应用层、合约层、激励层、共识层、网络层、数据层中的关键技术。
应用层:
应用层与区块链的交互可以参考以下两种设计方式。
1、客户端通过应用层发起请求,应用层将信息发送给区块链(信息上链),应用层捕获处理结果,然后将处理结果返回给客户端。
2、客户端通过应用层发起请求,应用层信息上链,应用层不去捕获处理结果,而是客户端通过查询的方式自行在区块链上获取处理结果。
合约层:
区块链每个区块可编程、可嵌入代码的特性,合约层包含了脚本、算法、以及智能合约,可以简单的理解为是一份自定义的电子合同,之所以称为智能合约,是因为这份合约可以在达到约束条件自动触发执行,不需人工干预,也可以在不满足条件时自动解约,理论上可以触发执行事先约定好的一切条款。这也是区块链能够解放信用体系核心的技术之一。
激励层:
区块链BaaS激励层主要包括经济激励的发行制度和分配制度,其功能是提供激励措施,鼓励节点参与区块链中安全验证工作,并将经济因素纳入到区块链技术体系中,激励遵守规则参与记账的节点并惩罚不遵守规则的节点。
共识层:
区块链BaaS共识层主要封装网络节点的各类共识算法。如何在分布式系统中地达成共识是分布式计算领域的重要研究问题。正如社会系统中“民主”和“集中”的对立关系相似,决策权越分散的系统达成共识的效率越低、但系统稳定性和满意度越高;而决策权越集中的系统更易达成共识,但同时更易出现专制和独裁。
网络层:
区块链BaaS网络层的目的是实现两个端系统之间的数据透明传送,具体功能包括寻址和路由选择、连接的建立、保持和终止等。它提供的服务使传输层不需要了解网络中的数据传输和交换技术。
简单的用一句话来说就是:“路径选择、路由及逻辑寻址”。
数据层:
区块链BaaS数据层是底层的技术,主要实现了两个功能:数据存储、账户和交易的实现与安全。数据存储主要基于Merkle树,通过区块的方式和链式结构实现,大多以KV数据库的方式实现持久化,比如和以太坊采用的leveldb。
随着行业应用不断深入,典型案例加速涌现。在接下来的时间中,企业级BaaS平台建设将会成为一种常态,将来也将会有更多的企业通过BaaS平台开发更多的应用融入自身的业务当中,享受区块链技术带来的红利。