密碼學(xué)是區(qū)塊鏈中最重要的一部分,就相當(dāng)于區(qū)塊鏈的基石
下面我們來(lái)了解區(qū)塊鏈主要應(yīng)用的密碼學(xué)算法
1、哈希算法
哈希算法是一種特殊的函數(shù)不管輸出多長(zhǎng)的字符只要輸出這個(gè)長(zhǎng)度就可以得到固定長(zhǎng)度的輸出值,而得到的這個(gè)指就是哈希值。
正因?yàn)楣V档娜齻€(gè)特點(diǎn)賦予了區(qū)塊鏈不可篡改及匿名等特性,并且為整個(gè)區(qū)塊鏈體系的安全提供了保障。
具體三個(gè)特點(diǎn)如下:
(1)單項(xiàng)性:舉個(gè)例子我們輸入的數(shù)據(jù)通過(guò)哈希值算法可以得到一個(gè)哈希值,但反之通過(guò)得到的這個(gè)哈希值是不能推回到我們的數(shù)據(jù)的,也就是因?yàn)槿绱藚^(qū)塊鏈才能有效地保護(hù)了我們信息的安全性。
(2)防篡改能力:在任意一個(gè)輸入或者的一個(gè)很小的改動(dòng),那么其哈希值的改動(dòng)也會(huì)非常的大;在區(qū)塊與區(qū)塊的連接中起到關(guān)鍵性作用,區(qū)塊鏈的每一區(qū)塊都會(huì)以上一個(gè)區(qū)塊的哈希值作為標(biāo)志,由此看來(lái)如想篡改除非能破解整條鏈上的所有哈希值。
(3)抗碰撞能力:先解釋什么叫碰撞-輸入兩個(gè)不同的數(shù)據(jù)最后得到了一個(gè)相同的輸出;反之抗碰撞就是大部分的輸入都能得到一個(gè)唯一的輸出。也就是在區(qū)塊鏈中任意一筆交易或者賬戶的地址都是完全依托于哈希值算法生成的。
二、非對(duì)稱加密
密
首先知道密鑰(在密碼學(xué)中開(kāi)門(mén)的鑰匙被稱為密鑰),若單獨(dú)只有一個(gè)密鑰用于加密也用于解密就叫對(duì)稱加密。
非對(duì)稱加密就比對(duì)稱加密特殊,為什么說(shuō)他特殊因?yàn)榉菍?duì)稱加密有兩個(gè)密鑰,而它最核心的被稱為私鑰,私鑰是由自己保留;另外一個(gè)會(huì)被公開(kāi)出來(lái)也就叫做公鑰。
有兩個(gè)特點(diǎn):(1)私鑰加密的內(nèi)容可以通過(guò)公鑰解密讀取出來(lái),(2)反之公鑰加密的內(nèi)容也可以由私鑰解密讀取出來(lái)。那這樣看非對(duì)稱加密在區(qū)塊鏈中的主要應(yīng)用并不是保護(hù)內(nèi)容的隱私,卻是防止身份被冒充,也就是交易的信任問(wèn)題。
密碼學(xué)在不斷的發(fā)展,區(qū)塊鏈密碼學(xué)也會(huì)隨著時(shí)代的發(fā)展變得更加安全……