发明名称 触屏用户按键行为模式构建与分析系统及其身份识别方法
摘要 本发明提供一种触屏用户按键行为模式构建与分析系统及其身份识别方法,通过手机触摸屏上的软键盘输入密码的历史按键信息进行数据分析并建立相应的神经网络模型,并对于新的待测数据进行模型计算,以识别用户身份;该系统由用户数据采集模块、数据预处理模块、模型训练模块以及用户身份认证模块组成;用户数据采集模块负责采集用户点击软键盘输入密码的时间序列信息以及压力和接触面积信息;数据预处理模块负责对采集到的数据进行预处理,去除脏数据,并对数据进行归一化;模型训练模块负责对所有用户的键入模式进行分析和建模;用户身份认证模块负责对于新的待测数据进行模型计算,用以识别用户的身份,提高用户账号密码的安全性。
申请公布号 CN105279405A 申请公布日期 2016.01.27
申请号 CN201510713975.3 申请日期 2015.10.28
申请人 同济大学 发明人 蒋昌俊;闫春钢;陈闳中;丁志军;张鸿博
分类号 G06F21/31(2013.01)I;H04L29/06(2006.01)I 主分类号 G06F21/31(2013.01)I
代理机构 上海光华专利事务所 31219 代理人 王华英
主权项 一种触屏用户按键行为模式构建与分析的身份识别方法,用于根据用户一段时间内账户登录时,通过手机触摸屏上的软键盘输入密码的历史按键信息进行数据分析并建立相应的神经网络模型,并对于新的待测数据进行模型计算以识别用户身份,其特征在于,所述身份识别方法包括以下步骤:步骤1),根据移动端用户在手机软键盘上输入密码的按键行为过程,采集相应的行为特征信息,所述行为特征信息包括用户点击软键盘输入密码的时间序列信息、压力大小信息以及接触面积信息;步骤2),负责对时间数据进行处理,计算每条输入序列中的弹起时间戳减去按下时间戳,定义为按键持续时间,记为t<sub>h</sub>;计算每条输入序列中的按下时间减去上条输入序列中的弹起时间,定义为按键间隔时间,记为t<sub>i</sub>;压力数据记为p,接触面积数据记为a;对于系统调用采集的不符合规则的数据进行处理或剔除;采集到的各数据量纲存在差异,对数据进行归一化处理;步骤3),使用径向基函数神经网络作为模型,对用户进行分类;因每个用户的手机传感器灵敏度不同,需要对用户输入行为的时间信息与压力信息分别进行建模,以减小移动设备不同造成的误差;记用户一次输入的T(t<sub>h1</sub>,t<sub>h2</sub>,…,t<sub>hn</sub>,t<sub>i1</sub>,t<sub>i2</sub>,…,t<sub>in‑1</sub>)为时间特征向量,记P(p<sub>1</sub>,p<sub>2</sub>,…,p<sub>n</sub>,a<sub>1</sub>,a<sub>2</sub>,…,a<sub>n</sub>)为压力特征向量,其中n是用户密码长度;使用两个独立的RBF神经网络分别对T和P进行训练,记为N<sub>T</sub>和N<sub>P</sub>;其中,所述N<sub>T</sub>的输入为T,目标输出为对每个用户事前分配好的一个独一无二的识别向量;设参与身份判定的m个用户为u<sub>1</sub>,u<sub>2</sub>,…,u<sub>m</sub>,则在训练RBF神经网络过程中对应于每个用户的预期输出向量为O<sub>ui</sub>=(x<sub>1</sub>,x<sub>2</sub>,…,x<sub>m</sub>),表示神经网络在理想情况下的输出,其中,<maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><mi>x</mi><mi>j</mi><mo>=</mo><mrow><mo>{</mo><mrow><mtable><mtr><mtd><mrow><mn>0</mn><mo>,</mo></mrow></mtd><mtd><mrow><mi>i</mi><mo>&NotEqual;</mo><mi>j</mi></mrow></mtd></mtr><mtr><mtd><mrow><mn>1</mn><mo>,</mo></mrow></mtd><mtd><mrow><mi>i</mi><mo>=</mo><mi>j</mi></mrow></mtd></mtr></mtable><mo>;</mo></mrow></mrow></mrow>]]></math><img file="FDA0000832781740000011.GIF" wi="302" he="156" /></maths>所述N<sub>P</sub>的输入为P,目标输出与N<sub>T</sub>相同;神经网络采用自组织选取基函数中心的方法进行训练;按所述方法对两个神经网络进行训练后,计算每个神经网络的平均误差,记为E<sub>T</sub>和E<sub>P</sub>;为每个神经网络设置一个输出权值,记为W<sub>T</sub>和W<sub>P</sub>;其中,<maths num="0002" id="cmaths0002"><math><![CDATA[<mrow><msub><mi>W</mi><mi>T</mi></msub><mo>=</mo><mfrac><msub><mi>E</mi><mi>P</mi></msub><mrow><msub><mi>E</mi><mi>T</mi></msub><mo>+</mo><msub><mi>E</mi><mi>P</mi></msub></mrow></mfrac><mo>,</mo><msub><mi>W</mi><mi>P</mi></msub><mo>=</mo><mfrac><msub><mi>E</mi><mi>T</mi></msub><mrow><msub><mi>E</mi><mi>T</mi></msub><mo>+</mo><msub><mi>E</mi><mi>P</mi></msub></mrow></mfrac><mo>;</mo></mrow>]]></math><img file="FDA0000832781740000012.GIF" wi="654" he="135" /></maths>步骤4),对于某个用户需要验证身份的一次新的输入序列,首先通过所述步骤2对其进行预处理、归一化,并按照所述步骤3中的方法分解成时间特征向量T和压力特征向量P,分别输入神经网络N<sub>T</sub>和N<sub>P</sub>,记N<sub>T</sub>和N<sub>P</sub>的输出向量为O<sub>T</sub>和O<sub>P</sub>;定义最终输出向量O为:O=W<sub>T</sub>·O<sub>T</sub>+W<sub>P</sub>·O<sub>P</sub>比较O与该用户的识别向量的欧式距离,如果距离小于设定的阈值,判定为合法用户,接受登录请求,将该条序列加入模型库中并更新模型库;否则判定为非法用户,拒绝该次登录请求并发出警告。
地址 200092 上海市杨浦区四平路1239号