比特幣 10 週年,經典論文白話導讀

#109

16 分鐘閱讀

今天是比特幣論文的問世 10 週年紀念日。全球有非常多區塊鏈領域的創新者,當初都是因為閱讀了中本聰發表的這篇論文,深受啟發,才毅然決然投入區塊鏈的世界。

去年我在《區塊勢》寫過兩次比特幣論文的解析,其中一篇是目前 Google 搜尋排行榜的第一名,顯然滿多人都看過了。但我每隔一段時間重新閱讀,都感覺更認識了比特幣一點,甚至開始領悟出字面以外的深意。過去一年,我反覆思考比特幣與區塊鏈之間的關係,直到最近幾個月,才認為應該要把區塊鏈當成是數位資產(包含比特幣)的防偽技術。

所以,今天的文章就從區塊鏈的角度出發,由我為你導讀這份堪稱曠世巨作的比特幣論文,看中本聰當初寫了哪些內容。以及對應到 10 年後的現在,他(或他們)的想法是否還禁得起考驗。


比特幣論文的全名是〈比特幣:點對點的電子現金系統〉,2008 年 11 月 1 日,署名中本聰(Satoshi Nakamoto)的作者將論文公開在密碼學網站 metzdowd 上。論文篇幅只有短短 9 頁,但引用次數至今已經超過 4,600 次。反觀我的畢業論文引用只有個位數,你就知道它確實是曠世巨作。

10 年前正好爆發全球金融海嘯,多家大型金融機構需要政府紓困才得以苟延殘喘,民眾對金融機構信心盡失。在這樣的時空背景下,中本聰在論文第一句話就寫下:

必須創造一套點對點的電子現金系統,才能在不使用金融機構的服務情況下,也能透過網路轉帳給他人。

A purely peer-to-peer version of electronic cash would allow online payments to be sent directly from one party to another without going through a financial institution.

人們沒辦法脫離金融機構,獨立在網路上完成轉帳,所以中本聰就設計了比特幣區塊鏈(Bitcoin)這套轉帳系統。系統不歸任何金融機構或國家管理,一切都交由公開的程式碼運作。不只如此,轉帳系統最怕被駭客攻擊,於是,他還設計了一套「挖礦」機制,來阻擋駭客的攻勢。

論文除了第 1 頁是在介紹 10 年前中本聰觀察到的問題之外,其他 8 頁都是在解釋比特幣區塊鏈這套系統是如何設計。所以,這篇論文更像是一份公開說明文件。隔年(2009 年)1 月 3 日,中本聰就和其他網友一起將整套系統的程式碼寫好,比特幣區塊鏈正式上線。

只不過,中本聰在 2010 年 12 月從網路上銷聲匿跡,到現在都沒人知道他是誰。他所持有的比特幣,也從那時候便靜靜的躺在那。

讓線上金錢交易,不需仰賴金融機構

即便是 10 年後的今天,我們也還是認為轉帳交易就得去銀行臨櫃辦理、操作 ATM,或是下載銀行的 app 才能完成。

的確,在區塊鏈普及之前,還真的沒有其他辦法。因為所有數位化的資產,都缺乏防偽機制,就像鈔票上沒有浮水印和變色油墨一樣。數位檔案的複製或偽造,都比實體物品更容易,風險更高。

因此錢被數位化之後,還是不能脫離銀行的掌控。無論是 ATM 自動提款機、網路銀行,或是手機 app,都是只是不同形式的銀行櫃檯。目的是讓銀行有效管理。

反過來說,若實體資產數位化,卻沒有被綁定在自家系統內,就會產生星巴克假電子優惠券充斥的問題。因為消費者直覺認為出示圖片憑就可以獲得優惠,但其實難以辨認發行源頭是否為星巴克。還得跑到官網查證,才能分辨優惠券真偽。

不知道你有沒有發現,雖然我們今天看的是比特幣論文,但我們討論的已經不只是比特幣,而是更多區塊鏈應用。這就是重讀論文的價值。論文講的是 10 年前的轉帳問題,只因現在的我們對區塊鏈有更深的認識,因此跳脫了文中所敘述的比特幣以及金融機構情境,看到特定情境以外的普遍問題。

回到論文來看,中本聰希望未來使用者能夠仰賴某種技術——當時他還說不出區塊鏈——在不需要銀行機構或企業平台的協助之下,就能在網路上完成交易。

那麼,中本聰打算怎麼設計這套技術呢?就是區塊鏈的原始樣貌:區塊(block)、鏈(chain)。

區塊、鏈:數位資產的防偽技術

要繞過金融機構,最理想就是讓任意兩個人在網路上交易,就像是面對面交易一樣。我們網拍面交時,不會要求對方當場把錢從銀行領出來才能安心。因為對方從錢包拿出錢,我們不需要銀行的幫忙,也能夠辨認錢的真假。

仔細想想,中本聰想說的不就是鈔票上面浮水印、變色油墨的功能嗎?只不過,防偽機制套用到數位資產上,當然得設計新的作法:區塊、鏈。

區塊鏈(blockchain)是最近幾年,大家才想到應該把區塊、鏈湊在一起,並從比特幣系統中單獨拿出來應用的工程概念。因為人們發現區塊鏈這套數位資產的防偽技術,不只能應用在比特幣系統上,還能廣泛的應用在與比特幣性質相同的數位資產上。

