APP下载

基于信道状态信息的Wi-Fi认证方法

2021-05-14周泽仑束沁冬史文华石鹏展

计算机应用与软件 2021年5期
关键词:振幅载波信道

周泽仑 戴 欢,2* 束沁冬 史文华 石鹏展

1(苏州科技大学 江苏 苏州215000) 2(苏州大学 江苏 苏州 215000)

0 引 言

近年,Wi-Fi已成为访问互联网的重要技术之一。根据ABI Research的报告[1],从2015年到2019年,Wi-Fi芯片的出货量接近180亿。并且随着配备Wi-Fi芯片的移动设备的发展和普及,Wi-Fi在能够随时随地访问互联网的需求中发挥了重要的作用。

根据报道[2],根据全国约1亿台无线路由器的市场规模估算,被蹭网的Wi-Fi数量高达950万个,按照我国年平均上网资费计算,每年将带来高达50亿元的网费损失。WPA是目前最常用的Wi-Fi连接认证技术。然而,利用WPA加密的Wi-Fi仍然会被附近区域的非法用户破解,极易造成网速变慢以及信息泄露等问题。造成这种情况的主要原因是用户为了连接方便,不愿意设置过于复杂的密码,甚至不设置密码,但是即使设置了极为复杂的密码,仍然有自动破解密码的软件使得密码认证无效。因此,研究如何有效防止附近非法用户在非限定区域内破解密码连接具有十分重要的意义。

许多研究者针对加强WPA安全性展开了研究。文献[3]提出了一种新的防御策略,该策略能有效预防使用GPU破解WPA,显著增强WPA的安全性。文献[4]提出了应用公钥加密的安全密钥交换方案,使用公钥系统交换用户选择的辅助密钥,可以保护用户免受同一Wi-Fi网络中的多次攻击。然而该方法仅限于提高WPA加密的安全性,可能无法避免所有破解工具的解密方式,并且密钥也存在被非法用户盗取的可能。

一些主流的路由器生产商已经注意到了这一问题,并采取一系列措施避免该问题,例如华为、TP-LINK等极大简化了设置Wi-Fi密码的步骤以鼓励用户设置密码。同时,小米等厂商也提出了利用白名单的方式识别非法用户的智能Wi-Fi节点。文献[5]通过对Wi-Fi安全参数配置的分析,提出了一种基于底层Wi-Fi安全参数实现连接认证后上层设备信息的Wi-Fi安全认证方法,然而利用白名单或者配置参数的方式需要用户提供设备mac地址等信息,这对于一般用户而言十分不友好。文献[6]等把用户输入密码时的动作特性作为Wi-Fi验证的第二要素,通过对于合法用户在输入密码时动作的独特性来进行Wi-Fi认证。然而利用破解工具的非法认证方式可能无法准确地捕获到非法用户的输入姿势,并且由于设备多样性存在,合法用户动作的独特性也难以捕捉。

针对上述问题,本文提出一种基于信道状态信息的Wi-Fi认证方法。基于CSI指纹库建立SVM模型,通过SVM计算得到发起Wi-Fi认证用户的位置信息,通过判断发起Wi-Fi认证用户的位置判定用户的合法性。为了去除CSI中的噪声,利用Hampel滤波器去除了CSI数据流中的奇异数据,避免了环境因素引起的位置误差。使用Percentile算法提升高斯核函数选取参数的效率,提升了认证方法的实时性。

1 信道状态信息

信号在无线传播信道中的单个路径特性可以被建模为时间线性滤波器,也被称为信道脉冲响应(Channel Impulse Response,CIR),其被定义为:

(1)

式中:αi、θi、τi分别为第i条传播路径信号的振幅、相位和时间延迟;M为传播路径的数量;δ(τ)为狄拉克三角函数[7]。

CIR在频域上表现为信道频率响应(Channel Frequency Response,CFR)。而在现有的许多Wi-Fi设备中,CIR以CSI的形式呈现。现有的正交频分复用(Orthogonal Frequency Division Multiplexing,OFDM)系统[8]中,CSI可以分别体现折射、散射、能量衰减对于信号的影响,并且描绘出信号从发射端至接收端的传播过程,从而减少多径效应[9]对于信号传播的干扰。其可以被定义为:

(2)

式中:fk为第k条载波的频率;H(fk)为第k条载波的CSI值。

每条载波的CSI值也能够表示该载波的振幅与相位,即也能定义为:

H(fk)=|H(fk)|ej∠H(fk)

(3)

式中:|H(fk)|和∠H(fk)分别表示载波的振幅与相位。

每个副载波的接收信号强度[10]与CSI的振幅成正比,可以表示为:

(4)

因此CSI振幅又可以表示两个路由器之间信号功率的度量。CSI振幅又可以被写为:

(5)

从式(5)可以看出,CSI振幅取决于各个载波中信号到达的时间延迟τi,而在多载波的分布下,不同位置造成的时间延迟必然是不同的,因此,CSI振幅在不同位置的情况下也必然是不同的。根据这一特性,可以得出使用CSI进行位置识别是有可行性的。

2 认证方法结构

基于信道状态信息的Wi-Fi认证方法的流程如图1所示。当有新设备发起连接时,新设备会向Wi-Fi发射源发出连接请求。此时,Wi-Fi发射源通过获取与新设备之间的CSI值以进行新设备的位置识别,当位置合法时,则允许连接。而为了合法用户在非法位置的连接,则可以加入白名单模块,仅拒绝不在白名单之内的非法位置连接。

图1 认证方法结构

具体位置识别方法如图2所示,当采集到与新设备之间的CSI值后,首先进行数据预处理,预处理包括CSI去噪和数据标准化。首先进行降噪处理,以去除CSI数据流中环境因素引起的噪声。其次,由于各个载波之间CSI值量级有一定差异,因此本文对去噪后的数据进行标准化处理,消除变量间的量纲关系,加强各个载波数据之间的可比性。当得到标准化过的CSI数据后,分为训练阶段和实时定位阶段。在训练阶段,将Wi-Fi的覆盖范围分成多个区域,分为非法区域和合法区域,随后基于在各个区域内采集的CSI数据建立指纹库,并且构建SVM分类模型。在构建SVM分类模型时,采用Percentile算法加快SVM高斯核函数参数选择效率增强认证实时性。选择SVM分类器作为认证模型的原因如下:1) 在进行Wi-Fi认证时,由于仅需要知晓新设备所在的区域,所以无须进行精确定位,因此选择轻量级的分类模型。2) SVM在分类任务上作用显著,尤其对于非法区域和合法区域的二分类任务。在实时定位阶段,采集到的实时数据经过预处理之后,直接通过SVM分类模型进行设备位置的识别。

图2 位置识别框架

3 数据预处理

3.1 CSI去噪

CSI的振幅信息存在由环境因素引起的噪声。为了去除这部分噪声,本文使用Hampel滤波器进行去噪处理,以得到更加有效的CSI的振幅信息。Hampel滤波的基本思想是加权滑动平均,最初被应用于去除数据中的奇异点,其判定数据xi的准则如下:

(6)

式中:m表示在数据序列的中值;Std表示数据序列的标准差;t表示一种标量阈值。当判断为奇异数据时,则奇异数据的位置用中值代替,其伪代码如算法1所示。根据算法1,可以有效去除环境因素造成的噪声。

算法1基于Hampel滤波的去噪算法

输入:CSI的振幅序列|H(fk)|=[|h1||h2|…|hN|]。

//前两笔数据直接复制

fork=3 ∶Ndo

m=(|hk|+|hk-1|+|hk-2|)/3

//计算中位数

//用中值代替奇异数据

end if

end for

由图3可以得出,经过Hampel滤波器可以有效去除CSI振幅中的噪声。

(a) 去噪之前振幅分布

(b) 去噪之后振幅分布图3 Hampel滤波去噪效果

3.2 CSI数据标准化

对去噪后的数据进行标准化处理是为了消除变量间的量纲关系,加强各个载波数据之间的可比性。标准化公式如下:

(7)

式中:u为CSI数据的平均值;s为CSI数据的方差;X′为标准化之后的振幅;X为源数据。

4 设备位置识别

4.1 SVM模型

为了确定请求连接设备的位置区域,本文利用SVM算法找出各个位置指纹库的判定边界,首先需要构建设备区域位置和CSI组成的样本。即(Xi,yi),其中:Xi为标准化过后的CSI数据,yi为当前设备的区域位置标记。由于SVM的本质是进行多次二分类,因此在每次二分类时,用yi∈{-1,1}作为二分类标记,yi=1表示该样本属于该类别,yi=-1表示该样本不属于该类别。

