#deployment #bitcoin #abstraction #help #manage #parameters

bitcoin-deployment

帮助管理部署的抽象

2 个版本

0.1.16-alpha.02023年4月2日
0.1.12-alpha.02023年1月21日

#234 in #help


bitcoin-top 中使用

MIT 许可证

555KB
2K SLoC

bitcoin-deployment 的描述

简短描述

bitcoin-deployment crate 是从 Bitcoin Core 代码库直接翻译到 Rust 的。它提供了有关比特币软分叉和部署参数的信息和实用工具。

详细描述

bitcoin-deployment crate 是 Bitcoin 系统的一个子组件,提供对软分叉和部署参数的支持。它包括几个类型,例如 VBDeploymentInfo,它提供有关特定部署的信息,包括其名称和状态;以及 DeploymentState,它跟踪给定区块高度的当前部署状态。

该 crate 提供的一个重要功能是 deployment_enabled_with_buried_deployment,它检查特定部署是否根据埋藏部署当前已启用。另一个功能是 deployment_enabled_with_deployment_pos,它检查特定部署是否根据当前部署状态当前已启用。

该 crate 提供的其他功能包括 is_minimum_deployment_heightincb_for_buried_deployment,它确定给定的区块高度是否符合埋藏部署的最小阈值;以及 is_minimum_deployment_testdummy_for_deployment_pos,它确定给定的部署位置是否符合部署的最小阈值。

总的来说,bitcoin-deployment crate 是一个有用的工具,适用于与 Bitcoin 系统及其软分叉一起工作的开发者,它提供了管理部署参数和状态的信息和实用工具。

相关数学

此 crate 不需要重大的数学分析。

88> 部署参数是什么?

部署参数是指根据特定区块高度在比特币网络中激活或停用的各种规则和功能。这些参数由 Bitcoin Core 开发团队定义和管理,并通过比特币社区中的共识机制提出和批准参数变更。

部署参数的例子包括

  • BIP9:一个用于部署软分叉的系统,允许矿工和节点在激活之前向其支持的特殊规则更改发出信号。

  • 隔离见证(SegWit):一个在 2017 年 8 月激活的软分叉部署,旨在提高交易不可篡改性并增加区块大小限制。

  • Taproot:一个旨在提高比特币交易隐私性和可扩展性的软分叉部署提案。

部署参数在比特币核心软件中指定,运行该软件的节点将在适当的区块高度强制执行部署参数中指定的规则。《bitcoin-deployment》crate提供了在比特币网络中管理和查询这些部署参数的工具。

89> 因此,部署基本上是选择我们参与哪个软件协议版本。这是正确的吗?

是的,这是正确的。部署是决定激活软件协议中的某个特定功能或变更,它涉及设置一个特定的区块高度,在这个高度变更将被强制执行。一旦达到该区块高度,网络上所有节点都应执行更新协议的新规则。

依赖关系

~95MB
~864K SLoC