測試圈不可錯過的區塊鏈知識(一)【全網最新】

  • 2020 年 1 月 20 日
  • 筆記

區塊鏈是什麼

最近要說什麼火,流行什麼,相信很多人第一反應就是區塊鏈。

提到區塊鏈大家第一反應就是比特幣,之所以有這個反應是因為比特幣創造了很多財富自由的神話,小小的價格波動也長期霸佔著熱搜。

但比特幣不是區塊鏈,比特幣是區塊鏈的一個應用。

那麼作為一個測試工程師,需要掌握哪些區塊鏈知識呢,接下來小編就來帶領大家進入區塊鏈的大門。

學過C語言的同學都知道一個數據結構 —— 鏈表,區塊鏈的結構就類似於單向鏈表。

其中「區塊」相當於鏈表中的Node節點,Node節點之間相互串聯形成「鏈」。

鏈表節點可以有增加、刪除、插入等操作,但是區塊鏈的區塊只能增加。

每個區塊生成並掛載到區塊鏈上後(從大家都驗證並承認它的身份後開始),它的數據不能再做任何改變。

百度百科上定義:區塊鏈是分散式數據存儲、點對點傳輸、共識機制、加密演算法等電腦技術的新型應用模式。

嗯,很難懂!

其實目前對區塊鏈還沒有一個統一的定義,綜合看來,區塊鏈就是基於區塊鏈技術的公開賬本(或者公共資料庫),其中所說的區塊鏈技術並非一種新興的技術,而是密碼學、P2P(點對點傳輸)等眾多技術的一個技術組合而已,區塊鏈最偉大的地方我想不是發明了什麼,而是結合了這些技術並優美地解決了去中心化的進行價值交換、數據交換

簡單來說區塊鏈就是去中心化分散式賬本(分散式數據存儲)

中心化分散式賬本

去中心化的概念是相對於中心化而言的,那首先來看看什麼是中心化

每年的雙十一都是剁手黨的狂歡節,除了買到心儀的寶貝外,天貓總成交額也是人們津津樂道的話題

剛過去的這個雙十一成交額達到再創歷史紀錄的2684億

但是立刻就有網友質疑2684億的真實性。

12日一條發於今年4月的微博被扒出,該數據在4月就預測今年雙十一銷售額為2689億。

事實證明,該預測神准無比,在未知天貓任何數據的情況下計算出的銷售額與現實僅有千分之2的差距。

隨後阿里官方緊急闢謠,小編也堅決相信馬爸爸不會騙人。

因為阿里可以通過大數據精確地分析商品活躍度,然後通過運營技術來達到控制銷售額,既不能讓銷售額太低打消網友的消費熱情,也不能太高讓明年難以衝擊。

之所以會出現質疑聲當然是因為銷售數據只有阿里獨家一份,其他人想看看不到,只能聽阿里說多少就是多少。這就是中心化存儲帶來的的信任問題。存儲這些數據的資料庫我們可以看成是中心化賬本。當然這麼重要的數據天貓肯定是分散式存儲的,但即使是分散式,也是阿里一家的分散式,是中心化的分散式存儲。

去中心化分散式賬本

設想下如果這些銷售數據是公開的,事實產生的每筆交易記錄所有人的資料庫里(當然不可能,數據是機密),人人都能查到總銷售額到底是多少,那麼信任問題就解決了。這種存儲方式就是去中心化的分散式存儲。

按照規則一個區塊存儲只能幾十條交易記錄,這就需要很多個區塊,新的交易記錄會被礦工打包到的新區塊中,就像鏈表那樣,新的區塊頭部資訊包含前一個區塊的Hash,這個Hash是經過不可逆的加密,一旦生成就基本不可能被竄改,每個區塊這樣就可以唯一找到前一個區塊,一環扣一環就形成了鏈。

如何接觸區塊鏈

區塊鏈其實離你很近,下載一個管理加密數字貨幣的軟體imToken,打開區塊鏈的大門。

錢包

真實的錢包是用來放人民幣美元的,imToken是用來存放你的加密數字貨幣的,所以我們稱其為加密數字貨幣錢包,簡稱錢包。

打開imToken,點擊創建身份,輸入身份名、密碼後即可創建一個你在區塊鏈世界的身份。

創建身份成功後,接下來就是備份助記詞

公/私鑰

解釋什麼是助記詞前,先來解釋下什麼私鑰

區塊鏈使用的是密碼學中的非對稱加密,即使用成對的公私鑰:公鑰加密,私鑰解密,私鑰簽名,公鑰驗簽。

公鑰加密,私鑰解密。也就是用公鑰加密原數據,只有對應的私鑰才能解開原數據。這樣能使得原數據在網路中傳播不被竊取,保護隱私。

私鑰簽名,公鑰驗簽。用私鑰對原數據進行簽名,只有對應的公鑰才能驗證簽名串與原數據是匹配的。

可以用鎖頭,鑰匙來比喻公鑰,私鑰。鎖頭用來鎖定某物品,鑰匙來解鎖該物品。鑰匙所有者是物品的所有者。

事實上就是這樣,公私鑰對奠定了區塊鏈的賬戶體系及資產(Token等)的所有權,區塊鏈的資產是鎖定在公鑰上的,私鑰是用來解鎖該資產然後使用。比如說我要轉讓資產給你,就是我用我的私鑰簽名了一筆我轉讓資產給你的交易(含資產,數量等等)提交到區塊鏈網路里,節點會驗證該簽名,正確則從我的公鑰上解鎖資產鎖定到你的公鑰上。

我們看到了私鑰的作用了吧,跟中心化記賬系統(支付寶、微信支付等)的密碼一樣重要,擁有私鑰就擁有了資產所有權,所以我們千萬要保管好私鑰,不能泄露。

助記詞

理解了私鑰,那麼就好理解助記詞了

助記詞就是另一種形式的私鑰。它通過演算法將64位的私鑰轉換成若干個常見的英文單詞,這樣記憶起來就方便的多。

助記詞由12-24個單片語成,助記詞可以生成私鑰。一個助記詞可以生成無窮個私鑰,可以理解成助記詞是個樹的根,這個根上可以長很多分支,每個葉子是一個私鑰,imToken錢包不同幣種用的是不同的分支。這也是為何一個助記詞可以管理HD賬戶下所有的錢包地址。

imToken使用的是12位助記詞,一套助記詞就可以管理不同的鏈上的資產(比特幣、以太坊、EOS)

備份好助記詞,至此你就擁有了只屬於你自己的區塊鏈身份

下一篇 咱們來說說如何進行區塊鏈上的應用測試