比特幣價格 比特幣價格
Ctrl+D 比特幣價格
ads
首頁 > 比特幣 > Info

比特幣:誰在控制Bitcoin Core?_Wealthy Habits

Author:

Time:1900/1/1 0:00:00

比特幣核心的歷史

比特幣核心是比特幣協議開發的焦點,而非命令與控制點。倘若因為什么原因,這個焦點停止存在了,就會有一個新的焦點冒出來。比特幣核心依賴的基礎——技術交流平臺,是因為便利而存在的,不是因為定義/項目的完整性而存在的。現實中,比特幣的開發焦點已經更換了平臺,甚至更換了名稱!2009年初,比特幣項目的源代碼只是一個rar壓縮包,存在SourceForge服務器上。早期的開發者會用電郵跟中本聰交換代碼補丁。2009年10月30日,Sirius在SourceForge網站上創建了一個subversion代碼倉庫。2011年,比特幣項目從SourceForge遷移到GitHub。2014年,比特幣項目更名“BitcoinCore”。不相信任何人

GitHub的組織層面上,確實有不多幾個“維護人員”的賬戶,能夠將代碼合并到“主分支”;然而這種地位不是權力的象征,只是類似“看守”的身份。試想,若是不論張三李四都能把代碼合并到主分支,很快就會變成“廚子多了做壞了湯”的結果。比特幣核心遵守“最小特權原則”,也就是任何人只要濫用權力,就會被輕易推翻。

從對抗角度來看,GitHub是不能被信任的。GitHub任何員工都可以運用管理特權,將代碼注入代碼倉庫,無需經過維護人員的同意。但是,GitHub的攻擊者卻幾乎不可能損害比特幣核心維護人員的PGP密鑰BitcoinCore并沒有將代碼的完整性建立在GitHub賬戶上,他們有一個連續的集成系統,執行那些受信任的PGP密鑰的校驗;這些密鑰必須簽署每一份“合并提交”。這些密鑰的確跟身份已知的某些人相關,但依然不能擔保情況永遠會這樣而不變——某個密鑰可能會受到損害,我們也不會知道密鑰受到損害,除非原始的密鑰主人通知了其他的維護人員。如此一來,“提交密鑰”也就不提供完美的安全保護,只是讓攻擊者插入“任意代碼”的難度提高了。通向王國的密鑰

我寫這篇文章的時候,受信任的PGP指紋如下:71A3B16735405025D447E8F274810B012346C9A6133EAC179436F14A5CF1B794860FEB804E66932032EE5C4C3FA15CCADB46ABE529D4BCB6416F53ECB8B3F1C0E58C15DB6A81D30C3648A882F4316B9BCA03882CB1FC067B5D3ACFE4D300116E1C875A3D這些指紋注冊到:WladimirJ.vanderLaan<laanwj@protonmail.com>PieterWuille<pieter.wuille@gmail.com>JonasSchnelli<dev@jonasschnelli.ch>MarcoFalke<marco.falke@tum.de>SamuelDobson<dobsonsa68@gmail.com>這是否意味著我們就相信這五個人呢?不太對。密鑰不是身份的證明;這些密鑰有可能落到別人手中。我要是運行了verify-commits的python腳本,我有什么保證呢?python3contrib/verify-commits/verify-commits.py使用來自bitcoin/contrib/verify-commits的verify-commits數據所有Tree-SHA512s都匹配到309bf16257b2395ce502017be627186b749ee749有一條從“HEAD”到82bcf405f6db1d55b684a1f63a4aabad376cdad7的有效路徑,其中所有提交都已簽名!verify-commits腳本是一種完整性校驗,隨便什么開發者都能將其在自家機器上運行。執行的時候,腳本會校驗每一份合并提交的PGP簽名。從2015年12月第一次提交82bcf405開始,到我寫這篇文章為止,共有3,400多份合并提交。如果腳本成功完成,它告訴我們自那時以來已經更改的每一行代碼都已通過比特幣核心開發過程并由具有維護者密鑰的人“簽字”。當然,這還不足以百分百確認不會有人插入惡意代碼;但這一措施確實能減少大規模攻擊的可能性。那么,維護人員又是什么人?他們怎么獲得這個身份?我們稍后會深入研究。 多層安全系統

