您好,登錄后才能下訂單哦!
本文小編為大家詳細(xì)介紹“區(qū)塊鏈常用加密方法的原理是什么”,內(nèi)容詳細(xì),步驟清晰,細(xì)節(jié)處理妥當(dāng),希望這篇“區(qū)塊鏈常用加密方法的原理是什么”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來(lái)學(xué)習(xí)新知識(shí)吧。
原理:加密和解密數(shù)據(jù)使用同一個(gè)密鑰,適合對(duì)大量數(shù)據(jù)進(jìn)行加解密
安全性:關(guān)鍵是密鑰的保存方式,加密或是解密的任何一方泄漏密鑰,都會(huì)導(dǎo)致信息泄漏
代表算法:DES、3DES、Blowfish、IDEA、RC4、RC5、RC6、AES等
對(duì)稱密碼常用的數(shù)學(xué)運(yùn)算:
**移位和循環(huán)移位 **
移位就是將一段數(shù)碼按照規(guī)定的位數(shù)整體性地左移或右移。循環(huán)右移就是當(dāng)右移時(shí),把數(shù)碼的最后的位移到數(shù)碼的最前頭,循環(huán)左移正相反。例如,對(duì)十進(jìn)制數(shù)碼12345678循環(huán)右移1位(十進(jìn)制位)的結(jié)果為81234567,而循環(huán)左移1位的結(jié)果則為23456781。
**置換 **
就是將數(shù)碼中的某一位的值根據(jù)置換表的規(guī)定,用另一位代替。它不像移位操作那樣整齊有序,看上去雜亂無(wú)章。這正是加密所需,被經(jīng)常應(yīng)用。
**擴(kuò)展 **
就是將一段數(shù)碼擴(kuò)展成比原來(lái)位數(shù)更長(zhǎng)的數(shù)碼。擴(kuò)展方法有多種,例如,可以用置換的方法,以擴(kuò)展置換表來(lái)規(guī)定擴(kuò)展后的數(shù)碼每一位的替代值。
**壓縮 **
就是將一段數(shù)碼壓縮成比原來(lái)位數(shù)更短的數(shù)碼。壓縮方法有多種,例如,也可以用置換的方法,以表來(lái)規(guī)定壓縮后的數(shù)碼每一位的替代值。
**異或 **
這是一種二進(jìn)制布爾代數(shù)運(yùn)算。異或的數(shù)學(xué)符號(hào)為⊕ ,它的運(yùn)算法則如下:
1⊕1 = 0 0⊕0 = 0 1⊕0 = 1 0⊕1 = 1
也可以簡(jiǎn)單地理解為,參與異或運(yùn)算的兩數(shù)位如相等,則結(jié)果為0,不等則為1。
**迭代 **
迭代就是多次重復(fù)相同的運(yùn)算,這在密碼算法中經(jīng)常使用,以使得形成的密文更加難以破解。
原理:
非對(duì)稱加密算法需要兩個(gè)密鑰:公開密鑰(publickey)和私有密鑰(privatekey)。公開密鑰與私有密鑰是一對(duì),如果用公開密鑰對(duì)數(shù)據(jù)進(jìn)行加密,只有用對(duì)應(yīng)的私有密鑰才能解密;如果用私有密鑰對(duì)數(shù)據(jù)進(jìn)行加密,那么只有用對(duì)應(yīng)的公開密鑰才能解密
**安全性:**公鑰可以被任何人知道,但是私鑰被泄漏就會(huì)導(dǎo)致信息泄漏
應(yīng)用場(chǎng)景:
數(shù)字簽名,私鑰擁有者對(duì)信息進(jìn)行加密,接受者使用公鑰解密成功,就可以確定發(fā)送者的身份
密鑰長(zhǎng)度:
通常是1024,2048等。密鑰長(zhǎng)度增長(zhǎng)一倍,公鑰操作所需時(shí)間增加約4倍,私鑰操作所需時(shí)間增加約8倍,公私鑰生成時(shí)間約增長(zhǎng)16倍
加密的明文長(zhǎng)度:
加密的明文長(zhǎng)度不能超過(guò)RSA密鑰的長(zhǎng)度減去11byte,比如密鑰長(zhǎng)度是1024位的,1024位=1024bit=128byte,128-11=117byte,所以明文長(zhǎng)度不能超過(guò)117byte,如果長(zhǎng)度超過(guò)該值將會(huì)拋出異常。加密后密文的長(zhǎng)度為密鑰的長(zhǎng)度,如密鑰長(zhǎng)度為1024bit(128Byte),最后生成的密文固定為 1024bit(128Byte)
**代表算法:**DES、3DES、Blowfish、IDEA、RC4、RC5、RC6、AES等
原理:
采用某種散列函數(shù),輸入不同長(zhǎng)度的明文,得到相同的長(zhǎng)度的密文,明文的微小變化都能引起密文的巨大變化。其實(shí)哈希散列算法不算是真正的加密,而是生成對(duì)應(yīng)明文的指紋信息,用來(lái)校驗(yàn)數(shù)據(jù)的完整性。
**安全性:**不能通過(guò)密文反推明文,通常作為數(shù)據(jù)的完整性校驗(yàn)
**應(yīng)用場(chǎng)景1:**生成信息摘要,驗(yàn)證信息的完整性
**應(yīng)用場(chǎng)景2:**不用明文存儲(chǔ)用戶密碼,比如使用md5(md5(用戶密碼)+salt)來(lái)存儲(chǔ)密碼和驗(yàn)證密碼,防止攻擊者用彩虹表攻擊
**代表算法:**MD2、MD4、MD5、PANAMA、SHA-0、SHA-1、SHA-256、SHA-512等
讀到這里,這篇“區(qū)塊鏈常用加密方法的原理是什么”文章已經(jīng)介紹完畢,想要掌握這篇文章的知識(shí)點(diǎn)還需要大家自己動(dòng)手實(shí)踐使用過(guò)才能領(lǐng)會(huì),如果想了解更多相關(guān)內(nèi)容的文章,歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。