WPA/WPA2密钥派生与分发

WLAN安全核心:PSK认证与动态密钥生成原理详解 在无线局域网(WLAN)安全体系中,身份认证与密钥管理是保障数据传输机密性与完整性的基石。其核心原理在于通过安全的密钥协商协议,将用户输入的静态密码转化为动态的会话加密密钥。这一过程通常涉及预共享密钥(PSK)机制与四次握手协议,前者负责从口令生成主密钥,后者则基于随机数交换动态派生出临时密钥,实现了‘一次一密’的安全目标。从技术价值看,动态密钥生成有效抵御了重放攻击与密钥泄露风险,是WPA2/WPA3个人模式的安全基础。其应用场景广泛覆盖家庭无线网络、中小企业办公环境等需要便捷接入控制的场合。本文将聚焦于 阅读详情

                                AUTHOR:   Jeffrey.zhu

 

 

 

                                    BLOG:http://blog.youkuaiyun.com/gueter/

 

 

1 概述

 

WPA的密钥生成、管理系统结合了认证和数据私密功能,具有较强的健壮性,在STA和AP之间认证完成且四次握手成功后,各类密钥就产生了。在ESS网络中,RSNA定义了两类密钥层次结构:

1)            Pairwise Key层次结构,用于保护单播流量(Unicast Traffic),支持CCMP或TKIP,通过将发送地址、接收地址与Pairwise Key的绑定,可以在解密(Decapsulation)过程中,有效地检测出攻击者伪造的MPDU,即允许接收端的STA检测MAC欺骗及数据伪造,而GTK则不具备这样的能力;

2)            Group Key层次结构,用于保护多播(Multicast Traffic)和广播流量(Broadcast Traffic),由单个密钥组成。

       在ESS中,AP的BSSID就是IEEE 802.1X 认证器的AA(MAC 地址),而请求者的MAC地址(SPA)也就是STA的MAC地址,在RSN中,使用CCMP的STA在每个<TA, RA>对中,应该至少支持一个Pariwise Key,同时可以用<TA ,RA>来标识Pariwise Key。

       在复杂网络中(ESS与IBSS混合),当AP同时与使用WEP(用共享WEP密钥)的STA以及使用CCMP或TKIP(用Pairwise Key)的STA通信时,使用WEP的STA使用Default Key 0~3 作为shared WEP Key,问题在于,若AP设置成使用WEP Default Key 0与使用WEP的STA通信,那些不支持WEP Default 0但支持TKIP或者CCMP的STA将会在RSN Capabilites field里头指定为No Pairwise subfield,由此,AP也会配置成与WEP-STA及No Pairwise-STA(No Pairwise的使用仅为了在RSNA中支持WEP)通信,也就是说四次握手的时候AP不会安装Pairwise Temporal Key,而是在所有类型的通信流量中使用WEP Default Key 0。

       在复杂网络中,支持TKIP的STA都应该支持一个Pairwise Key,无论这个Pairwise Key是通过Key mapping Key(由PTK映射)方式获取,还是通过mapping to Default Key 0(由Default Key 0映射)的方式获取,这样,AP就会使用Pairwise Key用于保护AP与STA之间的单播流量,如果支持Key mapping Key的方式,那么<TA ,RA>可以用来标识pariwise Key,如果不支持,则帧中的密钥索引(Key index)将会置0,也就是说会使用Default Key 0保护通信流量。

       同时不支持TKIP和WEP Default Key 0的STA通过设置RSN IE的No Pairwise域来广播这一信息,在四次握手的message3中,AP将会清除install bit通知STA不要安装Pairwise Key,相应地,AP会发一个WEP shared Key给STA作为Default Key 0使用,这个Key将会用于STA与AP之间单播帧的传递。

       在TSN中,支持CCMP的STA将会同时支持Pairwise Keys和WEP Default Key 0,当配置使用CCMP时,STA协商为No Pairwise subfield是无效的。

       密钥层次的描述用到两个函数:

l  L(Str, F, L):从Str的左边开始,抽取从L到L+F-1的F bits;

l  PRF-n:产生n bits输出的伪随机函数。

 2 Pairwise Key层次结构

       Pairwise Key层次结构如下图所示:

         根据采用的密钥管理协议(AKMP)的不同,PMK的获取有两种情况:

l  802.1X+EAP模式下,PMK从MSK中派生而来,取MSK的前256 bits (bits 0–255)用来计算PMK :PMK =L(MSK, 0, 256),也就是说,在这种模式下,MSK的长度至少要是256bits,且PTK的的生命周期应该短于PMK的生命周期(lifetime),其中生命周期由认证服务器(AS)决定:lifetime = Session-Timeout + dot1xAuthTxPeriod 或者取MIB里头的变量: lifetime = dot11RSNAConfigPMKLifetime。