美FDIC向加密公司Unbanked發出停止令:金色財經報道,美國聯邦存款保險公司 (FDIC)周五向總部位于佐治亞州的Unbanked, Inc. 發出了停止令,理由是該加密公司就其保險狀況提出了虛假和誤導性陳述。FDIC指控提供加密借記卡服務的Unbanked錯誤地暗示加密貨幣等金融產品由FDIC承保,該機構已明確表示要追查那些進行虛假聲明的公司。

此前6月,Unbanked宣布將結束其業務,并建議會員盡快提款。該公司在公開信中表示,在 500 萬美元的投資未能兌現后,他們決定停止運營。所有 Unbanked 客戶以及通過白標計劃的客戶應盡快開始提取所有資金(加密貨幣和美元)。[2023/8/5 16:20:20]

比特幣核心代碼的完整性不能僅僅依賴于少數加密密鑰,這就是為什么存在大量其他檢查的原因。這里有許多安全層來提供深度防御:Pull請求安全1、不論什么人都有權提議改動節點,以改進軟件。其方法是開啟一個針對bitcoin/bitcoin上主分支的“拉取請求”。2、開發者們會評估各個拉取請求,確保這些請求不是有害的。不論是誰,都有權評估各個拉取請求,并提供反饋。只要是為了比特幣核心作出貢獻,就沒有“看門人”或者“入學考試”篩選合格的貢獻者。如果某個拉取請求發展到這樣一種地步,并沒有合理的反對意見反對它合并到主分支,那就會有一個維護人員執行合并。3、Core維護者會設定預push鉤,以確保不會有人把未經簽字確認的“提交”“推入”代碼倉庫。4、各項“合并提交”,會通過OpenTimestamps協議,安全地打上時間戳。打戳行為是可選的,不是必要的。5、“Travis持續集成系統”將定期運行這個腳本,以檢查gittree的完整性,而且驗證所有主分支上的“提交”都已經由某一個受信任的PGP密鑰簽了名。6、不論是誰,只要想運行,就可以運行這個腳本,以驗證從2015年12月開始的一切“合并提交”上的PGP簽名。我在寫這篇文章的時候,就運行了這個腳本,在我的筆電上25分鐘就運行完了。發布安全1、“Gitian確定性構建系統”是一種編譯解決方案。這系統由多個開發者獨立運行,目標是創建相同的二進制文件。假設某人成功創建了一個不符合其他開發者的構建系統,就表示引入了“非確定性”,于是“最終發行”就不會發生。如果存在非確定性,開發者就會追蹤哪里出了問題,修復問題,再構建另外一種發行候選版本。一旦“確定性構建”成功,開發者就會對生成的二進制文件進行簽名,確保這些二進制文件和工具鏈都沒有受到損害,而且使用了相同的源。這個辦法避免了讓構建和分配流程變成一種“單點故障”。任何具有技術的人都可以運行自己的構建系統。操作說明在這里:https://github.com/bitcoin-core/docs/blob/master/gitian-building.md2、一旦Gitian構建成功完成并由構建者簽名,就會有一個BitcoinCore的維護者,用每個構建的SHA256哈希值,給一條信息進行PGP簽名。如果你決定運行預先構建的二進制文件,就可以先下載,然后驗證它的哈希值;然后使用哈希值驗證簽名版本消息的真實性。這里是操作說明:https://bitcoincore.org/en/download/3、以上這些全都是開源的,可審計的;任何人只要有技術,有意愿,都可以執行。4、最后,即使在進行了以上一切的質量與完整性檢查之后,提交到BitcoinCore并最后成功發布的代碼依然不會被任何中心化的組織部署到節點網絡上。相反,每個節點操作員必須有意識地決定更新他們運行的代碼。BitcoinCore故意沒有設置自動更新功能,讓用戶可自行決定需要運行什么版本的代碼,否則這個系統就可能被操縱。盡管比特幣核心有了一切技術上的安全手段,然而這些手段沒有一種是完美的,也全都有理論上被損害的可能性。比特幣核心代碼完整性的最后一道防線,與任何其他開源項目的最后一道防線是一樣的——時刻保持警惕!關注比特幣核心代碼的眼睛越多,惡意代碼或者有缺陷代碼,就越難以進入發布階段。代碼覆蓋率

