CN109492357B - 身份认证方法、设备及计算机存储介质 - Google Patents

身份认证方法、设备及计算机存储介质 Download PDF

Info

Publication number
CN109492357B
CN109492357B CN201811065329.0A CN201811065329A CN109492357B CN 109492357 B CN109492357 B CN 109492357B CN 201811065329 A CN201811065329 A CN 201811065329A CN 109492357 B CN109492357 B CN 109492357B
Authority
CN
China
Prior art keywords
keystroke
key
double
sample
authentication
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201811065329.0A
Other languages
English (en)
Other versions
CN109492357A (zh
Inventor
张得旭
陈启军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201811065329.0A priority Critical patent/CN109492357B/zh
Publication of CN109492357A publication Critical patent/CN109492357A/zh
Application granted granted Critical
Publication of CN109492357B publication Critical patent/CN109492357B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Collating Specific Patterns (AREA)

Abstract

本发明实施例公开了身份认证方法,包括:获取用户敲击键盘的击键信息,所述击键信息包括敲击双键的键值、所述敲击双键的间隔时长以及敲击单键的敲击时长;根据所述敲击双键的键值确定所述敲击双键的键值对应的击键样本信息,根据所述击键信息和所述击键样本信息确定所述敲击双键的认证值,在计算所述认证值时,所述样本双键的间隔时长及所述敲击双键的间隔时长所占的权重大于所述样本单键的敲击时长及所述敲击单键的敲击时长所占的权重;在所述敲击双键的认证值大于所述用户的认证阈值时,确定所述用户为非法用户。采用本发明实施例,能够提出一种快捷、低成本的身份认证方案,提升身份认证的便捷性和可靠性。

Description

身份认证方法、设备及计算机存储介质
技术领域
本发明涉及计算机技术领域,尤其涉及身份认证方法、设备及计算机存储介质。
背景技术
随着计算机的发展和互联网的普及,人们的安全意识逐日增强。目前,常用的身份认证方式有以下三种。第一种,通过用户记忆输入密码验证,例如记忆账户、密码、密保问题等。第二种,借助用户拥有的实物,例如身份证、密保卡、网银盾等。第三种,结合用户的生物特征,例如指纹、虹膜、人脸、手势等。
然而在实践中发现,前两种认证方案中,可能由于用户失误导致信息泄露或丢失,被不法分子利用将带来不可估量的损失。第三种认证方案中,具有一定的实施难度,成本较高。因此,亟需提出一种便捷、低成本的身份认证方案。
发明内容
本发明实施例公开了身份认证方法、相关设备及计算机存储介质,能够依据用户的击键信息来实现该用户的身份认证,提升身份认证的便捷性和可靠性。
第一方面,本发明实施例公开提供了一种身份认证方法,应用于计算设备,该计算设备包括至少一个用户的认证信息,每个用户的认证信息包括认证阈值和多个击键样本信息。每个击键样本信息包括样本双键的键值、样本双键的间隔时长以及样本单键的敲击时长,该样本双键是指样本双键的键值所指示的键盘上被连续敲击的相邻两个按键的组成,样本单键是指组成样本双键的单个按键,样本双键的间隔时长为样本双键中相邻两个按键被连续按下的时间间隔,样本单键的敲击时长为样本单键被按下的持续时长。所述方法包括:
计算设备获取用户敲击键盘所产生的击键信息,该击键信息包括敲击双键的键值、敲击双键的时间间隔以及敲击单键的敲击时长。该敲击双键是指键盘上被连续敲击的相邻的两个按键的组合,敲击单键是指组成敲击双键的单个按键。敲击双键的间隔时长是指敲击双键中相邻的两个按键被连续按下的时间间隔,敲击单键的敲击时长是指敲击单键被按下的持续时长。进一步地,计算设备根据敲击双键的键值从该用户的多个击键样本信息中确定出与该敲击双键的键值对应的击键样本信息。然后,根据击键信息和该击键样本信息确定该敲击双键的认证值,其中在计算该认证值时,样本双键的间隔时长和敲击双键的间隔时长所占的权重大于样本单键的敲击时长和敲击单键的敲击时长所占的权重。最后,计算设备可根据该敲击双键的认证值确定该用户是否合法。具体的,在敲击双键的认证值大于认证阈值时,计算设备可确定该用户为非法用户。相应地,当敲击双键的认证值小于或等于认证阈值时,计算设备可确定该用户为合法用户。可选地,当该敲击双键的数量为多个时,计算设备可根据多个敲击双键各自的认证值来确定该用户的合法性。例如,多个敲击双键中认证阈值大于认证阈值所对应的敲击双键的数量,大于或等于预设阈值时,计算设备可确定该用户为非法用户;否则,该用户为合法用户等。
通过实施本发明实施例,提出一种低成本、便捷地身份认证方案,基于用户的击键信息实现用户的身份认证,能够提升身份认证的便捷性和可靠性。
结合第一方面,在第一方面的第一种可能的实施方式中,计算设备可根据击键信息和击键样本信息,计算它们之间的相似度。进一步地,计算设备根据该相似度计算敲击双键的认证值。
结合第一方面的第一种可能的实施方式,在第一方面的第二种可能的实施方式中,相似度的计算公式为如下所示:
Figure GDA0003347561740000021
其中,d为相似度,k1为敲击双键中的第一敲击单键,k2为敲击双键中的第二敲击单键,
Figure GDA0003347561740000022
为k1的敲击时长,
Figure GDA0003347561740000023
为k2的敲击时长,
Figure GDA0003347561740000024
为敲击双键k1k2的间隔时长。
Figure GDA0003347561740000025
为k1在多个击键样本信息中的敲击时长的平均值。
Figure GDA0003347561740000026
为k1在多个击键样本信息中的敲击时长的标准差。
Figure GDA0003347561740000027
为k2在多个击键样本信息中的敲击时长的平均值。
Figure GDA0003347561740000028
为k2在多个击键样本信息中的敲击时长的标准差。
Figure GDA0003347561740000029
为k1k2在多个击键样本信息中的间隔时长的平均值。
Figure GDA00033475617400000210
为k1k2在多个击键样本信息中的间隔时长的标准差。α1为第一敲击单键所占的权重,α2为敲击双键所占的权重,α3为第二敲击单键所占的权重。
结合第一方面的第一种或第二种可能的实施方式,在第一方面的第三种可能的实施方式中,计算设备可将相似度d代入击键奖惩函数中,计算获得敲击双键的认证值。其中,该击键奖惩函数具体为如下所示:
Figure GDA00033475617400000211
其中,Cn+1为计算设备第n+1次利用击键奖惩函数计算的敲击双键的认证值。Cn为计算设备第n次利用击键奖惩函数计算的敲击双键的认证值。n为自然数。F为所述敲击按键对应的样本按键被认证的次数与用户的所有样本双键被认证的次数总和的比值。d为相似度。T为相似度的上限阈值。R为预设的奖励值。α0为预设的惩罚值。
结合第一方面的第三种或者第四可能的实施方式,在第一方面的第五种可能的实施方式中,击键奖惩函数中的参数T、R以及α0具体是根据至少一个认证结果信息确定的,该认证结果信息包括当用户被认证为非法用户时,该用户在键盘上连续敲击单个按键所产生的击键次数。
结合第一方面的第三种至第五种中的任一种可能的实施方式,在第一方面的第六种可能的实施方式中,所述认证阈值为在执行所述身份认证方法之前,对用户输入的训练数据进行计算得到的,具体包括,利用所述击键奖惩函数计算所采集的与样本双键匹配的敲击双键的认证值,将所述认证值记录为所述样本双键的认证值,当同一敲击双键被采集多次后,则记录每次计算所得的样本双键的认证值,在训练所述认证阈值的击键信息全部输入完之后,所述计算设备从所有样本双键的所有认证值中,取出一个最大值,并将该最大值作为该用户的认证阈值。
第二方面,本发明实施例提供了一种身份认证装置,所述装置包括用于执行如上第一方面或第一方面的任意可能的实施方式中所描述的方法的功能模块或单元。
第三方面,本发明实施例提供了一种计算设备,包括:处理器,存储器,通信接口和总线;处理器、通信接口、存储器通过总线相互通信;通信接口,用于接收和发送数据;存储器,用于存储指令;处理器,用于调用存储器中的指令,执行上述第一方面或第一方面的任意可能的实施方式中所描述的方法。
第四方面,提供了一种计算机非瞬态(non-transitory)存储介质,所述计算机非瞬态存储介质存储了用于身份认证的程序代码。所述程序代码包括用于执行上述第一方面或第一方面的任意可能的实施方式中所描述的方法的指令。
第五方面,提供了一种芯片产品,以执行上述第一方面或第一方面的任意可能的实施方式中的方法。
第六方面,提供了一种包括指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面描述的方法。
通过实施本发明实施例,能够提出一种便捷、低成本的身份认证方案,具体可依据用户敲击键盘的击键信息来进行身份认证,从而提升了身份认证的便捷性和可靠性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1是本发明实施例提供的一种按键敲击的时间示意图。
图2A-图2B是本发明实施例提供的两种身份认证系统的结构示意图。
图3是本发明实施例提供的一种计算设备的结构示意图。
图4是本发明实施例提供的一种身份认证方法的流程示意图。
图5是本发明实施例提供的另一种计算设备的结构示意图。
具体实施方式
首先,阐述本发明涉及的一些概念或技术术语。
(一)、数据库。
计算设备的数据库中保存有一个或多个用户的认证信息,以用于实现用户身份的认证。每个用户的认证信息包括认证阈值和多个击键样本信息,关于认证阈值具体在本发明下文进行详述。该击键样本信息是指用户敲击键盘时产生的信息,其包括但不限于用户敲击键盘时采样获得的样本单键的信息以及样本双键的信息。样本单键的信息包括样本单键的键值、样本单键的持续时长(也可称样本单键的敲击时长)、样本单键被按下的时间点(press time)以及按键被释放的时间点(reless time)等,样本双键的信息包括样本双键的键值以及样本双键的间隔时长等信息。这里的样本双键是指键盘被连续敲击的相邻的两个按键的组合,样本单键是指组成该样本双键的单个按键。可理解的,一个样本双键由两个样本单键组成。相应地,样本双键的键值包括两个样本单键各自的键值。
其中,持续时长是指按键(例如样本单键)被按下到被释放之间的时长。间隔时长是指双键(样本双键)点击的间隔时长。以样本双键包括第一按键和第二按键为例,该间隔时长具体可指以下中的任一种。第一种,第一按键被按下到第二按键被按下之间的时间间隔(TPP)。第二种,第一按键被按下到第二按键被释放之间的时间间隔(TPR)。第三种,第一按键被释放到第二按键被按下之间的时间间隔(TRP)。第四种,第一按键被释放到第二按键被释放之间的时间间隔(TRR)。具体如图1示出按键敲击的时间信息的示意图。如图1中,以用户连续敲击三个按键K、E以及Y为例,分别示出每个按键被按下的时间点、被释放的时间点、每个按键的敲击时长(也可称持续时长)以及相邻两个按键之间的间隔时长。其中,P表示按键被按下,R表示按键被释放。本发明下文以间隔时长为TPP为例,进行相关内容的详细阐述。即,本发明下文中的间隔时长指相邻两个按键被按下的时间间隔。
本发明中,当用户敲击键盘所产生的击键信息满足预设条件时,将该击键信息作为击键样本信息(也可称为击键模板信息),添加到认证信息中。该预设条件具体可为用户或系统自定义设置的,本发明下文将详细说明。
击键信息为用户敲击键盘时所产生的敲击单键以及敲击双键的信息。该敲击单键的信息包括但不限于敲击单键的键值、敲击单键的敲击时长、敲击单键被按下的时间点以及被释放的时间点等。该敲击双键的信息包括但不限于敲击双键的键值以及敲击双键的间隔时长。同样地,这里的敲击双键是指用户连续敲击键盘中的相邻的两个按键。敲击单键是指组成该敲击双键的单个按键。可理解的,一个敲击双键包括两个敲击单键。相应地,敲击双键的键值即包括两个敲击单键各自的键值。该敲击单键的敲击时长是指敲击单键被按下的持续时长,关于持续时长和敲击双键的间隔时长可参见前述实施例中的相关阐述,这里不再赘述。
下面阐述数据库创建涉及的具体实施例。
计算设备可采集用户在一段时间内敲击键盘所产生的击键信息。示例性地,本发明中以9个志愿者(用户)历时3个月使用即时通讯工具(如微信、QQ等)为例,采集每个用户敲击键盘时所产生的击键信息,以作为实验数据,从中为每个用户选取各自的击键样本信息。
具体地,在信息采集之前,每个用户的计算设备中预先安装有用于采集键盘的击键信息的程序。用户在使用键盘进行键入信息时,计算设备通过该程序可采集用户敲击键盘时所产生的击键信息。可选地,计算设备可将该击键信息以数据文件的形式进行保存。
该击键信息包括每个被敲击的按键的键值、每个敲击按键的敲击顺序、每个敲击按键被按下的时间点以及释放的时间点。相应地,计算设备可根据上述信息,计算出每个敲击单键的持续时长以及相邻两个敲击单键(即敲击双键)的间隔时长等信息。
在实际应用中,考虑到信息采集时间跨度较大,难免在有效信息采集的过程中,同样也会采集到噪声或噪点信息,这将影响击键样本信息的选取。因此,计算设备在为用户选取击键样本信息之前,需对采集的用户的击键信息进行处理,例如去除噪声信息等,以获得处理后的击键信息。该噪声信息是指存在错误或异常的信息,这些信息对击键样本信息的分析和选取造成了干扰。进一步地,计算设备可从处理后的击键信息中为该用户选取相应地击键样本信息。进而将该用户的击键样本信息存放至数据库中,以完成数据库的创建。
其中,击键样本信息的选取需满足一定的预设条件。具体的,在实践中发现:敲击单键的持续时长和敲击双键的间隔时长均为正值(大于0的数值)。且,对于熟练使用计算设备键盘的人来说,敲击单键的持续时长以及敲击双键的间隔时长通常不超过对应的预设时长,该预设时长为系统或用户根据实验数据统计获得的,或者根据用户经验设置的经验值,例如通常可为500ms。因此,在为用户选取击键样本信息时,可将持续时长或间隔时长小于0以及大于预设时长(500ms)的敲击按键的信息进行剔除。此外,对于敲击双键k1 k2而言,该敲击双键包括第一按键k1和第二按键k2,需保证敲击双键k1 k2的数量超过预设数量,如50等。进一步地,该敲击双键k1k2还需满足以下条件中的任一项或多项的组合,可将该敲击双键k1k2的信息作为击键样本信息,添加到数据库中。这里的条件包括但不限于:1)第一按键k1的持续时长的标准差
Figure GDA0003347561740000051
和平均值
Figure GDA0003347561740000052
之间的比值小于第一预设阈值,第二按键k2的持续时长的标准差
Figure GDA0003347561740000053
和平均值
Figure GDA0003347561740000054
之间的比值小于第二预设阈值,例如0.5等。2)敲击双键k1 k2的间隔时长的标准差
Figure GDA0003347561740000055
和平均值
Figure GDA0003347561740000056
之间的比值小于第三预设阈值,例如0.6等。
本发明中,预设数量具体可为用户或系统自定义设置的。第一预设阈值至第三预设阈值同样也可为用户或系统自定义设置的,它们可以相同,也可不相同,本发明不做限定。
相应地,如果敲击双键满足上述条件,计算设备可将该敲击双键的信息,例如敲击双键的键值、敲击双键的间隔时长、敲击双键的标准差以及平均值等信息,作为用户的击键样本信息添加到数据库中。可选地,该敲击双键包括相邻的两个敲击单键,计算设备同样可将两个敲击单键k1和k2各自的信息,例如敲击单键的键值、敲击单键的持续时长、标准差σk和平均值μk等信息,作为该用户的击键样本信息添加到数据库中。
(二)、击键奖惩函数。
本发明实施例中,在进行用户的身份认证时,可以使用击键奖惩函数计算用户的认证值,根据该认证值可进一步对用户进行身份认证。。该击键奖惩函数为计算设备预先设置好的,示例性地如下公式(1)给出一种可能的击键奖惩函数的数学表达式。
Figure GDA0003347561740000057
其中,Cn+1为计算设备利用该击键奖惩函数第n+1次计算的敲击双键的认证值。Cn为计算设备利用该击键奖惩函数第n次计算获得的敲击双键的认证值,n为自然数。d为击键信息和该敲击双键对应的击键样本信息之间的相似度,关于相似度的计算具体在本发明下文进行详述。T为相似度d的上限阈值。R为预设的奖励值。α0为预设的惩罚值。F为所述敲击按键对应的样本按键被认证的次数与所述用户的所有样本双键被认证的次数总和的比值。
在本发明实施例中,从利用所述击键奖惩函数对用户进行第一次认证开始,系统会对每次认证过程中认证用户的样本双键中的每个样本双键被用于认证的次数进行统计,例如,在第一次认证的时候,样本双键“AN”有两次与敲击双键匹配,则计算设备统计“AN”的认证次数为2次,在第二次认证的时候,双键“AN”被认证的次数为3次,则计算设备可统计“AN”总共被认证的次数为5次,在后续的认证过程中,“AN”每被认证一次,即可对“AN”的认证次数加1。如表1中次数栏所示,即为每个样本双键被用于认证的次数。在统计样本双键的被认证次数后,所述计算设备还会计算所述样本双键的被认证次数与用户的所有样本双键的所有被认证次数的总和的比率,如表1中比率栏所示,所述比率即为所述击键奖惩函数的F。例如,所述样本双键“AN”被认证的次数为116,用户的所有样本双键被认证的次数之和为993,则可得到比率F为116/993=0.1168。
表1
样本双键 次数 比率
AI 53 0.0534
AN 116 0.1168
AO 63 0.0634
HI 61 0.0614
IN 67 0.0675
NG 136 0.1370
NI 58 0.0584
ON 57 0.0574
OU 60 0.0604
SH 51 0.0514
WO 130 0.1309
YO 82 0.0826
ZH 59 0.0594
合计 993 1
其中,上述公式(1)的表达含义如下。在首次进行用户的身份认证时,每个敲击双键的认证值被初始化为0。随着用户敲击键盘的进行,计算设备会逐步更新或调整该敲击双键的认证值。例如,当用户击键信息中的敲击双键和数据库中与该敲击双键对应的击键样本信息的相似度较大,也即是它们之间的差异度或偏差度较小时,如上公式(1)中d大于T。则计算设备可认为该用户为合法用户,此时可减小该用户的认证值,以作为一种奖励。相应地,如果击键信息中的敲击双键和数据库中与该敲击双键对应的击键样本信息的相似度较小,即是它们之间的差异度或偏差度较大时,如上公式(1)中d小于或等于T。则计算设备可认为该用户为非法用户,此时可增大该用户的认证值,以此作为一种惩罚。此外,如果用户的击键信息所涉及的敲击双键的键值不在数据库中该用户的多个击键样本信息中,则计算设备可增加该敲击双键的认证值,以此来作为一种惩罚,以防止非法用户使用键盘敲击按键来键入信息。
可选地,本发明中击键奖惩函数还可能涉及一些约束条件,该约束条件为用户或系统自定义设置的,例如敲击双键的认证值不能为负数等等,本发明不做限定。
可选地,本发明中击键奖惩函数涉及的参数T、R以及α0可以是根据认证结果信息确定的,该认证结果信息用于指示用户获得身份认证的失败结果(即该用户被认证为非法用户)时,该用户连续敲击键盘上的单个按键的击键次数。当该用户的数量为多个的情况下,该认证结果信息用于指示多个用户获得身份认证的失败结果时,多个用户敲击键盘上的单个按键的击键次数的平均值,也称为平均击键次数。
具体地,假设本发明中,击键奖惩函数中涉及的参数T的预设调整范围为[0,10],R的预设调整范围为[0,10],α0的预设调整范围为[0,0.05]。为保证击键奖惩函数的精确度,在对参数进行调整和优化时,T和R的调整步长分别为0.1,α0的调整步长为0.01。相应地,计算设备可根据不同用户各自的击键特征进行反复实验,调整优化获得适合自身用户(即用户对应的计算设备)的击键奖惩函数。
示例性地,如下表2示出计算设备的认证结果信息。即是,计算设备利用上述公式(1)对某用户敲击键盘的击键信息进行身份认证时记录的相关信息,具体如下表2所示。
表2
Figure GDA0003347561740000071
上表2中,认证失败次数是指在身份认证过程中,用户身份认证失败的次数。平均击键次数表示非法用户被认证出来时该非法用户的击键次数的平均值。本例中,假设认证总次数为8。对于某一合法用户i而言,非法用户j多次冒充用户i使用计算设备连续敲击键盘时,计算设备基于用户j每次敲击键盘时产生的击键信息对该用户j身份认证失败时,获取该用户j每次敲击键盘上单个按键的击键次数,进而对每次的击键次数求取平均值,即为用户j的平均击键次数。
经实验证明:对于身份认证来说,认证失败次数越少,表示身份认证成功率越高。平均击键次数越少,表示用户身份认证的速率越快。本发明中,为获得击键奖惩函数的最优参数T、R以及α0,计算设备可先按照认证失败次数进行排序,从失败次数最少的几组参数中选取平均击键次数最少的一组参数,作为该击键奖惩函数的最优参数。
按照上述击键奖惩函数的最优参数确定原理,计算设备可获得不同用户各自适用的击键奖惩函数的最优参数。示例性地,如下表3给出9个用户各自适用的击键奖惩函数的最优参数。
表3
用户编号 T R α<sub>0</sub>
1 0.3 10 0.03
2 3.5 0.1 0.04
3 0.9 0.5 0.04
4 5.5 0.4 0.05
5 0.5 1.3 0.01
6 0.9 0.5 0.05
7 0.5 1.5 0.05
8 0.4 10 0.03
9 0.3 10 0.04
(三)、认证阈值。
在本发明实施例中,每个用户预设有一个认证阈值。该认证阈值用于判定用户的身份是否合法。
具体实现中,该认证阈值可为用户或系统根据实际需求进行自定义设置的,例如根据用户经验设置的经验值等。该认证阈值也可以是在进行用户认证之前,利用所述击键奖惩函数对每个用户的认证阈值进行训练。
具体的,在确定每个用户的击键样本信息后,计算设备可采集该用户在一段时间内敲击键盘产生的击键信息,所述击键信息包括多个敲击双键的信息。关于击键信息可参见前述实施例中的相关阐述,这里不再赘述。计算设备利用所述击键奖惩函数计算与所述样本双键匹配的敲击双键的认证值,并将所述认证值记录为所述样本双键的认证值,当同一敲击双键被采集多次后,则记录每次计算所得的样本双键的认证值,在训练所述认证阈值的击键信息全部输入完之后,所述计算设备从所有样本双键的所有认证值中,取出一个最大值,并将该最大值作为该用户的认证阈值。
示例性地,假设在训练所述认证阈值时,用户在1分钟内连续敲击键盘,计算设备可多次采样获得该用户敲击键盘所产生的击键信息,假设这里的击键信息包括5个敲击双键的键值,同一敲击双键被采集了5次。例如,击键信息分别包括5个双键“ER”、5个双键“WS”、5个双键“QA”、5个双键“MN”以及5个双键“SD”中每个双键的信息。相应地,计算设备基于击键奖惩函数分别计算每个敲击双键各自的认证值。以“ER”为例,计算设备基于击键奖惩函数和5次采集的敲击双键“ER”的击键信息,计算获得该敲击双键“ER”的5个认证值。关于认证值的具体计算,本发明再下文进行详述。进一步地,计算设备可从5个认证值中选取一个最大值,作为该敲击双键“ER”的认证阈值。同样地,按照上述敲击双键的认证阈值的确定原理,计算设备可依次获得敲击双键“ER”、“WS”、“QA”、“MN”以及“SD”各自的认证阈值,最后计算设备可从5个敲击双键各自的认证阈值选取一个最大值,以作为该用户的认证阈值。其中,这里的5个敲击双键以及每个敲击双键被计算的次数5仅为示例,并不构成限定。在实际应用中,计算数量远超过5个。
(四)、击键次数或平均击键次数。
本发明中,计算设备采用击键次数或平均击键次数来反映或评估用户的击键奖惩函数的优劣效果。该击键次数是指非法用户j被认证识别时,该非法用户j敲击键盘上的单个按键的次数。当非法用户j的数量为多个,即多个用户j冒充合法用户i使用计算设备敲击键盘进行身份认证时,多个非法用户j被认证识别时,这多个非法用户j敲击键盘上的单个按键的次数的平均值为平均击键次数。或者,同一非法用户j进行多次身份认证时,在计算设备获得非法用户j的多次身份识别后,对多次用户敲击键盘的单个按键的击键次数求取平均值,以作为非法用户j的平均击键次数。
示例性地,用户j冒充合法用户i敲击键盘进行键入信息时,计算设备可采集用户j敲击键盘时产生的击键信息,该击键信息包括敲击双键的信息。进一步地,计算设备利用敲击双键的信息、数据库中与该敲击双键对应的用户i的击键样本信息以及击键奖惩函数,计算获得该用户j的认证值。如果该认证值大于或等于预设的认证阈值,则计算设备可认为用户j身份认证失败,即该用户j为非法用户。相应地,计算设备记录用户j认证失败时,用户j敲击键盘上的单个按键的次数,即该用户j的击键次数。按照上述原理,当用户j多次敲击键盘进行身份认证时,计算设备可统计这几次用户j敲击键盘上的单个按键的击键次数,并对其求取平均值,以作为平均击键次数。相应地,计算设备利用该平均击键次数来反映击键奖惩函数的认证效果。如果平均击键次数越小,说明击键奖惩函数的认证效果越好,即是击键奖惩函数的参数精度越高。反之,如果平均击键次数越大,说明击键奖惩函数的认证效果越差,即是击键奖惩函数的参数精度越低。
基于上述实施例的介绍,下面阐述本发明适用的系统框架。请参见图2A,是本发明实施例提供的一种身份认证系统的结构框架示意图。如图2A所示的身份认证系统100包括计算设备102和键盘104。其中,如图2A中键盘104为部署在计算设备102本地的键盘。即是,键盘104为计算设备102自身的输入装置。
计算设备102具体可包括但不限于智能手机、平板电脑、掌上电脑以及笔记本之类的设备。键盘104具体可为该计算设备连接的外部硬件键盘,也可为计算设备中部署的虚拟键盘,该虚拟键盘由软件代码实现。其中,图2A中以键盘104为硬件键盘为例示出。
请参见图2B,是本发明实施例提供的另一种身份认证系统的结构框架示意图。如图2B所示的身份认证系统100同样包括计算设备102和键盘104。其中,如图2B中键盘104为部署在计算设备102远端的键盘,即如图所示键盘104为部署在远端设备106的键盘。用户在使用键盘进行敲击时,远端设备106可采集用户敲击键盘时产生的击键信息,进而通过网络将采集的击键信息发送给计算设备102,便于计算设备102根据接收的该用户的击键信息实现用户的身份认证。关于如何基于击键信息实现用户的身份认证,具体在本发明下文进行详述,这里不做赘述。
远端设备106包括但不限于智能手机、笔记本、平板电脑以及掌上电脑等之类的设备。计算设备102具体可包括但不限于智能手机、平板电脑、掌上电脑以及笔记本之类的设备。键盘104具体可为该远端设备连接的外部硬件键盘,也可为远端设备中部署的虚拟键盘,该虚拟键盘由软件代码实现。其中,图2B中以键盘104为硬件键盘为例示出。
请参见图3,是本发明实施例提供的一种计算设备的结构示意图。如图3所示的计算设备200包括一个或多个处理器201、通信接口202、存储器203和用户接口205,处理器201、通信接口202、存储器203和用户接口205可通过总线或者其它方式连接,本发明实施例以通过总线204连接为例。其中:
处理器201可以由一个或者多个通用处理器构成,例如CPU。处理器201可用于运行实现身份认证的程序代码(图示简称为身份认证代码)。也就是说,处理器201执行程序代码可以实现用户身份认证的功能。
通信接口202可以为有线接口(例如以太网接口)或无线接口(例如蜂窝网络接口或使用无线局域网接口),用于与其他设备或模块进行通信。在一种可能的实施方式中,当本发明中的计算设备和键盘之间通过网络相互通信时,即是键盘并非部署在计算设备本地的输入装置,通信接口202具体可用于接收用户敲击键盘时所产生的击键信息等。
存储器203可以包括易失性存储器(volatile memory),例如RAM;存储器也可以包括非易失性存储器(non-vlatile memory),例如ROM、快闪存储器(flash memory)、HDD或固态硬盘SSD;存储器203还可以包括上述种类的存储器的组合。存储器203可用于存储一组程序代码,以便于处理器201调用存储器203中存储的程序代码以实现本发明下文所述的身份认证方法在计算设备侧的实施步骤。
用户接口205具体可为触控面板,用于检测触控面板上的操作指令。用户接口205也可以是物理按键或者鼠标。用户接口205还可以为显示屏,用于输出、显示图像或数据。在另一种可能的实施方式中,当本发明中的键盘为计算设备本地部署的输入装置时,该用户接口205具体可为键盘(或触控面板)。以触控面板为例,其包括触摸屏和触控键盘,用于检测触控面板上的击键信息等。需要说明的,图3所示的计算设备仅仅是本发明实施例的一种实现方式,实际应用中,计算设备还可以包括更多或更少的部件,这里不作限制。
接着,介绍本发明中身份认证方法涉及的相关实施例。请参见图4,是本发明实施例提供的一种身份认证方法的流程示意图。该方法应用在计算设备中,该计算设备包括有数据库,该数据库中存储有至少一个用户的认证信息,每个用户的认证信息包括认证阈值以及多个击键样本信息。如图4所示的身份认证方法,包括如下实施步骤:
步骤S101、计算设备获取用户敲击键盘的击键信息。用户在敲击键盘时,一般会连续敲击键盘上的按键进行输入。在本发明实施例中,将用户连续敲击的相邻的两个按键作为一个认证单位,在此为了方便描述,将一个认证单位称为敲击双键。该击键信息即包括所述敲击双键的键值、所述敲击双键的间隔时长以及所述敲击双键中的每个单键被敲击的时长。
具体的,计算设备中预先安装有程序,该程序用于采集用户敲击键盘时产生的击键信息。相应地,在用户使用键盘进行键入信息时,计算设备通过预装的程序可采集用户敲击键盘时所产生的击键信息,关于该击键信息具体可参见前述实施例中的相关介绍,这里不再赘述。举例来说,假设用户在键盘上连续敲击如下按键“s、h、e以及n”。相应地,计算设备可采集用户敲击键盘所产生的击键信息,这里的击键信息包括3个敲击双键的键值、3个敲击双键中相邻两个敲击单键的间隔时长以及每个敲击单键被按下的持续时长。这里的3个敲击双键分别为“sh”、“he”以及“en”。每个敲击双键由两个敲击单键组成,例如“sh”由敲击单键“s”和“h”组成。相应地,敲击双键“sh”的间隔时长可指敲击单键“s”被按下到“h”被按下之间的时间间隔。敲击单键“s”的持续时长可指“s”被按下到释放之间的时间间隔。
步骤S102、计算设备根据击键信息中敲击双键的键值,确定与该敲击双键的键值所对应的击键样本信息。其中,该击键样本信息中包括样本双键的键值和所述敲击双键的键值相同或匹配。
计算设备中包括有数据库,该数据库中预先存储有至少一个用户各自的认证信息,该认证信息包括多个击键样本信息。相应地,计算设备在获得用户的击键信息后,可根据击键信息中的敲击双键的键值,从数据库中存储的该用户的多个击键样本信息中查找出该敲击双键的键值对应的击键样本信息。便于后续计算设备利用该击键样本信息进行身份认证识别。
步骤S103、计算设备根据击键信息和敲击双键的键值所对应的击键样本信息,确定该敲击双键的认证值。其中,在计算认证值时,样本双键的间隔时长及敲击双键的间隔时长所占的权重大于样本单键的敲击时长及敲击单键的敲击时长所占的权重。
计算设备可根据S101中采集的击键信息和S102中获得的击键样本信息,再结合击键奖惩函数,计算获得该敲击双键的认证值。
具体地,计算设备可利用预设的相似度函数,计算击键信息和击键样本信息之间的相似度d。其中,该相似度函数为用户或系统预先配置的,用于计算信息之间的相似程度。该相似度函数包括但不限于余弦相似度、欧式距离、切比雪夫距离、曼哈顿距离以及其他用于计算相似度的计算函数。示例性地,如下公式(2)示出一种可能的相似度函数的数学表达式。
Figure GDA0003347561740000111
其中,d表示击键信息和击键样本信息之间的相似度。k1为击键信息包括的敲击双键中的第一敲击单键。k2为击键信息包括的敲击双键中的第二敲击单键。
Figure GDA0003347561740000112
为k1的敲击时长,
Figure GDA0003347561740000113
为k2的敲击时长,
Figure GDA0003347561740000114
为所述敲击双键k1k2的间隔时长。
Figure GDA0003347561740000115
为k1在该用户的多个击键样本信息中的敲击时长的平均值,即是k1对应的击键样本信息中该k1的敲击时长的平均值。
Figure GDA0003347561740000116
为k1在该用户的多个击键样本信息中的敲击时长的标准差,即是k1的敲击时长在多个击键样本信息中的标准差。
Figure GDA0003347561740000117
为k2在该用户的多个击键样本信息中的敲击时长的平均值。
Figure GDA0003347561740000118
为k2在该用户的多个击键样本信息中的敲击时长的标准差。
Figure GDA0003347561740000119
为k1k2在该用户的多个击键样本信息中的间隔时长的平均值,
Figure GDA00033475617400001110
为k1k2在该用户的多个击键样本信息中的间隔时长的标准差。α1为第一敲击单键k1所占的权重,即是第一敲击单键对相似度d的影响权重。α2为敲击双键k1k2所占的权重,即是敲击双键k1k2对相似度d的影响权重。α3为第二敲击单键k2所占的权重,即是第二敲击单键对相似度d的影响权重。
如上公式(1)中,α1小于α2,α3小于α2。即是,敲击双键的间隔时长和样本双键的间隔时长所占的权重大于敲击单键的敲击时长和样本单键的敲击时长所占的权重。其中,相似度函数涉及的参数α1、α2以及α3可为用户或系统自定义设置的,例如根据实际经验设置的经验值,或者根据一系列统计数据统计获得的。可选地,经实验验证,为保证相似度计算的精准度,本发明可采用α1=α3=0.2,α2=0.6的相似度函数,计算击键信息和击键样本信息之间的相似度,这里不做论述。
计算设备在计算获得相似度后,可利用预存的击键奖惩函数和该相似度,计算获得该敲击双键的认证值。示例性地,本发明采用如下公式(3)所示的击键奖惩函数。
Figure GDA0003347561740000121
如上公式(3)可知,计算设备在首次计算敲击双键的认证值时,可将该敲击双键的认证值初始化为0。随着用户敲击键盘次数的增多,敲击双键的认证次数增多,计算设备可调整和优化每次敲击双键的认证值,如上公式(3)所示可利用上一次计算获得的认证值来计算当前一次敲击双键的认证值。关于上述公式(3)具体可参见前述实施例中的相关阐述,这里不再赘述。
举例来说,用户在一段时间内连续敲击键盘进行键入信息,计算设备采集用户敲击键盘所产生的击键信息包括以下敲击单键“s、h、e、n、h、e以及n”以及敲击双键“sh、he、en、nh、he以及en”的信息。计算设备可依据上述认证值计算的原理,根据上述公式(3)利用上一次敲击双键的认证值,来计算当前一次敲击双键的认证值。例如本例中,计算设备计算第二次采集的敲击双键“en”的认证值,需利用第一次敲击双键“en”的认证值,这里不做详述。
步骤S104、计算设备根据敲击双键的认证值,确定该用户是否为合法用户。
计算设备在获得该敲击双键的认证值后,可依据该敲击双键的认证值判定该用户为合法用户还是非法用户,即实现该用户的身份认证。具体的,当该敲击双键的认证值大于或等于预存的认证阈值时,计算设备可认为或确定该用户为非法用户;否则,认为该用户为合法用户。
可选地,当所述敲击双键的数量为多个时,即计算设备多次采样获得用户敲击键盘所产生的击键信息,该击键信息包括多个敲击双键的键值以及多个敲击双键各自的间隔时长等信息。同样地,按照上述S101-S103的计算原理,计算设备可计算获得多个敲击双键各自的认证值。相应地,计算设备可根据多个敲击双键各自的认证值来实现该用户的身份认证。例如,当多个敲击双键各自的认证值中存在大于或等于认证阈值的认证值时,计算设备可确定该用户为非法用户;否则,确定该用户为合法用户。或者,当目标数量大于或等于预设数量时,计算设备可确定该用户为非法用户;否则,确定该用户为合法用户,该目标数量为多个敲击双键各自的认证值中认证值大于或等于认证阈值的数量。
通过实施本发明实施例,能够基于用户的击键信息实现用户的身份认证,可提升身份认证的便捷性和可靠性。此外,本发明提出的击键奖惩函数可依据不同用户自身的击键特征进行调整和优化,以切合不同用户的实际需求,从而还提升了身份认证的实用性。
结合上文图1-图4实施例中的相关阐述,下面介绍本发明适用的相关设备以及系统。请参见图5是本发明实施例提供的一种计算设备的结构示意图。如图5所示的计算设备500包括数据库建立模块502、获取模块504以及确定模块506。其中,
所述数据库建立模块502,用于建立数据库,所述数据库中包括至少一个用户的认证信息,所述认证信息包括认证阈值和多个击键样本信息,每个击键样本信息包括样本双键的键值、所述样本双键的间隔时长以及样本单键的敲击时长,所述样本双键为所述样本双键的键值所指示的键盘上被连续敲击的相邻两个按键的组合,所述样本单键为组成所述样本双键的单个按键,所述样本双键的间隔时长为所述样本双键被连续按下的时间间隔,所述样本单键的敲击时长为所述样本单键被按下的持续时长。其中,关于数据库的建立具体可参见前述实施例中数据库的相关阐述,这里不再赘述。
所述获取模块504,用于获取用户敲击键盘的击键信息,所述击键信息包括敲击双键的键值、所述敲击双键的间隔时长以及敲击单键的敲击时长,所述敲击双键为键盘上被连续敲击的相邻的两个按键的组合,所述敲击单键为组成所述敲击双键的单个按键,所述敲击双键的间隔时长为所述相邻的两个按键被连续按下的时间间隔,所述敲击单键的敲击时长为所述敲击单键被按下的持续时长;关于获取模块504如何获取击键信息可参见前述图4所述方法实施例中步骤S101中的相关阐述,这里不再赘述。
所述确定模块506,用于根据所述敲击双键的键值确定所述敲击双键的键值对应的击键样本信息,根据所述击键信息和所述击键样本信息确定所述敲击双键的认证值,在计算所述认证值时,所述样本双键的间隔时长及所述敲击双键的间隔时长所占的权重大于所述样本单键的敲击时长及所述敲击单键的敲击时长所占的权重;关于确定模块506如何确定敲击双键的认证值具体可参见前述图4所述方法实施例中步骤S102-S103中的相关阐述,这里不再赘述。
所述确定模块506,还用于在所述敲击双键的认证值大于所述认证阈值时,确定所述用户为非法用户。关于确定模块506如何基于敲击双键的认证值实现用户的身份认证,具体可参见前述图4所述方法实施例中步骤S104中的相关阐述,这里不再赘述。在一些可能的实施方式中,所述确定模块506具体用于根据所述击键信息和所述击键样本信息确定所述击键信息和所述击键样本信息之间的相似度;根据所述相似度确定所述敲击双键的认证值。
在一些可能的实施方式中,所述相似度为:
Figure GDA0003347561740000131
其中,d为所述相似度,k1为所述敲击双键中的第一敲击单键,k2为所述敲击双键中的第二敲击单键,
Figure GDA0003347561740000132
为k1的敲击时长,
Figure GDA0003347561740000133
为k2的敲击时长,
Figure GDA0003347561740000134
为所述敲击双键k1k2的间隔时长,
Figure GDA0003347561740000135
为k1在所述多个击键样本信息中的敲击时长的平均值,
Figure GDA0003347561740000136
为k1在所述多个击键样本信息中的敲击时长的标准差,
Figure GDA0003347561740000137
为k2在所述多个击键样本信息中的敲击时长的平均值,
Figure GDA0003347561740000138
为k2在所述多个击键样本信息中的敲击时长的标准差,
Figure GDA0003347561740000139
为k1k2在所述多个击键样本信息中的间隔时长的平均值,
Figure GDA0003347561740000141
为k1k2在所述多个击键样本信息中的间隔时长的标准差,α1为所述第一敲击单键所占的权重,α2为所述敲击双键所占的权重,α3为所述第二敲击单键所占的权重。
其中,关于确定模块506如何计算击键信息和击键样本信息之间的相似度,可具体参见前述图4所述方法实施例中步骤S103中涉及的相似度计算的相关阐述,这里不再赘述。
在一些可能的实施例中,所述确定模块506具体用于将所述相似度代入击键奖惩函数计算所述敲击双键的认证值;所述击键奖惩函数为:
Figure GDA0003347561740000142
其中,Cn+1为第n+1次利用所述击键奖惩函数计算的所述敲击双键的认证值,Cn为第n次利用所述击键奖惩函数计算的所述敲击双键的认证值,n为自然数。F为所述敲击按键对应的样本按键被认证的次数与所述用户的所有样本双键被认证的次数总和的比值,d为所述相似度,T为所述相似度的上限阈值,R为预设的奖励值,α0为预设的惩罚值。
在一些可能的实施方式中,所述T、R以及α0为根据认证结果信息确定的,其中,所述认证结果信息包括在所述用户认证为非法用户时,所述用户在键盘上连续敲击单个按键的次数。其中,关于击键奖惩函数以及该函数涉及的一些参数具体可参见前述击键惩罚函数的相关介绍,这里不再赘述。
在一些可能的实施方式中,所述认证阈值为至少一个敲击双键的认证阈值中的最大值,所述敲击双键的认证阈值为多次利用所述击键奖惩函数计算获得的该敲击双键的认证值中的最大值。具体可参见前述关于认证阈值的相关介绍,这里不再赘述。
应理解的是,本发明实施例的计算设备500可以通过专用集成电路(application-specific integrated circuit,ASIC)实现,或可编程逻辑器件(programmable logicdevice,PLD)实现,上述PLD可以是复杂程序逻辑器件(complex programmable logicaldevice,CPLD),现场可编程门阵列(field-programmable gate array,FPGA),通用阵列逻辑(generic array logic,GAL)或其任意组合。也可以通过软件实现如上图4中所示的身份认证方法时,该设备及其各个模块也可以为软件模块。
需要说明的,图5仅仅是本发明实施例的一种可能的实现方式,实际应用中,计算设备还可以包括更多或更少的部件,这里不作限制。关于本发明实施例中未示出或未描述的内容,可参见前述图4所述方法实施例中的相关阐述,这里不再赘述。
本发明实施例还提供一种计算机非瞬态存储介质,所述计算机非瞬态存储介质中存储有指令,当其在处理器上运行时,图4所示的方法流程得以实现。
本发明实施例还提供一种计算机程序产品,当所述计算机程序产品在处理器上运行时,图4所示的方法流程得以实现。
结合本发明实施例公开内容所描述的方法或者算法的步骤可以硬件的方式来实现,也可以是由处理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成,软件模块可以被存放于随机存取存储器(random access memory,RAM)、闪存、只读存储器(read only memory,ROM)、可擦除可编程只读存储器(erasable programmable ROM,EPROM)、电可擦可编程只读存储器(electrically EPROM,EEPROM)、寄存器、硬盘、移动硬盘、只读光盘(CD-ROM)或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。另外,该ASIC可以位于计算设备中。当然,处理器和存储介质也可以作为分立组件存在于计算设备中。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。

