主页 > imtoken官方安卓下载 > HashKey Capital:一篇了解比特币闪电网络的机制、进展和挑战的文章

HashKey Capital:一篇了解比特币闪电网络的机制、进展和挑战的文章

imtoken官方安卓下载 2023-06-17 06:56:06

相反,在 C1b 的第一个输出 RD1b 中,Bob 给了 Alice 另一个自己的私钥 Bob2,这意味着 Bob 放弃了 C1b,认出了 C2b。类似地,Alice 可以构造一个针对 Bob 的惩罚交易。

从上面不难看出,seq变量为实施惩罚和对策提供了一个时间窗口。

支付通道关闭,交易按照双方最终批准的资金分配方案进行构建和广播。

高温液相色谱

RSMC 已经可以满足基本的清算要求,但也有明显的局限性:通过 RSMC 方案结算的双方必须建立直接支付渠道进行支付。基于这个痛点,闪电网络需要另一个协议,HTLC。

HTLC支持“有条件支付”,即多个端到端支付通道串联形成的支付路径,支持首尾两方通过支付路径完成支付。

HTLC的核心是时间锁和哈希锁。时间锁只有在双方同意在一定时间T内提交时才有效,承诺方案到期(无论是proposer还是acceptor)失效。哈希锁可以理解为为一个哈希值H提供一个原像R,使得Hash(R) = H,promise有效;否则无效。如果支付交易因各种原因失败,时间锁允许参与交易的各方收回资金,避免欺诈行为。

假设 Alice 想和 Bob 开启一笔交易,交易金额为 0.5 BTC,但 Alice 需要通过 Carol 与 Bob 建立交易通道(图 4):

图 4:HTLC 和支付路径

步骤 1:Bob 设置原像 R(也称为提示数)并告诉 Alice 哈希值 H=Hash(R)。

步骤 2:Alice 通过 HTLC 有条件地向 Carol 支付:当且仅当 Carol 在时间 T 之前提供与哈希值 H 对应的原像时,Alice 才会向 Carol 0.5 BTC 支付。类似地,Carol 向 Carol 支付有条件的支付给Bob 通过 HTLC:当且仅当 Bob 在时间 t 之前提供对应于哈希 H 的原像时,Carol 向 Bob 0.5 BTC 支付。其中,t

第三步:Bob在t时间之前将R提供给Carol,得到0.5 BTC,此时Carol知道了R。反之,0.5 BTC会返还给Carol,Carol不会受到任何损失损失。

第 4 步:Carol 在时间 T 之前向 Alice 提供 R 以获得 0.5 BTC。反之,0.5 BTC 将返还给 Alice,Alice 不会有任何损失。

可以看出两点:第一,在HTLC下,支付要么完成要么不完成,不会给参与者造成损失,所以是“原子的”(Atomic),是顺序博弈均衡的结果;第三二、原像R(信息)和资金流向相反,原像R可以看成是一张收据(Receipt)。

一般来说,RSMC 保证两个人之间的直接交易可以在链下完成,HTLC 保证任何两个人之间的转账可以通过端到端的支付渠道完成。闪电网络整合了这两种机制,使得任何两个人之间的交易都可以在链下完成。在整个交易过程中,智能合约扮演着重要的中介角色,区块链网络确保最终交易结果得到确认。

路由

闪电网络使用源路由和洋葱路由。使用源路由,源节点负责计算从源到目的地的整个支付路径。为此,源节点需要下载完整的公共支付通道表来计算一条支付路径,并根据该支付路径中涉及的所有通道的负载计算手续费和所需通道数。在点对点交易中,这个过程涉及到大量的数据,随着网络的扩大,数据量会增加。洋葱路由可以防止交易链的中间节点知道整个交易的发起者或接收者,从而保证了用户的隐私。

由于 HTLC 的时间限制特性,交易如果没有足够快地完成就会失败,因此提高交易传播速度对于闪电网络的效率非常重要。要提高交易传播的速度,最重要的问题是如何规划最短的支付路径。

闪电网络使用 PBMC(基于概率的任务控制)机制来解决这个问题。最初,每个节点都有一个默认的成功率,根据实际传输完成率进行调整。网络路由的交易越多,任务控制组件就越了解网络的特征,并且可以更好地规划支付路径。

收费机制

