科普 | 跨链技术方案之哈希锁定

Posted 白话区块链-大白

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了科普 | 跨链技术方案之哈希锁定相关的知识,希望对你有一定的参考价值。

这是白话区块链的第1357期原创 
作者 | 宇星
出品|白话区块链(ID:hellobtc)

在白话之前的推文《肖风博士赞不绝口的Cosmos和波卡两大跨链技术项目》中提到了跨链技术,其中跨链技术的实现模式之一就是哈希锁定,今天大白就给大家详细讲解一下什么是哈希锁定。

 01 
哈希锁定和闪电网络

哈希锁定,全称哈希时间锁定合约(Hash TimeLock Contract),是闪电网络中提出的一种新的技术实现形式。

哈希锁定模式是指用户在规定的时间段对于哈希值的原值进行猜测来支付的一种机制。简单讲,就是在智能合约的基础上,双方先锁定资产,如果都在有限的时间内输入正确哈希值的原值,即可完成交易。

在这样的机制下可以实现小额支付的快速确认,也就是说实现闪电网络快速确认的目标。

接下来大白将通过哈希锁定的应用场景之资产兑换为例来为大家科普哈希锁定是怎么实现的。

 02   
怎么实现哈希时间锁定?

为了方便理解哈希时间锁定到底是如何锁定的,这里给大家类比了两个锁,一个是哈希锁,一个是时间锁。

1、哈希锁

通过哈希值上锁,上锁之后只有用产生这个哈希值的原本值进行开锁,假设数 123,哈希之后的值为 a03a,通过 a03a上锁,不考虑哈希碰撞的情况下,只能由 123 解锁。

2、时间锁

时间锁要求在规定时间内输入哈希锁的密码。如果时间锁的时间是 1 个小时,那么就要求用户需要在 1 个小时内输入哈希锁的密码,如果在 1 个小时后输入哈希锁的密码,时间锁仍然不会开启。

也就是说同时打开这两个锁的条件是,在规定的时间内输入哈希值原本的值,上面的例子就是在1个小时内,输入“ 123 ”,两把锁才会都处于开启状态。

现在大白将利用哈希时间锁定的机制把自己的比特币在小黑那里兑换以太币,具体的操作步骤如下:

(1)大白先生成随机数 S,再把随机数的哈希值 H(S) 通过网络给小黑,假设随机数是 123 ,哈希值是 a03a 。

同时,大白进行时间上锁和哈希上锁,假设时间锁的时间为1小时,哈希锁上锁的哈希值是 a03a。上完锁后,待转换的比特币就被锁定在链 A 上。

(2)小黑收到大白给的哈希值“ a03a ”后,小黑根据这个哈希值在以太坊上部署智能合约,并往合约中存同等价值的以太币。小黑的智能合约要求大白在规定时间内提供密码“ 123 ”才可以取走智能合约中的以太币。

这个过程相当于,小黑自己也上了两把锁,其中哈希锁和大白的那把哈希锁一样,需要用同样的密码才可以打开,时间锁假如为半个小时。

(3)大白使用小黑的这个智能合约,并在半个小时内输入自己的密码“ 123 ”,就能打开小黑在链B上的哈希锁,就能取走小黑智能合约里的以太币(相当于小黑的以太币,因为智能合约是小黑创建的,合约里的以太币也是小黑转进去的)。

(4)因为大白在调用了小黑的智能合约时输入了密码,因此小黑也就知道了密码是“123”,他只要在一个小时内通过这个密码打开链A上的哈希锁,大白的比特币就会转给小黑。

通过上面的过程,可以看到,大白可以通过哈希时间锁定这种方式,实现了比特币到以太币的兑换。当然这往往需要大白多支付一点比特币给小黑作为手续费,毕竟天下没有免费的劳动力。

 03 
哈希锁定的优缺点

听了大白上面的讲解有的小伙伴会疑惑?有哈希锁不就可以了吗?毕竟大白必须输入哈希锁的密码才能取走小黑的以太币,小黑也只有当大白输入完链B上的哈希锁密码之后才能打开链A上的哈希锁。看起来哈希锁就能搞定的事儿,干嘛要加一个时间锁?

在哈希时间锁定机制中,如果时间超过了规定时间,锁定在系统中的代币将会被收回。因此,加上时间锁有效地促进了大白在小黑规定的时间内解开链 B 上的哈希锁,小黑也会因为自己的利益所需而在大白规定的时间段内解开链 A 上的哈希锁。

在整个过程链与链之间也不用相互了解,进而促进了交易的速度。而且如果交易失败,哈希锁定是不会收取额外的手续费。

不过哈希锁定的应用场景比较受限,它支持的功能比较少。

你希望现在的交易平台大力推广哈希锁定,走向去中心化的DEX吗?为什么?欢迎在留言区分享你的观点。

END

上一篇科普 | 已接入支付宝,还可选匿名使用,数字人民币到底是什么?

『声明:本文为作者独立观点,不代表白话区块链立场,本内容仅供广大加密爱好者科普学习和交流,不构成投资意见或建议,请理性看待,树立正确的理念,提高风险意识。文章版权和最终解释权归白话区块链所有。』

欢迎长按二维码

阅读白话区块链入门连载

↓↓↓

喜欢请点「在看」????

以上是关于科普 | 跨链技术方案之哈希锁定的主要内容,如果未能解决你的问题,请参考以下文章

区块链BaaS云服务(17)纸贵科技Z-BaaS平台“跨链”

主流区块链跨链技术

跨链技术总结

对于公证人模式的跨链,如何让链能够带来一些突出的特点

技术科普 资产监测设备电池电量计算方案

技术科普万纳链密码学方案介绍——零知识证明