当前位置: 首页 > 专利查询>四川大学专利>正文

基于马尔可夫链和神经网络的口令字典生成方法和系统技术方案

技术编号:27099859 阅读:13 留言:0更新日期:2021-01-25 18:42
本发明专利技术公开了基于马尔可夫链和神经网络的口令字典生成方法,包括使用有序马尔可夫链进行原口令集的学习和基于5

【技术实现步骤摘要】
基于马尔可夫链和神经网络的口令字典生成方法和系统


[0001]本专利技术涉及网络空间安全
,具体的说,是基于马尔可夫链和神经网络的口令字典生成方法和系统。

技术介绍

[0002]现有技术中离线口令的猜解问题,通常采用暴力猜解方法,对哈希字符串进行一个全口令空间的搜索来进行猜解,这种方法需要大量算力和时间,猜解的目标口令长度和字符集对计算代价影响很大,并且成功率低下。
[0003]离线口令猜解最优的方法是使用口令字典进行猜解,为生成这样高效的口令字典,有的方法是采用对抗生成网络进行对口令集学习,然后生成口令字典。这类方法生成的口令存在严重的重复率问题;还有的方法是采用基于递归神经网络和概率上下文无关文法的生成口令,将待处理字符串转变成标签的格式,并对每个标签进行概率统计,然后给递归神经网络学习特征的方法,但该方法存在命中率不高的情况。

技术实现思路

