比特幣密碼學先驅與設計繼承深度分析:從密碼朋克運動到中本聰的基因遺傳

深入探討比特幣問世前的密碼學先驅項目與比特幣設計的繼承關係。分析 David Chaum 的 ecash、Adam Back 的 Hashcash、Wei Dai 的 b-money、Nick Szabo 的 Bit Gold 對比特幣設計的深層影響,並探討 Hal Finney 的 RPOW 與比特幣工作量證明的直接血緣關係。揭示比特幣如何繼承、修正與超越其密碼學先驅,以及中本聰如何把碎片組合成完整系統的設計哲學。

比特幣密碼學先驅與設計繼承深度分析:從密碼朋克運動到中本聰的基因遺傳

前言:我站在哪些巨人的肩膀上?

老實說,每次我看到有人說比特幣是「憑空出現的奇蹟」,心裡就有點不是滋味。比特幣的確是個劃時代的發明,但中本聰可不是從石頭裡蹦出來的。在比特幣白皮書的參考文獻裡,你能看到一長串密碼學家的名字;在比特幣的設計細節裡,到處藏著前人幾十年心血的痕跡。

這篇文章就想聊聊這些「隱形祖先」——David Chaum 的 ecash、Adam Back 的 Hashcash、Wei Dai 的 b-money、Nick Szabo 的 Bit Gold。順便挖一挖,比特幣到底繼承了什麼、修正了什麼、又是怎麼把這些碎片拼成一個完整系統的。

第一章:密碼朋克的DNA——這群人到底在想什麼?

1.1 密碼朋克是什麼來頭?

80年代末90年代初,有這麼一群怪咖,堅信密碼學會改變世界的權力結構。他們自稱「密碼朋克」(Cypherpunks),每週在郵件列表上激烈辯論,用的是現在看來有點土的電子郵件系統,但那股子勁頭,簡直比現在的 Web3 創業者還要狂熱。

這個運動的核心訴求說起來也很簡單:隱私權是基本人權,而密碼學是保護隱私的最佳武器。 在他們眼裡,政府和企業對個人數據的監控是最大的威脅,而加密技術是對抗這種監控的最終武器。

密碼朋克郵件列表的創始人 Eric Hughes 在 1993 年寫了篇宣言,我到現在還覺得寫得挺燃的:「隱私權的必要性來自於權力的不平衡。如果你們在數據交換的過程中擁有隱私權,那你們就有了談判的籌碼。」

1.2 密碼朋克運動的技術遺產

這群人折騰出來的東西,現在回頭看真的不得了。PGP 加密讓普通人的郵件也能保密;David Chaum 的盲簽名技術為匿名通信提供了理論基礎;雜湊現金(Hashcash)讓 spam 無處遁形。這些技術最後都成了比特幣的基石。

我特別想強調的一點是,密碼朋克不只是搞技術的烏托邦主義者,他們是真的相信技術能改變社會結構的理想主義者。這種「技術左派」的基因,到現在還流淌在比特幣社群的血液裡。

第二章:David Chaum——那個被比特幣「遺忘」的祖師爺

2.1 Chaum 的江湖地位

說到密碼朋克運動的奠基人,David Chaum 絕對是繞不過去的名字。這位仁兄在 80 年代初就開始搞數位貨幣研究了,比特幣誕生還差了快三十年的時候,他已經把數位現金的核心密碼學原理摸得一清二楚。

Chaum 在 1983 年發表的論文《Security without Identification: Transaction Systems to Make Big Brother Obsolete》簡直是數位隱私領域的聖經。他在這篇論文裡提出了一個大膽的問題:有沒有可能設計一個系統,讓政府和大公司無法追蹤個人的消費行為,同時又保持交易的合法性?

這個問題的答案是「有」,而答案的核心就是密碼學。

2.2 盲簽名技術——Chaum 最偉大的發明

Chaum 最廣為人知的貢獻是「盲簽名」(Blind Signature)技術。這東西聽起來很玄乎,但其實原理並不複雜。

傳統的數位簽名是這樣的:簽名者看到文件的內容,然後對文件進行簽名。簽名者和文件內容是「看得見」彼此的。

