BeeCrypt 4.2.1
Data Structures | Macros | Variables
aes_le.h File Reference

Go to the source code of this file.

Data Structures

struct  _table
 

Macros

#define _ae0   _aes_enc.t0
 
#define _ae1   _aes_enc.t1
 
#define _ae2   _aes_enc.t2
 
#define _ae3   _aes_enc.t3
 
#define _ae4   _aes_enc.t4
 
#define _ad0   _aes_dec.t0
 
#define _ad1   _aes_dec.t1
 
#define _ad2   _aes_dec.t2
 
#define _ad3   _aes_dec.t3
 
#define _ad4   _aes_dec.t4
 
#define etfs(i)
 
#define esft(i)
 
#define elr()
 
#define dtfs(i)
 
#define dsft(i)
 
#define dlr()
 

Variables

const uint32_t _aes_mask [4]
 
const _table _aes_enc
 
const _table _aes_dec
 
static const uint32_t _arc []
 

Macro Definition Documentation

◆ _ad0

#define _ad0   _aes_dec.t0

◆ _ad1

#define _ad1   _aes_dec.t1

◆ _ad2

#define _ad2   _aes_dec.t2

◆ _ad3

#define _ad3   _aes_dec.t3

◆ _ad4

#define _ad4   _aes_dec.t4

◆ _ae0

#define _ae0   _aes_enc.t0

◆ _ae1

#define _ae1   _aes_enc.t1

◆ _ae2

#define _ae2   _aes_enc.t2

◆ _ae3

#define _ae3   _aes_enc.t3

◆ _ae4

#define _ae4   _aes_enc.t4

◆ dlr

#define dlr ( )
Value:
s0 = \
(_ad4[(t0 ) & 0xff] & 0x000000ff) ^ \
(_ad4[(t3 >> 8) & 0xff] & 0x0000ff00) ^ \
(_ad4[(t2 >> 16) & 0xff] & 0x00ff0000) ^ \
(_ad4[(t1 >> 24) ] & 0xff000000) ^ \
rk[0]; \
s1 = \
(_ad4[(t1 ) & 0xff] & 0x000000ff) ^ \
(_ad4[(t0 >> 8) & 0xff] & 0x0000ff00) ^ \
(_ad4[(t3 >> 16) & 0xff] & 0x00ff0000) ^ \
(_ad4[(t2 >> 24) ] & 0xff000000) ^ \
rk[1]; \
s2 = \
(_ad4[(t2 ) & 0xff] & 0x000000ff) ^ \
(_ad4[(t1 >> 8) & 0xff] & 0x0000ff00) ^ \
(_ad4[(t0 >> 16) & 0xff] & 0x00ff0000) ^ \
(_ad4[(t3 >> 24) ] & 0xff000000) ^ \
rk[2]; \
s3 = \
(_ad4[(t3 ) & 0xff] & 0x000000ff) ^ \
(_ad4[(t2 >> 8) & 0xff] & 0x0000ff00) ^ \
(_ad4[(t1 >> 16) & 0xff] & 0x00ff0000) ^ \
(_ad4[(t0 >> 24) ] & 0xff000000) ^ \
rk[3];
#define _ad4
Definition: aes_le.h:707

◆ dsft

#define dsft (   i)
Value:
s0 = \
_ad0[(t0 ) & 0xff] ^ \
_ad1[(t3 >> 8) & 0xff] ^ \
_ad2[(t2 >> 16) & 0xff] ^ \
_ad3[(t1 >> 24) ] ^ \
rk[i+0]; \
s1 = \
_ad0[(t1 ) & 0xff] ^ \
_ad1[(t0 >> 8) & 0xff] ^ \
_ad2[(t3 >> 16) & 0xff] ^ \
_ad3[(t2 >> 24) ] ^ \
rk[i+1]; \
s2 = \
_ad0[(t2 ) & 0xff] ^ \
_ad1[(t1 >> 8) & 0xff] ^ \
_ad2[(t0 >> 16) & 0xff] ^ \
_ad3[(t3 >> 24) ] ^ \
rk[i+2]; \
s3 = \
_ad0[(t3 ) & 0xff] ^ \
_ad1[(t2 >> 8) & 0xff] ^ \
_ad2[(t1 >> 16) & 0xff] ^ \
_ad3[(t0 >> 24) ] ^ \
rk[i+3];
#define _ad3
Definition: aes_le.h:706
#define _ad0
Definition: aes_le.h:703
#define _ad1
Definition: aes_le.h:704
#define _ad2
Definition: aes_le.h:705

◆ dtfs

#define dtfs (   i)
Value:
t0 = \
_ad0[(s0 ) & 0xff] ^ \
_ad1[(s3 >> 8) & 0xff] ^ \
_ad2[(s2 >> 16) & 0xff] ^ \
_ad3[(s1 >> 24) ] ^ \
rk[i+0]; \
t1 = \
_ad0[(s1 ) & 0xff] ^ \
_ad1[(s0 >> 8) & 0xff] ^ \
_ad2[(s3 >> 16) & 0xff] ^ \
_ad3[(s2 >> 24) ] ^ \
rk[i+1]; \
t2 = \
_ad0[(s2 ) & 0xff] ^ \
_ad1[(s1 >> 8) & 0xff] ^ \
_ad2[(s0 >> 16) & 0xff] ^ \
_ad3[(s3 >> 24) ] ^ \
rk[i+2]; \
t3 = \
_ad0[(s3 ) & 0xff] ^ \
_ad1[(s2 >> 8) & 0xff] ^ \
_ad2[(s1 >> 16) & 0xff] ^ \
_ad3[(s0 >> 24) ] ^ \
rk[i+3];

