区块链跨链技术

区块链跨链技术

背景

近年来,随着区块链技术的不断发展,区块链的应用场景逐渐从最初的加密货币领域扩展到金融、物流、医疗、公共服务等各个领域。随着区块链的应用场景不断增多,区块链的“数据孤岛”问题日益突出,不同场景下的区块链之间相互隔绝,无法实现信息交互,极大地阻碍了区块链技术的进一步发展。为了解决区块链之间的扩展性问题,区块链跨链技术应运而生。


关键技术问题

  • 保证跨链交易的原子性和最终确定性
  • 保证跨链双方可以验证另一条链上的交易状态
  • 保证两条链上的资产总量不变
  • 保证跨链系统安全运行
  • 多链协议适配

主要跨链技术

  • 哈希锁定
  • 公证人机制
  • 侧链/中继
  • 分布式私钥控制

其中采用中继链的跨链方法扩展性最好但是实现相对复杂,是目前最主要的研究方向


哈希锁定

哈希锁定最初起源于闪电网络。从原理上看,哈希锁定是基于哈希函数的单向性来保证资产的安全交换,它包括哈希锁时间锁,哈希锁是指用户只有知道哈希原像才可以解锁资产,时间锁是指用户如果超过时间仍未解锁资产,则资产会退回原账户。

该模式的实现流程如下图所示,(用户A与用户B进行跨链资产交换)

  1. 用户A生成一个随机数x并计算其哈希值H(x)发送给用户B。
  2. 用户A使用H(x)和时间t1在链A上锁定资产a,若超过时间t1仍未解锁,则将资产退回给A。
  3. 用户B使用H(x)和时间t2(t2<t1)在链B上锁定资产b,若超过时间t2仍未解锁,则将资产退回B。
  4. 用户A将随机数x发送给用户B解锁得到用户B锁定的资产,此时用户B也获得了随机数x。
  5. 用户B再用随机数x解锁用户A锁定的资产,由此实现了资产的跨链交换。

这里时间锁t1和t2是为了防止用户A在解锁获得B的资产后退回自己锁定的资产导致用户B的资产损失。因为用户A必须要在t2之前解锁用户B的资产,而用户A的锁定时间t1大于t2,所以用户A在解锁B的资产时自己的资产一定是锁定状态的,可以保证用户B在拿到随机数x后有充足的时间解锁用户A的资产。

在这里插入图片描述


公证人机制

公证人机制是一种中心化的跨链方式,该方式通过引入一方或多方可信实体对跨链交易进行信用背书来保证跨链系统的可靠运行。在公证人机制中,公证人是跨链交易的核心角色。它们通常是一组专门的节点,用于协调不同区块链之间的交易。当交易发生时,公证人将执行一系列操作来验证交易的有效性,例如检查交易的签名,检查转移资产的数量是否正确等。这种方式的实现较为简单,代表方案有ripple提出的Interledger。


侧链/中继技术

侧链的概念于2014年首次提出。侧链通过双向锚定技术将一种加密货币资产锁定在一个区块链上,然后在另一个区块链上创建一个代表该资产的代币,从而实现在两个不同的区块链之间传输资产的功能。
通过这种方式可以将主链的货币发送到侧链上,在侧链上分担主链的交易,从而减轻主链的压力,扩展主链性能。
双向锚定技术的实现方式包括单一托管模式联合锚定模式SPV模式驱动链模式,其中SPV模式是侧链白皮书中对去中心化双向锚定技术的最初设想,该模式的工作流程如下图所示。

  1. 用户在主链上将资产发送到一个特殊的地址进行锁定,在等待一段时间确保交易不会被回滚之后,主链会为用户生成一个SPV证明,证明用户已经在主链上锁定了部分资产。
  2. 用户可以将该SPV证明发送到侧链上,侧链在接收并验证SPV证明之后会等待一段竞争期确保用户的资产成功锁定,然后就在侧链上为用户释放相应数量的资产,由此实现用户资产的跨链转移。
    在这里插入图片描述

中继可以看作是侧链和公证人机制的融合扩展,通过在相互通信的两个区块链之间添加一条中继链对跨链的请求进行验证和转发。中继技术弥补了公证人机制中存在的中心化问题,具有较高的安全性和可扩展性,可以适应大部分的应用场景。但是基于中继链的跨链系统实现起来比较复杂,需要较高的技术成本。


分布式密钥控制

分布式密钥控制是基于密码学中的多方计算和门限密钥的一种技术,在分布式密钥控制中会将控制资产的私钥分成多份并分别由多个用户持有,在进行资产转移时需要多个用户共同参与,即使其中某些用户被攻击或私钥被窃取,攻击者也无法获取完整的私钥,保证了资产的安全性。以分布式密钥控制的代表项目Fusion为例,跨链资产转移流程如下图所示。

  1. 用户A发起跨链请求,首先在分布式网络中会生成一对公私钥,公钥是一个新用户B的地址,私钥分成多份由网络中的多个用户持有。
  2. 用户A将资产转移到新地址B中锁定。
  3. 目标链上的用户C使用相同的方法将资产转移到一个新地址D中锁定。
  4. 在两个用户都锁定资产后,分布式节点再使用私钥分别解锁B和D锁定的资产,将D的私钥发放给A,将B的私钥发放给C,从而实现跨链的资产交换。

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/132420.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

