深入解读闪电网络:HTLC 的工作方式与多跳支付的实现方式( 四 )


传输协议
闪电网络的另一个非常重要的特点是:有关这个路径的所有信息都是完全匿名的 。也就意味着对于任何一个参与者来说 , TA 都只知道跟自己有关的这部分 , 比如 , 对于 Carol 来说 , 这笔支付就像是 Bob 在给 Diana 转账 , 她不知道 Bob 会从 Alice 处收到资金 , 也不知道 Diana 会继续转账给 Eric 。
闪电网络使用 Sphinx 多重加密协议 。在使用闪电网络时 , Alice 会为网络的每一部分都做一层加密 , 从支付路径的末端开始 。她使用 Eric 的公钥为 Eric 加密了消息 。这条加密消息会被嵌套在给 Diana 的消息里 , 并用 Diana的公钥对整个消息再做一次加密 。再然后 , 这条给 Diana 的消息又会嵌套在给 Carol 的消息里 , 也用 Carol 的公钥对整个消息再做一次加密 。如此不断重复 , 得出可以交给下一个人的消息 。这样一来 , Bob 只能解密消息的最外一层 , 得到本意发给他的内容;然后把消息转给 Carol;Carol 也是如此 。每经过一个人 , 都只会公开绝对必要的消息:支付的数额、佣金的数额、时间锁的内容 , 等等 。
为了让人不能从消息的长度中推测链条的长度 , 消息的长度都是一样的 , 总是像有 20 个人参与这个链条一样 。每个人 , 包括最后一个 , 得到的都是同样大小的图像 , 都以为除了自己以外还有 20 个伙伴 。
闪电网络的好处和应用场景
当然 , 闪电网络的好处并不像很多人以为的那样 , 只有可扩展性一项 。我们想想闪电网络到底带来了哪些可能 。
即时交易 。使用闪电网络时 , 事务几乎是即时完成的 。所以用比特币来买咖啡就变得可行了
交易所套利 。当前 , 从一个交易所转出资金并转入另一个交易所是很不方便的 , 需要等待 3 至 6 个区块来确认交易 。如果交易所能使用闪电网络 , 那用户就能即时转入资金、参与套利 。交易所也不再需要冷钱包来存储资金 , 极大地降低了盗窃风险 。
小额支付 。比特币区块链的手续费对小额支付来说太高了 。很难想象谁会愿意支付 0.001 btc 就为了转账同等数量乃至更少的金额 。有了闪电网络 , 你就可以即时转移任意大小的金额 , 举个例子 , 你可以按 MB 来支付网费 。
金融智能合约和交易 。金融合约对时延是极度敏感的 , 而且通常需要许多计算 。把大多数负担移到了区块链外 , 我们就有机会能创建非常复杂的事务以及合约 , 而无需把这些都记录到区块链上 。
跨链支付 。如果使用不同共识规则的区块链使用同一种哈希函数 , 就有可能使用闪电网络来跨链支付 。参与者无需信任任何人 , 也无需使用中介 。
隐私 。在闪电网络中 , 事务比起在比特币区块链上要更加隐秘 , 因为支付链条的参与者并不知道交易的发起方和目的地 。
结论
我们已经讲完了闪电网络 。在下一篇文章中 , 我会告诉你如何使用 HTLC 来执行一次跨链的原子互换 , 用 btc 交换 ltc 。
链接
Lightning network in depth, part 1: Payment channels
“Mastering bitcoin” — Andreas M. Antonopoulos
Lightning network whitepaper
Segregated witness for dummies
(完)
https://medium.com/softblocks/lightning-network-in-depth-part-2-htlc-and-payment-routing-db46aea445a8
作者: Magomed Aliev
翻译: 阿剑
【深入解读闪电网络:HTLC 的工作方式与多跳支付的实现方式】来源:Odaily星球日报