AI 年度盘点与2025发展趋势展望,50+案例解析亮相AICon 了解详情
写点什么

什么是跨链?

  • 2020-07-10
  • 本文字数:2491 字

    阅读完需:约 8 分钟

什么是跨链?

密码学是保障区块链技术的基石之一,同时也是互联网产业安全至关重要的学科之一,互联网企业受到黑客的攻击对企业和人民带来了财产的损失和隐私的泄露。同时,随着区块链行业的发展,出现了越来越多的区块链项目,各个链之间的通讯问题使得每条链本身更像是一个信息孤岛,极大地限制了区块链的潜力。


不论对于公有链,还是联盟链,跨链技术是实现区块链“互联网化”的关键。跨链技术可以让不同的区块链实现互操作,从而形成区块链的“互联网”,实现更大的应用空间和价值。

跨链互操作协议

什么是跨链?


狭义来说,跨链是一种解决两个或多个不同链上的资产以及功能状态互相传递、转移、交换的协议。而狭义的侧链是一种让资产从主链转移到其他附属区块链,又可以从其他附属区块链安全地返回主链的协议。


广义的来说,侧链和跨链都是链间互操作协议的一种具体方案,因此我们将所有的侧链和跨链协议统一称为跨链互操作协议。目前跨链协议有三个类型:中心化或者多方签名的公证人形式,侧链或者中继形式和哈希时间锁等密码学形式。


侧链(sidechain)一词最早出现在 2012 年的比特币核心社区(bitcointalk.org),是为了解决比特币主网的可扩展性而提出的。而这一方案被总结归纳在了“Enabling Blockchain Innovations with Pegged Sidechains”这篇论文之中,也就是大家熟知的侧链白皮书。而在 2015 年,闪电网络方案被提出,这也是比特币线下侧链方案的一个具体例子。2016 年 Polkadot 和 Cosmos 两个跨链项目被相继推出。



跨链的分类


跨链协议的类型:


1) 中心化或者多方签名的公证人形式:锁定的资产只有在获取到公证人(中心化或者联盟化)的签名的情况下才会被解锁。


2) 侧链或者中继形式:一条链可以去读取另外一条链的状态或者交易,并基于另一条链的反馈,设置后续操作。


3) 哈希时间锁等密码学形式:预设好一个触发条件(哈希锁或其他类似的密码学证据)以及后续交易,当该条件被触发后后续交易可以被执行。

主流跨链协议介绍

主流跨链协议包含双向锚定的侧链和闪电网络。其中,举了两个有代表性的例子:波卡(Poldadot)和 MAP 协议(MarcoPolo Protocol)。


双向锚定的侧链技术可以实现将主链上的资产锁定,在侧链上释放等价固定侧链资产;当侧链上的资产在侧链上锁定之后,主链上之前被锁定的等价主链资产可被释放。保证资产在不同区块链之间的转移。双向锚定技术实现的最大难点是侧链协议需兼容现有主链的协议,不能对现有主链的功能造成影响。



双向锚定的侧链示意图


闪电网络底层运用了 HTLC(哈希时间锁定合约)技术和 RSMC(序列到期可撤销合约)技术,构建了一个链下支付通道。使得一部分小额的比特币交易可以转移到线下进行,待一定时间累计了足够多的交易之后将整体结果再一起更新到链上。闪电网络可以看作是一个比特币的侧链解决方案。


闪电网络的优点:闪电网络可以极大的提升整体网络的可扩展性。同时由于链下处理交易的耗费更少,可以减少交易费,提升系统流动性。此外,链下的微支付都是不会传到链上的,因此隐私性更好。


闪电网络的缺陷:因为闪电网络是需要交易双方存在一条交易通道,一些拥有大量资金的节点会成为大部分节点的通道枢纽,造成垄断和中心化的可能。同时复杂的渠道设计会导致未来可能的安全性隐患,一些可能的攻击正在被研究,如日蚀攻击等。

案例 1:Polkadot 波卡

波卡是以太坊原 CTO(Gavin Wood)提出的跨链项目,他的设计是通过一个中继链(RelayChain)来提供整个系统跨链通信的验证以及路由功能,而系统中的其他平行链(ParaChain)可以通过中继链将跨链信息转发给其他的平行链从而达到跨链的目的。



波卡网络示意图


Polkadot 波卡的跨链流程


Polkadot 的跨链流程一般是:某一条平行链的交易广播进入到平行链社区,先由收集人(collator)打包交易信息,中间经过钓鱼人(fisherman)的执法检查,然后提供给平行链,平行链的区块头包含在中继链中,经过验证人打包,再转移到另一条平行链中。


Polkadot 波卡跨链方案的问题


1) 波卡的跨链协议是基于单个信任源的(对 RelayChain 的绝对信任),也就是说是半中心化的。


2) 波卡的跨链协议对跨链验证部分缺乏详细分析,基于中本聪论文中 SPV 方案设计的跨链都存在验证数据过大的问题。


3) 卡的跨链协议要求所有的跨链互操作信息都通过 RelayChain 来转发,使得 RelayChain 会成为整个系统的瓶颈。

案例 2:MAP 协议

MAP 协议是一种开放的、完全去中心化的通用链间交互协议,在独立自验证的共识机制下,链与链之间可以直接实现轻量级地互操作而不需要通过中继链。它的核心模块包括有超轻量级的跨链验证模块以及可组合触发条件的智能脚本模块。它与波卡的最大区别在于,MAP 是一种通用的跨链协议,无需通过中继链即可达成任意两条链之间的互操作。



