主页 > imtoken钱包国际版下载 > 比特币简史:从时间轴看其发展

比特币简史:从时间轴看其发展

imtoken钱包国际版下载 2023-11-21 05:13:45

原标题:《干货|不完整的比特币发展史(上):简介》

作者:0xB10C

翻译:阿健

要完全理解比特币发展现状背后的原因,不了解一些历史事件是不可能的。 本文重点介绍中本聪离开项目前后的历史事件、软件发布和错误修复; 增加一章来描述比特币发展的现状。 文章随附的时间表提供了每个事件的更多详细信息。

我不是这里大多数事件的见证人。 所以这条时间线的很大一部分引用自 John Newbery 的一个名为“比特币发展的历史和哲学”的演讲。 这篇文章的标题也很明确。 本文不会也不能涵盖所有重要事件。 历史总是在变化,如果您认为我遗漏了什么,或者想提出一些更改建议,请在开源项目 bitcoin-development-history 中提交问题,这就是我附加更多时间表的方式。

中本聪还在的时候

这个时间线的起点是 2007 年初。中本聪开始开发比特币。 这种点对点的电子现金系统没有任何值得信任的地方。 整个系统完全由用户运行的软件控制。

早期,有贡献者加入了中本聪的工作。 除了软件开发之外,这些新贡献者还为软件添加了对 Linux 和 maxOS 操作系统的支持。 到 2010 年夏天,中本聪对该软件进行了一些关键更改。 例如,“检查点”作为一种安全措施被引入,以防止传播低难度链的攻击。 使用这些检查点的节点将拒绝与特定高度的特定块不匹配的链。 检查点由中本聪单独硬编码,理论上允许中本聪自己决定整个网络遵循哪条链。

加入检查点几天后,中本聪在软件 v0.3.3 版本中发布了第一个共识机制变更。 中本聪敦促用户升级。 在接下来的一个月内,将陆续发布多个小版本更新。 其中之一修复了致命的溢出错误。 该漏洞被利用创建了两个高价值的 UTXO。 中本聪建议矿工重组包含恶意交易的区块。

一周后,中本聪添加了一个警报系统,以提醒节点运营商网络中存在类似的错误和问题。 该警报系统具有安全模式。 这种安全模式一旦被触发,将禁用所有 RPC 方法在整个网络中进行货币处理。 只有中本聪能够使用私钥签名以创建有效的网络警报。 一些用户开始质疑:如果其他人,比如政府,掌握了这个私钥,网络会发生什么?

此时,中本聪对比特币网络的权力太大了。 但主要担心的不是中本聪会变坏破坏整个网络,而是去中心化网络不应该出现单点故障。

2010 年 10 月,中本聪在 Bitcointalk 论坛上发布了他的最后一篇帖子,宣布取消这种安全模式。 在他最后一封电子邮件中,中本聪写道:“我要去其他地方了。有 Gavin 和大家,这个项目将得到很好的维护。” 离开比特币世界是他最大的贡献之一。

中本聪离开后

几乎同时,整个开发流程从SVN转移到了GitHub上。 BlueMatt、sipa、laanwj 和 gmaxwell 加入了该项目。 2011年年中,BIP(比特币升级提案)进程诞生。 在 2011 年最后一个季度和 2012 年第一个月,社区讨论了几项允许交易接收者指定支出条件的提案。 因此,P2SH 交易被引入比特币。

2012 年底,比特币基金会宣布成立。 比特币基金会以 Linux 基金会为蓝本。 在公告下方,有人留言表示担心开发会变得中心化。

比特币 v0.8.0 于 2013 年春季发布。两周后,网络中升级和未升级节点之间爆发了意想不到的硬分叉。 硬分叉很快得到解决,矿工们将他们的挖矿能力转移到一条同时适用于升级和未升级节点的链上。

2013 年底,比特币软件更名为 Bitcoin Core。 在接下来的几年里,包括 Chaincode 和 Blockstream 在内的公司成立了。 后来,麻省理工学院数字货币计划加入了 Chaincode 和 Blockstream,为从事比特币工作的开发人员和研究人员提供报酬。 2015 年 2 月,Joseph Poon 和 Tadgw Dryja 发布了闪电网络白皮书初稿。

