CN103701590A - 一种基于字典的复杂密码遍历方法及装置 - Google Patents

一种基于字典的复杂密码遍历方法及装置 Download PDF

Info

Publication number
CN103701590A
CN103701590A CN201410007236.8A CN201410007236A CN103701590A CN 103701590 A CN103701590 A CN 103701590A CN 201410007236 A CN201410007236 A CN 201410007236A CN 103701590 A CN103701590 A CN 103701590A
Authority
CN
China
Prior art keywords
password
traversal
dictionary
violence
current
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.)
Granted
Application number
CN201410007236.8A
Other languages
English (en)
Other versions
CN103701590B (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.)
Xiamen Meiya Pico Information Co Ltd
Original Assignee
Xiamen Meiya Pico Information 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 Xiamen Meiya Pico Information Co Ltd filed Critical Xiamen Meiya Pico Information Co Ltd
Priority to CN201410007236.8A priority Critical patent/CN103701590B/zh
Publication of CN103701590A publication Critical patent/CN103701590A/zh
Application granted granted Critical
Publication of CN103701590B publication Critical patent/CN103701590B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

本发明公开一种基于字典的复杂密码遍历方法,包括如下步骤:S1、从字典文件中读取密码生成密码集合,判断是否预设为大小写扩展,若是,进入步骤S2,若否,进入步骤S3;S2、将字母密码进行大小写扩展,将扩展的字母加入所述密码集合;S3、获取密码集合中密码所要构成字典密码的密码段数N,判断N值是否为0,若是,直接按照设置的暴力遍历的规则遍历,若否,进入步骤S4;S4、获取设置的暴力遍历的规则;S5、将所述暴力遍历规则和密码集合作为遍历算法的数据源,使用遍历算法对字典密码和暴力密码进行构造生成最终的遍历密码。本发明还公开一种基于字典的复杂密码遍历装置。

Description

