跨链“蚂蚁区块链”之跨链系统框架
Posted thefist11
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了跨链“蚂蚁区块链”之跨链系统框架相关的知识,希望对你有一定的参考价值。
1. 系统架构
可信数据连接服务包括同构/异构区块链层,跨链服务层,以及在业务层的区块链编程层。
通过跨链服务在底层区块链中的协议栈和跨链合约,实现同构或异构区块链之间可信交互,从而构成区块链价值网络,实现链上价值的可信流转,完成丰富的链间互操作。
蚂蚁区块链跨链主要有4个功能:
- 跨链互认数据规范
- 蚂蚁UDAG 跨链协议
- 跨链合约服务
- 基于 TEE 的 Oracle 集群服务
2. 规范化的跨链互认数据
设计链间数据互认规范。用户编写合约实现回调接口,用于异步接收账本数据回调使用。同时,业务逻辑可以在区块链编程层可以实现,通过跨链合约API进行数据调用和合约交互,完成多条区块链的协作,达到区块链的横向应用拓展。
2.1 用户开发流程
step1. 获取合约 API 定义(OracleInterface.sol)。
step2.在用户合约中引入合约 API 定义(OracleInterface.sol)
step3. 用户合约实现回调接口,用于异步接收请求结果。
step4. 用户请求需要使用 CURL 命令构建外部数据源请求。
step5. 用户合约向预言机合约发送查询请求
3. UDAG 跨链协议
有了规范化的跨链互认数据,还需要建立一个通道实现数据的可信安全传输,包含身份协议和通信协议。
3.1 身份协议
通过设计区块链证书,描述区块链的唯一认证根以及其安全更新与公开吊销,让业务在由区块链组成的价值互联网里进行安全跨链,做到“有根可寻”且“安全可控”。
3.2 智能合约跨链通讯协议
为可编程的智能合约之间提供跨链通讯接口, 提供类似TCP/UDP的可靠有序/无序的通讯协议,通讯协议基于信任中立的数据牟定以及网络路由,旨在面向对发布在不同链上的智能合约建立一层信息通讯协议,使得区块链之上的智能合约跨链报文通信安全可靠,且包括外部数据源到链上的可信传递。
提供跨链资产以及跨链事物管理的中继件服务
- step1. 各区块链首先基于身份协议获得唯一的链身份标识,用于表示跨链信息的发送方或接收方。
- step2. 账本发送链将待发送的数据经过中继组件和证明转化组件之后生成规范化、轻量级的自描述数据包,根据通讯协议定义的报文格式和消息流程将账本数据发送给相应的接收链。
- step3. 接收链中的中继组件将账本和证明提取出来传递给链上系统,链上客户端执行账本验证和相关的业务执行操作。
4. 跨链合约服务
ODATS(Open Data Access Trusted Service)“开放数据接入可信服务”给联盟链用户提供基于智能合约跨链服务能力。
-
step1. 区块链域名 注册区块链时,为区块链创建一个域名,该域名将会是跨链通讯时区块链的唯一识别身份。
-
step2. 跨链授权跨链通信需要对方区块链进行授权才可以开始通信,授权包括账本数据授权和合约消息授权。账本数据 账本数据包括区块链交易、区块及区块头,如果授权其他区块链获取当前区块链的账本数据时,可以指定授权哪一类账本数据、合约消息 。
-
step3. 跨链授权合约消息后,用户区块链可以接受被授权区块链远程推送合约消息,进行复杂互操作,实现多种业务场景。
以上是关于跨链“蚂蚁区块链”之跨链系统框架的主要内容,如果未能解决你的问题,请参考以下文章
智能合约重构社会契约(10)超级账本之跨链Hyperledger Lab