Lines Matching refs:aes
19 #include "aes.h"
36 } aes;
72 if (key_len > sizeof(ctx->u.aes.cbc)) {
76 ctx->u.aes.ctx_enc = aes_encrypt_init(key, key_len);
77 if (ctx->u.aes.ctx_enc == NULL) {
81 ctx->u.aes.ctx_dec = aes_decrypt_init(key, key_len);
82 if (ctx->u.aes.ctx_dec == NULL) {
83 aes_encrypt_deinit(ctx->u.aes.ctx_enc);
87 ctx->u.aes.block_size = key_len;
88 os_memcpy(ctx->u.aes.cbc, iv, ctx->u.aes.block_size);
129 if (len % ctx->u.aes.block_size)
131 blocks = len / ctx->u.aes.block_size;
133 for (j = 0; j < ctx->u.aes.block_size; j++)
134 ctx->u.aes.cbc[j] ^= plain[j];
135 aes_encrypt(ctx->u.aes.ctx_enc, ctx->u.aes.cbc,
136 ctx->u.aes.cbc);
137 os_memcpy(crypt, ctx->u.aes.cbc,
138 ctx->u.aes.block_size);
139 plain += ctx->u.aes.block_size;
140 crypt += ctx->u.aes.block_size;
194 if (len % ctx->u.aes.block_size)
196 blocks = len / ctx->u.aes.block_size;
198 os_memcpy(tmp, crypt, ctx->u.aes.block_size);
199 aes_decrypt(ctx->u.aes.ctx_dec, crypt, plain);
200 for (j = 0; j < ctx->u.aes.block_size; j++)
201 plain[j] ^= ctx->u.aes.cbc[j];
202 os_memcpy(ctx->u.aes.cbc, tmp, ctx->u.aes.block_size);
203 plain += ctx->u.aes.block_size;
204 crypt += ctx->u.aes.block_size;
247 aes_encrypt_deinit(ctx->u.aes.ctx_enc);
248 aes_decrypt_deinit(ctx->u.aes.ctx_dec);