close

今天開始試著用淺顯易懂的說法,解讀中本聰在 2008 年發表的比特幣論文

這篇論文到現在已經被引用了 1700 多次,是個曠世巨作等級的論文,值得一讀。我會按照自己認為比較好懂的方式切入,而不會按照論文的章節順序。

中本聰 — 風一般的作者

他聲稱自己是個日本人,不過到目前為止,全世界都還不知道這位謎漾的人到底是誰。

不過,因為比特幣的協議和軟體都是公開發佈,發明者本人也無法控制比特幣,所以他是誰(在商業上)其實並不太重要。

拿掉手續費 — 沒有中間人

交易手續費的來源,是因為金融機構(後稱銀行)作為線上交易的中間人,在每筆交易都承擔著交易雙方的信任風險。當交易糾紛產生時,銀行需要負責調解、賠償;所以,銀行往往會要求雙方,在交易之前提供與交易本身完全無關的個人資訊,來建立信任基礎。

而比特幣的創新之處,就是將銀行這個中間人去除,不需要由銀行負責信任風險;改由網路上所有的電腦來幫忙驗證,讓雙方直接進行 P2P 交易,而不再透過銀行。

由於沒有銀行扮演中間人,自然就可以大幅降低交易手續費,也就可以讓更多日常的小額交易有更多元的應用。

防偽機制 — 數位簽名、時間戳記

所謂「數位貨幣」,是相對於實體發行的貨幣而言。在實體貨幣的世界,因為交易都是銀貨兩訖,所以沒有上述的信任問題;而且,政府也會透過在實體貨幣上加上防偽雷射印刷,或是使用特殊材質、油墨來避免貨幣被偽造。

但數位貨幣就不一樣了。因為數位媒介的特色,就是非常容易複製,所以每次線上交易就得運用密碼學的運算,來產生出一串經過加密的亂碼,來確保每次交易的安全性。萬一亂碼被破解,這筆交易就可以被更改、甚至把 100 元當 200 元花,造成同一筆錢被重複花用(double-spending)的問題。

中本聰在比特幣的設計上,是以個人數位簽名(digital signature)搭配交易時間戳記(timestamp server),來證明該次交易的唯一性,同時也解決重複花用的潛在問題。

挖礦 — 獎勵制度

現在比特幣區塊鏈每過 10 分鐘,就會產生 12.5 枚比特幣,也就是「礦」。

我們常常聽到的「挖礦」這個詞,意思就是使用自己的電腦,執行一個運算程式。使用者付出電腦的運算能力、電力及時間,相對應的就有機會獲得比特幣作為獎勵。

比特幣挖礦的運作機制,就像是以前在礦坑內挖礦的礦工。他們付出勞力及時間,但有機會獲得黃金作為回報。因此,當比特幣的價格越高時,就會有越多人願意貢獻自己的電腦運算能力,加入比特幣區塊鏈。

簡單來說,挖礦就是一套獎勵制度,讓原本與比特幣區塊鏈毫無相干的人,願意因為賺錢而投入資源。你可能會好奇,這個運算程式究竟是在算什麼,為什麼需要吸引這麼多人投入大量的運算資源和電力呢?

防止惡意攻擊 — 工作量證明

這些加入挖礦行列的電腦,事實上是在執行工作量證明(proof-of-work)的運算。工作量證明是比特幣區塊鏈用來決定誰挖到礦、誰是做白工的機制,挖到礦的人必須負責記帳。

工作量證明的運作機制很簡單,就是電腦運算能力強的人,有比較高的機率挖到礦。你可以把它想像成射箭比賽,擁有一把好的弓,會有比較高的機率命中紅心。第一個命中紅心的人,就能夠獲得 12.5 枚比特幣作為獎勵。如果 1 枚比特幣是 1 萬美金的話,就是 300 多萬台幣了。

於是,每個人當然就會開始搶購最頂級的弓,為的就是能第一個命中紅心。對應到比特幣挖礦,就是每個人會去購買運算能力更強的電腦,為的就是第一個挖到礦。因此,在比特幣區塊鏈上擁有記帳權力的人,很可能是運算能力強大的礦工。但最終是否命中紅心,還是得看運氣。

工作量證明就是透過比運算能力的強弱搭配機率,建立起一道安全壁壘。如果駭客想要對交易紀錄動手腳,就必須先有強大的運算能力,搭配很好的運氣才行。

你可能會問,擁有強大運算能力的人也可能是壞人啊?這就不是工作量證明的範疇,而是比特幣區塊鏈獎勵機制的設計。它的設計是讓擁有強大運算力的礦工,做好事的回報會比做壞事更高。如此一來,就能確保區塊鏈的安全。

匿名交易

在傳統的線上交易中,銀行掌握了交易者、時間、以及金額等重要資訊,並且決定了第三方取得交易細節的權限。

而比特幣交易因為缺乏實名認證,因此大眾無法得知交易雙方是誰。這就像是一個人可以擁有多個 Email 帳號,大家只能知道哪些帳號在進行交易包含時間和金額,但是很難帳號背後的操作者是誰。

不過,說比特幣交易是犯罪者的天堂,是有點誇大了;因為過去販毒者透過現金交易,是連交易紀錄都沒有。但是,在比特幣區塊鏈上至少還有交易時間、金額可以追溯,政府可以透過其他方式,追蹤到發送交易者的 IP 位址,交叉比對後還是有機會找出幕後的操作者。

只是,現在這些交易者的資訊不再掌握在銀行手上了。

理解區塊鏈的第一步

至此為止,我已經把中本聰的〈Bitcoin: A Peer-to-Peer Electronic Cash System〉這篇論文解讀完。比特幣是這波區塊鏈應用之中最知名的,把這篇原始論文讀完,以瞭解區塊鏈在不同領域上的應用,會很有幫助。

論文內還有幾個面向,因為屬於技術細節,所以在此因此跳過;例如如何回收佔用的記憶體空間、以及證明為何比特幣系統被攻破機率很低的計算過程等等。如果看完這篇文章之後,您對比特幣論文的原著和技術面有興趣,請下載論文原文(PDF檔)。

比特幣的缺點

說完中本聰的論文,總算可以說說比特幣的運作現況:現在已經很少人在挖比特幣了。

比特幣從 2009 年開始運作到現在,其實出現了不少缺點。例如比特幣系統每隔 10 分鐘才更新一次帳本,交易速度被嫌太慢;或是部份「礦工」為了提高挖礦效率,而客製出專門挖比特幣的硬體,稱為 ASIC(Application-specific integrated circuit)。

ASIC 的挖礦運算能力遠比普通電腦強、體積小、而且更省電。擁有 ASIC 的礦工,因為運算能力比其他電腦強太多,反而破壞了區塊鏈假設「每台電腦運算能力差不多」的分散式設計,使得攻擊者只要攻破少數幾個運算能力強大的礦場,就會讓比特幣區塊鏈變得不安全。

所以,其實現在已經沒什麼散戶礦工在浪費電力和運算資源,來跟擁有 ASIC的礦場爭搶比特幣了。

最近,大家都轉場去挖以太幣(Ethereum)了;因為以太幣改善了比特幣的缺點,而且應用不再僅限於金融領域的匯款上。

arrow
arrow

    花心大少 發表在 痞客邦 留言(0) 人氣()