# Key Scheduling of International Data Encryption Algorithm (IDEA)

How to perform the key scheduling in International Data Encryption Algorithm (IDEA), I took a research but I can't understand how to perform it,

"further groups of eight keys are created by rotating the main key left 25 bits between each group of eight.", this is the part where I cannot understand the key scheduling of IDEA

Have a look at the corresponding paper.

The key is a 128-bit string $K$. The round keys for round $r=1,...,8$ are derived as follows:

• take the version of $K$ cyclically rotated to the left $25\cdot r$ times;
• split the string obtained into eight substrings and call them $Z_1^{(r)}$, ..., $Z_8^{(r)}$.

The keys $Z_7^{(r)}$ and $Z_8^{(r)}$ are never used. The subkeys $Z_1^{(9)}$, ..., $Z_4^{(9)}$ are used to mask the output.

To generate a key we 128 bit master key:0110101010101 up to 128. 1 key= 16 bit chunks so in this case we generate 8 keys of 16 bits. but one thing the most important while generating keys when we reach to 25th bit means from start to 25 bit then we do LS-25.

1101 Ls-1= 1011 only one left bit is shift to right. 1101 ls-2= 0111 two bits are shift to right. So in case of ls-25 ...25 bits are shift to right.

At last we to complete 7 rounds to finish the process.

• "To generate a key we 128 bit master key" --> we what? – Hilder Vítor Lima Pereira Apr 28 '17 at 9:05
• "At last we to complete" --> what does "we to" mean? – Hilder Vítor Lima Pereira Apr 28 '17 at 9:07