:壹加壹线上娱乐app

壹加壹线上娱乐app www.mgenf.icu 本站遵守國家法律法規,如違反國家法律請聯系我們底部客服刪除

區塊鏈為什么不可篡改?區塊鏈技術原理圖解

來源:摩登先生原創 |發布時間:2018-01-08 11:09:21

區塊鏈技術被認為是這幾年可能再次顛覆世界的一項技術,區塊鏈讓信任變的更有基礎,區塊鏈是一種去中心化的記賬本,因為去中心化,每一個節點都是一個分布式的中心,做到了牽一發而動全身,由區塊鏈衍生出來的技術服務更加安全可靠,比如現在我們都非常熟悉的數字貨幣比特幣就是區塊鏈技術的一個成功的典范,當然區塊鏈技術部僅僅在數字貨幣領域發揮影響力,未來區塊鏈會方方面面的影響人類社會,而她被人類青睞的最大原因就是安全可靠!不可修改性!



區塊鏈為什么不可篡改?

在談應用之前,最重要的是先理解它的技術本質是什么, 所有介紹區塊鏈的答案里, 都最先提到了區塊鏈不可篡改的特性, 所以第一個要理解的是它到底是怎么實現不可篡改性的。

先修知識;

密碼學Hash()函數的單向性: Hash(x) =y , 通過y很難找到x

哈希鏈: 假如現在有順序產生的數據塊 A, B , C 。 那么我們可以這樣計算一個hash 。 注意 “||” 表示拼接
h0= Hash(A)
h1 = Hash(B || h0) 
h2 = Hash(C || h1)  

摩登男士:壹加壹线上娱乐app www.mgenf.icu

h2是我們計算的hash頭部,現在來看, 為什么我們管這個東西叫Hash鏈, 因為h2 的值依賴于之前一系列數據的內容和計算順序。 假如說現在你知道了h2 , 別人拿著A,B, C, 他不管是修改A,B, C的任一點內容還是A,B, C的出現順序,你都無法再次計算出正確的h2
好的, 其實到這里區塊鏈的概念就有點感覺了不是嗎。"區塊鏈"這個詞是英文 Block Chain 的翻譯, 如果從字面上理解, "數據塊組成的鏈條" 就足以闡釋它的基本內涵了。比特幣區塊鏈其實就是哈希鏈的一個變種(注意, 下文描述的這種添加隨機數以及對隨機數有特殊要求的規則是比特幣為了實現工作量證明 Proof of Work 的共識機制而添加的, 并不是區塊鏈的一個必要特征)。 怎么變? 添加一個隨機數(Nonce)
假如現在有順序產生的數據塊 A, B , C 。 我們來這樣計算hash頭。 注意 “||” 表示拼接
h0= Hash(A|| Nonce0) 
h1 = Hash(B || h0 || Nonce1) 
h2 = Hash(C || h1 || Nonce2)  摩登男士網:壹加壹线上娱乐app www.mgenf.icu 
這里我們還添加一個額外的要求, 就是 h0, h1, h2 必須都得是以指定數目的0 bit開頭的,例如要求每個哈希值都必須以5個0開頭,則h0,h1,h2都應該是這樣的形式(00000*****************)

添加了這個要求以后, h0, h1, h2就都不是那么容易計算的了, 因為你不能根據輸出的形式來反推輸入是什么, 而A, B, C又是給定的, 那只能不斷更改Nonce來窮舉計算, 然后找到一個可以滿足要求的Nonce值 ,使得h0, h1, h2符合要求

到這里大家就知道所謂的礦工是在干什么了, 就是接受廣播出來的數據塊,然后計算當前最新的哈希鏈的頭部, 當成功計算出了一個符合要求的Hash后, 就告訴所有人,自己找到了, 讓別人再去計算下一個哈希頭部。

其實到這里, 區塊鏈的本質就已經差不多了, 假如網絡中大家都默認遵守協議, 只在最長的哈希鏈后計算新的頭部,那么一切都很好, 但是如果有人想搞不一樣,那他就得擁有更強的計算能力, 在誠實者都遵守規則的情況下, 自己能夠計算出一個鏈條分叉甚至說直接計算出一個新的鏈條,讓大家都承認。

(原文鏈接://www.mgenf.icu/keji/26527.html,轉載請注明)