写点什么

什么是跨链?

  • 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:114428

评论

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

MySQL 死锁套路:一次诡异的批量插入死锁问题分析

AI乔治

Java MySQL 架构

RocketMQ 在使用上的一些排坑和优化

AI乔治

Java 架构 分布式 RocketMQ 高并发

【Node专题】Buffer理解

南吕

后端 nodejs 4月日更

谁说 Java 不能用来跑 Serverless?

张晓辉

Java Serverless Knative Quarkus

如何快速准备高质量的AI数据?

华为云开发者联盟

AI 数据 华为云 modelarts 数据标注

软件 IT 专业的高校大学生创新创业问卷调查

五分钟学大数据

问卷调查

基于区块链技术的去中心化自治组织——核心属性、演进脉络与应用前景

CECBC

区块链

面向软件 IT 专业的高校大学生职业规划问卷调查

打工人!

IT 问卷调查 职业生涯规划

Golang easyjson

escray

学习 极客时间 Go 语言 4月日更

Java-技术专题-多线程顺序执行的8种方案实现

洛神灬殇

Java 并发编程 AQS 多线程 JUC

低功耗深度休眠后无法唤醒、烧录程序,怎么办?(华大半导体HC32L136)

不脱发的程序猿

嵌入式软件 单片机 4月日更 华大半导体 HC32L136

全球案例 | Dropbox: 在 COVID-19 时代通过 Atlassian 为远程工作提供动力

Atlassian

DevOps 敏捷 远程办公 Atlassian Jira

Python异常的这些知识点你都get到了吗?

老猿Python

Python 编程语言 异常处理

老爷子这代码,看跪了!

why技术

Java

基于MySQL存储的自研消息队列架构设计文档

Geek_2e7dd7

curl使用

Hex

工具

Java中&、|、&&、||详解

Sakura

4月日更

BOE(京东方)成都数字医院开诊,投资60亿打造西南智慧医疗创新典范

爱极客侠

拍立淘创始人潘攀博士为你揭开“以图搜图”的神秘面纱!

博文视点Broadview

应“云”而生的 Java 框架 Quarkus:构建小而快的镜像

张晓辉

Java Docker Serverless CloudNative Quarkus

CloudIDE:为开发者写代码开启“加速”模式

华为云开发者联盟

开发者 代码 华为云 CloudIDE HDC2021

6 张图带你彻底搞懂分布式事务 XA 模式

阿里巴巴云原生

Java 数据库 云原生 存储

全球案例 | Dropbox: 在 COVID-19 时代通过 Atlassian 为远程工作提供动力

Atlassian

敏捷 Atlassian Jira 远程工作 Dropbox

近期值得关注的四款工具

彭宏豪95

效率 工具 Mac 4月日更

硬核系列 | 手写脚本语言编译器

九叔(高翔龙)

Java 编译器 脚本语言 词法分析器 编译器原理

连续三年入围 Gartner 容器竞争格局,阿里云容器服务新布局首次公开

阿里巴巴云原生

容器 运维 云原生 k8s 边缘计算

FusionInsight MRS:你的大数据“管家”

华为云开发者联盟

大数据 数据湖 云原生 华为云 FusionInsight MRS

南京的春天

小天同学

随笔 4月日更 春天 南京 散文

Rust从0到1-代码组织-路径

rust 路径 代码组织 paths

20年研发安全积累,5大研发安全能力让软件“天生安全”

华为云开发者联盟

DevOps 安全 DevSecOps 华为云 devcloud

新疆重点人员管控系统搭建,指挥调度系统开发

  • 扫码添加小助手
    领取最新资料包
什么是跨链?_区块链_Geek_a4e13e_InfoQ精选文章