建设智慧城市网络
高平历史网 2020-04-08 09:23:11
区块链——原子互换(Atomic Swap)
原子互换是区块链上的一种不用到第三方的去中心化的加密货币交换算法。它可以让远在异地的两个账户交换不同的货币,而不用担心对方捐款逃跑或者赖账。虽然不是完美解决方案, 但是底线是起码不会让交易的任何一方损失钱
。各原种资料看了遍,终于自己能说通了。 下面就说说我对这个算法的理解。 总分总的思路 ??
交易双方为 A 和 B. 除了利用普通交易中的签名认证,还有加了一些维度的限制。
(1) Hashlock. 一个用 x 作为 原像的哈希函数 hash(x) . 只有揭露 x 的时候, 这个交易才能被链确认。 这里的揭露我们可以认为是链上的任何人都可以知道x 的值了。也就是在链上广播了。
(2) Timelock. 对于交易最终能够确认(能够上链得到公认), 设置了一个可以看成自动回滚的定时器。只有到 Timelock 以后才能 触发, 去确认(上链)。
HashLock 和 TimeLock 也是构成Hash Time Locked Contracts 的部分,在闪电络中也用得到。
原子互换聪明在双方都各自发出两个交易(transaction- TX). 一个是应有的转钱交易,一个是自己的撤资交易, 用来’保底’。 一共四个交易。而不是我们普通想的两个交易。
这时候读者可以想想怎么利用这四个交易, HashLock, TimeLock 来完成这个原子互换?
下面是过程 A 用 1 个 BTC 换 B 的 3 个 ETH ??
1 . A 随机出一个数字 x, 并且 hash(x). 这个其实有点作为数字信物一样的东西,回头就会知道, 而且是由首先创造交易的人做哈希并且保存x 先。
2. A 创建 交易 TX1 :把 1 个 BTC 送到 B 的 public key 账户(地址)中。 但是这个交易实现是要有条件的, A 又不傻。下面两个条件之一符合就可以:
要么: B揭露 x 并且有 B 的签名
要么: 有 A 和 B 两方的签名
3. A 创建交易 TX2?—?保底交易: 把 1 BTC 从 TX1 发回到 A 自己 public key 账户(地址)
并且 lock 48 hours. 回头会说为什么 48 hours. 这个交易A 自己先Sign掉。
4. A 发 TX2(保底交易) 给 B
5. B 签了 TX2 然后还给 A. 这时候注意 TX2 已经有了双方的签名,但是48小时的Locktime 在那里,撤资时机未到。
6. 时间点1?—?A 提交 TX1 到络上。但这时还没有发到 B 的 public key. 因为B还没有揭露x.
B 这边也是大约类似的动作
7. B 创建 交易 TX3 :把 3 个 ETH 送到 A 的 public key 账户(地址)中。 但是这个交易实现是要有条件的, B 也不傻。下面两个条件之一符合就可以:
要么: A 揭露 x 并且有 A 的签名
要么: 有 A 和 B 两方的签名
8. B 创建交易 TX4?—?保底交易: 把 3 ETH 从 TX3 发回到 B 自己 public key 账户(地址)
并且 lock 24 hours. 这个交易 B 自己先Sign掉。
9. B 发 TX4(保底交易) 给 A
10. A 签了 TX4 然后还给 B. 这时候注意 TX4也已经有了双方的签名,但是24小时的Locktime 在那里,撤资时机未到。
11. 时间点2- B 提交 TX3 到络上
这里我第一次看的时候总觉得很危险,因为A 知道 x, 并且可以随时签名,TX 提交的时候 A 不就直接卷钱跑了吗? 但是原子互换的聪明之处也在这里,当A想 “卷款”, 也就是使用了 TX3, 获得 3 ETH, 但是这个操作有side effect: 也会使得 x 上链并且被广播。所以 B 也就知道了原像 x, 也能使用TX4.
12. 时间点3- A 使用了 TX3,获得了3 ETH。 因为A 有原像, 并且自己of course 可以私钥签名。 但是如上面所说 原像x 会被广播公开。
13. 时间点4- B 从链上拿到 原像 x, 并且of course 自己私钥签名,就能使用 TX4 咯。
总结下:
这样其实 我们可以看到 交易的两个条件: 拿到原像和对方签名是对应交易成功时的条件。 双方的签名条件是用来执行保底交易,达成撤资条件的。 而且在 双方开始把真正交易提交络之前, 先要把双发的保底交易给sign 咯。 比如上面的步骤 4,5,8,9。 这样也对,和实际生活中一样,先把丑话说前头, 而且有个时间锁,谁也不能赖。
还有就是上锁时间,谁先发送保底交易,谁的锁的时间就要比对方长。这样才能给对方足够的时间来确认。 因为对方操作类似对称,所以时间在两倍。
当然,原子互换并不完美, 有一些局限性,比如要相同的哈希算法, 上锁时间可能过长,汇率影响等等。 读者有兴趣就自己搜搜吧。
丁桂薏芽健脾凝胶使用方法小孩儿不爱吃饭宝宝消化不良怎么办双膝增生性关节炎怎么治
雅安癫痫病医院地址
小孩肚子疼不消化怎么办
治疗滑膜炎办法甘肃治疗包皮过长医院
贵阳男科医院那个好
- 上一页:室内污染治理哪个好亿家净业界好名声有口豆油夏季
- 下一页:自 1995 年起夏季
- 会站限制莺歌,会站砍31分4帽,太阳赢球,他抢了保罗的MVP
- 《雪中悍刀行2》宣发,5大主演披露,姜泥、青鸟新人选意外
- 2022宁夏公务员考试笔试时间确认7月9日至10日
- 自觉是喜欢一个人的时候一心一意
- 懂得念人之好,是职边锋更高级别的情商
- 宁夏艺术职业学院一行来丝路风味公司
- 像冰箱 微波炉等电器的污渍,不能用碱性太大的清洁剂,这种专用的多功能清洁剂,它是植物萃取精华,气味很
- 通威股份(600438.SH)2022-2024年员工持股计划已完成投资者购买 斥资约54.88
- 难怪鹿鼎记不敢续写天龙八部,你看扫地僧圆寂之后,谁是天下第一?
- 天下太平人寿董事长杨铮任职资格获批
- 关乎大资金动向!科创板“芯片”指数来了,42只样本股名单公布;上交所几大指数也调整,腾讯、美团等权重
- 张丰毅还给继女保时捷,亲儿子婚礼拒绝参加,只因亲儿子做了错事?