區塊鏈100講:10分鐘帶你走遍構建區塊鏈全程

image

2008年,一個叫作中本聰(Satoshi Nakamoto)的人(或團體)定義了第一個區塊鏈。git

2009年1月,中本聰將區塊鏈做爲比特幣的核心組成部分推出,它是網絡上全部交易的公共分類賬。算法

因爲使用了區塊鏈技術,比特幣成爲了第一個解決雙重支付問題的數字貨幣,它再也不須要第三方信任機構,而且成爲其餘許多應用創新的技術基礎。安全

我相信在一百年後,區塊鏈將像今天的電力同樣廣泛。它會變得像經濟體的基本組成部分同樣,爲每一個人服務。也會像水同樣日常,以致於咱們每每會忽視它的存在。網絡

能夠預料的是,在接下來的幾十年中,區塊鏈應用和組織將呈爆炸式增加,就像幾十年前的互聯網或上世紀初的電氣化同樣。數據結構

若是上述一切成真,那麼咱們頗有必要對區塊鏈有一個基本瞭解,特別要知道它們的重要性以及它們的工做機制。架構

1

區塊鏈爲何重要

「許多名人發表演講時都會提到一句名言,儘管這句話說的並不怎麼正確:咱們應該培養思考行爲的習慣。但文明的進步倒是由愈來愈多無需思索卻得以運行的重要操做推進。」併發

——Alfred North Whitehead(艾爾弗雷德·諾思·懷特海,現代著名數學家、哲學家和教育理論家)less

以區塊鏈中一方將比特幣發送給另外一方的交易爲例,該交易中諸如比特幣來源、目的地和日期/時間戳等細節會被添加到區塊中。函數

因爲密碼學的使用,區塊鏈極大地提升了社會發展的可擴展性(social scalability),個體之間愈來愈多的合做,正成爲文明的必要特徵。工具

在過去的歷史中,人類一般只以部落爲單位,在小圈子裏與有血緣關係的人交易,由於當時人類沒法信任部落以外的個體。

在過去幾千年中,各類各樣的技術創新促令人類在更大的羣體中進行合做,社交可擴展性被進一步提升。

現代法律制度的完善減小了暴力,盜竊和欺詐的發生概率,使沒有預先存在關係(pre-existing relationship)的羣體或個體以互動。

互聯網則經過評級系統(rating system),促進了預先存在不多或根本沒有社會關係的個體之間的交易。

區塊鏈有潛力將社交可擴展性提升到之前技術所沒有達到的水平。**這是咱們第一次擁有一種不須要依賴可信的第三方,卻能讓一個互聯網用戶安全地將數字資產轉移到另外一個互聯網用戶的方式。**如此偉大的交易創舉是如何誇大也不爲過的。

除此以外,數字合約、數字密鑰,以及實物資產的數字全部權,包括汽車、房屋、股票、債券,以及數字貨幣也值得深思。

2

什麼是區塊鏈技術****

咱們先來給區塊鏈技術下個定義:

區塊鏈是一種分類賬,它使用加密技術和激勵措施並以防篡改的方式記錄交易。這使匿名雙方進行信任最小化(trust-minimized)交易,而不須要可信中介。

如今,讓咱們整合這些零散的知識,以便你在文章的最後對區塊鏈技術有一個完整認識。

基元

在咱們深刻研究區塊鏈以前,須要創建一些基元。基元相似於建築材料。若是你想建造一間房子,你須要木料、螺絲、電鑽和鋸子。在你開始建造以前,最好對每一個工具都足夠了解。區塊鏈也相似。

區塊鏈的基本構成要素就是加密基元

而密碼學是研究在第三方(即敵人)的存在下安全通訊的技術。

在歷史上,軍方已經進行了大量的密碼學研究,以確保他們可以安全地進行通訊,而不讓敵人閱讀他們的電報或無線電信息。

現代密碼學被應用於網址、信用卡芯片和計算機密碼之中。它用來阻止第三方(黑客,小偷等)竊取敏感數據,如信用卡信息。

第一個基本構成要素是哈希函數。

哈希函數

哈希函數是一種容許你對數據進行加密的數學函數。

哈希函數有三個屬性:

它的輸入能夠是任意大小。

例如,我可使用「我喜歡冰淇淋」這個短語做爲輸入,或者我也可使用《戰爭與和平》的所有文本,二者都行。

不論使用任何大小的輸入,哈希函數的特定散列算法決定了其固定大小的輸出。爲了讓算法過於簡單,咱們將使用256位輸出(它是比特幣所使用的)。

不論我使用「我喜歡冰淇淋」這一短語做爲輸入,仍是使用《戰爭與和平》的全文做爲輸入,二者都會產生相同大小的輸出。

使用SHA 256算法,短語「我喜歡冰淇淋」(沒有引號)建立輸出:

138F4504A873C01D0864343FAD3027F03CA9BEA2F0109005FA4FC8C7DCC12634

從古騰堡計劃(project Gutenberg)複製的整本《戰爭與和平》(全587,287詞)建立輸出:

57027F5B3877ABBE43ACB101D59E963BC2CC0E86A6EBCCC34DFD035BBF83B096

即便輸入的文本長度相差146,821倍,你也能夠得到相同大小的輸出。這一點很酷也頗有用。

函數是可高效計算的,對於任何給定的輸入字符串,你能夠在合理的時間內得到輸出。

即便我使用《戰爭與和平》的整個文本做爲輸入,它仍然能夠在較短期內將其轉換爲輸出。

以上是通常哈希函數的屬性。通常哈希函數容許你將大量數據映射到一個小空間,這有助於存儲和處理不一樣類型的數據。

不過,咱們應把重點放在加密哈希函數上,由於它是區塊鏈中使用的函數。

加密哈希函數有三個附加屬性:

  • 抗碰撞性(Collision Resistance)

  • 肯定隱匿性(Deterministic Hiding)

  • 難題友好性(Puzzle Friendliness)

加密哈希函數

抗碰撞性

這裏的碰撞是指兩個不一樣的輸入產生相同的輸出。雖然輸出大小相同,但輸出自己不會與其餘輸出相同。「我喜歡冰淇淋」與《戰爭與和平》的整個文本產生相同大小的輸出,但字符不一樣。

若是它們產生徹底相同的輸出,你解密了我發送給你的加密文本以後,並不會知道我是想告訴你「我喜歡冰淇淋」仍是你應該閱讀《戰爭與和平》。

值得注意的是,兩個「鄰近」輸入不會產生鄰近的輸出。《戰爭與和平》的哈希與改變了一個字符的《戰爭與和平》的哈希徹底不一樣。

使用SHA 256,整本《戰爭與和平》生成哈希值:

57027F5B3877ABBE43ACB101D59E963BC2CC0E86A6EBCCC34DFD035BBF83B096

若是我刪除最後一個句點,但保留其餘全部內容,則會生成哈希值:

E2E2E4FFD582E20474F0310C2132EAE5F2D766C6A253C1BC4AF57861095B30FA

這很是相似於混沌系統中的兩個「鄰近」起點很是迅速地致使兩個徹底不一樣的將來軌跡。哈希函數的這種「混亂不規則性」會產生抗碰撞性。它的輸出幾乎隨機(理論上並不隨機),所以不太可能發生碰撞。咱們還能壓縮數據,由於它能夠將「無窮大」映射到有限空間。

這一特性在匯款時尤爲重要。錢包的公鑰是使用加密哈希函數從私鑰生成的。誰都不但願其餘人可以經過逆向工程獲取公鑰來計算你的私鑰(由於你的錢可能被偷)。

若是沒有人能找到碰撞的狀況,則能夠認爲哈希函數是抗碰撞的。從理論上講,咱們知道碰撞的存在是由於輸入的數量是無限的,但輸出的數量是有限的——只有有限種方法能夠排列64個字符。

但在實踐中,加密哈希函數SHA 256是抗碰撞的,由於沒有人發現過碰撞,而且它發生的概率是天文數字。若是人類製造的每臺計算機自宇宙開始以來一直試圖發現碰撞,那麼它發生的可能性低於地球在接下來的兩秒鐘內被巨大的流星摧毀的可能性。

因此,碰撞是可能發生的,但咱們首先還有不少其餘更重要的問題要解決。

肯定隱匿性

哈希值看起來是隨機的,但其實是肯定的。所以,它們的輸出是可重現的,只要你使用相同的輸入,就能夠持續得到相同的輸出。這意味着,知道輸入的兩方能夠經過向第三方顯示他們的哈希來驗證對方是否知道輸入。

加密哈希函數的第二個屬性是隱匿性。隱匿性意味着即使給出輸出,也沒有可行的方法來計算輸入。

也就是說,第三方觀察者沒法知道

138F4504A873C01D0864343FAD3027F03CA9BEA2F0109005FA4FC8C7DCC12634

的意思是「我喜歡冰淇淋。」

可是,若是我知道輸入是「我喜歡冰淇淋」,那麼經過檢查你的哈希,我能夠輕鬆驗證你是否知道輸入。

然而,若是其餘人看到哈希,他們就沒法使用它來計算輸入。這容許知道輸入的人使用散列後的輸出在公共頻道中安全地進行通訊,而沒必要擔憂第三方觀察者獲取信息。

難題友好性

第三個屬性是加密哈希函數的難題友好性。這意味着若是有人想要生成一個與「我喜歡冰淇淋」相同的輸出的哈希,那麼找到一個徹底符合這一輸出的另外一個值是很是困難的。

生成哈希的算法是嘗試每一個可能的字符串,按長度排序,而後按字母順序排序,直到獲得哈希爲相同值的字符串。這等因而大海撈針,因此咱們獲得的機率代表,小行星消滅地球上的全部生命是一個更緊迫的問題。

另外一方面是加密哈希函數難以逆轉(reverse)。相較於數據結構或壓縮算法中使用的哈希,這是加密哈希的主要特色。

這也是區塊鏈軍備競賽的一部分——黑客在逆向推演哈希函數方面作得愈來愈好,所以密碼學家老是得想出更強大的哈希函數。

除此以外,難題友好屬性使區塊鏈難以篡改。若是我想替換像「我喜歡冰淇淋」這樣的項,我不可能在沒有其餘參與者知道的狀況下作到。

image

被加密哈希函數散列後,輸入的微小變化也會致使輸出的顯著不一樣,從而達到防篡改的目的。

加密哈希函數看起來是隨機的(所以沒有碰撞),沒法逆轉,並隱匿輸入,但同時它們又是徹底肯定的。這就是它們有用的緣由!

這就是加密哈希函數的基礎知識,下面咱們來談談如何用這些哈希函數來構建區塊鏈。

3

區塊鏈內的傳遞哈希函數

上面關於哈希函數的部分實際上只是對如何散列單個信息(例如書籍或密碼中的單詞)的詳細介紹。

若是你想要散列數據集合(如一堆文檔或一系列交易),該怎麼辦?

讓咱們從「連續散列的線性序列」講起。首先從一些數據A開始,而後將其散列以得到A#。

如今你想「混入」數據B。因此只須要添加B(A#+ B)並獲取整個數據的哈希值。如今你有了一個新的哈希(B#),它包含一些關於A(來自你使用的哈希A#)和B的信息。

你獲得的是一個改變A或B的任何東西都會產生不一樣的最終哈希值的哈希函數。這是一個傳遞哈希函數。

image

當人們談起區塊鏈,其中一個被大量提到的詞是「信任最小化」。

通常而言,哈希,特別是哈希指針,是區塊鏈信任最小化屬性的核心組件。哈希指針只是指向某些其餘數據結構(如前一個區塊)的哈希。

這是一個了不得的組件,由於它很容易看出是否有人篡改數據。

假設咱們有一個包含100個區塊的區塊鏈,而第十個區塊包含整個《戰爭與和平》文本的哈希,我在文本中更改了一個字母,它將改變該區塊和全部後續區塊中的哈希指針。

哈希指針確保分類賬的完整性(即不被修改)。區塊鏈被稱爲三重登賬(triple entry accounting)的緣由是哈希指針這種數據結構難以被篡改。

例如,若是有兩我的在一個項目上進行協做,而一我的試圖回去修改某些東西以便他們能賺更多的錢,那麼他們的合做夥伴就會當即獲悉他們正在做弊——他們最終獲得的哈希是不一樣的。

Merkle樹

如今,咱們想要散列的不只僅是一個線性序列,而是一系列集合,好比比特幣在其區塊序列中的交易集合。那麼就須要構建的是遍歷每組數據的規則,經過再次減小問題以加密連續的一系列事物(A#,B#等)。

這裏就引出了Merkle樹。Merkle樹容許你對數據區塊進行分組並將它們一塊兒散列到一個樹枝結構中。

image

與區塊鏈同樣,只要咱們知道樹的「根」處的哈希點,咱們就能夠知道樹中任何數據是否被篡改過。

若是一個交易中的一個比特被更改,那麼它會更改後續的每一個哈希並顯示篡改。

使用Merkle樹優於僅使用記錄全部交易的摘要,由於它能更快更簡單地檢測某特殊交易是否包含在全部交易的集合中。

區塊鏈

在上文中,咱們提到了哈希函數以及它的三個屬性:抗碰撞性,肯定隱匿性和難題友好性。那麼接下來,咱們就將加密哈希函數鏈接在一塊兒以建立傳遞加密哈希函數。

首先,當咱們將一個Merkle樹添加到傳遞加密哈希函數時,會獲得一個區塊鏈。每一個區塊包含一組「merkleized」交易,而且這些區塊被連接在一塊兒。

image

區塊鏈工做量證實

中本聰的偉大在於他制定了一個新規則:你必須先解決一個很是困難的數學問題,才能將一組新交易(即一個區塊)添加到現有鏈中。

這就是「礦工」的工做。他們須要解決一個很是困難的數學問題,在解決問題後他們會收到相應的獎勵。這也被稱做「工做量證實」,它是解決問題所消耗計算量的證實。

「區塊鏈工做量證實」的發明是中本聰的最大創新。

因爲使用工做量證實,像比特幣這樣的區塊鏈變得更有價值,礦工憑此賺到更多的錢,同時它激勵更多的礦工進入網絡,固然也會增長數學問題的難度。

任何人均可以在他們的計算機上下載區塊鏈,而且連續驗證每一個區塊是否能夠正確地散列。

他們還能夠經過讀取每一個區塊的難度並驗證礦工的解決方案來計算生成此數據所需的計算量。

具備最多累積工做量證實的區塊鏈(即最困難和最昂貴的)被認爲是真正的區塊鏈。

若是你擁有包含整個當前比特幣區塊鏈的磁盤,你能夠快速地估算出用於構建這些數據所消耗的巨大能量。

這樣作的好處是若是沒有達到相應的算力,沒有人能夠「僞造」比特幣區塊鏈

至2018年中,若是從頭開始構建比特幣區塊鏈,可能須要花費數十億美圓購買計算機和電力。

數字簽名(即私鑰/公鑰加密)

數字簽名是架構區塊鏈的最後基元。可行的數字簽名方案與手寫簽名大體相同,它們都具備兩個核心屬性。

首先是可驗證性。若是我使用私鑰簽署交易,則其餘人必須可以使用個人公鑰對其進行驗證。相似的,只有你本身能夠簽署本身的簽名,但任何人均可以看到它是你簽署的。

私鑰和公鑰匹配爲密鑰對。私鑰不與其餘人共享,它用於簽署並證實交易。

公鑰則能夠提供給每一個人,他們用公鑰驗證你的簽名,而無需他們本身簽名。

你的公鑰是私鑰的哈希值。而你的地址(例如接收比特幣的地址)是你的公鑰的哈希值。

以下所示:

私鑰==散列==>公鑰==散列==>地址

因爲加密哈希函數的隱匿性,你能夠毫無顧慮地發佈本身的地址,其餘人能夠向你發送比特幣、以太幣等加密貨幣,卻沒法反向找出你的私鑰。

第二個屬性是不可僞造性。你的簽名與特定文檔相關聯。天然地,你不會但願其餘人可以從一個文件中「剪掉」你的簽名再將其粘貼到另外一個文件的底部。

比特幣使用橢圓曲線數字簽名算法(Elliptic Curve Digital Signature Algorithm)來實現這兩個屬性。其餘區塊鏈和數字加密貨幣使用不一樣的數字簽名方案,但都具備可驗證性和不可僞造性這兩個屬性。

區塊鏈相似於書籍

我認爲將區塊鏈視做書籍多是研究它的最簡單的方法。一本書是一系列頁面:

  • 數據——每頁上的文字。

  • 元數據——元數據是信息自己。在每一頁的頂部或底部,有一些關於書籍的信息,如書名,章節標題和頁碼。

區塊鏈是一系列的區塊:

  • 數據——區塊的內容

  • 元數據——對前一個區塊的引用和該區塊中包含的數據的哈希。

即使你撕下書中全部頁面,你仍能夠從新按照頁碼組合它們。

一樣,在區塊鏈中,每一個區塊都引用前一個區塊的哈希值,從而能夠驗證交易發生的順序。

哈希實際上比頁碼更強大,由於哈希包含該頁面的全部數據。而撕下一本書中的某一頁並塗改其餘相關頁碼是有可能騙過你的。

然而在區塊鏈「書」中執行相同的操做是極其困難的,由於更改頁面上的任何一個字母都會改變哈希值。

4

區塊鏈技術的演變

如今,讓咱們組合這些基元,看看它們如何構建簡單的區塊鏈。

如下這些類型的區塊鏈是比特幣和以太坊等數字加密貨幣的基礎。瞭解它們的工做原理對理解其餘全部區塊鏈和數字加密貨幣都有幫助。

Goofy Coin

GoofyCoin是咱們能夠設想的最簡單的區塊鏈

Goofy能夠隨時創造新的虛擬貨幣,而且這些新創造的虛擬貨幣歸他全部。每個幣有Goofy用私鑰簽名的惟一ID,這樣全部人均可以使用Goofy的公鑰來確認幣是有效的GoofyCoin。

image

擁有Goofycoin的人能夠經過加密操做將其轉移給其餘人。若是Goofy想要將一枚虛擬貨幣轉移給Alice,他會建立一個交易,說「將這筆錢(this coin)交給Alice」。 

由於Goofycoin只能經過加密操做發送,因此「this」是指向所討論虛擬貨幣的哈希指針。Goofy用他的私鑰簽署此交易,使其成爲有效的交易。任何人均可以經過確認Goofy的簽名來檢查它是否爲有效的交易。

image

可是,事實上GoofyCoin存在安全問題,Alice能夠用她剛得到的虛擬貨幣進行一項交易,好比向Bob支付三明治的費用。

image

可是,若是Alice又使用它來購買Chuck的奶昔呢?

image

Bob和Chuck都會認爲他們如今擁有一枚GoofyCoin。它們看起來都像是有效的交易,由於Chuck和Bob能夠看到Alice的簽名並在區塊鏈上追蹤它,並發現它是有效貨幣。

這種狀況被稱爲雙重支付攻擊。咱們固然不能容忍用同一枚虛擬貨幣既買到三明治又買到奶昔。

雙重支付攻擊是功能性加密貨幣須要防範的主要問題之一。

爲了解決雙重支付問題,咱們須要建立一個名爲ScroogeCoin的新虛擬貨幣。

ScroogeCoin

ScroogeCoin相似於GoofyCoin,但有作出了一些不一樣的改變。

與GoofyCoin不一樣的是,Scrooge發佈了一個包含全部交易歷史的區塊鏈。

Scrooge會簽署區塊鏈中每一個區塊的哈希指針。那麼任何人均可以經過檢查區塊上的Scrooge簽名來驗證交易是否有效。

image

由於Scrooge查看過每筆交易,因此他能夠確保沒有人雙重支付。若是Alice使用虛擬貨幣從Bob那裏購買三明治,Scrooge能經過拒絕驗證該交易來防止Alice使用該貨幣從Chuck處購買奶昔。

由於全部區塊都由哈希指針鏈接到區塊鏈中,因此Alice、Bob、Chuck和其餘任何使用ScroogeCoin的人均可以監視Scrooge是否回去更改過數據。因爲Scrooge是區塊鏈的控制者,他們沒法阻止Scrooge更改數據,但他們至少是知情的。

假設一年前,Alice買了Bob的三明治並支付了1個ScroogeCoin,Scrooge將交易記錄改變成Alice支付了10個ScroogeCoin,那麼後續每一個區塊的哈希指針都會發生變化。人們很容易知道Scrooge已經篡改了數據。這就是咱們以前提到的難題友好屬性。

這樣作能提高人們對區塊鏈中數據的信任。

ScroogeCoin的工做原理是讓每一個人知道哪些貨幣有效。只要Scrooge監控全部交易並拒絕雙重支付,雙重支付問題就不存在了。同時區塊鏈上的全部參與者也能夠確認Scrooge的驗證。

ScroogeCoin的潛在問題在於Scrooge本人。若是Scrooge願意,他能夠經過幾種方法讓本身暴富。好比要求參與交易的每一個人爲交易支付大筆小費,或者他能夠本身建立一堆ScroogeCoin,或者他可能僅僅是由於感到無聊而中止驗證交易。

簡而言之,問題出在中心化。儘管Scrooge很開心,但用戶可能對系統並不滿意。這個系統與咱們如今使用的中心化系統沒有什麼不一樣。

image

Scrooge:「別擔憂,我很誠實的。」

你能夠將「Scrooge」替換爲其餘許多銀行的名字,Scrooge與現有銀行系統的運做方式沒有什麼不一樣。在大多數狀況下,咱們相信銀行或其餘金融中介不會篡改交易,由於這些機構受到國家監管並與同業競爭。因爲現存銀行系統運做良好,許多人特別是發達國家的人不能看到區塊鏈的價值所在。

可是,現存銀行系統並非百分之百可靠。當一個國家制造過多的鈔票時會出現惡性通貨膨脹。好比,20世紀30年代的魏瑪共和國,2000年初的阿根廷和津巴布韋,以及2010年的委內瑞拉。

以上這些狀況至關於Scrooge爲本身製做大量的Scrooge貨幣。

5

區塊鏈如何實現去中心化:公共區塊鏈與私有區塊鏈

區塊鏈從中心化(例如ScroogeCoin)轉向去中心化主要有兩種方式。

  • 私有區塊鏈(即Permissioned blockchains)

  • 公共區塊鏈(即Permissionless blockchain)

公共區塊鏈和私有區塊鏈之間的區別,在於容許加入網絡的身份限制。

公共區塊鏈網絡是徹底開放的,任何人均可以加入。比特幣和以太坊就是典型的公有鏈。

私有區塊鏈網絡則須要邀請。它對容許參與網絡或交易的身份設置限制。MultiChain,R3的Corda,Hyperledger Fabric和Chain Core是典型的私有區塊鏈。

身份限制如此重要是由於它影響了去中心化的實現程度。在ScroogeCoin的示例中,它遇到了一樣的中心化問題,即單個的受信任第三方控制整個系統。

公共區塊鏈由加密經濟學和加密貨幣挖掘機制保證運行。(即,使用經濟激勵、博弈論、密碼學和計算機科學等技術來保證分類帳的一致性)。

私有區塊鏈由其共識過程預先選定的一組參與者(例如,我的、公司和聯盟成員)控制。例如,你能夠擁有15個庫,而且每一個庫都有權寫入分類賬,每一個庫必須對每一個區塊進行簽名才能使該區塊有效。

它比僅使用單一方驗證全部交易的區塊鏈更加去中心化。

6

重點概況

文章開頭咱們討論了區塊鏈爲什麼如此重要:它容許大量沒有預先存在社會關係的個體進行交易。

接着咱們探索了區塊鏈的基元即加密哈希函數,它具備三個重要屬性:

  • 抗碰撞性

  • 肯定隱匿性

  • 難題友好性

而後,咱們介紹了哈希函數如何串聯成一個傳遞哈希函數。當咱們將Merkle樹添加到傳遞加密哈希函數時,咱們獲得一個區塊鏈。每一個區塊包含一組「merkleized」交易,而且塊被連接在一塊兒。

image

緊接着咱們講解了比特幣使用一種稱爲工做量證實的技術來確保區塊鏈的安全性。

下一步,咱們設計了Goofycoin和Scroogecoin,由此看到區塊鏈技術如何進化並完美解決雙重支付問題。

最後,咱們談到了私有鏈與公有鏈在實現去中心化機制上的區別。

區塊鏈仍然是一項很是年輕的技術,在2009年才問世,咱們能夠預料到在將來幾十年內,大量的區塊鏈應用和網絡會呈爆炸式增加。

目前已有數千個不一樣的項目致力於提高區塊鏈技術並研究其在各領域的應用。相信讀完這篇文章,你也已經對區塊鏈技術背後的基本要素以及區塊鏈的工做原理有了一個總體的認識。

最後,我認爲,下一代區塊鏈技術的最大創新還沒有出現,但如今就是學習和投入區塊鏈技術最好的時間

內容來源:程序新視界

做者 | Taylor Pearson

編譯 | Eli

線上課程推薦  學習還能賺錢

線上課程1:《揭開神祕的數字貨幣交易-2節課創建一個數字貨幣交易所》

培訓講師:墨村程序猿 虎頭錘

課程原價:199元,現價 49元

更多福利:

  • @全部人,識別下圖二維碼轉發課程邀請好友報名,便可得到報名費50%返利(學習還能夠賺錢,全部人都可參與,分享越多賺的越多)

image

線上課程2:《8小時區塊鏈智能合約開發實踐》

培訓講師:《白話區塊鏈》做者 蔣勇

課程原價:999元,現價 399元

更多福利:

  • @全部人,識別下圖二維碼轉發課程邀請好友報名,便可得到報名費50%返利(學習還能夠賺錢,全部人都可參與,分享越多賺的越多)

  • @學員,報名學習課程並在規定時間內完成考試便可瓜分10000元獎金

image

相關文章
相關標籤/搜索
本站公眾號
   歡迎關注本站公眾號,獲取更多信息