现在的位置: 首页 > 综合 > 正文

atheros无线驱动之:管理帧:认证帧

2014年09月05日 ⁄ 综合 ⁄ 共 811字 ⁄ 字号 评论关闭

1:认证帧的组成
看看80211协议上面对帧的组成的说明如下:

先看看在认证模式为:open时,认证帧的格式:认证请求和认证响应。

响应帧

有上面的俩个帧的格式可以看出:使用的认证算法为:0,seqNum分别为:1和2.
##################################################################################
share模式,在看share模式之前先看看协议的“8.2.2.3 Shared Key authentication” 在此接使用了四个帧来完成WEP的认证过程。其中涉及到前面提到的seqNUM和challenge text。看看下面copy的过程。


第一包:

第二包:其中包含了challenge text 字段信息。

第三个数据包,此包已经加密:

AP对STA的进行解密,判断密钥是否正确。

其中seqNUM的定义如下:
enum {
    IEEE80211_AUTH_SHARED_REQUEST   = 1,
    IEEE80211_AUTH_SHARED_CHALLENGE = 2,
    IEEE80211_AUTH_SHARED_RESPONSE  = 3,
    IEEE80211_AUTH_SHARED_PASS      = 4,
};
在前面的文章中可以,在函数ieee80211_input()函数中会后就会对接受到的三大数据包格式进行处理。由于认证属于管理帧,故在函数:

ieee80211_recv_mgmt()----->ieee80211_recv_auth()------>ieee80211_mlme_recv_auth()---->mlme_auth_shared()----->ieee80211_send_auth()
mlme_recv_auth_ap()函数中:
ru
仔细看代码可以发现其中对如challenge text ,status code,长度是否为空进行判断 .


抱歉!评论已关闭.