第二年,Luke Dashjr通过BIP 2修改了BIP流程; Bitcoin Core 发布了 v0.13.0 并添加了 SegWit 作为软分叉。 2016 年 11 月,警报系统被完全弃用。 到 2017 年 8 月,SegWit 在比特币网络上被激活。 2019 年,另一家公司 Square Crypto 开始资助比特币开发。 2019 年 5 月,Pieter Wuille 提出了 BIP Taproot。

比特币发展现状

在过去的几年中,比特币的开发文化变得越来越去中心化、有目的性和严谨性。 比特币核心代码库现在有 6 名维护人员,分布在三个国家。 只有他们可以合并贡献者提出的代码更改。 但是,更改的内容在内容合并之前还要经过审核过程,审核过程也变得更加严格。

例如,在比特币的早期,有一个与 P2SH 竞争的提案叫做“OP_EVAL”。 一个实现 OP_EVAL 的拉取请求(“合并请求”)在 2011 年底被合并到代码库中。即使是对共识进行重大更改的代码也只有一个审阅者。 Russell O'Connor 提出了一个批评部分实施的问题,并认为应该对如此大的、对共识至关重要的变化进行更多的审查和测试。

这一事件引发了一场关于如何通过更多测试和审计获得更高质量代码的持续讨论。 今天,每个合并请求都由多个开发人员审查。 如果一个变更触及到安全甚至共识的关键部分,那么审核过程就需要更多的审核人员审核,需要大量的测试,通常需要几个月的时间。 活跃的比特币核心贡献者 John Newbery 告诉我,“只有一个审阅者才能批准合并影响共识的代码的日子已经一去不复返了”。

人们在自动化测试上也下了不少功夫,比如用C++写的单元测试,用Python写的功能测试。 每个重要的更改都需要更新现有测试或向框架添加新测试。 除了单元测试和功能测试,还需要对Bitcoin Core做模糊测试,建立基准测试框架来衡量代码的性能。 例如,bitcoinperf.com 网络提供了 Grafana 和 codespeed 接口来可视化定期基准测试结果。

经过多年努力,比特币核心软件已经形成了清晰的发布流程。 Bitcoin Core 的主要版本每 6 个月发布一次。 发布计划包括翻译过程、功能冻结过程,通常还有多个发布候选者。 最近 Cory Fields 和 Carl Dong 还致力于提高比特币核心构建过程的安全性,使用确定性和可启动的构建包。 这个新的构建系统可能无法支持今年秋天即将发布的 Bitcoin Core v0.19.0,但可以在未来提供更好的构建过程安全性。

比特币价值比特币最新_比特币出来的时间_比特币分叉对比特币的影响

综上所述

在过去的十年中,比特币的发展文化已经从围绕中本聪的高度中心化转变为围绕几千名 GitHub 贡献者的去中心化(2018 年数据)。 显然,高标准的代码审查、代码质量和安全性都是必要的。 遵循并不断改进这些标准。

我相信了解这些历史事件对于充分理解比特币发展现状背后的哲学至关重要。 所以我做了一个时间线,把更多的事件串在一起。

进一步研究需要,推荐阅读Alex B.写的《比特币开发之道(Bitcoin Development Way)》,Eric Lombrozo和Jameson Lopp His写的《比特币核心合并过程(Bitcoin Core Code Merge Process)》代表作《谁控制了比特币核心? (谁控制比特币核心?)”。

谢谢你

感谢 John Newbery 帮我整理和审阅这篇文章。 他在“比特币发展的历史与哲学”的演讲中做了大量的历史研究,这是本文的基础。 另外,我非常感谢 Chaincode Labs,他们邀请我参加他们的 2019 Summer Residency,在那里我遇到了很多有趣的人,学到了很多东西,也是在那里我开始整理时间线并写这篇文章。

时间线

2007 年初:中本聪开始开发比特币

中本聪开始为比特币编写代码。 这是根据中本聪在 2008 年 11 月 17 日在密码学邮件列表上的一封电子邮件中所说的:“我确信我在过去一年半的编程工作中已经弄清楚了所有这些细节。” 请参阅:电子邮件 (metzdowd.com) 和电子邮件 (nakamotoinstitute.org)

2008 年 11 月 1 日:比特币白皮书发布

中本聪在 Cryptography 邮件群中公布了白皮书:“我一直在开发一个全新的数字现金系统,它是完全点对点的,没有第三方需要用户信任。” 请参阅:电子邮件 (metzdowd.com) 和电子邮件 (nakamotoinstitute.org),以及白皮书

