基于深度神经网络的设备身份识别研究

2020-08-07 14:38郑雅文任佳鑫刘铭
现代计算机 2020年18期
关键词:信噪比射频准确率

郑雅文,任佳鑫,刘铭

(北京交通大学计算机与信息技术学院,交通数据分析与挖掘北京市重点实验室,北京100044)

0 引言

随着移动网络的快速普及,无线网络技术逐渐深入渗透到人们生活中的方方面面,产生了智慧家居、车联网、智慧城市、智慧医疗[1]等新型的物联网应用,正在形成一个“万物互联”的世界。无线网络的通信过程具有开放性,无线网络中不同设备发送的无线信号都可能被其他设备接收到。这种开放性在给无线网络带来部署便利的同时,也产生了用户信息安全隐患。恶意用户可能伪装成合法用户,入侵无线网络展开主动攻击,使得合法用户信息有被窃取盗用的风险。2016 年美国域名解析服务提供商Dyn 公司遭受大规模DDoS攻击,攻击源主力为Mirai 病毒控制的物联网设备,导致美国东海岸地区网络大面积瘫痪[2]。恶意用户也可能伪装成基站[3]或者设置钓鱼AP[4],欺骗合法用户接入,可能窃取合法用户信息甚至控制合法用户设备,对合法用户信息安全造成威胁。在360 互联网安全中心最新发布的《2019 年手机安全状况报告》中显示[5],360手机卫士识别和拦截的垃圾短信高达95.3 亿条,且因信息窃取引起的电信诈骗损失金额高达1546.5 万元。由此可见,一旦恶意用户突破网络接入的安全认证环节,将对无线网络安全产生严重影响。因此,保障无线网络安全的关键之一在于保障无线设备接入时身份识别环节的安全。

目前,无线设备的身份识别技术主要有传统基于密码的方法,这些方法主要使用IP、MAC 地址等作为身份识别的依据[6],或者使用复杂的数学运算、协议产生密钥、口令、数字签名等用于完成用户之间的身份识别工作[7]。但这样的方法存在密钥信息泄露、篡改等隐患,如今计算机能力的不断提高,也使得破译密码的能力不断增强,从而威胁到基于密码的身份识别方法的有效性。并且物联网设备中包含大量轻量级设备,其运算能力无法满足这种复杂度较高的身份识别方法。因此,单纯使用加密的方法变得不再可靠,需要寻找一种更加稳定和安全的无线设备身份认证方法。

近年来,越来越多研究表明利用射频指纹(Radio Frequency Fingerprinting,RFF)可以很好地进行设备的身份识别。射频指纹是无线网络设备在制造生产过程中形成一种固有的设备缺陷。如图1 所示,从基带数字信号到射频模拟信号的变换过程中会对射频信号产生特有影响,因而可以基于这些固有的、稳定且唯一的信号特征实现无线设备个体身份识别。例如正交混频器中处理同相(I 路)与正交(Q 路)时,由于二者之间的增益和相位不匹配,产生I/Q 偏移[8];振荡器在发射机和接收机端进行载波上变频和下变频时,由于二者存在精度差异,导致载波频偏出现[9];功率放大器在一段时间的线性增长达到饱和后会出现非线性增长的情况,此时会由于放大器性能不同而产生输出信号的压缩不同[10]。本文选择主要考虑相位偏移[11]作为射频指纹来进行设备的身份识别,接收机端接收到的信号中包含了相位偏移带来的稳定影响,通过深度神经网络的学习达到分类判别的目的。

图1 射频指纹的产生机理

利用射频指纹进行身份识别的识别技术主要分为两种。其一是基于统计分析方法,Polak 等人利用假设检验的方法[12],对射频指纹特征进行合适的检验统计量设计,以此进行身份识别分类。但该方法要求信号需要高斯分布,在实际环境中并不始终成立,因此使用有一定局限性。其二是基于机器学习的方法,彭林宁等人利用K-means 的聚类方法对设备进行分类[13],但其结果在低信噪比下难以达到较好的识别效果,且利用差分星座轨迹图进行射频指纹提取会因其统计性丢失一部分射频指纹特征。在其更新的研究中,使用深度学习的卷积神经网络对差分星座轨迹图表示的射频指纹进行设备分类[14],但该方法针对GFSK 调制设计,应用于其他调制方式和通信协议时性能有所降低。

