区块链基础服务应用生态基石链介绍
扫描二维码
随时随地手机看文章
区块链已公认成为构建新一代“信用互联网”的基础技术和应用架构,各行各业“上链”进行数字资产管理及发布DApp (分布式应用Decentralized App)必将成为未来的趋势。在当前疯狂的业务“上链”需求下,区块链技术架构和应用模式都还远未成熟,也并没有真正可用、好用的区块链基础设施和生态。就当前现状来看,企业应用与区块链对接的门槛依然非常高,开发投入的工作量也很大。各路豪杰也在不遗余力的纷纷推出各自的区块链系统,宣导各种不具有实际意义的功能和技术指标,各行各业都在各自为战,发力探索区块链应用落地之路。
1. 愿景和目标
未来的区块链应用模式,绝不会是某一条公有链承载所有数字资产和DApp,而应该是众多联盟链、公有链有序共存的局面。正如现代互联网体系架构一样,骨干网络与企业内网之间是并存与互补的关系,而网络之间通过IP地址与网关等进行通信和协议转换,它们各自承载着不同的业务应用并有序的进行互联互通。而建立一个“基石链(BaseChain)”基础设施和相应的应用生态,通过统一的数字身份、数字资产管理、跨链互操作等平台基础服务,整合和打通各种异构区块链系统以及其上的数据和应用价值,将具有重大的现实和战略意义,这也是我们的长期愿景与目标。
在这个链群体系中,既包括了提供核心基础服务的“基础链( FoundationChain)”,也包括了各个行业的联盟链和公有链体系-我们称之为“应用链( AppChain)” 群。基础链和应用链之间通过“链群网关”(GCGateway)实现数据交换和价值流转。基石链的链群体系构建了一个可信的价值高速公路网络,实现了区块链网络价值的延伸和扩展,打破了行业联盟链和单独公有链的价值局限性,也为链群体系的互信互通提供了更加灵活和健壮的有序方式。
经过不断的探索与实践,我们的区块链即服务平台产品( ArxanChainBaaS)已迭代到了2.0版本,并已在多家金融机构及核心央企部署和使用。在与业务应用对接的过程中,我们在档案保存、专利保护、文创品管理、医疗信息共享、物流追踪、物联网结算、智能可信终端、资产溯源、学历学位证明、资产确权、数字身份认证、交易及支付等多个领域积累了大量的使用区块链解决实际业务痛点的经验。而现在,我们正向着下一个目标迈进与合作伙伴一起共建互信互通的区块链链群的基础设施和生态,让各行各业都能够轻松“上链”,进而成为全球最大的、最具实用价值的跨区块链网络的数字资产管理和分布式应用承载平台。
其主要价值在于:
对公众,基石链为当前混乱的“区块链世界”提供统一的数字身份和数字资产管理,使各个原本孤立的“应用链”(包括联盟链和公有链)能够相互识别、进而可以进行可信的互操作,使原本只在各自区块链上可信的资产得到更广泛的认可,进而可以更好地流通和增值。
对政府,基石链的基础设施和建立机制为监管区块链相关产业提供了一个类似PalanTIr (这是-家科技创新公司,能够通过对海量数据信息的整合,利用算法模型,在注重隐私保护的前提下,进行数据搜索和风险分析)的抓手,是帮助政府从微观法制和数据金融两方面优化生产关系的利器。
基石链能够把区块链的思维方式发挥到极致,发动大家- -起共建、共治一个强大的、可持续发展的生态系统,并在其上实现共享、共赢。
基石链的未来,是类似传统互联网时代Amazon和Google的基础设施平台(是它们的去中心化版本),能够为整个产业提供巨大的价值。
2. 生态体系
我们期望与各行各业的合作伙伴--起,共同建立这个基于区块链的基础设施和生态系统,打造我们的“基石链开发社区”“基石链应用联盟”和“基石链投资联盟”三大主体,实现主体成员间的共建、共治、共享、共赢。
基石链开发社区:由阿尔山区块链联盟公司与各个技术研究中心、外包开发企业、高校技术协会等资源共同组成的开发社区,一起开发和运维基础链节点及其上的基础服务,并为社区的良性发展和运营做出贡献。我们要为开发社区提供和维护开发者沟通交流工具,组织线上线下技术研讨活动,组织基础服务接口标准及数据共享规范的制定,组织基础服务及相关工具的研发。社区成员共同建立和维护基石链技术体系,包括但不限于:积极参与社区的各种技术研讨以及标准和规范的制定工作,积极参与承接社区发布的开发任务和相关的系统运维工作。参与基石链开发社区并为其做出贡献的各方,都将享有分享基石链生态收入和利益的权利。
基石链应用联盟加入基石链体系的企业和机构组成应用联盟,实现资源共享和应用间的互操作。联盟成员参与基石链基础设施的共建和共制,在各自的应用链和其上的DApp优先采用基石链技术体系、基础服务和工具。而我们也将不断完善对各种异构区块链网络的支持,使基石链体系实现多链并存,数据互联和共享。
基石链投资联盟:成立专项基金,并联合各种社会创投机构,扶植加入基石链的创业企业,以及帮助这些企业对接各种优势资源。我们将与投资联盟成员共同在参与基石链计划中的企业中发现、评估、推介有价值的扶植对象。通过投资、投后增值服务等手段,帮助扶植对象企业快速成长,把整个基石链生态发展得更有价值。
基石链体系架构
基石链架构体系旨在建立起由一个基础链和多个应用链共同组成的“链群”体系,其中包括一个以公有许可链形式存在的基础链及多个联盟链和公有链组成的应用链链群,它们分别承载各自的数字资产和DApp,同时支持基础链和各应用链上应用间的跨链互操作以及数据交换。应用链可以单独由第三方组织部署和运营或者租用由阿尔山区块链联盟公司在云环境中提供的联盟链BaaS服务,应用链需要采用基石链上统-的DID (Decentralized ldenTIty)和数字资产管理服务,才能成为基石链的一员,通过基础链与其他应用链进行数字资产和数据的交换。
作为一个多链并存的链群解决方案,基石链可以支持多种同构和异构区块链网络,组成一个有序的区块链生态链群。链群网关是针对各个应用链在基础链中建立的轻量级基础服务访问端口,其他区块链网络通过调用链群网关接口即可访问基础链中提供的基础服务。从业务角度讲,基于链群结构的区块链网络体系可以打通各个应用链之间的信息孤岛,实现价值的互信互通。从技术角度讲,单链结构的区块链网络性能和扩展性是有限的,区块链网络需要通过多链、跨链的解决方案实现性能的水平扩充。
1. 基础链及其核心服务
基石链中的基础链采用联盟链的形式搭建,我们称之为“公有许可链”,由阿尔山区块链联盟公司、全国各大高校和科研院所、各级地方政府和知名商业组织共同组建和维护。基础链中的共识节点及账本节点都是需要经过基石链联合运营方许可,统一颁发证书后方能加入。
基础链提供面向公众开放使用的基础服务,我们构建了“3+1”核心服务和:一个工具类Token为整个区块链链群提供基础设施服务,这些服务包括:
● 统一数字身 份服务(Unified DID Service )
● 统一数字资产管 理服务(Unified Wallet Service)
● 统一应用链和DApp注册 及发现服务(Unified RegistraTIon Service)
● (+1)数字身份和数字资产的索引及搜索服务(Data Linkage Service )
2. 应用链及其核心服务
应用链是基石链群中必不可少的组成部分,各个参与方可以在各自的应用链上发行资产、开发DApp。而针对不同行业领域的业务场景,可以采用不同的技术体系来搭建自己的区块链系统,比如公有链、联盟链或者采用不同的技术平台,比如Ethereum, Hyperledger; 或其他第三方自主开发的区块链平台:也可以使用阿尔山提供的BaaS平台搭建并托管给阿尔山区块链联盟公司进行维护等。应用链中的核心服务主要包括以下内容(下图中虚线框内的部分)
大家不必都拥挤在一条主链上,这样既能提升性能,又能保证数据隐私安全。只有在进行跨链的数据交换或资产登记时才需要通过链群网关提供的服务接口与基础链进行交互。
3. 链群网关及链群服务
在计算机网络中,网关的主要功能是协议转换和数据转发,“链群网关”在链群网络中的作用也类似,作为跨区块链网络的网络代理、异构区块链协议的转换、数字资产交易等。链群体系中的每个应用链可以独立运行,并在有跨链交易产生的时候通过链群网关和基础链以及其他应用链产生交易。链群网关主要有以下功能包括:区块链网络代理、对异构区块链网络的支持等、链群KYC体系以及链群交易等。
4. 监管合规
要保证整个生态体系可持续发展,符合监管要求并做到合法合规是基石链必须遵守的底线。
区块链的内容监管是对互联网内容监管的一部分,在自身符合法律法规要求的前提下,监管部门以应用链形式搭建监管联盟链,接入基石链体系,并被赋予较高的优先级和权限,通过实时数据分析对链群中的资产和交易进行监控和分析。一旦发现违规,通过注册机制可以迅速定位到问题应用链或DApp,并采取相应技术管理手段,对其执行关停并转等操作。在链群中发布的所有数字资产,都会;引入第三方信用评级机制,使其对于交易双方以及监管机构公开透明,便于大家识别良莠,趋利避害。
基石链软件架构
1. 设计原则
基石链体系以ArxanChain BaaS为底层区块链基础服务平台,其设计原则为:
(1)模块化: 微服务及模块化的架构设计,使我们的功能模块能够按不同业务场景进行切分,灵活的部署到客户自己的数据中心或基石链提供的云基础设施中。各个模块之间松耦合,也使我们的CI/CD系统得以发挥最大效果,提高了软件产品版本的迭代速度,并提升了质量。
(2)企业级: 我们所开发的区块链基础服务平台,需要满足企业客户对软件产品的高标准严要求,主要应该具备以下特征服务的高可用性,金融级别的安全性,关键数据的实时可审计,统-的接口标准,可持续化的迭代和更新,满足客户的定制化需求,与云计算相结合做到可扩展易维护,以及具备海量数据的处理能力等。
(3)易用性: 简单的搭建一个区块链网络很容易实现,但在开发实际业务应用时,如何与区块链底层进行对接,并满足企业上链需求,就目前区块链行业的发展现状来看,还非常的低效和不完善。ArxanChain BaaS不仅提供了方便快捷的区块链网络部署及其运维、监控和管理解决方案,而且在降低企业应用对接区块链门槛方面,也做了很多有益的尝试。目前,我们已经开源了一些简单易;用,且支持多种开发语言的SDK工具包。此外,还提供了多种应用编程示例,如积分管理、区块链小游戏、资产存证、资产溯源、资产交易等,用于支撑基石链体系中各个联盟链的部署、运营和应用的上链需求。其各个组件均以微服务化的形式开发、部署和管理,同时支持大规模集群化的扩展及按照业务量的增减进行动态调配。在国家级云服务提供商所提供的多数据中心云基础设施支撑下,我们可以为中小企业快速搭建应用联盟链,且无需这些企业再对底层基础设施有过多的投入。
(4)开放性: 借助清华大学计算机系的深厚技术背景,我们在区块链底层核心技术上保持着一定的领先优势。同时,抱着开放、合作、共赢的态度,我们愿意与联盟成员一起分享我们的研究成果,并积极的搭建开发者社区、应用联盟,用友好的开源协议和激励机制,来鼓励大家共同推进基石链体系内软件服务的开发。由于未来的区块链应用生态,一定是多种异构区块链并存的体系架构,我们非常希望与各个区块链研发企业合作,利用链群网关技术实现对这些不同区块链间的互联和互通。
(5)安全性: 除企业级软件所要求的数据隔离及多副本、敏感数据保护、网络安全、软硬件系统安全等基本指标外。我们还要在软件设计和代码开发过程中,从区块链底层的共识算法、参与共识的区块链节点自身的安全加固、数据加解密及签名和验签算法、数据访问权限的控制及可审计、密钥安全、智能合约的漏洞监测机制、发现安全漏洞后的应急响应机制等多方面进行综合考量。
2. 架构详述
基于上述设计原则,基石链软件架构主要包含四个平台,分别为云链- -体化基础设施平台、基础服务平台、区块链即服务平台和运维平台。
(1)云链一体化基础设施平台该平台为基石链提供底层基础设施的支撑,分布在多地的多个数据中心,为整个生态体系提供虚拟机、容器、高速网络、分布式存储等底层基础资源。
(2)基础服务平台为BaaS平台自身及区块链应用提供基础软件的SaaS化服务,如:支付网关、账户管理、消息总线(Event Bus)、SQL 数据库、KV数据库(Redis)、高速缓存、服务注册与发现(Consul)、 服务负载均衡等。
(3)区块链即服务平台:即BaaS平台(Blockchain as a Service),为企业应用上链提供区块链、智能合约、业务应用开发工具集等。屏蔽了底层区块链的复杂逻辑,使企业开发更聚焦、更容易。
(4)运维平台负责管理在云链基础平台中部署的应用链以及BaaS平台,包括:部署、升级、监控和日常运营等,同时也提供对各个服务进行实时审计、安全策略配置、以及计费等工作。
在区块链即服务平台中又分为以下四层结构,分别为:
(1)区块链底层:目前ArxanChain BaaS的区块链底层主要基于Hyperledger Fabric 1.x版本,并对其进行了必要的性能优化,以及新的共识算法的开发。同时也在与清华大学计算机系一同合作开发具有自主知识产权的清华链,并积极参与其他联盟链和公有链技术的研究。我们的目标是,在自身能够兼容多种区块链技术的同时,使用链群网关服务接入各种异构区块链系统,通过对数据协议的转换,实现跨链的数据共享和资产交换。
(2)链管理层:主要设计目标是用于隔离区块链底层的复杂性和异构性,对下能够支持接入不同的区块链底层技术,对上能够提供统一的监控、部署、密钥证书管理、合约管理、token 管理等功能。
(3)合约层:智能合约相关的合约管理层,主要提供面向业务应用的合约模板库,以及帮助企业进行DApp应用相关智能合约开发和部署的各种工具。
(4)业务层主要面向企业用户的DApp业务应用开发,提供了丰富的SDK开发工具包和应用模板,并实现了很多适用于不同业务领域的服务和相应接口供大家直接使用,包括支付、积分发行和管理、数字身份DID、资产存证、资产溯源、资产交易、数据搜索引擎等。
链群服务场景示例
基于基石链体系提供的“3+1”核心服务和工具类Token (AXT)可以构建丰富的业务应用场景和链群生态,应用链本身及其DApp、数字资产、账户等信息可以在基础链中注册,应用链的数字资产变成一种可以在链群中被查看、评级和交易的数字资产,进而实现链群内数字资产的交易。同时链群上的每个应用链可能都有大量的有价值数据,借助于“链群数据索引服务”及“链群数据共享服务”,这些数据可以在基础链上建立索引信息并且按照统一的标准,安全地授权给第三方查阅和使用。接下来我们将以三个场景为例进行介绍。
1. 场景一:应用链信息统-登记
某供应链平台的应用链SPChain在审批通过后加入基石链链群网络,在SPChain上部署了票据业务的DApp BllApp,并且在其上发行了数字资产BillAsset,用户Alice 拥有部分BllAsset的数字资产,业务流程图如下。
应用链信息登记业务流程如下:
(1) SPChain发起基石链链群的加入申请,并提供相关元数据信息,包括:应用链名称(SPChain)、应用链描述(某行业供应链金融服务协同平台)业务分类(供应链金融)、运营方信息(某供应链联盟)、节点服务地址等。
(2)基石链联合运营方查看SPChain的链群加入申请,并核实SPChain的元数据信息。
(3)审核通过后在基础链上为SPChain进行注册,并生成应用链DID信息,比如“did:axn:splchain-dd89dd02- 66fc-4c76-b8d2 e37017554af8“,基础链为SPChain的DID分配密钥对(一个DID可以绑定多个密钥对),SPChain 与基石链体系内的其它链产生交互时使用该密钥对进行身份认证。
(4)基石链联合运营方根据SPChain的节点数量、硬件资源和应用链运营方的运维实力等进行综合评价,为其分配资源配额,包括初始激励AXT的数量、应用链在基础链上可以登记的资产数量等。
(5)第三方个人或者机构可以根据链DID从链群中检索以及查询SPChain的详细信息,并对其信息进行核实。
SPChain上发布了BllApp,在提交申请将该DApp注册至基石链链群时,需要提供该应用的元数据信息,包括应用名字、应用分类、应用资产信息、DApp服务地址等。审核通过后,基础链为该应用分配DApp DID,比如:“did:axn:splchain-a673fd7 3-6471-6494-098a-b832fdc92eff”。
第三方个人或者机构可以根据BillApp 的DID信息,从基础链上查询该BillApp的信息及其所在应用链的信息,得到BllApp服务地址后便可访问应用链上的BillApp服务。
用户Alice在SPChain上持有数字资产BllAsset,如果该资产只在SPChain内交易流转,则无需在基础链上执行登记操作。当Alice的BillAsset有跨链交易需求时,则需要将该资产在链群网关进行托管并在基础链E对BillAsset进行登记注册,记录该数字资产的元数据信息并生成其DID信息。
基础链中注册登记的应用链资源(包括应用链本身、DApp、 数字资产、用户等)必须接受基石链评级机构的定期测评,评级机构包括基石链联合运营方、监管机构、评测公司等,评级规则的制定要保证公开和透明。基石链体系中的所有参与方都可以参与对应用链资源的评价,这些评价信息也将成为对资源评级的一部分。已经注册到基础链中的应用链资源如果长期不满足评级要求,会被从基础链中移除并加以公示。
通过以上步骤我们实现了链群体系中的应用链以及其上的DApp、数字资产、账户等在基础链上的登记。
2. 场景二: 链群数据检索和共享
我们以患者去医院就诊为例。患者去医院A就医,并做了B超检查,在医院A留下了医疗影像记录和诊疗记录。之后患者换了一家医院B,医生要求患者做一次B超检查后再进行更细致的诊断。患者在去医院B就诊时一般会携带之前在医院A拍摄的医疗影像信息、病例本等,但也可能会出现忘记携带医疗资料或者携带医疗资料不全或者不准确的情况。所有的医疗信息资料在医院都会有存档,假设我们建立了一种医疗信息数据共享平台,患者去医院就医前不用盲目地携带就医数据去就医,就医时医生会问询患者病症并根据患者的反馈从网络上检索患者的诊疗历史信息和记录等,了解患者的疾病历史、其他医生的诊疗方案和建议等,进而对症下药。整个过程即方便了患者(不用在花时间准备医疗历史数据),也方便了医生(可以查询更多的一手的、准确的患者诊疗数据,为诊断提供数据保证)。这个场景中涉及到几个核心的问题:
(1)医院A必须同意提供患者医疗数据共享访问服务:
(2)需要存在一种激励机制使得医院A乐于提供该数据共享访问服务;
(3)需要存在一种索引服务,通过该索引服务医生可以获取到患者的诊疗索引信息概要; :
(4)索引服务提供的索引信息不可以泄露用户的隐私信息:
(5)医生在读取医院A保存的患者诊疗信息时(患者的隐私信息),必须经过患者的授权:
(6)数据必须加密传输,不可以泄露患者数据:
(7)医院B的医生在查询完患者在医院A的诊疗信息后,本地不可以进行保存,下次访问依然从医院A处获取数据,保证共享数据提供方的利益。
这些问題在链群机制上可以安全可靠的解决,不需要借助第三方的数据共享平台。比如用户就诊的医院A同意在应用链上提供患者的就诊病例及相关的影像资料共享服务,并且医院A将相关的信息按照链群网关数据索引服务的要求,向链群网关上传了加密后的数据索引。那么,当患者去医院B就诊时,医生首先按照链群网关的索引服务要求,构建加密索引信息,并向链群索引服务提出查询申请,在得到用户的授权后,医生就可以看到患者的相关信息。业务流程图如下图所示:
医疗信息共享业务流程如下:
(1)用户首先通过链群网关的链群索引服务进行注册,生成DID信息等;
(2)用户在医院A就诊;
(3)用户在应用链上的医院A就诊后,医院A将用户的就诊信息按照链群索引服务的要求进行加密并上传,包括索引字段、索引字段隐私保护、索引概要、索引数据服务地址等;
(4)当用户去医院B就诊时,医院B的医生根据用户提供的相关信息向链群索引服务提交查询申请;
(5)医生得到用户的访问授权;
(6)医院A将用户的就诊信息访问权限开放给医院B的医生;
(7)医生通过用户的公钥验证共享数据的签名信息,判断数据来源身份是否正确。
3. 场景三:链群跨链数字资产交易
跨链交易DApp在链群上进行跨链数字资产交易时,以AXT作为交易媒介。跨链交易场景如下:某保险业务的应用链InsChain也加入了链群体系,Bob 是InsChain上的一个用户。SPChain 中的Alice希望以一定数量的AXT价格出售其BillAsset, Bob 希望够买一定 数量的BllAsset。交易流程如下图所示:
跨链交易DApp业务流程如下:
(1)Alice将要出售的BillAsset在基础链中登记,并生成了该资产的AssetProof;
(2) Alice选择合适的链群网关节点,并将AssetProof对应的BillAsset托管至该链群网关:
(3)Bob从基础链的待出售资产中发现了BillAsset,然后查看其资产评级信息和详细资产信息:
(4) Bob确认了BillAsset 所在应用链SPChain的相关信息后,确定这是他想要的资产。基于链群的KYC体系,Bob在SPChain中注册账户,Bob获得账户地址和密钥对;
(5) Bob在基础链中向Alice 发送AXT, DApp检测到Alice收到AXT后,自动将AssetProof转让给Alice;
(6)Bob向链群网关提供AssetProof及其在SPChain中的地址信息,发起兑现操作;
(7)链群网关检查Bob提供的AssetProof并将托管的BillAsset转让给Bob。