基于用户行为特征的手机端身份识别研究

2019-06-10 02:57向东东陈海光熊俊杰
关键词:行为特征身份验证

向东东 陈海光 熊俊杰

摘 要: 基于智能手机用户在输入身份验证密码和滑动触摸屏过程中的个人独特行为特征,提出了两种身份验证方案,将单类支持向量机(OCSVM)算法应用到身份验证模型中,采用网格搜索算法获取模型的最优参数.实验结果显示两种身份验证方案都具有较好的泛化能力和验证精度,身份的验证过程不会干扰正常的用户操作.

关键词: 隐私数据; 行为特征; 单类支持向量机(OCSVM)网格搜索; 身份验证

中图分类号: TP 391文献标志码: A文章编号: 1000-5137(2019)02-0151-09

0 引 言

针对用户行为的身份验证,目前已经有许多文献提出了多种方案.FENG等[1]结合用户的触摸手势和一个数字感应手套(用于收集额外的手势信息),实现了4.66%的认假率(FAR)和0.13%的拒真率(FRR)的验证精度.该方案实现了很高的身份验证精度,但需要添加一副数字感应手套,增加了额外的硬件成本,在真实应用场景中不太便利.KUNNATHU[2]将人脸识别应用于身份验证的过程中,在用户使用智能手机时,利用后台程序持续捕获用户的面部信息,实时验证用户的身份信息.该方案易受环境因素的影响(比如光线条件),应用的场合受到限制.BIMBOT等[3]将语音识别应用到身份验证过程中,同样易受环境因素的影响.SHI等[4]使用SenGuard框架,利用智能手机中内置的多种传感器,获取用户的行为信息,后台的程序利用这些信息验证用户的身份.该方案验证身份的准确率较高,但要采集用户的运动状态信息,用户的物理位置发生变化时才可以获取,验证时间过长.AGRAWAL等[5]利用智能手机中的加速度传感器获取用户手势信息,通过书写简单的图形和阿拉伯数字实现用户身份的识别.TROJAHN等[6]使用手写和键盘输入的混合验证方法,不添加额外的硬件,实现了19%FRR及21%FAR的验证效果.SAE-BAE等[7]利用iPad屏幕的多点触控传感器捕获用户5根手指的轨迹(包括五指向同一方向移动,逆时针绕掌心旋转,五指同时捏合所产生的轨迹)数据,实现了超过90%的分类精确度.文献[5-7]中,用户主动进行身份验证方式的缺点是需要用户主动按照指定的输入操作参与身份验证.

针对以上身份验证方案存在的不足,本文作者基于智能手机用户在输入身份验证密码和滑动触摸屏过程中带有个人独特的行为模式,提供了两种身份验证方案,并通过实验验证了方案的有效性.

1 特征分析

1.1 数字密码输入特征分析

不同用户在输入同一个数字密码的过程中,手指作用于屏幕的力度,输入密码的速度、节奏以及对屏幕施力的角度均存在差异.同时,不同用户手指尺寸的差异会导致用户在输入过程中,手指与触摸屏的接触面积也不同.对于智能手机的机主来说,经常输入自己设定的同一个密码,在整个输入过程中,输入的节奏、强度以及施力的角度相对比较稳定.而对于其他用户来说,即便拿到机主的真实密码,整个输入过程的模式与真实用户相比还是有明显的差异,这些差异特征可用于区分手机的当前操作用户是否为机主本人.基于这一差异,本文作者提取出了3组特征:分时间特征、压力特征以及触摸尺寸特征.

1) 时间特征.在输入一串数字密码的过程中,每输入一位密码,手指从点击接触屏幕到离开屏幕存在一个时间间隔t,相邻两位密码的输入存在时间间隔Δt.如果是一个4位密码,输入过程的时间序列为t1,Δt1,t2,Δt2,t3,Δt3,t4.使用Android MotionEvent的应用程序编程接口(API),可分别获取手指接触屏幕时刻和离开屏幕时刻对应的时间戳.图1展示了3个不同用户分别输入同一个密码(3,4,6,9) 20次的时间戳差异.每一种颜色对应数字密码的一位,同一种颜色的圆形点对应手指按下的时刻,三角形点对应手指离开屏幕的时刻.由图1可以看出,无论是相邻两位密码的输入时间间隔还是每位密码输入对应的起始结束时刻,在不同用户之间都存在差异.

