CN110502883B - 一种基于pca的击键行为异常检测方法 - Google Patents

一种基于pca的击键行为异常检测方法 Download PDF

Info

Publication number
CN110502883B
CN110502883B CN201910785323.9A CN201910785323A CN110502883B CN 110502883 B CN110502883 B CN 110502883B CN 201910785323 A CN201910785323 A CN 201910785323A CN 110502883 B CN110502883 B CN 110502883B
Authority
CN
China
Prior art keywords
data
keystroke
abnormal
pca
behavior
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
CN201910785323.9A
Other languages
English (en)
Other versions
CN110502883A (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.)
Sichuan Changhong Electric Co Ltd
Original Assignee
Sichuan Changhong Electric 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 Sichuan Changhong Electric Co Ltd filed Critical Sichuan Changhong Electric Co Ltd
Priority to CN201910785323.9A priority Critical patent/CN110502883B/zh
Publication of CN110502883A publication Critical patent/CN110502883A/zh
Application granted granted Critical
Publication of CN110502883B publication Critical patent/CN110502883B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3438Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment monitoring of user actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3476Data logging
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computer Security & Cryptography (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Social Psychology (AREA)
  • Software Systems (AREA)
  • Collating Specific Patterns (AREA)
  • Input From Keyboards Or The Like (AREA)

Abstract

本发明公开了一种基于PCA的击键行为异常检测方法,包括以下步骤:A.收集用户的击键数据,包括用户击键持续时间和击键间隔时间;B.击键数据预处理,对缺失数据或格式错误数据进行处理,然后对击键数据进行中心化和归一化;C.建立PCA异常检测模型,得到综合异常得分;D.设定异常得分阈值,如果检测样本异常得分大于阈值则判定该击键行为是异常行为。本发明的方法可实现针对正常用户击键数据建立模型,检测异常行为,不需要大量的数据做训练,而且PCA算法具有计算量小,模型简单的特点。

Description

一种基于PCA的击键行为异常检测方法
技术领域
本发明涉及机器学习和网络安全技术领域,特别涉及一种基于PCA的击键行为异常检测方法。
背景技术
生物认证技术通过每个人特有的生理特征如指纹、掌纹、人脸、虹膜等或行为特征如笔迹、语音等进行身份认证。由于这些特征在很大程度上具有唯一性和不可模仿性,极大地减少了用户被冒名顶替的风险。随着生物认证技术的发展成熟,在很多领域已经得到了成功的应用,但由于需要成本较高的额外的生物特征提取设备,因此其使用的普及性受到制约。击键特征和其它生物方法相比有明显的优势,它以键盘作为特征提取设备,只要在计算机***内嵌入识别软件即可,成本低廉。其次,它将用户登录过程和认证过程完美地结合在一起,不对用户使用造成任何影响。
在已往的研究中,击键模式识别主要使用支持向量机、BP神经网络等方法。支持向量机通过对正常用户击键行为数据与异常数据建立二分类模型,由于除了用户本身的击键数据外,其它的击键数据都属于异常数据,这就导致了异常行为数据种类繁多,无法全面收集,影响模型效果,而且支持向量机本身模型计算复杂度较高。而击键异常检测是针对每一个用户建立一个模型,当用户量较大时,支持向量机模型存在空间占用过大的问题。BP神经网络算法模型同意也存在结构复杂的问题,而且训练过程需要大量数据,当用户的数据量不足时会影响模型的准确度。
发明内容
本发明的目的是克服上述背景技术中不足,提供一种基于PCA的击键行为异常检测方法,可实现针对正常用户击键数据建立模型,检测异常行为,不需要大量的数据做训练,而且PCA算法具有计算量小,模型简单的特点。
为了达到上述的技术效果,本发明采取以下技术方案:
一种基于PCA的击键行为异常检测方法,包括以下步骤:
A.收集用户的击键数据,包括用户击键持续时间和击键间隔时间;
B.击键数据预处理,对缺失数据或格式错误数据进行处理,然后对击键数据进行中心化和归一化;对数据进行中心化和归一化处理,中心化的目的是让后面的公式描述更简洁,不影响特征值分解,归一化是为了让不同变量的方差变化尺度控制在相同的范围内,消除不同量纲的影响,使得它们更有可比性;
C.建立PCA异常检测模型,得到综合异常得分;通过PCA建立击键行为异常检测模型,PCA在做特征值分解之后得到的特征向量反应了原始数据方差变化程度的不同方向,特征值为数据在对应方向上的方差大小,因此,最大特征值对应的特征向量为数据方差最大的方向,最小特征值对应的特征向量为数据方差最小的方向,如果单个数据样本跟整体数据样本表现出的特点不太一致,比如在某些方向上跟其它数据样本偏离较大,可能就表示该数据样本是一个异常点;
D.设定异常得分阈值,如果检测样本异常得分大于阈值则判定该击键行为是异常行为。
进一步地,所述步骤A中,击键持续时间即按键抬起与按键按下的时间之差,具体计算公式为:
Figure BDA0002177859810000021
击键间隔时间计算公式为:
Figure BDA0002177859810000022
其中,
Figure BDA0002177859810000023
表示第i个键按下时刻,
Figure BDA0002177859810000024
表示第i个键抬起时刻,本方法中击键间隔时间的计算中,用户的击键间隔时间取后一个键按下与前一个键按下之间的时间差,可避免用户第二个键按下的时前一个键还没抬起的情况。
进一步地,所述步骤B对击键数据具体是进行以下处理:
Figure BDA0002177859810000031
其中,x’为处理后的数据,x为原始数据,
Figure BDA0002177859810000032
为原始数据的均值,σ为原始数据的标准差,从而将原始击键数据预处理后得到均值为0,标准差为1的服从标准正态分布的数据,作为下一步模型训练的数据。
进一步地,所述步骤C包括:
C1.求解击键数据的特征值和特征向量,包括计算协方差矩阵
Figure BDA0002177859810000033
求解协方差矩阵的特征值λ1,λ2,...,λm和特征向量e1,e2,...,em
C2.构成转换矩阵:按照特征值从大到小的顺序,将特征向量从左至右排列构成特征向量矩阵P;
C3.对数据X进行降维:包括确定所降维数k和数据转换,其中,最大特征值对应的特征向量为数据方差最大的方向,也是包含原始信息最多的方向,最小特征值对应的特征向量为数据方差最小的方向,也是包含原始信息最小的方向,当信息利用率达99%以上,则所降维数k通过以下公式求出:
Figure BDA0002177859810000034
取前k个特征值所对应的特征向量Pk;然后对X进行降维,转换之后的数据为Y=XPk
C4.计算数据的异常得分:对于某一个特征向量ej,数据样本Xi在该方向上的偏离程度dij计算为:
Figure BDA0002177859810000041
计算数据在所有方向上的偏离程度之后,将所有方向上的偏离程度加起来,得到综合异常得分:
Figure BDA0002177859810000042
其中,数据在不同方向上的方差变化反应了其内在特点,如果单个数据样本跟整体数据样本表现出的特点不一致,样本的偏离较大,则识别该样本是一个异常点。
进一步地,所述步骤D中具体是在得到用户异常得分后,计算该用户所有异常得分的均值和标准差,并采用均值加3倍标准差后的和作为异常得分阈值。
本发明与现有技术相比,具有以下的有益效果:
本发明的基于PCA的击键行为异常检测方法,通过PCA算法建立击键行为异常检测模型用以检测异常行为,其实现不需要大量的数据做训练,可有效解决击键异常识别模型中计算量大、所需数据量多的问题,具有计算量小,模型简单的优点。
附图说明
图1是本发明的击键数据提取示意图示意图。
具体实施方式
下面结合本发明的实施例对本发明作进一步的阐述和说明。
实施例:
实施例一:
一种基于PCA的击键行为异常检测方法,包括以下步骤:
步骤1:收集用户的击键数据,包括用户击键持续时间和击键间隔时间,击键数据提取方式如图1所示。
按键持续时间为:
Figure BDA0002177859810000051
其中,
Figure BDA0002177859810000052
表示第i个键按下时刻,
Figure BDA0002177859810000053
表示第i个键抬起时刻;
击键间隔时间为:
Figure BDA0002177859810000054
击键间隔时间为后一个键按下与前一个键按下之间的时间间隔。
步骤2:击键数据预处理。
包括对缺失数据或格式错误数据进行处理,然后对数据进行中心化和归一化,作为接下来模型的训练数据,具体计算方式为:
Figure BDA0002177859810000055
其中,x’为处理后的数据,x为原始数据,为原始数据的均值,为原始数据的标准差,从而将原始击键数据预处理后得到均值为0,标准差为1的服从标准正态分布的数据,作为下一步模型训练的数据。
步骤3:建立PCA异常检测模型。
步骤3.1.求解数据的特征值和特征向量:
通过计算协方差矩阵
Figure BDA0002177859810000056
求解协方差矩阵的特征值λ1,λ2,...,λm和特征向量e1,e2,...,em
步骤3.2.构成转换矩阵:按照特征值从大到小的顺序,将特征向量从左至右排列构成特征向量矩阵P。
步骤3.3.对数据X进行降维:
包括先确定所降维数k,最大特征值对应的特征向量为数据方差最大的方向,也是包含原始信息最多的方向,最小特征值对应的特征向量为数据方差最小的方向,也是包含原始信息最小的方向,当信息利用率达99%以上,即:
Figure BDA0002177859810000061
求出k值,取前k个特征值所对应的特征向量Pk;然后对X进行降维,转换之后的数据为Y=XPk
步骤3.4.计算数据的异常得分:
对于某一个特征向量ej,数据样本Xi在该方向上的偏离程度dij计算为:
Figure BDA0002177859810000062
计算数据在所有方向上的偏离程度之后,将所有方向上的偏离程度加起来,得到综合异常得分:
Figure BDA0002177859810000063
数据在不同方向上的方差变化反应了其内在特点,如果单个数据样本跟整体数据样本表现出的特点不一致,样本的偏离较大,则识别改样本是一个异常点。
步骤4:设定异常得分阈值,大于阈值则判断该击键行为是异常行为。
如计算一用户的20条击键行为数据的异常得分:
Score=[score0,score1,...,score19]
计算异常得分的均值x-与标准差σ,设置阈值为均值加3倍标准差:
Figure BDA0002177859810000071
如果检测样本异常得分大于阈值则判断该击键行为是异常行为。
可以理解的是,以上实施方式仅仅是为了说明本发明的原理而采用的示例性实施方式,然而本发明并不局限于此。对于本领域内的普通技术人员而言,在不脱离本发明的精神和实质的情况下,可以做出各种变型和改进,这些变型和改进也视为本发明的保护范围。

Claims (3)

1.一种基于PCA的击键行为异常检测方法,其特征在于,包括以下步骤:
A.收集用户的击键数据,包括用户击键持续时间和击键间隔时间;
B.击键数据预处理,对缺失数据或格式错误数据进行处理,然后对击键数据进行中心化和归一化;
C.建立PCA异常检测模型,得到综合异常得分;
所述步骤C包括:
C1.求解击键数据的特征值和特征向量,包括计算协方差矩阵
Figure FDA0003610741660000011
求解协方差矩阵的特征值λ1,λ2,...,λm和特征向量e1,e2,...,em
C2.构成转换矩阵:按照特征值从大到小的顺序,将特征向量从左至右排列构成特征向量矩阵P;
C3.对数据X进行降维:包括确定所降维数k和数据转换,其中,最大特征值对应的特征向量为数据方差最大的方向,最小特征值对应的特征向量为数据方差最小的方向,所降维数k通过以下公式求出:
Figure FDA0003610741660000012
取前k个特征值所对应的特征向量Pk;然后对X进行降维,转换之后的数据为Y=XPk
C4.计算数据的异常得分:对于某一个特征向量ej,数据样本Xi在该方向上的偏离程度dij计算为:
Figure FDA0003610741660000013
计算数据在所有方向上的偏离程度之后,将所有方向上的偏离程度加起来,得到综合异常得分:
Figure FDA0003610741660000021
D.设定异常得分阈值,如果检测样本异常得分大于阈值则判定该击键行为是异常行为;所述设定异常得分阈值的方法具体是:在得到用户异常得分后,计算该用户所有异常得分的均值和标准差,并采用均值加3倍标准差后的和作为异常得分阈值。
2.根据权利要求1所述的一种基于PCA的击键行为异常检测方法,其特征在于,所述步骤A中,击键持续时间计算公式为:
Figure FDA0003610741660000022
击键间隔时间计算公式为:
Figure FDA0003610741660000023
其中,
Figure FDA0003610741660000024
表示第i个键按下时刻,
Figure FDA0003610741660000025
表示第i个键抬起时刻。
3.根据权利要求2所述的一种基于PCA的击键行为异常检测方法,其特征在于,所述步骤B对击键数据具体是进行以下处理:
Figure FDA0003610741660000026
其中,x’为处理后的数据,x为原始数据,
Figure FDA0003610741660000027
为原始数据的均值,σ为原始数据的标准差,从而将原始击键数据预处理后得到均值为0,标准差为1的服从标准正态分布的数据,作为下一步模型训练的数据。
CN201910785323.9A 2019-08-23 2019-08-23 一种基于pca的击键行为异常检测方法 Active CN110502883B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910785323.9A CN110502883B (zh) 2019-08-23 2019-08-23 一种基于pca的击键行为异常检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910785323.9A CN110502883B (zh) 2019-08-23 2019-08-23 一种基于pca的击键行为异常检测方法

Publications (2)

Publication Number Publication Date
CN110502883A CN110502883A (zh) 2019-11-26
CN110502883B true CN110502883B (zh) 2022-08-19

Family

ID=68589339

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910785323.9A Active CN110502883B (zh) 2019-08-23 2019-08-23 一种基于pca的击键行为异常检测方法

Country Status (1)

Country Link
CN (1) CN110502883B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111984952A (zh) * 2020-09-03 2020-11-24 四川长虹电器股份有限公司 一种基于hmm的用户输入行为异常识别方法
CN114509690A (zh) * 2022-04-19 2022-05-17 杭州宇谷科技有限公司 一种基于pca分解的锂电芯充放电异常检测方法及***

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101833619A (zh) * 2010-04-29 2010-09-15 西安交通大学 基于键鼠交叉认证的身份判定方法
CN105389486A (zh) * 2015-11-05 2016-03-09 同济大学 一种基于鼠标行为的认证方法
CN105933267A (zh) * 2015-08-21 2016-09-07 ***股份有限公司 身份认证方法及装置
CN109308306A (zh) * 2018-09-29 2019-02-05 重庆大学 一种基于孤立森林的用户用电异常行为检测方法
CN109815655A (zh) * 2017-11-22 2019-05-28 北京纳米能源与***研究所 身份识别及验证***、方法、装置和计算机可读存储介质

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2789243A1 (en) * 2009-03-13 2010-09-16 Rutgers, The State University Of New Jersey Systems and methods for the detection of malware
CN106101116B (zh) * 2016-06-29 2019-01-08 东北大学 一种基于主成分分析的用户行为异常检测***及方法
CN109145554A (zh) * 2018-07-12 2019-01-04 温州大学苍南研究院 一种基于支持向量机的击键特征异常用户识别方法及***
CN109447099B (zh) * 2018-08-28 2022-01-07 西安理工大学 一种基于pca降维的多分类器融合方法
CN109377409A (zh) * 2018-09-29 2019-02-22 重庆大学 一种基于bp神经网络的用户用电异常行为检测方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101833619A (zh) * 2010-04-29 2010-09-15 西安交通大学 基于键鼠交叉认证的身份判定方法
CN105933267A (zh) * 2015-08-21 2016-09-07 ***股份有限公司 身份认证方法及装置
CN105389486A (zh) * 2015-11-05 2016-03-09 同济大学 一种基于鼠标行为的认证方法
CN109815655A (zh) * 2017-11-22 2019-05-28 北京纳米能源与***研究所 身份识别及验证***、方法、装置和计算机可读存储介质
CN109308306A (zh) * 2018-09-29 2019-02-05 重庆大学 一种基于孤立森林的用户用电异常行为检测方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Ignacio de Mendizabal-Va'zquez 等.Supervised classification methods applied to Keystroke Dynamics through Mobile Devices.《2014 International Carnahan Conference on Security Technology (ICCST)》.2014, *
一种基于自适应监测的云计算***故障检测方法;王焘 等;《计算机学报》;20161019;第41卷(第06期);第1112-1125页 *
基于用户与网络行为分析的主机异常检测方法;郭志民 等;《北京交通大学学报》;20181015;第42卷(第05期);第40-46页 *

Also Published As

Publication number Publication date
CN110502883A (zh) 2019-11-26

Similar Documents

Publication Publication Date Title
WO2021027336A1 (zh) 基于***和签名的身份验证方法、装置和计算机设备
Zhao et al. A subspace co-training framework for multi-view clustering
US6950538B2 (en) Signature recognition system and method
Yang et al. Finger vein recognition based on (2D) 2 PCA and metric learning
US6826300B2 (en) Feature based classification
US7698740B2 (en) Sequential data examination method using Eigen co-occurrence matrix for masquerade detection
CN111370003B (zh) 一种基于孪生神经网络的声纹比对方法
CN110502883B (zh) 一种基于pca的击键行为异常检测方法
CN108875459B (zh) 一种基于稀疏系数相似的加权稀疏表示人脸识别方法及***
US20200265211A1 (en) Fingerprint distortion rectification using deep convolutional neural networks
EP3371739A1 (en) High speed reference point independent database filtering for fingerprint identification
CN116910752B (zh) 一种基于大数据的恶意代码检测方法
Shawkat et al. The new hand geometry system and automatic identification
Barbosa et al. Support vector machines, Mel-Frequency Cepstral Coefficients and the Discrete Cosine Transform applied on voice based biometric authentication
Su et al. Heteroscedastic Max–Min distance analysis for dimensionality reduction
CN112257600B (zh) 一种人脸识别方法及***
Wang et al. An efficient method for computing orthogonal discriminant vectors
CN109446780B (zh) 一种身份认证方法、装置及其存储介质
CN111428643A (zh) 指静脉图像识别方法、装置、计算机设备及存储介质
WO2023173546A1 (zh) 文本识别模型的训练方法、装置、计算机设备及存储介质
Kundu et al. A modified RBFN based on heuristic based clustering for location invariant fingerprint recognition and localization with and without occlusion
Kao et al. Integration of face and hand gesture recognition
Kundu et al. An efficient integrator based on template matching technique for person authentication using different biometrics
CN111984952A (zh) 一种基于hmm的用户输入行为异常识别方法
CN111126241B (zh) 一种基于最优序列特征子集的脑电模式提取方法

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