社区开发者基于比原链完成HTLC Swap项目
来自埃塞俄比亚的社区开发者Meheret近期完成了基于比原链的HTLC Swap项目,支持比特币,比原主链和比原侧链之间的资产原子互换。Swap获得Bytom Grant 1万美金的奖励。
开源代码库: https://github.com/movnetwork/swap
体验网址: http://swap-web.herokuapp.com/dashboard/bitcoin?tab=claim
什么是HTLC
HTLC全称哈希时间锁定合约(Hash TimeLock Contract),指用户在规定的时间段对于哈希值的原值进行猜测来支付的一种机制,可以去中心化的实现双方的资产互换。最早是在闪电网络中被提出,在这样的机制下可以实现小额支付的快速确认。
要了解哈希时间锁,需要分别了解一下哈希锁和时间锁:
时间锁: 时间锁要求在规定时间内输入哈希锁的密码。如果时间锁的时间是 1 个小时,那么就要求用户需要在 1 个小时内输入哈希锁的密码,如果在 1 个小时后输入哈希锁的密码,时间锁仍然不会开启。
哈希锁: 通过哈希值上锁,上锁之后只有用产生这个哈希值的原本值进行开锁,假设数 abc,哈希之后的值为 ba7816,通过 ba7816 上锁,不考虑哈希碰撞的情况下,只能由 abc 解锁。
HTLC是如何工作的?
假设Alice想用BTC换Bob的BTM,该怎么做呢?
1、Alice首先生成一个随机数s,把哈希H(s)发送给Bob,假设随机数是“abc”,哈希值“ba781”,Alice在BTC链上用该哈希值给待交换的BTC上锁,同时设置一个1小时的时间锁。
2、Bob收到“ba781”,在比原链上对同等价值的BTM用相同的哈希值设置一个合约上锁,同时设置0.5个小时的时间锁。Alice在0.5小时内,用“abc”可以解锁Bob的BTM,因为Alice使用设置随机数解锁,那么这个秘密就会暴露,Bob知道了这个随机数
3、Bob用这个随机数去BTC链上解锁Alice的BTM,交易完成
HTLC的优点
去中心化
HTLC使用了脚本或者合约,所以无需可信的第三方,即可完成双方的交易。
时间敏感
因为使用了时间锁,所以支付双方不需要等待太久,时间过了就会自动退回到账户,防止一方故意拖延无法完成交易过程,提升交易效率。
隐私性
交易双方无需知道互相身份,也无需信任即可完成资产交换。
Swap项目是什么
Swap项目是由来自埃塞俄比亚的社区开发者Meheret开发的基于比原链的HTLC项目,可以实现比特币主链,比原链主链和比原链侧链之间的资产原子交换。除了核心的Swap项目,Meheret还开发了配套的Swap-Web和Swap-API项目,用于用户的图形界面交互和接口交互。
通过Swap-Web我们可以看看实现功能
在中间的上面有三个按钮,分别代表BTC,BTM主链和BTM侧链。
在Wallet页面下输入助记词和密码,获得公钥和地址信息
在HTLC页面下,通过输入hash值,解锁公钥和发送公钥来构建哈希时间锁
在Fund页面下,输入生成的HTLC地址,给对应的哈希时间锁合约存入资金,并发送上链
然后即可将交易发送给对方,对方可以通过Claim页面来解锁资产,完成资产互换
体验网址: http://swap-web.herokuapp.com/dashboard/bitcoin?tab=claim
Bytom Grant期待更多优秀项目
Swap项目获得了Bytom Grant 1万美金的奖励,Bytom Grant是由比原链设立的,作为激励社区和生态的一个激励计划,设置最高10万美金的项目奖励.
Bytom Grant奖励范围包括:
- 软件和工具
- 学术研究
- 教育和文档
任何有志于成为比原的生态,和比原一起成长的优秀社区开发者和用户都可以来申请。