2) 触摸尺寸特征.触摸尺寸的大小表示用户手指与触摸屏接触面积的大小.可通过MotionEvent.getSize()获取,触摸尺寸的大小在0~1之间,值越大表示手指与触摸屏接触的面积越大.由于不同用户之间手指尺寸大小的差异,输入密码过程中手指与触摸屏的接触面积存在不同.

3) 压力特征.与触摸尺寸相似,压力的数值可以通过MotionEvent.getPressure()获取.数据值在0~1之间,值越大表明手指对触摸屏的压力越大.获取到的压力包括手指下压时刻的压力和释放时刻的压力.图2为3个不同用户输入同一密码(8,1,2,6,7,4)3次呈现的压力差异.图2中,每一行表示同一个用户输入该密码3次的效果图,颜色越深表示压力越大.从图2中可以看出,用户1在输入密码过程中,手指对于屏幕施加的平均压力最大,用户2次之,用户3最小.

1.2 滑动手势特征分析

不同用户之间手掌的大小、手指的长度和尺寸存在差异,使得用户在滑动智能手机屏幕时,滑动轨迹带有明显的个人特征.

对于每一种手势,提取6组特征,如表1所示.

对时间特征和位置特征做进一步分析.时间特征反映了用户执行一种滑动手势的持续时间.图3给出了4位用户浏览同一组照片,手势持续时间的比较.从图3中可以看出,由于用户之间操作习惯的不同,同一种滑动手势的持续时间在不同用户之间存在差异,而对于其中每一位用户,该时间在一个相对稳定的范围.

位置特征一共有4个特征维度,分別为手势轨迹起始位置的坐标和结束位置的坐标.基于5位用户手势轨迹的起始位置数据,绘制起始位置坐标的散点图(图4).从图4中可以看出,每位用户轨迹的起始位置能够很好地与其他用户区分开来,而且这些起始点分布在一个相对稳定的区域.所以,采用位置特征作为特征属性,可以用于刻画和区分手势轨迹对应的用户身份.

2 单类支持向量机(OCSVM)检测模型

OCSVM是一个无监督学习的分类算法,其算法的基本思想是:对于线性可分的数据,从空间中寻找一个平面,使得原点到该平面的距离尽量最大化,同时该平面要尽可能分隔正常用户数据点和异常用户数据点.对于非线性数据,将原始空间中的数据点通过核函数映射到高维特征空间中,在高维特征空间中寻找一个超平面,使得非线性数据可以分割.获取OCSVM检测模型的步骤如下:

1) 获取手机端应用程序采集到的特征数据,对特征数据进行处理并提取特征,得到模型的训练数据集为n×l的矩阵,其中l为训练数据样本数,n为每个数据的维数,样本均为正类(正常用户数据).

2) 选择恰当的核函数K(x,x′)和OCSVM参数v,v代表训练样本集中被分为负样本的比例.

3) 构造OCSVM原规划,

其中,w为超平面的法向量,ρ为偏置量,ξi为引入的松弛因子,是非线性映射.训练样本通过Q映射到高维特征空间H中,使得Q(xi)∈H.引入拉格朗日方程,得式(1)的对偶规划为:

为OCSVM的决策函数,其中,g(x)=(w*)TQ(x)-ρ*.因此,对于一个测试数据点ti,如果f(ti)≥0,那么该测试数据点ti属于正类,即正常用户数据点;反之,ti就属于负类,即异常用户数据点.

经过以上步骤得到的决策函数即为OCSVM检测模型,选择不同的g(x)和v,会得到不同的决策函数,本课题选择高斯核函数作为核函数.

3 数据采集和处理

本课题特征数据采自于vivo X5V智能手机,系统版本为Android 4.4.4,处理器为高通骁龙615(主频1.5 GHz),运行内存2 GB.以下为两种验证方案的数据采集和处理流程.

3.1 数字密码输入特征数据采集和预处理

针对数字密码输入过程特征数据的采集,开发了一款界面类似手机密码解锁界面的应用程序.用户在该界面输入密码的过程中,后台应用程序会实时记录输入过程对应的时间、尺寸、压力等信息,密码的每次输入都会产生一条特征数据.邀请了28位用户参与了实验数据的采集(由于采集操作不当,部分用户数据没有被实验采用).为了方便之后的数据对比,规定用户在数据采集时,左手持握手机,采用右手食指完成输入.事先给出了5组数字密码(3个4位密码,2个6位密码),均为无序且分布在输入界面的各个方位.表2给出了5组密码的特征数据采集情况.

