2009年中本聰發表論文《比特幣-一種點對點的電子現金系統》以後比特幣橫空出世,比特幣誕生至今的9年時間幣價增加了200萬倍,2016年至今區塊鏈行業也產生了爆炸式的增加,愈來愈多的人開始關注區塊鏈行業,想要深刻了解區塊鏈,中本聰當年的論文是不可錯過的重要資料,區塊鏈行業至今的不少重要創新都源於這篇論文,對該論文的研究,有助於咱們更快的瞭解比特幣,瞭解區塊鏈。html
中本聰論文中,比特幣首先解決了交易中交易信任,隱私保護和交易欺詐等問題,其次以低成本的運營方式,對於運營參與者給予合理的回報,最終造成一套去中心化的自運行的金融系統。獨創了交易哈希值,工做量證實,時間戳等區塊鏈關鍵技術,往後被區塊鏈其餘項目沿用至今。如下內容是關於中本聰論文的解讀:網絡
1.交易信任electron
交易中最核心的問題是信任問題。區塊鏈
在傳統的商業中是靠可信的第三方中介來解決的,好比淘寶購物依靠支付寶解決信任問題,金融借貸經過銀行解決信任問題。加密
而比特幣經過交易雙方的公鑰和私鑰肯定交易者的身份,並獨創了公開廣播的形式來解決信任問題。系統授予並記錄交易雙方惟一的交易序列,以後進行全網的廣播,被整個系統中的全部參與者見證。spa
2.交易欺詐設計
傳統商業中,銀行做爲可信的第三方中介服務於各類交易中,但經常由於支付和結算的時間差,遇到欺詐的問題。好比,空頭支票,假支票等問題。爲了解決交易欺詐,銀行等傳統機構花費了大量的成原本解決該問題,好比先對單在付款,好比延長付款期限,好比使用高科技手段來認證交易者身份等等。htm
交易欺詐的問題在比特幣網絡中一樣可能存在,即便進行全網的廣播,也可能會出現A轉帳到B以後,在交易未結束前把一樣一筆資金在轉帳給C的問題,中本聰在論文中提出了時間戳的概念,每一筆交易的隨機散列加密數據+時間戳肯定了交易的惟一性,全網廣播以後一筆筆交易就造成了一個鏈條式的帳本,以前的交易沒法更改,從而杜絕了交易欺詐的問題。blog
3.隱私保護支付寶
交易中的雙方的公鑰是匿名的,網絡中的參與者被公告的信息是:某我的將必定數量的貨幣支付給了另一我的,可是難以將該交易同某個特定的人聯繫在一塊兒,也就是說,全網中沒有人知道交易雙方到底是誰。和股票交易相似,股票買賣者的交易數據是公開的,好比在什麼時間某一股票被買賣了多少數量,而買賣的身份信息是隱匿的,即咱們並不知道誰參與了交易。
1.系統成本
傳統商業中,銀行系統的維護須要大量的人力物力成本,好比辦公場地,人員工資,安保成本,網絡系統等等。
比特幣設計時,中本聰設想了一個不須要中心化維護的互聯網系統,也就不須要組織結構,不須要固定的人員工資的系統。而系統運營人員的成本又經過系統自運營中產生的獎勵完成,從而實現了系統的自動運行。從經濟學的角度,這是最低程度消耗資源,最低成本的運營方式。
2.系統的自運行
開發者和礦工做是比特幣系統的核心,比特幣系統的開發在中本聰消失前基本完成,在此以後系統的演進工做都是社區在中本聰開發的基礎上進行的修補。
而比特幣系統運營中最關鍵的鑄幣和記帳工做是經過礦工完成的,礦工經過鑄幣和記帳得到相應的獎勵來保證礦工有足夠的工做積極性。
對於鑄幣獎勵,論文中是這樣定義的:「每一個區塊的第一筆交易進行特殊化處理,該交易產生一枚由該區塊創造者擁有的新的電子貨幣。這樣就增長了節點支持該網絡的激勵,並在沒有中央集權機構發行貨幣的狀況下, 提供了一種將電子貨幣分配到流通領域的一種方法 」
記帳獎勵的來源則是交易費(transaction fees)。論文中的定義:「若是某筆交易的輸出值小於輸入值,那麼差額就是交易費,該交易費將被增長到該區塊的激勵中。只要既定數量的電子貨幣已經進入流通,那麼激勵機制就能夠逐漸轉換爲徹底依靠交易費,那麼本貨幣系統就可以免於通貨膨脹」
1.去中心化
徹底經過點對點技術實現的電子現金系統,基於密碼學原理而不基於信用,它使得在線支付可以直接由一方發起並支付給另一方,任何達成一致的雙方,可以直接進行支付, 而不須要第三方中介的參與,也不依賴任何中心化的組織就能夠自動運行。
2.交易驗證
一枚電子貨幣(an electronic coin)是這樣的一串數字簽名: 每一位全部者經過對前一次交易和下一位擁有者的公鑰(Public key)簽署一個隨機散列的數字簽名,並將這個簽名附加在這枚電子貨幣的末尾,電子貨幣就發送給了下一位全部者。而收款人經過對簽名進行檢驗,就可以驗證該鏈條的全部者。
在電子系統中排除第三方中介機構,那麼交易信息就應當被公開宣佈(publicly announced)1,咱們須要整個系統內的全部參與者,都有惟一公認的歷史交易序列。收款人須要確保在交易期間絕大多數的節點都認同該交易是首次出現。
每一個交易中的每一個時間戳應當將前一個時間戳歸入其隨機散列值中,每個隨後的時間戳都對以前的一個時間戳進行加強(reinforcing),這樣就造成了一個鏈條(Chain)。交易驗證使用數字簽名+全網廣播+時間戳完美的解決了交易中的信任問題。
在進行隨機散列運算時,工做量證實機制引入了對某一個特定值的掃描工做,比方說SHA-256下,隨機散列值以一個或多個0開始。那麼隨着0的數目的上升,找到這個解所須要的工做量將呈指數增加,可是檢驗結果僅須要一次隨機散列運算。
咱們在區塊中補增一個隨機數(Nonce),這個隨機數要使得該給定區塊的隨機散列值出現了所需的那麼多個0。 咱們經過反覆嘗試來找到這個隨機數,找到爲止。 這樣咱們就構建了一個工做量證實機制。只要該CPU耗費的工做量可以知足該工做量證實機制,那麼除非從新完成至關的工做量, 該區塊的信息就不可更改。因爲以後的區塊是連接在該區塊以後的,因此想要更改該區塊中的信息,就還須要從新完成以後全部區塊的所有工做量。
1)公平有效的分配區塊獎勵
礦工之間的競爭是經過完成隨機散列運算的次數完成保證了公平有效,誰在整個區塊鏈中的工做量更多,誰得到的區塊獎勵就更多。
2)保證了區塊鏈數據難以篡改
表明誠實節點的最長的鏈包含了最大的工做量,若是想要對業已出現的區塊進行修改,攻擊者必須從新完成該區塊的工做量外加該區塊以後全部區塊的工做量,並最終遇上和超越誠實節點的工做量。工做量最多的鏈,必定是數據最完整的鏈,必定是表明了全網用戶利益的鏈。
3)控制發幣速度
硬件的運算速度在高速增加,且節點參與網絡的程度會有所起伏。爲了解決這個問題,工做量證實的難度(the proof-of-work difficulty)將採用移動平均目標的方法來肯定,即令難度指向令每小時生成區塊的速度爲某一預設的平均數。若是區塊生成的速度過快,那麼難度就會提升工做量來證實本身在鑄幣和記帳中的工做量
把傳統的消耗資源挖礦的方式應用到比特幣系統中,比特幣系統的挖礦消耗的資源是CPU的運算時間和電力資源。
對於礦工的激勵是發掘出新區塊獎勵的比特幣,在全部比特幣挖掘完畢以後,比特幣系統的高額手續費成爲礦工持續工做的動力。
比特幣系統誕生已經9年了,如今來看當初關於系統設計的論文,也不得不讚嘆該系統設計超越時代的先進與嚴謹,比特幣從最初的試驗品,到小範圍應用,到如今成爲市值600億美圓的準商用系統,經歷了無數次考驗。
可是比特幣做爲一個金融系統運營至今,隨着愈來愈多的人使用,比特幣網絡擁塞的問題也愈來愈嚴重,擴容之爭給比特幣的將來蒙上了一團迷霧;算力集中於幾大礦池也讓比特幣網絡愈來愈中心化;幣價上漲致使的算力的暴漲問題,讓挖礦耗費的電力資源愈來愈多;早期參與者的持幣成本和如今及將來參與者的持幣成本的巨大差別致使的貧富不均等等問題,在將來都須要比特幣的持有者,比特幣網絡的使用者,比特幣系統的開發者,礦工們共同去解決。
隨着互聯網的發展,全球經濟格局已經從線下實體經濟愈來愈多的轉變爲互聯網虛擬經濟。過去主要的財富來源是物質資產,好比房地產,礦產資源,實物商品,如今的主要財富來源則是知識,信息和金融,實體經濟中創造的財富也在逐漸向互聯網轉移,比特幣系統創造的代幣做爲區塊鏈應用的核心,承載着區塊鏈項目的價值,也提供了實體經濟中創造的財富向互聯網轉移的機會。
也許正如以前老貓說過的:區塊鏈的世界,一切纔剛剛開始。