Rijindael(State,CipherKey)
{
KeyExpansion(CipherKey,RoundKey)
AddRoundKey(State,ExpandedKey)
For(I=1;I<Nr;I++)
{
Round(State,ExpandedKey+NbI)
{
ByteSub(State);
ShiftRo(State);
MixColumn(State);
AddRoundKey(State,ExpandedKey+NbI);
}
}
FinalRound(State,ExpandedKey+NbNr)
{
ByteSub(State);
ShiftRo(State);
AddRoundKey(State,ExpandedKey+NbNr);
}
}
Inv_Rijindael(State,CipherKey)
{
Inv_KeyExpansion(CipherKey,Inv_ExpandedKey)
AddRoundKey(State,Inv_ExpandedKey+NbNr)
For(I=Nr-1;I>0;I–)
{
Inv_Round(State,Inv_ExpandedKey+NbI)
{
Inv_ByteSub(State);
Inv_ShiftRo(State);
Inv_MixColumn(State);
AddRoundKey(State,Inv_ExpandedKey+Nb*I);
}
}
Inv_FinalRound(State,Inv_ExpandedKey)
{
Inv_ByteSub(State);
Inv_ShiftRo(State);
AddRoundKey(State,Inv_ExpandedKey);
}
}
2021-10-14
最新推荐文章于 2024-01-26 15:37:07 发布