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

由于微型計(jì)算設(shè)備不斷的進(jìn)步,在生活中的應(yīng)用也越來越廣泛,它安全性也備受關(guān)注,專為微型計(jì)算設(shè)備研發(fā)的輕量級(jí)加密算法也不斷增多,MIBS加密算法就是其中之一。下面我們就通過本文來一起了解一下MIBS加密算法。

MIBS算法簡(jiǎn)介

MIBS是一種 Feistel結(jié)構(gòu)的輕量級(jí)分組密碼算法,分組長度為64bit,共有32輪,密鑰有64bit 和80bit 兩種參數(shù)。是由Maryam Izadi等人在Can 2009上提出的,主要針對(duì)RFID標(biāo)簽設(shè)計(jì),它占用資源少,適合在計(jì)算能力受限的微型計(jì)算設(shè)備上應(yīng)用。

MIBS算法

MIBS算法加密流程

MIBS是Feistel結(jié)構(gòu)的分組密碼算法,消息分組長度為64bit,共有32輪。密鑰長度有64bit和80bit兩種。64bit的消息分組分成L0和R0兩個(gè)32bit的值。而且MIBS中是以4bit 為一個(gè)單位的,稱為半字節(jié)或半位元。

MIBS算法

MIBS的輪函數(shù)由輪密鑰加、S盒變換、擴(kuò)散層及Р置換組成。設(shè)Li-1,Ri-1是第i輪的輸入,ki是32bit輪密鑰,第i輪的迭代公式為:Li= F(ki,Li-1)⊕Ri-1,Ri?=Li-1。

輪密鑰加:每輪輸入的左32bit都與32bit的輪密鑰相異或。

S盒變換:S={4,15,3,8,13,10,12,12,0,11,5,7,14,2,6,1,9},S:F42→F42:yi=s(xi),1≤i≤8。

混合層:此層為線性變換,由下列線性關(guān)系式構(gòu)成:

MIBS算法

Р置換:將混合層輸出的8個(gè)半字節(jié)按新的順序輸出,P={2,8,1,3,6,7,4,5}。

用statei表示第i輪的密鑰擴(kuò)展,輪密鑰按如下關(guān)系式生成(1≤i≤32):

state0是初始密鑰;statei?= statei>>>19;statei= S - box ( statei[79~76])|| S - box ( statei[75~72])statei[71~0];statei?= statei[79~19]||lstate [18 ~ 14]⊕Round _counter||statei[13~0];k=statei[79~48]。

MIBS算法的優(yōu)缺點(diǎn)

MIBS密碼算法運(yùn)算便于硬件實(shí)現(xiàn),資源占用量較少,可普遍應(yīng)用于電子標(biāo)簽和傳感器網(wǎng)絡(luò)等環(huán)境。

但MIBS算法在面對(duì)不可能差分分析攻擊時(shí),可能會(huì)出現(xiàn)明文量選取過少,從而出現(xiàn)計(jì)算錯(cuò)誤的情況。

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