深入淺出區塊鏈系統:第一章
what you should know about blockchain
考慮的大家現在很多都是碎片化閱讀,不知道大家如何,反正如果我是在在只有很短一段時間里,不太容易切換狀態靜下心來讀一篇洋洋灑灑的長文章。因此此系統會保持短小精悍,把整套分成一系列小文章,每個文章有分成若干個段(sections)。既KISS原則,查看這里什么是KISS.
目前區塊鏈(blockchain)
應該是在最近比較火的新技術之一了,這個不光在銀行金融行業,也在其他諸多行業逐漸成為熱點。區塊鏈基于被認為是繼互聯網之后最重要的技術發明之一
。看到過很多關于區塊鏈的文章,要么是太過于學術,要么又局限于某個行業領域。對于一般人來說不太容易去理解其所以然。因此,筆者提筆自己寫一個關于區塊鏈的系列文章,以方便大家。
比特幣
說到區塊鏈就不得不提比特幣。在進入討論blockchain之前,先上張圖片。
這個是在說雷曼兄弟公司的破產,背景是發生于2008年金融危機。當時被媒體及世人厭惡的貪婪,低效的傳統金融體系垮塌,與此同時,不知道是不是巧合,比特幣(bitcoin)誕生了(其實電子貨幣已經有幾十年的歷史了)。
比特幣,就像是美元,人民幣一樣是個貨幣,只是這個是數字化的貨幣,沒有一個具體的國家或者機構管理。既然是貨幣就要拿來用,要流通。當有任何變動,就會產生所謂的 money in money out, balance changed。即這些比特幣的變動,最新的余額是多少,等都要記錄下來。在現實世界中,這些記錄在具體你的每個銀行賬戶中,由一些監管機構監視并確保準確性。
但是比特幣是個電子貨幣,沒有一個具體的營業監管機構。怎么破?
這時區塊鏈就被發明出來(大約是在2009年),區塊鏈起源于比特幣,就是當比特幣從一個人轉移到另一個人時,用于記錄這些變動。換句話說,區塊鏈(Blockchain) 就是比特幣(bitcoin)的不可變動(immutable)的記賬系統。
記賬
有人可能會覺得“記賬系統”太過于籠統,不太明白,因此首先這里說一下什么是記賬,舉個例子,你在淘寶上買東西,整個過程需要有多個記賬操作,包括可能需要在購物車里添加一條記錄,你買好了需要在商家那里記一筆賬,然后支付時需要記下一筆,快遞再需要記錄一筆。如果你買的不是一般的小東西,比如是一個房子,那樣還要在相關管理部門還要記錄一筆。
有沒有發現這個是非常低效的,需要花費很多的重復資源的過程?換句話說,這些低效都是最終都要轉嫁到我們消費者頭上。區塊鏈卻在設計之初很好的解決上面這些弊端。
什么是區塊鏈
區塊鏈是專門針對比特幣設計開發的記賬系統,用于所有比特幣的記賬。因為區塊鏈本身良好的設計,區塊鏈被服務于比特幣僅僅只是一個用例和開端,其還可以用于很多地方。
記住這幾個詞可以幫助理解什么是區塊鏈
- chain/鏈。 像下面這個圖,數據的組織是由一個一個
大小相同
的塊(block)組成一個鏈條(chain),就像是DNA里每個基因有機的組織在一起。
下面使用一個例子來解釋一下。當有如下三個操作時就會在區塊鏈中添加三條記錄。
去中心化,或者說是“分布式” , 也就是具體的這些記賬數據是分布式的散落在各個節點,而且每個節點都存有一份
所有的
交易。這樣有個好處,就是每個交易有多份副本,互相之間可以對比查對,那些欺詐,篡改數據就沒有可能了。其實,傳統金融業有一個問題就是各個金融機構間互相的不信任
,想像一下在2008年金融危機時,各個金融機構競相搶購那些credit default derivatives等產品,就是因為大家對對方的不信任所引起的。挖礦。 “礦工”,其實就是鏈中一個個能夠保存對賬信息的
節點
的別名. 當有新的對賬或者交易時,應該就是把數據寫到某個節點,然后再需要加入到區塊鏈中時。但問題是“鏈”只有一個,節點有很多,到底由哪個節點來完成這個任務呢?解決辦法就是“打”,看誰厲害。其實就是許多的礦工節點會互相競爭,使用一些非常耗費計算資源,后臺使用復雜的算法,最后使用一種叫做 PoW (Proof Of Work,是一種快速斷定工作量的技術,比如你安排工人來給把一車箱子從倉庫搬到車間,你并不需要從一開始緊盯著他去搬每一個箱子,只要看到最終的所有的箱子都已經在車間,即可證明他做完了工作,可以給相應的報酬了。這個我們在后續章節詳細解釋)的機制來決定最終哪個節點獲勝,由它有資格來寫這個區塊,并加入到區塊鏈中,同時這個獲勝的節點可以得到相應財務上的獎勵,即若干的比特幣,這也正是不斷激勵人們投入更加強大計算能力的機器來挖礦的原因。這個過程被比特幣平臺很好的控制節奏,也就是大概每10分鐘左右產生一個新的“區塊”以添加到區塊鏈路中。
可以參考https://blockchain.info/?currency=CNY, 這里是以人民幣滾動顯示當前所有挖礦的更新,下圖是此屏幕截圖。
區塊鏈的應用領域
金融業
對于金融業來說,在進行遠程轉賬時一直在使用的所謂“關系銀行”,比如你想要通過中國工商銀行給朋友在澳洲的匯豐銀行的賬戶轉賬,這時在中間可能要經過在香港的匯豐以及悉尼的銀行等多個第三方機構來中轉,不光要多花手續費,真正拿到手時可能已經1周時間過去了。如果使用區塊鏈,轉賬其實就是添加一個“對賬”信息塊并加入到區塊鏈中即可,對方銀行可以立即在鏈中發現此交易。這樣此過程就流水化(streamline)了,就跟發個電子郵件似的。 相對于之前,區塊鏈會有3個優勢,(1)不需要經過第三方 (2)快 (3)省錢
一般商業公司
設想一下普通辦公場景,一般業務處理都會涉及到許多紙制的表格,文件,請多文件的復印件等等。一是方便文件信息的傳遞,記錄,另外一個原因是為了應付內部外部的審計。如果使用區塊鏈,這些問題都得到很好的解決。比如,由于區塊鏈的系統架構,其本身數據就是自動審計的。簡言之,在這個領域,區塊鏈有3大優勢,(1)數據透明(2)數據安全性驗證(3)審計。
對于零售行業
比如說你想知道這個食品是不是有機食品,而每個環節的數據都是散落在各個地方,不便于統一追蹤。另外,數據的來源又是多種多樣,又容易被篡改,比如作為一個鉆石加工商,我是無法確定這批鉆石是不是血鉆。而“區塊鏈”本身的特性保證了可以跟蹤產品生命周期的每個階段詳細信息,而且區塊鏈的“只能添加”的屬性也確保了數據數據的準確性,不容易被后期篡改。因此區塊鏈也可以用以政府類的投票,這樣就更加具有合法性,不可能被人為篡改結果。
小結
以上的案例都涉及到一個關鍵詞 “信任”。 你不信任供應鏈路,你不信任 “相關銀行”, 等。但是你可以信任 “區塊鏈”,它是允許多個不同的機構一起協同工作,但是不需要他們之間相互信任。
FAQ (常問的問題)
這些 “區塊” 具體是什么樣子的?
首先每個區塊包含有一個時間戳,包含一個哈希碼,指向其前面鏈接的區塊,然后就是對賬交易數據本身。每個區塊都有一個唯一編號,生成這個編號是需要大量的計算工作及驗證。我們在后續章節詳細介紹此功能。
什么樣新的塊才能夠加入
當需要添加新的塊時,需要有所有節點中50%認為正確同意才可以。這樣可以保證惡意的數據被加入到鏈中。
每個節點都存一份不也是有額外的成本嗎
其實在2010年,1P (Peta byte)數據存儲一個月是 $80,000/month,預計在2020年,也就是10年后,同樣的1P的數據存儲一個月只要 $4/month. 可見,存儲本身的成本幾乎可以越來越忽略不計了。
總之,BlockChain的出現,是由于人們的預期, 技術的進步。
所有上面提到的東西,包括此文章的markdown源代碼,mindmap思維導圖等等都可以在我的github上找到。此文章是我在GitBook
上此系統的第一篇,鏈接。如果有任何建議或者想法,請聯系我。
此系列的第二章點這里
聯系我:
- phray.zhang@gmail.com (email/郵件,whatsapp, linkedin)
- helloworld_2000 (wechat/微信)
- github
- [簡書 jianshu](http://www.lxweimin.com/users/a9e7b971aafc)
- 微信公眾號:vibex