wpa_supplicant is a free software implementation of an IEEE 802.11i supplicant for Linux, FreeBSD, NetBSD and Microsoft Windows. In addition to being a full-featured WPA2 supplicant, it also implements WPA and older wireless LAN security protocols.
WPA and full IEEE 802.11i/RSN/WPA2
WPA-PSK and WPA2-PSK (pre-shared key) ("WPA-Personal")
WPA with EAP (e.g., with RADIUS authentication server) ("WPA-Enterprise")
key management for CCMP, TKIP, WEP (both 104/128 and 40/64 bit)
RSN: PMKSA caching, pre-authentication