盲簽名則不同:簽名者在不知道文件內容的情況下完成簽名。就像你把一張紙放進帶有碳紙的特殊信封裡,簽名者在信封上簽名,簽名會「穿透」到裡面的紙上,但簽名者壓根兒看不到紙上的內容。

數學上,盲簽名的實現依賴於 RSA 加密算法的特性:

假設:

盲化過程:

blinded_message = m × r^e mod n

這裡 e 是公鑰指數。乘上 r^e 後,原本的消息 m 被「盲化」了。

簽名過程(簽名者對盲化的消息簽名):

blind_signature = blinded_message^d mod n

去盲化過程:

signature = blind_signature × r^(-1) mod n
           = (m × r^e)^d × r^(-1) mod n
           = m^d × r × r^(-1) mod n
           = m^d mod n

最終得到的 signature 就是對原始消息 m 的有效簽名,但整個過程中簽名者壓根不知道他在簽什麼。

2.3 ecash 的設計架構

基於盲簽名技術,Chaum 在 1989 年創辦了 DigiCash 公司,推出了 ecash 系統。這個系統的設計理念是:

匿名性:用戶從銀行提款時,銀行只知道「某個用戶提取了一定金額」,但不知道具體是哪個用戶兌換了哪個「數位硬幣」。這就像你從銀行取出現金後,去路邊攤買個臭豆腐,攤主壓根不知道你是誰。

可雙花防禦:每個數位硬幣都有唯一的序列號。當用戶消費時,商家把序列號發給銀行驗證。如果同一個序列號出現兩次,系統就會拒絕——但此時攻擊者的匿名身份已經暴露了。

可追蹤性(必要時):在特定條件下(如法院命令),銀行可以追溯任意交易的發送者和接收者。這種「選擇性披露」的能力讓 ecash 在匿名性和合規性之間找到了平衡點。

ecash 的架構如下:

用戶錢包 ←→ 商家 ←→ 銀行
     ↓
  盲提款(銀行不知道硬幣序列號)
     ↓
  消費(商家只知道用戶存在,不知道具體身份)
     ↓
  存款(銀行只知道序列號,不知道商家是跟誰交易的)

2.4 Chaum 對比特幣的影響——哪些被繼承了,哪些被修正了?

比特幣從 Chaum 那裡繼承了幾個關鍵概念:

密碼學作為信任基礎:Chaum 的核心洞察是,在數位世界中,密碼學可以取代傳統的信任機構(如銀行)。比特幣完美地繼承了這一點——在比特幣網路中,你不需要信任任何人,只需要信任數學。

預防雙花的機制:ecash 通過中央銀行驗證序列號來防止雙花。比特幣則通過去中心化的區塊鏈共識機制達到了同樣的效果,但完全不需要信任中央機構。

隱私保護設計:ecash 的匿名性設計理念直接影響了比特幣的偽匿名特性。比特幣地址不綁定真實身份,但鏈上交易記錄是公開的——這種設計比 ecash 的完全匿名更「誠實」,因為用戶知道自己並非完全匿名。

但是,比特幣也刻意迴避了 Chaum 的一些設計:

放棄了盲簽名作為核心機制:比特幣選擇了 UTXO 模型和橢圓曲線簽名(ECDSA,後來升級為 Schnorr),而不是 Chaum 的盲簽名體系。這是因為盲簽名需要信任中央發行機構,而比特幣的核心創新就是去中心化發行。

放棄了身份驗證層:ecash 需要銀行來驗證用戶身份和餘額。比特幣則完全放棄了身份概念——你只需要擁有一個私鑰,就能控制對應的比特幣。這種設計雖然帶來了更好的隱私,但也讓「找回被盜比特幣」變得不可能。

2.5 Chaum 的局限性——為什麼 ecash 失敗了?

ecash 最終在商業上失敗了,原因值得我們深思:

依賴中央機構:ecash 的運作完全依賴於銀行這箇中央機構。一旦銀行倒閉或被政府關閉,整個系統就完蛋了。這和比特幣「無需許可」的設計哲學形成了鮮明對比。

推廣困難:讓銀行和商家採用新支付系統是個雞生蛋蛋生雞的問題。沒有足夠的商家接受 ecash,用戶就沒有動力使用;沒有足夠的用戶,商家就沒有動力接受。

