CN114528536A - 用于击键模式分析的方法、设备和程序产品 - Google Patents

用于击键模式分析的方法、设备和程序产品 Download PDF

Info

Publication number
CN114528536A
CN114528536A CN202011192818.XA CN202011192818A CN114528536A CN 114528536 A CN114528536 A CN 114528536A CN 202011192818 A CN202011192818 A CN 202011192818A CN 114528536 A CN114528536 A CN 114528536A
Authority
CN
China
Prior art keywords
character
sequence
characters
time
keystroke
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.)
Pending
Application number
CN202011192818.XA
Other languages
English (en)
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.)
EMC Corp
Original Assignee
EMC IP Holding Co LLC
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 EMC IP Holding Co LLC filed Critical EMC IP Holding Co LLC
Priority to CN202011192818.XA priority Critical patent/CN114528536A/zh
Priority to US17/106,551 priority patent/US11443556B2/en
Publication of CN114528536A publication Critical patent/CN114528536A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • G06F3/0233Character input methods
    • 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
    • G06F21/32User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • G06F18/24133Distances to prototypes
    • 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
    • G06F21/316User authentication by observing the pattern of computer usage, e.g. typical user behaviour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/126Character encoding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2218/00Aspects of pattern recognition specially adapted for signal processing
    • G06F2218/12Classification; Matching

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Security & Cryptography (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Software Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Computational Linguistics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Social Psychology (AREA)
  • Mathematical Physics (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Computing Systems (AREA)
  • Molecular Biology (AREA)
  • Psychiatry (AREA)
  • Multimedia (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Input From Keyboards Or The Like (AREA)

Abstract

本公开的实施例提供用于击键模式分析的方法、设备和程序产品。该方法包括:获取用户在电子设备上的击键信息,击键信息指示被顺序键入的字符序列和与字符序列中的相应字符的键入相关的时间信息;将字符序列中的相应字符分别编码成向量化表示,以获得向量化表示序列,不同字符被编码为不同的向量化表示;将与字符序列中的相应字符的键入相关的时间信息分别叠加到向量化表示序列中的相应向量化表示,以获得基于时间的向量化表示序列;以及通过从基于时间的向量化表示序列提取击键行为特征来验证用户的击键模式。融合有时间信息和字符信息的向量化表示序列有助于快速、有效的特征提取,提高击键模式分析的效率和准确率。

Description

用于击键模式分析的方法、设备和程序产品
技术领域
本公开的实施例涉及计算机技术领域,并且更具体地,涉及用于击键模式分析的方法、设备和计算机程序产品。
背景技术
在用户使用电子设备,诸如移动电话或笔记本电脑等时,需要检查用户是否是该设备的合法、有效用户。一般来说,认证过程包括三个阶段,即访问请求、信息提取和认证。传统认证系统基于用户名和密码来执行认证。通过将用户输入的用户名和密码等文本与数据库中预先存储的有效用户的对应信息相比较,来实现验证用户的身份。目前基于文本的身份验证系统仍然是主流技术。但事实证明,这是一种较为薄弱的安全机制,存在信息泄漏的高风险。此外,认证信息还可能丢失。例如,用户名和密码在一段时间后可能会被遗忘或被盗。
当前,生物特征认证系统是一个非常活跃的研究领域。术语“生物特征”是指基于个人独特的生理或行为特征。生物特征可以包括“生理生物特征”和“行为生物特征”。指纹、虹膜、面部等属于生理生物特性,对个体具有稳定性和同一性。语音音调、步态、击键等是典型的行为生物特征。相比生理生物特征,行为生物特征更加灵活。
生理特征识别可以认为一种模式识别。击键动力学主要研究击键模式识别技术,它监测用户的键盘输入,获取与用户敲击键盘相关的信息,分析用户的击键模式,并以此为依据来鉴别用户的身份。与指纹、虹膜等生理特征相比,基于击键行为特征的识别技术具有显著优势,因此正得到广泛研究和应用。
发明内容
本公开的实施例提供了一种用于击键模式分析的方案。
在本公开的第一方面,提供了用于击键模式分析的方法。该方法包括获取用户在电子设备上的击键信息,击键信息指示被顺序键入的字符序列和与字符序列中的相应字符的键入相关的时间信息;将字符序列中的相应字符分别编码成向量化表示,以获得向量化表示序列,不同字符被编码为不同的向量化表示;将与字符序列中的相应字符的键入相关的时间信息分别叠加到向量化表示序列中的相应向量化表示,以获得基于时间的向量化表示序列;以及通过从基于时间的向量化表示序列提取击键行为特征来验证用户的击键模式。
在本公开的第二方面,提供了一种电子设备。该电子设备包括至少一个处理器;以及存储有计算机程序指令的至少一个存储器,至少一个存储器和计算机程序指令被配置为,与至少一个处理器一起,使得电子设备执行动作。动作包括获取用户在电子设备上的击键信息,击键信息指示被顺序键入的字符序列和与字符序列中的相应字符的键入相关的时间信息;将字符序列中的相应字符分别编码成向量化表示,以获得向量化表示序列,不同字符被编码为不同的向量化表示;将与字符序列中的相应字符的键入相关的时间信息分别叠加到向量化表示序列中的相应向量化表示,以获得基于时间的向量化表示序列;以及通过从基于时间的向量化表示序列提取击键行为特征来验证用户的击键模式。
在本公开的第三方面,提供了一种计算机程序产品。该计算机程序产品被有形地存储在非易失性计算机可读介质上并且包括机器可执行指令,机器可执行指令在被执行时使设备获取用户在电子设备上的击键信息,击键信息指示被顺序键入的字符序列和与字符序列中的相应字符的键入相关的时间信息;将字符序列中的相应字符分别编码成向量化表示,以获得向量化表示序列,不同字符被编码为不同的向量化表示;将与字符序列中的相应字符的键入相关的时间信息分别叠加到向量化表示序列中的相应向量化表示,以获得基于时间的向量化表示序列;以及通过从基于时间的向量化表示序列提取击键行为特征来验证用户的击键模式。
提供发明内容部分是为了简化的形式来介绍对概念的选择,它们在下文的具体实施方式中将被进一步描述。发明内容部分无意标识本公开的关键特征或主要特征,也无意限制本公开的范围。
附图说明
通过结合附图对本公开示例性实施例进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显,其中,在本公开示例性实施例中,相同的参考标号通常代表相同部件。
图1示出了本公开实施例可以在其中被实施的环境的示意图;
图2示出了根据本公开的一些实施例的击键模式分析系统的框图;
图3示出了根据本公开的一些实施例的基于时间的向量化表示序列的示例;
图4示出了根据本公开的一些实施例的击键模式验证模型的示例架构的框图;
图5A和图5B示出了根据本公开的一些实施例的基于滑动窗口来划分多个序列的示例;
图6示出了根据本公开的一些实施例的用于训练击键模式验证模型的示例模型训练系统的框图;
图7示出了根据本公开的一些实施例的用于击键模式分析的方法的流程图;以及
图8示出了可以用来实施本公开的实施例的示例设备的框图。
具体实施方式
下面将参考附图中示出的若干示例实施例来描述本公开的原理。虽然附图中显示了本公开的优选实施例,但应当理解,描述这些实施例仅是为了使本领域技术人员能够更好地理解进而实现本公开,而并非以任何方式限制本公开的范围。
在本文中使用的术语“包括”及其变形表示开放性包括,即“包括但不限于”。除非特别申明,术语“或”表示“和/或”。术语“基于”表示“至少部分地基于”。术语“一个示例实施例”和“一个实施例”表示“至少一个示例实施例”。术语“另一实施例”表示“至少一个另外的实施例”。术语“第一”、“第二”等等可以指代不同的或相同的对象。下文还可能包括其他明确的和隐含的定义。
如本文中所使用的,术语“机器学习”指的是涉及高性能计算、机器学习和人工智能算法的处理。在本文中,术语“机器学习模型”也可以称为“学习模型”、“学习网络”、“网络模型”、或“模型”。“神经网络”或“神经网络模型”是一种深度学习模型。概括来说,机器学习模型能够接收输入数据并且基于输入数据执行预测和输出预测结果。
机器学习模型可以包括多个处理层,每个处理层具有多个处理单元。处理单元有时也称为卷积核。在卷积神经网络(CNN)的卷积层中,处理单元称为卷积核或卷积滤波器。每个处理层中的处理单元基于对应的参数对该处理层的输入执行相应变化。处理层的输出被提供作为下一处理层的输入。机器学习模型的第一个处理层的输入是机器学习模型的模型输入,最后一个处理层的输出是机器学习模型的模型输出。中间处理层的输入有时也称为机器学习模型提取的特征。机器学习模型的处理单元的全部参数的值形成机器学习模型的参数值集合。
机器学习主要可以划分为三个阶段,即训练阶段、测试阶段和应用阶段(也称为推理阶段)。在训练阶段,给定的机器学习模型可以使用大量的训练样本进行训练,不断迭代,直到机器学习模型能够从训练样本中获得一致的、与人类智慧所能够做出的推理类似的推理。机器学习模型通过训练,可以被认为能够从训练数据中学习从输入到输出之间的映射或关联关系。经过训练后,机器学习模型的参数值集合被确定。在测试阶段,可以利用测试样本对已训练的机器学习模型进行测试,以确定机器学习模型的性能。在应用阶段,机器学习模型可以被用于基于训练得到的参数值集合,对实际的输入数据进行处理,以给出对应的输出。
本公开的示例实施例主要涉及基于击键模式的验证。击键模式属于用户的行为生物特征。与面部、指纹、虹膜等生理特征相比具有显著优势。首先,用于验证的信息可从键盘输入获得,无需配备额外的仪器以及设备。而生理特征相关的信息往往需要专门的设备来采集,例如用于面部图像采集的相机、指纹扫描仪、虹膜扫描仪等。其次,用户的击键行为特征无需记忆且很难模仿和伪造,因此验证信息遗忘和泄露的风险较低。另外,在用户登录电子设备之后还可以持续捕获用户操作电子设备所产生的击键信息,因此可以基于击键行为特征来持续对用户的合法性进行监控。
在基于击键模式来执行认证时,主要关注于如何从采集到的击键信息提取特征以及如何执行基于分类的认证来确定用户的身份有效性。当前很多击键模式分析的方法在性能方面存在不足。例如,一些分类模型的构建要求人工特征定义,以从击键信息中提取对应特征。这样的分类模型的准确性依赖于专家知识,且效率低下。还提出了一些使用神经网络来自动提取特征的方法,但在特征表征方面还是遇到了困难,因为击键信息是一种时序性信息。因此,期望能够提出一种更完整且有效的方式来执行击键行为特征分析,以实现击键模式分析。
根据本公开的一些实施例,提出了一种用于击键模式分析的方案。在该方案中,将击键信息所指示的字符序列和各个字符的键入相关的时间信息共同编码到向量化表示序列中。该向量化表示序列具有时序性,其中各个向量化表示的顺序与字符序列中被键入字符的顺序相对应。因此所得到的向量化表示序列也称为基于时间的向量化表示序列。在执行击键模式分析时,从基于时间的向量化表示序列提取击键行为特征来验证用户的击键模式。融合有时间信息和字符信息的向量化表示序列有助于快速、有效的特征提取,提高击键模式分析的效率和准确率。此外,这样的向量化表示序列还特别有利于通过基于时间序列信息的机器学习模型来执行特征提取。
图1示出了本公开实施例可以在其中被实施的环境100的示意图。如图1所示,环境100包括击键模式分析系统110。击键模式分析系统110被配置为基于用户的击键信息102来分析用户的击键模式,进而可以验证用户的身份有效性并提供验证结果104。
如图1所示,击键模式分析系统110可以获得用户130-1在电子设备120-1上通过按键输入而产生的击键信息102,或者用户设备120-1在电子设备120-2上通过按键输入而产生的击键信息102。击键信息102与用户的键入相关,其是用户通过硬件键盘、虚拟键盘或者其他方式向电子设备键入信息而产生。在图1的示例中,电子设备120-1被示出为是配备有硬件键盘的台式计算机,用户130-1可以通过硬件键盘来实现键入。该示例还是示出了具有触摸显示屏的电子设备120-2,其中用户130-2可以通过按压显示屏上的虚拟键盘来实现键入。
为便于讨论,在下文中,用户130-1和130-2可以被统称为或单独称为用户130,用户130键入信息的电子设备120-1和120-2可以被统称为或单独称为电子设备120。
应当理解,图1仅给出了关于电子设备120以及信息的键入方式的一些示例。支持用户执行键入的电子设备120可以包括任何类型的移动终端、固定终端或便携式终端,包括移动手机、站点、单元、设备、多媒体计算机、多媒体平板、互联网节点、通信器、台式计算机、膝上型计算机、笔记本计算机、上网本计算机、平板计算机、个人通信系统(PCS)设备、个人导航设备、个人数字助理(PDA)、音频/视频播放器、数码相机/摄像机、定位设备、电视接收器、无线电广播接收器、电子书设备、游戏设备或者前述各项的任意组合,包括这些设备的配件和外设或者其任意组合。电子设备120还可以包括能够支持任意类型的针对用户的接口(诸如“可佩戴”电路等)。
击键模式分析系统110可以包括或被实现为具有计算能力的任何计算系统或服务器。在一些情况中,击键模式分析系统110可能是处理和/或存储资源有限的计算设备,例如是终端设备,诸如移动电话、膝上型计算机、台式计算机、平板计算机、物联网(IoT)的边缘计算设备、边缘网关等。在一些实施例中,击键模式分析系统110也可以是服务端设备,例如可以是服务器、大型机、云等。
虽然在图1中被示出为分离的系统,在一些实施例中,击键模式分析系统110可以被集成到各个电子设备120中,用于执行针对该电子设备的用户有效身份验证。
下文将参考附图来更详细地讨论本公开的示例实施例。
首先参考图2,其示出了根据本公开的一些实施例的击键模式分析系统的框图。
为便于讨论,参考图1来讨论击键模式分析,因此在图2中示出了图1的击键模式分析系统110,其被配置为基于用户130在电子设备120上的击键信息102来分析用户的击键模式,进而可以验证用户的身份有效性并提供验证结果104。在一些实施例中,击键模式分析系统110可以被配置为基于特定请求来执行击键模式分析。在一些实施例中,击键模式分析系统110可以持续或周期性地获取用户130在电子设备120上的击键信息,以持续执行击键模式验证。
如图2所示,击键模式分析系统110包括向量编码部分210和击键模式分析部分220。向量编码部分210被配置为将击键信息102编码为向量化表示,以用于后续分析。在本公开的示例实施例中,击键信息102包括字符信息和时间信息。字符信息指示被顺序键入的字符序列,该序列可以包括多个字符。时间信息指示字符序列中的相应字符的键入相关的时间信息。因此,针对字符序列中的每个字符,可以存在相应的时间信息。
击键信息102可以由电子设备120在用户130执行字符键入期间进行采集。在采集期间,电子设备120可以记录用户130在一段时间内顺序键入的字符,字符被键入的时间(例如,字符对应的按键被按下的时间),字符的键入被释放的时间(例如,字符对应的按键被释放的时间),等。以下表1示出了所采集的击键信息102的示例。
表1击键信息的示例
Figure BDA0002753214270000071
Figure BDA0002753214270000081
在表1中,“字符”列包括被按下的按键对应的字符;“状态”列指示字符的键入对应的状态,其中“1”指示字符被键入,且“0”指示字符的键入被释放;“时间戳”列指示字符被键入或其键入被释放的时间。注意,此处的时间戳以被处理为由数值表示。当然,任何其他时间戳表示方式也是可以的,只要能够区分不同时间即可。应当理解,图1仅给出了击键信息的示例,用户键入的字符和相关的时间信息还可以以其他方式来指示。
用于击键模式分析的时间信息可以包括与字符的键入相关的一种或多种类型的时间。在一些实施例中,针对每个字符,用于击键模式分析的时间信息可以包括相应字符被键入的时间,例如表1中每个字符在状态为“1”的情况下对应的时间戳。在一些实施例中,针对每个字符,时间信息可以包括相应字符被键入的时间,例如表1中每个字符在状态为“1”的情况下对应的时间戳。
在一些实施例中,备选地或附加地,针对每个字符,时间信息可以包括该字符的键入与相邻字符(例如时间序列中的前一个字符或后一个字符)的键入之间时间差。该时间差还可以基于两个字符被键入的时间和/或键入被释放的时间来确定。在一个示例中,该时间差可以被确定为该字符被键入的时间与相邻字符被键入的时间之间的时间差。在另一示例中,该时间差可以被确定为该字符的键入被释放的时间与相邻字符的键入被释放的时间之间的时间差。在另外的示例中,还可以基于两个字符被键入的时间和键入被释放的时间,以其他方式来确定时间差。
为了方便后续的处理,向量编码部分210被配置为将击键信息102编码为向量化表示,其中向量化表示包括一定数目的元素,以形成对应维度的向量用于指示击键信息102。在击键信息102中,字符的键入顺序和键入相关的时间对于击键模式的分析是非常重要的。因此,在将击键信息102编码为向量化表示时,期望能够保留这样的时序性。
根据本公开的实施例,向量编码部分210先将字符序列中的相应字符分别编码成对应的向量化表示。不同字符被编码为不同的向量化表示,以体现字符差异。字符序列中的多个字符对应的向量化表示组成向量化表示序列。
字符的向量化表示可以由适合用于自然语言处理的向量编码方法来确定。在一些实施例中,向量编码部分210可以通过独热编码的方式将字符编码为对应的向量化表示,该向量化表示也可以称为字符的独热编码表示或独热嵌入(embedding)表示。为便于理解,首先简单介绍独热编码。
独热编码,也可以称为一位有效编码,主要通过多个状态来指示不同对象,每个状态都独立于其他状态,并且在任意时候只有一位有效。在文本处理中,独热编码可以用于编码文本相关序列,其中不同文本单元可以指示不同对象,文本单元的出现与否可以指示对象的状态。在一个示例中,假设要编码以下两个句子:“Have a good day”和“Have a greatday”。可以将每个单词认为是一个文本单元。可以构建一个词库(被表示为V),其中V包括会出现的多个文本单元。在考虑上述两个句子的情况下,词库V=Have、a、good、great、day。词库中的每个单词均可以被编码为独热编码表示。独热编码表示的维度取决于词库中单词的总数目(例如,5)。在每个单词的独热编码表示中,该单词对应的元素被表示为1,其他单词对应的元素被表示为0。因此,上述五个单词的独热编码表示可以被确定为如下表2:
表2示例独热编码表示
Figure BDA0002753214270000091
Figure BDA0002753214270000101
从维度空间上看,这五个独热编码表示指示在五维空间中,每个单词占据一个维度并且与其他维度无关,即不会沿着其他维度投射。
在上述示例中,按单词来执行独热编码。在对击键信息的字符进行独热编码时,可以按字符来执行独热编码,独热编码表示的维度与可能被键入的字符的总数目相关。例如,假设电子设备的键盘上可被键入的字符是31个,那么每个字符的独热编码表示包括31维的向量化表示,其中与字符对应的元素取值为1,与其他字符对应的元素被取值为0。
在一些实施例中,除独热编码之外,还可以采用其他编码方式,以将不同字符编码为不同的向量化表示。例如,字符的向量化表示中的元素可以取值为除0和1之外的其他数值。
为了同时将击键信息102中的时间信息也编码到向量化表示中,在获得字符序列中各个字符对应的向量化表示序列后,向量编码部分210还可以将与字符序列中的相应字符的键入相关的时间信息分别叠加到向量化表示序列中的相应向量化表示。具体地,与每个字符的家键入相关的时间信息被叠加到该字符的向量化表示上。被叠加有时间信息的向量化表示在本文中被称为基于时间的向量化表示。对于字符序列,各个字符对应的基于时间的向量化表示组成基于时间的向量化表示序列。
在一些实施例中,由于时间信息可以由数值表示,例如表1的“时间戳”列示出的时间信息,向量编码部分210可以将表示每个字符对应的时间信息的数值叠加到该字符的向量化表示中的各个数值。例如,表示时间信息的数值可以与该字符的向量化表示相乘,以得到基于时间的向量化表示。
图3示出了基于时间的向量化表示序列的示例。在该示例中,字符序列300包括字符“a”310、字符“b”320,等等。字符310被编码为独热编码表示[1,0,0,...,0],字符320也被编码为独热编码表示[0,0,1,...,0]。独热编码表示的维度(即其中元素的总数目)可以被预先设置,例如被设置为可键入的字符的总数目(例如,0)。字符310、320的时间信息(在图中分别被表示为“T1”、“T2”)对应的数值表示可以被叠加到对应字符的独热编码表示,得到每个字符对应的基于时间的向量化表示。
由于同时编码了字符序列和时间信息,基于时间的向量化表示序列可以被用于后续的击键模式分析。参考回图2,击键模式分析部分220被配置为从基于时间的向量化表示序列提取用户130的击键行为特征,以用于验证用户的击键模式。
由于基于时间的向量化表示序列分别对应于用户130键入的字符序列,因此被认为是具有时序性。击键模式分析部分220可以利用适合从时序性信息提取特征的方法来执行特征提取。在一些实施例中,击键模式分析部分220可以利用已训练的击键模式验证模型221来执行特征提取和验证。击键模式验证模型221可以基于机器学习或深度学习技术被训练为能够从基于时间的向量化表示序列中提取有助于区分用户的击键模式的特征,并从所提取的特征来执行验证。
在一些实施例中,击键模式验证模型221可以包括基于长短时记忆(LSTM)单元的模型。LSTM单元被配置为执行特征提取。击键模式验证模型221还可以包括输出网络层,用于基于所提取的击键行为特征来执行用户的击键模式的验证。图4示出了基于LSTM单元的击键模式验证模型221的示例架构,其包括LSTM单元410和输出网络层420。
LSTM单元是一种时间循环神经网络。在图4的示例中,LSTM单元410通过利用多个乘法门415、416和418来强化流过被称为“记忆单元”的特殊单元的误差流。输入门411、412,用于顺序接收基于时间的向量化表示序列中的一个向量化表示(被称为“xt”)。LSTM单元410还包括遗忘门413、输出门412和相加单元417。输入门、遗忘门和输出门能够防止所记忆的内容被无关的输入和输出破坏,从而实现长期记忆存储的效果。LSTM单元410能够从一个序列中学习到长期相关性,因此基于LSTM单元的击键模式验证模型221可以从基于时间的向量化表示序列提取更有助于时间相关的击键行为特征用于击键模式分析。
应当理解,图4中仅示出了LSTM单元的一个示例结构。可能还存在其他变形的结构。在其他实施例中,除LSTM单元外或者作为备选,还可以利用其他适合处理序列信息的模型结构来配置击键模式验证模型221。
在一些实施例中,击键模式验证模型221可以包括单个LSTM单元和相应的输出网络层。简单的网络结构使击键模式验证模型221可以由计算能力有限的设备来运行,例如被运行在诸如移动终端等设备上,或者可以被频繁运行,例如在用户使用电子设备的过程中持续采集击键信息来执行验证。在一些实施例中,击键模式验证模型221也可以包括级联的多个LSTM单元。这取决于实际应用需要。
在一些实施例中,击键模式验证模型221的输出网络层420可以基于击键行为特征来确定执行键入的用户130是否是该电子设备120的有效(合法)用户。例如,击键模式验证模型221可以被训练为学习到电子设备120的有效用户的击键模式。击键模式验证模型221的训练将在下文更详细讨论。如果当前从击键信息102中提取的击键行为特征与电子设备120的有效用户的击键模式不匹配,输出网络层420可以输出相应的信息指示这样的不匹配结果。输出网络层420可以被配置为基于击键行为特征来执行二分类的验证,即将用户划分为有效用户和无效用户。输出网络层420也可以被配置为以其他方式提供验证结果,以指示用户130是否是有效用户。
在一些实施例中,对于击键信息102中所指示的被顺序键入的字符序列,还可以通过滑动窗口来划分成彼此之间部分重叠的多个字符组。这样,可以产生用于验证的多个基于时间的向量化表示子序列用于验证。在这样的实施例中,击键模式分析系统110还可以包括序列划分部分230,如图2所示。
序列划分部分230通过利用具有预定字符长度的滑动窗口,将字符序列划分成多个字符组。每个字符组字符序列中被顺序键入的多个字符。此外,通过滑动窗口设置,使得相邻字符组包括至少一个相同字符,从而实现字符组之间的部分重叠。
如图5A所示,可以设置具有3个字符长度的滑动窗口。对于包括五个字符的字符序列502,通过滑动窗口可以划分成三个字符组511、512、513。字符组511包括第1、2、3个字符,字符组512包括第2、3、4个字符,并且字符组513包括第3、4、5个字符。相邻字符的重叠长度可以由滑动窗口的长度和步长决定。在图5A的示例中,滑动窗口的步长为1。因此,相邻字符组包括2个相同字符。例如字符组511与字符组512均包括字符序列502中的第2和3个字符。
滑动窗口的步长和/或长度还可以被设置为其他值,以使相邻字符组之间具有更大的重叠。例如,在图5B的示例中,滑动窗口仍具有3个字符长度,但其步长为2。相应地,通过该滑动窗口,可以将字符序列502划分为两个字符组521和522,其中字符组521包括第1、2、3个字符,字符组522包括第3、4、5个字符。在这个示例中,字符组521和522包括一个相同字符。
在划分具有重叠的字符组的实施例中,向量编码部分210可以根据上述讨论的类似方式将每个字符及其对应的时间信息编码成基于时间的向量化表示。在执行击键模式分析时,击键模式分析部分220将由全部基于时间的向量化表示序列划分与多个字符组分别对应的多个向量化表示子序列。每个向量化表示子序列被用于执行一次对用户130的击键模式的验证。例如,每个向量化表示子序列可以被应用到击键模式验证模型221,作为该模型的输入。因此,击键模式分析部分220可以基于多个向量化表示子序列来确定多次验证的结果。
在一些实施例中,击键模式分析部分220还包括投票验证器223,用于基于多次验证的结果来确定最终的验证结果104,以指示用户130是否被验证为电子设备120的有效用户。在一些实施例中,投票验证器223可以确定在多次验证的结果中,用户130被验证为有效用户的次数和被验证为无效(不合法)用户的次数。如果用户130被验证为有效用户的次数更多,投票验证器223确定用户130是有效用户。反之,如果用户130被验证为无效用户的次数更多,投票验证器223确定用户130是无效用户。当然,投票验证器223还可以基于其他投票机制来确定验证结果104。
通过创建部分重叠的字符部分,可以对用户的连续键入进行多次击键模式的验证,从而可以避免用户在一小段时间内出现新的击键行为特征而导致的错误验证,进一步提高验证结果的可靠度和准确性。
如下文关于击键模式验证模型221的训练过程将讨论的,滑动窗口还能够有助于生成更多的训练数据用于模型训练,这没有获得关于有效用户的更多击键信息的情况下给出有用。
上文讨论了利用经训练的击键模式验证模型221来执行击键模式分析的实施例,其中已经讨论了击键模式验证模型221的相应能力,包括其输入和输出。下文将继续讨论如何训练或学习出具有这样的能力的击键模式验证模型221。图6示出了根据本公开的一些实施例的用于训练击键模式验证模型221的示例模型训练系统600的框图。在一些实施例中,击键模式验证模型221的训练可以针对电子设备120的有效用户进行训练,以学习该有效用户的击键模式。在一些实施例中,模型训练系统600被实现在电子设备120上。在其他实施例中,模型训练系统600也可以被实现在电子设备120的远程计算系统/服务器上。
击键模式验证模型221的训练数据包括样本击键信息602。样本击键信息602包括电子设备120的有效用户在电子设备上键入的击键信息,其作为训练的正样本。在一些实施例中,样本击键信息602还可以包括随机获得的其他用户的击键信息,作为训练的负样本。
从上文讨论可以理解,击键模式验证模型221的输入是从击键信息确定一系列基于时间的向量化表示,输出是验证结果。在训练击键模式验证模型221时,对于样本击键信息602,也可以按与上文讨论的类似的方式进行处理。这样,从样本击键信息602提取一个或多个基于时间的向量化表示序列,以用作击键模式验证模型221的输入进行训练。如图6所示,模型训练系统600包括向量编码部分610,用于执行对样本击键信息602中的各个字符和对应的时间信息的编码,以生成相应的基于时间的向量化表示。向量编码部分610的功能类似于以上讨论的向量编码部分210的功能。
在一些实施例中,为了提高训练样本量以使模型学习更有效,模型训练系统600还可以包括序列划分部分630,用于将样本击键信息602中的字符序列划分成彼此部分重叠的多个字符组。这样,针对每个字符组,向量编码部分610可以确定对应的基于时间的向量化表示子序列,用于作为击键模式验证模型221的输入。相比于划分彼此不重叠的字符组,重叠的字符组可以增加用于训练的输入的数量。
模型训练系统600还可以包括模型训练部分620,用于执行模型训练。模型训练部分620可以利用目前已知的或者将来开发的任何合适机器学习算法,例如随机梯度下降算法、后向传播算法等,来不断优化击键模式验证模型221的参数集,直到达到优化或收敛目标。在一些实施例中,模型训练部分620可以利用有监督训练技术来训练击键模式验证模型221。在有监督训练中,训练数据还可以包括击键模式验证模型221的每次输入的标签,其指示该输入对应的用户是否是有效用户。
图7示出了根据本公开的实施例的用于击键模式分析的过程700的流程图。过程700可以由图1或图2示出的击键模式分析系统110来实现。为便于讨论,从击键模式分析系统110的角度来描述过程700。
在框710,击键模式分析系统110获取用户在电子设备上的击键信息。击键信息指示被顺序键入的字符序列和与字符序列中的相应字符的键入相关的时间信息。
在一些实施例中,对于字符序列中的相应字符,与相应字符的键入相关的时间信息包括以下至少一项:相应字符被键入的时间,相应字符的键入被释放的时间,相应字符被键入的时间与相邻字符被键入的时间之间的时间差,以及相应字符的键入被释放的时间与相邻字符的键入被释放的时间之间的时间差。
在框720,击键模式分析系统110将字符序列中的相应字符分别编码成向量化表示,以获得向量化表示序列,不同字符被编码为不同的向量化表示。在一些实施例中,击键模式分析系统110可以通过独热编码来将字符序列中的相应字符分别编码成向量化表示。
在框730,击键模式分析系统110将与字符序列中的相应字符的键入相关的时间信息分别叠加到向量化表示序列中的相应向量化表示,以获得基于时间的向量化表示序列。
在一些实施例中,将与字符序列中的相应字符的键入相关的时间信息分别叠加到向量化表示序列中的相应向量化表示包括:对于多个字符中的每个字符,将表示与该字符的键入相关的时间信息的数值叠加到该字符的向量化表示中的数值。
在框740,击键模式分析系统110通过从基于时间的向量化表示序列提取击键行为特征来验证用户的击键模式。
在一些实施例中,击键模式分析系统110可以通过利用具有预定字符长度的滑动窗口,将字符序列划分成多个字符组。每个字符组包括字符序列中被顺序键入的多个字符,多个字符组中的两个相邻字符组包括字符序列中的至少一个相同字符。击键模式分析系统110还可以将基于时间的向量化表示序列划分与多个字符组分别对应的多个向量化表示子序列,其中每个向量化表示子序列包括从多个字符组所包括的字符确定的基于时间的向量化表示。击键模式分析系统110还可以基于多个向量化表示子序列分别执行针对用户的击键模式的多次验证。
在一些实施例中,过程700还可以包括:基于多次验证的结果来确定用户是否被验证为针对电子设备的有效用户。
在一些实施例中,击键模式分析系统110可以利用已训练的击键模式验证模型来提取从述多个基于时间的向量化表示提取击键行为特征,以验证用户的击键模式。在一些实施例中,击键模式验证模型包括长短时记忆(LSTM)单元和输出网络层。
图8示出了可以用来实施本公开的实施例的示例设备800的示意性框图。设备800可以用于实现图7的过程700。设备700可以被实现为或被包括在图1或图2示出的击键模式分析系统110,或者图6示出的模型训练系统600。
如图所示,设备800包括中央处理单元(CPU)801,其可以根据存储在只读存储器(ROM)802中的计算机程序指令或者从存储单元808加载到随机访问存储器(RAM)803中的计算机程序指令,来执行各种适当的动作和处理。在RAM 803中,还可存储设备800操作所需的各种程序和数据。CPU 801、ROM 802以及RAM 803通过总线804彼此相连。输入/输出(I/O)接口805也连接至总线804。
设备800中的多个部件连接至I/O接口805,包括:输入单元806,例如键盘、鼠标等;输出单元807,例如各种类型的显示器、扬声器等;存储单元808,例如磁盘、光盘等;以及通信单元809,例如网卡、调制解调器、无线通信收发机等。通信单元809允许设备800通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
处理单元801执行上文所描述的各个方法和处理,例如过程700。例如,在一些实施例中,过程700可被实现为计算机软件程序或计算机程序产品,其被有形地包含于机器可读介质,诸如非瞬态计算机可读介质,诸如存储单元808。在一些实施例中,计算机程序的部分或者全部可以经由ROM 802和/或通信单元809而被载入和/或安装到设备800上。当计算机程序加载到RAM 803并由CPU 801执行时,可以执行上文描述的过程700的一个或多个步骤。备选地,在其他实施例中,CPU 801可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行过程700。
本领域的技术人员应当理解,上述本公开的方法的各个步骤可以通过通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本公开不限制于任何特定的硬件和软件结合。
应当理解,尽管在上文的详细描述中提及了设备的若干装置或子装置,但是这种划分仅仅是示例性而非强制性的。实际上,根据本公开的实施例,上文描述的两个或更多装置的特征和功能可以在一个装置中具体化。反之,上文描述的一个装置的特征和功能可以进一步划分为由多个装置来具体化。
以上所述仅为本公开的可选实施例,并不用于限制本公开,对于本领域的技术人员来说,本公开可以有各种更改和变化。凡在本公开的精神和原则之内,所作的任何修改、等效替换、改进等,均应包含在本公开的保护范围之内。

Claims (20)

1.一种用于击键模式分析的方法,包括:
获取用户在电子设备上的击键信息,所述击键信息指示被顺序键入的字符序列和与所述字符序列中的相应字符的键入相关的时间信息;
将所述字符序列中的相应字符分别编码成向量化表示,以获得向量化表示序列,不同字符被编码为不同的向量化表示;
将与所述字符序列中的相应字符的键入相关的所述时间信息分别叠加到所述向量化表示序列中的相应向量化表示,以获得基于时间的向量化表示序列;以及
通过从所述基于时间的向量化表示序列提取击键行为特征来验证所述用户的击键模式。
2.根据权利要求1所述的方法,其中将所述字符序列中的相应字符分别编码成向量化表示包括:
通过独热编码来将所述字符序列中的相应字符分别编码成向量化表示。
3.根据权利要求1所述的方法,其中对于所述字符序列中的相应字符,与所述相应字符的键入相关的所述时间信息包括以下至少一项:
所述相应字符被键入的时间,
所述相应字符的键入被释放的时间,
所述相应字符被键入的时间与相邻字符被键入的时间之间的时间差,以及
所述相应字符的键入被释放的时间与相邻字符的键入被释放的时间之间的时间差。
4.根据权利要求1所述的方法,其中将与所述字符序列中的相应字符的键入相关的所述时间信息分别叠加到所述向量化表示序列中的相应向量化表示包括:
对于所述多个字符中的每个字符,将表示与该字符的键入相关的时间信息的数值叠加到该字符的向量化表示中的数值。
5.根据权利要求1所述的方法,其中通过从所述基于时间的向量化表示序列提取击键行为特征来验证所述用户的击键模式包括:
通过利用具有预定字符长度的滑动窗口,将所述字符序列划分成多个字符组,每个字符组包括所述字符序列中被顺序键入的多个字符,所述多个字符组中的两个相邻字符组包括所述字符序列中的至少一个相同字符;
将所述基于时间的向量化表示序列划分与所述多个字符组分别对应的多个向量化表示子序列,每个向量化表示子序列包括从所述多个字符组所包括的字符确定的基于时间的向量化表示;以及
基于所述多个向量化表示子序列分别执行针对所述用户的击键模式的多次验证。
6.根据权利要求5所述的方法,还包括:
基于所述多次验证的结果来确定所述用户是否被验证为针对所述电子设备的有效用户。
7.根据权利要求1所述的方法,其中通过从所述基于时间的向量化表示序列提取击键行为特征来验证所述用户的击键模式包括:
利用已训练的击键模式验证模型来提取从述多个基于时间的向量化表示提取击键行为特征,以验证所述用户的击键模式。
8.根据权利要求7所述的方法,其中所述击键模式验证模型包括长短时记忆(LSTM)单元和输出网络层。
9.一种电子设备,包括:
至少一个处理器;以及
存储有计算机程序指令的至少一个存储器,所述至少一个存储器和所述计算机程序指令被配置为,与所述至少一个处理器一起,使得所述电子设备执行动作,所述动作包括:
获取用户在电子设备上的击键信息,所述击键信息指示被顺序键入的字符序列和与所述字符序列中的相应字符的键入相关的时间信息;
将所述字符序列中的相应字符分别编码成向量化表示,以获得向量化表示序列,不同字符被编码为不同的向量化表示;
将与所述字符序列中的相应字符的键入相关的所述时间信息分别叠加到所述向量化表示序列中的相应向量化表示,以获得基于时间的向量化表示序列;以及
通过从所述基于时间的向量化表示序列提取击键行为特征来验证所述用户的击键模式。
10.根据权利要求9所述的设备,其中将所述字符序列中的相应字符分别编码成向量化表示包括:
通过独热编码来将所述字符序列中的相应字符分别编码成向量化表示。
11.根据权利要求9所述的设备,其中对于所述字符序列中的相应字符,与所述相应字符的键入相关的所述时间信息包括以下至少一项:
所述相应字符被键入的时间,
所述相应字符的键入被释放的时间,
所述相应字符被键入的时间与相邻字符被键入的时间之间的时间差,以及
所述相应字符的键入被释放的时间与相邻字符的键入被释放的时间之间的时间差。
12.根据权利要求9所述的设备,其中将与所述字符序列中的相应字符的键入相关的所述时间信息分别叠加到所述向量化表示序列中的相应向量化表示包括:
对于所述多个字符中的每个字符,将表示与该字符的键入相关的时间信息的数值叠加到该字符的向量化表示中的数值。
13.根据权利要求9所述的设备,其中通过从所述基于时间的向量化表示序列提取击键行为特征来验证所述用户的击键模式包括:
通过利用具有预定字符长度的滑动窗口,将所述字符序列划分成多个字符组,每个字符组包括所述字符序列中被顺序键入的多个字符,所述多个字符组中的两个相邻字符组包括所述字符序列中的至少一个相同字符;
将所述基于时间的向量化表示序列划分与所述多个字符组分别对应的多个向量化表示子序列,每个向量化表示子序列包括从所述多个字符组所包括的字符确定的基于时间的向量化表示;以及
基于所述多个向量化表示子序列分别执行针对所述用户的击键模式的多次验证。
14.根据权利要求13所述的设备,其中所述动作还包括:
基于所述多次验证的结果来确定所述用户是否被验证为针对所述电子设备的有效用户。
15.根据权利要求9所述的设备,其中通过从所述基于时间的向量化表示序列提取击键行为特征来验证所述用户的击键模式包括:
利用已训练的击键模式验证模型来提取从述多个基于时间的向量化表示提取击键行为特征,以验证所述用户的击键模式。
16.一种计算机程序产品,所述计算机程序产品被有形地存储在非易失性计算机可读介质上并且包括机器可执行指令,所述机器可执行指令在被执行时使设备:
获取用户在电子设备上的击键信息,所述击键信息指示被顺序键入的字符序列和与所述字符序列中的相应字符的键入相关的时间信息;
将所述字符序列中的相应字符分别编码成向量化表示,以获得向量化表示序列,不同字符被编码为不同的向量化表示;
将与所述字符序列中的相应字符的键入相关的所述时间信息分别叠加到所述向量化表示序列中的相应向量化表示,以获得基于时间的向量化表示序列;以及
通过从所述基于时间的向量化表示序列提取击键行为特征来验证所述用户的击键模式。
17.根据权利要求16所述的计算机程序产品,其中将所述字符序列中的相应字符分别编码成向量化表示包括:
通过独热编码来将所述字符序列中的相应字符分别编码成向量化表示。
18.根据权利要求16所述的计算机程序产品,其中对于所述字符序列中的相应字符,与所述相应字符的键入相关的所述时间信息包括以下至少一项:
所述相应字符被键入的时间,
所述相应字符的键入被释放的时间,
所述相应字符被键入的时间与相邻字符被键入的时间之间的时间差,以及
所述相应字符的键入被释放的时间与相邻字符的键入被释放的时间之间的时间差。
19.根据权利要求16所述的计算机程序产品,其中将与所述字符序列中的相应字符的键入相关的所述时间信息分别叠加到所述向量化表示序列中的相应向量化表示包括:
对于所述多个字符中的每个字符,将表示与该字符的键入相关的时间信息的数值叠加到该字符的向量化表示中的数值。
20.根据权利要求16所述的计算机程序产品,其中通过从所述基于时间的向量化表示序列提取击键行为特征来验证所述用户的击键模式包括:
通过利用具有预定字符长度的滑动窗口,将所述字符序列划分成多个字符组,每个字符组包括所述字符序列中被顺序键入的多个字符,所述多个字符组中的两个相邻字符组包括所述字符序列中的至少一个相同字符;
将所述基于时间的向量化表示序列划分与所述多个字符组分别对应的多个向量化表示子序列,每个向量化表示子序列包括从所述多个字符组所包括的字符确定的基于时间的向量化表示;
基于所述多个向量化表示子序列分别执行针对所述用户的击键模式的多次验证。
CN202011192818.XA 2020-10-30 2020-10-30 用于击键模式分析的方法、设备和程序产品 Pending CN114528536A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202011192818.XA CN114528536A (zh) 2020-10-30 2020-10-30 用于击键模式分析的方法、设备和程序产品
US17/106,551 US11443556B2 (en) 2020-10-30 2020-11-30 Method, device, and program product for keystroke pattern analysis

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011192818.XA CN114528536A (zh) 2020-10-30 2020-10-30 用于击键模式分析的方法、设备和程序产品

Publications (1)

Publication Number Publication Date
CN114528536A true CN114528536A (zh) 2022-05-24

Family

ID=81380119

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011192818.XA Pending CN114528536A (zh) 2020-10-30 2020-10-30 用于击键模式分析的方法、设备和程序产品

Country Status (2)

Country Link
US (1) US11443556B2 (zh)
CN (1) CN114528536A (zh)

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4621334A (en) * 1983-08-26 1986-11-04 Electronic Signature Lock Corporation Personal identification apparatus
US4805222A (en) * 1985-12-23 1989-02-14 International Bioaccess Systems Corporation Method and apparatus for verifying an individual's identity
US5557686A (en) * 1993-01-13 1996-09-17 University Of Alabama Method and apparatus for verification of a computer user's identification, based on keystroke characteristics
KR19990009965A (ko) * 1997-07-14 1999-02-05 정명식 타자 패턴을 이용한 사용자 인증 방법
US7260837B2 (en) * 2000-03-22 2007-08-21 Comscore Networks, Inc. Systems and methods for user identification, user demographic reporting and collecting usage data usage biometrics
US7509686B2 (en) * 2003-02-03 2009-03-24 Checco John C Method for providing computer-based authentication utilizing biometrics
US7526412B2 (en) * 2006-03-31 2009-04-28 Biopassword, Inc. Method and apparatus for multi-distant weighted scoring system
KR100923179B1 (ko) * 2007-08-16 2009-10-22 재단법인서울대학교산학협력재단 행동패턴 분석에 기초한 계정 공유 탐지 방법 및 시스템
US8583574B2 (en) * 2008-08-06 2013-11-12 Delfigo Corporation Method of and apparatus for combining artificial intelligence (AI) concepts with event-driven security architectures and ideas
US8533486B1 (en) * 2009-02-03 2013-09-10 Scout Analytics, Inc. Incorporating false reject data into a template for user authentication

Also Published As

Publication number Publication date
US11443556B2 (en) 2022-09-13
US20220138457A1 (en) 2022-05-05

Similar Documents

Publication Publication Date Title
KR102608470B1 (ko) 데이터 인식 장치 및 방법과 트레이닝 장치 및 방법
Ali et al. Keystroke biometric systems for user authentication
Krishnamoorthy et al. Identification of user behavioral biometrics for authentication using keystroke dynamics and machine learning
Saevanee et al. Continuous user authentication using multi-modal biometrics
Lu et al. Continuous authentication by free-text keystroke based on CNN and RNN
US20130343616A1 (en) Biometrics based methods and systems for user authentication
Campisi et al. User authentication using keystroke dynamics for cellular phones
Acien et al. Multilock: Mobile active authentication based on multiple biometric and behavioral patterns
US11062120B2 (en) High speed reference point independent database filtering for fingerprint identification
Amin et al. Biometric and traditional mobile authentication techniques: Overviews and open issues
Saevanee et al. Text-based active authentication for mobile devices
EP4120105A1 (en) Identity authentication method, and method and device for training identity authentication model
Sheng et al. Template-free biometric-key generation by means of fuzzy genetic clustering
CN116389114B (zh) 一种静态与动态身份一致性验证方法及系统
Stylios et al. BioPrivacy: Development of a keystroke dynamics continuous authentication system
Zhang et al. Low-rank and joint sparse representations for multi-modal recognition
Czyżewski et al. Analysis of results of large‐scale multimodal biometric identity verification experiment
Stragapede et al. IJCB 2022 mobile behavioral biometrics competition (MobileB2C)
Stylios et al. BioPrivacy: a behavioral biometrics continuous authentication system based on keystroke dynamics and touch gestures
Stragapede et al. Mobile passive authentication through touchscreen and background sensor data
KR100778891B1 (ko) 생체정보 인증시의 매칭스코어 임계값 동적 변경 방법 및장치
Neha et al. Biometric re-authentication: An approach towards achieving transparency in user authentication
Sadhya et al. Construction of a Bayesian decision theory‐based secure multimodal fusion framework for soft biometric traits
Chaitanya et al. Verification of pattern unlock and gait behavioural authentication through a machine learning approach
Bond et al. Touch-based static authentication using a virtual grid

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