Cryptography Reference
In-Depth Information
AESCrypt_l (rstate->XAES, &rstate->RandAESWorksp,
&rstate->RandAESSched, rstate->XAES, 24);
Set frequency of key update as parameter
rstate->UpdateKeyAES = update;
Initialization of the step counter
rstate->RoundAES = 1;
Set the initialization flag.
rstate->RandAESInit = 1;
return MissingEntropy;
}
The state function
SwitchRandAES_l()
is realized as follows:
Function:
Deterministic random number generator
based on the Advanced Encryption Standard (AES)
int SwitchRandAES_l (StateAES *rstate);
Syntax:
rstate
(pointer to state memory)
Input:
rstate
(pointer to updated state memory)
Ouput:
Return:
random value of length one byte
UCHAR
SwitchRandAES_l (STATEAES *rstate)
{
int i;
UCHAR rbyte;
State change via application of the function
φ
(
k, x, i
):=
ξ
(
k, x, i
)
,
AES
k
(
x
)
,i
+1
mod
c
.
φ
:
S → S,
The content of the buffer
rstate->XAES
corresponds to the function argument
x
.