技術上的先驅不等於商業上的成功:Chaum 的密碼學貢獻無可置疑,但他低估了建立支付網路效應的難度。比特幣用「挖礦獎勵」這個經濟激勵機制巧妙地解決了冷啟動問題,這是 Chaum 當年沒想到的。

第三章:Adam Back 與 Hashcash——工作量證明的原始模型

3.1 密碼學反垃圾郵件戰士

Adam Back 這個人很有意思,他在 1997 年發明了 Hashcash,動機很單純——對抗 email spam

當時 email 垃圾郵件已經是個大問題。發送一百萬封 spam 成本極低,幾乎可以忽略不計。傳統的過濾方法(關鍵詞黑名單、貝葉斯過濾)總是落後於 spam 製造者的腳步,雙方在不斷升級的軍備競賽中疲於奔命。

Back 的想法是:為什麼不讓發送 email 的成本提高呢? 如果每次發送 email 都需要消耗一定的計算資源,那 spammer 的大量發送行為就會變得無利可圖。

3.2 Hashcash 的工作原理

Hashcash 的核心機制就是「工作量證明」(Proof of Work)。用大白話說,就是讓電腦多做幾道數學題,通過「解題」來證明自己付出了計算資源。

Hashcash 的具體實現如下:

原始數據 + 計數器 → SHA-1 哈希 → 檢查結果

用戶在發送郵件時,需要找到一個計數器值,使得整個字串的 SHA-1 哈希值的前 n 位都是 0。

這裡的 n 就是「難度參數」:

用戶的電腦需要不斷更換計數器值,暴力搜索符合條件的哈希值。平均來說,每 2^n 次嘗試會成功一次。

3.3 Hashcash 的技術細節

Hashcash 的標準格式如下:

X-Hashcash: 1:20:20240101:adam@cypherspace::McMyFh:ILd9vZ

格式解讀:

實際計算時,整個字符串(加上計數器的 BASE64 編碼)會被哈希多次,直到找到符合難度要求的結果。

3.4 為什麼 Hashcash 比簡單的重複計算更聰明?

一個簡單的反 spam 方案是「要求用戶做一個固定的大數乘法」。但這個方案有個致命問題:一旦用戶完成計算,結果就可以被重複使用

Hashcash 的巧妙之處在於,每封郵件都需要一個獨特的工作量證明:

  1. 日期字段確保不同日期的郵件需要不同的工作量證明
  2. 發件人字段確保同一發件人的不同郵件需要不同的工作量證明
  3. 隨機字符串確保無法預測即將發送的郵件的工作量證明

這意味著 spammer 無法事先計算好一堆「通用」的工作量證明來重用。每一封郵件都得重新算過。

3.5 Hashcash 與比特幣的設計繼承

比特幣幾乎完整地繼承了 Hashcash 的工作量證明機制,但做了一些關鍵改進:

改進一:SHA-256 取代 SHA-1

Hashcash 最初使用 SHA-1 作為哈希函數。但 SHA-1 在 2005 年被密碼學社群發現存在碰撞攻擊的弱點。比特幣果斷升級到 SHA-256,並使用雙重哈希(SHA-256(SHA-256()))來防止長度擴展攻擊。

改進二:區塊概念的引入

Hashcash 的工作量證明是「一次性」的——每封郵件獨立計算。比特幣則把工作量證明組織成「區塊」,形成一條連續的「工作量鏈」。

這個設計的巧妙之處在於,攻擊者想要篡改歷史區塊,必須重新計算該區塊之後所有區塊的工作量證明——這幾乎是不可能的。

Block N ← Block N+1 ← Block N+2 ← Block N+3 ← ...
   ↑                                    ↑
 需要重算                              最新區塊

改進三:動態難度調整

Hashcash 的難度是固定的。用戶可能會發現,隨著硬體進步,原本需要 1 秒計算的工作量證明,現在只需要 0.001 秒——Hashcash 的 spam 阻力就消失了。

比特幣的難度調整機制解決了這個問題:每 2016 個區塊(約兩週),網路會根據最近區塊的實際生成時間調整難度,確保平均每 10 分鐘產生一個區塊。

目標時間 = 2016 × 10 分鐘 = 20,160 分鐘(兩週)

實際時間 = 最近 2016 個區塊的實際生成時間

新難度 = 舊難度 × (實際時間 / 目標時間)

