目录
1 硬件模块
1.1 Wifi射频模
手机主板集成WiFi模块,包含天线、发射器和接收器,负责无线信号收发
模块通常位于手机主板顶部或边缘,靠近天线位置以优化信号接收,例如iPhone的WiFi模块位于上部,安卓手机多位于主板中部
模块支持IEEE 802.11b/g/n协议栈,覆盖2.4GHz或5GHz频段,通过无线信道与路由器通信
1.2 电源管理模块
控制WiFi模块的供电,通过GPIO和SDIO接口与CPU通信,确保模块在激活时正常工作,空闲时降低功耗
2 软件与协议栈
2.1 系统服务层
WifiService
:由Android系统启动,负责管理WiFi的开启/关闭、扫描热点、保存网络配置等核心功能
WifiMonitor
:监听底层事件(如扫描结果、连接状态变化),并通知上层应用
WifiManager
:提供API供应用调用,例如扫描网络列表、连接指定SSID
2.2 认证与协议处理
wpa_supplicant
:开源程序处理WIFi协议栈,包括扫描可用网络、执行WPA/WPA2认证、管理连接过程(如握手、密钥交换)
TCP/IP协议栈:内置在模块中,实现数据包的路由和互联网访问
3 连接流程
3.1 开启WiFi与扫描
用户通过系统界面启动WiFi,系统调用WifiService
发送扫描指令
WiFi模块进入扫描模式,通过天线接收附近AP广播的Beacon帧,获取SSID、信号强度、加密类型等信息
扫描结果通过WifiMonitor
反馈至系统,用户界面显示可用网络列表
3.2 选择网络与认证
用户选择目标网络后,系统检查是否为已保存网络:
若是,自动调用
wpa_supplicant
发起连接若首次连接,需输入密码或通过二维码扫描配置参数
对于隐藏网络(未广播SSID),需手动输入SSID和密码才能加入
3.3 连接与IP分配
wpa_supplicant
根据配置发起连接请求,与路由器完成四次握手(针对WPA2-PSK)或802.1X认证(企业网络)
连接成功后,路由器通过DHCP为手机分配IP地址,完成TCP/IP协议栈初始化
状态栏显示WiFi图标,系统自动保存网络信息供下次连接
4 特殊连接方式
4.1 WPS快速连接
支持WPS的路由器可通过物理按钮或PIN码快速配对,无需输入密码
4.2 热点模式(AP模式)
手机可切换为热点(如loT设备配置时),其他设备通过搜索SSID并输入密码连接
4.3 UDP广播搜索
在智能家居场景中,手机通过UDP广播发送探测包(如"Are You AirM2MIOT Smart Device?"),接收设备响应后建立连接
关键模块交互示例
扫描阶段:
WifiManager
->WifiService
->wpa_supplicant
-> WiFi驱动 -> 射频模块连接阶段:用户输入密码 ->
WifiService
配置参数 ->wpa_supplicant
发起认证 -> 驱动处理数据包 -> 路由器响应
5 WiFi高级认证流程
在需要高安全性的企业、教育机构或政府网络中,WiFi连接往往采用802.1X企业认证,其核心是EAP(扩展身份验证协议)框架
应用层| EAP-PEAP{包含MSCHAPv2)
传输层|TLS 1.2/1.3{加密隧道)
网络层|802.1X{端口控制协议)
数据链路层|802.11(WiFi帧)
5.1 认证流程
阶段1:PEAP TLS隧道建立
1.协议协商
客户端扫描到目标SSID(如 eduroam或Govwifi)后,触发EAP协商
客户端发送EAP-Response/Identity,声明支持PEAP方法
2.服务器身份验证
服务器返回包含X.509证书的EAP-Request/PEAP Start客户端验证证书合法性:
检查证书颁发机构(CA)是否受信任(若配置为"Use system certificates"则依赖系统预装CA)
验证证书主题(Subject)与域名(如wifi.tdsb.on.ca)是否匹配
3.TLS握手
客户端生成随机数并与服务器交换,通过Diffie-Hellman密钥交换建立对称加密密钥
最终形成端到端加密的TLS隧道,后续所有通信均在此隧道内进行
阶段2:MSCHAPv2内部认证
1.用户凭证交换
客户端在TLS隧道内发送明文用户名(ldentity)
服务器生成16字节随机质询(Challenge)并发送至客户端
2.三次握手验证
Step 1:客户端计算响应
-使用密码哈希(NT-Hash)对质询进行加密 -> 生成24宇节响应(Response)
Step 2:双向验证
-客户端发送Response,同时生成服务器验证值(Peer-Challenge)
-服务器验证Response有效性,并返回成功确认
注:MSCHAPv2通过双向验证防止中间人攻击,区别于单向验证的I旧版MSCHAP
3.密钥派生
双方基于共享密钥生成动态会话密钥(PMK),用于后续数据加密(如AES-CCMP)
5.2 Android端配置参数详解
参数项 |
推荐配置 |
技术解释 |
EAP方法 |
PEAP |
创建TLS隧道保护认证过程,支持服务器证书验证 |
阶段2身份验证 |
MSCHAPv2 |
在TLS隧道内进行基于密码的强认证,支持双向验证 |
CA证书 |
不验证/系统证书 |
企业网络常跳过CA验证以简化部署(安全风险需权衡) |
匿名身份 |
留空 |
避免暴露真实用户名(若网络要求匿名ID需填写特定值,如anonyous@domain) |
身份 |
用户名(如工号) |
对应RADIUS服务器中的用户标识,需与后端数据库匹配 |
密码 |
网络密码 |
需满足复杂度策略(如大小写+数字),避免使用弱口令 |
示例配置:
ЕAP Method: PЕAР
Phase 2 Authentication: MSCHAPv2
CA Certificate: Do not validate
Identity: employee123
Password:******
5.3 不同的EAP方法对比
5.3.1 基于证书的认证方法
1.EAP-TLS(Transport Layer Security)
采用双向证书认证,客户端和服务端均需提供X.509数字证书,通过TLS协议建立加密隧道,密钥派生基于证书中的公钥-私钥对
最高安全性:支持双向认证,抗中间人攻击,密钥不可被离线破解
标准化程度高:广泛兼容WPA2/WPA3-Enterprise网络
部署复杂:需维护PKI(公钥基础设施),客户端证书管理成本高
资源消耗大:移动设备处理证书签名可能影响性能
适用场景:金融机构、政府网络等高安全需求环境
2.PEAP(Protected EAP)
建立单向TLS隧道(仅验证服务器证书),内部嵌套其他认证方法(如MSCHAPv2)完成用户认证
简化客户端部署:仅需服务器证书,用户使用账号密码即可接入
兼容性强:支持Windows AD域集成,适合企业办公网络
单向认证风险:若客户端不验证服务器证书,可能遭受钓鱼热点攻击
依赖内部方法安全性:若嵌套弱协议(如EAP-MSCHAPv2),隧道可能被爆破
适用场景:教育机构、企业WiFi的大规模部署
3.EAP-TTLS(Tunneled TLS)
类似PEAP,但允许更灵活的内部认证方法(如PAP、CHAP),支持客户端匿名ID
灵活认证策略:可集成LDAP、RADIUS等多种后端认证源
隐私保护:匿名ID避免暴露真实用户名
配置复杂度高:需协调隧道内外两层认证参数
历史漏洞:早期版本存在会话恢复漏洞(如CVE-2007-3283)
适用场景:需兼容传统认证系统的混合网络
5.3.2 基于SIM卡的移动网络方法
1.EAP-SIM(GSM SIM Authentication)
利用GSM SIM卡的Ki密钥和三元组(RAND/SRES/Kc)进行认证,适用于2G/3G网络
无缝移动网络集成:运营商无需额外配置,直接复用蜂窝认证体系
用户体验便捷:自动认证无需输入密码
安全强低:GSM加密易被破解(如A5/1算法漏洞),仅支持单向认证
依赖旧技术:不适用于5G或非GSM网络
适用场景:公共WiFi与蜂窝网络的无缝切换
2.EAP-AKA(UMTS Authentication and Key Agreement)
基于3G USIM卡的AKA协议,使用128位加密算法(如Milenage)生成五元组(RAND/AUTN/XRES/CK/IK)
增强安全性:支持双向认证,密钥不可复用,抗重放攻击
兼容5G演进:作为EAP-AKA'的基础,支持向5G平滑过渡
计算开销大:USIM需执行多次AES运算,影响低端设备性能
硬件依赖:需专用USIM卡,无法用于普通SIM设备
适用场景:3G/4G移动网络与WiFi的融合接入
3.EAP-AKA'(Enhanced AKA for 5G)
在EAP-AKA基础上引入SHA-256哈希算法和密钥分离机制,支持跨网络(3GPP与非3GPP)互操作
前向保密支持:通过RFC 9048草案实现PFS(Perfect Forward Secrecy),防止历史数据解密
算法升级:弃用SHA-1,减少碰撞攻击风险
部署成本高:需升级USIM卡和AAA服务器
兼容性局限:旧设备不支持新算法
适用场景:5G NSA/SA网络、物联网设备安全接入
5.3.3 其他认证方法
1.EAP-PWD(Password)
基于共享密码的零知识证明(如Dragonfly协议),无需证书或SIM卡
部署简单:仅需预共享密码,适合小型网络
抗字典攻击:密码哈希加盐存储,防止彩虹表破解
安全性较低:依赖密码强度,易受社会工程攻击
标准化不足:实现差异可能导致互通性问题
适用场景:临时网络或资源受限的loT设备
2.EAP-LEAP(Lightweight EAP)
思科专有协议,使用动态WEP密钥和MS-CHAPv1认证
兼容旧设备:支持早期无WPA硬件的终端
严重漏洞:MS_CHAPV1易被破解,WEP加密已淘汰
厂商锁定:仅限思科设备使用
适用场景:已淘汰,仅存于历史遗留系统
EAP方法 |
认证方式 |
安全等级 |
部署复杂度 |
典型场景 |
核心优势 |
主要缺陷 |
EAP-TLS |
双向证书 |
5星 |
高 |
金融/政府网络 |
抗中间人攻击,最高安全性 |
需PKI支持,管理成本高 |
PEAP |
服务器证书+密码 |
4星 |
中 |
企业WiFi |
平衡安全与易用性 |
依赖内部方法,单向认证风险 |
EAP-TTLS |
服务器证书+多种 |
4星 |
高 |
混和认证系统 |
灵活支持多种后端认证 |
配置复杂,历史漏洞 |
EAP-SIM |
GSM SIM卡 |
2星 |
低 |
公共WiFi漫游 |
无缝移动网络集成 |
加密强度低,仅限GSM |
EAP-AKA |
USIM卡 |
4星 |
中 |
3G/4G融合网络 |
双向认证,抗重放攻击 |
硬件依赖,计算开销大 |
EAP-AKA' |
增强USIM卡 |
5星 |
高 |
5G/物联网 |
支持前向保密,跨网络互操作 |
需升级硬件,成本高 |
EAP-PWD |
共享密码 |
2星 |
低 |
小型网络/IoT |
无需证书或SIM卡 |
密码强度依赖,易受社工攻击 |
选型建议:
高安全场景:优先选择EAP-TLS或EAP-AKA',确保端到端加密与证书双向验证
企业级WiFi:PEAP+MSCHAPv2或EAP-TTLS,平衡安全性与管理便捷性
移动运营商:EAP-AKA或EAP-AKA',实现蜂窝与WiFi的统一认证
低成本部署:EAP-PWD适用于资源受限环境,但需强制密码策略