l  WPA-PSK模式下,一个256bits的PSK将会直接配置到STA和AP中,或者将pass-phrase(如用户输入的密码)配置到请求端(Supplicant)与认证器端(Authenticator),关于PSK的配置方法不属于IEEE802.11i标准的内容,其中常用的方法是系统与用户交互来完成PSK的配置(且具体实现中,应该为每一对STA之间的通信生成一个PSK),例如,如果配置了pass-phrase,则256bit的PSK将会通过下面方式派生,并当作PMK使用,利用PMK便可以派生出PTK,流程如下图所示:

 

l  SNonce 是由Supplicant端(即STA端)生成的一个伪随机数;

l  ANonce 是由Authenticator端(即AP端)生成的一个伪随机数。

       其中,pdkdf2_SHA1( ),SHA1_PRF( )在前述章节有所介绍。根据密钥套类型(TKIP/CCMP),我们将PTK的肢解进行进一步细分:

 

 

l  KCK,用于4-Way Handshake中对数据原始性认证进行保障,也就是MIC Key;

l  KEK用于4-Way Handshake和Group Key Handshake中的EAPOL-Key帧的加解密;

l  TEK,也就是TK,用于数据帧的加解密;

l  TMK则是TKIP中的MIC校验Key。

       最后,作者对Pairwise Key层次结构中不同密钥资源在不同信息安全体系中的使用进行了一个总结:

3 Group Key层次结构

       GMK的获取在前述章节有所介绍,GTK作为一个临时密钥(TK)应该是一个伪随机数,也就是说AP中的GMK(Group Master Key )应该周期性地改变,Group Key层次结构如下图所示:

 

l  Group nonce (GNonce) 是一个由IEEE 802.1X认证器生成的伪随机数;

l  AA是IEEE 802.1X 认证器MAC 地址;

       根据密钥套选择的类别,GTK被肢解为不同长度的TK(Temporal Key)用于保护多播与广播通信(Multicast / Broadcast Communication),也就是说,GTK被用于一个认证器端与多个请求端之间,其中,TKIP的X = 256, CCMP的X = 128 ,WEP的X = 40或104。

       类似地,作者也对Group Key层次结构中不同密钥资源在不同信息安全体系中的使用进行了一个总结:

                    

4 PeerKey Key 层次结构

         PeerKey Key层次结构如下图所示:

 

 

         由于PeerKey Key用在IBSS网络中,所以下面只进行简单介绍:

l  SMK为256bits;

l  STKs 用于Initiator STA与Peer STA之间,即用于IBSS中STA与STA之间;

l  TK 用于保护Initiator STA与Peer STA之间的单播通信(Unicast Communication);

l  INonce 是一个由Initiator STA产生的伪随机数;

l  PNonce 是一个由Peer STA 产生的伪随机数;

l  SKCK 用于保护4-Way STK Handshake中的认证数据;

l  SKEK 用于保障4-Way STK Handshake 中EAPOL-Key帧的保密性。

【Kali】WPA / WPA2破解 文章目录WPA / WPA2简介攻击WPA使用Aircrack-ng进行WPA破解用Cowpatty进行WPA破解使用GPU进行WPA破解PyritOclHashcatWifite WPA / WPA2简介       WPA / WPA2是Wi-Fi联盟开发的两个不同版本的安全协议,用以替代WEP作为802.11协议的安全标准。 WPA协议于2003年首次发布,并于2004年被其后继WPA2取代,作为IEEE 802.11i标准的一部分。     阅读详情

相关推荐

从EAPOL四次握手到密钥安装:一次搞懂WPA2/WPA3安全核心

本文深入解析WPA2/WPA3安全协议中的EAPOL四次握手过程,从密钥派生的原理到实战抓包分析,详细介绍了PTK和GTK的生成机制。通过实际案例和故障排查技巧,帮助网络工程师掌握无线安全核心,提升网络防护能力。

weixin_30516243的博客 247

跟一下wpa_supplicant(1) 初始化

转:http://blog.chinaunix.net/uid-20514606-id-3259402.html 环境:   android 2.3.4    wpa_supplicant 0.8   一切从 main.c 开始: (=>表示第1级, 那么==>表示下一级,类推) os_program_init => 参数解析& 获取 => wpa_supplican

╰☆╮EvilCode的专栏╭☆╯ 4381

网络安全密钥:从WPA2原理到强密码设置的全方位指南

网络安全密钥是现代Wi-Fi网络的核心安全机制,它本质上是一套融合了身份认证与数据加密的精密系统。其工作原理基于密码学协议,通过在设备和路由器之间建立安全的通信通道,确保数据传输的机密性和完整性。从技术价值看,强大的密钥体系能有效抵御蹭网、中间人攻击和数据窃听,是家庭网络和企业内网的基础防线。在应用场景上,无论是家庭路由器设置、公共Wi-Fi安全连接,还是物联网设备管理,都离不开对密钥协议的深入理解和正确配置。本文聚焦WPA2/WPA3协议,详解密钥生成机制与安全设置实践,帮助读者掌握创建抗暴力破解的强密码

