1460953883-0d99bff4-4d32-4b02-b465-05fc5fffa1a2

1. An encryption method for encrypting a plurality of rounds, the method comprising:
extracting a conversion function, which is convertible in a table form from a predetermined block encryption method;
converting the extracted conversion function into a corresponding converted table;
applying the converted table to an input bit;
applying an extension function, which extends an output bit, to an output of the converted table; and
applying a restore function, which restores the extended output bit.
2. The method as claimed in claim 1, wherein the extension function extends a 32-bit input into a 128-bit input and outputs the 128-bit input.
3. The method as claimed in claim 1, wherein the predetermined block encryption method is advanced encryption standard (AES).
4. The method as claimed in claim 1, wherein the converting of the extracted function into the corresponding converted table includes converting at least two conversion functions, from among a plurality of conversion functions constituting at least one round of the plurality of rounds, into one table.
5. The method as claimed in claim 1, wherein the extension function is a linear extension function.
6. The method as claimed in claim 1, wherein the extension function is a nonlinear extension function and includes an operation, which adds a random bit to the extended output bit.
7. An encryption apparatus for encrypting a plurality of rounds, the apparatus comprising:
a table encryption unit which extracts a conversion function, which is convertible in a table form, from a predetermined block encryption method, converts the extracted conversion function into a corresponding converted look-up table and applies the converted look-up table to an input bit;
an extension unit which extends an output bit to an output of the table encryption unit; and
a restoring unit which restores the extended output bit.
8. The apparatus as claimed in claim 7, wherein the extension unit extends a 32-bit input into a 128-bit input and outputs the 128-bit input.
9. The apparatus as claimed in claim 7, wherein the predetermined block encryption method is advanced encryption standard (AES).
10. The apparatus as claimed in claim 7, wherein the table encryption unit converts at least two conversion functions, from among a plurality of conversion functions constituting at least one round among the plurality of rounds, into one table.
11. The apparatus as claimed in claim 7, further comprising a random bit generating unit which generates a random bit and provides the random bit to the extension unit,
wherein the extension unit applies a nonlinear extension function to which the random bit is added to the output of the table encryption unit.
12. The apparatus as claimed in claim 7, wherein the extension unit applies a linear extension function to extend the output bit to the output of the table encryption unit.

The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.