不過,究竟要把區塊鏈應用在哪個產業最好,全球企業目前都還在摸索。我們看到有非常多概念驗證(proof of concept)的專案出現。這些專案的出發點一致,視區塊鏈為數位資產的防偽機制,只是應用場景不同。

如果從技術的角度來研究區塊、鏈是如何防偽,則可以把每個區塊當成是帳本上的一頁,而鏈則是把這每一頁用扣環串起來。所以,才會有人說區塊鏈就像是帳本。這已經把原本非常抽象的工程概念講得非常具體。

我們只需要知道區塊、鏈分別是扮演什麼角色即可:

  • 區塊(帳本內頁):記錄的是「誰在什麼時候轉了多少錢給誰」

  • 鏈(帳本扣環):避免駭客在帳本中,任意插入一頁的工程設計

全球有將近一萬台電腦,都盡可能同步更新這份帳本,並將帳本保存在各自電腦裡。所以,即便駭客攻破其中幾台電腦,也難以影響帳本的正常運行。

上面這段話,已經開始進入到軟體工程師、研究人員的專業領域。如果要深入研究如何提升運作效率、駭客是否能找到破解的漏洞,我之前已經寫過不少文章化繁為簡的解說,但今天就不重複說明。

不過,全球有一萬台電腦都在更新帳本,是一件耗費電腦運算資源又耗電的事。為什麼這一萬台電腦的主人願意貢獻這些資源呢?賺比特幣。

挖礦:發薪水的經濟誘因

這些電腦主人貢獻運算資源、耗費電力,是為了換取比特幣。礦坑裡的礦工貢獻體力換取收入,比特幣礦工付出電腦運算能力,以獲得經濟回報,所以兩者都是「挖礦」。挖礦這個詞還可以套用在很多地方,例如去 7-11 消費 79 元就送一點,其實可以稱為購物挖礦。

不過比特幣礦工可不是領月薪。比特幣系統的發薪方式就像一場轉盤遊戲,貢獻越多運算能力的礦工,在轉盤上所佔的比例就越高。轉盤大約 10 分鐘啟動一次,除了被指針指到的那位礦工能領到薪水(比特幣)之外,其他人都是做白工,只能等待下個 10 分鐘到來。

當比特幣市價越高,自然會吸引越多礦工投入,賭一個中獎的機會。也就是說,幣價高的時候,也會有更多礦工投入資源,墊高駭客發動攻擊所必須花費的成本。只要攻擊成本高到沒有任何駭客願意嘗試的地步,這就是一套安全的系統。

讀到這裡,你會發現中本聰設計了一套隨著幣價漲跌,安全性也會有所不同的轉帳系統。

銀行的轉帳系統安全性,都是由內部的工程師負責,安全性通常只會一直增加,而非浮動。但是中本聰藉由經濟誘因的力量,設計了一套安全性隨著價格浮動的機制,來抵禦駭客攻擊。

這是非常聰明的作法,幣價越高會引來越多駭客覬覦,但是當比特幣一文不值,也就沒有駭客想浪費資源攻擊。只要讓駭客在任何時候,都覺得攻擊不划算,就能建立一套安全的系統。我認為這是全篇論文內,最令人眼睛為之一亮的創新之處。

說到這裡,我就已經把中本聰 9 頁的論文大致說完。因為我是用文字描述他的工程設計概念,所以後面 8 頁內容才能用比較精練的文字為你導讀,省略論文內的數學算式證明。

接下來,我們來重新審視這份比特幣論文,到底對目前區塊鏈整體發展,產生什麼影響。

比特幣有歷史價值,區塊鏈才是未來

中本聰的過人之處,是早在 10 年前他就看出網際網路還缺了一片重要拼圖。導致我們在網路上進行轉帳交易的時候,必須仰賴銀行提供服務,而不能脫離銀行獨立完成。

更值得敬佩的是,他不僅看到問題,同時也提出具體作法。只不過當時沒人聽得懂他在說什麼,直到近幾年才逐漸受到大家重視。雖然發展過程不算順遂,但至少現在已經有越來越多人,總算能理解他的意思。我猜他現在應該很欣慰。

不過,我認為現在全球區塊鏈的蓬勃發展,就不是中本聰的功勞,而必須歸功於人們把區塊、鏈這兩個概念,單獨從比特幣系統中提取出來,創造出區塊鏈(blockchain)這個全新概念。這才真正讓全球的開發者針對區塊鏈的機制,進行縱向的效能改善,以及橫向的跨產業應用。

所以,現在全球才會出現數百種不同的區塊鏈,甚至有的沒有區塊也沒有鏈。但萬變不離其宗,它們本質上都是數位資產的防偽技術。

比特幣是科技發展史上,第一種內建防偽機制的數位鈔票,具有崇高的歷史價值。不過,我認為未來的發展重點應該放在防偽機制的迭代及應用,比特幣只是這種防偽機制的載體。如果比特幣的技術及應用演化得不夠快,在實用價值上,終將被其他後起之秀淘汰。

過去十年,區塊鏈以比特幣為榮。下個十年,比特幣將以區塊鏈為榮。