中本聰:民間科學家

文 / maxdeath

中本聰:民間科學家

中本聰,即Satoshi Nakamoto,是個化名,他一開始只是一個進入密碼學愛好者的匿名郵件群組的新人,這個群組的人自稱“cypherpunk”,即密碼朋克。

這個群組中基本上是一群熱衷於採用密碼學技術改變世界的理想主義者和無政府主義者。這群人基本上各個來頭都不簡單,有大公司的科研人員,高階工程師,大學教授,知名密碼學家等等,但是其中也不乏單純的沒有過硬技術和學術背景的密碼學愛好者,或者說是民科,其中就包括中本聰。

而其中,一個最重要的討論話題,就是如何擺脫政府和大公司的控制,發明一種去中心化的電子貨幣,這樣的嘗試最著名的就是Ecash,此外,還有b-money,hashcash等,而這幾個東西的發明人也都在這個群組裡。

中本聰在混跡這個群體一段時間之後,於2008年在組群中發表了著名的《比特幣:一種點對點的電子現金》一文。

這個在現在被認為是區塊鏈和加密貨幣而被封為區塊鏈的《聖經》的文章在這裡:

https://bitcoin。org/bitcoin。pdf​bitcoin。org

而他的中譯本我也貼上來,大家可以去看看:

https://www。8btc。com/wiki/bitcoin-a-peer-to-peer-electronic-cash-system

————————————————————————

在這篇文章中,中本聰描述了一個去中心化的數字貨幣系統以及實現它的密碼學細節。

然而,如果你有一定的學術背景再去看這篇文章,你肯定會皺起眉頭,“民科”兩個字脫口而出。

很少的引用,沒有對於背景和之前工作的介紹,甚至沒有提到之前最成功的電子貨幣系統ecash。沒有對於模型的定義,沒有定理,沒有證明,沒有實驗資料,沒有虛擬碼,變數的定義和公式的書寫都很不規範,用詞不夠嚴謹也不夠科學。其中,最有趣的是這一部分:

中本聰:民間科學家

中本聰:民間科學家

這一部分是在說什麼呢?就是中本聰給出了比特幣的安全性的公式,接下來,他給出了一段計算這個公式的C語言程式碼,然後把不同的值帶進去算了一下,把結果全都列了出來來說明這個系統的安全性。

這種用計算結果進行證明的手法,依稀讓我想到了用計算器算調和級數的某位。

當然,從事後諸葛亮的角度,我們知道這篇文章裡面寫的東西是沒什麼錯誤的。但是對於不清楚背景的人來說,這篇文章用很粗糙和不嚴謹的語言和大量的細節描述了一個作者心中的貨幣系統,卻沒有告訴讀者它為什麼能工作,究竟解決了什麼問題,和之前的系統究竟不同點在哪裡。同時,沒有具體的實現和資料可以證明這個系統確實工作,也沒有證明這個系統的安全性。

————————————————————————————

於是,理所當然地,群組裡沒有多少人理他,即便是少數搭理他的人,基本上也都提出了或委婉或直接的質疑——很顯然,大家覺得他是個民科,一個沒有專業基礎就妄圖挑戰這個學術界熱點問題的民科。這個問題的state-of-the-art是ecash,作者是David Chaum,國際密碼研究協會的發起人,會士。而ecash和當時所有的電子貨幣系統,都建立在“可信中心”的假設之上,而想要打破這個假設,則需要一個能在全網達成共識的演算法,也就是拜占庭容錯問題——

“你知道你的這個問題等價於拜占庭容錯嗎?你知道這個問題的難度麼?你知道你等於是在說你設計了一個可用於大網路的拜占庭容錯演算法麼?”

很多人向他提出了這個問題。

拜占庭容錯問題的提出者是Leslie Lamport,分散式系統的先驅和奠基人之一,2013年的圖靈獎獲得者。而當時這個問題的state-of-the-art是PBFT,作者之一是Barbara Liskov,2008年的圖靈獎獲得者,而PBFT只能在很小的網路中執行。現在,中本聰說他獨創了一種可以比肩圖靈獎得主們的演算法。

很顯然,幾乎沒有人相信這篇白皮書提出的系統是正確的,不僅因為這篇白皮書看起來不是出自專業人士之手,而且因為這篇文章通篇都沒有提到拜占庭容錯,更沒有任何分散式系統領域論文慣用的正規化(一個分散式系統的容錯演算法,參照Paxos和PBFT,要遠比這本白皮書看起來繁複得多)。即便少數人覺得這篇文章沒有“那麼”錯,可能有一定價值,也基本都會認為這篇文章一定在實現的時候會出現一些問題,總之應該不可能像中本聰透過上圖計算的論證那樣簡單地就安全了。

唯一一個堅定不移相信中本聰和比特幣的人是Hal Finney,密碼學家,PGP演算法的共同創造者之一。

————————————————————————————

這個故事最後的結局很多人都已經知道了。

中本聰和Hal Finney共同開發了第一版的比特幣客戶端,然後慢慢地有了使用者,有了礦工,有了專門的ASIC礦機,然後,有了暴漲和暴跌,有了圍繞著比特幣的一個巨大的產業,也有了密碼學界乃至整個計算機科學界現在最熱門的新興學術領域之一——區塊鏈。

比特幣被主流科學採用了嗎?毫無疑問是的——在4-5年前,比特幣的研究還僅限於很小的密碼學圈子,比如Financial Crypto這種一直關注數字貨幣研究的會議。但逐漸地,隨著一些重要論文,例如The Bitcoin Backbone Protocol: Analysis and Applications 正式地將中本聰白皮書中的演算法和拜占庭容錯等價起來,比特幣開始被接納為一個重要的學術成果並被逐漸認為開創了一個全新的領域——區塊鏈(這點在學術界仍有爭議,因為一部分人仍舊認為區塊鏈不是新東西,只是舊技術的結合)。目前,許多密碼,資訊保安和分散式系統,乃至計算機科學領域的學術會議都開始接收區塊鏈論文,例如(CCS 2018: Program,去年資訊保安頂會ccs上的區塊鏈部分),同時,許多大學都開始開設區塊鏈課程,例如普林斯頓大學的Bitcoin and Cryptocurrency Technologies。

————————————————————————————

這個故事放在這裡估計會很有爭議,因為估計上到題主下到所有回答都是諷刺民科的。從我個人來說,我旗幟鮮明地反對當下語境下的那種民科,不過可惜的是,在區塊鏈這個領域中也充斥著民科,他們都覺得自己是下一個中本聰。

的確,以民科在當下語境中的定義來稱呼中本聰,的確是不合適的。但要是以民科原本的定義來說,儘管中本聰現在的身份仍舊不明,但從這個白皮書來看,中本聰的的確確地又是不折不扣的民科。那麼,是什麼讓中本聰不同於其他那些將民科這個詞變成了貶義詞的妄人呢?

又或者說,那些想要成為中本聰第二的人們,那些也許看了本文感覺備受鼓舞也想複製比特幣的成功的民科們,你們需要做到那些事情呢?

1,學習

的確,比特幣白皮書裡完全沒有拜占庭容錯相關的部分。但是這並不代表中本聰不懂拜占庭容錯——他一開始確實不懂,甚至說,他一開始甚至連密碼學的東西都知之寥寥。但是,他並不是立刻就寫出了比特幣白皮書,而是在向群組中的人請教了很多他一開始不會的問題,像海綿一樣吸收了很多人的想法之後,才寫出來的白皮書。才在後來他和別人的對話中你會發現,他對於拜占庭容錯的理解,遠超已經足以應付許多刁鑽的問題了。

所以,能不能先承認自己的不足,將自己的想法壓在心底,虛心地去學習,是中本聰與“民科”的區別之一。

2,執行能力

說到執行力,似乎是偏執的民科們的長項,只看到民科們日復一日年復一年地被害妄想在各種渠道散播自己的理論,卻從來沒見到那個民科說放棄。

然而,在把自己的理論落在實際上的時候,無論是數學的證明,物理的實驗,以及工程類的機械乃至計算機程式,基本上沒有那個民科能夠有能力把他們的理論轉化成現實。大到各類永動機,小到數學證明,很少有民科有超過高中水平的實現能力的。

反觀中本聰,比特幣的成功實際上可能只有1%要歸功於一個沒人相信的白皮書,而真正的原因,99%都是靠幾乎沒有出過安全問題運行了這麼多年的比特幣軟體。雖然,這個軟體很大程度得益於Hal Finney的幫助,但其中中本聰本人也是有基本的工程能力的。而且,其實能夠打動Hal Finney的,也是這篇雖然不規範,讓人乍看找不到重點,但是能夠邏輯自洽而且足夠清晰的白皮書。而這點,是大部分民科達不到的。

3,不求名利

最終,這點大概才是中本聰和其他民科的本質區別吧。