Wed Oct 28 15:47:57 2009

Asterisk developer's documentation


aescrypt.c File Reference

This file contains the code for implementing encryption and decryption for AES (Rijndael) for block and key sizes of 16, 24 and 32 bytes. It can optionally be replaced by code written in assembler using NASM. For further details see the file aesopt.h. More...

#include "aesopt.h"

Include dependency graph for aescrypt.c:

Go to the source code of this file.

Defines

#define l_copy(y, x)
#define locals(y, x)   x[4],y[4]
#define round(rm, y, x, k)   rm(y,x,k,0); rm(y,x,k,1); rm(y,x,k,2); rm(y,x,k,3)
#define si(y, x, k, c)   (s(y,c) = word_in(x, c) ^ (k)[c])
#define so(y, x, c)   word_out(y, c, s(x,c))
#define state_in(y, x, k)   si(y,x,k,0); si(y,x,k,1); si(y,x,k,2); si(y,x,k,3)
#define state_out(y, x)   so(y,x,0); so(y,x,1); so(y,x,2); so(y,x,3)


Detailed Description

This file contains the code for implementing encryption and decryption for AES (Rijndael) for block and key sizes of 16, 24 and 32 bytes. It can optionally be replaced by code written in assembler using NASM. For further details see the file aesopt.h.

Definition in file aescrypt.c.


Define Documentation

#define l_copy ( y,
 ) 

Value:

s(y,0) = s(x,0); s(y,1) = s(x,1); \
                        s(y,2) = s(x,2); s(y,3) = s(x,3);

Definition at line 57 of file aescrypt.c.

#define locals ( y,
 )     x[4],y[4]

Definition at line 52 of file aescrypt.c.

Referenced by local_alloc(), local_hangup(), locals_show(), and unload_module().

#define round ( rm,
y,
x,
 )     rm(y,x,k,0); rm(y,x,k,1); rm(y,x,k,2); rm(y,x,k,3)

Definition at line 61 of file aescrypt.c.

#define si ( y,
x,
k,
 )     (s(y,c) = word_in(x, c) ^ (k)[c])

Definition at line 48 of file aescrypt.c.

#define so ( y,
x,
 )     word_out(y, c, s(x,c))

Definition at line 49 of file aescrypt.c.

#define state_in ( y,
x,
 )     si(y,x,k,0); si(y,x,k,1); si(y,x,k,2); si(y,x,k,3)

Definition at line 59 of file aescrypt.c.

#define state_out ( y,
 )     so(y,x,0); so(y,x,1); so(y,x,2); so(y,x,3)

Definition at line 60 of file aescrypt.c.


Generated on Wed Oct 28 15:47:57 2009 for Asterisk - the Open Source PBX by  doxygen 1.5.6