貝萊德:債務上限和銀行危機都不會阻止美聯儲本周加息:金色財經報道,貝萊德全球固定收益部門首席投資官里克·里德(Rick Rieder)認為,美國債務上限期限出人意料地提前以及最近的地區銀行危機可能都不會阻止美聯儲在周三的政策會議上加息。里德表示,美聯儲可能會將基準利率上調25個基點,至5-5.25%的目標區間。“然后,我認為我們將在較長一段時間內暫停加息,讓之前的加息滲透到整個體系中,”他說。美聯儲可能會“發出信號,表明我們正處于或非常接近”其加息周期的終點。“美聯儲表現出一點耐心是正確的,”里德說,盡管他預計美聯儲將繼續“在通脹問題上措辭強硬”。[2023/5/3 14:39:30]

BitcoinCore有很多測試代碼,其中包括一個完整性測試組件,可以用來測試所有PR;還有一種擴展測試套件,可以每晚在主分支上運行。你可以自行檢查各種測試的代碼覆蓋率,方法是:克隆一個比特幣核心GitHub代碼倉庫;安裝所需的從源代碼構建的依賴項;運行這些命令;在./total_coverage/index.html查看報告。除此以外,你還可以查看比特幣軟件維護者MarcoFalke主持的的覆蓋率報告,地址是https://drahtbot.github.io/reports/coverage/bitcoin/bitcoin/master/total.coverage/index.html

代碼覆蓋率水平越高,意味著代碼按照預期執行功能的確定性也越高。若想在關鍵的軟件上達成共識,測試就是一件大事。對于某些特別復雜的改動,開發者有時候要進行痛苦的“變異測試”,也就是故意破壞密碼,看看各個測試有沒有按照預期而失敗。比特幣開發者GregMaxwell比特幣核心0.15發布的時候,專門討論過這種變異測試:“測試是軟件的測試,但怎么對測試進行測試?就是用軟件。為了對測試進行測試,必須破壞軟件。”自由市場競爭

比特幣期貨平臺BitMEX寫過一篇名為《與比特幣核心競爭》的文章,論述各種“比特幣部署”的生態系統,這篇文章非常棒。當前,比特幣的“兼容部署”有十幾種,甚至還有更多的“競爭網絡”部署。這就是“開源”的自由:只要哪個人對比特幣核心項目的做法有所不滿,就可以建立自己的項目。他們可以從零開始,也可以選擇去分叉Core軟件。在我寫作本文時,96%的比特幣節點是運行BitcoinCore軟件的。為什么會是這樣?倘若某人切換到另一種軟件部署只需要極小的努力,那么比特幣核心為什么又會在節點網絡中處于類似壟斷的狀態?畢竟,很多其他部署,所提供的RPCAPI,都與比特幣核心兼容,或者起碼也跟比特幣核心高度相似。

Euler黑客在鏈上收到某用戶請求后向其發送了100枚ETH:3月16日消息,Web3知識圖譜協議0xscope發推表示,有人(0x2A開頭的地址)向Euler黑客發送信息稱,其全部積蓄(78枚ETH)存在了Euler Finance中,請攻擊者能返還90%或80%,然后攻擊者向其發送了100枚ETH。目前已有其他地址效仿0x2A地址的行為。

今日早些時候消息,Euler Finance攻擊者轉移約446萬美元資金。[2023/3/16 13:07:51]

我相信,這是因為BitcoinCore成為了開發的焦點。Core擁有數量級更多的開發人才和開發時間的支持,這意味著BitcoinCore項目的代碼往往是性能最高、最安全和最穩健的。在有限的資金下,節點運營商只想運行最好的軟件,不想運行質量第二的軟件。此外,考慮到BitcoinCore是一種共識軟件,比特幣協議不具有并且也不能具有正式的規范,所以使用焦點實現會更為安全。因為假設你運行的是其他版本的軟件,對于網絡的大多數節點而言,你的節點可能就是一個bug。從這個意義上來講,開發焦點的代碼就成了現實中最接近規范的東西了。誰是比特幣核心開發者?

