Decred 是一种新型的去中心化加密货币。在2017年底,Decred的开发者发布了atomicswap工具包,支持Decred与Bitcoin、Litecoin、Monacoin及其他一些加密货币的跨链原子互换。它的主要特点是:

  • 去中心化,无需第三方托管

  • 去信任化交易

  • 点对点交易,抗审查

  • 资产原子性转移

应用atomicswap的区块链需要支持以下条件:

  • 交易脚本分支
  • 交易脚本使用同样的哈希算法
  • 交易脚本签名检查
  • 交易脚本支持CheckLockTimeVerify或CheckSequenceVerify操作码

目前大部分从Bitcoin fork出来的加密货币都满足以上条件。

实现原理上,主要是利用了交易脚本功能实现合约交易。合约交易中会约定交换金额,接收方地址,兑换密码哈希,回退方地址,合约锁定时间等信息。其中兑换密码的设计用于保证原子互换、合约锁定的设计主要是用于保证违约情况下的资金正常回退。

正常情况下,一次交换过程需要双方执行多个步骤,同时双方在执行过程需要交互信息。原子互换过程主要用到以下命令:

  • initiate

    用于第一个参与方初始化输出合约交易内容,兑换密码,兑换密码哈希,以及一个锁定48小时的回退交易等信息。

  • participate

    用于第二个参与方初始化输出与initiate类似的合约交易内容,不一样的地方在于secret hash参数必须与第一个参与方通过initiate命令生成的兑换密码一致,且回退交易的锁定时间是24小时。

  • auditcontract

    审查合约交易内容。主要是查看合约交易中的output接收地址、交换金额、兑换密码哈希、回退交易锁定时间。

  • redeem

    用于参与方从合约中兑换另一方支付的货币。secret参数必须与initiate中的兑换密码一致。一旦第一个参与方发布redeem执行兑换,第二个参与方就可以执行extractsecret命令从交易中提取出兑换密码,再通过执行redeem兑换回自己的目标货币。

  • refund

    用于创建和发送回退交易,将合约交易中的货币执行回退到原始发送方。

  • extractsecret

    用于第二个参与方从第一个参与方的redeem交易中提取兑换密码,并通过兑换密码从第一个参与方的合约交易中兑换目标货币。

一次正常的原子互换交互过程:

https://github.com/toxotguo/thinking/blob/master/Decred%20atomicswap%20%E8%B7%A8%E9%93%BE%E5%8E%9F%E5%AD%90%E8%B5%84%E4%BA%A7%E8%BD%AC%E7%A7%BB%E5%B7%A5%E5%85%B7%E5%8C%85.md

跨链资产原子转移工具包 Decred atomicswap相关推荐

  1. 跨账本资产原子互换协议

    一.协议背景 未来可能有很多不同的联盟链,采用不同的技术,支持不同的资产.目前资产在区块链内部的可靠流转已经不是问题,需要考虑的是,如何用一种简单的方法进一步促进各条链上资产的互相交换.发掘更多的商业 ...

  2. Acala与全球知名跨链资产流动平台Ren达成合作

    Acala x Ren Bringing BTC to Polkadot 7月22日,Acala 与全球知名跨链资产流动性平台 Ren 达成合作,旨在打造更多元.高效开放式金融服务.Ren 已在 Ac ...

  3. Layer2匿名交易协议ZKCHAOS与跨链资产桥ChainSwap合作促进跨链隐私保护

    据官方消息,基于Layer2的匿名交易协议.公平游戏平台ZKCHAOS宣布与跨链资产桥ChainSwap达成合作,此次合作将使ZKCHAOS完全采用和适应Chainswap的跨链资产桥和应用中心,促进 ...

  4. 合成资产平台Public Mint与跨链资产协议Knit Finance达成合作

    合成资产平台Public Mint与基于Polkadot的跨链资产协议Knit Finance达成合作,将使Public Mint USD能够跨链使用,包括币安智能链(BSC).Polygon和许多P ...

  5. Opium推出针对跨链资产桥安全性的保险服务Bridge Protection

    链上衍生品协议Opium推出针对跨链资产桥安全性的保险解决方案Opium Bridge Protection,基于Opium的CDS合约实现.该产品是去中心化且可交易的保险,用户可以以代币的方式购买保 ...

  6. Matrixport发布跨链资产项目M-Tokens

    据官方消息,新加坡金融服务平台 Matrixport 发布跨链资产项目 M-Tokens,现已发布锚定比特币的 MBTC.根据官网描述,M-Tokens 是锚定比特币等加密资产的 ERC20 代币.所 ...

  7. 使用shuttle实现bytom上跨链资产交换

    最近基于比原链上的不同资产交换工具shuttle非常抢眼,因为该工具不仅可以实现同一条链上的不同资产进行交换,还可以实现不同区块链平台上的多种资产进行交换.该工具奠定了资产在交易的过程中完全去中心化, ...

  8. 构建万物可信互联的基石,带你深度剖析区块链跨链的关键技术,满满是干货!

    [摘要] 什么是区块链,相信你一定有所了解,那么你是否了解区块链跨链技术呢?本文将从区块链跨链技术的起源发展.相关名词.关键技术和模型实现几个方面进行深度剖析,干货满满! 1.区块链跨链技术诞生背景及 ...

  9. 构建万物可信的基石:解密区块链跨链技术

    1.区块链跨链技术诞生背景及发展历程 1.1 什么是跨链? 区块链技术经过10来年演进,已经被认为是可以参与未来可信社会构建的重要基础设施.但是现实的社会中包括许多行业和不同的经济领域.把整个现实世界 ...

最新文章

  1. 数据类型 类型检测
  2. Android视图绘制流程完全解析,带你一步步深入了解View(二)
  3. 【论文解读】打破常规,逆残差模块超强改进,新一代移动端模型MobileNeXt来了!精度速度双超MobileNetV2...
  4. java 线程之对象的同步和异步
  5. mysql --skip-locking_skip-external-locking – MySQL性能参数详解
  6. Linux 命令简单介绍第一课笔记
  7. facenet训练自己的数据_①如何帮助自己简易分析体测数据②没有私教一个人无法开始训练?...
  8. 蓝桥杯 ADV-94算法提高 复数归一化
  9. Linux的链接工具 putty 以及一些命令。
  10. Solidworks装配体教程:善用连接重组
  11. linux 字符 拨号上网,LINUX下用ADSL拨号上网
  12. 表格table中的td标签中的内容太多,影响整体外观,不美观。将一部分内容隐藏起来,用省略号代替
  13. 更改分辨率时banner图片变形解决方案
  14. 20145212罗天晨 注入shellcode实验及Retuen-to-libc实验
  15. jqgrid setCell 单元格赋值空字符串 无效处理
  16. 对于效率施工作业出力的另一途径采用路缘石滑模机
  17. DLT645-2007通讯规约解析
  18. 单一参数的交流电路总结
  19. 深度学习实战---猫狗大战(pytorch实现)
  20. python鼠标碰撞_selenium + python 鼠标事件

热门文章

  1. JQ属性和css部分测试
  2. JFreeChart插件使用
  3. 《Android编程权威指南》-读书笔记(七) -处理旋转设备
  4. struts2.1.8,hibernate3.3.2,spring2.5 整合需要哪些jar包
  5. 浅谈ICA算法的概念、本质和流程
  6. 单核工作法18:简化协作(下)
  7. 科大星云诗社动态20210502
  8. [云炬商业计划书阅读分享] 养生保健
  9. 蜗壳の樱花2020-04-03
  10. [MATLAB调试笔记]Possion方程求网格点电场强度