一种基于隐马尔可夫模型的口令猜测方法

2019-10-15 05:19徐岳皓
网络安全技术与应用 2019年10期
关键词:马尔可夫口令字符

◆王 蕊 徐岳皓 石 珺 吕 博 周 阳

一种基于隐马尔可夫模型的口令猜测方法

◆王 蕊1,2徐岳皓1石 珺1,2吕 博1,2周 阳1,2

(1.中国电子科技集团公司电子科学研究院 北京 100041) (2.中电科网络空间安全研究院有限公司 北京 100041)

随着信息时代的发展,信息安全尤其是口令的安全性研究成为热点问题。本文提出一种基于隐马尔可夫模型的口令猜测方法,通过为口令猜测问题建立隐马尔可夫模型,以大量的用户口令数据集为输入,以训练得到的初始状态概率、转换概率、观测概率等信息为依据,对数据集的口令字符组合、顺序等模式进行挖掘,最终以观测序列生成的方式产生新的预测密码,实现口令猜测。

口令猜测;隐马尔可夫;转移矩阵

信息安全问题受到越来越多的重视,用户认证机制成为保护用户隐私安全的一种常用方法[1~3]。其中,文本口令具有实现简单方便等的特点,是最为普遍使用的一种用户认证方式,然而却存在口令强度不够高的问题。因此,口令的安全性研究成为热点问题,其中利用不同方法实现对口令集的猜测[4-6]是一项重点研究方向,具有重要研究意义。一方面,从破解者的角度猜测用户口令可以使人们对口令的安全性有更深的认识;另一方面,猜测口令也可用于检测用户口令的强度,可方便用户在选择口令时避开容易被猜测到的口令,或在猜测口令结果的基础上更改口令以提升口令强度。

为了便于记忆,用户的口令一般不是随机的字符串,而是会包含一些特殊含义字符,例如,在选择口令时加入姓名缩写,生日等个人信息。传统研究[7,8]在实现用户口令模式概率模型的训练时,需要利用用户的个人信息,但网上泄露的口令数据集往往并不包含用户信息。因此,为了提高模型的训练效率与预测精度,往往需要进行大量的前期调研,寻找与给用户口令匹配的信息。而且这种口令猜测方法更针对的是某个特定的用户,在猜测口令时,也要预先知道用户信息。综上,一般而言,实现口令猜测时只考虑了数字口令,但在当今时代,使用纯数字作为口令的人少之又少,现实意义不强。

尽管每个用户选择口令的偏好不同,但大量的用户口令数据集往往存在一定的统计特征和规律。因此,对大量用户口令数据集进行训练,可以挖掘出一些可预测的模式。本文利用隐马尔可夫模型进行口令猜测,基于口令字符之间的初始状态概率、转换概率、观测概率等信息对数据集的口令字符组合、顺序等模式进行挖掘可发现一定的规律。如此可见,根据隐马尔可夫模型猜测用户口令具有很强的现实意义。

1 基于隐马尔可夫模型的口令猜测方法

2.1 算法思想

本文提出一种基于隐马尔可夫模型的口令猜测方法,通过为口令猜测问题建立隐马尔可夫模型,以训练得到的初始状态概率、转换概率、观测概率等信息为依据,对数据集的口令字符组合、顺序等模式进行挖掘,最终以观测序列生成的方式产生新的预测密码,实现口令猜测。本文的优势在于不依赖如用户个人信息等外在条件,只根据泄露数据集中的所有用户口令来训练模型、猜测口令。本文的另一项优势在于不只针对数字口令,而是考虑了口令可能出现的所有字符类别,包括字母、数字、汉字、特殊字符这四种类别,可以更好地猜测复杂口令。

2.2 算法过程

本文主要通过构建隐马尔可夫模型,以{字母,数字,汉字,特殊字符}四种状态为模型对应的隐状态,以口令中出现的不同字符作为不同隐状态下的观测值,通过模型的训练生成不同观测序列,生成的观测序列即为猜测的口令。本文以口令数据集为训练数据,计算隐马尔可夫模型的转移概率、观测概率、初始状态概率,根据求得的初始状态概率选择初始状态,基于这个状态通过观测概率得到一个观测值;利用这个状态可以通过转移概率得到下一个状态,然后又可以继续得到下一个观测值;以此类推,直到把观测序列生成完毕。

算法流程图如图1所示,本文提出的基于隐马尔可夫模型的用户口令猜测方法包括下列步骤:

(1)数据预处理,实现输入数据的预处理,提取泄露口令数据集的所有密码,并以0.75:0.25的比例随机拆分为训练集和测试集;

(4)按照以下过程生成预测密码:

(6)对比猜测口令集和测试集,计算猜测口令集的命中率,从而得出猜测正确率。

2 优势分析

本文基于隐马尔可夫模型生成猜测口令,通过对口令数据集的挖掘学习得到隐马尔可夫模型,以训练得到的初始状态概率、转换概率、观测概率等信息为依据,结合观测序列生成的方式产生新口令,从而实现口令猜测。本文可实现四种类型(字母、数字、汉字、特殊字符)字符组合的口令猜测,且该方法不局限于某个具体用户,而是猜测用户们可能使用的口令,并且随着数据集的增加,模型精度会越来越高,猜测的口令也会更符合人类习惯。

图1 基于隐马尔可夫模型的口令猜测方法算法流程图

3 结束语

与现有技术相比,本文提出的技术方案中的模型建立只依赖泄露口令数据集内所有用户口令,避免了对用户信息的调研与整理,减少了人工工作量。本文将口令猜测问题转化为基于隐马尔可夫模型的观测序列生成问题,基于模型的初始状态概率、状态转移概率矩阵、观测概率矩阵,按照概率的形式生成猜测口令,可支持字母、数字、汉字、特殊字符等四种字符组合口令的猜测。此外,通过计算目标用户口令在隐马尔可夫模型下出现的似然度,可为检测目标用户口令的安全强度提供了一个新思路。

[1].网络信息安全技术综述[J].甘肃科技,2009,25(17):29-33.

[2]王平,汪定,黄欣沂.口令安全研究进展[J].计算机研究与发展,2016,53(10):2173-2188.

[3]刘功申,邱卫东,孟魁,等.基于真实数据挖掘的口令脆弱性评估及恢复[J].计算机学报,2016,39(3):454-467.

[4]周浩,王靖康,王博,等.明文口令生成模型研究综述[J].计算机工程与应用,2018,54(4):9-16.

[5]Yan J J,Blackwell A F,Anderson R J,et al. Password Memorability and Security:Empirical Results[J].IEEE Security and Privacy Magazine,2004,2(5):25-31.

[6]Bonneau J,Herley C,Van Oorschot P C,et al. Passwords and the evolution of imperfect authentication[J]. Communications of the ACM,2015,58(7):78-87.

[7]滕南君,鲁华祥,金敏,等.PG-RNN:一种基于递归神经网络的密码猜测模型[J].智能系统学报,2018,13(06):29-36.

[8]周环,刘奇旭,崔翔,等.基于神经网络的定向口令猜测研究[J].信息安全学报,2018,3(05):29-41.

猜你喜欢
马尔可夫口令字符
论高级用字阶段汉字系统选择字符的几个原则
字符代表几
一种USB接口字符液晶控制器设计
面向电力系统的继电保护故障建模研究
图片轻松变身ASCⅡ艺术画
高矮胖瘦
基于马尔可夫链共享单车高校投放研究
基于马尔可夫链共享单车高校投放研究
基于马尔科夫算法对预测窗户状态模型的研究
口 令