产品简介
区块链是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构,并以密码学方式保证的不可篡改和不可伪造的分布式账本。这个定义来自工信部《中国区块链技术和应用发展白皮书》。
区块链技术促进了互联网的变革。互联网在区块链的深远影响下,正在由信息互联网时代迈向价值互联网时代。区块链正在将我们带入价值高速公路时代,人们能够在互联网上,像传递信息一样方便、快捷、低成本地传递价值。
经过多年的区块链应用实践,发现区块链底层技术很重要,但更重要的是区块链与业务场景的结合。浪潮区块链平台并不是提供开源区块链技术的发行版或区块链基础设施云服务,而是进行高层抽象和场景化封装,构造区块链平台即服务,以帮助开发者快速掌握区块链技术,并正确地将区块链技术应用于具体业务场景中。浪潮区块链平台提供的是区块链PaaS和SaaS服务。
浪潮区块链平台从分层架构上可以分为两层:基础设施层和平台服务层。基础设施层包括区块链基础设施、链外存储等。平台服务层包含了场景化封装API和平台用户界面。
产品架构
IBDS台是含数据的区块链网络。得益于质量链长期运营积累的数千家企业和千万消费者,加入质量链不仅仅获得了区块链基础设施和平台服务,还可以与链上企业、开发者或消费者进行交易或业务协作。企业按行业加入不同账本。随着时间的推移,质量链BaaS平台支持的行业或业务场景会越来越多。
因不同业务场景需要,浪潮区块链平台的基础设施由多种区块链技术构成(又称混合链架构):超级账本中的Fabric区块链、采用PoA共识的以太坊和浪潮自主研发的高并发审计侧链。浪潮区块链平台可运行在云端或本地的虚拟机环境下,并需要关系数据库、对象存储、内存数据库等其他基础设施(链外存储)的支撑。
1.超级账本的Fabric
超级账本HyperLedger,尤其是其中的Fabric,是全球最受欢迎的许可链技术。它支持多种客户端编程和智能合约语言,如Go、Node.js、Java等,它使用已有语言而没有自造智能合约语言,这无疑降低了学习门槛。
区块链是一个不可变的共享账本。为了让多个分布的账本保持数据一致,共识算法的选择是一个关键问题。现有区块链在共识算法上一般采用“排序-执行”架构:先验证和将交易排序,再广播到所有peer节点,每个节点按顺序执行交易。由于所有交易都由所有节点顺序执行,性能和规模受到限制。
Fabric创新性地引入了一种称为“执行-排序-验证”:交易先发给所有背书节点去执行并检查正确性,对执行结果有背书节点签名;收集到足够的背书节点签名(按背书策略)后,交易发给排序器;排序器对多个交易排序并打包成新区块,将新区块广播到到所有peer节点;各节点验证背书签名看是否符合背书策略,符合就将新区块保存到本地,从而实现账本的更新。
“执行-排序-验证”除了带来高性能,还带来了更灵活的共识机制。共识策略可以配置到智能合约一级,如一般交易只要简单多数节点背书即可,而高级交易可以要求三分之二节点背书。
不同于公有链,许可链更重视隐私和保密性。Fabric支持通道,通道即账本,多个通道即多个账本。多个不同的参与方(Fabric通常称其为组织Org)可以加入同一个通道来共享同一个账本。通道之间的网络和数据是隔离的。
除了支持通道,Fabric还支持私有化数据。通道中数据默认是不加密的,可以被通道成员看到。但私有化数据默认是加密的,只有得到授权的通道成员可以解密数据。
从2.0开始,Fabric开始支撑UTXO模型的通证(FabToken),用于描述链上数字资产,并使用多方信任的共识机制来管理资产产权转移。FabToken是一个通证管理系统,允许使用超级账本Fabric发行、转账和赎回通证(token)。目前FabToken仅支持同质化通证,但FabToken承诺未来会支持非同质化通证。
浪潮区块链平台选择超级账本Fabric一是因为它的流行性,如百度、阿里、腾讯、京东、华为都在自己的区块链云服务中支持Fabric;二是因为它的能力强,支持多通道和私有数据、高性能共识算法、内建CA等使Fabric可以满足复杂的企业用户需求。
2.以太坊
以太坊网络引入图灵完备的智能合约体系,使得区块链可以超越比特币的金融领域,可以用于几乎所有的业务场景,以太坊使用的区块链技术被称为区块链2.0。
以太坊是可编程的区块链,它允许用户按自己的意愿创建复杂的操作(通过智能合约编程)。智能合约运行在以太坊虚拟机(EVM)中。以太坊虚拟机支持多种智能合约语言,最流行的是以太坊专用的Solidity语言。
以太坊默认共识算法是工作量证明(PoW),但在浪潮区块链平台中为以太坊选择的共识算法却是权威证明(PoA)。权威证明(PoA)是一种基于声誉的共识算法。要运行权威证明共识,需要在现实社会中找一些(如12个)声誉良好的个人或实体,每人分配一个区块链节点。然后这些节点轮流负责打包区块(挖矿),其它节点负责验证区块。如果说权益证明(PoS)共识需要矿工抵押加密货币,权威证明(PoA)需要矿工抵押自己的声誉。参与这种共识算法的矿工都是现实中的人或实体,可监管性比较好。
浪潮区块链平台选择以太坊的原因是需要它的通证激励机制。基于浪潮区块链平台的爱城市网APP,其中用于用户激励的五彩石就是以以太坊为支撑发行的一种积分型通证。在五彩石体系中,爱城市网用户参与社会共治、质量共治等活动,为网上社区做出贡献获得五彩石奖励,然后用户用五彩石可以在五彩商城兑换奖品。
随着超级账本Fabric的通证(FabToken)体系慢慢成熟,浪潮区块链平台中的Fabric和以太坊都可以支持通证的发行,可以按需选择。
3.审计侧链
超级账本Fabric的宣称TPS(每秒交易数)能到两千多,但那是在高端硬件支撑和受限环境下测试出来的,实际部署中一般只有500-600TPS。这种TPS虽然比以太坊快很多(以太坊的TPS在10-20),但在一些高并发场景下仍显得过低,如对API调用的审计、对广告曝光和点击的跟踪等。
为了弥补高并发场景下区块链基础设计能力的不足,浪潮区块链平台自主研发了以Fabric为母链(主链)的审计侧链系统。这个审计侧链是一个中心化系统,使用java集群+MySQL集群实现水平扩展和数据分区。实现了对区块链交易的客户端签名、交易发起、校验、打包成区块、区块哈希写入Fabric母链等。
审计侧链的用户直接使用Fabric母链的,区块头哈希也被写入母链,这使得审计侧链虽然使用中心化架构,仍实现了链上数据的不可篡改和不可否认区块链特性。审计侧链扩展了Fabric的数据处理能力和数据存储能力,是Fabric的一个良好补充。
审计侧链的TPS与部署的java和MySQL实例数量有关。由于简化了共识机制,即使仅部署单个MySQL实例,审计侧链的TPS也远超超级账本Fabric,可达数万TPS。
审计侧链提供客户端SDK(jar包)供开发者使用。使用SDK前,需要先启用开发者账号,导出私钥,并将私钥和SDK配置在一起。开发者应用调用审计侧链SDK写审计日志,SDK会用私钥将写链请求进行数字签名,然后发往审计侧链后台。审计侧链的矿工进程会将交易打包成区块写入MySQL,并将区块头哈希写入Fabric母链。
4.区块浏览器
区块浏览器提供一个交互界面,供用户查看和检索区块、交易数据。在超级账本中,Fabric带有一个标准区块浏览器(blockchain-exploer)。但这个区块浏览器功能很简单,无法按智能合约、按用户过滤数据。
浪潮区块链平台参考了Fabric和以太坊区块浏览器的功能,自主设计和研发了支持混合链的区块浏览器BCE(暂名),支持同时查看Fabric链上数据、以太坊通证数据和审计侧链上的审计数据。并且提供更强的数据隔离检索能力,可按登录用户检索与自己相关的链上数据。
浪潮区块链平台将常见的区块链使用场景提供了统一的智能合约实现,并将这些智能合约接口封装为场景化Rest API。自主研发的BCE区块浏览器针这些统一封装智能合同提供了个性化的数据展示界面,这大大提高了链上数据的可读性。
为了保护用户隐私,区块链平台使用了链上和链外数据加密存储技术。没有得到授权的用户,由于无法解密数据,通过BCE区块浏览器看到的是“乱码”。而得到授权的用户,登录BCE后,可以看到解密后的数据,包括链上数据和链外存储上的数据。
5.链外存储
浪潮区块链平台默认支持两种链外存储,关系数据库和对象存储。通过定制开发,浪潮区块链平台还支持各种NoSQl数据库、内存数据库、Hadoop HDFS、HBase、Hadoop Hive以及存储类云服务等各种链外数据存储方式。
区块链和链外存储是一种共生关系,对于某些数据,高价值和关键数据部分存在链上,低价值和体积庞大部分存在链外存储上,双方使用某个唯一id关联在一起。链外存储可以保存明文数据,也可以保存加密后的数据。
链外加密存储是将数据加密后存储在链外存储中,而将密钥交给区块链进行管理。要解密存储中的数据,必须向区块链申请授权,取得授权后可以拿到解密密钥,然后就可以解密链外加密存储中的数据了。
区块链平台的数据网关组件提供了对链外存储数据的安全防护看,而数据网关与区块链相配合,数据网关执行区块链中定义的认证、授权策略,对链外存储的访问行为形成审计日志记录到平台的审计侧链中。
由于链外存储数据的多样性、体积庞大的原因,经常用“大数据(BigData)”这个词来描述链外存储中的数据,这使得区块链和大数据一词经常关联在一起。
区块链对于大数据可以起到的作用有:
- 区块链管理大数据:用链上元数据来管理链外的大数据,管理大数据的备份、复制、同步、共享、一致性、访问认证和授权、访问审计等。
- 数据安全防护:利用区块链实现身份认证、数据资源授权和访问审计,为数据中心建立数据防护体系。
- 区块链实现大数据的资产化:对大数据进行产权的确认(如产权方对相关链上数据id进行数字签名)、使用权的管理、价值评估和定价、共享和使用权交易等。并可以引入通证机制,对大数据交易进行直接的计量、经济驱动、价值变现等。
产品优势
场景化封装
将区块链常用业务场景抽象出通用智能合约实现,配合以场景化共识策略和托管私钥,封装为Rest API。
面向开发者
将场景化API封装成为开发者界面并提供调试和管理工具供开发人员使用,降低区块链应用开发门槛和简化开发。
混合链架构
内建了超级账本Fabric、以太坊、审计侧链等区块链基础设施,整合为统一的实名认证数字身份。
弹性数据隔离
隐私数据加密存储到链上,解密密钥附加在授权白名单中,只有被授权方可以解密数据。
产品功能
秘密托管
秘密指对个人或组织来说需要保密,不能告诉其他人的信息,如各种账号、密码、密钥等。托管给区块链这一信任机器后,秘密可以使用但不能提取。支持单人秘密托管也支持秘密碎片化后的多人联合托管。
身份与认证
基于区块链的自主数字身份让组织或个人对自身的身份数据获得控制权,在保护个体隐私的前提下,可自主选择部分身份属性对外发出称作可验证声明的身份证明;支持基于数字身份的区块链增强认证。
隐私保护
支持在链上以加密存储的方式保存将隐私数据,后面附加授权白名单,只有白名单中的用户才可以解密隐私数据,这种做法称为隐私交易。
虚拟通道
在Fabric行业通道基础上,利用参与方相对固定化的隐私交易(加密存储+授权白名单)隔离出多个虚拟通道,保证企业或机构交易数据只被授权方可见。比私有数据更灵活、成本更低。
一物一码
基于区块链生成商品追溯码(一物一码),用于商品溯源和防伪。每一万个码分段加密,加密密钥保存在区块链防止破解,支持验证码。自动对接到国家工业互联网标识解析系统。
可信抽奖与可信随机数
以用户id、可信时间戳、一物一码、区块哈希等作为随机种子生成可信随机数,以智能合约固定化抽奖规则和中奖概率,抽奖和中奖记录在链上留痕,并可扩展到一切“随机+信任”场景。
存证与溯源
存证是区块链常见使用场景,支持单用户或多用户存证,支持存证数据的更新操作;支持将存证服务产生的多个链上证据关联在一起形成证据链,可对存证数据进行溯源。
授时预言机
在许可链环境下提供去中心化的可信时间戳授时服务。
审计侧链
弥补Fabric主链TPS的不足,面向高并发场景,以水平扩展分片的方式保存审计日志。侧链的用户身份来自主链,侧链的每个区块都锚定到主链。
数据安全防护
将数据资源和数据API向区块链注册,用数据网关拦截数据访问请求,请求通过网关前需要向区块链认证、取得授权、得到令牌,数据访问行为被审计侧链记录日志。
API与调试
为开发者访问BaaS平台提供完备的引导,提供API文档、在线调试工具和范例。
数据共享与开放
数据共享是对隐私交易、虚拟通道、数据安全网关等底层技术的综合性封装。利用数据资源智能合约对数据的产权方、隐私方、运营方等进行综合管理,控制、监控和审计数据共享与开放过程。
手机客户端
提供手机APP参考实现,用户可通过手机进行一物一码扫码、查看通证余额、参与抽奖、拍照存证、部分区块信息浏览等。
通证激励
基于以太坊(PoA)提供积分型通证激励模型。允许通证在消费者、运营方、企业或机构三方间流动。提供APP和小程序供消费者访问通证,提供通证兑换的途径。
企业服务平台
企业通过企业服务平台访问BaaS网络,操作象企业注册、供应链协同、二维码营销、存证服务、积分策略、充值购买积分等功能。
运营平台
IBDS是带数据、可运营的区块链网络,运营方利用运营平台操作消费者和企业的实名认证、运营策略、链上数据安全、企业积分充值、运营活动等功能。
应用场景
存证服务
区块链的去中心化不可篡改特性,很适合于保存、鉴别电子证据,还可出具区块链电子证明,证明电子证据的存在性、生成时间、上传方等关键证据特性,起到公证中介的作用。使用存证服务前先注册区块链身份。如果想对证据保密,可选择加密存储的方式上传,或选择零知识存证,即在用户本地计算哈希值,仅上传哈希值而不上传证据本身。为提高证据可信度,支持将多条证据关联在一起形成证据链。
供应链协同
基于区块链生成、管理、共享、使用物品标识码(可自动向工业互联网标识解析系统注册),基于一物一码和物联网设备进行供应链协同,通过区块链进行跨企业机构进行数据共享,通过区块链的不可仿冒、不可篡改、多方存证等特性提高协同数据的可信度,利用虚拟通道、隐私交易等特性保护商业隐私的前提下,提升供应链系统协同效率,并为供应链金融等增值业务提供可信数据支撑。可以选择部分供应链协同数据向消费者开放,即对接到商品溯源体系,提高消费信任度。
商品溯源营销
消费者用手机APP扫描二维码查询链上授权的供应链协同数据,请求区块链验证标识码真伪。企业版APP可按地理位置校验铺货地域,还可通过企业服务平台为商品标识码设定一系列营销活动,如在线咨询、线上下单、附近实体店查找、抽奖活动、积分返利、评价评论、问答、售后服务。除了实现商品溯源外,通过区块链这一信任机器架起企业到消费者之间信任营销桥梁,并最终形成可信的商品口碑社区。
数据安全
基于区块链开发的数据安全网关用于为后面的数据中心提供数据安全防护。数据通过智能合约完成资源注册、隐私授权、服务注册等操作就可以通过网关对外提供数据服务,数据使用方调用数据服务前需要向区块链获取访问令牌,所有行为被区块链严格审计。高敏感数据还可以通过区块链平台的秘密托管、加密存证等能力进行安全增强。
数据资产
数据资产是一种特殊的数字资产,它贩卖的往往是数据使用权而不是产权,在数据资产化过程中,除了考虑产权还要考虑隐私权问题。基于区块链开发的数据资产网关用于为后面的数据中心提供数据资产化能力。数据通过智能合约完成资源注册、数据确权、隐私确权、脱敏处理、数据定价等操作就可以通过网关对外提供收费数据服务,数据使用方调用数据服务前需要先购买通证(预付费),然后才可以获取访问令牌,也可采用后付费方式。价值网关随时检查用户通证账户情况,余额或授信不足无法通过网关。
积分与激励
使用以太坊(PoA)作为积分型通证的区块链基础设施,积分总量固定,企业通过充值购买获得积分,然后通过营销活动将积分奖励的形式发放给消费者,消费者再通过积分兑换商品的形式花费积分,使积分回到运营方,完成积分型通证的流转循环。消费者、企业、运营方分别通过手机APP、企业服务平台(网站)、运营平台(网站)管理自己账户下的积分型通证。