对于链上 BTC 交易,用户选择每笔交易的费用,矿工选择费用较高的交易来生成区块以实现收益最大化。但闪电网络目前以不同的方式运作:节点运营商设定费用,用户选择支付路径和渠道以最小化费用。因此,闪电网络可以提供更便宜的费用结构。运营商提供专业化服务,更适合运营商(而不是普通用户)在资费上进行竞争,操作起来也更方便。

在闪电网络中,节点运营商必须确定两种类型的路由费用:基本费用和费率。基本费用是每次交易路由支付时收取的固定费用,以聪的千分之一表示。例如,基础费用为 1000,这意味着每笔交易的基础费用为 1 聪。虽然费率是指支付价值的百分比,但实际费率公式是费率除以 1,000,000。例如,1000 的比率是指 1,000/1,000,000,即 0.1%。一旦转账成功,路由通道将收取转账金额的0.1%。

此外,为了为路由支付提供流动性,闪电网络节点运营商需要在支付通道中锁定一定数量的比特币,包括流入和流出的流量。入站流量是指一个节点的支付通道可以从其他路由节点接收到的最大资金量。出站流量是指一个节点的支付通道可以用来支付其他路由节点的最大资金量。节点可以控制流出流量,但不能控制流入流量,因为流入流量取决于其他路由节点在通道中存入的资金量。例如,如果节点 A 想通过路由节点 B 从节点 C 收集 1 BTC比特币的运行机制,那么节点 A 需要至少有 1 BTC 的入站流量。那是,

不受控制的入站流量会导致闪电网络交易效率低下。如果两个节点之间的交易中有多个路由节点,即使两个节点的入站当前余额充足,也无法确认其他路由节点的入站当前余额是否充足。只要一个路由节点入站余额不足,交易就会失败。

节点运营商需要不时调整基本费用和费率,并监控调整的影响。由于支付需求渠道不时变化,而目前的费率普遍偏低(一个大节点的日均收入为 10 万聪,约合 7 美元),导致大部分节点入不敷出。因此,当前闪电网络中的流动性提供者不受投资回报的驱动。然而,为了实现大规模应用,闪电网络的费用设计需要重新考虑激励机制,并通过考虑投资回报和流动性结构来吸引节点运营商。

2019年闪电网络技术进展

2019年,闪电网络有了很多进步,大大提高了易用性、用户资产安全性和支付规模。以下是四个最重要的技术进步:

了望塔

闪电网络白皮书首先描述了瞭望塔机制,该机制于 2019 年得到改进和应用。瞭望塔解决了使用闪电网络的人需要保持在线以确保其交易对手不会试图窃取资金的问题。瞭望塔可以检测不诚实方是否试图窃取资金,然后广播一条正确交易的消息,将资金发送回诚实方(即使诚实节点离线)。换句话说,如果行为不端的节点试图传播旧交易,瞭望塔将惩罚该节点。

闪电网络用户可以连接专业运营的第三方瞭望塔来保护自己的利益,任何路由节点也可以运行自己的瞭望塔来保护自己的利益。瞭望台还具有恐吓和阻止欺诈的作用。对于潜在的攻击者来说,欺诈成本大幅增加,因为不清楚对方是否正在连接瞭望塔。图 5 显示了瞭望塔的运行机制。瞭望塔实际上是由专业机构代表普通用户实施的,用于实施图3中的惩罚机制。

图5:瞭望塔运行机制

继续图 1-3 中的表达式,考虑两个交易对手 Alice 和 Bob,每个交易对手在通道中放置 0.5 BTC(即 C1a/RD1a 和 C1b/RD1b,可以称为交易 1 或“旧交易”) ,然后 Alice 支付 Bob 0.1 BTC(即 C2a/RD2a 和 C2b/RD2b,我们称之为交易 2 或“新交易”)。此时,通道余额应为 Alice 的 0.4 BTC 和 Bob 的 0.6 BTC。假设 Alice 想要作弊并将包含两个签名的交易 1 的通道状态广播到链上。如果在 seq=1000 块确认时间内,Bob 没有上线反对,则欺诈成功,Bob 将损失 0.1 BTC。

假设 Bob 委托了一个瞭望塔来防范交易对手欺诈。Bob 建立了一个撤销交易(即图 3 中的 BR1a),授权瞭望塔在必要时撤销交易对手广播的过期交易。Bob 对交易进行预签名并设置提示,并将提示和预签名的交易发送到瞭望塔。该提示号允许瞭望塔识别过期交易,但不允许瞭望塔了解交易详情或通道余额。