Claims (8)

1.一种身份认证方法,应用于计算设备中,其特征在于,所述计算设备包括至少一个用户的认证信息,所述认证信息包括认证阈值和多个击键样本信息,每个击键样本信息包括样本双键的键值、所述样本双键的间隔时长以及样本单键的敲击时长,所述样本双键为所述样本双键的键值所指示的键盘上被连续敲击的相邻两个按键的组合,所述样本单键为组成所述样本双键的单个按键,所述样本双键的间隔时长为所述样本双键被连续按下的时间间隔,所述样本单键的敲击时长为所述样本单键被按下的持续时长,所述方法包括:
获取用户敲击键盘的击键信息,所述击键信息包括敲击双键的键值、所述敲击双键的间隔时长以及敲击单键的敲击时长,所述敲击双键为键盘上被连续敲击的相邻的两个按键的组合,所述敲击单键为组成所述敲击双键的单个按键,所述敲击双键的间隔时长为所述相邻的两个按键被连续按下的时间间隔,所述敲击单键的敲击时长为所述敲击单键被按下的持续时长;
根据所述敲击双键的键值确定所述敲击双键的键值对应的击键样本信息,根据击键奖惩函数、所述击键信息和所述击键样本信息确定所述敲击双键的认证值,在计算所述认证值时,所述样本双键的间隔时长及所述敲击双键的间隔时长所占的权重大于所述样本单键的敲击时长及所述敲击单键的敲击时长所占的权重;其中,所述击键奖惩函数涉及的参数是所述计算设备根据认证结果信息确定的,所述认证结果包括用户多次进行身份认证时身份认证失败的次数以及非法用户身份认证失败时在键盘上连续敲击单个按键的次数;
在所述敲击双键的认证值大于所述认证阈值时,确定所述用户为非法用户。
2.根据权利要求1所述的方法,其特征在于,所述根据所述击键奖惩函数、所述击键信息和所述击键样本信息确定所述敲击双键的认证值包括:
根据所述击键信息和所述击键样本信息确定所述击键信息和所述击键样本信息之间的相似度;
根据所述击键奖惩函数和所述相似度确定所述敲击双键的认证值。
3.根据权利要求2所述的方法,其特征在于,所述相似度为:
Figure FDA0003347561730000011
其中,d为所述相似度,k1为所述敲击双键中的第一敲击单键,k2为所述敲击双键中的第二敲击单键,tk1为k1的敲击时长,
Figure FDA0003347561730000012
为k2的敲击时长,
Figure FDA0003347561730000013
为所述敲击双键k1k2的间隔时长,
Figure FDA0003347561730000014
为k1在所述多个击键样本信息中的敲击时长的平均值,
Figure FDA0003347561730000015
为k1在所述多个击键样本信息中的敲击时长的标准差,
Figure FDA0003347561730000016
为k2在所述多个击键样本信息中的敲击时长的平均值,
Figure FDA0003347561730000017
为k2在所述多个击键样本信息中的敲击时长的标准差,
Figure FDA0003347561730000018
为k1k2在所述多个击键样本信息中的间隔时长的平均值,
Figure FDA0003347561730000019
为k1k2在所述多个击键样本信息中的间隔时长的标准差,α1为所述第一敲击单键所占的权重,α2为所述敲击双键所占的权重,α3为所述第二敲击单键所占的权重。
4.根据权利要求2或3所述的方法,其特征在于,所述根据所述击键奖惩函数和所述相似度确定所述敲击双键的认证值具体为:
将所述相似度代入所述击键奖惩函数计算所述敲击双键的认证值;
所述击键奖惩函数为:
Figure FDA0003347561730000021
其中,Cn+1为第n+1次利用所述击键奖惩函数计算的所述敲击双键的认证值,Cn为第n次利用所述击键奖惩函数计算的所述敲击双键的认证值,n为自然数,F为所述敲击按键对应的样本按键被认证的次数与所述用户的所有样本双键被认证的次数总和的比值,d为所述相似度,T为所述相似度的上限阈值,R为预设的奖励值,α0为预设的惩罚值。
5.一种计算设备,其特征在于,包括数据库建立模块、获取模块以及确定模块;其中,
所述数据库建立模块,用于建立数据库,所述数据库包括至少一个用户的认证信息,所述认证信息包括认证阈值和多个击键样本信息,每个击键样本信息包括样本双键的键值、所述样本双键的间隔时长以及样本单键的敲击时长,所述样本双键为所述样本双键的键值所指示的键盘上被连续敲击的相邻的两个按键的组合,所述样本单键为组成所述样本双键的单个按键,所述样本双键的间隔时长为所述样本双键被连续按下的时间间隔,所述样本单键的敲击时长为所述样本单键被按下的持续时长;
所述获取模块,用于获取用户敲击键盘的击键信息,所述击键信息包括敲击双键的键值、所述敲击双键的间隔时长以及敲击单键的敲击时长,所述敲击双键为键盘上被连续敲击的相邻的两个按键的组合,所述敲击单键为组成所述敲击双键的单个按键,所述敲击双键的间隔时长为所述相邻的两个按键被连续按下的时间间隔,所述敲击单键的敲击时长为所述敲击单键被按下的持续时长;
所述确定模块,用于根据所述敲击双键的键值确定所述敲击双键的键值对应的击键样本信息,根据击键奖惩函数、所述击键信息和所述击键样本信息确定所述敲击双键的认证值,在计算所述认证值时,所述样本双键的间隔时长及所述敲击双键的间隔时长所占的权重大于所述样本单键的敲击时长及所述敲击单键的敲击时长所占的权重;其中,所述击键奖惩函数涉及的参数是所述计算设备根据认证结果信息确定的,所述认证结果包括用户多次进行身份认证时身份认证失败的次数以及非法用户身份认证失败时在键盘上连续敲击单个按键的次数;
所述确定模块,还用于在所述敲击双键的认证值大于所述认证阈值时,确定所述用户为非法用户。
6.根据权利要求5所述的计算设备,其特征在于,
所述确定模块,具体用于根据所述击键信息和所述击键样本信息确定所述击键信息和所述击键样本信息之间的相似度;
所述确定模块,还用于根据所述击键奖惩函数和所述相似度确定所述敲击双键的认证值。
7.根据权利要求6所述的计算设备,其特征在于,所述相似度为:
Figure FDA0003347561730000022
其中,d为所述相似度,k1为所述敲击双键中的第一敲击单键,k2为所述敲击双键中的第二敲击单键,
Figure FDA0003347561730000023
为k1的敲击时长,
Figure FDA0003347561730000024
为k2的敲击时长,
Figure FDA0003347561730000025
为所述敲击双键k1k2的间隔时长,
Figure FDA0003347561730000026
为k1在所述多个击键样本信息中的敲击时长的平均值,
Figure FDA0003347561730000027
为k1在所述多个击键样本信息中的敲击时长的标准差,
Figure FDA0003347561730000031
为k2在所述多个击键样本信息中的敲击时长的平均值,
Figure FDA0003347561730000032
为k2在所述多个击键样本信息中的敲击时长的标准差,
Figure FDA0003347561730000033
为k1k2在所述多个击键样本信息中的间隔时长的平均值,
Figure FDA0003347561730000034
为k1k2在所述多个击键样本信息中的间隔时长的标准差,α1为所述第一敲击单键所占的权重,α2为所述敲击双键所占的权重,α3为所述第二敲击单键所占的权重。
8.根据权利要求6或7所述的计算设备,其特征在于,
所述确定模块,具体用于将所述相似度代入所述击键奖惩函数计算所述敲击双键的认证值;
所述击键奖惩函数为:
Figure FDA0003347561730000035
其中,Cn+1为第n+1次利用所述击键奖惩函数计算的所述敲击双键的认证值,Cn为第n次利用所述击键奖惩函数计算的所述敲击双键的认证值,n为自然数,F为所述敲击按键对应的样本按键被认证的次数与所述用户的所有样本双键被认证的次数总和的比值,d为所述相似度,T为所述相似度的上限阈值,R为预设的奖励值,α0为预设的惩罚值。
CN201811065329.0A 2018-09-12 2018-09-12 身份认证方法、设备及计算机存储介质 Active CN109492357B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811065329.0A CN109492357B (zh) 2018-09-12 2018-09-12 身份认证方法、设备及计算机存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811065329.0A CN109492357B (zh) 2018-09-12 2018-09-12 身份认证方法、设备及计算机存储介质

