aes和sm4對128bit資料加密的速度對比

lt發表於2020-10-04

程式碼來源
aes https://github.com/zhouyangchao/AES
sm4 https://github.com/NEWPLAN/SMx/tree/master/SM4/Linux

在sample.c中間加入以下行執行100萬次加密
if(i==0){int j=0;for(j=0;j<1000000;j++)if(aes_encrypt_block(&ctx, cipher_text, text) != SUCCESS) return -1;}
編譯命令列和測試結果
aes

gcc aes.c sample.c -O3 -o aes
time ./aes
key_bit 128:
        input  :  01 23 45 67 89 ab cd ef fe dc ba 98 76 54 32 10
        encrypt:  ff 0b 84 4a 08 53 bf 7c 69 34 ab 43 64 14 8f b9
        decrypt:  01 23 45 67 89 ab cd ef fe dc ba 98 76 54 32 10
key_bit 192:
        input  :  01 23 45 67 89 ab cd ef fe dc ba 98 76 54 32 10
        encrypt:  66 4e 00 1d 2f cb 6c 48 c5 a7 f1 ac f3 0e 87 a8
        decrypt:  01 23 45 67 89 ab cd ef fe dc ba 98 76 54 32 10
key_bit 256:
        input  :  01 23 45 67 89 ab cd ef fe dc ba 98 76 54 32 10
        encrypt:  fb 6e ee fe bf ee 19 d8 ce 8b 99 42 73 b5 f0 02
        decrypt:  01 23 45 67 89 ab cd ef fe dc ba 98 76 54 32 10

real    0m20.447s
user    0m6.728s
sys     0m0.012s

sm4

gcc sm4.c sm4test.c -o sm4 -O3
time ./sm4
68 1e df 34 d2 06 96 5e 86 b3 e9 4f 53 6e 42 46
01 23 45 67 89 ab cd ef fe dc ba 98 76 54 32 10
59 52 98 c7 c6 fd 27 1f 04 02 f8 04 c3 3d 3f 66

real    0m0.796s
user    0m0.266s
sys     0m0.001s

相關文章