Mara van der Laan 是使用 laanwj 账号的开发者,历史记录中也称为 Wladimir van der Laan。她曾维护 Bitcoin Core,这是一款用于独立验证 Bitcoin 链的软件。这份工作意味着对软件负责,而不是有权替整个网络作决定。
laanwj 的公开资料如今显示 Mara van der Laan,并注明她曾担任 Bitcoin Core 维护者。旧记录则使用历史姓名 Wladimir van der Laan。这些记录指向同一位开发者的工作,并非两个人。维护项目不只是提出新功能,还要判断修改是否准备就绪、协调合并,并与审查和测试代码的人合作。了解这部分不太显眼的工作,更有助于理解她的贡献。 [1] [4]
在 2021 年 1 月 21 日的文章中,van der Laan 描述了长期项目常见的问题:太多工作逐渐依赖某个特定的人。Bitcoin Core 当时已有多位维护者,但她仍希望交出更多任务,减少个人参与。这并不是宣布完全停止贡献,而是希望关键步骤不必专门等待她。设想一个已经准备好的版本,只因某位不可缺少的人暂时不在就无法发布。分担责任就是为了避免这种情况。 [2]
2021 年的计划涉及软件分发、版本签名,以及开发者协作的平台。Van der Laan 考虑过用 IPFS 分布式共享文件,以及用 Radicle 在不依赖单一中央服务器的情况下协作开发。目的是避免某个人、网站或服务商不可用时,所有人都被迫停下来。不过,提到一种工具只证明当时有这个设想,不表示已经完成采用。发现弱点、规划解决办法和真正投入使用,是不同阶段。 [2]
在 2022 年 8 月 11 日的开发者会议上,laanwj 宣布不再担任 Bitcoin Core 维护者。具体来说,她将停止把修改合并到共同代码中,也不再准备版本发布,但仍可能偶尔审查代码。检查他人的提案并不一定需要维护者身份。她也表达了对其他人的信心,因为他们已经承担了大量工作。因此,叙述这段历史时要注意日期:过去的头衔不能自动视为现在的职务,离职也不等于再无任何贡献途径。 [3]
Bitcoin Core 将维护者描述为合并已获团队同意、经过审查的修改,并执行最终检查的人。代码仓库存放共同代码及其历史;拥有访问权限,并不能命令节点运营者安装某个版本。节点是用所选软件验证 Bitcoin 规则的计算机。影响重要软件的开发,并不等于能用一条命令改变所有参与者的行为。区分项目维护与网络采用的规则,才能更具体地理解去中心化。 [4]
责任也延伸到下载 Bitcoin Core 的用户。SHA256SUMS 文件列出了版本的校验值;进行比较可以检查下载文件是否匹配所列指纹。但攻击者可能把程序和列表一起替换。因此还要验证数字签名,以及密钥指纹——签名者公钥的简短标识,并与通过可信途径确认的值比较。写在密钥上的姓名不等于身份证明。检查文件、签名,以及密钥属于谁,是相互关联却不同的步骤。 [5]
源代码是供人阅读和修改的程序形式,构建过程则把它变成可执行文件。Bitcoin Core 的可复现构建允许其他人独立生成相同文件,再把校验值与发布版本比较。这减少了对准备下载文件的单台计算机的盲目信任。不过,结果相同并不能证明源代码没有错误。源代码中的缺陷也可能在每份相同构建中被准确复制。因此,核实版本来源与专业代码审查互为补充,不能相互代替。 [5]
最后还有一个问题:这个版本是否仍获得修复?Bitcoin Core 公布版本生命周期,区分仍受支持的版本与已经停止支持的版本。后者通常不再获得安全修复。旧的有效签名仍可正确证明原文件的来源,却不能保证今天还有维护。因此,选择软件时还要检查支持状态和发布说明。项目历史、文件真实性,以及版本目前是否适用,是相关但不同的问题。 [6]
要获得更完整的理解,请将本词条与以下词条结合阅读: Peter Todd, Andrew Poelstra, Bitcoin Core. 反向关联还来自: Peter Todd, Andrew Poelstra.