Q : About WPA of WLAN - How to generate AES key material?

Hello, everyone.

I am developing a WLAN Ndis driver for WPA and use WinXP Wireless Client
program as a WPA configuration.

Currently, I¡¯m testing "AES" encryption facilities at "Adhoc" mode
configuration.

I know 32 bytes of key material should be generated from SHA1 algorithm
defined at Wi-Fi.

(Shane noticed me that. Thank you very much Shane)

But i couldn't understand the appendix F of Wi-Fi specification, April 2003.

I need more information to generate AES key material.


The details are:

1) In 802.11i D3.0, an HMAC-SHA1 Test vectors shows that sha1 has 20 byte
output, but we need 32 bytes output for key material. I couldn't find any
explanation about that.


2) I couldn't know that where "digest" came from as an input parameter when
the first call to hmac_sha1.
See below.

hmac_sha1(
digest, ssidlength+4, //Where from digest? Did it come from SSID
value?
(unsigned char *)password, (int)strlen(password),
digest1);


3) What's the value of A_SHA_DIGEST_LEN when the 2nd call to hmac_sha1?
Is it 32? Where was it defined or explained? See below.

hmac_sha1(
digest1, A_SHA_DIGEST_LEN,
(unsigned char *)password, (int)strlen(password),
digest);


Thank you.

RE: Q : About WPA of WLAN - How to generate AES key material? by bburgin

bburgin
Thu Oct 23 14:56:22 CDT 2003

------=_NextPart_0001_C2F03C50
Content-Type: text/plain
Content-Transfer-Encoding: 7bit



You might also try cross-posting this at
microsoft.public.windows.networking.wireless.

Bryan S. Burgin
bburgin@microsoft.com

This posting is provided "AS IS" with no warranties, and confers no rights.



------=_NextPart_0001_C2F03C50
Content-Type: text/x-rtf
Content-Transfer-Encoding: 7bit

{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fnil\fprq2\fcharset0 MS Sans Serif;}}
\viewkind4\uc1\pard\f0\fs20
\par
\par You might also try cross-posting this at microsoft.public.windows.networking.wireless.
\par
\par Bryan S. Burgin
\par bburgin@microsoft.com
\par
\par This posting is provided "AS IS" with no warranties, and confers no rights.
\par
\par
\par
\par
\par }
------=_NextPart_0001_C2F03C50--