CN113496015A - 一种身份认证方法、装置和计算机可读存储介质 - Google Patents
一种身份认证方法、装置和计算机可读存储介质 Download PDFInfo
- Publication number
- CN113496015A CN113496015A CN202010248862.1A CN202010248862A CN113496015A CN 113496015 A CN113496015 A CN 113496015A CN 202010248862 A CN202010248862 A CN 202010248862A CN 113496015 A CN113496015 A CN 113496015A
- Authority
- CN
- China
- Prior art keywords
- user
- operation data
- training
- mouse
- keyboard
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/45—Structures or tools for the administration of authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明实施例提供了一种身份认证方法、装置和计算机可读存储介质,所述方法包括:记录用户使用应用时产生的鼠标操作数据和键盘操作数据;基于所述鼠标操作数据、所述键盘操作数据、预训练模型库以及迁移学习,进行用户的身份认证;当认证得到的分类结果和可信度概率不满足预设条件时,表明认证失败。
Description
技术领域
本发明涉及移动通信技术领域,尤其涉及一种身份认证方法、装置和计算机可读存储介质。
背景技术
目前,互联网应用广泛使用的身份认证方式主要分为两类:一类是基于用户名+密码的身份认证方式;另一类是基于用户名+密码+用户携带设备(如U盾/动态令牌)的身份认证方式。第一类身份认证方式为目前最广泛使用的身份认证方式,因弱密码比较多,存在安全风险;对于第二类身份认证方式,虽然安全性相对第一类较高,但使用成本较高,同时给用户带来较多不便,且适用的认证场景有限。
发明内容
有鉴于此,本发明实施例期望提供一种身份认证方法、装置和计算机可读存储介质。
为达到上述目的,本发明实施例的技术方案是这样实现的:
本发明实施例提供了一种身份认证方法,该方法包括:
记录用户使用应用时产生的鼠标操作数据和键盘操作数据;
基于所述鼠标操作数据、所述键盘操作数据、预训练模型库以及迁移学习,进行用户的身份认证;
当认证得到的分类结果和可信度概率不满足预设条件时,表明认证失败。
可选的,所述记录用户使用应用时产生的鼠标操作数据和键盘操作数据之前,该方法还包括:
确定用户输入的用户名和密码均认证成功,授权该用户使用相应应用。
可选的,所述确定用户输入的用户名和密码均认证成功之前,该方法还包括:
记录用户注册所述应用时的鼠标操作数据和键盘操作数据;
基于用户注册时的鼠标操作数据和键盘操作数据对所述预训练模型库中的模型进行迁移学习,生成针对该用户的分类模型。
其中,所述基于用户注册时的鼠标操作数据和键盘操作数据对所述预训练模型库中的模型进行迁移学习,生成针对该用户的分类模型,包括:
将开源用户行为特征数据、自建用户行为特征数据和定制化行为特征数据输入卷积神经网络CNN进行训练,得到用于迁移学习的预训练通用模型;
采集用户注册时的鼠标操作数据和键盘操作数据,并输入到所述预训练通用模型进行迁移学习,得到针对该用户的分类模型;其中,
所述分类模型的训练正样本为用户注册时采集的鼠标操作数据和键盘操作数据,负样本为等量的其他用户的鼠标操作数据和键盘操作数据。
其中,所述基于所述鼠标操作数据、所述键盘操作数据、预训练模型库以及迁移学习,进行用户的身份认证,包括:
将用户使用应用时的鼠标操作数据和键盘操作数据输入所述分类模型进行用户行为检测分类;
确定用户为注册用户或非注册用户的分类结果,并输出与所述分类结果对应的可信度概率;
利用已分类的鼠标操作数据和键盘操作数据作为训练数据继续对所述预训练模型库中的模型继续进行迭代训练,完善针对该用户的分类模型;
利用所述分类结果和可信度概率进行用户的身份认证。
其中,所述利用所述分类结果和可信度概率进行用户的身份认证,包括:
基于分类结果确定用户为注册用户,且可信度概率大于等于预设条件时,则认定当前使用应用的用户为已授权注册的用户,身份认证成功;
基于分类结果确定用户为注册用户,但可信度概率小于预设条件时,则认定当前使用应用的用户为非法用户,身份认证失败;
基于分类结果确定用户为非法用户,则身份认证失败。
其中,所述可信度概率为:
用户使用所述应用时的鼠标和键盘操作行为被分类到该用户注册所述应用时的鼠标和键盘操作行为的概率。
本发明实施例还提供了一种身份认证装置,该装置包括:
数据记录模块,用于记录用户使用应用时产生的鼠标操作数据和键盘操作数据;
第一认证模块,用于基于所述鼠标操作数据、所述键盘操作数据、预训练模型库以及迁移学习,进行用户的身份认证;当认证得到的分类结果和可信度概率不满足预设条件时,表明认证失败。
本发明实施例还提供了一种身份认证装置,该装置包括:处理器和用于存储能够在处理器上运行的计算机程序的存储器,
其中,所述处理器用于运行所述计算机程序时,执行上述方法的步骤。
本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述方法的步骤。
本发明实施例提供的身份认证方法、装置和计算机可读存储介质,记录用户使用应用时产生的鼠标操作数据和键盘操作数据;基于所述鼠标操作数据、所述键盘操作数据、预训练模型库以及迁移学习,进行用户的身份认证;当认证得到的分类结果和可信度概率不满足预设条件时,表明认证失败。本发明实施例将迁移学习应用于用户身份认证中,通过采集用户的鼠标和键盘操作数据,保证用户不需要进行额外的输入或者操作就能实现对用户身份的第二次验证,既不影响用户的使用体验,又可有效保证在线系统只使用较少的用户行为样本就能获得较高的认证准确率,安全性更高。
此外,本发明实施例还基于用户注册时的鼠标和键盘操作数据对所述预训练模型库中的模型进行迁移学习,生成针对该用户的分类模型,使得分类模型更准确,认证效果更高。
附图说明
图1为本发明实施例所述身份认证方法流程示意图;
图2为本发明实施例所述身份认证装置结构示意图一;
图3为本发明实施例所述身份认证装置结构示意图二;
图4为本发明实施例所述身份认证装置结构示意图三;
图5为本发明实施例所述基于迁移学习的模块化二次认证方法示意图;
图6a为传统机器学习过程示意图;
图6b为迁移学习过程的示意图;
图7为本发明实施例所述基于迁移学习的模块化二次认证实现流程图。
具体实施方式
下面结合附图和实施例对本发明进行描述。
本发明实施例提供了一种身份认证方法,如图1所示,该方法包括:
步骤101:记录用户使用应用时产生的鼠标操作数据和键盘操作数据;
步骤102:基于所述鼠标操作数据、所述键盘操作数据、预训练模型库以及迁移学习,进行用户的身份认证;
步骤103:当认证得到的分类结果和可信度概率不满足预设条件时,表明认证失败。
本发明实施例将迁移学习应用于用户身份认证中,通过采集用户的鼠标和键盘操作数据,保证用户不需要进行额外的输入或者操作就能实现对用户身份的第二次验证,既不影响用户的使用体验,又可有效保证在线系统只使用较少的用户行为样本就能获得较高的认证准确率,安全性更高。
一个实施例中,所述记录用户使用应用时产生的鼠标操作数据和键盘操作数据之前,该方法还包括:
确定用户输入的用户名和密码均认证成功,授权该用户使用相应应用。
一个实施例中,所述确定用户输入的用户名和密码均认证成功之前,该方法还包括:
记录用户注册所述应用时的鼠标操作数据和键盘操作数据;
基于用户注册时的鼠标操作数据和键盘操作数据对所述预训练模型库中的模型进行迁移学习,生成针对该用户的分类模型。
本发明实施例中,所述基于用户注册时的鼠标操作数据和键盘操作数据对所述预训练模型库中的模型进行迁移学习,生成针对该用户的分类模型,包括:
将开源用户行为特征数据、自建用户行为特征数据和定制化行为特征数据输入卷积神经网络CNN进行训练,得到用于迁移学习的预训练通用模型;
采集用户注册时的鼠标操作数据和键盘操作数据,并输入到所述预训练通用模型进行迁移学习,得到针对该用户的分类模型;其中,
所述分类模型的训练正样本为用户注册时采集的鼠标操作数据和键盘操作数据,负样本为等量的其他用户的鼠标操作数据和键盘操作数据。
本发明实施例中,所述基于所述鼠标操作数据、所述键盘操作数据、预训练模型库以及迁移学习,进行用户的身份认证,包括:
将用户使用应用时的鼠标操作数据和键盘操作数据输入所述分类模型进行用户行为检测分类;
确定用户为注册用户或非注册用户的分类结果,并输出与所述分类结果对应的可信度概率;
利用已分类的鼠标操作数据和键盘操作数据作为训练数据继续对所述预训练模型库中的模型继续进行迭代训练,完善针对该用户的分类模型;
利用所述分类结果和可信度概率进行用户的身份认证。
本发明实施例中,所述利用所述分类结果和可信度概率进行用户的身份认证,包括:
基于分类结果确定用户为注册用户,且可信度概率大于等于预设条件时,则认定当前使用应用的用户为已授权注册的用户,身份认证成功;
基于分类结果确定用户为注册用户,但可信度概率小于预设条件时,则认定当前使用应用的用户为非法用户,身份认证失败;
基于分类结果确定用户为非法用户,则身份认证失败。
本发明实施例中,所述可信度概率为:
用户使用所述应用时的鼠标和键盘操作行为被分类到该用户注册所述应用时的鼠标和键盘操作行为的概率。
为了实现上述方法实施例,本发明实施例还提供了一种身份认证装置,如图2所示,该装置包括:
数据记录模块201,用于记录用户使用应用时产生的鼠标操作数据和键盘操作数据;
第一认证模块202,用于基于所述鼠标操作数据、所述键盘操作数据、预训练模型库以及迁移学习,进行用户的身份认证;当认证得到的分类结果和可信度概率不满足预设条件时,表明认证失败。
一个实施例中,如图3所示,该装置还包括:第二认证模块203;
所述数据记录模块201记录用户使用应用时产生的鼠标操作数据和键盘操作数据之前,
所述第二认证模块203,用于确定用户输入的用户名和密码均认证成功,授权该用户使用相应应用。
一个实施例中,如图4所示,该装置还包括:迁移学习模块204,
所述第二认证模块203确定用户输入的用户名和密码均认证成功之前,
所述数据记录模块201,还用于记录用户注册所述应用时的鼠标操作数据和键盘操作数据;
所述迁移学习模块204,用于基于用户注册时的鼠标操作数据和键盘操作数据对所述预训练模型库中的模型进行迁移学习,生成针对该用户的分类模型。
一个实施例中,所述迁移学习模块204基于用户注册时的鼠标操作数据和键盘操作数据对所述预训练模型库中的模型进行迁移学习,生成针对该用户的分类模型,包括:
将开源用户行为特征数据、自建用户行为特征数据和定制化行为特征数据输入卷积神经网络CNN进行训练,得到用于迁移学习的预训练通用模型;
采集用户注册时的鼠标操作数据和键盘操作数据,并输入到所述预训练通用模型进行迁移学习,得到针对该用户的分类模型;其中,
所述分类模型的训练正样本为用户注册时采集的鼠标操作数据和键盘操作数据,负样本为等量的其他用户的鼠标操作数据和键盘操作数据。
一个实施例中,所述第一认证模块202基于所述鼠标操作数据、所述键盘操作数据、预训练模型库以及迁移学习,进行用户的身份认证,包括:
将用户使用应用时的鼠标操作数据和键盘操作数据输入所述分类模型进行用户行为检测分类;
确定用户为注册用户或非注册用户的分类结果,并输出与所述分类结果对应的可信度概率;
利用已分类的鼠标操作数据和键盘操作数据作为训练数据继续对所述预训练模型库中的模型继续进行迭代训练,完善针对该用户的分类模型;
利用所述分类结果和可信度概率进行用户的身份认证。
一个实施例中,所述第一认证模块202利用所述分类结果和可信度概率进行用户的身份认证,包括:
基于分类结果确定用户为注册用户,且可信度概率大于等于预设条件时,则认定当前使用应用的用户为已授权注册的用户,身份认证成功;
基于分类结果确定用户为注册用户,但可信度概率小于预设条件时,则认定当前使用应用的用户为非法用户,身份认证失败;
基于分类结果确定用户为非法用户,则身份认证失败。
本发明实施例中,所述可信度概率为:
用户使用所述应用时的鼠标和键盘操作行为被分类到该用户注册所述应用时的鼠标和键盘操作行为的概率。
本发明实施例中,
鼠标操作行为包括但不限于以下类型:
单击操作;
双击操作;
移动操作;
拖放操作;
键盘操作行为包括但不限于以下类型:
键盘单击事件;
连续击键事件。
本发明实施例还提供了一种身份认证装置,该装置包括:处理器和用于存储能够在处理器上运行的计算机程序的存储器,
其中,所述处理器用于运行所述计算机程序时,执行:
记录用户使用应用时产生的鼠标操作数据和键盘操作数据;
基于所述鼠标操作数据、所述键盘操作数据、预训练模型库以及迁移学习,进行用户的身份认证;
当认证得到的分类结果和可信度概率不满足预设条件时,表明认证失败。
所述记录用户使用应用时产生的鼠标操作数据和键盘操作数据之前,所述处理器还用于运行所述计算机程序时,执行:
确定用户输入的用户名和密码均认证成功,授权该用户使用相应应用。
所述确定用户输入的用户名和密码均认证成功之前,所述处理器还用于运行所述计算机程序时,执行:
记录用户注册所述应用时的鼠标操作数据和键盘操作数据;
基于用户注册时的鼠标操作数据和键盘操作数据对所述预训练模型库中的模型进行迁移学习,生成针对该用户的分类模型。
所述基于用户注册时的鼠标操作数据和键盘操作数据对所述预训练模型库中的模型进行迁移学习,生成针对该用户的分类模型时,所述处理器还用于运行所述计算机程序时,执行:
将开源用户行为特征数据、自建用户行为特征数据和定制化行为特征数据输入卷积神经网络CNN进行训练,得到用于迁移学习的预训练通用模型;
采集用户注册时的鼠标操作数据和键盘操作数据,并输入到所述预训练通用模型进行迁移学习,得到针对该用户的分类模型;其中,
所述分类模型的训练正样本为用户注册时采集的鼠标操作数据和键盘操作数据,负样本为等量的其他用户的鼠标操作数据和键盘操作数据。
所述基于所述鼠标操作数据、所述键盘操作数据、预训练模型库以及迁移学习,进行用户的身份认证时,所述处理器还用于运行所述计算机程序时,执行:
将用户使用应用时的鼠标操作数据和键盘操作数据输入所述分类模型进行用户行为检测分类;
确定用户为注册用户或非注册用户的分类结果,并输出与所述分类结果对应的可信度概率;
利用已分类的鼠标操作数据和键盘操作数据作为训练数据继续对所述预训练模型库中的模型继续进行迭代训练,完善针对该用户的分类模型;
利用所述分类结果和可信度概率进行用户的身份认证。
所述利用所述分类结果和可信度概率进行用户的身份认证时,所述处理器还用于运行所述计算机程序时,执行:
基于分类结果确定用户为注册用户,且可信度概率大于等于预设条件时,则认定当前使用应用的用户为已授权注册的用户,身份认证成功;
基于分类结果确定用户为注册用户,但可信度概率小于预设条件时,则认定当前使用应用的用户为非法用户,身份认证失败;
基于分类结果确定用户为非法用户,则身份认证失败。
其中,所述可信度概率为:用户使用所述应用时的鼠标和键盘操作行为被分类到该用户注册所述应用时的鼠标和键盘操作行为的概率。
需要说明的是:上述实施例提供的装置在进行身份认证时,仅以上述各程序模块的划分进行举例说明,实际应用中,可以根据需要而将上述处理分配由不同的程序模块完成,即将设备的内部结构划分成不同的程序模块,以完成以上描述的全部或者部分处理。另外,上述实施例提供的装置与相应方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
在示例性实施例中,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质可以是FRAM、ROM、PROM、EPROM、EEPROM、Flash Memory、磁表面存储器、光盘、或CD-ROM等存储器;也可以是包括上述存储器之一或任意组合的各种设备,如移动电话、计算机、平板设备、个人数字助理等。
本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时,执行:
记录用户使用应用时产生的鼠标操作数据和键盘操作数据;
基于所述鼠标操作数据、所述键盘操作数据、预训练模型库以及迁移学习,进行用户的身份认证;
当认证得到的分类结果和可信度概率不满足预设条件时,表明认证失败。
所述记录用户使用应用时产生的鼠标操作数据和键盘操作数据之前,所述计算机程序被处理器运行时,还执行:
确定用户输入的用户名和密码均认证成功,授权该用户使用相应应用。
所述确定用户输入的用户名和密码均认证成功之前,所述计算机程序被处理器运行时,还执行:
记录用户注册所述应用时的鼠标操作数据和键盘操作数据;
基于用户注册时的鼠标操作数据和键盘操作数据对所述预训练模型库中的模型进行迁移学习,生成针对该用户的分类模型。
所述基于用户注册时的鼠标操作数据和键盘操作数据对所述预训练模型库中的模型进行迁移学习,生成针对该用户的分类模型时,所述计算机程序被处理器运行时,还执行:
将开源用户行为特征数据、自建用户行为特征数据和定制化行为特征数据输入卷积神经网络CNN进行训练,得到用于迁移学习的预训练通用模型;
采集用户注册时的鼠标操作数据和键盘操作数据,并输入到所述预训练通用模型进行迁移学习,得到针对该用户的分类模型;其中,
所述分类模型的训练正样本为用户注册时采集的鼠标操作数据和键盘操作数据,负样本为等量的其他用户的鼠标操作数据和键盘操作数据。
所述基于所述鼠标操作数据、所述键盘操作数据、预训练模型库以及迁移学习,进行用户的身份认证时,所述计算机程序被处理器运行时,还执行:
将用户使用应用时的鼠标操作数据和键盘操作数据输入所述分类模型进行用户行为检测分类;
确定用户为注册用户或非注册用户的分类结果,并输出与所述分类结果对应的可信度概率;
利用已分类的鼠标操作数据和键盘操作数据作为训练数据继续对所述预训练模型库中的模型继续进行迭代训练,完善针对该用户的分类模型;
利用所述分类结果和可信度概率进行用户的身份认证。
所述利用所述分类结果和可信度概率进行用户的身份认证时,所述计算机程序被处理器运行时,还执行:
基于分类结果确定用户为注册用户,且可信度概率大于等于预设条件时,则认定当前使用应用的用户为已授权注册的用户,身份认证成功;
基于分类结果确定用户为注册用户,但可信度概率小于预设条件时,则认定当前使用应用的用户为非法用户,身份认证失败;
基于分类结果确定用户为非法用户,则身份认证失败。
其中,所述可信度概率为:
用户使用所述应用时的鼠标和键盘操作行为被分类到该用户注册所述应用时的鼠标和键盘操作行为的概率。
下面结合场景实施例对本发明进行描述。
为了在用户无感知的情况下,对用户身份进行安全认证,本发明实施例采用基于迁移学习的模块化二次认证方法。模块化使得本实施例方法能够与绝大部分相关认证方式进行集成;基于迁移学习的二次认证使得本实施例方法能够在用户行为训练样本少的情况下保证较高的准确率,且基于行为的认证方式对于用户几乎是无感的。
为实现在用户无感知的情况下,对用户身份认证过程进行加固,本发明实施例提供一种二次验证的方式,能够方便的与相关的认证方式进行集成,同时,通过采集用户的鼠标和键盘操作数据,保证用户不需要进行额外的输入或者操作就能实现对用户身份的第二次验证。因此,本发明实施例设计的验证方式可封装成一个独立的功能模块以方便集成于相关的大部分认证方式中;同时,针对用户的操作行为习惯,研究基于迁移学习的认证监测模型,这种方式通过用户的正常鼠标和键盘操作行为进行建模,并实时对用户的后续使用进行监测,若发现用户的行为异常则进行告警,交由后续风险控制模块进行处理。使用迁移学习是为了保证在只有少量用户鼠标和键盘操作数据的情况下,仍能够训练出保证准确率的模型。
如图5所示,本发明实施例中的基于迁移学习的模块化二次认证模块(简称为认证模块),对外是一个相对独立的模块,该模块接入的输入为针对业务的用户行为预训练数据和线上业务用户实际行为数据(用户鼠标行为数据和用户键盘行为数据);输出则是针对异常用户行为的风险值信息,输出的风险值信息交由互联网应用业务系统进行相应的风险处置,认证模块只提供某用户的分类结果及其可信度概率等辅助判断依据。
具体来说,目前用户在使用互联网应用时,会进行大量的鼠标和键盘操作,由于个人使用习惯不同,使用鼠标和键盘的力度、频率和熟练程度也会不同,每个人都有独一无二的鼠标特征和键盘特征。因此,通过分析用户的这些特征就可以识别其身份。
在模型训练与检测阶段使用深度学习中的迁移学习方式,该方式可使得在只记录用户注册过程或某次使用时的少量操作行为,就能训练出具备准确分类能力的模型。具体流程如下:
首先,建立用户行为预训练模型库,该模型的预训练数据主要来源于开源用户行为特征数据(可从网络中获取的公开数据)、自建用户行为特征数据(可从对应应用的系统或服务器侧获取)和定制化行为特征数据(可从对应应用的系统或服务器侧获取),利用该部分的离线预训练,充分提取用户的通用操作特征知识,形成作为迁移原模型的通用模型;
其次,在线采集用户鼠标和键盘行为数据,并对其进行预处理,预处理后的数据一部分作为训练数据,对预训练模型库中的两类模型进行迁移学习,并生成新的针对该用户的分类模型;另一部分作为检测数据,进行行为检测分类,输出检测分类结果及其可信度概率,通过其概率高低确定异常行为风险值高低并输出给互联网应用业务系统风险控制模块(图5未显示)进行风险评估与告警。
在迁移学习中影响最终结果的因素主要有两点,一是预训练模型的训练,二是如何对模型进行迁移,具体说明如下:
一、预训练模型训练
预训练模型的训练主要介绍鼠标和键盘行为数据的描述和特征选择。
鼠标操作行为主要为以下四类:
1、单击操作:单键操作,鼠标按钮按下和释放之间的时间间隔;
2、双击操作:鼠标左键第一次按下到第二次按键释放之间的时间间隔,当这个时间小于1000ms时,连续的两次点击被视为双击;
3、移动操作:由移动的事件序列组成;
4、拖放操作:由单击事件、移动序列和单击事件组成。
实际应用时,可根据以上鼠标操作的行为,确定鼠标操作行为数据向量结构,如表1所示:
序列(Seq):事件发生的顺序;
事件类型(Evt.type):总为‘M’,表示鼠标事件;
动作类型(Action):移动事件(M)、滑轮滚动事件(W)、按下事件(D)和释放事件(U);
值字段(value):x-y表示指针坐标,δ表示鼠标滚轮滚动多少的相应增量,正值表示向上滚动,负值表示向下滚动;
时间戳(Time):事件发生的时间,以毫秒为单位;
关系属性(Relation):之前发生事件的相应序列号。
表1
键盘操作行为主要为以下两类:
1、键盘单击事件,按住某个键的时间,按键被按下直到弹起之间的时间间隔;
2、连续击键事件:
一系列击键行为完成所需要的时间间隔;
输入的连续的字符序列中某个按键被按下与紧接着的下一个按键被按下之间的时间间隔;
输入的连续字符序列中某个按键被释放到紧接着下一个按键被释放之间的时间间隔;
输入的连续字符序列中某个按键弹起到紧接着的下一个按键被按下之间的时间间隔。
实际应用时,可根据以上键盘的行为,确定键盘操作行为数据向量结构,如表2所示:
序列(Seq):事件的发生顺序;
事件类型(Evt.type):总为‘K’,表示击键相关事件。
击键事件有两种动作类型(Action):按键(D)和释放键(U);
值字段(Value):按下或者释放键的键值;
时间戳(Time):事件发生的时间,以毫秒微为单位;
关系属性(Relation):先前发生的事件的相应序列号。
表2
二、迁移学习
迁移学习是利用数据、任务、或模型之间的相似性,将在旧领域学习过的模型,应用于新领域的一种学习过程。传统的机器学习,如图6a所示,需要足够的数据标注来训练模型,并且训练和测试数据需要服从相同的分布;而迁移学习可以在少量数据标注的情况下,将利用大数据训练好的模型迁移到小数据上,而且训练和测试数据不受限于相同的分布,如图6b所示。在本实施例方法中,由于用户在互联网应用进行操作时,鼠标和键盘的操作数据的数量有限,无法利用传统的机器学习方法训练得到较高的识别准确率,因此采用迁移学习的方法进行用户行为的训练和检测。
在迁移学习中,用领域(Domain)表示进行学习的主体,其中源域就是有知识、有大量数据标注的领域,是要迁移的对象,在本发明实施例中是指用户行为预训练模型的训练集,目标域是最终要赋予知识、赋予标注的对象,在本发明实施例中是指用户行为数据的训练数据;用任务(Task)表示学习的目标,在本发明实施例中,源任务是指用户行为预训练模型库中模型的的测试数据,目标任务是要分类的用户行为数据(鼠标和键盘操作行为数据)。
按照迁移的情景不同,迁移学习可分为归纳式迁移学习、直推式迁移学习和无监督迁移学习,这三类方法在源域和目标域之间、源任务和目标任务之间的关系具体如下表3。
表3
在本发明实施例中,源域为开源用户行为特征数据、自建用户行为特征数据和定制化行为特征数据,这些数据已经具有标签,并且与目标域的用户行为特征数据是相关的。源任务和目标任务都是对用户的鼠标和键盘行为进行分类,具有相关性。因此,本发明实施例选用归纳式迁移学习方法。该方法的关键步骤是:通过对源域的数据进行离线训练,得到用户行为的分类模型;在线采集到的用户鼠标和键盘行为是目的域数据,在源域中找到与目标域相似的数据,把这些数据的权值进行自动调整,使得新的数据与目标域的数据进行匹配,然后进行训练学习,进而得到适用于目标域的高可靠的分类模型。
迁移学习的实现过程可如下:
选取开源用户行为特征数据、自建用户行为特征数据以及有很强针对性的定制化行为特征数据中的鼠标操作数据和键盘操作数据,对其进行预处理。预处理方法可为:将所提到的特征对输入数据进行编码及向量化,如在2019年8月1日00:00:00时刻鼠标在X1,Y1位置移动的事件,向量化后的结果为[1,M,M,X1-Y1,1564588800000,1]。将以上经过预处理的预训练数据送入卷积神经网络(Convolutional Neural Networks,CNN)中进行训练,得到用户行为分类的预训练通用模型,得到的模型包含输入层、卷积层、池化层、全连通层及归一化指数函数(softmax)层,保存该模型用于后续的迁移训练,如形成一个对用户鼠标键盘行为进行分类的CNN模型中依此包含输入层、2个卷积层、1个池化层、2个卷积层、1个池化层、1个全连通层及一个softmax层,将模型保存为模型文件。
由于进行迁移训练的业务源域与目标域是相似的,但对于需要进行用户身份分类的种类不一样,因此,将预训练模型中的全连通层与softmax层去除,保留其他部分,以此作为训练初始模型,输入在用户注册时采集到的鼠标键盘行为特征向量,进行迁移学习,形成新的全连通层与softmax层,由于训练在预训练模型基础之上进行,因此,只需要实际用户在注册时的少量数据就能够完成训练并保证一定的分类准确性。
本实施例基于迁移学习进行二次认证,具体认证过程如下:
输入开源用户行为特征数据、自建用户行为特征数据和定制化行为特征数据到CNN模型进行训练,生成用于迁移学习的预训练通用模型。当互联网应用业务系统中有新用户注册时,采集其注册过程中的鼠标和键盘操作数据,送入预训练通用模型中,进行迁移学习,形成针对该用户的分类模型,模型的训练正样本为用户注册中采集的鼠标和键盘特征,负样本为等量的其他用户的鼠标键盘行为。
用户正常使用业务系统时的鼠标和键盘特征作为检测数据送入分类模型进行检测,输出为分类的结果,即是注册用户或非注册用户,及对应分类结果的分类概率,即该模型对给出结果可信度的概率,如通过模型分类是注册用户,输出结果为[1,0.9],即表示该用户是合法注册用户,结果的可信度是90%。同时,为了保证模型的时效性,在用户使用阶段会进行半监督的迭代训练,即将用户已经分类的特征数据作为训练集继续对模型进行迭代训练,以此保证模型能够适应用户行为习惯的连续性变化。
下面结合附图对基于迁移学习的模块化二次认证实现流程进行描述。该流程主要分为三个阶段,分别是:用户行为预训练、用户行为采集和用户身份二次认证,如图7所示。
1、用户行为预训练阶段包括:
步骤701:收集开源用户行为特征数据、自建用户行为特征数据和定制化行为特征数据;
步骤702:将这两类(上述数据中的鼠标和键盘操作行为)数据进行离线预训练,提取用户的通用操作特征知识;
步骤703:形成作为迁移原模型的预训练通用模型;
2、用户行为采集阶段包括:
步骤704:用户首次访问互联网应用时,首先进行注册,新建立用户名、密码、昵称、邮箱、电话等信息;
步骤705:计算机行为记录工具记录用户注册过程中的鼠标操作数据和键盘操作数据并上传至服务器,包括鼠标的位置坐标、鼠标击键方式、键盘按键行为等;
步骤706:用户完成注册步骤后,服务器端进行数据的预处理;
步骤707:预处理后的数据作为训练数据,对预训练模型库中的两类模型进行迁移学习,并生成新的更有针对性的分类模型;
3、用户身份二次认证阶段包括:
步骤708:已完成注册的用户在登录应用时,首先输入用户名和密码,如果用户名密码均正确,则执行步骤709;否则认证不成功,重新验证;
步骤709:用户正常使用应用;
步骤710:在用户使用应用的过程中,计算机行为记录工具持续记录用户的鼠标操作数据和键盘操作数据;操作数据进行预处理后(将鼠标和键盘操作数据转换为向量数据形式),执行步骤711;
步骤711:将检测数据送入分类模型进行用户行为检测分类,输出分类结果及其可信度概率;分类结果分为两种,分别是用户是注册用户和用户非注册用户,概率为分类结果可信度的概率。并将分类结果和已经分类的特征数据作为训练数据继续对模型进行迭代训练。
这里,分类模型输出用户行为检测分类结果及其概率(用户使用行为被分类到该用户注册行为的概率)。
步骤712:根据分类结果及其可信度概率判定其是否为该用户,如果匹配成功,则认为该用户是合法用户,认证成功,用户可继续正常使用应用;反之则认证失败,结果发送给互联网应用业务系统进行相关风险处置。
本发明实施例提出的模块化的二次身份认证方法,使得该方法易于与相关任何认证方式进行有效集成,在用户无感的情况下提示认证安全性;同时,本发明实施例将迁移学习应用于用户身份认证中,通过采集用户的鼠标和键盘操作数据,保证用户不需要进行额外的输入或者操作就能实现对用户身份的第二次验证。有效保证在线系统只使用较少的用户行为样本就能获得较高的认证准确率。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
Claims (10)
1.一种身份认证方法,其特征在于,该方法包括:
记录用户使用应用时产生的鼠标操作数据和键盘操作数据;
基于所述鼠标操作数据、所述键盘操作数据、预训练模型库以及迁移学习,进行用户的身份认证;
当认证得到的分类结果和可信度概率不满足预设条件时,表明认证失败。
2.根据权利要求1所述的方法,其特征在于,所述记录用户使用应用时产生的鼠标操作数据和键盘操作数据之前,该方法还包括:
确定用户输入的用户名和密码均认证成功,授权该用户使用相应应用。
3.根据权利要求2所述的方法,其特征在于,所述确定用户输入的用户名和密码均认证成功之前,该方法还包括:
记录用户注册所述应用时的鼠标操作数据和键盘操作数据;
基于用户注册时的鼠标操作数据和键盘操作数据对所述预训练模型库中的模型进行迁移学习,生成针对该用户的分类模型。
4.根据权利要求3所述的方法,其特征在于,所述基于用户注册时的鼠标操作数据和键盘操作数据对所述预训练模型库中的模型进行迁移学习,生成针对该用户的分类模型,包括:
将开源用户行为特征数据、自建用户行为特征数据和定制化行为特征数据输入卷积神经网络CNN进行训练,得到用于迁移学习的预训练通用模型;
采集用户注册时的鼠标操作数据和键盘操作数据,并输入到所述预训练通用模型进行迁移学习,得到针对该用户的分类模型;其中,
所述分类模型的训练正样本为用户注册时采集的鼠标操作数据和键盘操作数据,负样本为等量的其他用户的鼠标操作数据和键盘操作数据。
5.根据权利要求3所述的方法,其特征在于,所述基于所述鼠标操作数据、所述键盘操作数据、预训练模型库以及迁移学习,进行用户的身份认证,包括:
将用户使用应用时的鼠标操作数据和键盘操作数据输入所述分类模型进行用户行为检测分类;
确定用户为注册用户或非注册用户的分类结果,并输出与所述分类结果对应的可信度概率;
利用已分类的鼠标操作数据和键盘操作数据作为训练数据继续对所述预训练模型库中的模型继续进行迭代训练,完善针对该用户的分类模型;
利用所述分类结果和可信度概率进行用户的身份认证。
6.根据权利要求5所述的方法,其特征在于,所述利用所述分类结果和可信度概率进行用户的身份认证,包括:
基于分类结果确定用户为注册用户,且可信度概率大于等于预设条件时,则认定当前使用应用的用户为已授权注册的用户,身份认证成功;
基于分类结果确定用户为注册用户,但可信度概率小于预设条件时,则认定当前使用应用的用户为非法用户,身份认证失败;
基于分类结果确定用户为非法用户,则身份认证失败。
7.根据权利要求1所述的方法,其特征在于,所述可信度概率为:
用户使用所述应用时的鼠标和键盘操作行为被分类到该用户注册所述应用时的鼠标和键盘操作行为的概率。
8.一种身份认证装置,其特征在于,该装置包括:
数据记录模块,用于记录用户使用应用时产生的鼠标操作数据和键盘操作数据;
第一认证模块,用于基于所述鼠标操作数据、所述键盘操作数据、预训练模型库以及迁移学习,进行用户的身份认证,当认证得到的分类结果和可信度概率不满足预设条件时,表明认证失败。
9.一种身份认证装置,其特征在于,该装置包括:处理器和用于存储能够在处理器上运行的计算机程序的存储器,
其中,所述处理器用于运行所述计算机程序时,执行权利要求1-7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1-7中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010248862.1A CN113496015A (zh) | 2020-04-01 | 2020-04-01 | 一种身份认证方法、装置和计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010248862.1A CN113496015A (zh) | 2020-04-01 | 2020-04-01 | 一种身份认证方法、装置和计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113496015A true CN113496015A (zh) | 2021-10-12 |
Family
ID=77993048
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010248862.1A Pending CN113496015A (zh) | 2020-04-01 | 2020-04-01 | 一种身份认证方法、装置和计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113496015A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116743510A (zh) * | 2023-08-15 | 2023-09-12 | 中移(苏州)软件技术有限公司 | 一种检测方法、装置、电子设备、芯片及介质 |
-
2020
- 2020-04-01 CN CN202010248862.1A patent/CN113496015A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116743510A (zh) * | 2023-08-15 | 2023-09-12 | 中移(苏州)软件技术有限公司 | 一种检测方法、装置、电子设备、芯片及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10467394B2 (en) | Pointing device biometrics for continuous user authentication | |
WO2017071126A1 (zh) | 触屏用户按键行为模式构建与分析系统及其身份识别方法 | |
Banerjee et al. | Biometric authentication and identification using keystroke dynamics: A survey | |
Lu et al. | Continuous authentication by free-text keystroke based on CNN and RNN | |
CN109462691B (zh) | 一种基于多传感器数据融合的隐式防护方法及系统 | |
CN111625792B (zh) | 一种基于异常行为检测的身份识别方法 | |
Almalki et al. | Continuous authentication using mouse clickstream data analysis | |
Zareen et al. | Authentic mobile‐biometric signature verification system | |
CN112464117A (zh) | 请求处理方法、装置、计算机设备和存储介质 | |
CN109871673B (zh) | 基于不同上下文环境中的持续身份认证方法和系统 | |
CN106570367B (zh) | 基于键盘操作的用户身份识别方法和装置 | |
Gamassi et al. | Quality assessment of biometric systems: a comprehensive perspective based on accuracy and performance measurement | |
CN112861082B (zh) | 用于被动认证的集成系统和方法 | |
Stylios et al. | BioPrivacy: Development of a keystroke dynamics continuous authentication system | |
Shen et al. | A hypo-optimum feature selection strategy for mouse dynamics in continuous identity authentication and monitoring | |
CN107430653B (zh) | 用于识别用户的交互签名的方法 | |
US20190332876A1 (en) | Method and system for free text keysroke biometric authentication | |
CN113496015A (zh) | 一种身份认证方法、装置和计算机可读存储介质 | |
Stylios et al. | BioPrivacy: a behavioral biometrics continuous authentication system based on keystroke dynamics and touch gestures | |
CN111124860B (zh) | 一种在不可控环境下使用键盘和鼠标数据识别用户的方法 | |
Pelto et al. | Your Identity is Your Behavior-Continuous User Authentication based on Machine Learning and Touch Dynamics | |
CN109302413A (zh) | 一种基于行为特征的移动终端身份认证系统及方法 | |
CN112507299B (zh) | 持续身份认证系统中的自适应击键行为认证方法及装置 | |
CN113626693A (zh) | 产品推荐方法、装置、计算机设备和存储介质 | |
Lu et al. | Combining mouse and eye movement biometrics for user authentication |
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 |