| CPC H04L 9/0631 (2013.01) [G06F 17/16 (2013.01); H04L 9/002 (2013.01)] | 42 Claims |

|
1. A method comprising:
receiving input data representing one of a plaintext or a ciphertext, and a key;
representing each byte B of the input data as a respective redundant byte B′, the respective redundant byte having 8+d bits, where the respective redundant byte B′ is a polynomial over GF(2) modulo a product PQ such that B=B′ modulo P, where P is a polynomial of degree eight and Q is a polynomial of degree d≥0;
performing:
an AddRoundKey operation and a ShiftRows operation to produce a respective first redundant state; and
one of a composite redundant SubBytes and redundant MixColumns operation or a composite redundant InvSubBytes and redundant InvMixColumns on the respective first redundant state using a lookup table (LUT) to produce a respective second redundant state; and
repeating the performing a specified number of times to produce output data representing one of a ciphertext or a plaintext from the respective second redundant state.
|