哈希運(yùn)算在區(qū)塊鏈中的作用究竟是什么?
哈希是一種使用哈希函數(shù)將鍵和值映射到哈希表中的技術(shù)或過程,哈希運(yùn)算在區(qū)塊鏈中主要用于數(shù)據(jù)加密。其中哈希指針不僅要保存結(jié)構(gòu)體在內(nèi)存中的位置還要保存結(jié)構(gòu)體的哈希值,區(qū)塊鏈和普通鏈表的主要區(qū)別就在于用哈希指針代替了普通的指針。區(qū)塊鏈的哈希值能夠唯一而精準(zhǔn)地標(biāo)識一個區(qū)塊,把各個區(qū)塊串聯(lián)成區(qū)塊鏈,每個區(qū)塊都包含上一個區(qū)塊的哈希值和下一個區(qū)塊的值。很多投資者還不知道哈希運(yùn)算在區(qū)塊鏈中的作用究竟是什么?下面就讓小編來為大家介紹一下。
哈希運(yùn)算在區(qū)塊鏈中的作用究竟是什么?
哈希運(yùn)算在區(qū)塊鏈中主要用于數(shù)據(jù)加密,哈希加密算法,SHA256,是由美國國 家 安 全 局研發(fā),由美國國家標(biāo)準(zhǔn)與技術(shù)研究院(NIST)在2001年發(fā)布。
將任何一串?dāng)?shù)據(jù)輸入到SHA256將得到一個256位的Hash值(散列值)。
其特點(diǎn):相同的數(shù)據(jù)輸入將得到相同的結(jié)果。輸入數(shù)據(jù)只要稍有變化(比如一個1變成了0)則將得到一個千差萬別的結(jié)果,且結(jié)果無法事先預(yù)知。
具體來說就是哈希算法將數(shù)據(jù)打亂混合,壓縮成摘要,使得數(shù)據(jù)量變小,重新創(chuàng)建一個叫做哈希值的指紋。
區(qū)塊鏈?zhǔn)褂玫氖菃蜗蚬?。哈希樹的頂部為頂部哈?top hash),亦稱根哈希(root hash)或主哈希(master hash)。它是通過并聯(lián)兩個子哈希來往樹上爬直到找到根哈希。它的作用就是作用快速定位每筆交易;核實(shí)交易數(shù)據(jù)是否被篡改。
區(qū)塊頭中有個參數(shù)叫隨機(jī)數(shù)Nonce,尋找這個隨機(jī)數(shù)的過程就叫做”挖礦“。比特幣挖礦過程使用SHA256哈希函數(shù)不斷運(yùn)算。挖礦就是重復(fù)計算區(qū)塊頭的哈希值,不斷修改Nonce值,直到符合目標(biāo)哈希值過程。哈希函數(shù)的結(jié)果無法預(yù)知,也沒有特定模式快速算出哈希值。
區(qū)塊鏈的哈希算法
哈希算法是區(qū)塊鏈中用得最多的一種算法,它被廣泛地使用在構(gòu)建區(qū)塊和確認(rèn)交易的完整性上。它是一類數(shù)學(xué)函數(shù)算法,又被稱為散列算法,需具備三個基本特性:其輸入可為任意大小的字符串、它產(chǎn)生固定大小的輸出、能在合理的時間內(nèi)就能算出輸出值。
哈希算法有很多,區(qū)塊鏈主要使用的哈希算法是SHA-256算法:將任意數(shù)據(jù)串作為輸入值代入公式,可以得到一個獨(dú)一無二的64位輸出值,但是用輸出值無法倒推出輸入值。
對于同一個哈希算法來說,相同的輸入必定會得到相同的輸出,不同的輸入必定會得到不同的輸出。區(qū)塊鏈就是利用哈希函數(shù)為區(qū)塊生成簽名的,將區(qū)塊中的數(shù)據(jù)作為輸入,得到的輸出就是區(qū)塊的簽名。
哈希在區(qū)塊鏈中用于表示世界的當(dāng)前狀態(tài)。輸入是區(qū)塊鏈的整個狀態(tài),這意味著到目前為止發(fā)生的所有交易和生成的輸出哈希代表區(qū)塊鏈的當(dāng)前狀態(tài)。第一個哈希是使用該塊內(nèi)的交易為第一個塊或創(chuàng)世塊計算的,初始交易的序列用于計算創(chuàng)世塊的塊哈希。對于之后生成的每個新塊,還使用前一個塊的哈希值以及它自己的交易作為輸入來確定其塊哈希值,這就是區(qū)塊鏈的形成方式。
以上就是哈希運(yùn)算在區(qū)塊鏈中的作用究竟是什么?的詳細(xì)內(nèi)容,更多關(guān)于區(qū)塊鏈的哈希算法的資料請關(guān)注腳本之家其它相關(guān)文章!
你可能感興趣的文章
-
哈希率越高越好嗎?哈希率越高代表什么分析
這篇文章主要介紹了哈希率越高越好嗎?哈希率越高代表什么分析的相關(guān)資料,需要的朋友可以參考下本文詳細(xì)內(nèi)容介紹…
2022-12-06 -
一文讀懂什么是哈希算法原理和用途
這篇文章主要介紹了一文讀懂什么是哈希算法原理和用途的相關(guān)資料,希望這篇關(guān)于什么是哈希算法原理和用途的文章,能夠幫助到各位投資者對哈希算法有一個更加全面深入的了解…
2021-11-30 -
哈希函數(shù)是什么意思?哈希函數(shù)應(yīng)用在區(qū)塊鏈的哪些地方?
這篇文章主要介紹了哈希函數(shù)是什么意思?哈希函數(shù)應(yīng)用在區(qū)塊鏈的哪些地方?的相關(guān)資料,對本文感興趣的朋友,不妨查看下詳細(xì)內(nèi)容,一起來看看吧!…
2021-08-19 -
區(qū)塊鏈中的哈希值是什么意思?如何在區(qū)塊鏈中使用哈希值?
這篇文章主要介紹了區(qū)塊鏈中的哈希值是什么意思?如何在區(qū)塊鏈中使用哈希值?的相關(guān)資料,區(qū)塊鏈通過哈希算法對一個交易區(qū)塊中的交易信息進(jìn)行加密,并把信息壓縮成由一串?dāng)?shù)字…
2021-08-02 -
狗狗幣挖礦最佳的哈希速率是多少呢?狗狗幣挖礦哈希值多少最好
這篇文章主要介紹了狗狗幣挖礦最佳的哈希速率是多少呢?狗狗幣挖礦哈希值多少最好的相關(guān)資料,需要的朋友可以參考下本文詳細(xì)內(nèi)容介紹…
2023-03-03