闪电网络这个替换循环攻击挺有意思,有些类似 MEV 里的三明治攻击,前后夹击套出被夹目标的资金。

不过利用不容易,需满足:

- opening two channels with the victim.

- routing a payment through them.

- successfully replacement-cycling the victim's htlc-timeouts for Δ blocks.

- without the victim discovering the htlc-preimage transaction.

这个风险在被修复之前,玩闪电网络的项目方在对接上下游建立通道前可以警惕下,最好和有信誉的建立,降低被夹风险。

https://threadreaderapp.com/thread/1715736832950825224.html

更何况bitcoin 现在在推taproot的闪电网络。如下:

———————————————-

https://lightning.engineering/posts/2023-10-18-taproot-assets-v0.3/

Taproot地址的Script脚本中写入“简单的代码”,把它当成UTXO花费条件指令来执行。

在Taproot Assets的资产发行场景内,就可以把这串简单的操作码指定为Token发行总量、发行时间,发行对象等规则,可接入一组多签地址来联合触发该操作码。假设A地址用户,生成了多签地址B,并计划用B地址发行10,000个USDT向C地址,那么A地址可被认为是比特币上USDT资产的项目方Owner,而C地址就是第一批接收USDT的holder。

Token的成功发行需要A地址的签名触发,此后C地址若要将资产用转账逻辑向其他地址扩散,也同样需要由A地址签名触发。你一定会问,若C地址要向成千上万个地址扩散Token,总不能排队等A地址签名吧?好问题,关键就在此,C地址作为接收资产的地址通常会被发行在闪电网络上,即可以在其双向已建立通道的两个地址之间,高效、低成本、多次高频交互。

原本闪电网络只支持点对点场景,但全新的Taproot Asset实现了点对多功能,支持在一个交易通道内将一个支付转发到多个接收地址,脚本可根据条件向多地址转账资产。这就使得发行给C地址的Token可以利用闪电网络分发给大批量的地址,最终实现了资产的分散归属。这样一个闭环利用比特币网络发行Token的技术实现逻辑就跑通了。

而且C地址可以由闪电网络的中继节点,来根据规则来执行记账,类似的地址都可以通过不同的中继节点来管理分发自己的资产(比如owner可以把自己的USDT代币交给10个中继节点分发方,每个分发方相当于一个CEX热钱包地址,由他们再进行二次分发记账管理)。

如此一来,在这个逻辑内,Owner,发行条件地址,接收条件地址,多签触发控制,高效可信分发网络等以及其他必要组件的共同作用,一个全程可以实现去中心化资产发行、管理、分发的记账系统就应运而生了。

这可能就是所谓的:修改“比特币底层” taproot几年前就已经改好了

Reply to this note

Please Login to reply.

Discussion

No replies yet.