在上一篇文章中,Alice 和Bob 建立了一个双向的支付通道。但现在,Alice 想要给一个第三方Carol 支付 1 btc。一般来说,Alice 和 Carol 需要在彼此之间开设一个支付通道。但实际上并不需要。因为Bob 和Carol 之间已经有了一个通道,所以Alice 可以通过Bob 给Carol 支付,这样就可以在不用负担额外成本的情况下完成交易了。前情提要:干货 闪电网路深入解读上:支付通道事件背景:Arcane 报告:比特币闪电网路支付的使用用户数达 8000 万人!一年增长 800 倍
具
体来说,Alice 可以给Bob 支付 1 btc,而 Bob 再支付1 btc 给Carol。但是,Alice 实际上并不信任Bob,或者 Carol 并不信任Bob。她担心把钱给 Bob 之后,Bob 不会给 Carol;又或者,他把钱给了Carol,但 Carol 谎称自己压根没见到钱,而 Alice 也不知道该找哪个来追责。
因此,Alice 希望能保证,仅当 Bob 给了Carol 1 btc,自己才需要给 Bob 支付1 btc。
bitopro币托当Alice 要给Carol 支付1 btc 时,她让Carol 先生成一个Secret Key,并把对应的哈希值发给她。Alice 也告诉Carol 可以用这个Secret Key 跟 Bob 交换1 btc。
与此同时,Alice 把从 Carol 处得到的哈希值发给 Bob,并告诉 Bob 如果他能提供对应于这个哈希值的Secret Key,她就会给 Bob 1 btc 这个Secret Key当然只有Carol 拥有 。
所以 Bob 找到 Carol,用1 btc 换来了Carol 的Secret Key。
然后,Bob 找回 Alice,提供这个Secret Key。Alice 因此知道了 Bob 一定给过钱了,也就是 Carol 肯定已经收到了1 btc,于是就把钱给了Bob。
皆大欢喜,啊,几乎是皆大欢喜。
在这种 过家家的情形下,中间人 Bob 还是需要信任 Alice 和 Carol。Bob 必须相信 Carol 给他的是一个真正有用的值不然钱都给了就拿不回来了,而且要相信 Alice 真的会给他1 btc,假如他能提供对应于哈希值的Secret Key 的话。
这时候,我们就需要哈希时间锁合约HTLC啦!
留言框-