万维链

Wanchain 4.0发布!跨链商业联盟链,开启万链互联新时代!

Wanchain T-Bridge框架快速入门

Bryan发布

1. 背景介绍

面对全球范围内呈现爆发式增长的种类公链和联盟链,Wanchain肩负着一项重要的发展使命,即设计出一种普适的跨链机制,让不同网络、不同技术架构的所有区块链能够实现互联互通。

Wanchain 4.0创造性提出了通用跨链框架T-Bridge,旨在实现资产和数据在不同公链与联盟链网络间进行自由流转。为了有效解决公链和联盟链之间的跨链交互问题,Wanchain 4.0采用了T-Bridge框架,该通用参考架构具有一系列模块化组件和通用协议。T-Bridge框架有效兼容了Wanchain业已推出的基于Storeman跨链节点组的公链跨链机制。

Wanchain 4.0通过T-Bridge框架将原链(source chain)、目标链(target chain)和路由链(routing chain)中的组件连接在一起,并为跨链交易定义了通用组件和通用协议。T-Bridge框架允许终端用户、命令行界面(CLI)和API工具等参与方访问服务提供商并发起跨链交易(CCT, Cross-chain Transaction)。跨链交易先由业务服务和跨链智能合约进行处理,然后将处理结果传输到协议中介人(Protocol Mediator)进行跨链操作。跨链交易的处理和传输依赖于三大模型:信任模型(trust model),确保资产和数据的完整性;交互模型(interaction model),定义区块链特定智能合约的操作;路由模型(routing model),定义跨链的事件、消息和数据传输。借助T-Bridge框架,任何人可基于此来开发自己的业务和跨链智能合约,并轻松构建去中心化的跨链应用。

2. T-Bridge框架的概念和模型

本节介绍T-Bridage框架的概念和模型,以便读者更好地了解T-Bridge框架和相关的CCT解决方案。

2.1 T-Bridage概念

下图描述了T-Bridge框架中CCT涉及的主要概念:

说明:

路由链(Router Chain):在T-Bridge框架下,路由链作为跨链交易的枢纽,用于连接在联盟链上发起的跨链交易。

联盟链(Business Chain):联盟链为跨链交易提供相关服务或资源。

协议中介人(Protocol Mediator,PM):在T-Bridge框架下,协议中介人在路由链和联盟链间提供跨链机制和桥接能力,侦听来自原链的信息,并执行相应的跨链交易请求。

服务提供商(Service Provider,SP):服务提供者提供跨链交易中涉及的服务或资源。

用户(User):用户通过跨链交易获得跨链服务或跨链资源。

跨链交易通道(Crosschain Channel):跨链交易通道提供带有跨链交易注册机制的T-Bridge框架,并支持多种跨链交易信任模型。

业务聚合(BIZ Aggregation):业务聚合用于转发和协调跨链交易中的服务或资源。

业务服务/业务对(BIZ Service/Pair):业务服务/业务对提供参与跨链交易的服务和资源。

2.2 T-Bridge框架和模型

基于T-Bridge概念,跨链交易系统可描述为由一系列交互和模型组成的T-Bridge框架。如下图所示:

说明:

T-Bridge框架主要基于路由链和协议中介人,其中协议中介人提供跨链交易连接能力。基于T-Bridge框架执行跨链交易,通过灵活的跨链交易信任模型对协议中介人进行验证和授信,其余参与角色可通过协议中介人使用相应的跨链桥接能力。

针对不同应用场景,链上的参与角色和对应的智能合约是不同的。因此,我们把跨链交易划分成三大类:开始跨链交易请求(StartCCT),路由验证请求(RouterProof)和业务触发请求(BizInvoke)。他们被定义为交互协议模型(Interaction Protocol Model)。