对此,本文提出一种使用射频信号的原始采样数据,并利用深度神经网络进行射频指纹特征学习与分类的无线设备身份识别方法。本文方法与以往算法相比,最大的区别在于直接使用射频信号的原始采样数据而不需要对采样数据进行预处理,使得设备识别性能不受信号预处理的影响,适用面更广。实验证明,该方法具有良好的学习分类特征的能力,在用户数目增加和信噪比降低的环境中也可以获得很好的分类准确率。

1 系统模型与信号模型

1.1 系统模型

考虑一个存在非法设备主动攻击的无线通信环境。如图2 所示,其中包括一个合法发射机(Bob)、一个合法接收机(Alice),以及1 到9 个非法发射机(Eve)。Bob 向Alice 发送接入请求信号,二者之间的通信为正常通信,此时此信号首先从基带数字信号转化为射频模拟信号,该过程会经过Bob 设备发射机的射频前端,因射频前端在制造过程中存在固有缺陷,会对模拟信号施加特有的影响。再经过随机的静态瑞利信道HBA,此时信道以及所处环境中的噪声也会对信号产生一定的影响,通常可被视为噪声因素。合法接收机Alice 利用其接收机射频前端,将射频模拟信号再次转化为数字信号。这一信号转化过程同样会对信号产生特定影响。同理,非法设备Eve 也发送接入请求,经过非法发射机的射频前端、信道HBA、到达合法接收机射频前端,对信号产生不同的影响。此时,若合法通信设备Bob 的身份识别机制(如密钥)被Eve 窃取,则Eve可以模仿Bob 身份,对Alice 实施入侵。传统基于密钥的身份识别机制将难以发现此类入侵,若在传统密钥的基础上加上基于射频指纹的身份认证识别方法,在Alice 处设置一个基于深度神经网络学习的身份识别判别器D,通过对合法设备、非法设备不同射频指纹的学习进行判别,则可以依据发射机的射频指纹特征实现无线设备的身份识别。由于射频指纹来自于射频信号特征,而与其所承载的信息无关,因而可以在传统密钥机制上为无线网络增加另一层安全保障。

图2 存在恶意攻击用户的无线通信系统模型

1.2 信号模型

由于本文所提出的算法从原始射频采样信号中提取射频指纹,因此适用于采用各种调制方式的系统。为表述清晰起见,本文假设用户通信采用QPSK 调制方式。QPSK 调制包含四个输出相位θ0,分别为每个相位携带两位二进制信息,分别对应00、01、11、10。使用QPSK 调制方式对基带数字信号进行调制,首先数字信号经过电平发生器产生相对应的IQ 信号,再经过本地振荡器使I/Q 两路分别与cosω0t、sinω0t载波进行调制,将信息加在到相应输出波形的相位上。根据欧拉公式,经过QPSK 调制后的调制信号可表示为[15]:

由于生产制造中的工艺限制,每个设备会因自身制造误差产生独特且稳定的相位偏移,令发射机的相位偏移为θT,接收机的相位偏移为θR,每个样本点的采样相位偏移为Δ。对于不同的发射机设备而言,θT为独立且唯一的相位偏移值,以此作为区别不同设备的射频指纹。由于接收信号为同一观察者Alice,因此θR是相同。假设系统所处环境的信道为静态瑞利信道,即在一定时间内信道参数不随时间变化而变化。在这样具备开放性与稳定性的无线信道环境中,攻击者易于窃听到稳定的合法信号样本,因此基于密钥的设备身份识别机制非常容易受到攻击[16]。信道也会对相位偏移造成影响θH,再设置环境中存在加性噪声N,这些因素会对射频指纹的识别带来一定的干扰[11]。综上,本文所考虑的信号可以表示为:

随后本文将基于该模型生成数据集,用于仿真实验和性能验证。

2 基于深度神经网络的设备身份识别

本文将提出一种基于深度神经网络的设备身份识别方法,具体而言,本文设计了一个包含三层隐层的全连深度神经网络,使用模拟仿真接收机接收到的原始采样射频信号作为数据集进行训练学习与分类。

2.1 深度神经网络

深度神经网络(Deep Neural Networks,DNN),是一个拥有多层隐层的神经网络,其学习过程依据前馈神经网络进行[17]。以单个神经元为例,神经元在接收到上一层神经元的输入x后会按照权值ω与输入值连接并传递,当前神经元接收到所有输入后,与阈值进行比较,并使用激活函数激活,得到下一个神经元的输入:

其中,b为偏置项,f(·)为激活函数。以此类推,在到达最后一个神经元时,使用BP 算法前向传播,调整参数,迭代优化,使得最终训练误差达到可接受范围内。本文算法使用的误差函数为基于二分类的交叉熵函数:

其中y为样本标签值,来自合法接收机的射频信号样本为1,来自非法接收机的射频信号样本为0。p为经过Sigmoid 函数输出所测试的射频信号样本来自于合法接收机的概率。

为了适应模型的复杂度,仅仅使用这样简单的神经网络显然是不够的。通过增加隐层的神经元个数可以增加模型复杂度,但增加隐层层数会显得更有效。因此,深度神经网络更能满足复杂度高、容量大的学习任务。

2.2 深度神经网络结构

本文所提出的基于深度神经网络的设备身份识别过程如图3 所示。

图3 基于深度神经网络的设备身份识别流程图

在接收机Alice 端接收到分别来自合法发射机Bob 和非法发射机Eve 发送的信号,令其为Y和Y' 。与(2)式中的相位偏移对应,θB与θE分别为合法与非法发射机射频前端对发射信号造成的相位偏移,而θBA与θEA分别为合法与非法信道对信号产生的相位偏移。θA则是合法接收机射频前端对接收信号产生的相位偏移。在训练期过程中,将从Bob 端发来的信号标记为标签1,从Eve 端发来的信号标记为标签0,将信号与标签绑定后输入网络进行训练。经过一定的训练过程,便可得到一个本质上是分类器的设备身份识别网络。

根据人工神经网络领域中的通用近似定理,任意一个定义在闭集上的连续函数,均可由三层前馈神经网络模拟到任意精度[18]。因此,本文设计了一个包含三层隐层的深度神经网络来学习(2)式中的射频指纹特征。本文所提出的深度神经网络结构如图4 所示。

图4 深度神经网络结构

其中,主要包含三个部分,输入层、隐层、输出层。

(1)输入层:

输入层由800 个神经元组成。由于本文针对射频信号的原始IQ 采样数据,每个采样数据均表示为复数形式。传统神经网络无法直接对复数进行处理。为了解决这一问题,本文将复数信号转化成为实数形式后输入神经网络进行后续处理[19]。具体而言,将数据集中每个复数的实部ai、虚部bi分离出来,并按照每一个样本点的实部和虚部交替排列,形成输入数据向量。

(2)隐层:

本文提出的隐层采用3 层全连层,神经元个数分别为200 个、100 个、100 个。隐层中的激活函数使用ReLU 函数,并在最后一层隐层后使用dropout 层对网络参数进行调整。

(3)输出层:

最后一层为输出层,神经元个数为1 个,采用Sigmoid 函数作为激活函数。输出结果为一个0 到1 的实数,表征该输入样本的标签为0 和1 的概率,将其与数据的真实标签用交叉熵函数作为损失函数计算损失值,依此损失值进行前馈调整、迭代学习。

2.3 数据集