[0004]本专利技术的目的在于提供一种基于马尔可夫链和神经网络的口令字典生成方法和系统,用于解决现有技术中离线口令猜解口令生成的口令重复率高、命中率不高的问题。
[0005]本专利技术通过下述技术方案解决上述问题:基于马尔可夫链和神经网络的口令字典生成方法,包括:步骤S1:使用有序马尔可夫链进行原口令集的学习和基于5-Gram统计语言模型的字符序列概率统计,生成组合口令,所述组合口令按照口令序列组合的概率高低输出;步骤S2:采用随机数噪声训练生成对抗神经网络生成器,产生伪口令样本,使用原口令集训练初始的生成对抗神经网络判别器,初始的生成对抗神经网络判别器通过对生成对抗神经网络生成器产生的伪口令样本的判别反馈进行参数学习,得到训练好的生成对抗神经网络判别器;步骤S3:采用训练好的抗神经网络判别器对所述组合口令进行判别打分,按照最后的打分分布筛选出得分数值大于预设值(某个预设常数)的口令集作为可用口令集输出,可用口令集按照口令序列组合的概率高低排序,且符合原口令集分布的特点;步骤S4:将可用口令集输出拼接上原口令集构成口令字典,进行离线口令猜解。
[0006]所述步骤S1具体包括:步骤S11:对原口令集的口令进行切割,在开始添加开始标志符,在结尾添加结束符;步骤S12:每次提取连续的5个字符序列作为1个字符序列组,移动步长为1,直到5个字符序列组的最后一个字符为结束字符,统计字符序列组数量;步骤S13:采用对每个5-Gram字符序列组进行概率统计,并按照概率高低将5-Gram序列分为多个堆;步骤S14:按照概率的高低遍历每个堆,从这些堆中寻找子序列进行口令组合,并生成
组合口令。
[0007]所述生成对抗神经网络生成器由随机数发生器、线性层、5层残差块、1维卷积层和softmax层组成,所述生成对抗神经网络判别器对所述伪口令进行判别和反馈,所述生成对抗神经网络判别器由1层字符编码层、5层LSTM层和1层线性层组成。
[0008]基于马尔可夫链和神经网络的口令字典生成系统,包括马尔可夫链口令生成器、生成对抗神经网络判别器和生成对抗神经网络生成器,其中:马尔可夫链口令生成器,用于采用基于5-Gram统计语言模型对口令集进行概率统计,并按照概率高低将5-Gram序列分为多个堆,再按照概率高低遍历每个堆寻找子序列进行口令组合,生成组合口令;生成对抗神经网络生成器,用于根据输入的随机数噪声输出伪口令样本;生成对抗神经网络判别器,用于通过输入的真实口令学习真实口令的分布,并通过对生成对抗神经网络生成器生成的伪口令样本的判别反馈进行参数学习,学习完成后对马尔可夫链口令生成器输出的组合口令进行打分,过滤掉低于预设值的口令集,得到可用口令集并输出;口令拼接模块,用于将原目标口令集与可用口令集进行拼接,得到口令字典。
[0009]本专利技术与现有技术相比,具有以下优点及有益效果:本专利技术结合有序马尔可夫链和生成对抗神经网络技术,使用有序马尔可夫链口令生成器生成口令,生成对抗神经网络判别器筛选口令,从而生成一个具有按照口令组合概率高低排序和符合原口令集分布的口令集;本专利技术能在生成同样多的口令情况下,测试集命中率远高于OMEN和使用对抗生成网络生成器生成口令的方法。由于生成的口令集是按照组合概率高低来排序的,所以本专利技术生成的口令字典还能起到加速口令猜解的效果。
附图说明
[0010]图1为本专利技术的系统框架图;图2为生成对抗神经网络生成器的框架图;图3为生成对抗神经网络判别器的框架图;图4为图3中LTSM残差块的框架图;图5为图2中残差块的框架图;图6为5-Gram字符序列统计流程图;图7为口令生成过程示意图;图8为口令筛选过程示意图。
具体实施方式
[0011]下面结合实施例对本专利技术作进一步地详细说明,但本专利技术的实施方式不限于此。
[0012]实施例:一种基于马尔可夫链和神经网络的口令字典生成方法,包括:步骤S1:使用有序马尔可夫链进行原口令集的学习和基于5-Gram统计语言模型的字符序列概率统计,生成组合口令,所述组合口令按照口令序列组合的概率高低输出;步骤S2:采用随机数噪声训练生成对抗神经网络生成器,产生伪口令样本,使用原口令
集训练初始的生成对抗神经网络判别器,初始的生成对抗神经网络判别器通过对生成对抗神经网络生成器产生的伪口令样本的判别反馈进行参数学习,得到训练好的生成对抗神经网络判别器;步骤S3:采用训练好的生成对抗神经网络判别器对所述组合口令进行判别打分,按照最后的打分分布筛选出得分数值大于预设值(某个预设常数,如-1.3)的口令集作为可用口令集输出,如图8所示,可用口令集按照口令序列组合的概率高低排序,且符合原口令集分布的特点;步骤S4:将可用口令集输出拼接上原口令集构成口令字典,进行离线口令猜解。
[0013]所述步骤S1具体包括:步骤S11:对原口令集的口令进行切割,在开始添加开始标志符,在结尾添加结束符;步骤S12:每次提取连续的5个字符序列作为1个字符序列组,移动步长为1,直到5个字符序列组的最后一个字符为结束字符,统计字符序列组数量;如输入口令password,如图6所示,在开始处添加开始标志^,结尾处添加结束符$,每次提取连续的5个字符序列,移动步长为1,得到字符序列组^pass,passw,asswo,sswor,sword和word$,统计字符序列组数量。
[0014]步骤S13:采用5-Gram统计语言模型进行概率统计,并按照概率高低将5-Gram序列分为多个堆;步骤S14:按照概率的高低遍历每个堆,从这些堆中寻找子序列进行口令组合,并生成组合口令,如图7所示。
[0015]所述生成对抗神经网络生成器由随机数发生器、线性层、5层残差块、1维卷积层和softmax层组成,如图2所示,生成对抗神经网络生成器的作用就是通过随机数发生器产生的随机数,经过生成器网络后,生成出一条伪口令;所述生成对抗神经网络判别器对所述伪口令进行判别和反馈,所述生成对抗神经网络判别器由1层字符编码层、5层LSTM层和1层线性层组成,如图3所示,生成对抗神经网络判别器的作用是:伪口令通过生成对抗神本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.基于马尔可夫链和神经网络的口令字典生成方法,其特征在于,包括:步骤S1:使用有序马尔可夫链进行原口令集的学习和基于5-Gram统计语言模型的字符序列概率统计,生成组合口令,所述组合口令按照口令序列组合的概率高低输出;步骤S2:采用随机数噪声训练生成对抗神经网络生成器,产生伪口令样本,使用原口令集训练初始的生成对抗神经网络判别器,初始的生成对抗神经网络判别器通过对生成对抗神经网络生成器产生的伪口令样本的判别反馈进行参数学习,得到训练好的生成对抗神经网络判别器;步骤S3:采用训练好的生成对抗神经网络判别器对所述组合口令进行判别打分,并筛选出得分数值大于预设值的口令集作为可用口令集输出,可用口令集按照口令序列组合的概率高低排序;步骤S4:将可用口令集输出拼接上原口令集构成口令字典,进行离线口令猜解。2.根据权利要求1所述的基于马尔可夫链和神经网络的口令字典生成方法,其特征在于,所述步骤S1具体包括:步骤S11:对原口令集的口令进行切割,在开始添加开始标志符,在结尾添加结束符;步骤S12:每次提取连续的5个字符序列作为1个字符序列组,移动步长为1,直到5个字符序列组的最后一个字符为结束字符,统计字符序列组数量;步骤S13:采用对每个5-Gram字符序列组进行概率统计,并按照概率高低将5-...

【专利技术属性】
技术研发人员:张磊杨龙龙刘亮杨频
申请(专利权)人:四川大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术
  • 暂无相关专利