What are the differences between WPA2-PSK and WPA2 EAP-PSK? What are the pros and cons of using one configuration or the other?
WPA2 EAP-PSK uses WPA2-Enterprise to do an 802.1X authentication to server. It uses the PSK method of EAP and allows a client to authenticate with just the use of a PSK.
The pros of WPA2-PSK is that it is supported in every 802.11 device of relatively recent manufacture (2nd gen 802.11g or so). It is simple to set up and simple to use.
WPA2 EAP-PSK should be somewhat more secure in that it would be harder to calculate the PSK from captured traffic. However, many of the same vulnerabilities exist if an attacker were able to get a hold of the PSK (social engineering, written down, etc).
There are a number of drawbacks:
- Like other WPA2-Enterprise methods, you need to have an authentication server set up to authenticate against which adds complexity.
- Both the server and the client supplicant need to support the EAP method. AFAIK, only wpa_supplicant has support for EAP-PSK and you will not find this native on most devices.
- EAP-PSK has never passed the "experimental" stage of development.
- There doesn't seem to be a lot of interest in it, either people don't want the complexity of WPA2-Enterprise at all (even with a simple authentication method) or they are content to use other more widely supported EAP methods.
The major distinction between the two should not be about cryptography. WPA2-PSK, provided the shared password is of sufficient complexity, is unbreakable given current resources. The use of WPA-EAP-PSK or any WPA Enterprise (i.e. EAP) implementation should not be in an effort to increase the cryptographic strength of a wireless network but to provide other benefits such as granular control over who or what connects to the network.
With the EAP options under WPA-Enterprise each user and device can have its own credentials and this increases control and auditing. However, some of those options are very cryptographically weak. To use an analogy, WPA-PSK is like having a dead bolt on your company door and providing every employee the same key. WPA-Enterprise/EAP is like having an key card system that electronically unlocks the door. To carry the analogy further, while those key cards give great control and auditing for each employee, the underlying lock often is weaker than the good old-fashioned deadbolt.
Back to the crypto, with a 256 bit key, the only feasible attack is to capture the wireless handshake and then run a dictionary attack. As long as you choose a password of such complexity that it wouldn't appear in a dictionary list, WPA-PSK will be unbreakable. Now, if you have a need or concern about all users or devices sharing one key because of social engineering, trust, etc., then you do need to look at EAP/Enterprise options, but cryptographically, you're probably not going to beat WPA-PSK.