云栖号资讯:【点击查看更多行业资讯】
在这里您可以找到不同行业的第一手的上云资讯,还在等什么,快来!
在区块链技术领域,关于跨链的研究从来都是热潮迭起。其实分析起来也不奇怪。区块链经过几年的喧嚣、沉淀、升华,尤其是在国家政策的大力支持下,区块链应用落地逐步成熟。落地应用的成熟发展,逐渐催生与其他应用交互的外联需求,而跨链作为解决这种需求的基础设施,自然而然会被重视起来。
大家是怎么聊跨链的
跨链不是个新鲜话题,早在 2016 年 9 月, Vitalik Buterin 所著的《Chain Interoperability》就对跨链的技术方案和应用价值进行了详细阐述。其中提到,较为实用的三种跨链技术为「公证人机制」、「侧链 / 中继」、「哈希锁定」;几种可能的跨链应用场景包括资产交换、原子交易、预言机、信息互通等。
此后国内外讨论跨链的各类话题,大多绕不开这三种跨链技术,正如同早期大家讨论区块链时,都在讨论共识机制一样。但其实,共识机制的先进性只是区块链平台设计的维度之一,譬如安全性、易用性、可扩展性等其他维度,也是区块链平台设计的考虑重点。再者,区块链的性能也不单纯依赖共识机制,全流程处理机制、异步化、并行性以及其他编码、压缩、传输机制等,均对区块链性能有所影响。
好比共识机制之于区块链,前面所提三种技术对于跨链而言,只是保证跨链访问安全可信的一种机制。机制固然重要,但站在应用落地的角度看,如何设计合理的跨链架构、如何设计简便的适配协议、如何提供易用的跨链接口、如何保证可信的跨链治理等等问题,都是跨链设计所应考虑的。
因此,本文不再赘述跨链三种技术的解析,而尝试从跨链的技术必要性分析切入,挖掘出跨链的基本诉求,进而思考跨链的设计理念,以及跨链整体解决方案的设计。
跨链是必不可少的催化剂
本文从联盟链角度分析。
当下,联盟链底层平台的数量已经双手都数不过来,这些平台或多或少存在独有的特性,且各自落地了多领域应用。这些基于同构平台(通常为同一个底层平台),或基于异构平台(通常为不同厂商的底层平台)构建的应用之间,要实现互联互通,就会面临一些技术上的挑战。
然而,区块链作为构建和传递信任的机器,是基础设施层面的技术,而基础设施就如同网络协议、存储协议一样,最终都将走向趋同的标准化方向。因而,联盟链当前状态是发展中的一个过渡状态,不是最终稳定态。
随着技术进一步发展,联盟链底层平台在基本功能、协议、接口、数据、安全机制等多方面会日渐趋同,朝标准化方向演进,但在增强功能、内部架构、性能以及技术选型等方面,仍然会呈现异彩纷呈的形态。这也符合“合久必分、分久必合”的规律,只有走向基本同构,才能进一步释放联盟链的活力,进一步推动联盟链应用的发展。
在“所有的链会基本同构”那一天到来之前,当下最明智的策略莫过于要求同存异,寻找最优设计,推动标准化进程,尽早实现基本同构目标。
讲到这里,可能你会问,既然联盟链本身发展将走向基本同构,为何还需要研究跨链呢?这其中,跨链是联盟链走向基本同构的动力源泉和技术支撑,是这个过程必不可少的催化剂。
首先,联盟链之所以会走向基本同构,本质上不是技术驱动,而是业务驱动。随着应用落地数量增多,一家机构可能要面对多个底层平台,机构与机构之间要面对更多底层平台。
作为业务方,这些机构肯定希望低成本、便捷地接入不同底层平台,联通应用孤岛,此时,这些机构将面临以下几种情形:
- 同一种底层平台,同一种应用,不同链如何互通
- 同一种底层平台,不同的应用,不同链如何互通
- 不同的底层平台,同一种应用,不同链如何互通
- 不同的底层平台,不同的应用,不同链如何互通
上述问题均需要通过跨链来解决,而底层异构给跨链带来的性能和安全等技术挑战,将会迫使联盟链技术进行迭代升级,走向标准化。
其次,联盟链走向基本同构的过程中,需要跨链作为技术支撑。为满足一段时间内基本异构情况下的联盟链应用互通,跨链方案将会先于底层平台进行接口、协议、数据结构、基本功能的抽象整合,而这些工作将反哺各底层平台,支撑联盟链走向基本同构。
举个例子,为了做跨链交易的合法性证明,需要有类似 SPV 的机制,包括 Merkle、MPT、AVL 等,可能就会促使底层平台去支持这个功能。再比如,跨链为了统一访问区块链资源的方式,对访问协议设计相关规范,可能也会激发底层平台去调整协议,从而更好地与其他链互通。
跨链的核心是降低扩展成本
跨链作为联盟链发展过程中必不可少的催化剂,要解决“不同链如何互通”的问题,本质上是要解决“联盟链扩展”的问题。关于区块链扩展的方案,主要有以下三种不同方向:
跨链是 Scale Out 的重要技术支撑,Scale Out 依赖跨链才有办法进行。
Scale Out 提供可平行扩展、无限扩容的可能,是必不可少的扩展方案,事实证明,已经有越来越多的平台支持多链、多通道、多群组等方式进行 Scale Out 扩展。但是,要进行这种平行扩展,尤其是涉及多种平台多种链交错交互的时候,这里就给业务方带来巨大的扩展成本,包括部署建设、管理管控、安全保障、信任传递等。
跨链的核心就是要降低扩展成本,要从东西和南北两个方向提供低成本、快速便捷的解决方案。南北方向因部署方式、接口协议、业务模式等不同,需要给出简化的接入和管理方案,东西方向因底层架构、安全机制、数据结构等不同,需要封装安全可信的互通方案。
跨链方案设计需融入三个理念
围绕降低扩展成本的核心诉求,跨链技术要在东西和南北两个方向提供简化的、封装的解决方案,在跨链方案的设计和落地中,需融入以下三个理念:
- 通用化设计,提炼共识的基本同构点
- 先让代码跑起来,快速适配主流平台
- 建立开源开放的社区文化,让协议尽早传播开来
在通用化设计方面,跨链方案要承担起“催化剂”的作用,提炼广泛共识的基本同构需求点,在架构、协议、资源等方面进行抽象提炼。
例如,在 IEEE C/BDL 目前公布的几个跨链相关提案中,P3203 有关资源命名和寻址方式,P3204 有关跨链交易证明的模型、交互协议,P3205 涉及跨链访问协议以及数据认证等,这些都是在广泛共识的需求点上进行提炼设计。
“粗略的共识,可运行的代码”——这句话是 TCP/IP 协议工作组的座右铭,也非常适合跨链设计。先让代码跑起来,能够快速适配各种主流平台,满足跨链业务协作的需求,在发展中实践,在实践中发展,这一点很关键。
更重要的是,跨链本身涉及多条链,已经不是某一个平台,或者某一个机构的事儿,其方案的建设离不开众多平台建设方、使用方、爱好者的参与。因而,建立一个开源开放的跨链协作社区就非常重要,所谓“万人操弓,用射一招,招无不中”,通过社区的群智群策,可以让协议尽早传播开来。
【云栖号在线课堂】每天都有产品技术专家分享!
课程地址:https://yqh.aliyun.com/live立即加入社群,与专家面对面,及时了解课程最新动态!
【云栖号在线课堂 社群】https://c.tb.cn/F3.Z8gvnK
原文发布时间:2020-06-22
本文作者:李辉忠
本文来自:“infoq”,了解相关信息可以关注“infoq”
来源:oschina
链接:https://my.oschina.net/u/4362740/blog/4320530