在白话之前的推文《肖风博士赞不绝口的Cosmos和波卡两大跨链技术项目》中提到了跨链技术,其中跨链技术的实现模式之一就是哈希锁定,今天大白就给大家详细讲解一下什么是哈希锁定。
?01?
哈希锁定和闪电网络
哈希锁定,全称哈希时间锁定合约,是闪电网络中提出的一种新的技术实现形式。
哈希锁定模式是指用户在规定的时间段对于哈希值的原值进行猜测来支付的一种机制。简单讲,就是在智能合约的基础上,双方先锁定资产,如果都在有限的时间内输入正确哈希值的原值,即可完成交易。
在这样的机制下可以实现小额支付的快速确认,也就是说实现闪电网络快速确认的目标。
接下来大白将通过哈希锁定的应用场景之资产兑换为例来为大家科普哈希锁定是怎么实现的。
动态 | 万事达卡为亚太地区金融科技创企提供支持平台 区块链企业或受益:全球支付巨头万事达卡为亚太地区的金融科技合作搭建了一个名为“Fintech Express”的平台。当下,亚洲地区持续涌现出大量金融科技初创企业,包括着眼于新兴数字经济的加密和区块链项目。万事达卡亚太区联席总裁Ari Sarker接受采访时表示,Fintech Express是万事达卡为金融科技初创公司提供支持所作努力的一部分:“在这个平台下,我们正在扩大金融科技合作和伙伴关系的范围,并加快万事达卡与该地区金融科技公司的合作方式,旨在将其无缝纳入万事达卡全球平台。”(BTCManager)[2019/11/11]
?02???
怎么实现哈希时间锁定?
为了方便理解哈希时间锁定到底是如何锁定的,这里给大家类比了两个锁,一个是哈希锁,一个是时间锁。
声音 | 工信部李颖:区块链等新一代信息技术正加速向工业经济领域渗透:据工信部网站消息,10月19日,第八届中国能源企业信息化大会在北京召开,信息化和软件服务业司巡视员李颖出席大会并致辞称,当前全球能源转型与新一轮工业革命正处于历史交汇期,互联网、大数据、人工智能、区块链等新一代信息技术正加速从消费领域向制造业、能源等工业经济各领域渗透,推动工业经济由数字化向网络化、智能化深度拓展,以“软件定义”为特征,以工业大数据为新型生产要素,以工业互联网平台为核心、以生态建设为目标的工业互联网时代正在到来。[2018/10/19]
精选 | 工信部王卫明:本届物联网博览会更侧重与产业结合 聚焦区块链等新技术:据新华网消息,在2018世界物联网博览会上,工信部科技司副司长王卫明称,本次大会更加侧重与产业结合。除工业互联网、智能制造、车联网、智慧城市、智慧环保外,还聚焦人工智能、大数据、区块链、智能传感器、边缘计算、集成电路等新一代信息技术创新活跃的领域,为新一代信息技术融合发展提供创新方向,为产业物联网规模化落地提供新动能。[2018/9/18]
1、哈希锁
通过哈希值上锁,上锁之后只有用产生这个哈希值的原本值进行开锁,假设数123,哈希之后的值为a03a,通过a03a上锁,不考虑哈希碰撞的情况下,只能由123解锁。
2、时间锁
时间锁要求在规定时间内输入哈希锁的密码。如果时间锁的时间是1个小时,那么就要求用户需要在1个小时内输入哈希锁的密码,如果在1个小时后输入哈希锁的密码,时间锁仍然不会开启。
动态 | 火币区块链产业报告称电子游戏将成为区块链普及大众的引爆点:今日,火币发布区块链产业专题报告(游戏篇)。报告中称:电子游戏产业很可能是区块链走向大众的一个重要引爆点,其本身原生数字化,并具备多项优质属性;区块链游戏的核心在于将游戏主动权交还给用户、玩家,重构产业链上参与者之间的关系,理论上不局限于某一类游戏设备,具备极大的渗透性和潜力; 区块链对游戏最大的影响即虚拟资产的确权和归属,并可对虚拟资产的权属历史进行追溯,其价值的出口在于虚拟资产交易;由于区块链跨应用账本的属性,游戏的资产具备互通性,跨游戏的虚拟资产交易市场可能成为未来一个极大的流量和财富集散中心。[2018/8/1]
也就是说同时打开这两个锁的条件是,在规定的时间内输入哈希值原本的值,上面的例子就是在1个小时内,输入“123”,两把锁才会都处于开启状态。
动态 | 浙江自贸区三家企业签署协议 将利用区块链技术打造供应链金融系统:7月26日,浙江自贸区召开首届会员大会暨国际油气产业创新发展峰会。会上,中化兴中石油转运(舟山)有限公司和浙江石油化工交易中心、浙商银行签订三方战略合作协议,三方将基于区块链技术联手建设供应链金融业务操作系统,即“仓单通”平台,在线实现仓单生成、仓单交易、现货融资和仓单质押等多项功能。[2018/7/27]
现在大白将利用哈希时间锁定的机制把自己的比特币在小黑那里兑换以太币,具体的操作步骤如下:
大白先生成随机数S,再把随机数的哈希值H(S)通过网络给小黑,假设随机数是123,哈希值是a03a。
同时,大白进行时间上锁和哈希上锁,假设时间锁的时间为1小时,哈希锁上锁的哈希值是a03a。上完锁后,待转换的比特币就被锁定在链A上。
小黑收到大白给的哈希值“a03a”后,小黑根据这个哈希值在以太坊上部署智能合约,并往合约中存同等价值的以太币。小黑的智能合约要求大白在规定时间内提供密码“123”才可以取走智能合约中的以太币。
这个过程相当于,小黑自己也上了两把锁,其中哈希锁和大白的那把哈希锁一样,需要用同样的密码才可以打开,时间锁假如为半个小时。
大白使用小黑的这个智能合约,并在半个小时内输入自己的密码“123”,就能打开小黑在链B上的哈希锁,就能取走小黑智能合约里的以太币。
因为大白在调用了小黑的智能合约时输入了密码,因此小黑也就知道了密码是“123”,他只要在一个小时内通过这个密码打开链A上的哈希锁,大白的比特币就会转给小黑。
通过上面的过程,可以看到,大白可以通过哈希时间锁定这种方式,实现了比特币到以太币的兑换。当然这往往需要大白多支付一点比特币给小黑作为手续费,毕竟天下没有免费的劳动力。
?03?
哈希锁定的优缺点
听了大白上面的讲解有的小伙伴会疑惑?有哈希锁不就可以了吗?毕竟大白必须输入哈希锁的密码才能取走小黑的以太币,小黑也只有当大白输入完链B上的哈希锁密码之后才能打开链A上的哈希锁。看起来哈希锁就能搞定的事儿,干嘛要加一个时间锁?
在哈希时间锁定机制中,如果时间超过了规定时间,锁定在系统中的代币将会被收回。因此,加上时间锁有效地促进了大白在小黑规定的时间内解开链B上的哈希锁,小黑也会因为自己的利益所需而在大白规定的时间段内解开链A上的哈希锁。在整个过程链与链之间也不用相互了解,进而促进了交易的速度。而且如果交易失败,哈希锁定是不会收取额外的手续费。
不过哈希锁定的应用场景比较受限,它支持的功能比较少。
你希望现在的交易平台大力推广哈希锁定,走向去中心化的DEX吗?为什么?欢迎在留言区分享你的观点。
——End——
『声明:本系列内容仅供区块链科普入门学习,不构成任何投资意见或建议。如有任何错漏,敬请留言指出。未经本文来源「白话区块链」授权,谢绝任何第三方转载本文。』
作者|宇星
出品|白话区块链
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。