原文標題:《The Incomplete History of Bitcoin Development》
原文作者:0xB10C
原文編譯:阿劍,以太坊愛好者
中本聰開始寫比特幣的代碼。這是根據中本聰在 Cryptography 郵件列表中一份寫於 2008 年 11 月 17 日的郵件中得出的:
「我確信自己已經在過去一年半的編程工作中解決了所有這些細節問題。」
見:e-mail (metzdowd.com) 以及 e-mail (nakamotoinstitute.org)
中本聰在 Cryptography 郵件組中公佈了白皮書:
「我一直在開發一個全新的數字現金系統,它是完全點對點的,沒有需要用戶信任的第三方。」
見:e-mail (metzdowd.com) 以及 e-mail (nakamotoinstitute.org),以及白皮書
創世區塊的時間戳是 1 月 9 日。
這個區塊的 coinbase 交易(發行新幣的交易類型)包含了著名的一段話:
「The Times 03/Jan/2009 Chancellor on brink of second bailout for banks(泰晤士報 2009 年 1 月 3 日刊 英國財政大臣正在考慮對銀行的第二輪紓困計劃)」
見:區塊瀏覽器、百科詞條
中本聰在 Cryptography 郵件組 中寫道:
「我發佈了 Bitcoin 軟件的第一個版本。比特幣是一種新的電子現金系統,使用點對點網絡來防止多重支付。它是完全去中心化的,沒有服務端,也沒有中心化的權威。」
見:e-mail
Martti Malmi (sirius-m) 加入了對 Linux 系統的初步支持。其它新功能包括在利用 CPU 的多個核心來挖礦以及初步支持使用代理。
見:bitcointalk.org
Laszlo Hanyecz (Bitcoin pizza guy) 加入了對 macOS 的支持。其他新特性包括 JSON-RPC 接口,以及一個新的 daemon 模式。用戶幫助把軟件的圖形界面翻譯成了德語、荷蘭語和意大利語。
見:bitcointalk.org
修復了各種各樣的 bug。Gavin Andresen 開始作貢獻。
見:bitcointalk.org
中本聰加入了檢查點作爲一項安全措施。檢查點就是鎖定某個高度的區塊哈希值必須是某個,否則就拒絕。中本聰寫道:
「我可能會從現在開始,每發佈一個新版本就增加一個檢查點。如果軟件已經決定了哪個是被普遍接受的區塊鏈,就沒有必要留下一個徒增困擾的、可能在幾個月後發生逆轉的機會。」
見:bitcointalk.org、checkpoints added (diff on GitHub)
這個版本加入了第一個共識層面的變更。比特幣軟件開始跟隨累積工作量最多的鏈。在此之前,是跟隨字面意義上的最長鏈。
見:bitcointalk.org、consensus change (diff on GitHub)
Bitcoin v0.3.xx 的多個版本在此期間放出
中本聰在 v0.3.9(ish) 中放出一個補丁,告訴用戶和礦工要重組帶有溢出錯誤交易的區塊。
見:bitcointalk.org
中本聰開始開發一個警報系統,計劃在 v0.3.11 加入。他寫道:
「我一直在編寫一個警報系統。警報會在網絡中廣播,並在一些版本的軟件中生效。警報消息要用只有我知道的一把私鑰簽名。」
「節點偶爾陷入暫時的停機可能給你驚嚇,但總好過你發現自己的錢被全部吸走的驚嚇。」
「等什麼時候我們很長一段時間都沒有再發現新 bug、透徹的安全檢查也沒有發現任何問題時,這個系統可以縮減。我並不主張我們會永遠使用它。但比特幣還是一個 beta 階段的軟件。」
見:bitcointalk.org
中本聰在 bitcointalk.org 上發表他自己的最後一個帖子。他加入了一些 DoS 限制,並移除了前述的警報系統安全模式。
「在 DoS 保護上還有許多工作要做,但我正在開發一個備份的快速構建包,以備不測;更復雜的主意則以後再說。這個包所構建的軟件是 v0.3.19。」
見:bitcointalk.org
Bitcoin 軟件的活躍開發和 issue 跟蹤轉移到了 GitHub 上。
見:GitHub 記錄的第一個 issue
據稱來自中本聰給 Mike Hearn 的最後一份電郵:
「我已經做別的事情去了。Gavin 和大家會把這件事做好。」
見:pastebin.com 上的電子郵件對話
多位新的貢獻者加入:TheBlueMatt(於 3 月 3 日)、sipa(於 3 月 12 日)、laanwj(於 3 月 15 日)和 gmaxwell(於 6 月 18 日)。
他們的第一次合併請求見:TheBlueMatt、sipa、laanwj、gmaxwell
第一個 BIP「BIP 1:BIP 的目的和指南」出現。
見:BIP 1 on GitHub
v0.4 放出,主要的新功能是錢包加密。
見:更新說明
新特性是新的 qt 圖形界面以及錢包加密功能的一個重大補丁(CVE-2011-4447)
見:更新說明、CVE-2011-4447
多個提議(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
新特性包括地址二維碼,BIP30(針對一種涉及複製 coinbase 交易的攻擊的安全修復)的一個實現,以及修復內存相關的拒絕服務攻擊向量。
見:更新說明
包括了 BIP22、BIP34 和 BIP35 的實現,以及圖形界面上的許多變更,還有聯網的 RPC 代碼。
見:更新說明
Gavin Andresen 宣佈成立 Bitcoin Foundation。
見:bitcointalk.org 上的帖子
本版更新將區塊鏈的存儲從 BerkleyDB 數據庫格式遷移成 LevelIDB 數據庫。「Ultraprune(極致修剪)」功能由 sipa (Pieter Wuille) 實現了,他將 UTXO 集合從區塊鏈數據庫中分離了出來。
見:更新公告
一次意料之外的硬分叉發生,將 v0.8 的節點與更老版本的節點分離了開來。
見:BIP 50: 2013 年 3 月鏈分裂事件的事後報告,bitcoin.org 網絡警報
2013 年 12 月 12 日:軟件品牌重新包裝
Bitcoin-Qt 軟件重新包裝,使用 Bitcoin Core 的新名稱。
見:GitHub 上的 PR
新特性包括:OP_RETURN 操作碼可以在區塊鏈中寫入數據,但也會讓相關的 UTXO 變成不可使用的狀態。此外,autotools 用作構建系統,而 bitcoin-cli(命令行工具)作爲一個 RPC 客戶端引入。
見:更新說明
Alex Morcos 和 Suhas Daftuar 在 2014 年成立了 Chaincode Labs 以打造一個工程師和科學家能夠支持去中心化數字貨幣開發的空間。
Adam Back、Matt Corallo、Greg Maxwell、Pieter Wuille 等人創立了 Blockstream 公司並放出了他們的側鏈白皮書。
見:爲什麼我們要成立 Blockstream?
重要的更新包括:首先同步區塊頭的同步方法,REST 接口 以及用來創建和操控交易的 bitcoin-tx 模塊。
見:更新說明
Joseph Poon 和 Thaddeus Dryja 發佈了 Lightning Network 白皮書第一版草稿
見:閃電網絡白皮書
MIT Media Lab 啓動了 Digital Currency Initiative(DCI)。DCI 是一個研究社區,聚焦密碼貨幣和區塊鏈技術。
見:DCI 啓動公告
這一版軟件將區塊文件修剪當成一個主要的特性。
見:更新說明
Luke Dashjr 起草了 BIP 2,提出了一個定義更清晰的 BIP 流程。這個提議被社區接受
見:BIP 2: BIP 流程修訂
主要更新是引入了 libsecp、sendheader,選擇進入的 RBF(BIP 125)以及交易內存池限制。
見:更新說明
這一版本包含了 BIP 9(版本標識邏輯)以及 OP_CHECKSEQUENCEVERIFY 軟分叉的定義。
見:更新說明
包含了爲 segwit(隔離見證)預備的變更、壓縮區塊功能,交易池基於手續費價格的篩選,HD 錢包的遲滯,以及 CPFP 交易選擇算法。
見:更新說明
這個版本包含了 SegWit 軟分叉。
見:更新說明
網絡層的警報系統代表着比特幣的一個很大的中心化力量,如今走入歷史。
見:公告
本版軟件大幅提高了初次下載區塊的速度。
見:更新說明
SegWit 在比特幣主網上激活。
本版軟件加入了一個更好的手續費預估功能,可在圖形界面追加手續費,還有多錢包功能以及腳本緩存功能。
見:更新說明
這個版本着力於 P2P 網絡的安全性,以預防未來可能的網絡分叉,也修復了一些 bug,爲 0.15.x 系列做了優化和升級。
見:更新說明
這一版主要是爲 Bitcoin Core 錢包增加了 SegWit 支持。
見:更新說明
這一版本爲錢包增加了一些功能。其中一個是支持部分簽名的比特幣交易(PSBT)。
見:更新說明
Jack Dorsey 宣佈 Square Crypto 將招聘 3~4 名工程師和 1 位設計師來全職爲比特幣生態作開源的貢獻。
見:tweet
本版更新包括了大量新功能和一些小變更。
見:更新說明
Pieter Wuille 提出了多個 BIP 以在比特幣中實現 Schnorr 簽名以及 taproot,以提高比特幣智能合約的隱私性、效率和靈活性。
見:郵件組帖子
這個小版本加入了新功能,多個補丁以及性能升級,還更新了翻譯。
見:更新說明
Pieter Wuille 提出了 Miniscript,讓比特幣腳本的編程更友好的語言。
見:郵件組帖子,項目頁面
這個版本加入了新功能,多個補丁以及性能升級,還更新了翻譯。
見:更新說明
這個版本修復了多個 bug,提高了性能。
見:更新說明
這個版本修復了多個 bug,提高了性能。
見:更新說明
這個小版本的更新包括應對不軌對等節點的方式不同,錢包提醒以及 PSBT 支持帶 witness 和不帶 witness 的 UTXO。
見:更新說明
包括 BitMEX、Square Crypto、OKCoin、BTSE、Kraken 在內的公司,以及 Human Rights Fundation、Paradigm 和 Coinbase 交易所,爲比特幣項目和個人貢獻者設立了多個開發獎項。
見:Square Crypto Grants、BitMEX Grants、OKCoin Grants、Coinbase Grants、Polylunar Grant Tracker、Bitcoin Words Grant Tracker
所有的文字和圖片都遵循自由創作和分享協議 4.0,作者保留署名權,允許自由分享和改編,後續使用應維持同樣的使用條件。
原文鏈接
歡迎加入律動 BlockBeats 官方社群:
Telegram 訂閱群:https://t.me/theblockbeats
Telegram 交流群:https://t.me/BlockBeats_App
Twitter 官方帳號:https://twitter.com/BlockBeatsAsia