AES算法中S-box和列混合單元的優(yōu)化及FPGA實(shí)現(xiàn)
2 列混合單元的優(yōu)化設(shè)計(jì)
在列混合(MixColumn)和逆列混合(InvMixColumn)的操作中,由以下兩式定義了兩個(gè)主要操作:
將式(15)和式(16)所做的操作及結(jié)果列于表1中,由步驟1~步驟5處理的結(jié)果得到outx,接著由outx和w8得到outy。因此,在執(zhí)行過(guò)程中,操作所用到的硬件資源及其所得結(jié)果可以應(yīng)用到步驟9,步驟10中。如圖3所示,這種新型結(jié)構(gòu)(字節(jié)-列混合模塊)僅需8個(gè)加法器和4個(gè)乘法器。與原方案相比,此設(shè)計(jì)大大減少了硬件復(fù)雜度并顯著節(jié)省了資源的消耗。
圖3中:Xt模塊(AES中的乘法器)的計(jì)算公式為:
更進(jìn)一步,會(huì)發(fā)現(xiàn),要建立一個(gè)全局的逆選擇列混合模塊,需要將4個(gè)字節(jié)一列混合模塊集成在一起,形成一個(gè)全新的字一列混合模塊(Word_MixColumn模塊),如圖4所示。
這種模塊設(shè)計(jì)可以通過(guò)部分分享硬件來(lái)同時(shí)實(shí)現(xiàn)列混合和逆列混合的功能,實(shí)現(xiàn)了硬件資源的節(jié)省。
評(píng)論