weixin_34167819的博客 474

深入理解 wpa_supplicant(四)

本文为《深入理解Android Wi-Fi、NFC和GPS卷》读书笔记,Android源码为Android 5.1 android-5.1/external/wpa_supplicant_8/wpa_supplicant/wpa_supplicant.c static int wpa_supplicant_init_iface(struct wpa_supplicant *wpa_s,

人工智能 9949

19、无线局域网安全:认证与密钥管理详解

本文深入解析了无线局域网(WLAN)中的认证与密钥管理(AKM)机制,涵盖GTK、PTK、PMK等关键密钥的生成与作用,详细介绍了4次握手和组密钥握手流程,以及RSN信息元素在安全协商中的角色。文章对比了WPA/WPA2个人与企业模式的安全特性,强调802.1X/EAP在动态密钥管理和相互认证中的优势,并指出PSK网络的潜在风险。同时,通过复习题解析和实践建议,帮助读者掌握WLAN安全核心知识,制定合理的安全策略,淘汰不安全协议如WEP,提升整体网络防护能力。

tech5的博客 97

Wi-Fi 技术学习:一文读懂WPA2四次握手的密钥体系与交互逻辑

四次握手是接入点(认证方,authenticator)与客户端设备(请求方,supplicant)之间交换 4 条消息的过程,目的是生成加密密钥,用于对无线介质上传输的实际数据进行加密。这些通过四次握手生成的密钥源自某种原始密钥材料,我们会在后续内容中展开介绍。我们来总结一下前面讨论的全部内容:我广播了名为PRINTERS的 SSID 并尝试接入该网络。接入点在持续广播 SSID,当我点击 “PRINTERS” SSID 发起连接时,可以看到包含确认帧的完整交互过程。

专业开发者的博客,一个从事Android WiFi和蓝牙的工程师 1169

wpa_supplicant 笔记

原文地址:http://hi.baidu.com/leran0222/item/a4b33b77923ecd44ef1e53fc 来自于wpa_supplicant-devel文档 2、代码结构 核心功能、通用辅助功能、加密功能、TLS库、配置、控制接口、WPA提供者、EAP点、EAPOL提供、窗口端口和测试程序。 wpa_supplicant的实现被分成几个独立的模块。核心代码功能包

hellolwl的专栏 1813

Realtek无线模式的详细介绍

该资源详细描述了Realtek的无线网卡驱动芯片原理以及无线网卡的模式,real特拉作为主要的无线网卡芯片供应商,研究其产品设计有助于更深层次的开发和学习

wpa_supplicant子系统分析 android 5.1

看在android5.1平台上看了将近半个月的wpa_supplicant子系统,还是希望能将最近的一些所学整理成文档发表到博客(在学博客过程其实也是对自己的思路的一个在整理),有误地方欢迎指正交流。 wpa_supplicant是一个开源的软件项目,它实现了Station对无线网络进行管理和控制的功能。wpa_supplicant是Android用户空间中无线网络的核心模块,所有Frame

zjngogo的博客 4659

WINCC8.1工业组态软件安装与授权配置指南

SCADA系统作为工业自动化控制的核心平台,通过实时数据采集与监控实现生产流程可视化。WINCC作为西门子旗舰级组态软件,其8.1版本凭借稳定的运行时环境在汽车制造、流程工业等领域广泛应用。本文从工业控制系统软件安装规范切入,重点解析WINCC8.1与Automation License Manager的协同工作原理,详细说明包括系统环境检查、安装包校验、授权文件配置等关键技术环节。针对工程实施中常见的内存配置不足、授权管理器报错等典型问题,提供经过现场验证的解决方案,特别适用于需要进行产线监控系统升级维护

cqwf95925的博客 1651

保姆级教程:如何用Le2i Fall Detection Dataset训练你的跌倒检测模型(附数据集下载)

本文提供了一份详细的实战指南,教你如何使用Le2i Fall Detection Dataset训练跌倒检测模型。内容涵盖数据集的深度解析、预处理与工程化管道搭建、模型选择与训练策略,以及评估优化与部署考量,旨在帮助开发者从零构建高精度、可应用的跌倒检测系统。

assembly8low的博客 1288

wifi是怎么连接的---四次握手(四)

在扫描、认证(Auth)、关联(Assoc)之后,四次握手是真正建立安全连接、验证你输入的WiFi密码是否正确,并生成后续用于加密数据流量的密钥的过程。核心目标: 验证双方是否拥有相同的 PMK(从而证明密码正确),并基于这个 PMK 新鲜生成一个用于实际加密单次连接数据的临时密钥——PTK(成对临时密钥),以及用于加密广播/多播数据的 GTK(组临时密钥)

m0_62218946的博客 451

RPA 财务共享中心与RPA赋能

在和集团财务官交流的时候,客户经常会提到FSSC,其中有准备建立FSSC,正在建立FSSC,以及已建成FSSC正使用的,当中会有些对FSSC的疑虑和问题,所以花费些时间对FSSC进行了深入调研,从而也有幸拜读了王兴山、陈剑、梅震、钱自严等专业人士写的几本关于FSSC的书,对FSSC的前因后果有了更深入的认识,同时结合自己在FSSC的一些项目经验,故做了本次分享。 本文章主要分享财务共享中心以及R...

weixin_40244959的博客 2756

WPA/WPA2安全认证加密原理详解

1.WPA加密版本介绍 WPA加密算法的的两个版本介绍 WPA = 802.1x + EAP + TKIP +MIC = Pre-shared Key + TKIP + MIC 802.11i(WPA2) = 802.1x + EAP + AES + CCMP = Pre-shared Key + AES + CCMP l802.1x + EAP,Pre-shared Key是身份校验算法(WEP没有设置有身份验证机制) lTKIP和AES是数据传输加密算法(类似于WEP加密的R...

流风回雪的博客 1万+

ArcGIS遥感影像分类技术在植被覆盖度计算中的应用

本文详细介绍了如何利用ArcGIS遥感影像分类技术高效计算植被覆盖度。通过数据准备、监督与非监督分类方法详解,并结合制表分析与栅格计算器进行面积统计,最终实现从分类图到覆盖度百分比的全流程自动化与可视化,为生态评估与规划提供精准数据支持。

weixin_29091445的博客 420

保姆级教程:将YOLOv8模型封装成Docker镜像,集成到CVAT实现自动标注

本文提供了一份详细的保姆级教程,指导如何将YOLOv8模型封装成Docker镜像并集成到CVAT平台,实现自动化标注。通过环境配置、模型服务化封装、Docker镜像构建与优化、CVAT平台集成等步骤,帮助开发者高效完成计算机视觉项目的自动标注工作流,显著提升标注效率。

weixin_28692817的博客 414

WPA/WPA2加密分析

文章目录综述WPA加密方式分析密码字典攻击破解WPA-PSKwiresharkcowpatty加快WPA/WPA2 PSK加快速度解密WPA数据包 综述 WPA主要采用的是 临时密钥完整性协议(TKIP1) 加密算法,TKIP 旨在改进WEP,且无需依赖全新硬件来运行;WPA2则强制使用AES-CCMP算法来进行加密,比TKIP更强大、更坚固。 WPA和WPA2支持两种身份验证机制: 基于EAP...

关月的博客 9242

OpenCV-Python图形图像处理:自用的一些工具函数源代码

本文为《OpenCV-Python图形图像处理:博主自用的一些工具函数功能及调用语法介绍》内容配套函数的源代码。

老猿Python 2494

WIFI连接之WPA2-PSK介绍

通过上述步骤,WPA2-PSK密钥交换过程确保了连接设备和AP之间的通信的安全性。PSK密钥仅在连接设备和AP之间共享,因此密钥不会被非授权的第三方获取。WPA2-PSK是一种Wi-Fi连接的加密方式,它使用预共享密钥(Wi-Fi Protected Access II)(Pre-Shared Key,PSK)来保护通信的安全性。在EAPOL四次握手完成后,客户端和AP会共享一个PTK,该PTK将用于加密和解密数据传输过程中的数据包。这样,双方之间建立了安全的连接,可以进行数据的加密和保护。

szqy00的博客 5772

国科大作业考试资料《人工智能原理与算法》2024新编-第三次作业整理

1. 你的目标是让机器人走出迷宫。机器人面朝北,开始位置在迷宫中间。你可以让机器人转向面朝东、南、西或北。你可以让机器人向前走一段距离,在撞墙之前它会停步。 (1)将问题形式化。状态空间有多大? (2)在迷宫中游走,在两条路或更多路交叉的路口可以转弯。重新形式化这个问题。现在状态空间有多大? (3)从迷宫的任一点出发,我们可以朝四个方向中的任一方向前进直到可以转弯的地方,而且我们只需要这样做。重新对这个问题进行形式化。我们需要记录机器人的方向吗? 2. 传教士和野人问题

MatsumotoChrikk 984

SIWAVE仿真PCB操作说明

使用SIWAVE进行PCB仿真提取S参数的操作

sinat_15150363的博客 3066
上一篇: 802.11概述及帧结构分析
Jeffrey.zhu
博客等级 码龄20年 618粉丝 6原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值