簡(jiǎn)述Hight加密算法

輕量級(jí)分組密碼算法作為一種特殊的分組密碼算法,它們?cè)谟布?shí)現(xiàn)、加密速度、運(yùn)行功耗等方面與AES等高強(qiáng)密碼算法相比有明顯的優(yōu)勢(shì),更適合物聯(lián)網(wǎng)微型計(jì)算設(shè)備使用。下面我們就來(lái)了解一下輕量級(jí)分組密碼Hight加密算法。

Hight加密算法的簡(jiǎn)介

Hight算法是由Hong等在CHES 2006上提出的輕量級(jí)分組密碼,其采用一種廣義Feistel結(jié)構(gòu),輪函數(shù)輸入和輸出均為8bit,規(guī)模很小,且沒有用S盒,只使用循環(huán)移位、異或和模加操作,在8位處理器的環(huán)境中表現(xiàn)出很好的效率。子密鑰是在加密過程中通過密鑰擴(kuò)展算法得到的,密鑰寄存器只需要存儲(chǔ)128bit的主密鑰。

Hight加密算法是一種分組加密算法,其分組長(zhǎng)度和密鑰長(zhǎng)度分別為64位和128位,以8位數(shù)據(jù)為基本操作單元,主要采用塊加密算法的技術(shù),在嵌入式平臺(tái)上的軟件實(shí)現(xiàn)效率也很高。

Hight算法

Hight加密算法的加密流程

Hight算法首先將明文分成多個(gè)小塊,然后對(duì)每個(gè)塊進(jìn)行一個(gè)散列函數(shù)運(yùn)算,即求哈希值,并將得到的哈希值組成一個(gè)哈希鏈,最后根據(jù)哈希鏈的特定結(jié)構(gòu)來(lái)生成將要加密的密文。

Hight加密算法的基本操作包括加法、減法、異或和位循環(huán),其具體步驟如下:

  1. 明文塊分拆:將明文分解為多個(gè)小塊,并計(jì)算每一塊的512位(64個(gè)字節(jié))MD5散列值。
  2. 哈希鏈的拼接:根據(jù)塊中明文內(nèi)容,進(jìn)行哈希鏈的拼接,每個(gè)塊都有一個(gè)包含16個(gè)PC-01信息字節(jié),從而方便完成哈希值的拼接與變換。
  3. 生成密文:使用哈希鏈的某種特定形式生成密文,以實(shí)現(xiàn)安全性的提升。

Hight算法

Hight加密算法的優(yōu)點(diǎn)

Hight算法可以支持自定義密鑰和隨機(jī)數(shù)的生成。

Hight算法可以在不改變明文的前提下,每次加密都可產(chǎn)生不同的密文。

Hight算法便于實(shí)現(xiàn),實(shí)現(xiàn)效率也較高。

Hight算法具有良好的安全性,可以抵御攻擊的侵害。

Hight加密算法的缺點(diǎn)

Hight算法的復(fù)雜度較高,需要較高的計(jì)算能力,對(duì)于一些性能較低的設(shè)備來(lái)說可能無(wú)法滿足要求。

Hight算法需要使用大量的隨機(jī)數(shù)和密鑰,如果密鑰管理不當(dāng),可能會(huì)影響安全性。

Hight算法的效率雖然較高,但相對(duì)于一些常見的加密算法來(lái)說可能較低。

免責(zé)聲明:素材源于網(wǎng)絡(luò),如有侵權(quán),請(qǐng)聯(lián)系刪稿。