比特币交易是比特币网络上价值转移的基本操作。本质上,交易是一段数据,它将一个或多个地址中的一定数量的比特币花费出去,并将其重新分配
比特币交易是比特币网络上价值转移的基本操作。本质上,交易是一段数据,它将一个或多个地址中的一定数量的比特币花费出去,并将其重新分配给一个或多个新的地址。你发送或接收的每一笔链上比特币支付都会被记录为区块链账本中的一笔交易。当Alice向Bob发送1个BTC时,实际上发生的情况是,Alice创建了一笔交易,该交易引用了她之前交易中未花费的输出(她拥有的比特币),并将该值分配给Bob地址控制的新输出。然后,这笔交易会被广播到比特币网络,由节点/矿工验证,一旦被包含在区块中,它就成为区块链的永久组成部分。
或许可以这样理解比特币交易:与其说是将实物比特币从一个账户转移到另一个账户,不如说是更新所有权记录。比特币采用 UTXO(未花费交易输出)模型。这意味着账本是过去交易中尚未花费的输出的集合(这些输出就是 UTXO,本质上是由某人控制的比特币“区块”)。一笔交易会接收一些 UTXO 作为输入,将其标记为已花费,并创建新的 UTXO 作为输出,最终分配给接收者。每个输出都包含一定数量的比特币和一个锁定脚本(通常用地址表示),该脚本定义了谁可以接下来花费它。交易中的每个输入都必须引用之前的输出(通过其交易 ID 和输出索引),并提供有效的签名才能解锁。简单来说:输入是资金来源,输出是资金去向。这种设计确保了比特币的安全性和可追溯性:每一单位比特币都可以通过交易链追溯到它的创建(挖矿区块奖励)。
当您使用比特币wallet发送 BTC 时,wallet软件通常会收集一些 UTXO(例如,您可能有两个 UTXO,价值分别为 0.6 BTC 和 0.5 BTC,而您想要发送 0.7 BTC——wallet会将这些 UTXO 作为输入),使用您的私钥对交易进行签名,并生成输出,包括 0.7 BTC 的收款人地址以及剩余金额(本例中为 0.4 BTC,扣除手续费)的找零。所有这些数据——输入、输出、签名以及其他一些字段——构成了比特币交易格式。
比特币交易的主要特征包括:
比特币交易如何确认?
当你广播一笔比特币交易(你的wallet软件通过将其分发给对等节点来实现)时,它会进入比特币网络的“内存池”(mempool)。此时,交易尚未确认——它正在等待矿工将其打包进区块。完整节点会独立验证交易的真实性:它们会检查所有输入是否对应于已存在且尚未花费的UTXO,签名是否有效(证明发送者有权花费这些输入),以及是否违反了其他规则(例如,输入之和大于等于输出之和,以确保不会凭空产生新币)。如果交易通过验证,它将留在内存池中。如果交易无效(例如,试图花费一个已被花费的UTXO或手续费不足),节点将拒绝该交易,并且该交易不会传播。
矿工随后从内存池中选择交易来形成候选区块。通常,矿工会根据手续费率(每字节数据的聪数)对交易进行优先级排序——手续费较高的交易更有可能被优先选中,因为矿工的区块空间有限,自然希望最大化手续费收益。一旦矿工成功挖出一个区块(通过解决工作量证明难题),该区块(包含一批交易)就会被广播到网络。此时,该区块中的所有交易都被视为已确认(1 次确认)。后续添加的每个区块都会提供一次确认,进一步巩固交易在历史记录中的地位。经过 6 次确认后,由于链重组如此之深的概率极低,交易通常被认为在实际应用中不可逆转。
重要的是,当一笔交易被确认后,其输入(UTXO)即被花费,不再可供使用。其输出则成为新的UTXO,可以作为未来交易的输入。比特币的“所有权”就是这样传承的:通过链式交易,将花费输出的权利从一个所有者传递到另一个所有者。
比特币交易流程(来源)
交易费用和速度
每笔比特币交易都会产生网络费用,通常由发送方支付。费用等于输入总额减去输出总额(即输入和输出的比特币总数之差)。例如,如果您输入了价值 1.0 BTC 的比特币,并将总计 0.998 BTC 的比特币发送到不同的地址,那么剩余的 0.002 BTC 就是支付给矿工的费用。费用并非固定不变,而是由发送方根据当前的网络状况以及他们希望交易确认的速度来设定的。由于每个区块只能包含大约 1-2 MB 的交易数据(平均约 2,000-4,000 笔交易,具体取决于交易大小),比特币的吞吐量受到限制,用户在网络繁忙时段会通过支付更高的费用来竞争带宽。
当网络拥堵,待处理交易过多时,手续费会上升,低手续费交易也可能出现延迟。例如,在高需求时期,平均确认时间可能会显著延长。2023 年 5 月和 2024 年 7 月中旬就出现了典型的例子,当时交易量激增导致交易积压。2024 年 7 月 19 日,比特币的平均确认时间接近 23 小时,超过 11.6 万笔交易滞留在内存池中,因为许多用户都在争相将交易打包进区块。而就在几天前,需求较低时,平均确认时间约为 1 小时——这充分说明了网络状况的波动性。通常,用户会关注手续费市场,并设置一个足够高的手续费,以确保交易能在预期的时间范围内得到确认。现代wallet通常会建议合适的手续费,或者提供“经济”和“高优先级”两种手续费选项。
每笔交易的费用不仅取决于发送的金额,还取决于其大小(以字节为单位)。包含大量输入或复杂脚本(例如多重签名)的交易可能达到数百字节,因此需要更高的绝对费用才能达到与较小交易相同的费率(sat/B)。2017年采用的隔离见证 (SegWit)等技术有效地提高了区块容量并降低了某些数据(签名)的权重,从而在相同的 1 MB 限制下允许更多交易。如今,大多数交易都使用 SegWit 格式,这有助于在相同需求下保持较低的费用。另一项升级 Taproot(于 2021 年 11 月启用)进一步优化了某些类型的交易和智能合约,尽管它对费用压力的影响更为间接(通过在某些用例中启用数据开销更小的高级交易)。
对于需要更快或更具可扩展性的交易的用户,比特币支持二层解决方案。其中最突出的是闪电网络,它允许用户通过链上交易建立支付通道,然后在这些通道之间进行大量的链下即时交易(通道关闭时,最终结算在链上完成)。闪电交易不在区块链上,因此可以实现近乎即时的支付,且手续费极低,使其适用于链上手续费或确认时间会阻碍的小额或快速支付。然而,闪电网络也有其自身的应用场景限制,并且并不能取代链上交易的作用——归根结底,通道的开启和关闭仍然是链上事件。
比特币交易生命周期(分步详解)
简单概括一下典型的比特币交易流程:
比特币闪电网络(来源)
特殊案例和最新进展
菜鸟下载发布此文仅为传递信息,不代表菜鸟下载认同其观点或证实其描述。
版权投诉请发邮件到 cn486com#outlook.com (把#改成@),我们会尽快处理
Copyright © 2019-2020 菜鸟下载(www.cn486.com).All Reserved | 备案号:湘ICP备2023003002号-8
本站资源均收集整理于互联网,其著作权归原作者所有,如有侵犯你的版权,请来信告知,我们将及时下架删除相应资源