[发明专利]一种基于键盘规则的密码遍历方法有效
申请号: | 201510001710.0 | 申请日: | 2015-01-05 |
公开(公告)号: | CN104579642B | 公开(公告)日: | 2018-02-23 |
发明(设计)人: | 张光斌;王海滨;张永光;汤伟宾 | 申请(专利权)人: | 厦门市美亚柏科信息股份有限公司 |
主分类号: | H04L9/08 | 分类号: | H04L9/08 |
代理公司: | 厦门市精诚新创知识产权代理有限公司35218 | 代理人: | 巫丽青 |
地址: | 361000 福建省厦门*** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 键盘 规则 密码 遍历 方法 | ||
技术领域
本发明涉及密码加解密领域,具体涉及一种基于键盘规则的密码遍历方法。
背景技术
暴力遍历和字典遍历是目前密码恢复中最常用的两种遍历方式。暴力遍历就是对用户制定的规则内的所有密码进行遍历,字典遍历则是对字典文件中的密码进行遍历。暴力方式往往需要较多的规则来覆盖尽可能大的密码空间以提高密码恢复的成功率,但密码空间太大将造成遍历时间倍增,甚至需要成百上千年的时间,使密码恢复失去意义。字典遍历方式的成功率往往受限于字典中的密码数,由于字典的密码数一般不会太多,因此可以短时间内完成密码的遍历,但一般只能恢复出常用的密码,对于一些复杂密码无能为力。
如何在有效的时间内恢复出尽可能复杂的密码是当前的主要研究方向。目前,针对暴力方式,研究主要集中在通过各种硬件加速、算法优化、分布式技术来提高遍历的速度,以此来缩短遍历的时间。但是通过提高遍历速度的方法只能使遍历时间线性减小,而密码长度增长、密码字符集增大却使遍历时间几何级数增大;而针对字典遍历,研究主要集中在对字典的收集方面,收集的密码数比较有限。
专利《复杂密码快速遍历算法及装置》和《一种基于字典的复杂密码遍历算法》在暴力遍历和字典遍历的基础上,设计了针对具有分段特征的密码遍历算法。但在常用的密码中,有一种密码没有分段特征,无法用以上两个专利的算法来实现密码遍历,而这种密码又具有很明显的特征,那就是符合键盘规则的密码。
键盘规则是指按照键盘上一定的按键顺序构成密码的规则,键盘规则可以根据不同的按键顺序构成密码。例如“1q2w3e4r5t6y7u8i9o0p”,是按照键盘上数字和字母两排交叉输出,而实际使用的密码段可能是“1q2w”、“1q2w3e4r”、“4r5t6y”等各种长度。
普通的暴力遍历算法,只能代入所有可能的键盘字符进行全排列组合,即使8位以内的密码在短时间内都无法完成遍历。由于其无法使用键盘排列顺序这个特征,使其遍历的密码绝大部分是无效的。
发明内容
解决上述技术问题,本发明提供了一种基于键盘规则的密码遍历方法,针对键盘规则的特征,设计了相应的遍历算法,可以实现对不同键盘顺序、不同起始位置、不同长度的密码进行遍历。
为了达到上述目的,本发明所采用的技术方案是,一种基于键盘规则的密码遍历方法,包括以下步骤:
步骤1:获取键盘上的字符并根据键盘字符规则建立密码集合,
步骤2:设定密码集合的暴力遍历规则,
步骤3:将暴力遍历规则和密码集合作为遍历算法的数据源,使用遍历算法对密码集合中的字符进行构造生成最终的遍历密码。
进一步的,所述密码集合包括第一遍历字符表和第二遍历字符表,该第一和第二遍历字符表均为4行13列,第一遍历字符表依据键盘字符规则存储单纯按下按键后输入的字符,第二遍历字符表依据字符键盘规则存储按住“Shift”按键后输入的字符,且根据键盘字符规则,所述第一和第二遍历字符表中的第1行均顶格保存,第2至第4行均空1格开始保存。
更进一步的,所述步骤2中,第一遍历字符表和第二遍历字符表暴力遍历规则包括:
规则1:不跨行遍历规则,锁定字符遍历表中的某行以从左往右、从右往左、从左往右再返回、从右往左再返回规则遍历,
规则2:从上往下遍历规则,锁定字符遍历表中的某列以从上往下,从下往上,从上往下再返回,从下往上再返回规则遍历,
规则3:跨行遍历规则,锁定字符遍历表中的某几行以各行同方向、各行反方向规则遍历,
规则4:跨列遍历规则,锁定字符遍历表中的某几列以各列同方向、各列反方向的规则遍历。
本发明通过采用上述技术方案,与现有技术相比,具有如下优点:
本方案针对键盘规则的特征,设计了相应的遍历算法,可以实现对不同键盘顺序、不同起始位置、不同长度的密码进行遍历。
附图说明
图1是本发明的实施例初始时A与B均指向第1行第1列的示意图。
图2是本发明的实施例B往右移1位的示意图。
图3是本发明的实施例A往右移1位的示意图。
图4是本发明的实施例A与B重合,A返回第1位,B右移1位的示意图。
图5是本发明的实施例A往右移1位的示意图。
图6是本发明的实施例A和B都指向最后一列的示意图。
图7是本发明的实施例A和B都改变移动方向,B向左移一位的示意图。
图8是本发明的实施例A左移一位的示意图。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于厦门市美亚柏科信息股份有限公司,未经厦门市美亚柏科信息股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510001710.0/2.html,转载请声明来源钻瓜专利网。