1. 程式人生 > >區塊鏈之區塊鏈是什麼?圖解區塊鏈+技術要點+應用領域

區塊鏈之區塊鏈是什麼?圖解區塊鏈+技術要點+應用領域

文章目錄


在今天,無論商業圈、科技圈還是金融圈,最熱的詞彙無非只有一個,那就是“區塊鏈”, 下面介紹一下區塊鏈的當下現狀、一些區塊鏈基本詞彙的掃盲講解以及未來科技領域的新趨勢和開發人員需掌握的知識體系。

1. 當下現狀

1.1 國家直推

2018年3月12日,工信部宣佈“區塊鏈和分散式記賬技術標準化委員會”成立。代表國家承認區塊鏈技術本身,雖然現在區塊鏈的概念被炒作的很神話,很多人用區塊鏈行業的發行代幣進行投資甚至投機,但是技術無罪!區塊鏈是一種新型的解決資料安全的一種解決方案。
工信部成立區塊鏈委員會



1.2 市場需求

在這裡插入圖片描述
一線城市崗位居多,北京為首。上海,深圳,杭州也在逐步增加。


2. 區塊鏈-中心化與去中心化是什麼意思?

既然區塊鏈如此之火,那麼它的概念到底是個啥呢,我們可以用幾個場景給讀者們還原一下。首先我們要了解兩個詞彙,“中心化”與“去中心化”。

2.1 資訊公正問題

為了解釋這兩個詞,我們先構建一個場景,如下圖所示。
在這裡插入圖片描述
有一天一個男孩對一個女孩說,“願意愛你一生一世”,這個誓言傳送了給了女孩,女孩居然真信了。但是男孩過幾天突然就變卦了。如下圖所示。

在這裡插入圖片描述
當男孩提出說分手的時候,他之前承諾的誓言“願意愛你一生一世”將毫無意義,而且對之前的誓言不需要承擔任何的責任,因為“願意愛你一生一世”這句話,沒有任何人可以作證

。那怎麼去解決這個問題呢?有兩種方式可以解決,一種是中心化的方式,另一種就是去中心化的方式。

2.2 “中心化”解決資訊公正問題

我們可以通過傳統的"中心化"方式解決以上問題。怎麼解決,之前不是沒有人證明麼,我們找一個公認的公平人物不就可以了嘛,比如大公無私的包青天,在男孩向女孩表白的時候,讓包青天證明不就可以了嘛~這樣,當有一天男孩變心反悔,女孩可以找包青天爺爺作證,當然也可以找一些權威的機構去證明這件事。這就是用中心化解決了資訊公正的問題。
在這裡插入圖片描述

2.3 “去中心化”解決資訊公正問題

“中心化”方式雖然解決了資訊公正的問題,但是也會有一系列的弊端。有啥弊端呢? 你把全部的依託都壓在包青天爺爺身上,人家包青天也是人啊,他也會掛的。就是他長生不老,他也是人類,擁有七情六慾,他也會被男孩用200塊錢買通,而說假話。所以將所有的公正權威交給某個中心化的體制管轄,是有一定風險的,而且維護這個體制的公正的成本也會越來越大

那麼怎麼解決這個問題呢?

我們可以用一種新的方式,叫做“去中心化”方式
在這裡插入圖片描述

如果男孩向女孩表白的時候,女孩將男孩的某事某刻“愛你一生一世的”聊天記錄,轉發到微博、朋友圈、QQZONE、抖音甚至是快手。那麼這個誓言將被全世界的人所知道,那麼所有的吃瓜群眾可能都是你的證明人。

這樣除非全世界的吃瓜群眾同一時刻掛掉,或者男孩要買通所有的人,來更改他之前說過的誓言,但那幾乎是不可能發生的事情。

綜上, “去中心化” 徹底解決了“資訊公正” 的安全問題!


3. 區塊與區塊鏈是什麼?

那麼,去中心化這個詞,我們理解了,那麼它和區塊鏈又有啥關係呢?

我們通過去中心化解決的資訊公正問題,可以打成一個包裹,裡面包含(發出資訊的人,收資訊的人,需要被公正的資訊,和發起的時間), 我們把這個包裹定義稱作,叫一個"區塊"。那麼這個世界上,每天需要被公正的資訊,不只有一個,很多通過去中心化得到的包裹,都會得到一個對應的“區塊”。
在這裡插入圖片描述