依据前文所述的信号模型产生通信信号的数据集。信号所承载的信息为随机生成,且各条信号样本的信息独立生成。训练集与测试集中的信号样本均独立。与传统射频指纹研究使用固定前导信息进行射频指纹提取不同[20],本文所提出的射频指纹抽取方式仅与信号波形有关,而与所承载的信息无关。更适用于传输随机数据的实际场景。考虑静态的瑞利信道,即它对信号产生的是一个随机未知且在一段时间内保持不变的影响。引入加性噪声为5dB 到40dB,步长为5dB共8 个信噪比(SNR)值,涵盖到正常无线通信的信噪比范围。

根据研究实验变量不同,分为两个数据集,两个用户数据集(2users data)、十个用户数据集(10users data),每个数据集中包含不同信噪比情况下的数据样本。两个用户数据集代表的是最简单常见的设备身份识别场景,即一个合法用户、一个非法用户。而十个用户数据集代表了常见的智慧家庭或者智慧办公应用环境下每个接入点所包括的设备数量。

(1)2users data:

该数据集中包含两个用户,其中,相位偏移设置为合法发射机θB=π/3,合法接收机θA=π/4,非法接收机θE=π/6 。在每种信噪比下收集20000 条信号样本(single SNR data),因此平均混合各个SNR 的数据集后,数据集总大小为160000 条信号样本。

(2)10users data:

该数据集中包含十个用户,其中相位偏移设置为合法发射机θB=0,合法接收机θA=π/4,非法发射机θE=π/5*n(n=1,2,3,4,5,6,7,8,9),在每种信噪比下收集18000 条信号样本,因此平均混合各个SNR 的数据集后,数据集总大小为144000 条信号样本。

其中每一个样本包含400 个射频信号采样点,并将数据集按照8:1:1 的比例划分为训练集、测试集、验证集。

3 实验结果与分析

本节介绍针对不同实验变量对本文所提出的网络进行参数优化与性能评估。首先验证不同损失函数对神经网络性能的影响,接下来展示在不同用户场景和不同信噪比情况下的性能。本文所提出算法使用Python 语言和PyTorch 的深度学习框架实现。

3.1 损失函数

本文选用了四种损失函数进行考察,分别为均方误差损失函数(MSELoss)、平均绝对误差损失函数(L1Loss)、平滑平均绝对误差损失函数(SmoothL1Loss)与交叉熵损失函数(BSELoss)进行对比。并且在三种环境下进行训练和测试,分别为:①使用2users data;②在两个用户的环境中使用SNR 为5dB 数据集(2users single SNR data);③在十个用户的环境中使用SNR为5dB 数据集(10users single SNR data)。

得到在不同数据集训练下的准确率结果表1所示。

表1 不同损失函数在三种数据集训练下的判别准确率

这里选择展示在使用2users single SNR data 进行训练时准确率变化情况与损失函数值变化情况的实验结果如图5、图6 所示。

图5 使用不同损失函数准确率变化对比

图6 使用不同损失函数损失值变化对比

在三种数据集训练下可以发现,除了使用L1Loss无法达到判别效果,其他三种均可达到95.57%以上的判别准确率。在使用2users data 进行训练时,更是均达到99.75%以上的准确率。而使用BCELoss 是均使准确率达到四种损失函数中最高位。结合损失值变化曲线也可以发现,在使用BCELoss 时,loss 值也可以更快地降到0 并保持平稳。因此使用BCELoss 作为损失函数,无论从运行梯度下降的时间效率上看,还是从训练结果判别准确率上看,均为较好的那一个。

由于本研究针对的模型问题是一个判别二分类问题,神经网络模型设置的最后一层是Sigmoid 函数,Sigmoid 函数缺点在于其函数曲线两端的梯度接近于0,这不利于网络的收敛和训练。但使用BCELoss 作为损失函数时,求得反向传播的梯度就与Sigmoid 函数无关了,从而便于容易进行求导运算且避免了梯度消失问题。