◆ elr

#define elr ( )
Value:
s0 = \
(_ae4[(t0 ) & 0xff] & _aes_mask[0]) ^ \
(_ae4[(t1 >> 8) & 0xff] & _aes_mask[1]) ^ \
(_ae4[(t2 >> 16) & 0xff] & _aes_mask[2]) ^ \
(_ae4[(t3 >> 24) ] & _aes_mask[3]) ^ \
rk[0]; \
s1 = \
(_ae4[(t1 ) & 0xff] & _aes_mask[0]) ^ \
(_ae4[(t2 >> 8) & 0xff] & _aes_mask[1]) ^ \
(_ae4[(t3 >> 16) & 0xff] & _aes_mask[2]) ^ \
(_ae4[(t0 >> 24) ] & _aes_mask[3]) ^ \
rk[1]; \
s2 = \
(_ae4[(t2 ) & 0xff] & _aes_mask[0]) ^ \
(_ae4[(t3 >> 8) & 0xff] & _aes_mask[1]) ^ \
(_ae4[(t0 >> 16) & 0xff] & _aes_mask[2]) ^ \
(_ae4[(t1 >> 24) ] & _aes_mask[3]) ^ \
rk[2]; \
s3 = \
(_ae4[(t3 ) & 0xff] & _aes_mask[0]) ^ \
(_ae4[(t0 >> 8) & 0xff] & _aes_mask[1]) ^ \
(_ae4[(t1 >> 16) & 0xff] & _aes_mask[2]) ^ \
(_ae4[(t2 >> 24) ] & _aes_mask[3]) ^ \
rk[3];
#define _ae4
Definition: aes_le.h:377
const uint32_t _aes_mask[4]
Definition: aes_le.h:20

◆ esft

#define esft (   i)
Value:
s0 = \
_ae0[(t0 ) & 0xff] ^ \
_ae1[(t1 >> 8) & 0xff] ^ \
_ae2[(t2 >> 16) & 0xff] ^ \
_ae3[(t3 >> 24) ] ^ \
rk[i+0]; \
s1 = \
_ae0[(t1 ) & 0xff] ^ \
_ae1[(t2 >> 8) & 0xff] ^ \
_ae2[(t3 >> 16) & 0xff] ^ \
_ae3[(t0 >> 24) ] ^ \
rk[i+1]; \
s2 = \
_ae0[(t2 ) & 0xff] ^ \
_ae1[(t3 >> 8) & 0xff] ^ \
_ae2[(t0 >> 16) & 0xff] ^ \
_ae3[(t1 >> 24) ] ^ \
rk[i+2]; \
s3 = \
_ae0[(t3 ) & 0xff] ^ \
_ae1[(t0 >> 8) & 0xff] ^ \
_ae2[(t1 >> 16) & 0xff] ^ \
_ae3[(t2 >> 24) ] ^ \
rk[i+3];
#define _ae0
Definition: aes_le.h:373
#define _ae1
Definition: aes_le.h:374
#define _ae3
Definition: aes_le.h:376
#define _ae2
Definition: aes_le.h:375

◆ etfs

#define etfs (   i)
Value:
t0 = \
_ae0[(s0 ) & 0xff] ^ \
_ae1[(s1 >> 8) & 0xff] ^ \
_ae2[(s2 >> 16) & 0xff] ^ \
_ae3[(s3 >> 24) ] ^ \
rk[i+0]; \
t1 = \
_ae0[(s1 ) & 0xff] ^ \
_ae1[(s2 >> 8) & 0xff] ^ \
_ae2[(s3 >> 16) & 0xff] ^ \
_ae3[(s0 >> 24) ] ^ \
rk[i+1]; \
t2 = \
_ae0[(s2 ) & 0xff] ^ \
_ae1[(s3 >> 8) & 0xff] ^ \
_ae2[(s0 >> 16) & 0xff] ^ \
_ae3[(s1 >> 24) ] ^ \
rk[i+2]; \
t3 = \
_ae0[(s3 ) & 0xff] ^ \
_ae1[(s0 >> 8) & 0xff] ^ \
_ae2[(s1 >> 16) & 0xff] ^ \
_ae3[(s2 >> 24) ] ^ \
rk[i+3];

Variable Documentation

◆ _aes_dec

const _table _aes_dec

◆ _aes_enc

const _table _aes_enc

◆ _aes_mask

const uint32_t _aes_mask[4]
Initial value:
= {
0x000000ff,
0x0000ff00,
0x00ff0000,
0xff000000
}

◆ _arc

const uint32_t _arc[]
static
Initial value:
= {
0x00000001, 0x00000002, 0x00000004, 0x00000008,
0x00000010, 0x00000020, 0x00000040, 0x00000080,
0x0000001b, 0x00000036
}