http://fp.gladman.plus.com/AES/index.htm
サンプル少ないなー。
「uses C source code only」だと、次のソースコードでビルドできた。(VCの場合)
- aes.h
- aes_mode.c
- aes_via_ace.h
- aescrypt.c
- aeskey.c
- aesopt.h
- aestab.c
- aestab.h
- brg_endian.h
- brg_types.h
とりあえず動かしてみる。
#include <stdio.h> #include <string.h> #include "aes.h" #define KEY "1234567890123456" #define KEYLEN 128 #define BUFSIZE 256 int main() { aes_encrypt_ctx encx; aes_decrypt_ctx decx; unsigned char *src = "ABCDE"; unsigned char encrypted[BUFSIZE]; unsigned char decrypted[BUFSIZE]; memset(encrypted, 0, BUFSIZE); memset(decrypted, 0, BUFSIZE); aes_init(); aes_encrypt_key(KEY, KEYLEN, &encx); aes_encrypt(src, encrypted, &encx); puts(encrypted); aes_decrypt_key(KEY, KEYLEN, &decx); aes_decrypt(encrypted, decrypted, &decx); puts(decrypted); return 0; }
Dコ(:軼eィ
ABCDE
続行するには何かキーを押してください . . .
デフォルトのモードがわかんないな。
encryptしたときの最大長っていくつだろう?