走进 Web3

什么是区块链最终性(Finality)?

By Safeheron Team

什么是区块链最终性(Finality)?它是指一笔交易被写入区块后,不再可能被回滚或修改的状态。有的链提供概率性最终性,确认数越多,交易被推翻的可能越小,但理论上不为零;有的链提供确定性最终性,区块一旦被最终确定,除非付出极高代价,否则无法撤销。企业判断一笔充值能否入账,本质上就是判断它是否已经足够接近最终性。

概率性最终性和确定性最终性有什么区别?

比特币这类工作量证明链是概率性最终性。交易所在区块之后每多接一个区块,想要改写它所需的算力就更多,交易被回滚的概率随确认数快速下降,行业里常以 6 个确认作为比特币大额转账的参考。基于 BFT 共识的链,比如使用 CometBFT(原 Tendermint)的 Cosmos 生态链,则是确定性最终性:区块获得足够多验证者的签名后就被最终确定,不会出现常规意义上的重组。

以太坊的最终性是怎么实现的?

以太坊转为权益证明后,以 epoch 为单位设置检查点,每个 epoch 包含 32 个 slot,每个 slot 12 秒。检查点获得三分之二以上质押量的验证者投票后成为已确认(justified),下一个检查点也被确认后,前一个就成为最终确定(finalized),正常情况下大约需要两个 epoch,也就是十几分钟。要回滚已经 finalized 的区块,至少三分之一的质押 ETH 会被罚没,所以实际上几乎不可能发生。但在 finalized 之前,链头附近仍然可能出现短小的重组。

企业应该等到什么程度再入账?

这需要按链和金额来定。有确定性最终性的链,可以在区块被最终确定后入账;以太坊这类链,小额充值可以在若干确认后先入账,大额充值尽量等到 finalized,通过节点接口查询 finalized 区块就能判断;比特币等概率性最终性的链,确认数要随金额和链的算力安全性提高。入账规则定好后,还要配合监控链上交易状态和定期对账,及时发现达到最终性之前被回滚的交易。

总结

区块链最终性决定了一笔交易什么时候真正不可撤销。概率性最终性靠累积确认数,确定性最终性靠验证者投票,以太坊则在约两个 epoch 后达到 finalized。企业应按链的最终性机制和金额设定入账规则。Safeheron 的 MPC 钱包即服务为企业提供 MPC 密钥管理和策略引擎。

想为每条链设定合适的入账确认规则? 联系 Safeheron 销售团队,预约一对一演示

分享

预约演示

正在评估数字资产安全方案?不妨与 Safeheron 专家聊聊,获取专属方案建议

预约演示