林梦琪,张晓梅
(上海工程技术大学电子电气工程学院,上海 201620)
随着移动互联网和移动设备的不断发展,以智能手机和平板电脑为代表的便携式移动电子设备在很大程度上改变了人们的生活方式,也成为现代人生活中不可或缺的工具。现有研究表明,92.8%的用户习惯将隐私信息存储至智能手机中,并且有62%的用户并没有为智能手机设置密码[1-3]。移动设备通常存在着较大的安全隐患,隐私信息的泄露会造成个人经济财产的损失,因此需要给移动设备实施安全认证[4-5]。传统的移动设备认证方式[6-8]主要包括图形密码认证、指纹认证、面部识别等,但这些认证方式较为频繁,每次唤醒设备都要进行验证,给用户带来了极大的不便,而且安全性较低,容易被攻破[9-10]。除了传统认证方式之外,基于生物行为特征的持续隐式认证也是近年来研究的热点,通过采集用户的行为特征等信息识别出当前使用者的身份,并且对用户进行持续不间断的隐式认证,能够兼顾用户体验度与设备安全性[11-12]。文献[13]利用手机触摸屏采集用户的滑动行为,调用手机自带的传感器,通过用户与触摸屏之间的交互行为特征进行认证。文献[14]结合长文本和自由文本,提出基于动态击键的用户认证方式。文献[15]使用可穿戴式的加速度传感器进行步态认证和识别,将加速度传感器附着在受试者裤袋上采集步态特征。文献[16]介绍声音行为,根据用户的说话方式和模式来识别和认证用户。
在实际应用场景中,由于环境的不可预测性,单模态的身份认证受到限制,同时单模态特征由于特征单一,容易被仿造或攻击[17]。目前,研究人员逐步将单模态认证转换为多模态认证,与基于单一交互信息源的身份认证方式不同,基于多模态特征的隐式身份认证具有更高的准确率且难以被伪造。文献[18]通过用户使用设备时的时空、环境、步态、生物和行为特征,提出一种基于多特征融合的隐式身份认证方案。文献[19]通过在智能手机上挖掘能持续认证的行为习惯提出身份认证方案,使用Wi-Fi、蓝牙、活动、位置、应用程序、呼叫和短信数据来构建用户交互行为,得到了98.3%的认证准确率。虽然目前生物行为特征的连续身份验证应用越来越广,但基于单一交互信息源的单模态认证方法只适用于特定操作或场景。为解决这一问题,本文提出基于用户行为足迹的多模态特征融合的隐式认证方法,采用多模态生物特征来适应不同环境,并从移动设备中获得不同的传感器数据,通过多特征融合模型得到最终的身份认证结果。
在用户使用手机的过程中,手机自带的众多传感器会产生大量与用户身份有关的数据。利用这些原始数据提取出多种有效特征,并通过机器学习算法对特征进行训练和融合,得到多模态特征融合模型,实现对用户身份的持续认证。本文主要采集触摸屏、加速度传感器、GPS 传感器、陀螺仪传感器、压力传感器和磁场传感器数据。
文献[13]通过实验证明简单的触摸动作就能验证用户身份,所收集的数据包括屏幕上的压力、手指覆盖的屏幕面积、手指相对于屏幕的方向和位置。本文将触摸屏数据与压力传感器数据归类为用户与触摸屏的交互数据。
在用户使用手机的过程中,手机自带的加速度传感器主要用于捕捉手机的运动模式,记录3 个轴上的加速度,如图1(a)所示。加速度传感器用于检测手机向某一个轴方向的线性变化,而陀螺仪传感器可以全方位得到手机在空间上位移的变化。陀螺仪传感器也有3 个轴,每个轴都带有一个角度分量,如图1(b)所示。通过加速度传感器和陀螺仪传感器可以确定用户移动模式。
图1 手机移动模式Fig.1 The movement mode of moblie phone
GPS 传感器用于记录位置信息。文献[20]提出一种基于用户历史位置信息的主动认证方案,通过实验证明该方案可与其他模式的特征进行融合来提高认证性能。对于利用磁场传感器数据进行认证的情况较少,并且本文通过实验发现磁场传感器数据与用户身份的相关性较小,因此本文采用GPS 传感器数据作为用户所处的物理位置。
采用自建数据集,在不同型号的3 部手机上对5 名女性和7 名男性进行实验,其中有2 名用户为左利手。基于Android Studio 平台开发一款电子书e-book 软件,让用户选择自己感兴趣的文章导入电子书,采集真实有效的阅读数据。数据采集过程如图2 所示,软件会在用户滑动手机时调用内置传感器,同时后台记录用户在手机屏幕上滑动时所产生的一系列特征数据。为保证数据有效性并减少误差,要求每位用户至少进行8 次数据采集,每次采集时长不小于30 min,至少获得3 000 条轨迹信息。
图2 数据采集过程Fig.2 Process of data collection
在实验中采集的数据为原始数据,需要经过处理后才可进行数据分析。例如,在阅读过程中选择章节、退出等操作时会产生很多点动数据。这些点动数据往往是无序随机的,并且与用户的相关性较小,因此需要将点击屏幕的数据判断为异常值。
实验采用拉依达准则[21]剔除异常值,主要操作步骤如下:
1)假设数据是通过等精度的设备得到,将其定义为x1,x2,…,xn。
3)按贝塞尔公式计算标准差σ:
4)判断该组数据xb的残差vb(1≤b≤n),若满足,则认为xb是含有较大误差的异常值,将其剔除。
在去除异常值后,得到部分用户的滑动轨迹如图3 所示,可以看出不同用户的滑动轨迹明显不同,相同用户的滑动轨迹走向非常相似。
图3 部分用户的滑动轨迹Fig.3 Sliding track of some users
实验采集的原始数据包括在触摸时的所有传感器数据以及产生每条数据的用户ID 信息。本文将传感器数据分为用户与触摸屏的交互、用户使用手机时的移动模式、用户经常所处的物理位置3 类特征,经过特征分析处理后得到新特征,然后剔除无用的特征,得到最终选择的特征。
实验通过调用手机的内置传感器进行数据采集,记录用户操作手机时所产生的一系列行为,选出一部分常用且便于理解的数据作为原始特征。用户与触摸屏的交互行为包括手指接触屏幕的压力、滑动过程中的x和y方向的速度、每条滑动轨迹经过的点坐标。在数据采集过程中,利用手机在空间移动产生的加速度表示用户使用手机时的移动模式,采用经度和纬度表示用户在使用手机时的物理位置。原始特征设置如下:
1)Time,表示采集时间。
2)TouchType,表示触摸类型,其中,0 代表按下,1 代表抬起,2 代表滑动。
3)XCoordinate,表示x坐标。
4)YCoordinate,表示y坐标。
5)Pressure,表示压力。
6)XVelocity,表示x方向的速度。
7)YVelocity,表示y方向的速度。
8)X_ACC,表示x方向的加速度。
9)Y_ACC,表示y方向的加速度。
10)Z_ACC,表示z方向的加速度。
11)X_GYRO,表示x方向的陀螺仪数据。
12)Y_GYRO,表示y方向的陀螺仪数据。
13)Z_GYRO,表示x方向的陀螺仪数据。
14)X_MAG,表示x方向的磁场数据。
15)Y_MAG,表示y方向的磁场数据。
16)Z_MAG,表示z方向的磁场数据。
17)Latitude,表示纬度。
18)Longitude,表示经度。
将通过手机传感器得到的原始数据按照不同特征进行可视化处理,对于区分度明显的特征予以保留,区分度不明显的特征则需要进行处理,形成具有明显区分度的新特征再加以使用。
如图4 所示,YCoordinate 和Z_ACC 特征对于用户原始数据进行可视化后区分度极低,不同用户对于该特征所表现出的结果相差不大,不能很好地表征不同的用户,因此需要对该特征进行处理得到新的特征。
图4 部分用户的YCoordinate 和Z_ACC 特征Fig.4 YCoordinate and Z_ACC feature of some users
由于相同用户的滑动轨迹偏转角度相似,不同用户的偏转角度相差较大,因此需要对偏转角特征进行处理得到新的特征。如图5 所示,为获得一条轨迹起点到终点的偏转角θ,计算该条轨迹的起点和终点的坐标之间的向量A1An,使用向量A1An的余弦值来表示偏转角Angle。
图5 滑动轨迹示意图Fig.5 Schematic diagram of sliding track
假设起点和终点在手机屏幕上的坐标为A1(x1,y1)和An(xn,yn),则有:
将部分用户的数据以滑动轨迹的偏转角可视化显示,如图6 所示,可以看出相同用户的点基本分布在一个范围内,而不同用户的点所在范围差异较大,因此滑动轨迹的偏转角特征可以较好地区分不同的用户。
图6 部分用户的偏转角特征Fig.6 Deflection angle feature of some users
在计算向量A1An余弦值的过程中发现,不同用户滑动轨迹的向量A1An长度也有所差异,因此可作为一个新的特征来区分用户。
由图5 可知,一条轨迹由很多个离散的点构成,为求得一条轨迹的长度,可以按照式(6)计算每两个连续的点之间的欧氏距离,然后进行累加得到轨迹长度Track_Length。
将部分用户的数据以滑动轨迹的长度可视化显示,如图7 所示,可以看出相同用户的点基本分布在一个范围内,而不同用户的点所在的范围差异较大。在实际生活中,不同用户的手指长度也有所差异,且手持手机的方式不同,会造成滑动轨迹的长度不同,因此滑动轨迹的偏转角特征可以较好地区分不同用户。
图7 部分用户的轨迹长度特征Fig.7 Track length feature of some users
在实验中发现,通过对编号为3~13的原始特征(以XCoordinate 为例)计算每次滑动过程的均值(XCoordinate_Average)、方差(XCoordinate_Std)、最大值(XCoordinate_Max)、最小值(XCoordinate_Min)、起始点(XCoordinate_Start)、终止点(XCoordinate_End)、波动范围(XCoordinate_Range)共获得77 个新特征,更能体现用户的差异性,其中XVelocity和YVelocity在滑动结束时为0,整段滑动过程中的最小值也为0,属于无效特征,需要剔除,因此共得到73个新特征。加上每次滑动的持续时间(Time)和用户所处位置的经度(Longitude)、纬度(Latitude)以及偏转角(Angle)、向量长度(Vector_Length)、轨迹长度(Track_Length),共得到79个特征。其中,属于用户与触摸屏的交互的特征有35个,属于用户使用手机时的移动模式的特征有42个,属于用户经常所处的物理位置的特征有2个。
本文选择3个维度的特征共同对用户进行识别和认证,分别是用户与触摸屏的交互、用户使用手机时的移动模式、用户经常所处的物理位置。由于这3 个维度包含不同类型的特征,为起到共同认证用户的作用,因此需要对这3个维度的特征进行融合。
为实现用户身份识别,本文构建基于行为足迹的多模态融合身份认证框架,如图8所示。
图8 多模态特征融合的身份认证框架Fig.8 Identity authentication framework of multi-modal feature fusion
身份认证过程具体如下:
1)数据采集。在用户滑动手机时调用内置传感器,包括触摸屏、加速度传感器、GPS 传感器、陀螺仪传感器、压力传感器和磁场传感器,同时后台记录用户在手机屏幕上滑动时所产生的一系列特征数据。
2)特征选择。对小样本数据进行调研,选择与用户身份相关度较高的特征,并从选出的特征中提取出新的特征,通过互信息法计算特征与用户ID 之间的互信息量,去除低互信息量的特征。
3)模型训练与特征级融合。特征级融合是先将所有特征放在一起,再选择分类器对特征进行训练。决策级融合是先将不同维度的特征进行训练得到一个可信分数,再将不同维度返回的分数融合在一起,最终得到基于行为足迹的多特征融合模型。
4)持续隐式身份认证。用户在使用手机的过程中,若要访问更高权限的内容,需在移动端获得传感器数据,将数据存入生成模型中得到认证结果,若认证通过则可以继续访问手机,若不通过则需要使用显示的认证方式,如输入密码。
特征级融合发生在特征分类之前,主要利用特征选择技术,从融合的所有特征中找到能最大限度提高分类器性能的特征,最终采用分类器获得分类结果。
互信息[22]是度量两个事件集合之间的相关性。假设有两个离散的随机变量X和Y,它们之间的互信息量可以定义如下:
其 中:p(x,y)是X和Y的联合概率分布函数;p(x)和p(y)是X和Y的边缘概率分布函数。
若X和Y是两个连续的随机变量,则互信息量可以表示为二重定积分的形式:
其 中:p(x,y)是X和Y的联合概率密度函数;p(x)和p(y)是X和Y的边缘概率密度函数。
为得到能最大限度提高分类器性能的特征,先计算各维度中特征之间的互信息量,若两个特征之间具有强相关性,只选择其中一个特征作为表征用户的特征。在筛选完特征后,计算特征与用户ID 之间的互信息量,去除低信息量的特征。通过热度图的方式表现特征之间的互信息量,并将特征与用户ID 之间的互信息量从大到小排序,部分结果如图9所示。
图9 各维度中特征及特征与用户ID 之间的互信息量Fig.9 The mutual information between features and between features and user ID in each dimension
通过计算各维度中特征与用户ID 之间的互信息量可以得出,Pressure_Start 和Pressure_End 与用户ID的互信息量为0,说明它们不能提供任何信息量,在本文中选择删除该特征,而YCoordinate 提取出的所有新特征与用户ID 之间的信息量都比较高。采用互信息法进行优质特征选择后,直接将这些特征进行融合,再选择一个分类器对用户进行识别和认证。
决策级融合指的是对于不同维度的特征,选择使用不同的分类器进行分类,得到基于每个维度选择的分类器结果后将所有结果进行融合,最终得到唯一的分类结果,如图10 所示。
图10 决策级融合过程Fig.10 Process of decision-level fusion
在图10 中,F1、F2和F3表示本文提出的3 个维度的特征,C1、C2和C3表示选择的分类器,分别得到一个二元分类结果[ -1,1],通过融合中心进行计算,最终得到唯一的认证结果。文献[23]提出一种决策级融合规则,具体表示如下:
其中:ui表示通过分类器Ci得到的分类结果。融合中心通过最小化全局贝叶斯风险来结合这些局部分类结果。决策级融合规则进行如下似然比检验:
其中:H1和H0分别表示合法用户和非法用户;P1和P0表示判断用户为合法的概率和判断用户为非法的概率。在该情况下,得到最终的决策级融合结果为:
其中:PMi表示错误拒绝率(False Rejection Rate,FRR),即不该拒绝的样本中拒绝的比例;PFi表示错误接受率(False Acceptance Rate,FAR),即不该接受的样本中接受的比例。根据式(13),最终得到[ -1,1]的二元分类结果。决策级融合方式适用于不同维度的数据,尤其是数据不统一的情况。
利用两种融合方式对12 名用户进行身份认证实验。采用朴素贝叶斯分类器对用户进行分类识别,图11 给出了两种不同融合方式下的ROC 曲线,可以看出在只有物理位置特征的情况下,认证准确率很低,说明仅依据物理位置特征无法对用户进行认证,而在特征级融合和决策级融合两种方式下,准确率分别为98.2%和98.7%,AUC 值几乎达到1。与单一模态下的识别结果不同,融合3 个维度的特征后能够得到更优的分类结果。通过计算认证结果的等错误率(Equal Error Rate,EER)证明,在单一模态的验证下EER 均在15%以上,而融合后的多模态认证模型的EER 下降至1.7%左右。
图11 两种融合方式下的ROC 曲线Fig.11 ROC curve under two fusion modes
两种融合方式下的F1 分数如图12 所示,特征级融合和决策级融合的认证效果相差不大,但均比单一模式的认证效果好。
图12 两种融合方式下的F1 分数Fig.12 F1 score under different fusion modes
图11 与图12 均是在三星Galaxy C5 手机上所得的实验结果,本文还分别在VIVO Y83 和华为mate7 手机上对相同用户采集数据进行实验,结果数据如表1 所示,可以看出不同设备在单模态下的各指标认证结果波动较大,鲁棒性较差,而多模态特征融合下的认证结果明显优于单模态,各手机设备的特征融合认证结果较稳定,并且决策级融合方式略微优于特征级融合方式。
表1 单一模态与多模态融合身份认证性能对比Table 1 Performance comparison of identity authentication of single-modal and multi-modal fusion
然而,在不同数据集和不同用户上进行实验,不同特征的表现会有所不同,例如文献[24]介绍了对于应用程序使用、Web 浏览和GPS 定位的认证性能,通过实验得出性能最好的是基于物理位置的认证模型,而本文在基于物理位置的模式下对用户进行认证并没有得到最好的结果,计算得到的EER 为35.5%,说明这一特征不具有很好的稳定性,因此若只选用单模态下的特征进行认证,结果可能存在偶然性,在不同数据集中会有不同的表现。为使认证模型具有更强的适应能力,采用多模态融合的身份认证是更好的选择。
本文提出基于用户行为足迹的多模态特征融合身份认证方法,采集移动设备的触摸屏、加速度传感器、GPS 传感器、陀螺仪传感器、压力传感器和磁场传感器数据,利用这些原始数据提取多种有效隐式特征,并通过机器学习算法对特征进行训练和融合得到多模态特征融合模型,实现对用户身份的持续隐式认证。实验结果表明,与单模态特征身份认证方法相比,该方法具有更高的认证准确率和稳定性,且难以被伪造和攻破。下一步将优化本文多模态特征融合模型并对其进行跨设备应用,以实现同一用户在不同设备上的身份认证。