小白學區塊鏈技術

最近看文章時,發現FL經常和區塊鏈相結合,可惜小孱弱上了三年大學也只是聽說過區塊鏈,並沒有真正瞭解過,簡單的學習一下,否則論文也看不下去了。

區塊鏈就是通過密碼學的方式形成的一個由集體維護的分佈式數據庫。

聽不懂?沒關係,且往下看…

在解釋區塊鏈具體是什麼東西之前我認爲最核心的是要知道“我們爲什麼要用區塊鏈技術”。

1、區塊鏈的誕生是爲了解決什麼問題?

在支付寶轉賬的時候,作爲用戶的你感覺是把你的錢直接打到對方的賬戶中。但!…事實是這樣的:
在這裏插入圖片描述
這裏的支付寶等公司就是“第三方”,那爲什麼我們倆轉賬爲什麼要有一個“第三方”出現?
在這裏插入圖片描述
這是阿里巴巴的紀錄片《造夢者》中的一段話,ps:下文會多次引用,就可以很好解釋“第三方”這個名詞,這也是淘寶和支付寶誕生的伊始。換句話說,當時的阿里是被逼做了這個“第三方”,因爲當時沒有任何一家公司能夠擔任這樣的角色,於是阿里成爲了信任的中心,商家和用戶因爲“信任”,選擇把錢給阿里。但是,如果阿里攜款潛逃了(儘管不可能…)或者財務運營商出了問題(畢竟是人嘛…)怎麼辦?如果有一個機器或者一個“超級系統”來做這些事就好了!在互聯網技術更新替換了十幾年後的今天,區塊鏈出現在我們面前,沒錯!它就是那個“超級系統"!一個信任的機器。

有了區塊鏈,事情開始變得不一樣了。

傳統中心化的方式:
在這裏插入圖片描述
而區塊鏈,被稱爲去中心化的方式
在這裏插入圖片描述
在去中心化的網絡下,每個用戶之間都可以是直接聯繫的,不再有任何第三方的參與,用戶間的轉賬就像手遞手付現金一樣,這也是爲什麼比特幣會被稱爲”電子現金“。

好了,現在A已經把錢轉給B了,那麼誰來記這筆賬呢?之前有支付寶幫我記賬對賬,會統一存在支付寶後臺系統中。爲了讓所有用戶的交易都被記錄下來並且賬目都是正確的,支付寶會爲此付出巨大努力。看看支付寶的初期…
在這裏插入圖片描述
每天1000筆的賬單,人工對賬就已經很痛苦了。以現在支付寶的體量,每天少則幾十萬的賬單,即使是系統對賬也難免漏單,並且要付出相應的人力、物力來維護這一套非常複雜的收支清算系統。說了這麼多,那區塊鏈是怎麼對賬的呢?答案是:沒有!在區塊鏈的網絡中根本不需要對賬,零清算,因爲區塊鏈中的每一個節點(就是一臺計算機或理解爲一個用戶)自己都有一個賬本,這個賬本是實時更新的,區塊鏈網絡中發生的任何交易都會被記到你自己的賬本中,沒錯,別人的帳你也有,但是你是不知道這個人是誰的,因爲他們統一都長這個樣子:

0x d7a8fbb307d7809469ca9abcb0082e4f8d5651e46d3cdb762d02d0bf37c9e592

這就意味着,以前由一箇中心化的機構幫你記賬對賬,現在由每一個網絡中的參與者幫你記賬,大家都有同一個賬本。如下圖
在這裏插入圖片描述
每個人擁有同一個賬本,即使你篡改了你自己的賬本,讓你的賬上多了1億,可是51%以上的賬本中你的賬戶還是1分錢,那就說明你的帳上餘額就是1分錢,無法抵賴。當然,如果你能控制網絡51%的人在賬本中幫你把一分錢變成1億,你就能獲得一億,但基本上就要動用舉國之力了…騷年,你確定你可以?

這就是爲什麼大家說區塊鏈網絡是安全的,因爲攻擊成本太過巨大,打個比方:比特幣現在市值80億美元,如果你想攻破它並得到這80億美元,你可能要花費200多億美元…

說了上面這麼多其實就是想說明區塊鏈的幾個特性:

  1. 去中心化,沒有第三方中介,一切都由程序來完成。
  2. 安全性,主要體現在分佈式、51%攻擊,即使一個節點被攻擊或宕機也不會影響網絡的運行。
  3. 最核心的就是:去信任。一切社會行爲都要建立在”信任“的基礎上,這也是區塊鏈解決的最根本的問題。

區塊鏈的運行方式

首先,中本聰很清楚建立一個支付系統的信用必須解決防止“重複支付”問題,也就是不能造假幣。中心化的信用系統是靠國家機器防止造假幣。“比特幣”怎麼辦呢?中本聰的偉大創新是給每一筆交易“蓋時間戳”(timestamp)。每十分鐘一個區塊(block:相當於網絡賬簿),把這十分鐘的全網交易都正確的蓋上時間戳。問題是誰來蓋呢?中本聰並沒有假設互聯網上都是雷鋒,他同意亞當.斯密的觀點:市場上的人是貪婪的。他讓所謂自稱“礦工”的人去競爭這十分鐘一個區塊的記賬權,競爭的規則就是正確記賬的同時要去解SHA256難題,誰能證明自己的計算機算力最快(所謂PROOF OF WORK 機制),ta就能競爭到這十分鐘區塊的合法記賬權,並得到二十五個比特幣的獎勵。這就是所謂俗稱的“挖礦”過程,實際是建立一個全網總賬——區塊鏈的去中心化信用過程,所以礦工更本質的職能是“記賬員”!

中本聰在其比特幣白皮書中,比較詳盡的敘述了這個信用系統建立的過程:

第一步:每一筆交易爲了讓全網承認有效,必須廣播給每個節點(node:也就是礦工);

第二步:每個礦工節點要正確無誤的給這十分鐘的每一筆交易蓋上時間戳並記入那個區塊(block);

第三步:每個礦工節點要通過解SHA256難題去競爭這個十分鐘區塊的合法記賬權,並爭取得到二十五個比特幣的獎勵(頭四年是每十分鐘五十個比特幣,每四年遞減一半);

第四步:如果一個礦工節點解開了這十分鐘的SHA256難題,ta將向全網公佈ta這十分鐘區塊記錄的所有蓋時間戳交易,並由全網其他礦工節點核對;

第五步:全網其他礦工節點核對該區塊記賬的正確性(因爲他們同時也在蓋時間戳記賬,只是沒有競爭到合法區塊記賬權,因此無獎勵),沒有錯誤後他們將在該合法區塊之後競爭下一個區塊,這樣就形成了一個合法記賬的區塊單鏈,也就是比特幣支付系統的總賬——區塊鏈。

一般來說,每一筆交易,必須經過六次區塊確認,也就是六個十分鐘記賬,才能最終在區塊鏈上被承認合法交易。以下是比特幣的記賬格式:

所以所謂“比特幣”,就是這樣一個賬單系統:它包括所有者用私鑰進行電子簽名並支付給下一個所有者,然後由全網的“礦工”蓋時間戳記賬,形成區塊鏈。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章