2009 年 1 月 3 日至 9 日:比特币的创世块被开采

创世块的时间戳为 1 月 9 日。该块的 coinbase 交易(发行新硬币的交易类型)包含著名的段落:“The Times 03/Jan/2009 Chancellor on brink of second bailout for banks Consider the second round of银行救助计划)”参见:区块浏览器,百科词条

2009 年 1 月 9 日:Bitcoin v0.1 软件发布

中本聪在 Cryptography 邮件组中写道:“我发布了第一个版本的比特币软件。比特币是一种新的电子现金系统,它使用点对点网络来防止多次支付。它是完全去中心化的。没有服务器而且没有中央集权。” 请参阅:电子邮件

2009 年 12 月 16 日:比特币 v0.2 软件发布

Martti Malmi (sirius-m) 添加了对 Linux 系统的初步支持。 其他新功能包括使用多个 CPU 内核进行挖掘以及对使用代理的初步支持。 请参阅:bitcointalk.org

2010 年 7 月 6 日:发布比特币 v0.3 软件

Laszlo Hanyecz(比特币披萨专家)添加了对 macOS 的支持。 其他新功能包括 JSON-RPC 接口和新的守护进程模式。 用户协助将软件的图形界面翻译成德语、荷兰语和意大利语。 请参阅:bitcointalk.org

2010 年 7 月 15 日:比特币 v0.3.1 软件(补丁)发布

修复了各种错误。 Gavin Andresen 开始贡献。 请参阅:bitcointalk.org

2010 年 7 月 17 日:Bitcoin v0.3.2 软件发布

中本聪添加了检查点作为安全措施。 检查点是锁定某个高度的区块哈希值必须是某个值,否则会被拒绝。 Satoshi Nakamoto 写道:“从现在开始,我可能会在每个新版本中添加一个检查点。如果软件已经确定哪个是公认的区块链,则无需留下冗余链。”,逆转的机会可能会发生几个月后。” 请参阅:bitcointalk.org,添加了检查点(GitHub 上的差异)

比特币分叉对比特币的影响_比特币出来的时间_比特币价值比特币最新

2010 年 7 月 25 日:Bitcoin v0.3.3 软件发布

此版本包含第一个共识级别的更改。 比特币软件开始跟随工作量最大的链。 在此之前,按照字面上最长的链。 请参阅:bitcointalk.org比特币出来的时间,共识变更(GitHub 上的差异)

整个2010年夏天

在此期间发布了多个版本的比特币 v0.3.xx

2010 年 8 月 15 日:修复了致命的溢出错误

中本聪在 v0.3.9(ish) 中发布了一个补丁,告诉用户和矿工重新组织具有溢出错误交易的区块。 请参阅:bitcointalk.org

2010 年 8 月 22 日:引入警报系统

中本聪开始开发警报系统比特币出来的时间,计划在 v0.3.11 中添加。 “我一直在编写一个警报系统。警报通过网络广播并在某些版本的软件中强制执行。警报消息使用只有我知道的私钥签名,”他写道。 停机时间可能会吓到你,但总比发现你的钱被吸走时的震惊要好。”系统可以按比例缩小。 我并不是主张我们会永远使用它。 但比特币仍然是测试版软件。”参见:bitcointalk.org

2010 年 12 月 12 日:中本聪的最后一篇文章

中本聪在 bitcointalk.org 上的最后一篇文章。 他添加了一些 DoS 限制并删除了上述警报系统安全模式。 “在 DoS 保护方面还有很多工作要做,但我正在开发一个备份快速构建包以防万一;更复杂的想法留待以后使用。这个包构建了 v0.3.19。” 请参阅:bitcointalk.org

2010 年 12 月 19 日:开发移至 GitHub

比特币软件的积极开发和问题跟踪已移至 GitHub。 请参阅:GitHub 记录的第一个问题

2011 年 4 月 23 日:中本聪最后的声音

据称来自 Satoshi 给 Mike Hearn 的最后一封电子邮件:“我要去做别的事情了。 加文和每个人都会做对的。” 请参阅:pastebin.com 上的电子邮件对话

2011 年 3 月至 6 月:新贡献者加入

几个新的贡献者加入了:TheBlueMatt(3 月 3 日)、sipa(3 月 12 日)、laanwj(3 月 15 日)和 gmaxwell(6 月 18 日)。 查看他们的第一个合并请求:TheBlueMatt、sipa、laanwj、gmaxwell