一种基于字典的复杂密码遍历方法及装置
技术领域
本发明涉一种基于字典的复杂密码遍历方法及装置。
背景技术
暴力遍历和字典遍历是目前密码恢复中最常用的两种遍历方式。暴力遍历就是对用户制定的规则内的所有密码进行遍历,字典遍历则是对字典文件中的密码进行遍历。暴力方式往往需要较多的规则来覆盖尽可能大的密码空间以提高密码恢复的成功率,但密码空间太大将造成遍历时间倍增,甚至需要成百上千年的时间,使密码恢复失去意义。字典遍历方式的成功率往往受限于字典中的密码数,由于字典的密码数一般不会太多,因此可以短时间内完成密码的遍历,但一般只能恢复出常用的密码,对于一些复杂密码无能为力。
如何在有效的时间内恢复出尽可能复杂的密码是当前的主要研究方向。目前,针对暴力方式,研究主要集中在通过各种硬件加速、算法优化、分布式技术来提高遍历的速度,以此来缩短遍历的时间。但是通过提高遍历速度的方法只能使遍历时间线性减小,而密码长度增长、密码字符集增大却使遍历时间几何级数增大;而针对字典遍历,研究主要集中在对字典的收集方面,收集的密码数比较有限。
申请号为201210521641.2的专利申请文件《复杂密码快速遍历算法及装置》公开了一种针对暴力遍历设计的分段规则和对应的遍历算法,实现复杂密码的快速遍历。但是对于包含单词类型的密码,该专利需要知道该单词为前提,如以密码HelloLiuHello88为例,是以知道密码中包含“Hello”为前提,但是在通常情况下,可能并不知道密码中的任何信息,在此情况下,该算法的密码空间将扩大到无法在有限时间内完成遍历。因此,该算法在应用中受到一定程度的限制。
发明内容
为解决上述问题,本发明采用的一个技术方案是:
提供一种基于字典的复杂密码遍历方法,包括如下步骤:S1、从字典文件中读取密码生成密码集合,然后判断是否预设为大小写扩展,若是,进入步骤S2,若否,进入步骤S3;S2、将所述密码中的字母密码进行大小写扩展,将扩展的字母加入所述密码集合,然后进入步骤S3;S3、获取密码集合中密码所要构成字典密码的密码段数N,判断N值是否为0,若是,直接按照设置的暴力遍历的规则遍历,若否,进入步骤S4,其中,字典密码的密码空间是密码集合中密码数的N次方;S4、获取设置的暴力遍历的规则,规则的长度随密码集合中密码的组合数和规则字符集中的字符数的增大而减小;S5、将所述暴力遍历规则和密码集合作为遍历算法的数据源,使用遍历算法对密码集合中的密码构造的字典密码和暴力规则构造的暴力密码进行构造生成最终的遍历密码。
本发明采用的另一个技术方案是:
提供一种基于字典的复杂密码遍历装置,包括:第一判断单元,用于从字典文件中读取密码生成密码集合,然后判断是否预设为大小写扩展,并当判定结果为否时通知下述第二判断单元执行操作;扩展单元,用于当第一判断单元判定结果为是时,将所述密码中的字母密码进行大小写扩展,将扩展的字母加入所述密码集合,然后通知下述第二判断单元执行操作;第二判断单元,用于获取密码集合中密码所要构成字典密码的密码段数N,判断N值是否为0,若是,直接按照设置的暴力遍历的规则遍历,其中,字典密码的密码空间是密码集合中密码数的N次方;暴力遍历单元,用于当第二判断单元的判定结果为否时,获取设置的暴力遍历的规则,其中,规则的长度随密码集合中密码的组合数和规则字符集中的字符数的增大而减小;最终遍历单元,用于将所述暴力遍历规则和密码集合作为遍历算法的数据源,使用遍历算法对密码集合中的密码构造的字典密码和暴力规则构造的暴力密码进行构造生成最终的遍历密码。
本发明的基于字典的复杂密码遍历方法及装置,提出了字典与暴力规则混合遍历的算法,在没有任何密码信息的情况下,可以在短时间内完成复杂密码的遍历。
附图说明
图1是本发明一实施方式中一种基于字典的复杂密码遍历方法的执行流程图;
图2是图1中步骤S5的具体实现流程图;
图3是本发明一实施方式中一种基于字典的复杂密码遍历装置的功能模块图;
图4是图3中最终遍历单元的功能模块图。
具体实施方式
为详细说明本发明的技术内容、构造特征、所实现目的及效果,以下结合实施方式并配合附图详予说明。
发明人通过对大量实际使用密码的研究发现,复杂密码(长度较长、字符类型较多)往往具有以下特征:a、包含常用的英文单词、拼音或常用密码;b、具有分段特征,每段为一个词或同一字符集(字符集指数字、小写、大写等字符的集合)的密码;c、对于包含字母的词,会有大小写的变换;d、是由一些简单密码组合而成;e、越长的密码中,常包含多个同一单词,但重复次数一般3次以内。
综上可总结出,复杂密码往往存在其中某些部分包含字典中密码的特征,另外一些部分又包含暴力遍历中规则的一些特征,因此,本方案将字典引入到暴力遍历的规则中,设计了一种基于字典的复杂密码遍历方法,将暴力遍历和字典遍历相结合,在没有任何密码信息的前提下,极大减小所需遍历的密码空间,实现复杂密码的快速遍历。
请参阅图1,是本发明一实施方式中一种基于字典的复杂密码遍历方法的执行流程图,该基于字典的复杂密码遍历方法包括如下步骤:
步骤S1、从字典文件中读取密码生成密码集合,然后判断是否预设为大小写扩展,若是,进入步骤S2,若否,进入步骤S3;
在本实施方式中,所述大小写扩展包括三种字符特征类型:全密码小写、全密码大写和首字母大写。
步骤S2、将所述密码中的字母密码进行大小写扩展,将扩展的字母加入所述密码集合,然后进入步骤S3;这样可以覆盖更多的密码。
步骤S3、获取密码集合中密码所要构成字典密码的密码段数N,判断N值是否为0,若是,直接按照设置的暴力遍历的规则遍历,若否,进入步骤S4,其中,字典密码的密码空间是密码集合中密码数的N次方;
N值指的是构成字典密码的密码段数,即在最终的遍历密码中所包含的密码集合中密码的个数,N为0时表示字典密码不出现,即遍历的时候不将字典密码代入算法参与遍历,只遍历暴力遍历的规则所构成的密码。
比如,字典中包含1个密码“Test”,其中暴力遍历的规则所构成的密码中,一段规则为3位小写,一段规则为3位数字;当N为0时,遍历的密码就只是暴力遍历的规则规则构成的密码,如“abc123”;当N为1时,则密码集合中的密码出现1次,构成的密码如“abcTest123”,N为2,则字典密码出现2次,构成的密码如“Test123abcTest”。
字典的密码数通常较多,如果N设置过大也将使密码空间暴涨。一般情况下,复杂密码最多出现3次简单密码组合,因此N可取值0-3。
步骤S4、获取设置的暴力遍历的规则。其中,规则的长度随密码集合中密码的组合数和规则字符集中的字符数的增大而减小;
具体地,N较小可以设置较长的规则,以覆盖尽可能多密码空间;规则长度越长,密码空间越大,遍历时间越长,因此不应设置太长。例如,当N=1时,可采用9位以内小写、数字的分段规则或12位以内数字规则;N=2时,可采用6位以内小写、数字的分段规则或8位以内数字规则;N=3时,可采用3位以内小写、数字分段规则或4位以内数字规则。
步骤S5、将所述暴力遍历的规则和密码集合作为遍历算法的数据源,使用遍历算法对密码集合中的密码构造的字典密码和暴力规则构造的暴力密码进行构造生成最终的遍历密码。
请参阅图2,是图1中步骤S5的具体实现流程图。所述步骤S5具体实现步骤包括:
S51、将密码合集中的密码定义为密码段,使用密码段进行密码段数为N的排列组合生成字典密码,使用分隔符号分隔密码段,分隔符号的个数为N+1个。在本实施方式中,在同一字典密码中的不同密码段的字符特征相同。
例如,设置分隔符号位特殊符号‘#’来标识密码间的分隔,以字典中包含两个密码“hello”,“china”为例,如在步骤S1中判定不对密码进行大小写扩展,当N取值为2时,生成密码集合如下:
[#hello#hello#,#hello#china#,#china#hello#,#china#china#],总共有4个字典密码。
如在步骤S2中对密码大小进行了扩展,并且由于一般情况处于同一段中的不同密码具有相同的字符特征,因此得到密码集合如下:
[#hello#hello#,#hello#china#,#china#hello#,#china#china#,#Hello#Hello#,#Hello#China#,#China#Hello#,#China#China#,#HELLO#HELLO#,#HELLO#CHINA#,#CHINA#HELLO#,#CHINA#CHINA#],总共12种排列组合,本方案过滤掉相同密码段中不同特征密码的排列组合,将排列组合数由36种降为12种,减少密码空间增加遍历速度。
S52、根据暴力遍历规则构造暴力密码;
取暴力遍历的规则中各段字符集的第1个字符填充暴力密码段,各暴力密码段之间用第二分隔符分隔,例如“*”,构造出第1个分段密码;
固定高位密码,即固定第1位之后的密码,然后依次使用对应字符集的所有字符对第1位密码轮进行换,每次轮换就构造出1个分段密码;
第1位密码完成所有字符轮换后,第2位密码选取对应字符集的下一个字符,然后第1位再次轮换字符集的所有字符;
依此类推,直到最高位完成其对应字符集所有字符的轮换,至此完成暴力遍历规则中该条分段规则的遍历。
以暴力遍历规则为3位数字和3位小写的组合为例,密码遍历过程如下,其中“*”代表密码中段与段的分隔符:
000*aaa->100*aaa->200*aaa->...->900*aaa->010*aaa->110*aaa->...->910*aaa->...->999*aaa->000*baa->...->999*zaa->...>999*zzz。
S53、选取一组未参与遍历的字典密码作为当前字典密码,然后进入步骤S54;例如选取上述字典密码“#hello#hello#”作为当前密码。
S54、选取一个暴力密码作为当前字典密码的当前带入密码,进入步骤S45,其中当前带入密码有K段密码段,1≤K;例如选取上述暴力规则密码组合集中第一组密码“000*aaa”作为当前带入密码。
S55、用当前带入密码依次替换不同位置的分隔符号同时将其它分隔符号删除生成遍历密码码,然后用当前带入密码的第k段密码段替换第n个分隔符号,同时用从第k+1到第K段的密码段组合依次替换第n+1到N个分隔符并将其它分隔符删除生成遍历密码,然后进入步骤S46,其中1≤k≤n≤N;
例如,首先将000*aaa依次替换“#hello#hello#”中不同位置的“#”得到遍历密码:000aaa hello hello、hello000aaa hello、hello hello000aaa。然后用第1段密码段“000”替换第1个分隔符号,同时用第2段密码段依次替换第2到3个分隔符构成遍历密码,以及用第1段密码段“000”替换第2个分隔符号,同时用第2段密码替换第3个分隔符构成如下遍历密码:000hello aaa hello、000hello hello aaa、hello000hello aaa。
S56、判断n值是否已经遍历从1到N,若是,则进入步骤S57,若否,将n值加1并返回步骤S55。
S57、判定当前带入密码遍历完毕,判断是否还存在未作为当前字典密码的当前带入密码,若是,返回步骤S44选取下一个当前带入密码,若否,则进入步骤S58;
S58、判定当前字典密码遍历完毕,判断是否还存在未参与遍历的字典密码,若是,返回步骤S53选取下一组当前字典密码,若否,执行步骤S59;
S59、将全部遍历密码生成最终的遍历密码。例如,只存一组密码字典“#hello#hello#”,则汇总所述全部的的遍历密码生成最终的遍历密码:000aaahello hello、hello000aaa hello、hello hello000aaa、000hello aaa hello、000hellohello aaa、hello000hello aaa。
请参阅图3,是本发明一实施方式中一种基于字典的复杂密码遍历装置的功能模块图,所述的基于字典的复杂密码遍历方法应用于该装置中,该基于字典的复杂密码遍历装置包括:第一判断单元、扩展单元、第二判断单元、暴力遍历单元以及最终遍历单元。
第一判断单元用于从字典文件中读取密码生成密码集合,然后判断是否预设为大小写扩展,并当判定结果为否时通知下述第二判断单元执行操作。
扩展单元用于当第一判断单元判定结果为是时,将所述密码中的字母密码进行大小写扩展,将扩展的字母加入所述密码集合,然后通知下述第二判断单元执行操作。
第二判断单元用于获取密码集合中密码所要构成字典密码的密码段数N,判断N值是否为0,若是,直接按照设置的暴力遍历的规则遍历,其中,字典密码的密码空间是密码集合中密码数的N次方。
暴力遍历单元用于当第二判断单元的判定结果为否时,获取设置的暴力遍历的规则,其中,规则的长度随密码集合中密码的组合数和规则字符集中的字符数的增大而减小。
最终遍历单元用于将所述暴力遍历规则和密码集合作为遍历算法的数据源,使用遍历算法对密码集合中的密码构造的字典密码和暴力规则构造的暴力密码进行构造生成最终的遍历密码。
在本实施方式中,所述大小写扩展包括三种字符特征类型:全密码小写、全密码大写和首字母大写。
请参阅图4,是图3中最终遍历单元的功能模块图,所述最终遍历单元具体包括:第一生成子单元、第二生成子单元、第一选取子单元、第二选取子单元、带入子单元、第一判断子单元、第二判断子单元、第三判断子单元、以及最终生成子单元。
第一生成子单元用于将密码合集中的密码定义为密码段,使用密码段进行密码段数为N的排列组合生成字典密码,使用分隔符号分隔密码段,分隔符号的个数为N+1个。在本实施方式中,同一字典密码中的不同密码段的字符特征相同。
第二生成子单元用于根据暴力遍历规则构造暴力密码。
第一选取子单元用于当第一生成子单元操作完成后,选取一组未参与遍历的字典密码作为当前字典密码。
第二选取子单元用于当第一选取子单元选取完成后,选取一个暴力密码作为当前字典密码的当前带入密码,其中当前带入密码有K段密码段,1≤K。
带入子单元用于当第二选取子单元选取完成后,用当前带入密码依次替换不同位置的分隔符号同时将其它分隔符号删除生成遍历密码码,然后用当前带入密码的第k段密码段替换第n个分隔符号,同时用从第k+1到第K段的密码段组合依次替换第n+1到N个分隔符并将其它分隔符删除生成遍历密码,其中1≤k≤n≤N。
第一判断子单元用于当带入子单元完成操作后,判断n值是否已经遍历从1到N,当判定结果为否是将n值加1并通知带入子单元执行操作。
第二判断子单元用于当第一判断子单元判定结果为是时,判定当前带入密码遍历完毕,判断是否还存在未作为当前字典密码的当前带入密码,当判定结果为是时通知第二选取子单元选取下一个当前带入密码。
第三判断子单元用于当第二判断子单元判定结果为否时,判定当前字典密码遍历完毕,判断是否还存在未参与遍历的字典密码,当判定结果为是时通知第一选取子单元选取下一组当前字典密码。
最终生成子单元用于当第三判断子单元判定结果为否时,将带入子单元生成的全部遍历密码生成最终的遍历密码。
目前的字典,通常都能达到上亿条的密码,但绝大部分可以用更简单的元密码来组合得到,这些元密码一般都是由常用的单词、拼音和数字等组成,总量不超过5万条。使用元密码构成的字典,可以大大减少遍历的密码空间,并且可以组合出足够复杂的密码。
以密码HelloLiuHello88为例,专利《复杂密码快速遍历算法及装置》在知道密码中包含单词“Hello”的前提下,其密码空间为757,193,143,529,996,160个密码。而单词“Hello”和拼音“Liu”是常用密码,“88”其实也为常用密码,已经存在于字典中,但为了便于说明更普遍的情况,假设该密码不存在于字典中。根据本方案的算法,字典的密码根据出现次数,组合数将被扩展到3*50000+3*500002+3*500003,规则设定为1-2位大写、小写和数字(由于本用例在2位规则时已经可以结束遍历,因此只计算1-2位的密码空间;设置大小写和数字,是为了与专利《复杂密码快速遍历算法及装置》采用相同的字符集)。当密码字典出现0次时,密码空间为10+26+26+102+262+262=1514,出现1次时,密码空间为3*50000*2*1514=454,200,000,出现2次时,密码空间为3*500002*3*1514=34,065,000,000,000,出现3次时,密码空间为3*500003*4*1514=2,271,000,000,000,000,000,由此可以计算出采用本方案总的密码空间为2,271,034,065,454,201,514,空间仅比专利《复杂密码快速遍历算法及装置》知道密码中包含单词“Hello”情况的密码空间增大了2倍。计算空间时为了便于计算,字典密码的扩展只是简单地乘系数3,但实际上,字典中包含数字密码是不需要进行扩展的,而且组合过程中存在构造出相同的密码,这部分需要过滤,因此总的密码空间比计算的空间要更小。
本发明的基于字典的复杂密码遍历方法及装置,提出了字典与暴力规则混合遍历的算法,在没有任何密码信息的情况下,可以在短时间内完成复杂密码的遍历。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (8)

1.一种基于字典的复杂密码遍历方法,其特征在于,包括如下步骤:
S1、从字典文件中读取密码生成密码集合,然后判断是否预设为大小写扩展,若是,进入步骤S2,若否,进入步骤S3;
S2、将所述密码中的字母密码进行大小写扩展,将扩展的字母加入所述密码集合,然后进入步骤S3;
S3、获取密码集合中密码所要构成字典密码的密码段数N,判断N值是否为0,若是,直接按照设置的暴力遍历的规则遍历,若否,进入步骤S4,其中,字典密码的密码空间是密码集合中密码数的N次方;
S4、获取设置的暴力遍历的规则,规则的长度随密码集合中密码的组合数和规则字符集中的字符数的增大而减小;
S5、将所述暴力遍历规则和密码集合作为遍历算法的数据源,使用遍历算法对密码集合中的密码构造的字典密码和暴力规则构造的暴力密码进行构造生成最终的遍历密码。
2.根据权利要求1所述的一种基于字典的复杂密码遍历方法,其特征在于,所述大小写扩展包括三种字符特征类型:全密码小写、全密码大写和首字母大写。
3.根据权利要求1所述的一种基于字典的复杂密码遍历方法,其特征在于,所述步骤S5具体步骤包括:
S51、将密码合集中的密码定义为密码段,使用密码段进行密码段数为N的排列组合生成字典密码,使用分隔符号分隔密码段,分隔符号的个数为N+1个;
S52、根据暴力遍历规则构造暴力密码:
S53、选取一组未参与遍历的字典密码作为当前字典密码,然后进入步骤S54;
S54、选取一个暴力密码作为当前字典密码的当前带入密码,进入步骤S55,其中当前带入密码有K段密码段,1≤K;
S55、用当前带入密码依次替换不同位置的分隔符号同时将其它分隔符号删除生成遍历密码码,然后用当前带入密码的第k段密码段替换第n个分隔符号,同时用从第k+1到第K段的密码段组合依次替换第n+1到N个分隔符并将其它分隔符删除生成遍历密码,然后进入步骤S56,其中1≤k≤n≤N;
S56、判断n值是否已经遍历从1到N,若是,则进入步骤S57,若否,将n值加1并返回步骤S55;
S57、判定当前带入密码遍历完毕,判断是否还存在未作为当前字典密码的当前带入密码,若是,返回步骤S54选取下一个当前带入密码,若否,则进入步骤S58;
S58、判定当前字典密码遍历完毕,判断是否还存在未参与遍历的字典密码,若是,返回步骤S53选取下一组当前字典密码,若否,执行步骤S59;
S59、将全部遍历密码生成最终的遍历密码。
4.根据权利要求3所述的一种基于字典的复杂密码遍历方法,其特征在于,所述步骤S51中在同一字典密码中的不同密码段的字符特征相同。
5.一种基于字典的复杂密码遍历装置,其特征在于,包括:
第一判断单元,用于从字典文件中读取密码生成密码集合,然后判断是否预设为大小写扩展,并当判定结果为否时通知下述第二判断单元执行操作;
扩展单元,用于当第一判断单元判定结果为是时,将所述密码中的字母密码进行大小写扩展,将扩展的字母加入所述密码集合,然后通知下述第二判断单元执行操作;
第二判断单元,用于获取密码集合中密码所要构成字典密码的密码段数N,判断N值是否为0,若是,直接按照设置的暴力遍历的规则遍历,其中,字典密码的密码空间是密码集合中密码数的N次方;
暴力遍历单元,用于当第二判断单元的判定结果为否时,获取设置的暴力遍历的规则,其中,规则的长度随密码集合中密码的组合数和规则字符集中的字符数的增大而减小;
最终遍历单元,用于将所述暴力遍历规则和密码集合作为遍历算法的数据源,使用遍历算法对密码集合中的密码构造的字典密码和暴力规则构造的暴力密码进行构造生成最终的遍历密码。
6.根据权利要求5所述的一种基于字典的复杂密码遍历装置,其特征在于,所述大小写扩展包括三种字符特征类型:全密码小写、全密码大写和首字母大写。
7.根据权利要求6所述的一种基于字典的复杂密码遍历装置,其特征在于,所述最终遍历单元具体包括:
第一生成子单元,用于将密码合集中的密码定义为密码段,使用密码段进行密码段数为N的排列组合生成字典密码,使用分隔符号分隔密码段,分隔符号的个数为N+1个;
第二生成子单元,用于根据暴力遍历规则构造暴力密码:
第一选取子单元,用于当第一生成子单元操作完成后,选取一组未参与遍历的字典密码作为当前字典密码;
第二选取子单元,用于当第一选取子单元选取完成后,选取一个暴力密码作为当前字典密码的当前带入密码,其中当前带入密码有K段密码段,1≤K;
带入子单元,用于当第二选取子单元选取完成后,用当前带入密码依次替换不同位置的分隔符号同时将其它分隔符号删除生成遍历密码码,然后用当前带入密码的第k段密码段替换第n个分隔符号,同时用从第k+1到第K段的密码段组合依次替换第n+1到N个分隔符并将其它分隔符删除生成遍历密码,其中1≤k≤n≤N;
第一判断子单元,用于当带入子单元完成操作后,判断n值是否已经遍历从1到N;
第二判断子单元,用于当第一判断子单元判定结果为是时,判定当前带入密码遍历完毕,判断是否还存在未作为当前字典密码的当前带入密码,当判定结果为是时通知第二选取子单元选取下一个当前带入密码;
第三判断子单元,用于当第二判断子单元判定结果为否时,判定当前字典密码遍历完毕,判断是否还存在未参与遍历的字典密码,当判定结果为是时通知第一选取子单元选取下一组当前字典密码;
最终生成子单元,用于当第三判断子单元判定结果为否时将带入子单元生成的全部遍历密码生成最终的遍历密码。
8.根据权利要求7所述的一种基于字典的复杂密码遍历装置,其特征在于,同一字典密码中的不同密码段的字符特征相同。
CN201410007236.8A 2014-01-07 2014-01-07 一种基于字典的复杂密码遍历方法及装置 Active CN103701590B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410007236.8A CN103701590B (zh) 2014-01-07 2014-01-07 一种基于字典的复杂密码遍历方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410007236.8A CN103701590B (zh) 2014-01-07 2014-01-07 一种基于字典的复杂密码遍历方法及装置

Publications (2)

Publication Number Publication Date
CN103701590A true CN103701590A (zh) 2014-04-02
CN103701590B CN103701590B (zh) 2017-02-08

Family

ID=50362996

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410007236.8A Active CN103701590B (zh) 2014-01-07 2014-01-07 一种基于字典的复杂密码遍历方法及装置

Country Status (1)

Country Link
CN (1) CN103701590B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104717058A (zh) * 2015-02-10 2015-06-17 厦门市美亚柏科信息股份有限公司 密码遍历方法和装置
CN105262584A (zh) * 2015-09-08 2016-01-20 厦门市美亚柏科信息股份有限公司 分布式密码恢复方法和系统
CN105978678A (zh) * 2016-04-26 2016-09-28 石峰 基于频率分析和字母排查的代替密码破译方法
CN113407924A (zh) * 2021-06-01 2021-09-17 厦门市美亚柏科信息股份有限公司 基于无障碍服务的打开应用锁方法、终端设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1441567A (zh) * 2003-04-03 2003-09-10 东南大学 破解有线同等私密类密码的方法
US7418596B1 (en) * 2002-03-26 2008-08-26 Cellco Partnership Secure, efficient, and mutually authenticated cryptographic key distribution
CN102983967A (zh) * 2012-12-06 2013-03-20 厦门市美亚柏科信息股份有限公司 复杂密码快速遍历算法及装置
CN103049709A (zh) * 2013-01-22 2013-04-17 上海交通大学 基于生成元扩展彩虹表的密码恢复系统及其恢复方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7418596B1 (en) * 2002-03-26 2008-08-26 Cellco Partnership Secure, efficient, and mutually authenticated cryptographic key distribution
CN1441567A (zh) * 2003-04-03 2003-09-10 东南大学 破解有线同等私密类密码的方法
CN102983967A (zh) * 2012-12-06 2013-03-20 厦门市美亚柏科信息股份有限公司 复杂密码快速遍历算法及装置
CN103049709A (zh) * 2013-01-22 2013-04-17 上海交通大学 基于生成元扩展彩虹表的密码恢复系统及其恢复方法

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104717058A (zh) * 2015-02-10 2015-06-17 厦门市美亚柏科信息股份有限公司 密码遍历方法和装置
CN104717058B (zh) * 2015-02-10 2018-03-20 厦门市美亚柏科信息股份有限公司 密码遍历方法和装置
CN105262584A (zh) * 2015-09-08 2016-01-20 厦门市美亚柏科信息股份有限公司 分布式密码恢复方法和系统
CN105262584B (zh) * 2015-09-08 2018-09-07 厦门市美亚柏科信息股份有限公司 分布式密码恢复方法和系统
CN105978678A (zh) * 2016-04-26 2016-09-28 石峰 基于频率分析和字母排查的代替密码破译方法
CN113407924A (zh) * 2021-06-01 2021-09-17 厦门市美亚柏科信息股份有限公司 基于无障碍服务的打开应用锁方法、终端设备及存储介质
CN113407924B (zh) * 2021-06-01 2022-11-11 厦门市美亚柏科信息股份有限公司 基于无障碍服务的打开应用锁方法、终端设备及存储介质

Also Published As

Publication number Publication date
CN103701590B (zh) 2017-02-08

Similar Documents

Publication Publication Date Title
JP2024020386A (ja) 正規表現コードの組み合わせ上で最長共通サブシーケンスアルゴリズムを用いる正規表現生成
CN103226606B (zh) 查询选取方法及系统
Broutin et al. Asymptotics of trees with a prescribed degree sequence and applications
CN105095237A (zh) 用于生成非关系数据库的模式的方法和设备
Neary et al. Four small universal Turing machines
CN104579360B (zh) 一种数据处理的方法和设备
CN103701590A (zh) 一种基于字典的复杂密码遍历方法及装置
CN112667860A (zh) 一种子图匹配方法、装置、设备及存储介质
CN111078689B (zh) 一种非连续型预排序遍历树算法的数据处理方法及系统
US20190056235A1 (en) Path querying method and device, an apparatus and non-volatile computer storage medium
CN107634765B (zh) 一种物联网编码方法及系统
CN109558159A (zh) 游戏中用户界面的更新方法和装置
CN105264488A (zh) 使用数组对来合并有序列表
Hyttinen et al. On‐complete equivalence relations on the generalized Baire space
Langberg et al. Coding for the $\boldsymbol\ell _\infty $-Limited Permutation Channel
Forman et al. Projections of the Aldous chain on binary trees: Intertwining and consistency
CN107547378B (zh) 一种vpn路由学习方法和装置
JP2016031567A (ja) パーソナル情報匿名化装置
CN106569986B (zh) 字符串替换方法和装置
CN104572687A (zh) 微博传播的关键用户识别方法和装置
Adan et al. Analysis of structured Markov processes
CN105447134B (zh) 频繁项集挖掘算法的优化方法
CN110162309A (zh) 参数校验方法及装置
CN114780533A (zh) 基于双数组字典树的存储空间分配方法、装置及电子设备
Zion et al. Learning human behaviors and lifestyle by capturing temporal relations in mobility patterns.

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant