薛 林
(上海物騏微電子有限公司,上海 201203)
Wi-Fi 網絡作為開放共享無線網絡,成為無線互聯的主流網絡。但目前Wi-Fi 網絡[1]的安全性是基于IEEE 802.11x 協議定義的身份認證和加密算法,該方法屬于數據鏈路層的認證方法,存在安全漏洞,容易被攻擊,非法用戶通過偵聽和大量重復的嘗試獲得Wi-Fi 密鑰并不困難。此外,通常情況下,Wi-Fi 網絡接入密碼為多人所知,容易被有意或無意泄露;還有黑客盜取合法用戶設備媒體接入控制(Media Access Control,MAC)地址,采用假冒的MAC 地址進入網絡的白名單。上述問題對于安全級別較高的場所,如國家機關和企事業單位,將構成嚴重的安全隱患。目前只能通過頻繁更換Wi-Fi 密碼來應對,但是這樣又會帶來用戶使用不方便的問題。
已有的解決方案是采用射頻指紋識別技術對用戶設備認證,其工作原理是:在Wi-Fi 網絡中安裝偵聽設備,接收網絡中所有客戶端設備發送的無線幀,并進行解調獲得星座圖;由于不同設備的發射機特性不同,解調得到的星座圖會有差別,將該星座圖和已知合法用戶設備的星座圖進行比對,確認該設備是否有合法身份。Wi-Fi 6 物理層采用正交頻分多址(Orthogonal Frequency Division Multiple Access,OFDMA)[2-4],各設備數據傳輸在時間上是重疊的,上述方法無法從時間上區分不同設備發送的無線幀,從而不能獲得某個設備的射頻指紋。而且星座圖和調制方式有關,同一個設備不同調制速率下的星座圖也各不相同,因此該識別方法局限性很大。
針對上述問題,本文提出了一種適用于Wi-Fi 6 協議的射頻指紋技術,用于對用戶進行身份驗證。將該方法應用在Wi-Fi AP 接收機上,對上行各用戶在OFDMA 的資源單元(Resource Unit,RU)[5-7]進行提取,然后使用信道估計獲得各上行用戶設備的發射機射頻特征,再計算該射頻特征與已有合法接入設備射頻特征的相似度,確定用戶設備是否合法。使用該方法可有效彌補原有認證方法的不足,實現更高等級的網絡安全。
如圖1 所示,整個用戶身份認證系統包括Wi-Fi 接入點(Access Point,AP)和認證服務器(Authority Server,AS)。其中Wi-Fi AP 完成對接入用戶設備(Station,STA)的射頻指紋提取,認證服務器AS 負責用戶身份認證工作,兩者可以是物理上分離的兩臺設備,它們通過網絡連接(包括有線或無線連接),也可以在AP 中集成AS 功能,使其成為單一物理實體。

圖1 Wi-Fi 網絡認證結構
接下來的章節分別介紹射頻指紋技術[8-9]、合法設備的射頻指紋錄入過程、對接入設備的射頻指紋認證過程[10]。
Wi-Fi 6 中上行物理層多用戶數據采用OFDMA方式復用,也就是將不同用戶數據分配到OFDMA波形的不同RU。例如,使用HT20 模式即20 Mbit/s傳輸帶寬內一共有256 個子載波,除去特殊用途占用的子載波外,其余子載波分配給不同用戶使用。如圖2 所示,4 個用戶的數據同時在頻域和時域上復用,在同一個時隙內不同用戶占用頻域內的不同頻帶,一個用戶在不同時隙可能占用的頻帶不同。協議規定20 Mbit/s 傳輸帶寬內子載波可以靈活配置分給9 個、4 個、2 個或1 個用戶,1 個用戶占用1 個RU,也就是說,1 個RU 在不同配置下可以有26 個、52 個、106 個或242 個子載波。