那些不熟悉比特幣核心開發過程的人,可能會從外部觀察這個項目,認為“Core”是一個大一統的實體。大錯特錯!核心貢獻者之間常有分歧,而且就算那些最多產的貢獻者,也寫了很多代碼,從沒有合并入核心項目。你看看“貢獻者”的指導方針,就可能會注意到,這方針的原則寬松得很,最多也只能說成一種“大略的共識”。維護人員會考慮,某個補丁是否符合項目的一般原則,是否符合“納入”的最低標準。維護人員會判斷各位貢獻者的一般共識。維護人員都是誰呢?他們是一些特殊的貢獻者。他們已經通過較長時間的高質量的貢獻,在項目內部構建了足夠的社會資本。現有的維護人員團體,只要認為某個貢獻者已經在某特定領域展示了能力、可靠性、動機,有資格當上維護人員,就會把“提交的訪問權”授予這位貢獻者的GitHub賬戶。“維護人員領導”的作用,是監管項目的一切方面,并負責協調各次代碼發布。這幾年來,“維護人員領導”的頭銜自愿更替了幾次:中本聰:2009/1/3-2011/2/23GavinAndresen:2011/2/23-2014/4/7WladimirvanderLaan:2014/4/7-現在比特幣核心維護人員的職責,經常被人比作“看門人”,因為維護人員實際上并沒有權力作出決定,反對貢獻者或者用戶的集體共識。不過,這一職責的任務卻可能相當繁重,因為大生態系統會特別注意這一職責。比如,2017年,GregoryMaxwell就因為個人原因而辭去了維護人員的職務,很可能是因為公開辯論升級,面臨的輿論壓力太大了。Wladimir寫了一篇有深意的帖子,說的就是擔任維護人員壓力多么大,還說了為什么應該取消Gavin的提交權限,這帖子讓很多人很不高興。還有一個類似的情況:GitHub組織曾經開除了JeffGarzik,Jeff和其他人都非常惱火。但是,Jeff的錯誤在于,他整整兩年沒有為核心作出貢獻了。組織再繼續讓Jeff的GitHub賬戶擁有代碼倉庫的寫入權限,對項目也沒有好處了,反而憑空增加了安全風險,也違反了“最小特權原則”。這原則,Wladimir在帖子里專門提到了。還有其他人可能會觀察Core,認為Core是一個技術官僚群體,或是象牙塔,很難讓新的參與者加入進來。然而,只要你跟那些貢獻者真正交流過,就會發現不是這樣。這幾年確實只有少數幾個人擁有提交權限,但卻有數百名開發者已經作出了貢獻。我自己也作了幾個小貢獻,雖然我不自認為是“核心開發者”,從技術上卻算是一名核心開發者。誰也不能不讓你作出貢獻!

Insignia Ventures Partners完成5.16億美元募資,將著眼于Web3行業:8月1日消息,總部位于新加坡的風險投資公司Insignia Ventures Partners宣布已完成5.16億美元募資,將著眼于Web3行業,同時專注于東南亞市場。Insignia Ventures Partners創始管理合伙人YinglanTan表示,會在下一個10年的朝陽行業里進行更積極的投資。[2022/8/1 2:50:37]

最難以讓人們理解的,似乎是這樣一個問題:比特幣開發的關注點,并不僅僅是由比特幣核心GitHub賬戶定義的那個結構。確實,比特幣核心是有一種結構的,但項目本身卻不受任何參與者控制,甚至不受那些對GitHub代碼倉庫有高級特權的人控制。從技術上說,確實有可能讓一群維護人員發動“政變”,黑進GitHub代碼倉庫,審查那些異議開發者,甚至還能保持“比特幣核心”這個品牌名稱;但結果就會是,比特幣核心不再成為開發關注點了。這種政變萬一真的出現了,那些不同意維護人員的開發者,就會直接讓代碼分叉,把自己的工作換到另一個代碼倉庫,換到比特幣核心維護人員沒有管理權限的地方。就算不是真正的“政變”,如果核心真的發生了有爭議的變化,還是會有一些開發者將軟件分叉,除掉那個有爭議的變化,然后對用戶發布。歷史上,AmaurySechet曾經讓比特幣核心分叉,在功能上除掉了“隔離見證”,創造了BitcoinABC。你可以認為,當時發生的就是這種情況。另外,如果某些人提議作出某些變化,而核心否決了這些提議的變化,開發者也可以將核心分叉,加上這些變化。歷史上這種事情發生了很多次,例如:MikeHearn將核心分叉,創造了BitcoinXTAndrewStone將核心分叉,創造了BitcoinUnlimitedJeffGarzik將核心分叉,創造了BTC1將代碼分叉容易,可是改變比特幣開發的焦點就難了。你必須說服貢獻者:“你們的時間最好能花在我這個不一樣的項目上!”