Publications (2)

Publication Number Publication Date
CN109492357A CN109492357A (zh) 2019-03-19
CN109492357B true CN109492357B (zh) 2022-04-05

Family

ID=65690516

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811065329.0A Active CN109492357B (zh) 2018-09-12 2018-09-12 身份认证方法、设备及计算机存储介质

Country Status (1)

Country Link
CN (1) CN109492357B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110570199B (zh) * 2019-07-24 2022-10-11 中国科学院信息工程研究所 一种基于用户输入行为的用户身份检测方法及系统
CN110990811A (zh) * 2019-11-29 2020-04-10 北京邮电大学 一种身份认证方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101478401A (zh) * 2009-01-21 2009-07-08 东北大学 一种基于击键特征识别的认证方法及系统
CN101674184A (zh) * 2009-10-19 2010-03-17 北京微通新成网络科技有限公司 一种基于用户击键特征的身份识别方法
CN104636103A (zh) * 2014-12-31 2015-05-20 华为技术有限公司 一种键盘数据传输方法及装置
CN108306884A (zh) * 2018-01-31 2018-07-20 苏州锦佰安信息技术有限公司 一种用户身份认证方法和装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101478401A (zh) * 2009-01-21 2009-07-08 东北大学 一种基于击键特征识别的认证方法及系统
CN101674184A (zh) * 2009-10-19 2010-03-17 北京微通新成网络科技有限公司 一种基于用户击键特征的身份识别方法
CN104636103A (zh) * 2014-12-31 2015-05-20 华为技术有限公司 一种键盘数据传输方法及装置
CN108306884A (zh) * 2018-01-31 2018-07-20 苏州锦佰安信息技术有限公司 一种用户身份认证方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于词频奖惩算法的动态自由击键持续识别;张得旭 等;《网络新媒体技术》;20150331;第41-49页 *

