目錄
1 硬件模塊
1.1 Wifi射頻模
1.2 電源管理模塊
2 軟件與協議棧
2.1 系統服務層
2.2 認證與協議處理
3 連接流程
3.1 開啟WiFi與掃描
3.2 選擇網絡與認證
3.3 連接與IP分配
4 特殊連接方式
4.1 WPS快速連接
4.2 熱點模式(AP模式)
4.3 UDP廣播搜索
5 WiFi高級認證流程
5.1 認證流程
5.2 Android端配置參數詳解
5.3 不同的EAP方法對比
5.3.1 基于證書的認證方法
5.3.2 基于SIM卡的移動網絡方法
5.3.3 其他認證方法
?
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適用于資源受限環境,但需強制密碼策略
?