2011 年 8 月 19 日:第一个 BIP

出现第一个 BIP“BIP 1:BIP 的目的和指南”。 请参阅:GitHub 上的 BIP 1

2011 年 9 月 23 日:比特币 v0.4 发布

v0.4发布,主要新特性是钱包加密。详见:更新说明

2011 年 11 月 21 日:Bitcoin-QT v0.5 发布

新功能是新的qt图形界面和钱包加密功能的主要补丁(CVE-2011-4447)参见:更新说明,CVE-2011-4447

2011年11月~2012年4月:P2SH等提案工作

比特币价值比特币最新_比特币出来的时间_比特币分叉对比特币的影响

一些提案(OP_EVAL、P2SH、OP_CHV)旨在允许交易的接收者指定一个脚本来花费资金。 P2SH 在 Bitcoin-Qt v0.5.4 上实现。 另外两个被丢弃了。 请参阅:BIP 12:OP_EVAL、OP_EVAL 合并请求、OP_EVAL 递归问题、BIP 16:P2SH、BIP 17:OP_CHECKHASHVERIFY

2012 年 3 月 30 日:Bitcoin-QT v0.6 发布

新功能包括地址的二维码、BIP30 的实施(针对涉及复制 coinbase 交易的攻击的安全修复程序)以及与内存相关的拒绝服务攻击向量的修复程序。请参阅:更新说明

2012 年 9 月 17 日:Bitcoin-QT v0.7 发布

包括 BIP22、BIP34 和 BIP35 的实现,以及对图形界面和网络 RPC 代码的许多更改。请参阅:更新说明

2012 年 9 月 27 日:比特币基金会宣布成立

Gavin Andresen 宣布成立比特币基金会。参见:bitcointalk.org 上的帖子

2013 年 2 月 19 日:Bitcoin-QT v0.8 发布

本次更新将区块链的存储从 BerkleyDB 数据库格式迁移到 LevelIDB 数据库。 “Ultraprune”功能由sipa(Pieter Wuille)实现,将UTXO集从区块链数据库中分离出来。参见:更新公告

2013 年 3 月 11 日:意外的硬分叉

发生意外的硬分叉,将 v0.8 节点与旧版本分开。请参阅:BIP 50:2013 年 3 月链分裂事件的事后报告,bitcoin.org Network Alert

2013 年 12 月 12 日:软件品牌重塑

Bitcoin-Qt 软件已被重新打包为新名称 Bitcoin Core。 请参阅:GitHub 上的公关

2014 年 3 月 19 日:Bitcoin Core v0.9 发布

新功能包括: OP_RETURN 操作码可以在区块链中写入数据,但也会使关联的 UTXO 不可用。 此外,autotools 用作构建系统,而 bitcoin-cli(命令行工具)作为 RPC 客户端引入。请参阅:更新说明

2014 年某个时间:Chaincode Labs 成立

Alex Morcos 和 Suhas Daftuar 于 2014 年创立了 Chaincode Labs,旨在创造一个工程师和科学家可以支持去中心化数字货币开发的空间。

2014 年 10 月 23 日:Blockstream 推出

Adam Back、Matt Corallo、Greg Maxwell、Pieter Wuille 等人创立了 Blockstream 公司并发布了他们的侧链白皮书。 请参阅:我们为什么要启动 Blockstream?

2015 年 2 月 16 日:Bitcoin Core v0.10.0 发布

重要更新包括:首先同步块头的同步方法、REST 接口以及用于创建和操作交易的 bitcoin-tx 模块。参见:更新说明

2015 年 2 月:闪电网络白皮书发布

Joseph Poon 和 Thaddeus Dryja 发布闪电网络白皮书初稿见:闪电网络白皮书

比特币价值比特币最新_比特币分叉对比特币的影响_比特币出来的时间

2015 年 4 月 15 日:MIT DCI 启动

麻省理工学院媒体实验室启动了数字货币计划 (DCI)。 DCI 是一个专注于加密货币和区块链技术的研究社区。参见:DCI 发布公告

2015 年 7 月 12 日:Bitcoin Core v0.11.0 发布

该版本的软件包括块文件修剪作为主要功能。请参阅:更新说明

2016 年 2 月 3 日:BIP 2

Luke Dashjr 起草了 BIP 2,提出了一个定义更明确的 BIP 流程。该提案被社区接受,参见:BIP 2: BIP Process Revision

