讓你聽過區塊鏈
不知道大家有沒有聽過區塊鏈?有沒有了解過區塊鏈?有沒有開發過區塊鏈?當然,這些都不重要,重要的是,現在開始,你即將了解“區塊鏈”,區塊鏈包括了 數學、密碼學、P2P 通信、智能合約、分布式存盤及共識演算法等知識,是多種技術共同組合而成的,
下面從實際生活的例子出發,最后,大家來告訴我?啥是區塊鏈?區塊鏈解決了什么問題?
壓歲錢?
小時候最喜歡過年了,走親訪友我們都有壓歲錢,也總是這樣的客氣,
但開心的時間總是短暫的,到家里,媽媽總會說:“紅包我就給你保管了,等你需要用到的時候再給你啊”,當然,連續了好多年,我都沒有看見過自己的壓歲錢,
當時年紀尚小,父母是我們信任的人,什么都由父母說了算,這個壓歲錢具體數額,使用日期,使用方式好像跟我們沒多大關系,都是在父母指定的規則中進行,簡單總結,這就是中心化的操作,中心可以隨意更改我們的資料,更改規則,我們都是中心下運轉的螺絲釘
就像現在我們的錢是存在銀行,因為銀行后面是國家,我們信任國家,所以把錢放到銀行,銀行就是一個中心化的機構,執行相關的政策,進行經濟的宏觀調控等,
接下來,讓我們看看什么是區塊鏈?解決了什么問題?
還是收壓歲錢,
但是幾年后的我聰明了,不相信媽媽給我保管壓歲錢,每次拿到壓歲錢,我都自己拿個小本子,把誰給我的壓歲錢,具體金額跟時間都記上;并且告訴爸爸,哥哥姐姐,爺爺奶奶,七大姑八大姨,他們都跟我一樣,記錄著誰給我的壓歲錢,具體金額跟時間等, 有一天,我有個喜歡的小女孩,她叫 LL,我向媽媽支出 100 塊錢,想要給小女孩買禮物表白,媽媽一聽?好小子,小小年紀,想法如此通透,果斷拒絕,說我的壓歲錢只有 10 塊錢!!!!媽媽還拿出了她的小本本,上面確實只有 10 塊錢,
9 龍表現得例外冷靜,超出同齡人的沉著,化身福爾摩斯-龍,緩緩拿出了我的小本本,上面清楚記錄著我的每一筆壓歲錢(記錄著哪位親戚給我的,具體金額是多少),媽媽開心的笑起來,表現出自己兒子是天才般的浮夸,很快,她的理智戰勝了,說我記假賬!!!!這時候又讓我想起我小時候經常問的問題:“媽媽,我是從哪里來的?”
我笑了笑,接著在“相親相愛一家人”群里給大家說,“請大家帶上我壓歲錢的小本本,來我家客廳一下”,大家都是愛我的,很快就來了,長輩們的小本本上都記錄著我每一筆壓歲錢,并且跟我的小本本記錄的一模一樣,那場景,例外尷尬啊,媽媽立刻從包里給了我 100 塊錢,這時,我跟每一位長輩都在自己的小本本上記下:媽媽,,年,,月,,日給了 9 龍 100 塊錢, 9 龍拿著錢,蹦跳著向商店跑去,
太棒了,這就是 amazing,我們再來分析一下這其中的關鍵,家中的每一個人都幫我記錄每一筆壓歲錢的來歷:包括誰給我的,什么時間,具體金額等, 這就是“去中心化”,大家都在幫我記錄,記錄著我的每一筆入賬與出賬,誰要是修改了自己的小本本,我們就可以找大家來核對一下每個人的小本本,就可以知道誰的賬本上錯誤的,而大多數人的賬本都是一致的,
其實這就是區塊鏈最核心的東西,去中心化,資料不可篡改,所以信任賬本(少部分人篡改后,大部分誠實的人資料都是一致的,我們相信大多數),
區塊鏈的實質是一個去中心化的分布式資料庫,只支持以資料增加的方式來更新賬本,每一次更新都是以交易的形式進行,所以可以追溯余額的變化原因,每筆賬單的來源與去向, 因為不可以更改其中的某一筆交易,也不可以洗掉資料,所以我們每個人都信任自己記錄的小本本,信任著自己的賬本,當你對自己的賬本有質疑時,可以叫大家一起來互相核對,查看賬本是否有問題,
所以區塊鏈根本解決的是什么問題?
我認為根本解決的是信任問題,如何讓互不認識的雙方很放心地進行價值轉移, 基于區塊鏈的特性:去中心化、資料不可篡改,
聰明的你,應該也看出了要想實作區塊鏈需要很多條件才行,下面我們來看一看,
區塊鏈實作需要克服的問題
我們從上面的例子可以看出一些問題,這里只是說一些大方向的問題,畢竟此篇不涉及技術,后續的文章會詳細說明的,請耐心等待,持續關注,
- 可以看出,記賬的人越多,其實越安全,可能記賬的人分散在世界各地,彼此不認識,如何讓大家都知道彼此什么時候獲得多少壓歲錢,誰給的呢?
- 如何保證大家知道的此條賬單資訊來源的真實性?(是否傳輸程序中被人篡改)
- 如何保證在有人會修改賬單,或者轉發已經修改的虛假賬單給別人時,別人如何處理此賬單?
- 如何保證大家都會按照約定的規則進行記賬呢?確保都會將賬單加入到自己的資料庫中,
- 如果有人串通好一起更改賬本,并且廣播這個更改的賬本,這時候又怎么處理呢?
- 我們先說第一個問題:如何讓世界各地的人互相都知道自己的壓歲錢來歷,金額等,這就是P2P 通信(peer to peer),點對點的傳輸,雙方都是直接發送訊息給對方,p2p 是區塊鏈的基石,所有的操作都得靠 p2p 來完成,(引入 p2p 就會有很多網路問題,比如網路磁區)
- 第二個問題:可以采用非對稱加密演算法,使用私鑰進行關鍵資料簽名;公鑰及原始資料,簽名進行驗簽,這樣就可以驗證資料是否與來源對應,資料是否被篡改,
- 第三個問題:其實問題二說明中,可以驗證此賬單是否被修改,如果被修改了驗證不通過,丟棄此賬單,等待正確賬單的到來,或者向已經連接的其他人索要賬單,
- 第四個問題:大家都按照某種規則來驗證此賬單的有效性,最簡單的做法可能通過投票,大家都來表決是否此賬單有效并進行記錄,這一步就是所謂的共識,即大家都對此賬單的有效性進行表決,是否接受賬單,共識是基于 P2P 通信的,所以可能會出現網路故障、網路磁區;更甚其程序會有作惡的人篡改賬單,廣播假的賬單,或者一會同意一會不同意等搗亂行為,影響共識的進行,這就是分布式事務問題,如何在分布式場景中對某一個值進行共識,來達到大家都對這個值一致的處理結果——都同意或者都不同意,或者滿足指定的規則下允許少部分的人可以與大家的結果不一致,對于分布式一致性演算法:有 2PC、3PC、PAXOS、PBFT、RAFT 等,還有區塊鏈特有的 POW、POS、DPOS 等,以后慢慢道來,
- 第五個問題:這個問題其實也是屬于共識范疇,但可以知道的是,我們是相信大多數人的賬本,如果大多數人都接受一個更改后的賬本,反過來說,這個“錯誤的賬本”其實就是正確的,被大家所共識后并接受的,
區塊鏈分類
區塊鏈根據需求劃分為三類
- 公有鏈:指所有人都可以參與,可以隨時上下線;
- 聯盟鏈:想要加入的人或者機構需要進行 CA 認證,即需要經過現有聯盟鏈中節點的審批,滿足定義的背書策略即可;退出亦然,
- 私有鏈:不允許其他人加入退出,或者只有經過許可的才能加入,但是其他的人沒有決定權,完全由私有鏈決定如何處理交易等,我理解私有鏈已經不能稱為區塊鏈鏈,就是一個中心化的分布式賬本,
位元幣?以太坊?EOS(柚子)?
或許你聽過這些名字,也聽說了是基于區塊鏈的加密數字貨幣,
但我強調!!!!!位元幣、以太坊、EOS 等數字貨幣,不等同于區塊鏈,它們只是區塊鏈的一種應用,
位元幣是區塊鏈的第一個應用,并且經過時間驗證,是可行的,現在還在正常運行,沒有任何中心化的機構運行,全靠位元幣區塊鏈網路中的節點來共同維護,
分布式賬本——Hyperledger Fabric
Hyperledger 是一個開源社區,致力于為企業級區塊鏈部署開發一套穩定的框架,工具和庫,旗下有很多開源的產品,最出名的非屬 Fabric,是可商用的聯盟鏈框架,國內也是主推聯盟鏈的發展,聯盟鏈才是可真正承接業務的區塊鏈,公鏈暫時還沒有找打比較好的商用場景,如果大家對區塊鏈感興趣,建議向聯盟鏈方向發展,
國內的聯盟鏈框架
以下排名不分先后(狗頭保命)
- XuperChain:百度完全自主研發的聯盟鏈框架,github 地址:https://github.com/xuperchain/xuperchain
- FISCO BCOS:由微眾銀行牽頭,眾多企業參與研發,基于 ethereum 進行研發的聯盟鏈框架,github 地址:https://github.com/FISCO-BCOS/FISCO-BCOS
- CITA:CITA 由秘猿科技開源, 是一個開源的區塊鏈作業系統內核,以高穩定性,高性能,高可擴展性為設計目標,gi thub 地址:https://github.com/citahub/cita
- 梧桐鏈:由蘇州同濟區塊鏈研究院進行研發,基于開放標準研發的聯盟鏈平臺,聚焦行業、結合聯盟、服務社區,github 地址:https://github.com/tjfoc/wutongchain
說到聯盟鏈,怎么能不說智能合約呢
智能合約(英語:Smart contract )是一種旨在以資訊化方式傳播、驗證或執行合同的計算機協議,智能合約允許在沒有第三方的情況下進行可信交易,這些交易可追蹤且不可逆轉,智能合約概念于 1995 年由 Nick Szabo 首次提出,
可以理解為某個系統中,達到了某個條件后自動觸發執行的程式, 智能合約已經提出很多年了,但為什么都沒有應用,直到以太坊的出現?因為智能合約是自動執行的程式,如果運行其的系統不可信,那系統可能在智能合約運行程序中更改運行狀態,這就與合約的概念背道而馳,直到區塊鏈的出現,以太坊將智能合約引入到了區塊鏈中,使用區塊鏈的不可篡改特性提供了可信的運行環境,智能合約才能得以應用,
靈魂拷問?
- 什么是區塊鏈?你可以用自己的話給別人說清楚嗎?
- 存在即合理,為什么會產生區塊鏈?區塊鏈解決什么問題?
- 區塊鏈涵蓋哪些主要知識?有什么分類?
- 你理解了區塊鏈是什么之后,你有什么好的想法或者應用場景?
這篇文章是區塊鏈的入門文章,之后的文章會偏向底層技術一些,拭目以待吧,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/2182.html
標籤:區塊鏈
上一篇:母鐘服務器,時鐘服務器,GPS北斗網路時間服務器-京準電子科技
下一篇:fabric2.0 配置全攻略