你也很難說服許多人,讓他們相信,用戶們并不盲目跟從BitcoinCoire作出的各種變化。這可能是一個自我強化的信念,因為如果用戶不通過保持對選項的了解來參與共識的過程,他們就會把部分權力讓給開發人員。不過,2017年,用戶的權力已經通過“用戶激活軟分叉”運動得到了行使。當時,有個比特幣的匿名開發者,用假名“shaolinfry”提出BIP148,強迫礦工在8月1日前后要出現“區塊高度”時激活“隔離見證”功能。但是,BIP148的爭議實在太大,比特幣核心無法采用。于是,shaolinfry將核心分叉,發行了軟件BitcoinUASF。這一軟件部署獲得了非凡的“牽引力”,而且似乎創造了足夠的壓力,能讓礦工采用BIP91,從而在BIP148截止日期之前激活分叉。我個人認為,最好的BitcoinCore貢獻者,是那些踐行了極端所有權的人。舉個典型例子:下圖中這個特定的共識bug所在的代碼,雖然并不是貢獻者JohnNewbery自己寫出來的,但他認為自己沒有認真檢查,而讓這bug代碼合并了;事后在寫測試案例的時候,也沒有查出來,所以自己要承擔責任。

Listed Fan完成160萬美元融資:6月3日消息,據 latestly 報道,社交 Token 發行公司 Listed Fan 宣布完成 160 萬美元融資,Whiteboard Capital 和 Goodwater Capital,以及 Google 董事 Rahul Jindal、Whatsapp Payments 的 Vinay Chholeti、摩根士丹利高管 Hemant Gupta 等天使投資人參投。[2022/6/3 4:00:23]

我們都是中本聰。為BitcoinCore做出貢獻

雖然有足夠的資源可以幫助那些有抱負的開發者,但是邁出第一步為Core做貢獻,依然可能讓人望而生畏。此處可以找到貢獻的指導方針:https://bitcoincore.org/en/faq/contributing-code/但我更推薦從JimmySong寫的簡易入門開始:https://medium.com/m/global-identity?redirectUrl=https%3A%2F%2Fbitcointechtalk.com%2Fa-gentle-introduction-to-bitcoin-core-development-fdc95eaee6b8此外,核心開發者EricLombrozo也寫了一篇文章,方便人們理解核心代碼倉庫里的種種變化:https://medium.com/@elombrozo/the-bitcoin-core-merge-process-74687a09d81d還有一個特殊案例可能對你有用:在撰寫本文時,為了審計GitHub提交歷史的完整性,我在我的機器上運行verify-commit.py腳本;這個運行過程,正好遇到了一些困難。為了不讓以后的開發者遇到同樣難題,我開啟了一個“pull請求”用來改進存檔過程。為了防止未來的開發人員不得不處理這些問題,我打開了一個pull請求來改進文檔。從PR歷史中可以看出,4個不同的開發人員就如何改進我的pull請求提出了建議。這包括使用不同的wiki標記,簡化的bash命令,以及可以在verify-commit.py腳本中使用的新參數。我同意所有的建議都是有道理的,所以我把它們合并到我的代碼中,并推送了一個更新版的pull請求。此時,參與審查的開發人員承認,他們發現PR是可以接受的,維護人員MarcoFalke將其標記為包含在0.18版本中。幾天過去了,開發人員沒有異議,代碼被維護人員SamuelDobson合并到了Core軟件當中。誰在控制比特幣?