這些區塊會每時每刻在全世界各個地方被生成,如果將這些區塊通過時間軸穿在一起,就會得到根據時間排序的區塊集合,我們就稱他們是一個“區塊鏈”了
在這裡插入圖片描述

那麼每個人都會擁有區塊鏈,而且每個人手裡的區塊鏈都是一致的
在這裡插入圖片描述

這樣,如果有一個區塊,裡面包含的事件是某日小One向小露借1000元。這個資訊被公正,打包成一個區塊,放在區塊鏈中,然後每個人手裡的區塊鏈都會加入這個區塊的資訊。那麼當有一天小One不想承認這個區塊的資訊,他可以銷燬自己手裡所對應的區塊,但是他並不能夠去修改其他人手裡的區塊鏈,這樣小One無法在同一時刻篡改所有人手裡的區塊資訊,資訊得到了永遠的公正
區塊鏈不可篡改


4. 區塊鏈有哪些可應用的領域呢?

4.1 金融領域

所有人的財產證明,將不只有銀行說了算,你的個人價值將永遠保值!

4.2 司法領域

每個人的不良記錄將永遠不能被銷燬,樹正公民良德!

4.3 社交領域

比如:戀愛表白區塊鏈應用app。男生如何證明到底有多愛她,只要你敢把你的誓言,放在表白App裡。

4.4 行政領域

比如:我們每個人的納稅。但是稅到底花在什麼地方,花多錢並不知道,讓國家稅透明化,每筆交易記錄去中心化,有助於徹底解決腐敗。

4.5 商業領域

雙11商品限時秒殺!所有的秒殺記錄在區塊鏈裡,防止內部員工內定。 區塊鏈技術可以淨化複雜不可信的世界!徹底解決人與人之前的信任問題!


5. 區塊鏈開發技術包括哪些呢?

5.1 區塊鏈技術崗位技能要求

我們再來看一組boss直聘上統計的資料,目前在招的區塊鏈崗位主流的語言是Go和C++語言,早期的區塊鏈系統和應用程式主要是以C++實現,現在多數公司在打造自己的公鏈系統都會選擇Go語言作為實現。
在這裡插入圖片描述

5.2 Go語言與區塊鏈

為什麼Go語言會成為區塊鏈的主流程式語言呢?Go語言來自Google,創建於2009年,英文名字叫Golang,中國人翻譯的很直接,“夠浪”(Golang)。Go語言的開發者被稱作Gopher(地鼠), 當然也有很多開發者喜歡自嘲,直接稱,“I am 夠浪!”.
在這裡插入圖片描述

Go語言有三個特性,開發速度快,併發性好,程式設計簡單。Google在創立Go語言的初衷就給Go語言定義為:“簡單快樂的開發高效能程式。”
在這裡插入圖片描述

因為區塊鏈系統開發涉及到算力及應用,這些C++語言自然可以解決,但是繁瑣的開發成本過高,用其他上層語言,如java、python等雖然能降低開發成本,但是效能及區塊鏈的算力又跟不上,所以很多企業在開發區塊鏈技術的時候,就會選擇開發成本低並且開發效能客觀的Go語言作為首選語言。

我們發現,幾乎大多數以上的崗位均需要掌握Go語言,並且區塊鏈的體系多偏向後端程式語言體系,多數崗位要求具備密碼學、安全協議及對安全認證演算法有一定了解

5.3 區塊鏈開發方向

目前市場對於區塊鏈開發的技術方向已經逐步清晰,主要分為區塊鏈上層應用開發區塊鏈底層系統開發。上層應用開發涉及到的語言比較廣泛,如Go、Solidity、Java、C++、Python、node.js等。但是有關區塊鏈底層系統開發,多數Go語言為主,或者C++語言開發。
在這裡插入圖片描述

區塊鏈架構
在這裡插入圖片描述

6. 結語

區塊鏈的目的是構建一個點對點的生態,解構權力帶來的不對稱。它本身只是一個共享的總賬本,不同於網路中多節點自己記賬,再對賬,這就瓦解了中心權力。






作者:黑馬程式設計師
來源:https://zhuanlan.zhihu.com/p/35855357