对表2的数据进行特征提取和处理,可得到多个多维矩阵.所有数据共产生140(28×5)个特征矩阵,对所有特征矩阵中的数据进行归一化处理.归一化方法为:

其中,y为归一化前的数据,a为指定的数据下界,b为指定的数据上界,λmin为特征矩阵中每列数据的最小值,λmax为特征矩阵中每列数据的最大值.

3.2 滑动手势特征数据采集和处理

为采集滑动手势的数据,开发了一款安卓Service后台服务程序.该服务程序可以在后台监听并记录用户的手势数据,且在用户切换应用程序时,数据采集过程不会被中止.为此,需要对手机进行root处理,以获取更高的系统权限.数据的获取需要从系统层读取,并解析设备文件中的数据.在采集手势数据的过程中,为了还原智能手机的真实使用场景,不限制用户使用应用程序的范围,用户可以选择电子书阅读、网页浏览、图片查看等操作.用户在操作智能手机的同时,后台服务程序会记录相应的滑动手势数据.参与数据采集的同样为上述28位用户.对获取到的原始手势数据进行解析并分离出4种手势数据,表3为4种手势数据的采集结果.

对每个特征矩阵中的数据进行归一化处理,归一化方法与3.1方法相同.

3.3 系统框架

总结上述两种身份验证方案,绘制相应的系统框架示意图.基于数字密码输入特征的身份验证系统如图5所示.首先对训练样本數据进行预处理,使用最优的模型参数(g和v)训练出OCSVM检测模型;然后从用户的输入行为数据中提取相应的特征数据,并对特征数据进行预处理;最后将用户的输入特征数据与OCSVM检测模板进行匹配,由决策函数做结果判断.

基于4种滑动手势特征的身份验证系统如图6所示.从图6中可以看出,4种手势的训练数据在经过数据的预处理之后,可分别训练出4种OCSVM手势检测模型,可用于检测和匹配手势监听器获取的手势数据.

4 实验设计与分析

本实验采用了普通PC机,机器基本配置包括8 GB内存、1 TB硬盘、Intel i5双核四线程CPU,操作系统采用了Windows7的64位专业版.实验过程使用的开发平台有:IntelliJ IDEA 2017,MATALAB R2017a及 libsvm工具箱.

为了衡量模型的泛化能力,实验采用了两种模型评价指标:1) FAR表示把不该被模型匹配的数据错误地匹配,即将异常数据认作正常数据;2) FRR表示把本该被模型匹配的数据当作不可以匹配的数据,即将正常数据认作异常数据.

4.1 基于数字密码输入特征的身份验证实验

从5组密码中选择1组,利用其特征数据进行如下步骤的实验:

1) 从28位用户中随机选择1位用户的数据作为正常用户数据(400条),其中250条数据用于模型的训练,其余150条用作测试,并将该测试数据标记为+1.从其余27位用户数据组成的数据集中抽取300条数据作为测试数据,并将该测试数据标记为-1.

2) 获取最优模型.为获取最优模型参数(g和v),实验采用网格搜索法,依次遍历所有由v和g构成的网格点,直至获取最优参数.利用该最优参数和步骤1)中的250条训练数据获取最优模型.

3) 将步骤1)中的150条正常用户数据和300条异常用户数据按照1∶2的比例混合,将混合后的数据用于模型测试.通过依次增加测试数据量,根据测试结果计算对应的FRR和FAR值.

选择其余的4组输入密码进行实验,重复步骤1)~3).基于这5组输入密码的实验结果,绘制FAR和FRR随测试数据量变化的折线图,如图7所示.从图7可以看出:当测试数据量小于300时,由于数据量比较小,部分被模型拒绝或错误匹配的数据对FRR和FAR值的计算结果影响比较大;当测试数据量大于300之后,这种影响因素会随着测试数据量的增大而减小.实验获取到的FAR和FRR值在测试数据量超过300之后,稳定在0~5.6%之间,FAR和FRR值的波动幅度收窄.通过该实验可以得出:基于数字密码输入特征的身份验证方案精确度较高,可用于增强数字密码验证身份的安全性;身份验证过程隐藏在密码的输入过程中,验证过程不需要额外的硬件设备支持.

4.2 基于4种滑动手势的身份验证实验

