區(qū)塊鏈和密碼學(xué)緊密相關(guān),,如比特幣采用的核心的公私鑰加密技術(shù),、數(shù)字簽名、哈希等,,包括很多共識算法也是基于復(fù)雜的密碼學(xué)概念,,因此,,在開始學(xué)習(xí)區(qū)塊鏈之前,,要先了解幾個核心的密碼學(xué)概念,從而能夠更深入理解其在區(qū)塊鏈體系中的應(yīng)用,。
哈希函數(shù)
哈希函數(shù)是把一個任意長度的源數(shù)據(jù)經(jīng)過一系列算法變成一個固定長度輸出值的方法,,概念很簡單,但其具備的幾個特性使它被各個領(lǐng)域廣泛應(yīng)用,。
可以訪問這個 Demo 體驗(yàn)一下哈希函數(shù)的工作原理(以SHA256為例),!
第一個特性是單向不可逆性。將一個輸入 x 進(jìn)行哈希運(yùn)算得到值 H(x),,這一過程很容易,,但是如果給定一個值 H(x),幾乎不可能逆推得到 x 的取值,,這一特性很好地保護(hù)了源數(shù)據(jù),。
第二個特性是抗碰撞性。給定一個值 x 和另一個值 y,,如果 x 不等于 y,,那 H(x) 幾乎不可能等于 H(y),并非完全不可能,,但是幾率非常低,,因此,,一個數(shù)據(jù)的 Hash 值幾乎是唯一的,這可以很好地用于身份驗(yàn)證等場景,。
第三個特性是哈希計(jì)算不可預(yù)測,。很難根據(jù)現(xiàn)有條件推導(dǎo)出哈希值,但是很容易檢驗(yàn)是否正確,,這一機(jī)制主要應(yīng)用于PoW挖礦機(jī)制中,。
加密/解密
加密機(jī)制主要分為對稱加密和非對稱加密兩類。
對稱加密機(jī)制是兩方用同一個密鑰來進(jìn)行信息的加密和解密,,很方便,,效率也很高,但是密鑰的分發(fā)存在很大的風(fēng)險(xiǎn),,如果通過網(wǎng)絡(luò)等方式進(jìn)行分發(fā),,很容易會出現(xiàn)密鑰泄漏,從而導(dǎo)致信息泄漏,。
非對稱加密機(jī)制主要指的是公私鑰加密機(jī)制,,每個人通過算法生成一對密鑰,稱為公鑰和私鑰,,如果 A 想發(fā)送一個信息給 B,,可以用 B 的公鑰對文件進(jìn)行加密,將加密后的信息發(fā)給 B,,這個過程中,,即使信息被截獲或出現(xiàn)泄漏,也不會暴露源文件,,所以可以用任何方式進(jìn)行傳播,,當(dāng) B 收到加密文件后,用自己的私鑰進(jìn)行解密,,從而獲取文件內(nèi)容,。B 的私鑰沒有經(jīng)過任何渠道進(jìn)行傳播,僅自己知道,,所以具備極高的安全性,。
在現(xiàn)實(shí)應(yīng)用中,對很大的文件進(jìn)行非對稱加密效率較低,,所以一般采用一種組合機(jī)制:假設(shè) A 想發(fā)送一個大文件 D 給 B,,則先將文件 D 用一個密鑰 K 進(jìn)行對稱加密,再用 B 的公鑰對密鑰 K 進(jìn)行非對稱加密,。A 將加密后的密鑰 K 和文件 D 發(fā)送給 B,,期間即使被截獲或泄漏,因?yàn)闆]有 B 的私鑰,所以無法得到密鑰 K,,也就無法訪問文件 D,。B 收到加密后的文件和密鑰后,則先用自己的私鑰解密得到密鑰 K,,再用密鑰 K 對文件 D 進(jìn)行解密,,從而獲取文件內(nèi)容。
數(shù)字簽名
數(shù)字簽名是非對稱加密機(jī)制的另一種用法,,上文講到每個人擁有一對生成的公鑰和私鑰,,在加密/解密應(yīng)用中,是用公鑰進(jìn)行加密,,用私鑰進(jìn)行解密,,而數(shù)字簽名機(jī)制剛好相反,假設(shè)一個文件持有者用自己的私鑰對文件進(jìn)行加密,,其他人可以用他的公鑰進(jìn)行解密,,如果得到結(jié)果則可以證明文件的歸屬權(quán)。
數(shù)字簽名機(jī)制最典型的應(yīng)用就是比特幣區(qū)塊鏈網(wǎng)絡(luò)中,,用私鑰證明自己對比特幣的歸屬權(quán),,對交易進(jìn)行簽名,其他人則可以用公鑰來驗(yàn)證交易是否合法,,整個過程無需暴露自己的私鑰,,保障了資產(chǎn)的安全。
免責(zé)聲明:本文來自網(wǎng)絡(luò)收錄或投稿,,觀點(diǎn)僅代表作者本人,,不代表芒果財(cái)經(jīng)贊同其觀點(diǎn)或證實(shí)其描述,版權(quán)歸原作者所有,。轉(zhuǎn)載請注明出處:http://lequren.com/1075107.html
溫馨提示:投資有風(fēng)險(xiǎn),,入市須謹(jǐn)慎。本資訊不作為投資理財(cái)建議,。