Search Linux Wireless

Re: WPA and WPA2

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, May 24, 2017 at 05:27:50PM +1000, Tobin C. Harding wrote:
> Hi,
> 
> I am attempting to rewrite the ks7010 WEXT driver (drivers/staging/ks7010)
> to use the CFG80211 API.
> 
> I am reading 802.11 Wireless Networks - Matthew S. Gast for reference.
> 
> I have some confusion regarding WEP/WPA/WPA2/RSN, ciphers, keys and
> ie's?
> 
> As I understand, first there was WEP. Next we got a marketing term WPA
> which referred to 802.11i (which specified the protocols TKIP and
> CCMP, and also RSN).
> 
> WEP vs WPA
> ----------
> 
> To add to my confusion the ks7010 code seemingly mixes up the use of
> WEP keys and WPA keys, to set both the WEP and the WPA keys the driver
> uses the same MIB requests? Yet throughout the code WEP keys and WPA
> keys are stored in separate structures (and treated differently).

Oh, I just got why there is only one MIB request type - there are only
one set of keys used by the target

	DOT11_WEP_DEFAULT_KEY_VALUE1	= 0x13020101,
	DOT11_WEP_DEFAULT_KEY_VALUE2	= 0x13020102,
	DOT11_WEP_DEFAULT_KEY_VALUE3	= 0x13020103,
	DOT11_WEP_DEFAULT_KEY_VALUE4	= 0x13020104,

removing 'WEP' from the defines removes the confusion here :)

> If WPA is enabled are not WEP keys superfluous?
> 
> WPA vs WPA2
> -----------
> 
> Were WPA version 1 and WPA version 2 marketing terms or do they differ?
> 
> ieee80211.h does not seem to mention WPA2 (and cfg80211.h mentions it
> once only in some comments) however, from cfg80211.h;
> 
>  * struct cfg80211_crypto_settings - Crypto settings
>  * @wpa_versions: indicates which, if any, WPA versions are enabled
>  *	(from enum nl80211_wpa_versions)
> 
> When using the CFG80211 API we do not need to worry about the WPA/WPA2
> distinction? Can I drop all the WPA version 1 code from the driver?
> 
> A little more information:
> 
> The WEXT driver defines ciphers, from looking at ieee80211.h it seems
> that it uses WLAN_CIPHER_SUITE_XXX for WPA2 and for WPA it uses
> 
> #define CIPHER_ID_WPA_NONE    "\x00\x50\xf2\x00"
> #define CIPHER_ID_WPA_WEP40   "\x00\x50\xf2\x01"
> #define CIPHER_ID_WPA_TKIP    "\x00\x50\xf2\x02"
> #define CIPHER_ID_WPA_CCMP    "\x00\x50\xf2\x04"
> #define CIPHER_ID_WPA_WEP104  "\x00\x50\xf2\x05"
> 
> FYI ieee80211.h has
> 
> #define WLAN_OUI_MICROSOFT	       0x0050f2
> 
> Thanks for taking the time to read this mail, any suggestions most
> appreciated.
> 
> thanks,
> Tobin.



[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux