CN110502883B - 一种基于pca的击键行为异常检测方法 - Google Patents
一种基于pca的击键行为异常检测方法 Download PDFInfo
- 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
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 21
- 230000002159 abnormal effect Effects 0.000 claims abstract description 27
- 238000000034 method Methods 0.000 claims abstract description 9
- 238000012549 training Methods 0.000 claims abstract description 8
- 206010000117 Abnormal behaviour Diseases 0.000 claims abstract description 7
- 238000012545 processing Methods 0.000 claims abstract description 6
- 238000007781 pre-processing Methods 0.000 claims abstract description 3
- 239000011159 matrix material Substances 0.000 claims description 9
- 238000004364 calculation method Methods 0.000 claims description 8
- 239000013598 vector Substances 0.000 claims description 8
- 238000006243 chemical reaction Methods 0.000 claims description 5
- 230000009467 reduction Effects 0.000 claims description 3
- 238000000513 principal component analysis Methods 0.000 claims 5
- 230000006399 behavior Effects 0.000 abstract description 16
- 238000004422 calculation algorithm Methods 0.000 abstract description 4
- 238000005516 engineering process Methods 0.000 description 5
- 238000012706 support-vector machine Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000000354 decomposition reaction Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000010170 biological method Methods 0.000 description 1
- 238000013145 classification model Methods 0.000 description 1
- 238000013075 data extraction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 210000000887 face Anatomy 0.000 description 1
- 210000000554 iris Anatomy 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012821 model calculation Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording 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/3438—Recording 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording 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/3466—Performance evaluation by tracing or monitoring
- G06F11/3476—Data logging
-
- 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
- G06F21/316—User 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的击键行为异常检测方法。
背景技术
生物认证技术通过每个人特有的生理特征如指纹、掌纹、人脸、虹膜等或行为特征如笔迹、语音等进行身份认证。由于这些特征在很大程度上具有唯一性和不可模仿性,极大地减少了用户被冒名顶替的风险。随着生物认证技术的发展成熟,在很多领域已经得到了成功的应用,但由于需要成本较高的额外的生物特征提取设备,因此其使用的普及性受到制约。击键特征和其它生物方法相比有明显的优势,它以键盘作为特征提取设备,只要在计算机***内嵌入识别软件即可,成本低廉。其次,它将用户登录过程和认证过程完美地结合在一起,不对用户使用造成任何影响。
在已往的研究中,击键模式识别主要使用支持向量机、BP神经网络等方法。支持向量机通过对正常用户击键行为数据与异常数据建立二分类模型,由于除了用户本身的击键数据外,其它的击键数据都属于异常数据,这就导致了异常行为数据种类繁多,无法全面收集,影响模型效果,而且支持向量机本身模型计算复杂度较高。而击键异常检测是针对每一个用户建立一个模型,当用户量较大时,支持向量机模型存在空间占用过大的问题。BP神经网络算法模型同意也存在结构复杂的问题,而且训练过程需要大量数据,当用户的数据量不足时会影响模型的准确度。
发明内容
本发明的目的是克服上述背景技术中不足,提供一种基于PCA的击键行为异常检测方法,可实现针对正常用户击键数据建立模型,检测异常行为,不需要大量的数据做训练,而且PCA算法具有计算量小,模型简单的特点。
为了达到上述的技术效果,本发明采取以下技术方案:
一种基于PCA的击键行为异常检测方法,包括以下步骤:
A.收集用户的击键数据,包括用户击键持续时间和击键间隔时间;
B.击键数据预处理,对缺失数据或格式错误数据进行处理,然后对击键数据进行中心化和归一化;对数据进行中心化和归一化处理,中心化的目的是让后面的公式描述更简洁,不影响特征值分解,归一化是为了让不同变量的方差变化尺度控制在相同的范围内,消除不同量纲的影响,使得它们更有可比性;
C.建立PCA异常检测模型,得到综合异常得分;通过PCA建立击键行为异常检测模型,PCA在做特征值分解之后得到的特征向量反应了原始数据方差变化程度的不同方向,特征值为数据在对应方向上的方差大小,因此,最大特征值对应的特征向量为数据方差最大的方向,最小特征值对应的特征向量为数据方差最小的方向,如果单个数据样本跟整体数据样本表现出的特点不太一致,比如在某些方向上跟其它数据样本偏离较大,可能就表示该数据样本是一个异常点;
D.设定异常得分阈值,如果检测样本异常得分大于阈值则判定该击键行为是异常行为。
进一步地,所述步骤A中,击键持续时间即按键抬起与按键按下的时间之差,具体计算公式为:击键间隔时间计算公式为:其中,表示第i个键按下时刻,表示第i个键抬起时刻,本方法中击键间隔时间的计算中,用户的击键间隔时间取后一个键按下与前一个键按下之间的时间差,可避免用户第二个键按下的时前一个键还没抬起的情况。
进一步地,所述步骤B对击键数据具体是进行以下处理:其中,x’为处理后的数据,x为原始数据,为原始数据的均值,σ为原始数据的标准差,从而将原始击键数据预处理后得到均值为0,标准差为1的服从标准正态分布的数据,作为下一步模型训练的数据。
进一步地,所述步骤C包括:
C2.构成转换矩阵:按照特征值从大到小的顺序,将特征向量从左至右排列构成特征向量矩阵P;
C3.对数据X进行降维:包括确定所降维数k和数据转换,其中,最大特征值对应的特征向量为数据方差最大的方向,也是包含原始信息最多的方向,最小特征值对应的特征向量为数据方差最小的方向,也是包含原始信息最小的方向,当信息利用率达99%以上,则所降维数k通过以下公式求出:
C4.计算数据的异常得分:对于某一个特征向量ej,数据样本Xi在该方向上的偏离程度dij计算为:计算数据在所有方向上的偏离程度之后,将所有方向上的偏离程度加起来,得到综合异常得分:其中,数据在不同方向上的方差变化反应了其内在特点,如果单个数据样本跟整体数据样本表现出的特点不一致,样本的偏离较大,则识别该样本是一个异常点。
进一步地,所述步骤D中具体是在得到用户异常得分后,计算该用户所有异常得分的均值和标准差,并采用均值加3倍标准差后的和作为异常得分阈值。
本发明与现有技术相比,具有以下的有益效果:
本发明的基于PCA的击键行为异常检测方法,通过PCA算法建立击键行为异常检测模型用以检测异常行为,其实现不需要大量的数据做训练,可有效解决击键异常识别模型中计算量大、所需数据量多的问题,具有计算量小,模型简单的优点。
附图说明
图1是本发明的击键数据提取示意图示意图。
具体实施方式
下面结合本发明的实施例对本发明作进一步的阐述和说明。
实施例:
实施例一:
一种基于PCA的击键行为异常检测方法,包括以下步骤:
步骤1:收集用户的击键数据,包括用户击键持续时间和击键间隔时间,击键数据提取方式如图1所示。
步骤2:击键数据预处理。
包括对缺失数据或格式错误数据进行处理,然后对数据进行中心化和归一化,作为接下来模型的训练数据,具体计算方式为:其中,x’为处理后的数据,x为原始数据,为原始数据的均值,为原始数据的标准差,从而将原始击键数据预处理后得到均值为0,标准差为1的服从标准正态分布的数据,作为下一步模型训练的数据。
步骤3:建立PCA异常检测模型。
步骤3.1.求解数据的特征值和特征向量:
步骤3.2.构成转换矩阵:按照特征值从大到小的顺序,将特征向量从左至右排列构成特征向量矩阵P。
步骤3.3.对数据X进行降维:
包括先确定所降维数k,最大特征值对应的特征向量为数据方差最大的方向,也是包含原始信息最多的方向,最小特征值对应的特征向量为数据方差最小的方向,也是包含原始信息最小的方向,当信息利用率达99%以上,即:求出k值,取前k个特征值所对应的特征向量Pk;然后对X进行降维,转换之后的数据为Y=XPk。
步骤3.4.计算数据的异常得分:
数据在不同方向上的方差变化反应了其内在特点,如果单个数据样本跟整体数据样本表现出的特点不一致,样本的偏离较大,则识别改样本是一个异常点。
步骤4:设定异常得分阈值,大于阈值则判断该击键行为是异常行为。
如计算一用户的20条击键行为数据的异常得分:
Score=[score0,score1,...,score19]
计算异常得分的均值x-与标准差σ,设置阈值为均值加3倍标准差:
如果检测样本异常得分大于阈值则判断该击键行为是异常行为。
可以理解的是,以上实施方式仅仅是为了说明本发明的原理而采用的示例性实施方式,然而本发明并不局限于此。对于本领域内的普通技术人员而言,在不脱离本发明的精神和实质的情况下,可以做出各种变型和改进,这些变型和改进也视为本发明的保护范围。
Claims (3)
1.一种基于PCA的击键行为异常检测方法,其特征在于,包括以下步骤:
A.收集用户的击键数据,包括用户击键持续时间和击键间隔时间;
B.击键数据预处理,对缺失数据或格式错误数据进行处理,然后对击键数据进行中心化和归一化;
C.建立PCA异常检测模型,得到综合异常得分;
所述步骤C包括:
C2.构成转换矩阵:按照特征值从大到小的顺序,将特征向量从左至右排列构成特征向量矩阵P;
C3.对数据X进行降维:包括确定所降维数k和数据转换,其中,最大特征值对应的特征向量为数据方差最大的方向,最小特征值对应的特征向量为数据方差最小的方向,所降维数k通过以下公式求出:取前k个特征值所对应的特征向量Pk;然后对X进行降维,转换之后的数据为Y=XPk;
D.设定异常得分阈值,如果检测样本异常得分大于阈值则判定该击键行为是异常行为;所述设定异常得分阈值的方法具体是:在得到用户异常得分后,计算该用户所有异常得分的均值和标准差,并采用均值加3倍标准差后的和作为异常得分阈值。
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)
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)
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)
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神经网络的用户用电异常行为检测方法 |
-
2019
- 2019-08-23 CN CN201910785323.9A patent/CN110502883B/zh active Active
Patent Citations (5)
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)
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 |