圖2 Wi-Fi 6 OFDMA 多用戶數據RU 分配
接入點AP 接收多用戶設備發送的OFDMA 方式復用的上行無線信號。AP 通過頻域信號處理,解調出全部子載波,然后根據RU 分配規則分離出不同用戶的RU。針對某個用戶的RU 進行信道估計,得到理想信號和實際信號的轉換關系式:
式中:din為實際接收到的解調符號矢量,dout為理想接收符號,為信道估計矩陣。由可以得到該用戶射頻發射機的以下特征:
(1)頻偏(Frequency Offset,FO),將ppm 轉化為dB 表示。
(2)載波泄露(Carrier Leakage,CL),單位為dB。
(3)相位噪聲(Phase Noise,PN),單位為dB。
(4)IQ 幅度失配(Amplitude Mismatch,AM),單位為dB。
根據這些特征參數,生成該用戶設備在其占用RU 上的射頻指紋矢量:
任意兩個射頻指紋的差異用射頻指紋間距(RF finger Distance,RFD)表示。假設兩個用戶STAi和STAj在第k個RU,即RUk上的射頻指紋分別表示為Fpi(k)和Fpj(k),則它們在RUk上的射頻指紋間距計算公式為:
式中:FODij(k)=|FOi(k)-FOj(k)|,表示STAi和STAj在RUk的頻偏距離;CLDij(k)=|CLi(k)-CLj(k)|,表示STAi和STAj在RUk的載波泄露距離;PNDij(k)=|PNi(k)-PNj(k)|,表 示STAi和STAj在RUk的 相 噪 距 離;AMDij(k)=|AMi(k)-AMj(k)|,表 示STAi和STAj在RUk的IQ 幅度失配距離。則STAi和STAj在全部共M個RU 上的射頻指紋距離集合表示為{RFDij(0),RFDij(1),…,RFDij(M-1)}。
定義STAi和STAj的射頻指紋總偏差為:
確認用戶身份的方法是:AP 獲得某個用戶STAX在所有RU 上的射頻指紋后,計算該指紋和合法用戶STAi的射頻指紋總偏差sum(RFDxi),若小于閾值RFDth(根據實際AP 型號確定),則該用戶設備可能是用戶STAi,否則不可能是用戶STAi。
基于上述射頻指紋識別方法,接下來分別說明合法設備的射頻指紋錄入過程和對接入設備的射頻指紋識別過程。
要使用Wi-Fi 網絡的設備,STA 首先需要取得合法身份,該合法身份是通過人工確認獲得的。STA 被確認為合法設備后,才能進行射頻指紋錄入。合法設備射頻指紋錄入的流程如圖3 所示,具體說明如下文所述。

圖3 合法設備射頻指紋錄入流程
(1)由認證服務器AS 發送“請求錄入指紋消息”給AP,要求錄入設備STA 的指紋,消息中包含該設備的MAC 地址信息。AP 返回“確認消息”(ACK)給AS,然后等待STA 接入。
(2)設備STA 發起“關聯請求”(Association Request),AP 檢查設備MAC 地址為STA 的MAC地址,然后同意接入,并返回“關聯響應”(Association Response)給STA。
(3)AP 發送“在指定RU 進行數據上報”消息,要求STA 在上行指定的某RU 上進行數據傳輸,這里假設為RU0。STA 在RU0上發送無線數據幀后,AP 提取RU0上的射頻指紋矢量,表示為Fp(0)。然后,AP 繼續發送“在指定RU 進行數據上報”消息,要求STA 在其他RU 上發送上行數據,這里假設為RU1。STA 在RU1上發送無線數據幀后,AP 提取RU1上的射頻指紋矢量,表示為Fp(1)。接下來,AP 繼續發送多條“在指定RU 進行數據上報”消息,要求STA 在其他RU 上發送上行數據,經過多次交互后完成全部RU 上的射頻指紋矢量提取。
(4)AP 發送“存儲設備射頻指紋”消息,假設總共有M個RU,則將射頻指紋集合FPG={Fp(0),Fp(1),…,Fp(M-1)}上報給AS,AS 將該射頻指紋集合和STA 的MAC 地址綁定,保存到數據庫中。
某個設備STAX請求接入Wi-Fi 網絡時,網絡采用射頻指紋和數據鏈路雙重認證的方式。射頻指紋認證和數據鏈路認證可以采用不同的先后順序,實施例中會加以說明。這里只說明射頻指紋認證過程,如圖4 所示。