在寻找两类样本的划分界面时,两类的划分一般都是非线性的,因此可以将CSI通过非线性映射到更高维度的空间,然后在高维度的空间中寻找一个超平面将两类分开,其求解方式如下:

(8)

式中:w为超平面的斜率;b为超平面的偏移量。

在求解时,我们引入拉格朗日乘子法可得到其对偶问题,其拉格朗日函数可写为:

(9)

令L(w,b,α)对w和b的偏导数为零可得:

(10)

将式(10)代入式(9),可以得到求解公式为:

(11)

式中:C表示惩罚因子常数,表示在训练时分类错误的重视程度。最终分类的决策如下:

(12)

式中:sgn返回的是得到结果的正负号;K为实现非线性映射的核函数,本文采用的是RBF核函数,其映射关系为:

(13)

式中:γ代表RBF核函数的带宽。

4.2 Percentile算法参数选择

算法2Percentile算法

输入:标准化CSI振幅序列[X1,X2,…,Xn],n>2。

输出:最优γ和C的数值。

2. 在D中选取5,25,50,75,95分位上的数,设为Pi,1≤i≤5。

3. 将γ的候选值定为1/Pi,C的候选值定为exp(Pi/Pj),1≤i,j≤5。

4. 使用交叉验证法在γ和C的候选值中验证最佳值,最终的到最优的(γ,C)。

在选取C的最佳值时,由于Pi和Pj都是平方数,则Pi/Pj>0,exp(Pi/Pj)>1。那么C的选择范围被限定在大于1的一组序列之中,并且每个γ的候选值1/Pi,都对应5个不同C的候选值Pi/Pj,这样总共就形成了25对(γ,C)。尽管基于Percentile算法参数选择无法在所有可能的(γ,C)值中找到最佳的参数值,但是由于算法2中的5个候选值涵盖了大部分欧几里得距离的数值范围,因此最后也能够从25对(γ,C)中找到合适的参数对,使得SVM模型对于新设备位置有良好的识别率。

5 实 验

本文实验收集数据所采用的硬件设备为基于OpenWrt固件的TP-LINK 4900v2路由器。收集114个载波的信道状态信息时需要利用OpenWrt固件将信道带宽设置为40 MHz,频段为5 GHz。如图4所示,实验环境布置在三个12 m×12 m的实验室(R1,R2,R3)和走廊(L)内。采集数据时,将一台路由器放在R3内,另一台路由器作为移动节点分别在走廊L、R2和R3内分别收集1万笔数据。训练模型时,各取50%的数据作为训练集与测试集。

图4 实验环境

5.1 位置预测结果分析

图5展示了移动节点在不同位置的预测结果。可以看出在各房间内的预测准确度都可以保证在80%以上。这验证了利用位置服务实现Wi-Fi认证的可行性。

图5 位置预测结果

5.2 不同场景结果分析

图6中展示了移动节点在R1、R2、L内请求连接R3的错误认证率。假设R1、R2、L都为非法连接区域,移动节点在以上三个区域能够连接上处于R3的路由器的情况被认为是错误认证。可以看出所有错误率都保持在10%以下,其中处于L内时错误率最高,这主要是由于走廊与R3间隔较近,处于R3门口位置的数据较容易被误判为R3房间内的请求。

图6 不同场景错误认证率

如图7所示,移动节点在R1、R2、L内请求连接R3的认证准确率分别为93.6%、97.1%、95.2%。可以看出所有认证准确率都保持95%左右,验证了本文方法可以在Wi-Fi认证上发挥有效的作用。

图7 不同场景认证准确率

6 结 语

本文基于信道状态信息提出通过识别请求连接设备的位置实现Wi-Fi认证。该方法旨在避免非法用户通过破解Wi-Fi密码的方式在非法位置进行连接,有效弥补了传统密码验证方式的不足。实验结果表明,该方法能够有效识别出用户在限定非法位置的连接请求,识别准确率在95%左右。

猜你喜欢

振幅载波信道
基于信道分类分析的无线通信改进均衡方法
基于自适应学习的5G通信系统信道估计方法
大功率微波部件多载波无源互调分析与实验验证
低载波比下三电平NPC逆变器同步SVPWM算法
一种基于向量回归的无人机通信信道选择方法
中国移动LTE FDD&TDD载波聚合部署建议
十大涨跌幅、换手、振幅、资金流向
十大涨跌幅、换手、振幅、资金流向
十大涨跌幅、换手、振幅、资金流向
十大涨跌幅、换手、振幅、资金流向