2
$\begingroup$

In AES-192 key expansion there are 12 rounds and 52 keys.

I am not sure why 52 keys are derived since each block consist of 4 rows and 6 columns (192 bit keys).

So if the block is 4 x 4 then we simply multiply rounds with key size. 13 x 4 = 52 but here we have 4 x 6 matrix (block).

Can someone tell me why we get 52 keys in that case?

$\endgroup$
1
  • $\begingroup$ "So if the block is 4 x 4 then we simple multiple rounds with key size. " Please re-read your question before posting, this is not really a sentence. Could you try and create one from it? $\endgroup$
    – Maarten Bodewes
    Commented Oct 2, 2017 at 8:22

1 Answer 1

6
$\begingroup$

For 192 bit key(AES-192), there are 6 columns of 32 bit each i.e 4x6 Matrix. These 192bits of Master Key are shown as k0,k1...k5, i.e 6 words of 32 bit each.

enter image description here

(See page 44 of Book "The Design of Rijndael")

Now k6 will be

k6 = SubByte((RotateWord(k5)) xor K0 Xor Rcon1

k7 = k6 xor k1

k8 = k7 xor k2

and so on...

Since the state in al variants of AES is 128 bit(its the key which is either 128 or 192 or 256 bit) i.e 4 words of 32 bit, the Round Key 0 will consist of k0,k1,k2,k3. The Round Key 1 will consist of k5,k6,k7,k8 and likewise.

We only need 13 x 4 = 52 keys, because the input state is still of 4 words of 32 bit each (128-bit) and each Round Key is also 128 bit. Its only the Master Key which is 192-bits(6 words of 32-bit)

This Animation explains AES-128.

$\endgroup$
5
  • $\begingroup$ @Rl8S great that helps, but during multiplication of round functions, do we multiple key (4x4) with input of (4x6) with input ? $\endgroup$
    – Johnny
    Commented Oct 2, 2017 at 9:50
  • $\begingroup$ Key is Only XORED with the input state. There is no multiplication of key involved. in AES only round state is multiplied with matrix. since round state is always 4x4, thus multiplication is simple matrix multiplication in GF(2^8). $\endgroup$
    – crypt
    Commented Oct 2, 2017 at 10:05
  • $\begingroup$ so lets suppose in round 1 , we are using K0,K1,K2,K3,K4,K5 and in round 2 we are using , K6, K7 ,K8, K9, k10, k11 , right? but the input matrix (data block) is 4 x 4 $\endgroup$
    – Johnny
    Commented Oct 2, 2017 at 10:12
  • 1
    $\begingroup$ in round 1, we are using k0,k1,k2,k3 as round key 0. in round 1 we will use k4,k5,k6,k7 as round key, k8,k9,k10,11 will form part of round key 2, and so on... See the image above in the answer, how the round keys are formed from the master key. $\endgroup$
    – crypt
    Commented Oct 2, 2017 at 10:46
  • $\begingroup$ So does this mean that no matter what is the key size of AES (128, 192, 256) during the key expansion only the first 128 bits of the key will retain its original value? $\endgroup$
    – 0xdeadbeef
    Commented Jul 11, 2023 at 13:56

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.