圖4 接入設備射頻指紋認證流程
(1)AP 發送“在指定RU 進行數據上報”消息給STAX,要求STAX在上行指定的某RU 上進行數據傳輸,這里假設為RU0。STAX在RU0 上發送無線數據幀后,AP 提取RU0上的射頻指紋矢量,表示為FpX(0)。然后,AP 繼續發送“在指定RU 進行數據上報”消息,要求STAX在其他RU 上發送上行數據,這里假設為RU1。STAX在RU1上發送無線數據幀后,AP 提取RU1上的射頻指紋矢量,表示為FpX(1)。接下來,AP 繼續發送多條“在指定RU進行數據上報”消息,要求STAX在其他RU 上發送上行數據,經過多次交互后完成全部RU 上的射頻指紋矢量提取,得到被認證設備STAX在全部RU上的指紋信息集合,表示為FPGX={FpX(0),FpX(1),…,FpX(M-1)}。
(2)AP 發送“認證設備射頻指紋”消息給AS,消息包含設備STAX的MAC 地址和指紋信息集合FPGX。AS 首先通過設備MAC 地址檢索已有用戶數據庫,確認該MAC 地址屬于已知用戶設備:若MAC 地址不是已知合法用戶的,則向AP 返回認證失敗消息;若MAC 地址正確,從數據庫中提取該MAC 地址對應的射頻指紋集合,假設為數據庫中第i個用戶,則指紋集合表示為FPGi。計算其和STAX射頻指紋集合FPGX的射頻指紋總偏差sum(RFDxi),若小于閾值RFDth,則該用戶設備可能是用戶STAi,返回認證成功消息;否則不可能是用戶STAi,返回認證失敗消息。
對接入設備的身份認證采用射頻指紋和數據鏈路的雙重認證方法,二者可以采取不同的先后順序,下面分別討論。
如圖5 所示,使用先射頻指紋認證,再數據鏈路認證的方法時,先執行AP 采集STAX射頻指紋,AS 完成射頻指紋檢索比對,確認射頻指紋是否為合法用戶的射頻指紋:若不是,則直接拒絕該設備接入網絡;若是,再繼續數據鏈路認證。也就是執行802.11x 協議規定的過程,包括:用戶設備提供Wi-Fi 網絡密碼,AP 進行確認;雙方進行加密方式和密鑰的協商過程,最終獲準用戶使用Wi-Fi 網絡。

圖5 接入設備射頻指紋認證方法1
該方法的優點是,在射頻指紋識別階段就可以攔截非法用戶的入侵,不讓其利用網絡進行數據傳輸。缺點是,認證時間較長,因為對其進行射頻指紋識別需要經過持續數十秒的數據統計處理,造成用戶等待接入時間較長,體驗感差。
如圖6 所示,使用先數據鏈路認證,再射頻指紋認證時,先執行傳統802.11x 協議規定的數據鏈路層認證過程,完成Wi-Fi 網絡密碼檢查,加密方式和密鑰協商,允許用戶接入網絡。然后在后續用戶設備數據傳輸階段,AP 對其射頻指紋進行提取,AS 完成射頻指紋檢索比對,確認射頻指紋是否為合法用戶的射頻指紋:若不是,則發送“終止網絡連接”消息給該用戶,停止其繼續接入網絡;若是,繼續允許該用戶設備使用網絡傳輸數據。

圖6 接入設備射頻指紋認證方法2
該方法的優點是,不會額外增加用戶等待接入網絡時間,體驗感較好。缺點是,需要容忍非法用戶持續數十秒的網絡入侵,有一定的安全隱患。
本文介紹了一種適用于Wi-Fi 6 協議的射頻指紋技術,使用該技術實現對Wi-Fi 用戶的身份驗證。通過先對OFDMA 的各資源單元提取,再經過信道估計獲得接入設備的發射機的射頻特征,然后計算出該射頻特征與已有合法接入設備射頻特征的相似度,最終判斷設備是否為合法接入設備。該方法還可以結合現有協議中數據鏈路層的身份認證,實現雙重認證。本方法可以應用在對網絡安全要求較高的場所,實現更高等級的網絡安全。