十年前 IFTTT 的诞生,显著提升了所有互联网产品的互操作性,成为了生产力达人的必备工具,那在区块链系统中是不是也需要一款这样的超级工具呢?
撰文:潘致雄,链闻研究总监
区块链技术开始逐渐接入传统世界的系统,逐渐发挥其「免信任」的优势。而区块链与这些系统交互过程的「互操作性」,很大程度上需要依赖于区块链底层协议是否有足够的「兼容性」。比如对于不支持智能合约的比特币而言,以太坊或其他区块链协议只能单向兼容比特币协议,而反过来比特币协议是无法兼容其他区块链的,或许也没有这个必要。
但不是所有项目都可以成为比特币,对于其他公链项目,在提供了图灵完备的通用计算能力之后就能获得足够的互操作性了吗?可能并不一定,而且兼容成本也可能很高。在这个问题上,Nervos 认为他们探索的「互操作性 2.0」更近了一步,将基础设施的复用作为核心突破口。
一个很简单的例子,对于大多数加密货币行业用户,MetaMask 或其他钱包入口是一个几乎必备的工具。如果其他公链或应用需要用户下载一个新的钱包工具,不仅体验更差,安全性也没有得到充分验证。但 Nervos 的「互操作性 2.0」就可以复用 MetaMask 这个基础设施,作为该链的钱包入口。
换个更广义的例子,对于大多数互联网用户,邮箱是一个必备工具。而 Nervos 灵活的密码学原语支持,就可以直接复用这套经过几十年考验的基础设施。这或许就可以打开更多的使用场景,让更多互联网用户更方便使用加密货币。
所以,相比以太坊社区在探索的去中心化金融应用,Nervos 选择了一条不一样的路径,没有专注大范围开启新类型的特定应用场景,而是通过自己底层技术的特点接入那些现有的工具和入口,将着力点放在了互操作性之上。
为什么互操作性很重要?
简单来说,互操作性体现了两个系统之间的兼容能力以及兼容成本。对于兼容能力很强的系统,就可以更方便地接入其他系统,打开更多的应用场景。
从专业角度来说,互操作性又可以翻译为「协同工作能力」或「互用性」,电气与电子工程师协会(IEEE)对互操作性(Interoperability)是这样定义的:两个或多个系统或组成部分之间交换信息以及对所已经交换的信息加以使用的能力。
有一个流行的生产力工具叫做 IFTTT,它就是一种可以显著提高互操作性的产品,把很多互联网服务粘合在一起。IFTTT 的全称为「If this then that」(如果发生了某件事,就执行另一件事),这个工具就像是一个胶水一样,把几乎所有平台式的服务商都集成在了里面,减少了用户主动去接入不同服务的成本。
IFTTT 可以帮助用户在邮箱、RSS 信息源、聊天工具(如 Slack)、智能家电、Twitter 等很多服务中设置联动,任意组合,创造用户自己特殊的使用场景。比如可以设置当 Twitter 上搜索到了某个特定结果,就发送该内容到邮箱里,玩法和想象空间其实特别多。
但是如果某一个平台没有开放 API (应用程序接口),没有提供互操作性的可能性,那 IFTTT 就无法接入,无法与其他平台进行联动和协作。比如微信就是一个相对比较封闭的空间,IFTTT 对于微信的支持就比较差。
把以上案例套在区块链系统中也是同样成立的。很多工具也许可以降低不同区块链系统之间的互操作性成本,也可能可以打通区块链系统和传统互联网系统之间的隔阂,但是如果区块链底层没有提前做好准备,没有提供相应的基础设施建设,这些工具的开发和使用成本就可能会很高,或者就是无法获得互操作性。
所以,提前预留了足够互操作性的区块链系统,才有可能后续接入其他系统,或者是以更低成本接入其他系统,探索更多应用场景。
不仅是跨链,还有更多应用场景
可能有人会以为跨链是区块链系统体现互操作性的唯一方式,但其实还远远不止。以 Nervos 目前探索的方向来看,至少还包括了密码学原语的灵活支持所带来的丰富扩展性,以及应用的迁移能力。
比如在以太坊上,它使用的公私钥加密算法是基于椭圆曲线 secp256k1 的 ECDSA,对于其他没有使用这一条曲线或加密算法的公链来说,就无法利用以太坊的公私钥体系,使用他们已经建立起来的应用生态(比如 MetaMask)。
但是 Nervos 提供的灵活密码学原语支持,就可以通过后期应用的开发(PW Core),以兼容以太坊的标准,并接入以太坊的应用生态。目前 Nervos 生态的 Portal Wallet 团队就在尝试这些方向,他们已经可以实现通过用户此前已经拥有的以太坊地址收发 Nervos 链上的资产,基于大多数人已经拥有的 MetaMask 即可实现,无需下载或学习新的东西。
Portal Wallet 团队称,「CKB 的优势在于密码学,能够自定义任意密码学算法,所以可以读懂其他链的哈希或签名算法。其他想做到这个是很难。」所以无论是波卡、NEAR 以及其他公链,Portal Wallet 都可以基于以上这个优势兼容另外一条区块链的地址,以实现基础设施的复用。
Nervos 团队也创建了一个名叫 Gliaswap 的示范性 DEX 测试版,基于 Nervos 的 Layer 2 网络实现,用户使用该协议不需要一个 CKB 专属钱包或创建 CBK 账户,只需要使用目前常用的以太坊钱包或波场钱包即可接入。
另一方面是 Nervos 称之为 Polyjuice 的功能,可以兼容其他链的智能合约,也就是在链上运行的虚拟机,对于开发者来说这将降低应用迁移的成本。Polyjuice 会优先从以太坊开始支持,后续再支持其他链的虚拟机。
而关于链上运行的性能,Portal Wallet 团队表示,「别的链想加一个虚拟机那是需要非常大的改动,由于 CKB VM 是 CPU 级别的抽象,所以他在上面跑 EVM 的时候,非常的顺畅,在他看来 EVM 就应该是应用层的东西。」
当然,跨链肯定是一种基础能力,Nervos 的解决方案为 Force Bridge,通过「双向」SPV (简单支付验证)技术,也就是两条链上都搭建了对方链的轻节点,可以互相验证对方的区块头,以实现资产跨链。
甚至是接入互联网最重要的基础设施:邮件
其实互联网本身就有很多运用了密码学的基础设施,基于「互操作性 2.0」的优势,或许就可以成为 Nervos 接入传统互联网的切入点。
在中国发出的第一封邮件
比如互联网基础设施「邮箱」,现在已经广泛使用了域名密钥识别邮件(DKIM)机制,提供了数字签名与身份验证的功能,以检测寄件者、主旨、内文、附件等部分有否被伪冒或窜改。
DKIM 是 2004 年雅虎和思科的两套相近的系统合并改进而来的协议,在 2007 年 5 月成为互联网工程工作小组(IETF)的正式标准,得到了雅虎、Gmail 等主要电子邮件服务供应商的支持。
基于 DKIM 的密码学签名算法,Portal Wallet 的概念验证已经实现了通过发送邮件的方式转移 CKB 资产,同时可以保证这个过程安全、无法篡改、无需许可。毕竟 DKIM 本身的优点就是可以让寄件者有效地表明身份,让收件者可凭借公钥确认寄件者并非伪冒、内文未经窜改,提高电子邮件的可信度。
来自 DKIM 官方文档
更进一步的话,邮件是一个互联网发展中重要的基础协议,很多应用和其他协议都可以基于邮件实现,比如线上营销、Newsletter (时事通讯)、日历邀请管理、作为信息源聚合地等等。
如果再加上刚才提到的 IFTTT,就可以实现更多与其他协议的交互,增加更多应用的互操作性。比如当用户收到接收 CKB 资产的邮件后,可以设置触发一个其它任务:查询钱包余额、推送或再次转发邮件将资产发送给其他人等等。
隐藏在背后的 Nervos
另一个感觉是,Nervos 在推进互操作性进展时,把自己放在了更底层的位置而不刻意强调自己是一个区块链网络,而是作为前端服务的结算层、计算层,别的项目可以利用它搭建与传统互联网之间的连接,以一种无需许可且去中心化的方式实现。
Portal Wallet 也表达了这一观点,他们认为,「Nervos 的这种做法就是无处不在,又无处都在的感觉。所以它的定位是做一个 Hub (枢纽),所有资产可以跨过来做结算,用户直接就可以使用这种服务。」
也许未来等区块链可以完全融入并彻底改变互联网设施之后,就会和大家现在看待 HTTP 或 TCP/IP 协议一样,很多人可能并不清楚它具体是做什么的,但却是一种无法绕开又随处都在的底层协议。