Also Published As

Publication number Publication date
CN109492357A (zh) 2019-03-19

Similar Documents

Publication Publication Date Title
US11847199B2 (en) Remote usage of locally stored biometric authentication data
CN108229130B (zh) 一种验证方法及装置
US10305897B2 (en) Gesture-based signature authentication
CN104408341B (zh) 基于陀螺仪行为特征的智能手机用户身份认证方法
Martinez‐Diaz et al. Mobile signature verification: Feature robustness and performance comparison
Kambourakis et al. Introducing touchstroke: keystroke‐based authentication system for smartphones
WO2017071126A1 (zh) 触屏用户按键行为模式构建与分析系统及其身份识别方法
US8997191B1 (en) Gradual template generation
El-Abed et al. RHU Keystroke: A mobile-based benchmark for keystroke dynamics systems
WO2016049983A1 (zh) 用户键盘按键行为模式建模与分析系统及其身份识别方法
US9329699B2 (en) Method for subject classification using a pattern recognition input device
Lu et al. Safeguard: User reauthentication on smartphones via behavioral biometrics
CN101833619A (zh) 基于键鼠交叉认证的身份判定方法
CN109492357B (zh) 身份认证方法、设备及计算机存储介质
CN105159475B (zh) 一种字符输入方法及装置
Masood et al. Touch and you’re trapp (ck) ed: Quantifying the uniqueness of touch gestures for tracking
CN110990811A (zh) 一种身份认证方法及装置
CN105550628A (zh) 指纹录入方法及装置
Al-Obaidi et al. Statistical keystroke dynamics system on mobile devices for experimental data collection and user authentication
CN111859322A (zh) 身份验证方法、装置和电子设备
Rahman et al. Web user authentication using chosen word keystroke dynamics
Bond et al. Touch-based static authentication using a virtual grid
Tolosana et al. BioTouchPass Demo: Handwritten Passwords for Touchscreen Biometrics
US20110227831A1 (en) Determining Properties of Fingers via Keystroke Dynamics
Liu et al. Quantifying the Security of Recognition Passwords: Gestures and Signatures

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant