您的浏览器禁用了JavaScript(一种计算机语言,用以实现您与网页的交互),请解除该禁用,或者联系我们。[中国互联网金融协会]:陆羽跨链协议白皮书 - 发现报告
当前位置:首页/行业研究/报告详情/

陆羽跨链协议白皮书

陆羽跨链协议白皮书

LyyCHAINRS陆羽跨链协议白皮书Luyu Cross Chain ProtocolWhite Paper mLUYU CROSSCHAIN PROTOCOL前言学术顾问李礼辉徐忠姚前发起单位中钞区块链技术研究院微众银行溪塔科技中国工商银行中国银行软件中心中国银联创新中心招商银行浦发银行浙商银行杭州银行中国科学院计算技术研究所清华大学计算机科学与技术系北京航空航天大学网络空间安全学院中国信息通信研究院山东区块链研究院中关村区块链产业联盟分布式数字身份产业联盟杭州亦笔科技有限公司主要起草人张一锋张开翔王晓亮蔡伟鑫王加楠窦兴石翔李辉忠莫宁志伟陈林杨振龙彭顺求王铿周钰姬长伟郭林海杨国正胡飞华宋兆雄姚苏伍前红戴振利周文江金马成龙 目录LUYU CROSSCHAIN PROTOCOL01背景02简介32.1 理念32.2功能42.3愿景52.4生态503设计73.1 龚架构及功能73.2协议栈83.3统一抽象协议93.3.1统一账户协议103.3.2统一寻址协议113.3.3统一调用协议123.3.4统一接入协议143.4跨链互信153.5调用流程163.5.1单Router调用163.5.2 跨Router调用173.5.3链发起调用1904应用前景214.1资产跨链214.2跨境物流214.3联合举证224.4万链互联2305 展望25S ·背景·1.背景近年来,以区块链为代表的分布式信任与价值体系正在以前所未有的速度和规模形成,区块链的发展也备受关注。2020年,区块链技术首次被国家层面明确为新型基础设施,服务于我国数字经济战略。2021年,国家十四五”规划纲要进一步鼓励区块链的发展,指出“推动智能合约、共识算法、加密算法、分布式系统等区块链技术创新,以联盟链为重点发展区块链服务平台和金融科技、供应链管理、政务服务等领域应用方案,完善监管机制”。事实上,作为数字经济的重要基础设施之一,区块链应用已延伸到金融、政务、版权、智能制造、司法存证等多个领域,且展现出巨大的潜力。基于此,为了更好地服务不同的应用场景,也为了响应不同用户的需求,开发者们推动看区块链技术往高性能、多功能方向发展,助推整个区块链生态系统的多元化。随之而来的是,越来越多的同构和异构的区块链应运而生。这在促进区块链生态环境日渐丰富的同时,也呈现出割裂和碎片化的趋势:具体而言,则是指既往针对特定场景而构建的区块链应用,较少考虑到互操作性的需求,几乎每个区块链实例都具有独立、自治的生态,形成了一个个数据和价值的“孤岛”。数据孤岛的背后,不少问题有待优化:出数据有望被有效利用。由于所使用的技术、架构、机制的不同,数据难以在各条区块链之间流转,继而大量数据容易变成"死数据”。大规模的应用待推动。应用与特定的区块链深度绑定,导致应用的规模被限制在特定的业务范畴内,难以进行扩展。1 mm·背景·生态欲更加开放,创新氛围待提升。既有的平台占据了大部分市场,创新者难以推动新的技术落地,缺乏创新的动力。开发人员或将避免重复劳动。不同区块链系统之间的接口、算法、数据模型等存在看差异,开发人员常常需要针对同一功能做不同的实现,导致开发效率过低。企业发展有望迎来新一轮助力。业务系统对特定区块链技术的依赖过强,无法实现技术独立,阻碍实际应用的落地和长期有效的发展。综上所述,如何实现区块链之间的互操作,使不同区块链能够协同工作,从而创造新的应用场景,同时促进创新,这是一个非常重大的挑战。陆出协#2 mm·简介互通性:基于有效的互联架构,实现不同网络架构下的可信源互通。安全性:基于可靠的验证机制,实现安全可验证的跨可信源互操作。2.2 功能陆羽跨链协议提供了以下功能。统一调用可信源的统一调用。陆羽跨链协议通过对可信源的接口和功能进行抽象化,提炼出一套完善的、简洁的对可信源进行访问的通用机制。用户无需了解可信源的具体实现,就可以对可信源进行基本的操作。统一的身份管理。陆羽跨链协议构建了统一的身份体系,并将其与各可信源的自有的身份体系建立关联,消除了不同可信源之间的身份认证的屏障。灵活适配基于插件的可信源扩展。陆羽跨链协议通过插件架构,最大限度的提升了包容性和灵活性。利用插件,陆羽跨链协议能够轻松地接入多种多样的可信源,极大地丰富了陆羽跨链协议的生态。有效互通可信源间的消息互通。陆羽跨链协议在可信源之间构建了灵活、健壮的对等网络。借助路由,可信源可以与其他的可信源进行高效、可靠的消息互通。协可靠验证跨可信源的数据互信。利用插件机制,陆羽跨链协议支持对不4 mm·简介LUYUCROSSCHAINPROTOCOL迁入陆羽生态圈,实现"一次开发、多链适配”(writeOnce,RunAnywhere,woRA)。伴随着陆羽生态圈的不断发展,生态圈中的应用也会一同成长。期待在可以预见的未来,陆羽生态圈能够与现实世界有机融合,共同进步。陆出跨协皮书6 设计LUYUCROCHAIN PROTOCOL3.设计3.1架构及功能陆羽跨链协议的架构如下,各组件为:应用(SDK):应用通过SDK向跨链路由发送交易,操作跨链网络。交易被路由接收后转发至相应可信源。账户管理器(AccountManager):是一个独立的服务,由部署跨链路由的各方独立部署。该服务负责管理统一账户信息,维护一级账户与二级账户的对应关系,并用二级账户对交易进行签名。跨链路由(Router):以插件化的方式实现与可信源的对接。并作为可信源之间互连的媒介,负责其消息路由。路由管理器(RouterManager):路由内部的总逻辑模块,负责响应SDK消息、与账户服务交互,管理可信源插件和对跨链消息进行路由。插件(Plugin):是配置在跨链路由内的与可信源对接的模块,实现与可信源的数据交互。基于相同的协议,不同类型的可信源有不同的实现。(各模块的具体关系请参考《3.5调用流程》章节)陆应用(SDK)应用(SDK)羽跨跨链路由(Router跨链路由(Router账户服务路由管理器路由管理器账户服务(AccountManager(AccountManager Chain A PluginChain B Plugin Chain A PluginChain B Plugin链DriverDriverDriverDriverConnectionConnectionConnectionConnection可信源(BlockchainA)可信源(BlockchainB)图1:模块架构7# mm设计LUYUCROCHAIN PROTOCOL(业务逻辑)应用层(Application)API各种语言的 SDKRouterAccount Manager路由层sendTransaction() call()(Network)sign() verify(0)Driver驱动sendTransaction()call()getTransactionReceipt() getBlockByHash() getBlockByNumber()适配层插件(Link)Connection连接send() subscribe()数据层Blockchain, Oracle, etc.()图2:协议栈3.3统一抽象协议统一抽象协议包括四个协议,在可信源、账户服务、跨链路由和应用间定义统一的抽象协议。统一账户协议:各种可信源账户的统一抽象,实现用统一的账户操作不同可信源。统一寻址协议:各种可信源智能合约(链码)等可操作对象的统一抽象,以"资源"的概念实现统一寻址。统一调用协议:各种可信源调用协议的统一抽象,实现用统一接口与参数调用资源。出统一接入协议:各种可信源接入协议的抽象,实现不同可信源的统一接入适配。不同可信源基于此协议开发插件,即可完成适配接入。皮9书 mm设计LUYUCROCHAIN PROTOCOL统一抽象协议应用(SDK)统一调用协议账户服务统一账户协议跨链路由统一寻址协议跨链路由统一接入协议可信源(区块链、预言机)图3:统一抽象协议3.3.1统一账户协议将各种可信源的账户进行统一抽象,以实现用统一的账户操作不同的可信源。本协议分为一级账户与二级账户。定义一级账户(LuyuAccount):陆羽跨链协议的统一账户,是对不同签名算法的链账户的统一抽象。·密钥管理:用户保管·签名算法:ECDSA或国密二级账户(chainAccount):不同签名算法的链账户,对交易进行签名,是链上的实际账户。本协议定义了一系列标准签名算法,可信源根据自身设计进行选择与实现。·签名算法跨:ECDSA: ECDSAWithSecp256k1协: ECDSAWithSecp256r1·国密皮书10 设计LUYUCHAIN PROTOCOI: Sm2withSm3·支持协议更新定义更多算法3.3.2统一寻址协议将各种可信源的智能合约(链码)等可操作对象统一抽象为“资源”,以实现统一寻址。定义资源(Resource):将可信源的智能合约(链码)等可操作对象统一抽象为资源”地址 (Path) :(zone}.{chain)].(resource}/(operation)·{zone}业务名·{chain}链名·{resource】资源名·{operation}操作: sendTransaction: call: getTransactionReceipt: getBlockByHash、getBlockByNumber: listResources3.3.3统一调用协议羽跨链将各种可信源的调用协议进行统一抽象,以实现用统一的接口与参数对资源进行调用。定义写入资源·操作:sendTransaction皮11书 设计LUYUCROSSCHAIN PROTOCOL·参数·交易(Transaction):修改可信源数据的请求。:回执(Receipt):修改可信源数据的结果表1: Transaction 定义名称类型说明path字符串资源地址method字符串方法名(资源内函数名)args字符串数组参数(资源方法的参数)nonce整型随机值sender字符串一级账户身份luyusign二进制数组一级账户签名version字符串版本号表2:Receipt 定义名称类型说明result字符串数组资源地址code整型错误码,0成功,非0失败message字符串错误信息path字符串资源地址blockNumber整型对应链区块高度出transactionHash字符串链实际交易哈希version字符串版本号协读取资源·操作:call皮书12 mm设计LUYU CROSCHAIN PROTOCOL·参数:查询(CallReguest):查询可信源数据的请求。:返回(CallResponse):查询可信源数据的结果。表3:CallRequest定义名称类型说明path字符串资源地址method字符串方法名(资源内函数名)args字符串数组参数(资源方法的参数)nonce整型随机值sender字符串一级账户身份luyusign二进制数组一级账户签名version字符串版本号表4:CallResponse定义名称类型说明result字符串数组资源地址apos整型错误码,0成功,非0失败message字符串错误信息path字符串资源地址羽跨链version字符串版本号查询记录.操作: getTransactionReceipt·参数13书 设计CHAINPROTOCOLUYU·回执(Receipt):修改可信源数据的结果记录。查询区块(若可信源为区块链)·操作:getBlockByHash、getBlockByNumber·参数·区块(Block):区块结构的统一抽象。列举资源·操作:listResources·参数·资源(Resource):各种可信源的智能合约(链码)等可操作的统一抽象对象。3.3.4统一接入协议将各种可信源的接入协议进行抽象,以实现不同可信源的统一接入适配。不同可信源基于此协议开发插件,即可完成适配接入。本协议采用分层设计,以支持本地与远程的调用。定义驱动组件(Driver)·功能:定义统一