wifi认证过程wpa/wpa2

今天总结一下前段看协议,关于PSK(pre-shared key)方式下wpa/wpa2的认证过程。

1、RSNE

首先,在beacon或probe response帧中,带有RSNE字段,内容如下:

wifi认证过程wpa/wpa2_第1张图片

cipher suite是支持的加密方式,分组播数据(group data)、普通数据(pairwise)和组播管理帧(group management)。其中普通数据(pairwise chipher suite)可以给出列表,表示支持多种加密方式。加密方式如下:

wifi认证过程wpa/wpa2_第2张图片wifi认证过程wpa/wpa2_第3张图片

AKM suite是认证密钥管理方式,有以下几种:

wifi认证过程wpa/wpa2_第4张图片wifi认证过程wpa/wpa2_第5张图片

常用的是00-0F-AC:2,PSK SHA-1的方式。

通过RSNE广播了AP支持的加密方式、密钥管理方式还有RSN能力等。

2、AUTH帧

管理帧authentication中带有认证方式的指示,帧格式如下:

wifi认证过程wpa/wpa2_第6张图片wifi认证过程wpa/wpa2_第7张图片

认证算法有4种:OPEN SYSTEM、Shared Key、Fast BSS Transition、SAE。对于使用PSK的密码管理方式,STA选择OPEN SYSTEM方式与AP开展认证,实质上就是没有用AUTH来认证,而是作为开放系统可任意接入。熟悉WiFi连接过程的人都应该对以下的过程很清楚:

wifi认证过程wpa/wpa2_第8张图片

3、EAPOL-KEY 4次握手

在auth和association关联之后,AP发起基于EAPOL-KEY的认证流程:

wifi认证过程wpa/wpa2_第9张图片

EAPOL-KEY帧格式如下:

wifi认证过程wpa/wpa2_第10张图片

EAPOL-KEY帧中带一个随机数Key Nonce,由AP和STA分别生成一个随机数,叫ANONCE和SNONCE。这里‘A’和‘S’分别对应Authenticator和Supplicant。这两个随机数在message1和message2中,分别传递给对方。双方均获得了两个随机数值。再根据下图:

wifi认证过程wpa/wpa2_第11张图片

在PSK方式下,PSK就是PMK,双方根据PMK值和两个随机数,加上双方的MAC地址(AA表示Authenticator的Address,SPA表示Supplicant Address),用PRF-Length函数生成临时密钥PTK,关于PRF-Length函数,在802.11协议每12章有介绍,这里不展开。临时密钥是这次连接中所使用的数据加密/解密的KEY。

除Message1外,另外3个EAPOL帧均可以使用MIC进行合法性检验,双方用PTK和特定算法,对EAPOL帧内容进行运算,得到MIC,并发送给对方,由对方进行检验。

EAPOL帧中有KEY DATA字段,用于传递RSNE内容和其他KEY。当传递KEY内容时,KEY DATA内容需要进行加密,避免明文传输。

一个认证例子如下:

wifi认证过程wpa/wpa2_第12张图片

经过这个过程,双方生成了相同的PTK,用于数据加密,同时,通过对帧合法性检查,确认双方拥有相同的PSK(即PMK),认证通过。

以上就是典型的WiFi WPA/WPA2认证过程。在WiFi6中,增加了WPA3,是基于SAE的认证方式,以上面流程不同。下次我再讲讲SAE认证。另外,WiFi联盟定义了一种简单实现WiFi安全连接配置的方式——WPS(WiFi Protected Setup),详细说明可参考WiFi WPS的来龙去脉

 

你可能感兴趣的:(WiFi学习内容,wifi,wpa,eap)