AES 2
NAME
setupAESstate, aesCBCencrypt, aesCBCdecrypt - advanced encryption standard (rijndael)
SYNOPSIS
#include <u.h> #include <libc.h>
#include <mp.h>
#include <libsec.h>
void setupAESstate(AESstate *s, uchar key[], int keybytes, uchar *ivec)
void aesCBCencrypt(uchar *p, int len, AESstate *s)
void aesCBCdecrypt(uchar *p, int len, AESstate *s)
DESCRIPTION
DES is being replaced by Rijndael, also known as AES, as the preferred
block cipher.
SetupAESstate , aesCBCencrypt , and
aesCBCdecrypt implement cipher block chaining encryption.
All ciphering is performed in place.
Keybytes should be 16, 24, or 32.
The initialization vector
ivec of
AESbsize bytes should be random enough to be unlikely to be reused
but does not need to be
cryptographically strongly unpredictable.
SOURCE
/sys/src/libsec SEE ALSO
aescbc in
secstore (1), mp (2), blowfish (2), des (2), dsa (2), elgamal (2), rc4 (2), rsa (2), sechash (2), prime (2), rand (2) http://csrc.nist.gov/encryption/aes/rijndael