如果算力突然增加,區塊生成速度快於預期,難度就會上調;如果算力撤離,難度就會下調。這種「自動巡航」的設計讓比特幣網路能適應算力的巨大波動。

3.6 我對 Hashcash 的一點吐槽

說實話,我第一次看 Hashcash 的論文時,心想這玩意兒看起來挺土的——不就是多算幾次哈希嘛。但後來我才慢慢理解,真正的創新不在於「計算哈希」本身,而在於把計算成本轉化為共識機制

中本聰的高明之處在於,他意識到 Hashcash 的工作量證明不只能用來對抗 spam,還可以用來建立去中心化的時間戳伺服器。當工作量證明和經濟激勵結合在一起,就形成了比特幣網路這個「自組織」的系統。

這就像玩樂高——Hashcash 是其中一塊積木,中本聰則是把這塊積木和其他積木組裝成了一個全新的玩具。

第四章:Wei Dai 與 b-money——加密無政府主義的貨幣實驗

4.1 b-money 的誕生背景

1998 年,密碼朋克郵件列表上出現了一篇署名 Wei Dai 的文章,標題就叫《b-money, an anonymous, distributed electronic cash system》。

這篇文章提出了一個大膽的問題:如果政府有一天決定禁止加密貨幣,普通公民有什麼替代方案?

Wei Dai 的答案是:依靠數學和密碼學,而不是法律和政府許可證。

4.2 b-money 的核心設計

b-money 提出了兩種實現方案,現在看來都有點過於理想化,但也給比特幣提供了重要的靈感。

方案一:基於伺服器的方案

所有參與者共同維護一個資料庫,記錄每個帳戶的餘額。資料庫由一群「伺服器」運營,這些伺服器通過密碼學手段相互驗證和同步。

這個方案的問題顯而易見:伺服器運營商成為了新的權力中心。如果伺服器運營商被脅迫或被滲透,整個系統就會崩塌。

方案二:基於工作量證明的方案

這個方案更接近比特幣的思路:

  1. 所有參與者(或者說「貨幣創造者」)競爭求解複雜的數學問題
  2. 第一個解決問題的人獲得一定數量的 b-money
  3. 解決問題的證明被廣播給所有參與者
  4. 每個人根據收到的證明更新自己的帳戶副本

這不就是比特幣工作量證明和區塊傳播的原型嗎?

4.3 b-money 與比特幣的差異

雖然 b-money 的核心思想和比特幣類似,但實施細節上有很大差距:

缺乏完整的共識機制:b-money 沒有解決「誰來驗證交易」的問題。如果每個人都自己記帳,如何確保大家記的帳是一致的?比特幣的區塊鏈和 Nakamoto 共識解決了這個問題。

沒有雙花防禦的明確機制:Wei Dai 意識到了雙花問題,但他的解決方案是讓受害者公開宣告欺詐行為——這依賴於參與者的道德自律和監視。比特幣的「最長鏈原則」提供了數學上可驗證的雙花防禦。

發行機制的模糊性:b-money 的貨幣供應量如何決定?Wei Dai 沒有給出明確的答案。比特幣的 2100 萬上限和減半機制提供了透明的發行時間表。

4.4 Wei Dai 對比特幣的影響

中本聰在比特幣白皮書的參考文獻中明確引用了 Wei Dai 的 b-money 論文。在後來的郵件通信中,中本聰也提到,b-money 是比特幣的靈感來源之一。

比特幣從 b-money 繼承的核心思想:

第五章:Nick Szabo 與 Bit Gold——被低估的先驅

5.1 Nick Szabo 與「契約理論」

Nick Szabo 這個人在密碼朋克圈裡是個傳奇。他既是法學教授又是電腦科學家,最著名的理論貢獻是「智慧財產契約」(smart contracts)的概念。

Szabo 認為,傳統合約需要律師和法院來執行,成本高、速度慢。如果我們能把合約條款寫成代碼,讓計算機自動執行,合約的成本會大幅下降,而可靠性會大幅提升。

這個想法在 1996 年提出來的時候,大多數人覺得是天方夜譚。但現在你去看看以太坊的智慧合約——這不就是 Szabo 三十年前設想的東西嗎?

5.2 Bit Gold 的設計藍圖