成集云 | 嗨便利集成金蝶云星辰 | 解决方案

方案介绍 嗨便利是一款便捷即时到家服务平台。它集合了即时零售、即时配送、前置仓、数字化中台、会员体系以及自研SAAS系统等众多前沿科技&#xff0c;利用大数据驱动的预测算法&#xff0c;通过多渠道订单整合&#xff0c;智能调度配送系统&#xff0c;致力于为消费者提供“…

nio 文件传输

transferto方法一次只能传输2个g的数据 文件大于2个g时

PPO算法逐行代码详解

前言&#xff1a;本文会从理论部分、代码部分、实践部分三方面进行PPO算法的介绍。其中理论部分会介绍PPO算法的推导流程&#xff0c;代码部分会给出PPO算法的各部分的代码以及简略介绍&#xff0c;实践部分则会通过debug代码调试的方式从头到尾的带大家看清楚应用PPO算法在car…

uni-app 实现考勤打卡功能

一、在页面中引入地图组件 <map id"map" style"width: 100%; height: 100%" :latitude"myLatitude" :longitude"myLongitude" :circles"circles" :markers"markers"> </map>属性名类型说明longitudeN…

取消加考!自考专业调整,2026年起执行新计划!

就在2023年10月7日&#xff0c;广东省教育考试院发布《关于广东省高等教育自学考试专业调整有关事项的通知》&#xff0c;自学考试迎来新变化&#xff0c;本次专业调整政策性强&#xff0c;涉及面广&#xff0c;持续时间长&#xff0c;一起来看看具体说明~ 关于广东省高等教育自…

ubuntu下使用gcc编译c程序: “error: stray ‘\357’ in program“

现象&#xff1a; ubuntu下使用gcc编译c程序: “error: stray ‘\357’ in program“ 尝试查找原因&#xff1a;打开从windos直接粘贴c程序到ubuntu的c代码&#xff0c;发现多了 <200b>&#xff1a; 方案&#xff1a;尝试在vim编辑器删除&#xff0c;多出来的字符后编译…

HSRP热备份路由器协议的解析和配置

HSRP的解析 个人简介 HSRP hot standby router protocol 热备份路由协议&#xff08;思科私有协议&#xff09; HSRP v1 version 1 HSRP v2 version 2 虚拟一个HSRP虚拟IP地址 192.168.1.1 开启HSRP的抢占功能 通过其他参数 人为调整谁是主 谁是从 &#xff01; 查…

docker-compose Install hfish

前言hfish HFish是一款社区型免费蜜罐,侧重企业安全场景,从内网失陷检测、外网威胁感知、威胁情报生产三个场景出发,为用户提供可独立操作且实用的功能,通过安全、敏捷、可靠的中低交互蜜罐增加用户在失陷感知和威胁情报领域的能力。 HFish具有超过40种蜜罐环境、提供免费…

JAVA设计模式-适配器模式

一.概念 ​ 将一个接口转换成客户希望的另一个接口&#xff0c;使接口不兼容的那些类可以一起工作&#xff0c;其别名为包装器(Wrapper)。适配器模式既可以作为类结构型模式&#xff0c;也可以作为对象结构型模式。 ​ 在适配器模式中&#xff0c;我们通过增加一个新的适配器…

【vue3+ts】项目初始化

1、winr呼出cmd&#xff0c;输入构建命令 //用vite构建 npm init vitelatest//用cli脚手架构建 npm init vurlatest2、设置vscode插件 搜索volar&#xff0c;安装前面两个 如果安装了vue2的插件vetur&#xff0c;要禁用掉&#xff0c;否则插件会冲突

vscode安装svn扩展(windows)

一、安装 1.1 环境说明 操作系统 windows 10 1.2 安装过程 1. 安装svn 双击安装程序 点击next 继续next 继续next 点击Install 在弹出框中点击 是 开始安装进度&#xff0c;一会将安装成功 安装结束 右键菜单栏中已经有svn选项&#xff0c;并且能正常拉取以…

怎么把heic改成jpg?方法大全在这里

怎么把heic改成jpg&#xff1f;HEIC是一种现代的图像文件格式。它是由ISO制定的标准&#xff0c;并得到了苹果公司的支持和推广。与JPG等传统图像格式相比&#xff0c;HEIC格式可以提供更好的图像质量&#xff0c;并且占用更少的存储空间。这使得它在手机、平板电脑和其他移动设…