Structure
ICE is a 16-round Feistel network. Each round uses a 32→32 bit F function, which uses 60 bits of key material.
The structure of the F function is somewhat similar to DES: The input is expanded by taking overlapping fields, the expanded input is XORed with a key, and the result is fed to a number of reducing S-boxes which undo the expansion.
First, ICE divides the input into 4 overlapping 10-bit values. They are bits 0–9, 8–17, 16–25, and 24–33 if the input, where bits 32 and 33 are copies of bits 0 and 1.
Second is a keyed permutation, which is unique to ICE. Using a 20-bit permutation subkey, bits are swapped between halves of the 40-bit expanded input. (If subkey bit i is 1, then bits i and i+20 are swapped.)
Third, the 40-bit value is exclusive-ORed with 40 more subkey bits.
Fourth, the value is fed through 4 10-bit S-boxes, each of which produces 8 bits of output. (These are much larger than DES's 8 6→4 bit S-boxes.)
Fifth, the S-box output bits are permuted so that each S-box's outputs are routed to each 4-bit field of 32-bit word, including 2 of the 8 "overlap" bits duplicated during the next round's expansion.
Like DES, a software implementation would typically store the S-boxes pre-permuted, in 4 1024×32 bit lookup tables.
Read more about this topic: ICE (cipher)
Famous quotes containing the word structure:
“What is the most rigorous law of our being? Growth. No smallest atom of our moral, mental, or physical structure can stand still a year. It growsit must grow; nothing can prevent it.”
—Mark Twain [Samuel Langhorne Clemens] (18351910)
“For the structure that we raise,
Time is with materials filled;
Our to-days and yesterdays
Are the blocks with which we build.”
—Henry Wadsworth Longfellow (18091882)
“Who says that fictions only and false hair
Become a verse? Is there in truth no beauty?
Is all good structure in a winding stair?
May no lines pass, except they do their duty
Not to a true, but painted chair?”
—George Herbert (15931633)