簡述CLEFIA加密算法

CLEFIA加密算法是我們熟悉的SONY公司研發(fā)的一種分組加密算法,其目的是為了保護(hù)SONY公司的音樂和圖像等數(shù)字內(nèi)容的發(fā)行以及進(jìn)行高級(jí)版權(quán)的保護(hù)和認(rèn)證,于2007年對(duì)外公布。

CLEFIA加密算法簡介

CLEFIA算法由數(shù)據(jù)處理部分和密鑰擴(kuò)展部分組成。CLEFIA的基本結(jié)構(gòu)是一種廣義的Feistel 結(jié)構(gòu)。廣義的 Feistel 的結(jié)構(gòu)是傳統(tǒng) Feistel 結(jié)構(gòu)的變形,由四條輸入分支組成。每一輪中有兩個(gè)F函數(shù),每個(gè)F函數(shù)使用兩個(gè)不用的S盒和兩個(gè)不同的擴(kuò)散矩陣。密鑰擴(kuò)展部分與數(shù)據(jù)處理部分共享Feistel結(jié)構(gòu),這使得CLEFIA只需要較小的硬件和軟件規(guī)模。

CLEFIA算法支持128位的分組長度,密鑰長度是128/192/256比特可選。密鑰長度是128位時(shí)加密輪數(shù)是18輪,密鑰長度是192和256位時(shí)加密輪數(shù)分別是22輪和26輪。

CLEFIA加密算法

CLEFIA加密算法的加解密流程

CLEFIA 的加密函數(shù)用ENCr來表示,解密函數(shù)用DECr來表示。ENCr和DECr,都是基于4個(gè)分支的廣義Feistel結(jié)構(gòu)GFN4.r。用P,C∈{0,1}128來表示明文和密文。P=P0|P1|P2|P3,C=C0|C1|C2|C3 ,其中Pi,Ci∈{0,1}32(0≤i<4)。用WK0,WK1,WK2,WK3∈{0,1}32來表示第一輪前的白化密鑰,RKi∈{0,1}32(0≤i≤2r)來表示由密鑰擴(kuò)展算法產(chǎn)生的輪密鑰。此時(shí)可將加密函數(shù)定義如下:

CLEFIA加密算法

解密函數(shù)DECr與加密函數(shù)ENCr的區(qū)別在于子密鑰RKi32的注入順序相反,且字循環(huán)的方向恰好相反。

CLEFIA加密算法

CLEFIA加密算法的安全性

CLEFIA算法是一種比較“年輕”的加密算法,在公布之初,SONY公司聲稱它足以抵抗“現(xiàn)有的密碼破解手段”。為了它能夠在將來被廣泛應(yīng)用,國內(nèi)外學(xué)者對(duì)其進(jìn)行了各種攻擊手段。

從結(jié)果上來看,大部分攻擊所需要的計(jì)算量和儲(chǔ)存量都比較大,所以證明CLEFIA算法確實(shí)有著不錯(cuò)的安全性。

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