CN112019354B - 一种基于生成式对抗网络的口令遍历装置及方法 - Google Patents
一种基于生成式对抗网络的口令遍历装置及方法 Download PDFInfo
- Publication number
- CN112019354B CN112019354B CN202011201245.2A CN202011201245A CN112019354B CN 112019354 B CN112019354 B CN 112019354B CN 202011201245 A CN202011201245 A CN 202011201245A CN 112019354 B CN112019354 B CN 112019354B
- Authority
- CN
- China
- Prior art keywords
- password
- rule
- engine module
- rules
- countermeasure network
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3226—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
Abstract
本发明提供一种基于生成式对抗网络的口令遍历装置及方法,在对口令变换规则进行编码后,利用生成式对抗网络技术动态生成高质量的口令变换规则,所得的规则与口令字典相结合,派生出用于口令恢复的测试口令;所提出的口令遍历方法,能够优先校验具有更高可能性的口令集合,缩短口令恢复所须的平均时间。本发明首次将生成式对抗网络应用到规则可动态生成的口令遍历装置中,能够解决口令恢复领域口令变换规则稀缺的问题。
Description
技术领域
本发明涉及口令恢复技术领域,特别是涉及一种基于生成式对抗网络的口令遍历装置及方法。
背景技术
网络时代的到来使得数据的流速变快,数据的传输共享随处可见。随之而来的问题就是,如何保护涉密数据。使用口令来保护个人信息是一种常见且方便的方法。口令恢复是指从密文中恢复出口令明文的过程。口令恢复应用范围广大。口令恢复技术在学术,民用,国防等当面都有很大作用,关于口令恢复的研究层出不穷。
传统口令恢复方法有穷举,字典等。穷举即字面意思,依靠举例出所有口令可能组合逐一尝试来破解口令,这是一种十分简单的方法,但需要耗费巨量时间。字典则是按照已有的字典文件去逐一尝试,这种方法比起穷举法有改进的地方,耗费的时间比起穷举法短,但需要性能优越的字典文件不易获得。利用规则变换,在字典的基础上进行字符变换派生出新的字典,是一种有效的解决思路,并且口令规则派生有专门的语法编码习惯,如“sa@”代表将口令字符中的字符“a”转化为字符“@”,又如“$1$2$3”代表在口令字符串的基础上增加后缀字符串“123”。然而,用于派生口令的性能优越的规则同样难以获取。
因此需要一种新的结合规则变换的口令遍历方法以实现缩小口令恢复过程中的搜索空间,提升口令恢复的效率。
发明内容
针对现有技术的不足,本发明提供了一种基于生成式对抗网络的口令遍历装置及方法。该口令遍历装置和方法借助生成式对抗网络技术,能在有限的字典与规则输入条件下动态生成规则,并基于输入字典完成口令空间的遍历。
为实现上述的目的,本发明采用如下技术方案:一种基于生成式对抗网络的口令遍历装置,包括规则动态生成引擎模块、规则历史数据库与快速去重引擎模块、口令规则变换与去重判断引擎模块以及校验口令与循环控制模块;
所述规则动态生成引擎模块采用已训练的对抗网络模型动态生成口令规则,所述规则动态生成引擎模块包括:规则编码器、对抗生成器、规则译码器、译码表;
所述规则历史数据库与快速去重引擎模块用于保存已生成的历史规则,并判断当前规则是否已出现;
所述口令规则变换与去重判断引擎模块内置历史口令库,用于完成口令规则变换,并检查口令规则变换所得口令是否已经被检验过;
所述校验口令与循环控制模块用于口令校验并控制口令遍历装置的循环迭代状态。
进一步地,所述规则编码器与规则译码器均将口令变换规则元操作统一顺序编码为2位16进制编码,并满足生成式对抗网络的输入规范。
进一步地,所述对抗生成器内置生成式对抗网络,用于输入规则文件和动态生成规则。
本发明还提出了一种基于生成式对抗网络的口令遍历方法,具体包括以下步骤:
(1)输入规则文件,完成对规则动态生成引擎模块内对抗生成器的训练,并输出规则;具体包括如下子步骤:
(1.1)解析输入规则文件中的每一条规则,并为每一个规则元操作顺序分配2位16进制编码,根据规则编码表对输入规则文件的每条规则进行编码。所述规则编码表为元操作与2位16进制编码的映射关系。
(1.2)用步骤(1.1)编码后的规则迭代训练SeqGAN生成式对抗网络,直至SeqGAN生成式对抗网络可输出与所输入编码规则分布相似的数字序列。
(1.3)将步骤(1.2)输出的数字序列,通过编码表译码输出规则。
(2)所述规则动态生成引擎模块输出的规则,发送至规则历史数据库与快速去重引擎模块进行查重;若所生成的规则已存在规则历史数据库与快速去重引擎模块中,则重复步骤(2);若所生成的规则为新规则,则存放入规则历史数据库与快速去重引擎模块中;
(3)从输入的口令字典循环输出口令,并结合新规则派生口令;若所派生的口令已存在于口令规则变换与去重判断引擎模块中,且口令字典仍未遍历完整,则重复步骤(3);若所派生的口令为新口令,则存放入口令规则变换与去重判断引擎模块中;
(4)在校验口令与循环控制模块校验新口令是否为目标口令;若新口令为目标口令,结束口令恢复任务;若新口令不是目标口令且口令字典尚未遍历完整,则重复步骤(3);若新口令不是目标口令且口令字典已经完全遍历,则重复步骤(2)。
与现有技术相比,本发明具有如下有益效果:在本发明中,生成式对抗网络被应用于规则的动态生成,结合规则与字典两方面先验信息构建口令遍历装置。在本发明装置中,可将基于社会工程学获取的字符片段作为口令字典的一部分,结合本装置的遍历策略,可达到优先校验具有更高可能性的口令集合,缩短口令恢复所须的平均时间。
附图说明
图1为本发明中的基于生成式对抗网络的口令遍历方法流程图;
图2为本发明中的基于生成式对抗网络的规则动态生成引擎示意图;
图3为本发明中的用于规则自动生成的序列生成式对抗网络图。
具体实施方式
下面结合附图和实施例对本发明作进一步详细说明。
本发明提供了一种基于生成对抗式网络的口令遍历装置,包括规则动态生成引擎模块、规则历史数据库与快速去重引擎模块、口令规则变换与去重判断引擎模块以及校验口令与循环控制模块。
所述规则动态生成引擎模块采用已训练的对抗网络模型动态生成口令规则,如图2,所述规则动态生成引擎模块包括:规则编码器、对抗生成器、规则译码器。所述规则编码器与规则译码器均将口令变换规则元操作统一顺序编码为2位16进制编码,并满足生成式对抗网络的输入规范。所述对抗生成器内置生成式对抗网络,用于输入规则文件和动态生成规则。
本发明中采用的对抗生成器,主要由两个神经网络组成,分别为判别网络D与生成网络G。判别神经网络D采用CNN模型;生成网络采用RNN模型,如图3所示。具体迭代过程如下:
(1)随机初始化生成网络G和判别网络D的网络参数。
(2)通过极大似然估计方法预训练生成网络G,目的是提高G网络的搜索效率。
(3)使用预训练的生成网络G生成部分规则,并通过最小化交叉熵来预训练D。
(4)开始生成规则序列,并使用蒙特卡洛搜索方法计算奖励;
(5)根据步骤(4)所得的奖励参数,计算梯度下降值,并更新生成网络G的参数;
(6)更新后的生成网络G生成规则序列,和输入规则序列一起训练判别网络D;
(7)重复操作(4)~(6),循环训练直至收敛。
本发明中所采用的词向量维度为20、隐层维度为25、隐层层数为3;生成网络G与判别网络D的迭代次数比为1:10;生成网络G与判别网络D采用的优化器均为Adam;学习率取0.001;梯度平均值的衰减率取0.9;梯度平方的平均值的衰减率取0.999。
所述规则历史数据库与快速去重引擎模块用于保存已生成的历史规则,并判断当前规则是否已出现。
所述口令规则变换与去重判断引擎模块内置历史口令库,用于完成口令规则变换,并检查口令规则变换所得口令是否已经被检验过。
所述校验口令与循环控制模块用于口令校验并控制口令遍历装置的循环迭代状态。
如图1,本发明还提供了所述口令遍历装置的口令遍历方法,具体包括以下步骤:
(1)输入规则文件,完成对规则动态生成引擎模块内对抗生成器的训练,并输出规则;具体包括如下子步骤:
(1.1)解析输入规则文件中的每一条规则,并为每一个规则元操作顺序分配2位16进制编码,根据规则编码表对输入规则文件的每条规则进行编码。所述规则编码表为元操作与2位16进制编码的映射关系。假设第一条规则“$1$2”代表在口令字符串后增加后缀“12”,被分为“$1”“$2”两个元操作,且分别编码成“0x01”“0x02”;第二条规则“] $a”代表先删除口令字符串最后一个字符,再在口令字符串后增加字符“a”;该条规则同样被拆分为“]”“$a”两个元操作,并分别顺序编码成“0x03”与“0x04”。
(1.2)将步骤(1.1)编码后的规则迭代训练SeqGAN生成式对抗网络,直至SeqGAN生成式对抗网络可输出与所输入编码规则分布相似的数字序列。
(1.3)将步骤(1.2)输出的数字序列,通过编码表译码输出规则。如图2中,所得的{1,2,4}数字矢量,查表可得“$1”“$2”“$a”三个元操作,合并为“$1 $2 $a”新规则,代表在字符串后增加“12a”后缀。
(2)所述规则动态生成引擎模块输出的规则,发送至规则历史数据库与快速去重引擎模块进行查重;若所生成的规则已存在规则历史数据库与快速去重引擎模块中,则重复步骤(2);若所生成的规则为新规则,则存放入规则历史数据库与快速去重引擎模块中;
(3)从输入的口令字典循环输出口令,并结合新规则派生口令;若所派生的口令已存在于口令规则变换与去重判断引擎模块中,且口令字典仍未遍历完整,则重复步骤(3);若所派生的口令为新口令,则存放入口令规则变换与去重判断引擎模块中;
(4)在校验口令与循环控制模块校验新口令是否为目标口令;若新口令为目标口令,结束口令恢复任务;若新口令不是目标口令且口令字典尚未遍历完整,则重复步骤(3);若新口令不是目标口令且口令字典已经完全遍历,则重复步骤(2)。
此外,为评价本发明方法的有效性,使用Hashcat中的best64.rule规则作为对抗生成器的训练规则数据。待生成网络收敛后,随机生成两次77条规则,比较所生成规则与best64.rule规则在同构测试集、异构测试集上的口令覆盖率。从RockYou字典库中随机抽取10,000,000个互不相同的口令,按照8:2分为训练集与测试集,即,训练集中有8,000,000个口令,测试集中有2,000,000个口令。另外从CSDN字典库中,随机抽取1,400,000个口令作为异构测试集合(RockYou与CSDN字典库都是公开的可供口令研究的字典库)。将生成的规则作用于8,000,000个口令产生口令集合,与两个测试集合内的口令比对并计算覆盖率。覆盖率越高,说明效果越好。实验结果如表1所示。
表1本发明自动导出规则与best64.rule规则在不同测试集上的覆盖率
在8,000,000个RockYou训练口令集合上应用本发明方法的第一次生成的规则,产生725,714,185个唯一口令,在2,000,000个RockYou测试口令集合上匹配到了652,634个,覆盖率达到32.63%;在1,400,000个CSDN测试口令集合上匹配到了143,927个口令,覆盖率达到10.28%。在8,000,000个RockYou训练口令集合上应用本发明方法的第二次生成的规则,产生730,156,276个唯一口令,在2,000,000个RockYou测试口令集合上匹配到了689,124个,覆盖率达到34.46%;在1,400,000个CSDN测试口令集合上匹配到了153,167个口令,覆盖率达到10.94%。可见,本发明提出的口令规则生成方法具有较好的口令覆盖率。此外,合并两次生成规则的覆盖率数据可以看出,本发明方法可以源源不断地生成有用规则,结合口令库在遍历口令空间的过程中,优先验证高概率的口令。
最后,还需要注意的是,以上列举的仅是本发明的具体实施例。显然,本发明不限于以上实施例,还可以有许多变形。本领域的普通技术人员能从本发明公开的内容直接导出或联想到的所有变形,均认为是本发明的保护范围。
Claims (4)
1.一种基于生成式对抗网络的口令遍历装置,其特征在于,包括规则动态生成引擎模块、规则历史数据库与快速去重引擎模块、口令规则变换与去重判断引擎模块以及校验口令与循环控制模块;
所述规则动态生成引擎模块采用已训练的对抗网络模型动态生成口令规则,所述规则动态生成引擎模块包括:规则编码器、对抗生成器、规则译码器;
所述规则历史数据库与快速去重引擎模块用于保存已生成的历史规则,并判断当前规则是否已出现;
所述口令规则变换与去重判断引擎模块内置历史口令库,用于完成口令规则变换,并检查口令规则变换所得口令是否已经被检验过;
所述校验口令与循环控制模块用于口令校验并控制口令遍历装置的循环迭代状态。
2.根据权利要求1所述基于生成式对抗网络的口令遍历装置,其特征在于,所述规则编码器与规则译码器均将口令变换规则元操作统一顺序编码为2位16进制编码,并满足生成式对抗网络的输入规范。
3.根据权利要求1所述基于生成式对抗网络的口令遍历装置,其特征在于,所述对抗生成器内置生成式对抗网络,用于输入规则文件和动态生成规则。
4.一种权利要求1所述口令遍历装置的口令遍历方法,其特征在于,具体包括以下步骤:
(1)输入规则文件,完成对规则动态生成引擎模块内对抗生成器的训练,并输出规则;具体包括如下子步骤:
(1.1)解析输入规则文件中的每一条规则,并为每一个规则元操作顺序分配2位16进制编码,根据规则编码表对输入规则文件的每条规则进行编码;
所述规则编码表为元操作与2位16进制编码的映射关系;
(1.2)用步骤(1.1)编码后的规则迭代训练SeqGAN生成式对抗网络,直至SeqGAN生成式对抗网络可输出与所输入编码规则分布相似的数字序列;
(1.3)将步骤(1.2)输出的数字序列,通过规则编码表译码输出规则;
(2)所述规则动态生成引擎模块输出的规则,发送至规则历史数据库与快速去重引擎模块进行查重;若所生成的规则已存在规则历史数据库与快速去重引擎模块中,则重复步骤(2);若所生成的规则为新规则,则存放入规则历史数据库与快速去重引擎模块中;
(3)从输入的口令字典循环输出口令,并结合新规则派生口令;若所派生的口令已存在于口令规则变换与去重判断引擎模块中,且口令字典仍未遍历完整,则重复步骤(3);若所派生的口令为新口令,则存放入口令规则变换与去重判断引擎模块中;
(4)在校验口令与循环控制模块校验新口令是否为目标口令;若新口令为目标口令,结束口令恢复任务;若新口令不是目标口令且口令字典尚未遍历完整,则重复步骤(3);若新口令不是目标口令且口令字典已经完全遍历,则重复步骤(2)。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011201245.2A CN112019354B (zh) | 2020-11-02 | 2020-11-02 | 一种基于生成式对抗网络的口令遍历装置及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011201245.2A CN112019354B (zh) | 2020-11-02 | 2020-11-02 | 一种基于生成式对抗网络的口令遍历装置及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112019354A CN112019354A (zh) | 2020-12-01 |
CN112019354B true CN112019354B (zh) | 2021-02-09 |
Family
ID=73527752
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011201245.2A Active CN112019354B (zh) | 2020-11-02 | 2020-11-02 | 一种基于生成式对抗网络的口令遍历装置及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112019354B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112835392B (zh) * | 2021-01-04 | 2023-05-09 | 海门市帕源路桥建设有限公司 | 一种气动压力自动控制系统 |
CN112884087A (zh) * | 2021-04-07 | 2021-06-01 | 山东大学 | 一种生物增强子及其类型的识别方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104573142A (zh) * | 2013-10-10 | 2015-04-29 | 无锡市思库瑞科技信息有限公司 | 基于神经网络的口令属性分析方法 |
CN107491689A (zh) * | 2017-07-11 | 2017-12-19 | 国家计算机网络与信息安全管理中心 | 一种密码破解方法和装置 |
CN108111310A (zh) * | 2017-03-09 | 2018-06-01 | 张长富 | 一种候选口令字典的生成方法与装置 |
CN109492385A (zh) * | 2018-11-05 | 2019-03-19 | 桂林电子科技大学 | 一种基于深度学习的密码生成方法 |
KR20190142056A (ko) * | 2018-06-15 | 2019-12-26 | 서울대학교산학협력단 | 기계학습을 이용한 음성 인식 OTP(One Time Password)인증 방법 및 시스템 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109558723A (zh) * | 2018-12-06 | 2019-04-02 | 南京中孚信息技术有限公司 | 密码字典生成方法、装置以及计算机设备 |
CN111654368B (zh) * | 2020-06-03 | 2021-10-08 | 电子科技大学 | 一种基于深度学习生成对抗网络的密钥生成方法 |
-
2020
- 2020-11-02 CN CN202011201245.2A patent/CN112019354B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104573142A (zh) * | 2013-10-10 | 2015-04-29 | 无锡市思库瑞科技信息有限公司 | 基于神经网络的口令属性分析方法 |
CN108111310A (zh) * | 2017-03-09 | 2018-06-01 | 张长富 | 一种候选口令字典的生成方法与装置 |
CN107491689A (zh) * | 2017-07-11 | 2017-12-19 | 国家计算机网络与信息安全管理中心 | 一种密码破解方法和装置 |
KR20190142056A (ko) * | 2018-06-15 | 2019-12-26 | 서울대학교산학협력단 | 기계학습을 이용한 음성 인식 OTP(One Time Password)인증 방법 및 시스템 |
CN109492385A (zh) * | 2018-11-05 | 2019-03-19 | 桂林电子科技大学 | 一种基于深度学习的密码生成方法 |
Non-Patent Citations (1)
Title |
---|
Briland Hitaj.PassGAN: A Deep Learning Approach for Password Guessing.《International Conference on Applied Crytographyand Network Security 》.2019,全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN112019354A (zh) | 2020-12-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111209497B (zh) | 基于GAN和Char-CNN的DGA域名检测方法 | |
CN102938767B (zh) | 基于云数据外包系统的高效可验证的模糊关键词搜索方法 | |
CN112019354B (zh) | 一种基于生成式对抗网络的口令遍历装置及方法 | |
CN110635807B (zh) | 一种数据编码方法及译码方法 | |
US9619657B2 (en) | Method and apparatus for storing redeem code, and method and apparatus for verifying redeem code | |
CN113255007B (zh) | 一种安全隐匿三要素查询方法 | |
CN113779355B (zh) | 基于区块链的网络谣言溯源取证方法及系统 | |
CN114297079B (zh) | 基于时间卷积网络的xss模糊测试用例生成方法 | |
Yu et al. | Backdoor attacks against deep image compression via adaptive frequency trigger | |
Zhang et al. | An enhanced probabilistic computation method for the weight distribution of polar codes | |
Li et al. | Deep multi-similarity hashing for multi-label image retrieval | |
Huai et al. | Zerobn: Learning compact neural networks for latency-critical edge systems | |
WO2021233183A1 (zh) | 神经网络校验方法、装置、设备及可读存储介质 | |
CN109147868A (zh) | 蛋白质功能预测方法、装置、设备及存储介质 | |
Rando et al. | PassGPT: Password Modeling and (Guided) Generation with Large Language Models | |
Wang et al. | Meta reasoning over knowledge graphs | |
CN108460023B (zh) | 合法区间双认证全密钥依赖无载体试题伪装、恢复方法 | |
CN113850399A (zh) | 一种基于预测置信度序列的联邦学习成员推断方法 | |
CN107622201A (zh) | 一种抗加固的Android平台克隆应用程序快速检测方法 | |
Chen et al. | Answer-enhanced path-aware relation detection over knowledge base | |
CN113904814A (zh) | 认证上网系统及其运行方法 | |
CN113536508A (zh) | 一种制造网络节点分类方法及系统 | |
TWI499928B (zh) | 以協作平台上之版本修訂記錄進行資訊隱藏之方法 | |
CN108156136B (zh) | 一种非直接传输和随机码本的密图无载体试题伪装方法 | |
Liu et al. | Secure and controllable data management mechanism for multi‐sensor fusion in internet of things |
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 |