1.加权击键特征曲线差异度的用户身份识别方法,其特征在于,具体按照以下步骤实施:
步骤1、采集数据,建立半时间特征数据集和击键间隔时间数据集;
具体实施步骤如下:
1.1、从自由文本原始击键信息中筛选出k个具有代表性的特定双键字符序列,组成特定字符序列集合SK;
1.2、计算每个双键的使用频率λj,j=1,2,…,k,构建用户的击键间隔时间数据集Spp和半时间特征数据集Sst,Spp和Sst的表达如下:st
Sst={Vi =[WPMi,Pi,N_UD,Pi,error,Pi,CapsLock,Pi,Shift]|i=1,2,…,n} (2)pp k
其中:式中k为筛选出来的特定双键字符序列个数,Vi ∈R为第i个击键间隔时间向量样本, 为第i个样本中最后一个特定双键字符序列的击键间隔时间, 为第i个样本中第j个特定双键字符序列的击键间隔时间(j=1,…,k),m为采集到的击键间隔时间向量样本st 5
个数;Vi ∈R 为第i个半时间特征向量样本,WPMi、Pi,N_UD、Pi,error、Pi,CapsLock和Pi,Shift分别为第i个样本的平均击键速度、负间隔时间RP的出现频率、输入错误率、CapsLock键使用频率和Shift键使用频率,PN_UD、Perror、PShift和PCapsLock的变化范围为[0,1],平均击键速度WPM的2
变化范围是[0,+∞),一般情况下,WPM的量级为10 ,与其它半时间特征的量级存在显著差异,n为采集到的半时间特征向量样本个数;
1.3、对半时间特征数据集Sst中的平均击键速度WPM进行归一化处理归一化公式为:式中:max{WPMi|i=1,…,n}为样本中的最大平均击键速度,记为WPMmax,经过归一化处理后,将半时间特征数据集Sst简记为st
Sst={Vi =[vi,1,vi,2,vi,3,vi,4,vi,5]|i=1,2,…n} (4)式中: vi,2=Pi,N_UD,vi,3=Pi,error,vi,4=Pi,CapsLock,vi,5=Pi,Shift;
步骤2、分别计算击键间隔时间数据集的均值和标准差与半时间特征数据集的均值和标准差;
具体的计算方法为:
设数据集Spp中所有元素的均值为 数据集Sst中所有元素的均值为则
设数据集Spp中所有元素的标准差为 数据集Sst中所包含元素的标准差为 则
步骤3、根据击键间隔时间数据集的均值和标准差计算击键间隔时间特征曲线的上/下边界,根据半时间特征数据集的均值和标准差计算半时间特征曲线的上/下边界;
具体计算方法为:
设数 据 集 S p p中 所 包 含 元素 的 上 边 界向 量 和 下 边界 向 量 分 别 为数据集Sst中所包含元素的上边界向量和下边界向量分别为 则击键间隔时间特征曲线的上边界 下边界 的计算如下式(9),半时间特征曲线的上边界vu,l、下边界vd,l的计算如下式(10):式中: 和 为可调节的阈值,阈值 和 的取值范围均为0~3;
步骤4、根据击键间隔时间特征曲线的上/下边界计算击键间隔时间加权特征曲线差异度,根据半时间特征曲线的上/下边界计算半时间特征曲线差异度;
具体的计算方法为:
设任一击键间隔时间向量样本 则该样本在数据集Spp中的加权特征曲线差异度 的计算公式为:式中:
其中:λj为每个特定双键字符序列的使用频率,j=1,2,…,k;
设任一半时间特征向量样本 在数据集Sst中特征曲线差异度 为式中:
根据集合SK中每个双键的使用频率和式(11)计算击键间隔时间数据集Spp中每个元素的加权特征曲线差异度,并构成击键间隔时间特征曲线差异度集合Qpp;由式(12)计算半时间特征数据集Sst中每个元素的特征曲线差异度,并构成半时间特征曲线差异度集合Qst,上述各集合的定义为
pp k
式中: 表示数据集Spp中元素Vi ∈R的加权特征曲线差异度, 表示数st 5
据集Sst中元素Vi ∈R的特征曲线差异度步骤5、利用击键间隔时间加权特征曲线差异度和半时间特征曲线差异度对用户身份进行识别;
具体的身份进行识别的方法为:根据下述不等式对测试样本进行判定式中: 和 为可调阈值,阈值 和 的取值范围均不小于0;
如果不等式(15)和式(16)同时成立,认定此测试样本属于该用户;否则,认定此测试样本不属于该用户。