詳解區(qū)塊鏈背后的技術:什么是哈希和電子簽名?
今天,我們就來把區(qū)塊鏈拆分開,詳細聊聊到底什么是區(qū)塊鏈。我們知道,區(qū)塊鏈背后的技術其實主要就是加密算法,其中主要包含兩塊,一個是哈希,另一個就是電子簽名。
本文引用地址:http://www.ex-cimer.com/article/201806/381393.htm哈希和電子簽名是什么?
哈希的意思就是引入隨機數(shù)量的輸入數(shù)據(jù),將其加密,然后得出一個固定輸出數(shù)據(jù),就叫做哈希。輸入可以是任何數(shù)據(jù),只要能代表單個字節(jié),一個MP3文件,整本小說,你的銀行賬單,甚至是整個互聯(lián)網(wǎng)。關鍵在于輸入可以無限大。哈希算法可以根據(jù)你的需求來進行選擇,現(xiàn)在公開的也有很多種算法。關鍵點在于,這些算法會將無限的輸入,轉(zhuǎn)換成固定數(shù)量的字節(jié)。例如,256字節(jié)。
那么這個哈希有什么用呢?現(xiàn)在哈希通常的用處就在于指紋識別,同時也被稱為檢測區(qū)域。這意味著一個哈希被用來驗證一個文件沒有被任何人更改。假設WikiLeaks發(fā)布了使用MD5哈希的文件,任何人下載這些文件,都可以通過MD5哈希驗證文件的來源。如果哈希和WikiLeaks發(fā)布的不符合,那么你就知道這個文件肯定是被改過的。
那么區(qū)塊鏈是如何使用哈希的呢?區(qū)塊鏈使用哈希,來表現(xiàn)整個區(qū)塊鏈網(wǎng)絡現(xiàn)在的狀態(tài)。輸入則是區(qū)塊鏈的整個狀態(tài),也就是說近期完成的所有轉(zhuǎn)賬,輸出就是哈希代表的區(qū)塊鏈現(xiàn)在的狀態(tài)。哈希就被用來在區(qū)塊鏈網(wǎng)絡中讓各方相信,整個狀態(tài)都是相同的。但是這些哈希是怎么算出來的呢?
首個哈希是為第一個區(qū)塊或者是創(chuàng)世區(qū)塊所計算的,通過區(qū)塊內(nèi)部的轉(zhuǎn)賬數(shù)據(jù)得出。初始轉(zhuǎn)賬的順序被用來計算創(chuàng)世區(qū)塊的區(qū)塊哈希。后來每挖出的新區(qū)塊,之前的區(qū)塊哈希也會被使用,同時還有這個區(qū)塊的轉(zhuǎn)賬信息,作為輸入值,來確定區(qū)塊的哈希。這就是區(qū)塊鏈的形成方式,每個新區(qū)塊哈希指向地是之前區(qū)塊的哈希。 這種哈希系統(tǒng)保證了任何轉(zhuǎn)賬記錄都不會被改變,因為如果任何部分的轉(zhuǎn)賬記錄改變,那么歸屬于這個區(qū)塊的哈希值也會改變,那么任何接下來的區(qū)塊哈希也會被改變。那么你可以簡單地將哈希對比,就很容易去分辨出哪兒發(fā)生了改變。這就非常棒了,因為區(qū)塊鏈上的每個人只需要對這256個字節(jié)達成共識,就可以代表區(qū)塊鏈的狀態(tài)。以太坊區(qū)塊鏈現(xiàn)在是10MB,但是區(qū)塊鏈狀態(tài)只有256字節(jié)代表的哈希。
那么電子簽名又是什么呢?電子簽名,和真實簽名一樣,為了證明某人的身份,但是使用加密算法,會使得簽名更加安全,不像手寫的那種,可以很容易地修改。數(shù)字簽名可以證明這個信息是從某個特定的人那兒來的,而且不是任何其他人,比如黑客。
電子簽名在現(xiàn)今互聯(lián)網(wǎng)中也有所應用。不論何時你通過ACTPS訪問網(wǎng)站,你都是在使用SSL,這就是通過電子簽名來保證你和服務器之間的安全性。這意味著當你訪問Facebook.com時,你的瀏覽器可以檢查跟隨頁面的數(shù)字簽名,來驗證者確實是從Facebook網(wǎng)頁傳來的,而不是從黑客。
在非對稱的加密系統(tǒng)中,用戶可以獲得秘鑰對,這是由使用某種算法的公鑰和私鑰組成的。公鑰和私鑰是通過數(shù)學關系相互連接的。公鑰的意思是公開發(fā)布的,作為從其他用戶處接受信息的地址,就類似IP地址或者是家庭住址。私鑰意味著隱秘的信息,用來將簽署電子信息,并發(fā)送給別人。簽名包含在信息中,以至于接受者可以驗證發(fā)送者的公鑰。這樣地話,接收者就可以保證只有發(fā)送者可以發(fā)送這條消息。在區(qū)塊鏈上創(chuàng)造賬號,就可以獲得秘鑰對,但是并不需要在任何地方進行注冊。而且區(qū)塊鏈上的任何交易都是由發(fā)送者使用私鑰進行電子簽名后才行。這個簽名保證了只有賬戶擁有者可以轉(zhuǎn)移其中的資產(chǎn)。
總結(jié)來看,區(qū)塊鏈不能沒有哈希和電子簽名。哈希使得區(qū)塊鏈上的人對現(xiàn)在的整體狀態(tài)達成共識,電子簽名卻保證了所有交易都只由正確的人發(fā)出。我們依賴于這兩個特性,來保證區(qū)塊鏈不會存在任何欺詐和貪污現(xiàn)象。
評論