Patent ID: 8605894

Claim:
A method of performing a cryptographic process having a plurality of operations on a message, the method comprising: receiving the message at a port; storing the message in a first computer readable storage medium coupled to the port; at a processor coupled to the first computer readable memory, applying a plurality of cipher operations sequentially to the message thereby generating a state for each operation; wherein at least one of the operations includes a table lookup, and wherein the table or an input to the table lookup is caused to be different at each execution of the table lookup; and storing each state in a second computer readable medium coupled to the processor; wherein at each execution a number is combined with the input, and the number is combined with a result of the table lookup, the number being randomly or pseudo randomly selected at each execution, and wherein after at least one execution, the table includes at least two portions each portion including a plurality of identical entries, the at least two portions at least doubling the original size of the table.