1998 年,Szabo 發表了《Bit Gold》文章,提出了自己的去中心化貨幣方案。雖然 Szabo 強調這只是「理論探索」而非實際系統設計,但 Bit Gold 的很多設計細節都預言了比特幣的實現。

Bit Gold 的核心步驟

  1. 一個「挑戰字符串」(challenge string)在網路上公開生成
  2. 礦工(Szabo 稱之為「挖礦者」)競爭求解這個字符串的哈希難題
  3. 第一個找到符合條件哈希值的礦工獲得 Bit Gold 獎勵
  4. 解決方案被時間戳伺服器認證並記錄
  5. Bit Gold 的所有權可以轉移給其他人

這個流程和比特幣的區塊獎勵簡直一模一樣!

5.3 Szabo 對比特幣設計的影響

可證明昂貴的數位商品:Szabo 提出了「可證明昂貴」(provably costly)的概念——數位商品的生產成本必須足夠高,才能作為價值存儲。這正是比特幣「工作量證明」的核心思想。

去中心化時間戳:Szabo 設計了一套時間戳伺服器網路,用於記錄 Bit Gold 的所有權變更。比特幣的區塊鏈正是這種思想的升級版。

貨幣的「內在價值」:Szabo 認為,貨幣不需要政府背書,只要它足夠稀缺且難以複製,就可能成為有效的價值存儲。比特幣的 2100 萬上限正是對這一理念的實踐。

5.4 Szabo 就是中本聰嗎?——一個永遠的謎

密碼學社群有個流傳已久的陰謀論:Nick Szabo 就是比特幣的神秘創造者中本聰。這個說法有其根據:

但也有反對的證據:

這個謎題大概永遠不會有答案了。但無論如何,Szabo 對密碼學貨幣的貢獻是不可否認的。

第六章:中本聰的「剪切與縫合」——比特幣到底是誰的「孩子」?

6.1 比特幣的「家族樹」

把比特幣的設計往前追溯,你會發現它從各個前輩那裡繼承了不同的「基因」:

David Chaum(ecash)
    ↓ 密碼學作為信任基礎、隱私保護設計
    ↓
Adam Back(Hashcash) ← Wei Dai(b-money) ← Nick Szabo(Bit Gold)
    ↓                    ↓                    ↓
 工作量證明機制       去中心化發行           可驗證的稀缺性
    ↓                    ↓                    ↓
    └────────────┬───────────────────────────┘
                 ↓
           比特幣(共識機制、經濟激勵、區塊鏈)

比特幣的創新在於,它不是簡單地「複製」某一個前輩的設計,而是把多個不相關的技術碎片組合成了一個完整的系統

6.2 比特幣修正了什麼?

前人的設計都有明顯的缺陷:

對 Chaum 的修正:ecash 需要中央銀行,比特幣去掉了這個中心。盲簽名換成了橢圓曲線簽名,犧牲了可選的身份揭露能力,換來了完全去中心化的可能。

對 Hashcash 的修正:Hashcash 的工作量證明是一次性的、無法形成共識。比特幣引入了區塊和區塊鏈的概念,讓工作量證明形成了連續的「信任鏈」。

對 b-money 的修正:b-money 沒有解決「如何達成共識」的問題。比特幣的 Nakamoto 共識機制——最長鏈勝出——優雅地解決了這個問題。

對 Bit Gold 的修正:Szabo 的時間戳伺服器方案依賴於「可信賴」的伺服器運營商。比特幣用密碼學和經濟激勵取代了這種信任需求。

6.3 中本聰的「秘方」——經濟激勵

說了這麼多技術細節,我覺得比特幣最偉大的創新不是密碼學,而是經濟學

中本聰引入了一個簡單但革命性的概念:用比特幣獎勵礦工

這個設計解決了三個先驅都沒能解決的問題:

冷啟動問題:區塊鏈的安全性取決於有多少人參與。但如何吸引第一批參與者?答案是:給他們免費的比特幣。在比特幣早期,區塊獎勵遠高於現在,這吸引了大量早期採用者。

持續激勵問題:當區塊獎勵逐漸減少,礦工為什麼還要繼續挖礦?答案是:手續費。比特幣的費用市場為礦工提供了長期的經濟激勵。

