最新資訊

基于Verilog硬件描述語言的AES密碼算法實現

0引言密碼模塊是安全保密系統(tǒng)的重要組成部分,其核心任務就是加/解密數據。目前,分組密碼算法AES以其高效率、低開銷、實現簡單等特點被廣泛應用于密碼模塊的研制。隨著計算機信息技術和超大規(guī)模集成電路技術的成熟與發(fā)展,通過硬件來實現密鑰模塊的內部運作,可保證在外界無密鑰的明文流動,能夠實現真正意義上的保密。此外,硬件實現還具有高速、高可靠性等特點。目前許多AES算法的硬件實現采用基于RAM查找表方式來實現算法中最關鍵的SubBytes部分。本文采用復合域來實現SubBytes部分的求逆運算,以便于采用組合邏輯減小面積。同時采用加/解密運算中列變換的部分電路進行復用,從而進一步節(jié)省實現面積。這樣可以使AES密碼應用于RFID系統(tǒng),IC卡等面積要求較小的場合。1AES算法簡介AES算法是一種迭代型分組密碼,其分組長度和密鑰長度均可變,各自可以獨立指定為128b,192b,256b。本文主要討論分組長度和密鑰長度為128b的情況。AES算法是將輸入的明文(或密文)分成16個字節(jié),在第一個AddRoundKeys變換后進入10輪迭代。迭代過程的前9輪完全相同,依次經過字節(jié)代替(substitutebytes)、行移位(sh

發(fā)表于:10/19/2010