I think this is a good approach. > -----Original Message----- > From: Charles Clancy [mailto:[EMAIL PROTECTED] > Sent: Thursday, September 20, 2007 4:11 AM > To: Tschofenig,Hannes (NSN - DE/Germany - MiniMD) > Cc: [email protected] > Subject: Re: [Emu] EAP-GPSK & Key Derivation Function > > All, > > My suggestion is adding the following to the GPSK document: > > - For AES ciphersuite say keys MUST be 128 bits in length or > longer, and longer keys be truncated to 128 bits for use > - For HMAC ciphersuite say keys MUST be 256 bits in length or > longer, and longer keys be truncated to 256 bits for use > - RECOMMEND that 256 bit keys be provisioned in all cases to > provide enough entropy for all current and many possible > future ciphersuites > - Add a new section describing requirements on future > ciphersuites that addresses necessary security requirements > and describes their need to specify PSK sizes and how they > deal with different-length keys > > -- > t. charles clancy, ph.d. | [EMAIL PROTECTED] | www.cs.umd.edu/~clancy > > Tschofenig, Hannes (NSN - DE/Germany - MiniMD) wrote: > > Hi all, > > > > What is the issue? The derivation of MK uses "0x00" as a > key for the > > KDF. > > Here is the key derivation step: > > > > MK = GKDF-16 (zero, PL || PSK || CSuite_Sel || inputString) > > ^^^^^ > > Here is the problem. > > > > Here is what Charles recognized during the discussion: > > > > " > > I just looked though the definition of CMAC, the MAC used in one of > > our two ciphersuites, and the zero key looks like it might > cause some > > problems. Unlike the HMAC ciphersuites, it doesn't simply > concatenate > > the key with the data input. The first step is to compute: > > > > k0=E_k(0x00) > > k1=k0*x mod p(x) > > k2=k1*x mod p(x) > > > > These values would always be fixed. During the CBC operation, they > > are XOR'd with the final message block. k1 is XOR'd if the final > > message block's length matches the encryption block length. k2 is > > used otherwise on a message padded with 1000...0000b. > > > > I think what using an all-zero key does is reduce the > security of CMAC > > to the security of CBC-MAC with an all-zeros IV. While the > > ramifications of this are debatable for our applications, > it's still > > probably not a great idea. > > > > Currently we can't use the PSK as the input to the first > KDF because > > its length may not match the selected ciphersuite's block > length. We > > wanted to try to do was have a ciphersuite that could be > implemented > > using only AES. > > " > > > > Do you agree that the problem is real? > > > > If yes, then we believe that there are the following solution steps: > > > > 1) We would need some way to normalize the length of the > PSK for the > > selected ciphersuite. We could define an additional cryptographic > > primitive in every ciphersuite that does this derivation, such as > > SHA256-128 for the AES ciphersuite and SHA256 for the HMAC > ciphersuite. > > > > 2) We could switch to a different KDF, for example to the > one used for > > IKEv2. > > > > Can you come up with other solution approaches? > > > > Which solution approach should we pick? > > > > Ciao > > Hannes > > > > > > _______________________________________________ > > Emu mailing list > > [email protected] > > https://www1.ietf.org/mailman/listinfo/emu > > > > _______________________________________________ > Emu mailing list > [email protected] > https://www1.ietf.org/mailman/listinfo/emu >
_______________________________________________ Emu mailing list [email protected] https://www1.ietf.org/mailman/listinfo/emu