誠實行為問題:為什麼礦工不會作弊?答案是:作弊的成本高於收益。攻擊比特幣網路需要掌控大部分算力,而掌控這些算力的成本遠高於能夠獲得的收益。

6.4 比特幣的「基因突變」

除了繼承和修正,中本聰還做了一些前人完全沒想到的創新:

區塊時間戳與區塊高度:比特幣的區塊不只有哈希值,還有時間戳。這讓網路可以追蹤「時間」的概念,也為智能合約(如時間鎖)提供了基礎。

Merkle 樹:比特幣使用 Merkle 樹組織交易,這讓輕客戶端可以只下載區塊頭就能驗證交易的存在性,大幅降低了系統的資源需求。

腳本系統:比特幣的腳本語言允許用戶定義複雜的出金條件——不只是「誰有私鑰誰就能花」,還可以是「需要 N 個私鑰中的 M 個簽名」或「等待 X 個區塊後才能花」。

第七章:這些先驅現在在做什麼?

7.1 David Chaum 的最新動向

雖然 ecash 商業化失敗了,但 Chaum 並沒有放棄他的密碼學理想。近年來,他成立了一家新公司 xx network,主打「抗量子計算」的加密通訊。

xx network 使用了一種叫做「可混合簽名」(Mixnet)的技術,試圖解決現代互聯網的隱私問題。雖然和比特幣走的不是同一條路,但保護隱私的核心使命是一脈相承的。

7.2 Adam Back 的 Hashcash 2.0

Adam Back 現在是 Blockstream 的 CEO,這家公司專注於比特幣和閃電網路的基礎設施開發。從密碼學研究者到比特幣企業家,Back 的職業生涯軌跡也是挺有意思的。

Hashcash 的精神也在其他地方延續——比特幣的 PoW 機制、以太坊曾經的 PoW 階段,都是 Hashcash 思想的後代。

7.3 Wei Dai 的低調存在

Wei Dai 本人極為低調,很少公開露面或接受採訪。他曾經在 Google 短暫工作過,後來就淡出了公眾視野。

但他對密碼學的貢獻不會被遺忘。b-money 這個名字現在已經成為密碼學字典的一部分。

7.4 Nick Szabo 的持續輸出

Szabo 至今仍在寫作,他的部落格《Unenumerated》涵蓋了貨幣史、密碼學、法律理論等多個領域。他的洞察力一如既往地敏銳,經常能提出一些讓人眼前一亮的觀點。

值得一提的是,Szabo 對比特幣的態度有些矛盾。一方面,他承認比特幣實現了他多年前設想的很多目標;另一方面,他認為比特幣的腳本語言太過簡陋,無法支持真正複雜的智能合約。這種批評現在聽起來可能有點酸葡萄——畢竟比特幣的 Taproot 升級已經大幅提升了智能合約能力——但也反映了 Szabo 對密碼學貨幣的更高期待。

結論:站在巨人的肩膀上,但不是唯一的位置

寫完這篇文章,我最大的感觸是:比特幣的成功不是偶然的,它是密碼學社群幾十年积累的必然結果

如果沒有 Chaum 的盲簽名,我們可能不會想到用密碼學取代信任機構。

如果沒有 Hashcash,我們不會知道工作量證明可以這樣用。

如果沒有 b-money 和 Bit Gold,我們不會相信去中心化貨幣是可能的。

中本聰的天才不在於發明了什麼全新的密碼學原語,而在於把所有碎片組裝成了一個自洽的、可以運作的系統。這就像愛因斯坦——他沒有發明新的數學工具,但他用現有的工具解決了困擾物理學家幾十年的問題。

現在比特幣社群面臨的挑戰是:如何站在比特幣這個「巨人」的肩膀上,繼續推動密碼學貨幣的發展?

答案可能就在這些先驅的精神裡:大膽假設,小心求證,用密碼學改變世界


標籤:比特幣、密碼學先驅、David Chaum、Adam Back、Hashcash、Wei Dai、b-money、Nick Szabo、Bit Gold、ecash、密碼朋克、設計繼承

難度:advanced

發布日期:2026-03-27

本文包含

延伸閱讀與來源

這篇文章對您有幫助嗎?

評論

發表評論

注意:由於這是靜態網站,您的評論將儲存在本地瀏覽器中,不會公開顯示。

目前尚無評論,成為第一個發表評論的人吧!