摘要:BitMEX 研究已将其闪电节点升级至包含瞭望塔功能。瞭望塔功能是可连接至另一友好节点的机制,即使您处于离线状态,其也可为您监控您的闪电通道,防止不诚实的交易对手窃取您的资金。我们的试验成功证明了瞭望塔是有效的,至少在我们的例子中是这样。振奋人心的是,在理论上已经存在多年的“瞭望塔”概念,现在已经在实践中发挥了作用。
(来源:Alcatraz, flickr)
概述
该瞭望塔部分紧随我们之前关于闪电网络的三篇文章:
2019 年 6 月 29 日,发布了 LND 0.7.0(闪电实施),其中包括了瞭望塔功能。瞭望塔是第三方闪电节点,可以检测到不诚实的一方是否试图窃取资金,然后广播正义交易的消息,将资金发回诚实的一方(即使诚实性节点处于离线状态)。
瞭望塔功能有两个模式
客户/瞭望塔用户 |
服务器 |
|
说明 |
客户连接到瞭望塔服务器。闪电通道状态发生变化时,最新的通道状态数据会被发送至瞭望塔服务器。如果通道中断,瞭望塔可广播一条正义交易的消息,并将资金发回诚实性节点的线上钱包。 |
瞭望塔服务器不需拥有任何闪电通道或支付任何费用。服务器连接到闪电客户,并为其监控客户的闪电通道。 |
操作细节 |
要将节点连接到瞭望塔服务器,需要将以下行添加到闪电配置文件中: > wtclient.private-tower-uris=tower-public-key@ip-address:9911 其中公共密钥和IP地址由瞭望塔服务器提供。 |
要激活瞭望塔服务器,需要将以下行添加到闪电配置文件中: > watchtower.active=1 然后,可以运行以下命令: > lncli tower info 然后,瞭望塔服务器应显示瞭望塔公共密钥(不同于闪电节点公共密钥)。瞭望塔客户需要此密钥。由于可能存在服务被拒的风险,目前不建议发布瞭望塔公共密钥。 |
一个节点可同时作为瞭望塔服务器和客户。如果运行两个节点,则每个节点都可以是另一个节点的瞭望塔服务器。BitMEX 研究目前有三个正在运行的闪电节点,这些节点在一个环形配置中互相监控。
瞭望塔成功测试
2019 年 7 月 30 日,BitMEX 研究成功测试了瞭望塔系统。就像我们上一篇正义交易一样,我们试着能骗过自己,但这次我们用的是瞭望塔。振奋人心的是,瞭望塔功能正常运转,将会让那些不诚实的人受到严惩。
为了进行此测试,我们需要运行三个节点:
- 非诚实性节点 – BitMEXThief
- 使用瞭望塔服务的节点 – BitMEXTowerClient(瞭望塔服务的用户)
- 瞭望塔自身节点 – BitMEXResearch
人工构建一个瞭望塔正义交易
(来源:BitMEX 研究)
我们的瞭望塔所广播的最终达成的正义交易可在这里查看。
结论
所有 BitMEX 研究的闪电节点现都处于瞭望塔的保护之下。虽然瞭望塔在安全性方面有了很大的改进,但在我们看来,比不诚实通道中断更大的问题是,闪电节点的内存可能会意外丢失或毁坏—在这种情况下,节点可能会丢失最新的通道状态。虽然我们在这个领域已经有了改进,但瞭望塔无法借助静态通道备份 (SCBs) 解决这个问题。使用 SCBs 的情况下,只要备份后没有创建新的通道,所有资金都是安全的。
通过对瞭望塔的成功测试,我们更加确信了闪电网络的牢固性。振奋人心的是,像瞭望塔这样多年讨论于理论上的概念,终于成为了现实。然而,要使闪电网络更加牢固、可靠,我们还有很长的路要走。
欢迎转载,请注明文章来自
BitMEX (www.bitmex.com)