基于滑动手势数据的OCSVM模型分别为上滑手势数据模型、下滑手势数据模型、左滑手势数据模型以及右滑手势数据模型.每一种手势模型的训练步骤如下:

1) 从28位用户数据中随机选择1位用户的数据作为正常用户数据(650条),其中350条数据用于模型的训练数据,另外300条用作测试数据,将该测试数据标记为+1.从其余27位用户数据组成的数据集中抽取300条数据作为测试数据,并标记为-1.

2) 实验采用高斯核函数,并用网格搜索法获取最优参数g和v.结合最优参数和步骤1)中的350条训练数据,可获得最优模型.

3) 将步骤1)中的300条正常用户数据和300条异常用户数据按照1∶1的比例混合作为测试数据.增加测试数据的数据量,计算并获取对应的FRR和FAR值.

按照步骤1)~3)可获得全部数据模型及其对应的FRR和FAR值.结合实验获取的FRR和FAR值,绘制FAR和FRR随测试手势特征数据变化的折线图,如图8所示.其中,横坐标表示测试数据量,纵坐标表示对应的FAR和FRR值.从图8中可以看出:当测试数据量小于800时,受局部数据的影响,FAR和FRR值波动幅度比较大;当测试数据量超过800之后,FAR和FRR值稳定在2.75%~4.10%之间,波动幅度减小.该方案的验证过程发生在用户通过一次性身份验证登录成功之后,不需要用户的主动参与,不会干扰用户对手机的正常操作,并且可以持续地对用户的身份进行验证.

5 结 论

智能手机常用的身份验证方案存在较高的不安全性,本文作者针对该问题,给出了两种基于用户行为的身份验证方案:数字密码输入特征验证和4种滑动手势特征验证.基于数字密码输入特征的身份验证方案给密码的输入操作增加了一层安全保护,使入侵用户即便获取了真实密码,仍然很难通过验证.基于4种滑动手势特征的身份验证在智能手机用户一次性身份验证通过之后,仍然持续地对操作用户的身份进行验证,确保智能手机中隐私数据的安全.两种身份验证方案弥补了传统的仅在登录阶段验证的不足.同时,相比其他连续性验证方案,上述两种方案不需要额外的硬件设备支持和用户的主动参与.

参考文献:

[1] FENG T,LIU Z,KWON K A,et al.Continuous mobile authentication using touchscreen gestures [C]//IEEE Conference on Technologies for Homeland Security.Waltham:IEEE,2012:451-456.

[2] KUNNATHU N.Biometric user authentication on smartphone accelerometer sensor data [C]//Proceedings of Student-Faculty Research Day.New York:Pace University,2014:1-8.

[3] BIMBOT F,BONASTRE J F,FREDOUILLE C,et al.A tutorial on text-independent speaker verification [J].Journal on Applied Signal Processing,2004(4):430-451.

[4] SHI W D,YANG J,JIANG Y F,et al.SenGuard:passive user identification on smartphones using multiple sensors [C]//7th International Conference on Wireless and Mobile Computing Networking and Communications.Shanghai:IEEE,2011:141-148.

[5] AGRAWAL S,CONSTANDACHE I,GAONKAR S,et al.PhonePoint pen:using mobile phones to write in air [C]//Proceedings of the ACM Workshop on Networking System and Applications for Mobile Handhelds.Barcelona:ACM,2009:1-6.

[6] TROJAHN M,ORTMEIER F.Toward mobile authentication with keystroke dynamics on mobile phones and tablets [C]//27th International Conference on Advanced Information Networking and Applications Workshops.Barcelona:IEEE,2013:697-702.

[7] SAE-BAE N,AHMED K,ISBISTER K,et al.Biometric-rich gestures:a novel approach to authentication on multi-touch devices [C]//Conference on Human Factors in Computing Systems.Austin:ACM,2012:977-986.

(責任编辑:包震宇)

猜你喜欢
行为特征身份验证
基于老年人游憩行为的城市公园适老化设计研究
一种基于时间变化的用户出行和特征的可视化方法研究
人脸识别身份验证系统在养老保险生存核查中的应用
居民休闲度假行为特征及影响因素分析
校企合作中企业培训的行为特征探析
Endogenous neurotrophin-3 promotes neuronal sprouting from dorsal root ganglia
HID Global推动多层身份验证解决方案
身份验证中基于主动外观模型的手形匹配
ASP.NET中的Forms身份验证的研究