此后,每当在区块链上广播新交易时,瞭望塔都会将提示与哈希表进行比较。一旦交易的隐含数量与 Bob 设置的隐含数量匹配,瞭望塔就知道该交易是反向交易。此时,瞭望塔解密 Bob 提供的撤销交易,证明 Alice 发出的是过期交易,重组并广播 Bob 预签名的交易,并将 Alice 频道中的余额没收给 Bob。也就是说,瞭望塔只有在欺诈发生时才能解密逆转交易并知道内容,因此不会严重影响用户隐私。

潜艇互换

潜艇交换技术由 Alex Bosworth 创建,作为一种无缝连接链上和链下比特币流通的技术。潜水交易所的运作机制与HTLC类似,但同时涉及链上和链下交易(图6).

图 6:海底交换运行机制

假设 Alice 想在闪电网络上向用户 Bob 支付链上比特币,但 Alice 没有闪电网络通道。

步骤 1:Bob 设置一组提示 R(即原像)并通知 Alice 其哈希值 H。

步骤 2:Alice 将比特币连同 Bob 的闪电网络地址通过链上 HTLC 发送给偷换服务商,并要求偷换服务商在一定时间内透露提示,以获得 on-链比特币。同理,隐藏交易所服务商通过链下HTLC通过闪电网络支付通道将等量的比特币转入Bob的闪电网络地址,要求Bob在一定时间内透露提示信息,才能获得这个off-链比特币。

第三步:Bob 揭示获取链下比特币的提示,隐藏兑换服务商利用提示获取链上比特币,整个隐藏兑换完成。

可以看出,潜水交易所最大的作用就是提高链上链下的互通性,并且由于HTLC的特性,可以将信用成本降到最低。潜艇互换可用于延长支付渠道的寿命。闪电网络交易需要交易双方有足够的通道余额。当通道流动性耗尽时,用户倾向于关闭原有通道,等到下一次打开新通道,但这限制了闪电网络通道的扩展和商业规模。用户在使用潜水交易所时,无需经过链上交易,就可以通过潜水交易所服务商获得链下比特币,从而保持渠道平衡。

原子多路径支付

目前,闪电网络交易中单笔支付的路由只能是单向的。假设 Alice 想要支付用户 Bob 0.01 BTC,那么他不仅必须在单个通道上拥有 0.01 BTC,而且该路径上的所有中介也必须在通道 @ 中准备好 0.>01 BTC 进行交易。也就是说,支付金额越大,就越难找到合适的支付路径。

多路径支付的想法在 2018 年被大量讨论,最初的想法是:将大额支付拆分为较小的支付,然后通过不同的节点运营商从支付方转移到接收方。该解决方案的挑战在于使用闪电网络的支付可能会失败,并且将交易拆分为多个交易可能会导致一些交易成功而一些交易失败。也就是说,支付金额越大,越容易出现部分支付问题,这将限制用户使用闪电网络进行大额支付的意愿。

解决方案是原子多路径支付,简单来说就是多路径支付+反部分支付机制。“原子”的意思是,只有所有小额支付都成功,交易对手才会收到全额付款;如果某些小额支付失败,整个交易将失败,资金将退还给付款人。

图 7:原子多路径支付流程

原子多路径支付有以下好处:首先,它提高了隐私性。不管有多少渠道被分成支付,只有交易的双方知道这个过程。二是提升支付体验。用户可以一次性转账大量资金,无需考虑通道金额上限。

中微子协议 中微子

Neutrino 协议由一系列“过滤层”组成。每个过滤层都连接到一个比特币块,并以压缩的方式表示其连接的块。与原始块大小相比,过滤层压缩了大约 250 倍。neutrino 协议的目的是减轻客户端硬件设施的负担,只捕获交易双方相关的数据,避免硬件设施时刻与比特币主链同步。neutrino 协议的运行过程如下:

图 8:Neutrino 协议操作流程

每当产生一个新区块时,全节点都会计算该区块对应的中微子过滤层,并将其发送给闪电网络上的所有中微子客户端。因此,大约每 10 分钟,客户端会收到一个中微子过滤层,客户端会比较所有钱包以查看是否有任何交易与钱包用户相关。一旦发现该块包含与钱包用户相关的交易,客户端将下载“剥离块”。“剥离块”只包含交易数据,不包含签名和“见证”数据,可以将客户端的硬件负担减轻一半以上。使用新数据,客户端可以更新钱包余额。

