MASS雜湊模式系統開發流程詳情

aa111111發表於2022-04-12

雜湊是如何應用在區塊鏈中的?


  在區塊鏈中,每個區塊中都有前一個區塊的雜湊值,(V+syn520110)前一個區塊叫做當前區塊的父區塊。由於每個區塊都有前一個區塊的雜湊值,當修改當前區塊的任意資料都會導致區塊的雜湊值發生變化,這會對前一個區塊產生影響,因為其中含有前一個區塊的地址。


  比如,當前有兩個區塊,一個是當前區塊,一個是父區塊。當前區塊中有父區塊的地址,如果需要修改當前區塊的資料,就需要對父區塊鏈進行修改。如果只有兩個區塊就比較好修改資料,但事實上區塊鏈上有很多的區塊。


  什麼是雜湊?


  雜湊是將任意長的輸入程式設計加密的固定長度輸出的過程。雜湊並不等同於加密方法,因為無法解密雜湊值來獲取原始資料。事實上雜湊是一種單項加密函式。


  有了雜湊函式,就可以將網際網路上的資料以固定長度字串的形式來儲存。其中一種方法就是SHA-256(安全雜湊演算法-256位),SHA-256是SHA-1的後繼者,SHA-1的輸出是160位的。


  雜湊的意思就是引入隨機數量的輸入資料,將其加密,然後得出一個固定輸出資料,就叫做雜湊。輸入可以是任何資料,只要能代表單個位元組,一個MP3檔案,整本小說,你的銀行賬單,甚至是整個網際網路。關鍵在於輸入可以無限大。雜湊演算法可以根據你的需求來進行選擇,現在公開的也有很多種演算法。關鍵點在於,這些演算法會將無限的輸入,轉換成固定數量的位元組。例如,256位元組。


  那麼這個雜湊有什麼用呢?現在雜湊通常的用處就在於指紋識別,同時也被稱為檢測區域。這意味著一個雜湊被用來驗證一個檔案沒有被任何人更改。假設WikiLeaks釋出了使用MD5雜湊的檔案,任何人下載這些檔案,都可以通過MD5雜湊驗證檔案的來源。如果雜湊和WikiLeaks釋出的不符合,那麼你就知道這個檔案肯定是被改過的。


  那麼區塊鏈是如何使用雜湊的呢?區塊鏈使用雜湊,來表現整個區塊鏈網路現在的狀態。輸入則是區塊鏈的整個狀態,也就是說近期完成的所有轉賬,輸出就是雜湊代表的區塊鏈現在的狀態。雜湊就被用來在區塊鏈網路中讓各方相信,整個狀態都是相同的。但是這些雜湊是怎麼算出來的呢?


  首個雜湊是為第一個區塊或者是創世區塊所計算的,通過區塊內部的轉賬資料得出。初始轉賬的順序被用來計算創世區塊的區塊雜湊。後來每挖出的新區塊,之前的區塊雜湊也會被使用,同時還有這個區塊的轉賬資訊,作為輸入值,來確定區塊的雜湊。這就是區塊鏈的形成方式,每個新區塊雜湊指向地是之前區塊的雜湊。這種雜湊系統保證了任何轉賬記錄都不會被改變,因為如果任何部分的轉賬記錄改變,那麼歸屬於這個區塊的雜湊值也會改變,那麼任何接下來的區塊雜湊也會被改變。那麼你可以簡單地將雜湊對比,就很容易去分辨出哪兒發生了改變。這就非常棒了,因為區塊鏈上的每個人只需要對這256個位元組達成共識,就可以代表區塊鏈的狀態。以太坊區塊鏈現在是10MB,但是區塊鏈狀態只有256位元組代表的雜湊。



區塊的轉賬資訊,作為輸入值,來確定區塊的雜湊。這就是區塊鏈的形成方式,每個新區塊雜湊指向地是之前區塊的雜湊。這種雜湊系統保證了任何轉賬記錄都不會被改變,因為如果任何部分的轉賬記錄改變,那麼歸屬於這個區塊的雜湊值也會改變,那麼任何接下來的區塊雜湊也會被改變。那麼你可以簡單地將雜湊對比,就很容易去分辨出哪兒發生了改變。這就非常棒了,因為區塊鏈上的每個人只需要對這256個位元組達成共識,就可以代表區塊鏈的狀態。以太坊區


Hash函式的特點


雜湊(Hash)函式具有如下特點。


易壓縮:對於任意大小的輸入x,Hash值的長度很小,在實際應用中,函式H產生的Hash值,其長度是固定的。


易計算:對於任意給定的訊息,計算其Hash值比較容易。


單向性:對於給定的Hash值,要找到使得在解算上是不可行的,即求得Hash的逆向解算,很困難。在給定某個雜湊函式H和雜湊值H(M)的情況下,你想得出M,這在計算上是不可行的。即從雜湊輸出無法倒推輸入的原始數值。這是雜湊函式安全性的基礎。


抗碰撞性:理想的Hash函式是無碰撞的,但在實際演算法的設計中很難做到這一點。


有兩種抗碰撞性:一種是弱抗碰撞性,即對於給定的訊息,要發現另一個訊息,滿足在計算上是不可行的;另一種是強抗碰撞性,即對於任意一對不同的訊息,使得在計算上也是不可行的。


高靈敏性:這是從位元位角度出發的,(V+syn520110)指的是1位元位的輸入變化會造成1/2的位元位發生變化。訊息M的任何改變都會導致雜湊值H(M)發生改變。即如果輸入有微小不同,雜湊運算後的輸出一定不同。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70010128/viewspace-2886686/,如需轉載,請註明出處,否則將追究法律責任。

相關文章