1. A method for advancing a state of a cyclic redundancy check (CRC) computation on a transmitted message via a look-up table (LUT) storing a plurality of entries associated with possible states of the CRC computation, the method comprising acts of:
computing a plurality of indexes based at least on a current state of the CRC computation and a message chunk of the transmitted message, each index of the plurality of indexes addressing a location in the LUT;
obtaining a plurality of entries from the LUT, each entry acquired from the location indicated by a respective one of the plurality of indexes; and
computing an advanced state based on the plurality of entries.
2. The method of claim 1, further comprising an act of, prior to computing the plurality of indexes, computing the LUT based at least on a generator polynomial.
3. The method of claim 2, wherein the act of computing the LUT includes an act of computing the LUT based on a plurality of possible states.
4. The method of claim 1, wherein the act of computing a plurality of indexes includes an act of performing an XOR operation between the current state and the message chunk.
5. The method of claim 1, wherein the act of obtaining a plurality of entries from the LUT includes an act of performing a plurality of LUT accesses in parallel.
6. The method of claim 5, wherein the act of performing a plurality of LUT accesses in parallel includes an act of performing a parallel access such that the plurality of entries are obtained substantially within a single read cycle.
7. The method of claim 1, wherein the act of computing the advanced state includes an act of performing an XOR operation between each of the obtained entries.
8. The method of claim 1, further comprising an act of updating the current state with the advanced state.
9. The method of claim 8, wherein an iteration comprises, performing once, the acts of computing the plurality of indexes, obtaining a plurality of entries from the LUT, computing the advanced state, and updating the current state with the advanced state.
10. The method of claim 9, wherein performing the iteration consists computationally of a first XOR operation performed on the current state and the message chunk, a plurality of LUT accesses performed in parallel, and second XOR operations performed between the plurality of entries obtained from the LUT.
11. The method of claim 9, wherein the iteration is repeated for successive message chunks of the transmitted message such that, after each message chunk has been processed in a respective iteration, the advanced state is equal to a remainder of the message divided by a generator polynomial.
12. The method of claim 2, wherein the message chunk has a length of n=2k bits.
13. The method of claim 12, wherein the advanced state is advanced from the current state by n=2k states.
14. The method of claim 12, wherein the LUT consists of fewer than 2n entries.
15. The method of claim 14, wherein k=5.
16. The method of claim 15, wherein the LUT consists of no more than 1024 entries.
17. The method of claim 14, wherein k=6.
18. A computer readable medium encoded with a program for execution on at least one processor, the program, when executed on the at least one processor, performing a method of advancing a state of a cyclic redundancy check (CRC) computation on a transmitted message via a look-up table (LUT) storing a plurality of entries associated with possible states of the CRC computation, the method comprising acts of:
computing a plurality of indexes based at least on a current state of the CRC computation and a message chunk of the transmitted message, each index of the plurality of indexes addressing a location in the LUT;
obtaining a plurality of entries from the LUT, each entry acquired from the location indicated by a respective one of the plurality of indexes; and
computing an advanced state based on the plurality of entries.
19. The computer readable medium of claim 18, further comprising an act of, prior to computing the plurality of indexes, computing the LUT based at least on a generator polynomial.
20. The computer readable medium of claim 19, wherein the act of computing the LUT includes an act of computing the LUT based on a plurality of possible states.
21. The computer readable medium of claim 18, wherein the act of computing a plurality of indexes includes an act of performing an XOR operation between the current state and the message chunk.
22. The computer readable medium of claim 18, wherein the act of obtaining a plurality of entries from the LUT includes an act of performing a plurality of LUT accesses in parallel.
23. The computer readable medium of claim 22, wherein the act of performing a plurality of LUT accesses in parallel includes an act of performing a parallel access such that the plurality of entries are obtained substantially within a single read cycle.
24. The computer readable medium of claim 18, wherein the act of computing the advanced state includes an act of performing an XOR operation between each of the obtained entries.
25. The computer readable medium of claim 18, further comprising an act of updating the current state with the advanced state.
26. The computer readable medium of claim 25, wherein an iteration comprises, performing once, the acts of computing the plurality of indexes, obtaining a plurality of entries from the LUT, computing the advanced state, and updating the current state with the advanced state.
27. The computer readable medium of claim 26, wherein performing the iteration consists computationally of a first XOR operation performed on the current state and the message chunk, a plurality of LUT accesses performed in parallel, and second XOR operations performed between the plurality of entries obtained from the LUT.
28. The computer readable medium of claim 26, wherein the iteration is repeated for successive message chunks of the transmitted message such that, after each message chunk has been processed in a respective iteration, the advanced state is equal to a remainder of the message divided by a generator polynomial.
29. The computer readable medium of claim 19, wherein the message chunk has a length of n=2k bits.
30. The computer readable medium of claim 29, wherein the advanced state is advanced from the current state by n=2k states.
31. The computer readable medium of claim 29, wherein the LUT consists of fewer than 2n entries.
32. The computer readable medium of claim 31, wherein k=5.
33. The computer readable medium of claim 32, wherein the LUT consists of no more than 1024 entries.
34. The computer readable medium of claim 31, wherein k=6.
35. The computer readable medium of claim 29, in combination with the at least one processor, the at least one processor adapted to operate with a bus width of n.
36. An apparatus for advancing a state of a cyclic redundancy check (CRC) computation on a transmitted message, the apparatus comprising:
an addressable storage area encoded with a look-up table (LUT);
at least one input adapted to receive a message chunk from the transmitted message and a current state of the CRC computation; and
at least one controller coupled to the at least one input, the at least one controller adapted to compute a plurality of indexes based on the message chunk and the current state, use each of the plurality of indexes to address a respective location of the LUT to obtain an entry from each of the locations, and compute an advanced state based on the obtained entries.
37. The apparatus of claim 36, wherein the at least one controller includes means for computing the plurality of indexes based on the message chunk and the current state, means for using each of the plurality of indexes to address the respective location of the LUT to obtain the entry from each of the locations, and means for computing the advanced state based on the obtained entries.
38. The apparatus of claim 37, wherein the at least one controller includes at least one microprocessor, the at least one microprocessor adapted to access the LUT with the plurality of indexes in parallel such that the entries are obtained substantially in a single read operation.
39. The apparatus of claim 36, wherein the at least one controller is adapted to update the current state with the advanced state.
40. The apparatus of claim 39, wherein an iteration is completed when the at least one controller performs once computing the plurality of indexes based on the message chunk and the current state, using each of the plurality of indexes to address the respective location of the LUT to obtain the entry from each of the locations, computing the advanced state based on the obtained entries, and updating the current state with the advanced state.
41. The apparatus of claim 40, wherein computations during the iteration consist substantially of the at least one controller performing a first XOR operation on the current state and the message chunk, a plurality of LUT accesses performed in parallel, and second XOR operations performed between the plurality of entries obtained from the LUT.
42. The apparatus of claim 40, wherein the iteration is repeated by the at least one controller for successive message chunks of the transmitted message such that, after each message chunk has been processed in a respective iteration, the advanced state is equal to a remainder of the message divided by a generator polynomial.
43. The apparatus of claim 36, wherein the message chunk has a length of n=2k bits.
44. The apparatus of claim 36, wherein the advanced state is advanced from the current state by n=2k states.
45. The apparatus of claim 43, wherein the LUT consists of fewer than 2n entries.
46. The apparatus of claim 45, wherein k=5.
47. The apparatus of claim 46, wherein the LUT consists of no more than 1024 entries.
48. The apparatus of claim 45, wherein k=6.
49. The apparatus of claim 38, wherein the at least one microprocessor is a n-bit microprocessor and the CRC computation is advanced n states on each iteration.