其次,SmoothL1Loss 的效果略次于BCELoss,但是L1Loss 却对模型不起作用,使得Loss 值一直为1,判别准确率也一直是50%。这里是因为L1Loss 函数存在缺陷,当预测值与真实值相差为0 时,损失函数是不可导的。换句话说,当预测值与真实值相差不大时,L1Loss容易造成无法收敛的情况出现。使用MSELoss 作为损失函数,当预测值与真实值差距较大时,反向传播的梯度会过大,而使得网络训练抖动较大,不利于网络收敛。SmoothL1Loss 函数却可以使得梯度在预测值与真实值相差不大时可以足够小,在预测值与真实值相差很大时也不至于过高,最大为1,从而可以避免梯度爆炸。

3.2 用户数目

本节将用户数目作为实验变量,考察在用户数目增多时对深度神经网络的训练学习能力的影响。除上一节中使用的三种数据集之外,再增加使用10users data 的情况纳入考察范围。训练后的测试结果如表2。

表2 四种数据集训练下的判别准确率

图7 不同用户数目训练时准确率变化曲线

从图7、表2 中可以看出,深度神经网络可以学习到用户的射频指纹特征,判别合法非法设备,并且在用户数量增多及环境噪声变大时,也可以保证准确率能

达到96.33%这样一个满足判别需求的准确率。在两个用户时,更是能达到99.7%以上的准确率。说明本文设计的深度神经网络学习能力会因为环境复杂度变高而稍受影响,两用户比十用户的准确率高,而且收敛得更快,但准确率在约23 个epoch 之后,复杂度高的一方也可以收敛到的稳定值。

3.3 信噪比

本节主要考虑将多种信噪比情况作为实验变量,考察本文提出的识别算法的有效性。设置了8 种信噪比环境,这8 种信噪比涵盖了正常无线通信的信噪比范围,包括低信噪比环境、中等信噪比环境和高信噪比环境。在四种数据集下训练后的测试准确率如表3 所示。

表3 四种数据集训练下不同信噪比的判别准确率

通过表4 中准确率也可以发现,本文提出的方法不仅实现了在各个信噪比环境中的设备身份识别分类任务,且在大于10dB 的情况下,均能达到97.68%以上的准确率。因此,通过深度神经网络的学习,在较差环境中也可以得到较好的判别准确率,以满足实际系统对非法用户的鉴别需求。从使用single SNR data 数据集的判别准确率上看,判别准确率与SNR 之间具有一定正相关性,即SNR 越大,准确率越高,但受影响效果并不显著。但使用10users data 数据集时,对信噪比为5dB 的环境较为敏感,准确率下降较快,由于该环境为所有设置中噪声影响最大的部分,但也可以得到84.25%的准确率,并且在单独训练5dB 的准确率能达到97.61%。因此,在较低的信噪比且环境模型更为复杂的情况下,可以进行单独针对训练,以提高判别准确率。

4 结语

针对传统的无线设备身份识别所存在的安全漏洞,本文提出一种基于深度神经网络的设备身份识别方法,本方法使用设备射频前端产生的射频指纹特征进行设备身份识别,为无线网络中设备身份识别提供了另一层安全保障。本方法从射频接收机接收到的原始信号采样中提取射频指纹,保留了发射机的身份特征。本文设计了一种深度神经网络,从所获得的信号采样中识别无线设备身份。通过不同场景下的仿真实验证明,本文所提出的方法在用户数目增加、噪声影响增大的复杂环境中依旧保证较高的识别准确率,可达到97.61%以上,证明了本文所提出算法的有效性。

猜你喜欢
信噪比射频准确率
心脏磁共振对心房颤动射频消融术后早期复发的预测价值
两种64排GE CT冠脉成像信噪比与剂量对比分析研究
5G OTA射频测试系统
基于经验分布函数快速收敛的信噪比估计器
射频识别技术在手术室仪器设备全生命周期管理应用
一种基于扩频信号的散射通信信噪比估计方法
乳腺超声检查诊断乳腺肿瘤的特异度及准确率分析
多层螺旋CT技术诊断急性阑尾炎的效果及准确率分析
不同序列磁共振成像诊断脊柱损伤的临床准确率比较探讨
颈椎病患者使用X线平片和CT影像诊断的临床准确率比照观察