2016 年 2 月 23 日:Bitcoin Core v0.12.0 发布

主要更新包括引入 libsecp、sendheader、选择加入 RBF (BIP 125) 和交易内存池限制。请参阅:更新说明

2016 年 4 月 15 日:Bitcoin Core v0.12.1 发布

该版本包括 BIP 9(版本识别逻辑)和 OP_CHECKSEQUENCEVERIFY 软分叉的定义。参见:更新说明

2016 年 8 月 23 日:Bitcoin Core v0.13.0 发布

包含对 segwit(隔离见证)、压缩块功能、基于费用价格的交易池过滤、HD 钱包滞后和 CPFP 交易选择算法的更改。参见:更新说明

2016 年 10 月 27 日:Bitcoin Core v0.13.1 发布

此版本包括 SegWit 软分叉。请参阅:更新说明

2016 年 11 月 1 日:警报系统停用

网络层的警报系统代表了比特币强大的中心化力量,现在已经成为过去。参见:公告

2017 年 3 月 8 日:Bitcoin Core v0.14 发布

该版本软件大大提高了初始块下载速度。参见:更新说明

2017 年 8 月 24 日:SegWit 激活

SegWit 在比特币主网上激活。

2017 年 9 月 14 日:发布 v0.15

该版本软件增加了更好的服务费预估功能,可以在图形界面添加服务费,还有多钱包功能和脚本缓存功能。详见:更新说明

2017 年 11 月 11 日:发布 v0.15.1

比特币出来的时间_比特币分叉对比特币的影响_比特币价值比特币最新

该版本着重于P2P网络的安全性,以防止未来可能出现的网络分叉。 还修复了一些bug并对0.15.x系列进行了优化升级。详见:更新说明

2018 年 2 月 26 日:Bitcoin Core v0.16 发布

该版本主要为Bitcoin Core钱包增加了SegWit支持。详见:更新说明

2018 年 10 月 3 日:Bitcoin Core v0.17 发布

此版本为钱包添加了一些功能。 其中之一是支持部分签名的比特币交易 (PSBT)。请参阅:更新说明

2019 年 3 月 20 日:Square Crypto 推出

Jack Dorsey 宣布,Square Crypto 将招募 3~4 名工程师和 1 名设计师,为比特币生态系统做出全职开源贡献。 参见:推文

2019 年 5 月 2 日:Bitcoin Core v0.18 发布

本次版本更新包括大量新功能和一些小改动。参见:更新说明

2019 年 5 月 6 日:Taproot 提议

Pieter Wuille 提出了多个 BIP 以在比特币中实施 Schnorr 签名以及主根以提高比特币智能合约的隐私性、效率和灵活性。参见:邮件列表帖子

2019 年 8 月 9 日:Bitcoin Core v0.18.1 发布

此次要版本包括新功能、多个补丁和性能升级以及更新的翻译。请参阅:更新说明

2019 年 8 月 19 日:推出 Miniscript

Pieter Wuille 提出了 Miniscript,一种对比特币脚本编程更友好的语言。参见:邮件列表帖子,项目页面

2019 年 11 月 24 日:Bitcoin Core v0.19.0.1 发布

该版本增加了新功能,几个补丁和性能升级,以及更新的翻译。参见:更新说明

2020 年 3 月 9 日:Bitcoin Core v0.19.1 发布

此版本修复了几个错误并提高了性能。请参阅:更新说明

2020 年 6 月 3 日:Bitcoin Core v0.20.0 发布

此版本修复了几个错误并提高了性能。请参阅:更新说明

2020 年 8 月 1 日:Bitcoin Core v0.20.1 发布

此次要版本中的更新包括处理流氓节点的不同方式、钱包提醒以及对有和没有见证的 UTXO 的 PSBT 支持。请参阅:更新说明

2020 年:比特币项目和个人贡献者发展奖

包括 BitMEX、Square Crypto、OKCoin、BTSE、Kraken 以及人权基金会、Paradigm 和 Coinbase 交易所在内的公司已经为比特币项目和个人贡献者设立了多项发展奖。 参见:Square Crypto Grants, BitMEX Grants, OKCoin Grants, Coinbase Grants, Polylunar Grant Tracker, Bitcoin Words Grant Tracker 所有文字和图片遵循自由创作和共享协议4.0,作者保留署名权,允许自由分享和改编后续使用应保持相同的使用条件。