WPA/RSN四次握手和PTK
WPA/RSN四次握手和PTK
WPA/RSN使用四次握手(4-Way Handshake)的方式生成所需的密钥。
作用
四次握手通过一系列的交互,从PMK(Pairwise Master Key)生成PTK(Pairwise Transient Key)。PMK来自MSK(Master Session Key),是MSK的前256位,32字节。
本文的主要目的是讲PTK,所以暂时忽略PMK和MSK。
PTK的内容
PTK包含3个部分,KCK(Key Confirmation Key),KEK(Key Encryption Key),TK(Temporal Key)。
PTK的总长度根据加密方式不同而不同。
当加密方式是TKIP时,PTK长512位,按顺序分别为KCK占128位,KEK占128位,TK占256位。
当加密方式是CCMP时,PTK长384位,按顺序分别为KCK占128位,KEK占128位,TK占128位。
KEK和KCK是给EAPOL-Key,也就是四次握手时,加密和完整性验证用的。TK用于后续的数据加密。
四次握手的报文都是基于EAPOL-Key的。EAPOL-Key的结构如下:
PTK的生成
生成PTK,需要5个必要元素,PMK,ANonce(Nonce 1),SNonce(Nonce 2),Authenticate MAC(MAC 1),Supplicant MAC(MAC 2)。如下图:
2个Nonce分别是Authenticator和Supplicant生成的随机数。
这张图里的输出包含4个部分,其实Data Encr和Data MIC合起来就是前面提到的TK。而EAPOL Encr/MIC分别对应前面的KEK和KCK。
四次握手的交互过程
下面的交互仅仅是一个流程,对内部的一些数据的处理就不细说了。
1/4:Authenticator -> Supplicant
Authenticator把ANonce送给Supplicant。Supplicant收到1/4后,就有了生成PTK的所有元素。因为1/4里同时也包含了Authenticator的MAC地址。
2/4:Supplicant -> Authenticator
Supplicant计算出PTK,把SNonce和自己的MAC地址送给Authenticator。同时,从2/4报文开始,后面的每个报文都会有MIC。1/4没有。
3/4:Authenticator -> Supplicant
Authenticator向Supplicant证明自己有有效的,同样有MIC加入其中
4/4:Supplicant -> Authenticator
仅是对3/4的一个ACK。说明PTK已经装好,后面的数据可以加密了。
WPA/RSN四次握手和PTK相关推荐
- Wifi_认证 、关联 和 四次握手(WPA/WPA2)
概述 什么是 四次握手? 四次握手是 AP (authenticator) 和 (supplicant)进行四次信息交互,生成一个用于加密无线数据的秘钥. Wifi的连接 让我们 从一次Wifi连接的 ...
- Wifi 认证,关联,四次握手(WPA/WPA2/WPA3-SAE)
引入 WPA3-SAE也是针对四次握手的协议. 四次握手是 AP (authenticator) 和 (supplicant)进行四次信息交互,生成一个用于加密无线数据的秘钥. 这个过程发生在 WIF ...
- Ralink wifi driver WPA四次握手可能的问题
测试在MT7620A上跑openwrt:router模式下,手机连接MT7620A板子就是失败. 经过分析发现: 在ralink的wifi driver中WPA成对密钥的四次握手,以及组密钥协商信令过 ...
- Android wpa_supplicant 四次握手 流程分析
记录wpa_supplicant四次握手的过程. 相关log:https://www.cnblogs.com/helloworldtoyou/p/9633603.html 接收到第一次握手,会设置一个 ...
- wpa_supplicant的log中四次握手分析
wpa_supplicant的log中四次握手分析 wlan的状态变化: log不全,截取的部分.用的9.0代码. 06-04 16:23:30.248 I/wpa_supplicant( 1465) ...
- Android Wi-Fi 四次握手简介
1 WPA-PSK 初始化工作 使用 SSID 和passphares使用以下算法产生PSK 在WPA-PSK 中PMK=PSK PSK=PMK=pdkdf2_SHA1(passphrase,SSID ...
- WIFI接入之supplicant 四次握手流程
目录 1.四次握手的目的 2.四次握手分析 2.1第一次握手:Authenticator->Supplicant 2.2第二次握手:Supplicant->Authenticator 2. ...
- 关于WPA/WPA2 4次握手
简单描述一下WPA/WPA2的4次握手中的一些关键词: WPA/WPA2使用4次握手的方式来产生所需要的密钥.四次握手通过一系列的交互,从PMK(Pairwise Master Key)生成PTK(P ...
- WPA-PSK 4-way handshake 四次握手过程
3.4.2 第一次握手 AP广播SSID,AP_MAC(AA)→STATION STATION端 使用接受到的SSID,AP_MAC(AA)和passphares使用同样算法产生PSK 3.4. ...
最新文章
- php 动态网格,php-动态更改引导网格方向(从ltr到rtl或reverese)
- 吴恩达机器学习(第二章)——单变量线性回归
- 剑指offer: 不用加减乘除做加法
- Hibernate sqlserver 的对象转成 Hibernate mysql 的对象时 需注意
- 系分 01 企业信息化战略与实施
- 用计算机为题目写作400字,以电脑为话题的作文
- linux 目录防篡改,Linux服务器下如何创建文件防篡改规则
- 南京大学计算机学类,并未开放计算机专业:南京大学2020年强基计划政策分析...
- 【算法导论】 内部排序算法总结
- 说透APP稳定性测试
- Android12 ---- Material You 应用
- 模拟卷Leetcode【普通】714. 买卖股票的最佳时机含手续费
- Easyui datagrid detailview使用简介
- JavaScript学习过程
- 关于mask蒙尘效果触发
- 网站分析基础概念之新近度
- 如何使用 Delta Lake 构建批流一体数据仓库
- 关于-3db截止频率
- c语言离散卷积编程,实验一 离散卷积的C语言编程.ppt
- Vue3中使用svg文件图标(TS)