一種新實(shí)用安全加密標(biāo)準(zhǔn)算法--Camellia算法
發(fā)布時(shí)間:2008/6/5 0:00:00 訪問(wèn)次數(shù):411
camellia算法由ntt和mitsubishi electric corporation聯(lián)合開(kāi)發(fā)。作為歐洲新一代的加密標(biāo)準(zhǔn),它具有較強(qiáng)的安全性,能夠抵抗差分和線性密碼分析等已知的攻擊。與aes算法相比,camellia算法在各種軟硬件平臺(tái)上表現(xiàn)出與之相當(dāng)?shù)募用芩俣取3嗽诟鞣N軟件和硬件平臺(tái)上的高效性這一顯著特點(diǎn),它的另外一個(gè)特點(diǎn)是針對(duì)小規(guī)模硬件平臺(tái)的設(shè)計(jì)。整個(gè)算法的硬件執(zhí)行過(guò)程包括加密、解密和密鑰擴(kuò)展三部分,只需占用8.12k 0.18μm coms工藝asic的庫(kù)門(mén)邏輯。這在現(xiàn)有128比特分組密碼中是最小的。
1 camellia算法的組成 camellia算法支持128比特的分組長(zhǎng)度,128、192和256比特的密鑰與aes的接口相同。本文以128比特密鑰為例對(duì)camellia算法進(jìn)行詳細(xì)介紹。
camellia算法128比特密鑰的加、解密過(guò)程共有18輪,采用feistel結(jié)構(gòu),加、解密過(guò)程完全相同,只是子密鑰注入順序相反。而且密鑰擴(kuò)展過(guò)程和加、解密過(guò)程使用相同的部件。這使得camellia算法不論是在軟件平臺(tái)還是硬件平臺(tái)只需更小的規(guī)模和更小的存儲(chǔ)即可。
(1)camellia算法所采用的符號(hào)列表及其含義
b 8比特向量 w 32比特向量
l 64比特向量 q 128比特向量
x(n) 比特向量
xl 向量x的左半部分 xr 向量x的右半部分
<<< 比特循環(huán)左移 || 兩個(gè)操作數(shù)的連接
比特的異或操作 x 比特位取補(bǔ)操作
∪ 比特位的或操作 ∩ 比特位的與操作
(2)camellia算法所采用的變量列表及其含義
m(128) 128比特明文組 c(128) 128比特密文組
k 主密鑰 kwt(64),ku(64),klv(64), 子密鑰
(3)camellia算法所采用的變換函數(shù) ·f變換
f變換(見(jiàn)式(1))是camellia算法中最主要的部件之一,而且f變換被加、解密過(guò)程和密鑰擴(kuò)展過(guò)程所共用(128比特密鑰的加、解密各用18次,密鑰擴(kuò)展用4次)。camellia算法的f變換在設(shè)計(jì)時(shí)采用1輪的spn(substitution permutation network),包括一個(gè)p變換(線性)和一個(gè)s變換(非線性)。在feistel型密碼使用一輪spn作輪函數(shù)時(shí),對(duì)更高階的差分和線性特性概率的理論評(píng)估變得更加復(fù)雜,在相同安全水平下的運(yùn)行速度有所提高。
f:l×l→l (1)
(x(64),k(64))→y(64)=p(s(x(64)k(64))
·p變換
camellia算法的p變換(見(jiàn)式(2))是一個(gè)線性變換。為了通信中軟、硬件實(shí)現(xiàn)的高效性,它適合采用異或運(yùn)算,并且其安全性能足以抵抗差分和線性密碼分析。其在32位處理器、高端智能卡上的應(yīng)用,跟在8位處理器上一樣。
p:l→l
= (2)
·s變換
camellia算法采用的s盒(見(jiàn)式(3))是一個(gè)gf(28)上的可逆變換,它加強(qiáng)了算法的安全性并且適用于小硬件設(shè)計(jì)。眾所周知,gf(28)上函數(shù)的最大差分概率的最小值被證明為2-6,最大線性概率的最小值推測(cè)為2-6。camellia算法選擇gf(28)上能夠獲得最好的差分和線性概率的可逆函數(shù)作s盒,而且s盒每個(gè)輸出比特具有高階布爾多項(xiàng)式,使得對(duì)camellia進(jìn)行高階差分攻擊是困難的。s盒在gf(28)上輸入、輸出相關(guān)函數(shù)上的復(fù)雜表達(dá)式,使得插入攻擊對(duì)camellia無(wú)效。
s:l→l
(l1(8),l1(8),l1(8),l1(8),l1(8),l1(8),l1(8),l1(8))→
(s1(l1(8)),s2(l2(8)),s3(l3(8)),s4(l4(8)),s2(l5(8)),s3(l6(8)),
s4(l7(8)),s1(l8(8)))
s1:y(8)=s1(x(8))=h(g(f(0xc5x(8)))) 0x6e
其中,s2:y(8)=s2(x(8))=s1(x(8))<<<1 (3)
s3:y(8)=s3(x(8))=s1(x(8))>>>1
s4:y(8)=s4(x(8))=s1(x(8))<<<1
camellia算法由ntt和mitsubishi electric corporation聯(lián)合開(kāi)發(fā)。作為歐洲新一代的加密標(biāo)準(zhǔn),它具有較強(qiáng)的安全性,能夠抵抗差分和線性密碼分析等已知的攻擊。與aes算法相比,camellia算法在各種軟硬件平臺(tái)上表現(xiàn)出與之相當(dāng)?shù)募用芩俣。除了在各種軟件和硬件平臺(tái)上的高效性這一顯著特點(diǎn),它的另外一個(gè)特點(diǎn)是針對(duì)小規(guī)模硬件平臺(tái)的設(shè)計(jì)。整個(gè)算法的硬件執(zhí)行過(guò)程包括加密、解密和密鑰擴(kuò)展三部分,只需占用8.12k 0.18μm coms工藝asic的庫(kù)門(mén)邏輯。這在現(xiàn)有128比特分組密碼中是最小的。
1 camellia算法的組成 camellia算法支持128比特的分組長(zhǎng)度,128、192和256比特的密鑰與aes的接口相同。本文以128比特密鑰為例對(duì)camellia算法進(jìn)行詳細(xì)介紹。
camellia算法128比特密鑰的加、解密過(guò)程共有18輪,采用feistel結(jié)構(gòu),加、解密過(guò)程完全相同,只是子密鑰注入順序相反。而且密鑰擴(kuò)展過(guò)程和加、解密過(guò)程使用相同的部件。這使得camellia算法不論是在軟件平臺(tái)還是硬件平臺(tái)只需更小的規(guī)模和更小的存儲(chǔ)即可。
(1)camellia算法所采用的符號(hào)列表及其含義
b 8比特向量 w 32比特向量
l 64比特向量 q 128比特向量
x(n) 比特向量
xl 向量x的左半部分 xr 向量x的右半部分
<<< 比特循環(huán)左移 || 兩個(gè)操作數(shù)的連接
比特的異或操作 x 比特位取補(bǔ)操作
∪ 比特位的或操作 ∩ 比特位的與操作
(2)camellia算法所采用的變量列表及其含義
m(128) 128比特明文組 c(128) 128比特密文組
k 主密鑰 kwt(64),ku(64),klv(64), 子密鑰
(3)camellia算法所采用的變換函數(shù) ·f變換
f變換(見(jiàn)式(1))是camellia算法中最主要的部件之一,而且f變換被加、解密過(guò)程和密鑰擴(kuò)展過(guò)程所共用(128比特密鑰的加、解密各用18次,密鑰擴(kuò)展用4次)。camellia算法的f變換在設(shè)計(jì)時(shí)采用1輪的spn(substitution permutation network),包括一個(gè)p變換(線性)和一個(gè)s變換(非線性)。在feistel型密碼使用一輪spn作輪函數(shù)時(shí),對(duì)更高階的差分和線性特性概率的理論評(píng)估變得更加復(fù)雜,在相同安全水平下的運(yùn)行速度有所提高。
f:l×l→l (1)
(x(64),k(64))→y(64)=p(s(x(64)k(64))
·p變換
camellia算法的p變換(見(jiàn)式(2))是一個(gè)線性變換。為了通信中軟、硬件實(shí)現(xiàn)的高效性,它適合采用異或運(yùn)算,并且其安全性能足以抵抗差分和線性密碼分析。其在32位處理器、高端智能卡上的應(yīng)用,跟在8位處理器上一樣。
p:l→l
= (2)
·s變換
camellia算法采用的s盒(見(jiàn)式(3))是一個(gè)gf(28)上的可逆變換,它加強(qiáng)了算法的安全性并且適用于小硬件設(shè)計(jì)。眾所周知,gf(28)上函數(shù)的最大差分概率的最小值被證明為2-6,最大線性概率的最小值推測(cè)為2-6。camellia算法選擇gf(28)上能夠獲得最好的差分和線性概率的可逆函數(shù)作s盒,而且s盒每個(gè)輸出比特具有高階布爾多項(xiàng)式,使得對(duì)camellia進(jìn)行高階差分攻擊是困難的。s盒在gf(28)上輸入、輸出相關(guān)函數(shù)上的復(fù)雜表達(dá)式,使得插入攻擊對(duì)camellia無(wú)效。
s:l→l
(l1(8),l1(8),l1(8),l1(8),l1(8),l1(8),l1(8),l1(8))→
(s1(l1(8)),s2(l2(8)),s3(l3(8)),s4(l4(8)),s2(l5(8)),s3(l6(8)),
s4(l7(8)),s1(l8(8)))
s1:y(8)=s1(x(8))=h(g(f(0xc5x(8)))) 0x6e
其中,s2:y(8)=s2(x(8))=s1(x(8))<<<1 (3)
s3:y(8)=s3(x(8))=s1(x(8))>>>1
s4:y(8)=s4(x(8))=s1(x(8))<<<1
熱門(mén)點(diǎn)擊
- 彩電屢燒行管的幾點(diǎn)問(wèn)題討論
- 納米技術(shù)材料
- 真空斷路器的合閘彈跳與分閘彈振研究
- 電子羅盤(pán)
- Actel面向FPGA設(shè)計(jì)的新版IDE支持添
- PPP協(xié)議鏈路操作的軟件實(shí)現(xiàn)
- FCS在大容量滌綸短纖紡絲生產(chǎn)線中的應(yīng)用
- TI推出單芯片交錯(cuò)式功率因數(shù)校正控制電路UC
- 74HC04介紹
- 一種高精度超聲波測(cè)距系統(tǒng)的改進(jìn)
推薦技術(shù)資料
- 羅盤(pán)誤差及補(bǔ)償
- 造成羅盤(pán)誤差的主要因素有傳感器誤差、其他磁材料干擾等。... [詳細(xì)]
- 電源管理 IC (PMIC)&
- I2C 接口和 PmBUS 以及 OTP/M
- MOSFET 和柵極驅(qū)動(dòng)器單
- 數(shù)字恒定導(dǎo)通時(shí)間控制模式(CO
- Power Management Buck/
- 反激變換器傳導(dǎo)和輻射電磁干擾分析和抑制技術(shù)
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動(dòng)IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機(jī)遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計(jì)
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究