/home/dko/projects/mobilec/tags/MobileC-v1.10.2/MobileC-v1.10.2/src/security/xyssl-0.9/include/xyssl/aes.h

Go to the documentation of this file.
00001 
00004 #ifndef XYSSL_AES_H
00005 #define XYSSL_AES_H
00006 
00007 #define AES_ENCRYPT     1
00008 #define AES_DECRYPT     0
00009 
00013 typedef struct
00014 {
00015     int nr;                     
00016     unsigned long *rk;          
00017     unsigned long buf[68];      
00018 }
00019 aes_context;
00020 
00021 #ifdef __cplusplus
00022 extern "C" {
00023 #endif
00024 
00032 void aes_setkey_enc( aes_context *ctx, unsigned char *key, int keysize );
00033 
00041 void aes_setkey_dec( aes_context *ctx, unsigned char *key, int keysize );
00042 
00051 void aes_crypt_ecb( aes_context *ctx,
00052                     int mode,
00053                     unsigned char input[16],
00054                     unsigned char output[16] );
00055 
00066 void aes_crypt_cbc( aes_context *ctx,
00067                     int mode,
00068                     int length,
00069                     unsigned char iv[16],
00070                     unsigned char *input,
00071                     unsigned char *output );
00072 
00084 void aes_crypt_cfb( aes_context *ctx,
00085                     int mode,
00086                     int length,
00087                     int *iv_off,
00088                     unsigned char iv[16],
00089                     unsigned char *input,
00090                     unsigned char *output );
00091 
00097 int aes_self_test( int verbose );
00098 
00099 #ifdef __cplusplus
00100 }
00101 #endif
00102 
00103 #endif /* aes.h */

Generated on Fri Jul 11 17:59:45 2008 for Mobile-C by  doxygen 1.5.4