协议中介人通过具备跨链能力的T-Bridge框架为路由链和联盟链提供跨链交易机制。但是,我们很难为所有跨链交易场景都提供定制化的开发服务。为了减少用户开发的复杂度,让用户更专注于实际业务本身,T-Bridge框架计划提供管理平台让用户轻松定义和配置相关的流程。我们通过引入聚合处理模型(Aggregation Process Model)来解决这一问题。

2.2.1 跨链交易信任模型(CCT Trust Models)

为确保T-Bridge框架能够支持跨链交易,协议中介人提供了跨链交易桥接能力。通过协议中介人提交的跨链交易需由跨链交易信任模型(CCT Trust Model)进行验证和授信。

根据实际的业务场景,跨链交易信任模型可能千差万别。以下罗列了部分候选模型的比较:

单一授权签名信任模型(Single Authority Sign Trust)或多方联合签名信任模型(Multiple Federation Sign Trust)

多方签名(Multi-Sign)模型或多方安全计算签名模型(MPC-Sign)或Schnorr签名模型(Schnorr-Sign)

安全保证金信任模型(Security Deposit Trust)或非安全保证金信任模型(None Security Deposit Trust)

跨链交易智能合约和协议中介人服务的实施应当提供跨链交易信任模型的可扩展性。

协议中介人通过跨链交易合约进行注册,在跨链交易中提供业务服务和资源。

2.2.2 交互协议模型(Interaction Protocol Models)

考虑到分布式系统和角色参与者需要保持一致性的特点,通用跨链交易被定义并划分为三类:开始跨链交易请求(StartCCT),路由验证请求(RouterProof)和业务触发请求(BizInvoke)。他们被定义为交互协议模型(Interaction Protocol Model)。

开始跨链交易请求(StartCCT Request):通常由角色用户执行的初始交易。这是针对某一具体跨链交易场景下的第一笔交易。

路由验证请求(RouterProof Request):它是指路由交易,协议中介人根据彼链上的跨链交易执行己链上的路由交易。通常,协议中介人会监视链上的聚合请求或事件,并通过跨链交易信任模型在不同链间转发证明数据。

业务触发请求(BizInvoke Request):它是由交互的角色用户或服务提供商执行的交易。通常,该交易还可被进一步细分为业务确认请求(BizConfirm),业务提交请求(BizCommit)和业务取消请求(BizCancel)。

跨链交易合约,业务聚合和业务服务/业务对合约应提供能够支持交互协议模型的能力。

2.2.3 聚合处理模型(Aggregation Process Models)

作为一个普适的跨链交易解决方案和平台,应当为跨链交易聚合创造基础设施,以便让用户只需专注于他们的业务场景。

通过由T-Bridge框架提供的聚合处理模型,能够提供对跨链交易的聚合,并且定制化量少,开发轻松。

执行引擎(execution engine)基于状态机模式支持聚合处理模式。对于状态机模式,聚合过程被定义为数据模型,适用于特定应用场景。中介协议人运行时服务(PM run-time service)应由状态机自动驱动。此外,还应提供相应的协议中介人管理门户,以便于高效管理。

状态机定义(State Machine Definition):它定义了为某一跨链交易场景进行聚合处理的状态机。

状态行为模板(State Action Template):它定义了状态机模型中在某一状态下应当执行的操作。

业务聚合,业务服务/业务对合约,以及协议中介人服务的实施应当对聚合处理模型的提供具有可扩展性。

3. T-Bridge参考架构

基于T-Bridge框架的概念和模型,我们提出了对通用方案进行实施的T-Bridge参考架构。

说明:

T-Bridge参考架构通过分层方法进行定义。

协议中介人服务(PM service)起到核心角色的作用,它通过链中介(chain agent)与不同区块链进行通信。协议中介人服务能够支持多种信任模型,同时能够方便灵活地支持对特定跨链交易场景的定制。

具有钱包客户端和业务服务的应用层(application layer)应当能够让角色用户和服务提供商与跨链交易场景进行交互。

3.1 T-Bridge技术栈

为了让T-Bridge参考架构能够真正实施,我们提出了T-Bridge技术栈(technical stack),这样,实际系统便可遵循此技术栈进行实现。如下表所示:

3.2 跨链交易和业务合约

跨链交易中涉及跨链交易合约,业务聚合和服务合约,这些合约应遵循T-Bridge框架中定义的跨链交易规范。

3.2.1 跨链交易合约和框架规范

跨链交易合约主要定义了跨链交易能力中的信任模型的框架和注册机制。角色协议中介人和跨链交易服务必须通过遵循跨链交易合约来支持跨链交易能力。

跨链交易根(CCT-Root):维护基本的跨链交易信息,例如链标识符、支持的信任模型等。

跨链交易信任(CCT-Trust):定义支持的信任模型。每一个信任模型都应引入一个新的跨链交易信任合约。

跨链交易通道(CCT-Channel):维护协议中介人/服务的注册,维护跨链交易中涉及的支持的跨链交易服务或资源。

跨链交易分派器(CCT-Dispatcher):当协议中介人提交路由验证时执行分派器功能。请求由跨链交易信任来验证,并被分派至相应的基于跨链交易通道的业务聚合中。

通常,作为规范框架,下列关键字段可作为参考用于路由验证消息和业务合约请求/事件。

说明:

toChain:路由验证的目标链标识。

fromChain:路由验证的原链标识。

pmId: 协议中介人的标识,在两条链间进行分享。

bizData: 映射的业务数据,能够提供批量的路由验证能力,包含多种跨链交易请求数据。

proof: 验证签名,可用于根据业务数据bizData来验证协议中介人。

ccTxHash: 原链上发起跨链交易的交易哈希,用于跨链交易序列的唯一标识。

fromSrv: 跨链交易路由验证的服务服务标识,表示触发路由验证的服务。

chanId: 跨链交易通道的标识,在涉及多条链间进行共享。

entryMode: 跨链交易通道的功能标识,表示业务聚合中触发的特定进入功能。

rlpData: 映射业务参数,采用RLP编码或其他编码方式。

3.2.2 业务合约和协议规范

业务聚合(BIZ-Aggregation)合约和业务服务/业务对(BIZ-Service/Pair)合约主要定义了业务场景的协议。通常,协议规范应遵循交互协议模型。不同的跨链交易场景需要定义不同的交互步骤。

业务聚合合约能够分派和协调跨链交易中涉及的服务和资源。

业务服务/业务对能够在跨链交易中对服务或资源实现映射。

4. T-Bridge平台开发指南

借助T-Bridge框架,人们可以轻松开发和支持特定跨链交易场景的跨链功能。

基于T-Bridge框架和T-Bridge参考架构,我们提供了Wanchain 4.0 T-Bridge平台。T-Bridge的开发可以从以下三个角度来考虑:

协议中介人服务、新链和信任模型

T-Bridge框架规范和扩展

T-Bridge协议规范和跨链交易场景

4.1 协议中介人服务(PM Services)

通常,当引入新的区块链或信任模型时,应当改进协议中介人服务的实现来支持新链和信任模型。具有跨链交易信任的跨链交易模型也应当进行改进来支持新链和信任模型。

当实现新的协议中介人服务时,应当改进协议中介人管理门户以便支持新的配置,其他应用组件能够使用SDK组件能力。

4.2 框架规范和扩展(Framework Specification and Extension)

T-Bridge框架规范和跨链交易合约能够进行改进和扩展,从而支持新的功能。主要应修改跨链交易合约,其他应用组件便可使用SDK组件能力。

4.3 协议规范和跨链交易场景(Protocol Specification and CCT Scenarios)

当需要特殊的跨链交易场景时,可以定义T-Bridge协议规范来支持遵循框架规范的跨链交易场景,从而开发相应的业务聚合和业务服务/业务对合约。基于此,协议中介人服务能够通过配置来支持新的跨链交易场景,其他应用组件则可通过SDK支持跨链交易场景。


Leave a Reply

Your email address will not be published. Required fields are marked *