一般来说,闪电网络钱包运营商希望提供用户体验高、使用门槛低的产品,但提高易用性往往会降低安全性,例如个人数据被盗或用户资产丢失。此外,大量的数据承载使得闪电网络难以在移动端实现。neutrino 协议允许用户在移动设备上进行操作,无需运行全节点,对用户扩展有很大帮助。

闪电网络落地概览及待解决问题

闪电网络落地概览

Bitcoin Visuals 提供的闪电网络节点数量、通道数量和 BTC 承载能力等关键指标表明,闪电网络自 2019 年 4 月增长峰值以来一直停滞不前。

目前闪电网络节点数为 5,104。2019 年上半年节点数持续增长,2019 年 1 月至 2019 年 4 月节点数增长 77%。然而,从 2019 年 5 月开始至 2020 年 2 月 10 日,闪电网络节点数仅增长了15%比特币的运行机制,增速明显回落。

闪电网络通道数从 2019 年 4 月上旬开始下降,截至 2020 年 2 月 10 日下降了 20%,目前通道数为 32,030。

BTC承载能力从2019年1月的525.80增加到2019年4月上旬的1,059.50,增长101.5%;截止到2020年2月10日4月初,BTC承载能力已经下降到865.58。

图 9:闪电网络节点(左)、通道(右)和 BTC 容量(左)的变化

自 2019 年 4 月以来,闪电网络节点、通道和 BTC 承载能力下降的主要原因有三个:

从图 9 可以看出,闪电网络节点数量增长最快的时间(2019 年 11 月至 2019 年 3 月)恰好是比特币价格在底部徘徊的时候。在此期间,很多投资者的比特币被困在二级市场无法变现,闪电网络通道成为投资者可以考虑的比特币存管。

然而,自 2019 年 3 月以来,比特币崛起,闪电网络还没有足够的应用场景和商家。许多闪电网络用户选择在二级市场兑现比特币进行套利,而不是继续将其存储在闪电网络中。从图10也可以看出,自2019年4月以来,比特币的交易量明显增加,这意味着比特币在二级市场的流通量有所增加,相对而言,比特币在闪电网络通道中的存储比例有所增加。减少。

图 9:比特币价格(左)和节点数量(右)

图 9:比特币交易量(左)和节点数(右)

运营闪电网络节点的成本=建立节点的成本+运营成本+锁定资金流动性的成本,风险是闪电网络或节点被黑客攻击的可能性。目前,闪电网络已经锁定了价值超过 800 万美元的比特币,损失了大量流动性并面临被黑客攻击的风险,但节点运营商的月利润只有 1-20 美元之间。显然,闪电网络节点目前缺乏可持续的商业模式。

由于闪电网络切换通道费用的设计,用户多开通一个通道将额外收取切换通道费用,且各节点服务高度同质化。主要区别在于连接的其他节点的数量。因此,用户倾向于寻找与其他节点有更多连接的节点,这不仅使交易更容易成功,而且降低了要支付的通道费用。从经济角度来看,中心化的超级节点是用户的理想选择。在用户数量没有大幅增加的情况下,关闭小节点或无用节点,扩大大节点的连接数,是节点运营商节省成本的一种方式。

闪电网络的未解决问题

为了交易成功,闪电网络节点需要一直在线,这与传统支付系统相比是不方便的。闪电网络用户没有资金冷存储选项,用户无法安全存储资金。观测塔虽然可以解决线下诈骗的行为,但也使得整个生态趋于中心化。如果某个重要节点下线,整个网络的流动性很容易大幅下降,甚至导致用户资金冻结数日。

闪电网络实现了高度隐私的洋葱路由。在洋葱路由下,每个节点只知道前后两个节点的地址,无法还原整条链,也无法确定收款人的身份。实际操作中的问题是无法知道哪个节点在线,哪个节点可以连接到目标用户。虽然找到最短路径不是什么难题,已经有很多成熟可靠的算法,但在交易过程中,闪电网络需要计算整条路径的成本。一旦中间节点发送交易失败,发起交易的用户除了重新发送交易外,还必须从起始节点重新计算费率,造成时间浪费,降低用户体验。

为了提高交易成功率,每个节点都需要维护一个所有节点和通道的列表。随着网络规模的增大,表变得越来越大,需要同步更新的消息也越来越多,占用了大量的带宽。即使这样,发送前也不能保证成功,发送过程中可能会关闭通道。可能的解决方案是构建可靠的路由网络,以大型商业节点作为路由节点,构建低成本、高效的路由网络。