MAP 网络示意图


MAP 协议的跨链流程


任意两条链之间通过 MAP 协议的跨链验证子协议可以互相验证对方的某一状态或者交易,之后,通过可组合触发条件的智能脚本系统去检查验证结果并执行后续操作,可以是往本链的 P2P 网络发送一笔交易,也可以向对方的 P2P 网络发送一笔交易,来达成互操作。


MAP 协议的特性:


1) 简洁性


2) 安全性


3) 通用性



简洁性


简洁性:跨链验证某一笔交易或者某一个状态需要的网络带宽和本地存储都应该是随着链长度增长而亚线性增长的。也就是说,即使区块链的本身高度增长的非常快,验证需要的数据量增长却很慢。而这是基于中本聪 SPV 验证方案所无法达成的。



安全性


安全性:安全性指的是,不具备完整状态的验证节点获取到的链上状态和全节点获得的链上状态不一致的概率是微乎其微的。通常来说,通过欺骗验证节点而攻击协议本身的成功概率只有 $2^{-100}。



通用性


通用性:通用性指的是不同的区块链系统可以随意嵌入跨链协议模块,该模块是可插拔且兼容的,不会侵入原有链的原生系统。



 跨链方案的对比表


如果说比特币是区块链的 1.0,解决了分布式存储的难题;以太坊是区块链的 2.0,解决了分布式计算的难题;那么跨链网络的建立则是真正的区块链 3.0。它将会沟通协调不同职能的区块链系统使其成为一个整体,共同为金融、AI、物联网、溯源、治理等领域应用提供完整可用的区块链底层基础设施,成为互链网的新基建。


2020-07-10 09:114771

评论

发布
暂无评论
发现更多内容

前端开发:Vue中获取input输入框值的方法

三掌柜

28天写作 28 12月日更 12月

JavaScript操作 DOM 的这些事件基础

你好bk

JavaScript 前端 DOM BOM WebApi

Apache Log4j2,RASP 防御优势及原理

阿里巴巴云原生

阿里云 云原生 漏洞 可观测 Apache Log4j2

数据分析流程浅析

圣迪

数据分析 数据 CRISP-DM

【docker 总结】第四篇 - 镜像和容器操作

Brave

Docker 12月日更

100行代码让您学会JavaScript原生的Proxy设计模式

汪子熙

JavaScript 设计模式 代理模式 28天写作 12月日更

5分钟认识802.11标准,言简意赅!

Ethereal

网络技术 无线技术 网络技术联盟站 802.11

数据库牛人是如何进行SQL优化的?

Ethereal

数据库 sql SQL优化

TCP/IP的底层队列

程序员历小冰

网络 TCP/IP 28天写作 12月日更

如何基于 Docker 快速搭建 Springboot + Mysql + Redis 项目

秦怀杂货店

Java redis Docker springboot redis sentinel

DotNetCore 开发工具箱之调度小能手——Coravel

为自己带盐

dotnet 28天写作 12月日更 Coravel

管理中的推理事件随笔

搬砖的周狮傅

随笔杂谈 推理

开源轻量级 IM 框架 MobileIMSDK v6.1.2 发布

JackJiang

TCP websocket 即时通讯 IM MobileIMSDK

Go+ XML 编码和解码处理教程(5.5)

liuzhen007

28天写作 12月日更

实用机器学习笔记十六:循环神经网络

打工人!

深度学习 学习笔记 循环神经网络 机器学习算法 12月日更

明道云荣获2021亚洲最佳职场“最佳创新奖”荣誉!

明道云

山的那一边,是什么?(16/28)

赵新龙

28天写作

Python爬虫120例之案例58,手机APP爬虫,“武器库”的准备and皮皮虾APP的测试

梦想橡皮擦

12月日更

当我们在聊高可用时,我们其实在聊什么?

xcbeyond

28天写作 12月日更

Dubbo框架学习笔记四

风翱

dubbo 12月日更

小程序的发布【小程序专题3】

坚果

小程序 28天写作 12月日更

读《思辨与立场》-04自我理解

wood

28天写作 批判性思维 思辨与立场

[Pulsar] Pulsar Resources介绍

Zike Yang

Apache Pulsar 12月日更

明道云对接小鹅通,沉淀内容付费平台数据

明道云

Enum Parse 中的坑

喵叔

28天写作 12月日更

Spring Boot Serverless 实战系列“架构篇” | 光速入门函数计算

阿里巴巴云原生

阿里云 Serverless 架构 云原生 函数计算

All in one:如何搭建端到端可观测体系

阿里巴巴云原生

阿里云 云原生 可观测

React进阶(七):props 属性介绍

No Silver Bullet

React 12月日更 props

Android aapt 在 Mac 和 Windows 上使用方法小结

阿策小和尚

28天写作 Android 小菜鸟 12月日更

什么是Kubernetes?Kubernetes是怎样工作的?

Ethereal

云计算 Kubernetes

如何在 AWS 云中从 Amazon EC2 启动 RHEL 8?

Ethereal

云计算 AWS RHEL 8 Amazon EC2

什么是跨链?_区块链_Geek_a4e13e_InfoQ精选文章