多年來我反復說過,想要完全理解作為“體系”的比特幣,幾乎是不可能的。比特幣協議的定義,就好比語言的定義一樣。語言是人類自發產生的,對于詞義的共識,是有機的、生活中的共識,而不是讓詞典決定意義。詞典的作用是描述一種語言的客觀現象,而不是給語言下定義;同樣,比特幣的部署,也是用代碼描述比特幣的語言。不可能強迫任何人同意某詞典對某詞的定義,也不可能強迫任何人同意某特定比特幣部署里的代碼。言語不受民主體制的管轄,比特幣也不受民主體制的管轄。你可能會聽說人們提到一些概念,如礦工、節點、開發者、用戶投票等等;卻沒有這樣的機制,可以促成任何種類的“多數人投票”,強迫少數異議人士接受那些自己反對的變化。比特幣是一種無政府主義,沒有統治者,但依然有著規矩。規矩由網絡中每一個參與者定義,由每一個參與者強制執行。比特幣協議本身的各種變化,一般通過“比特幣改進提議”的流程實現。不過,哪怕這個提議,也只是一種推薦的操作方式,并不能強迫任何人遵守。只是一種相對規范的途徑,想要通過同行評審,構建共識的辦法來引導實現一種變化。我知道,要解釋這一切很困難,要明白也很困難。但是,這就是比特幣“抗脆弱性”的關鍵方面。如果有了“單點控制”,也就成了“單點故障”。如果那些有權有勢的機構受到比特幣帶來的威脅,他們就會充分利用這一點對比特幣進行攻擊。最終,每一個節點運營商都會自我治理,方法就是確保網絡中其他所有人都不會破壞自己認可的規矩。這種安全模型,就是比特幣自下而上治理的基礎。沒有人控制比特幣。也沒有人控制比特幣開發的焦點。

Tags:比特幣BITCOITCO中國比特幣之父是誰Wealthy HabitsEarn DeFi CoinBitcoinPepe

比特幣
加密貨幣:美國俄亥俄州接受比特幣支付稅款,或成為美國首例_比特幣交易在中國合法嗎

據bitcoin.com報道,美國俄亥俄州將于本周為企業提供比特幣支付稅款的業務。該州財務部門稱:“俄亥俄州已經成為美國首個接受加密貨幣的州,也是世界上首個接受加密貨幣的政府.

1900/1/1 0:00:00
區塊鏈:熊大熊二來了,光頭強你的信仰還在么?(下)_區塊鏈dapp開發框架

編者按:本文來自:白話區塊鏈,作者:五火球教主,odaily星球日報經授權轉載。上周,我們從區塊鏈自身角度、歷史角度、資金角度、交易角度,梳理了區塊鏈的現狀.

1900/1/1 0:00:00
以太坊:以太坊的黃金大劫案_WIN

據Tokenview大額轉賬監測顯示,自11月30日晚十點至12月1日上午十點四十分,以太坊鏈上出現近300筆大額轉賬,且轉賬數量皆為37500以太坊.

1900/1/1 0:00:00
比特幣:薄荷:極少數堅守者能看到無際 | 「牛熊啟示錄 」_Mixin

繼10月推出高端視頻訪談節目《直面大佬》之后,近日,博鏈財經又攜手36氪獨家戰略合作媒體《Odaily|星球日報》推出深度在線互動訪談欄目——《牛熊啟示錄》,旨在通過與穿越牛熊者的心靈對話.

1900/1/1 0:00:00
區塊鏈:通證經濟學,那些你不能不知的事!系列(二)通證經濟學中的宏觀命題_HedgePay

編者按:本文來自TritonPartners,作者:TritonPartners,Odaily星球日報經授權發布.

1900/1/1 0:00:00
以太坊:以太坊2.0電力消耗暴降99%,最大受害者竟是礦場?_ETH

隨時可能搶奪比特幣光芒的以太坊不能否認:比特幣的光芒實在太耀眼了,鮮花掌聲有之,雞蛋口水有之,似乎它儼然已經成為了「加密貨幣」的化身;而與此同時,更加年輕.

1900/1/1 0:00:00
ads