本文從AES的算法原理和基于ARM核嵌入式系統(tǒng)的開發(fā)著手,研究了AES算法的設計原則、數(shù)學知識、整體結(jié)構(gòu)、算法描述以及AES存住的優(yōu)點利局限性。 針對ARM核的體系結(jié)構(gòu)及特點,對AES算法進行了優(yōu)化設計,提出了從AES算法本身和其結(jié)構(gòu)兩個方面進行優(yōu)化的方法,在算法本身優(yōu)化方面是把加密模塊中的字節(jié)替換運算、列混合運算和解密模塊中的逆列混合運算中原來的復雜的運算分別轉(zhuǎn)換為簡單的循環(huán)移位、乘和異或運算。在算法結(jié)構(gòu)優(yōu)化方面是在輸入輸山接口上采用了4個32位的寄存器對128bits數(shù)據(jù)進行了并行輸入并行輸出的優(yōu)化設計;在密鑰擴展上的優(yōu)化設計是采用內(nèi)部擴展,即在進行每一輪的運算過程的同時算出下一輪的密鑰,并把下一輪的密鑰暫存在SRAM里,使得密鑰擴展與加/解密運算并行執(zhí)行;加密和解密優(yōu)化設計是將輪函數(shù)查表操作中的四個操作表查詢工作合并成一個操作表查詢工作,同時為了使加密代碼在解密代碼中可重用,節(jié)省硬件資源,在解密過程中采用了與加密相一致的過程順序。 根據(jù)上述的優(yōu)化設計,基于ARM核嵌入式系統(tǒng)的ADS開發(fā)環(huán)境,提出了AES實現(xiàn)的軟硬件方案、AES加密模塊和解密模塊的實現(xiàn)方案以及測試方案,總結(jié)了基于ARM下的高效編程技巧及混合接口規(guī)則,在集成開發(fā)環(huán)境下對算法進行了實現(xiàn),分別得出了初始密鑰為128bits、192bits和256bits下的加密與解密的結(jié)果,并得劍了正確驗證。在性能測試的過程中應用編譯器的優(yōu)化選項和其它優(yōu)化技巧優(yōu)化了算法,使算法具有較高的加密速度。
標簽:
ARM
AES
嵌入式系統(tǒng)
算法優(yōu)化
上傳時間:
2013-04-24
上傳用戶:liansi