首先声明:本教程只用于技术交流,请勿用于非法用途。请严格遵循相关法律法规。

晚上莫名想要折腾一下aircraft,虽然本学校用的网络是校园网,破解了wifi也不能直接用,还得破解别人的账号密码,但是这个就越界了,所以我们只是实验性质的做一下。但是突然想起来影响破解成功率的最大因素就是字典的好坏,反正都是暴力破解,如果没有一个趁手的字典,再怎么努力也没用。

一般来说获取字典的方式都是直接从网上下载,可是据我个人的经验来讲,网上下载的字典并没什么大用。一是那些字典多为英文单词,不符合中国国情,我猜大部分人用的密码都是与自己相关的,比如姓名,生日,女朋友生日,或者这几种的组合等等,这也就是为什么社会工程学也是黑客必备课程之一的原因。二是密码字典太小了,如果就几兆的字典,你想他能破解出什么来?一共就没几条数据,能破解的东西很有限。或者网上动辄几十G的字典,下载又耗费时间,又耗费流量。所以我打算自己生成一个能破解大多数密码的字典。

正好看到极客君发布的一篇文章中(https://www.cnblogs.com/lifengfneg/p/5992649.html)有生成字典的相关原理,便想着自己动手操作一下。

首先用列表存储最常用密码组合,生日的年、月、日。

然后再存储名字的姓,名的拼音,与生日的年月日和符号组合,可能是大部分人的密码组成方式。

通过这些字符串的排列组合,是不是能够造出一个符合我们用的字典生成器呢

有的字典可能还不够,大家可以帮我再找找,不过应该可以破解大部分人的密码了,不信可以找找自己用的密码,是不是在我生成的字典里呢?

接下来是把这些字符串拼接起来,我不是什么大神,只能用最笨的办法,循环遍历列表,然后把每个值追加写入到字典文件中。这种方法的复杂度真的很高,如果是6个字符串拼接,那么时间复杂度可以达到O(n6),希望有大神可以给指导完善一下啦。

名字相同也可以,这样自己写的时候更好区分一点,下面的gen4,5,6都和上面相同,只是多加了几重循环。

函数定义好了,就差往里传参数了,下面就是组合环节。其实还可以有很多组合方法,只不过组合的方法越多,你的字典就越大,可以根据实际需要组合。用我的方法组合出来的字典有10多个G,应该能应付大部分情况了,如果不能,那就接着生成更全的字典,或者将漏掉的组合方式生成到别的字典文件中,利用多个字典进行破解。

看看我的组合里面有没有你的密码呢?有的话考虑一下换个密码吧~~

最后就是生成的密码字典了,每次打印的好处是你不用怀疑自己的程序没干活,实时观测进度嘛~~~最后生成的字典文件如下,一共13.1G,要是把所有人拼音输进去可能更容易就破解了啊,就是字典太大了。

不过也不用担心,毕竟生成又不像下载一样费流量,而且时间还慢。只需要下载一个字典生成代码,简简单单生成密码文件~~

最后欢迎大家光临我的博客

陈京九的博客

Python生成密码字典教程相关推荐

  1. Python生成密码字典写入文件算法

    Python生成密码字典写入文件算法 简介 主要原理 代码 如果有其他可以提高时空复杂度的算法可以优化一下 简介 密码字典生成原理比较简单,主要靠正常的按序叠加生成,故所需时间以及较大的内存资源 主要 ...

  2. python创建一个字典、保存用户名和密码_Python实现生成密码字典的方法示例

    本文实例讲述了Python实现生成密码字典的方法.分享给大家供大家参考,具体如下: key_data.py 文件存放组成数据,可以随时扩充及简化. #coding=utf-8 #!/usr/bin/p ...

  3. python wifi密码字典

    python wifi密码字典 WiFi默认密码是8位英文字母大写+小写+数字(有些时候还有特殊符号),密码成分可以自行更改.自己按照代码试了一下,结果2开头还没开始文本大少就超过了6GB(注意:如果 ...

  4. php 生成密码字典,密码字典生成工具crunch的简单使用

    案例1: crunch 1 8 #生成最小1位,最大8位,由26个小写字母为元素的所有组合 案例2: crunch 1 6 abcdefg #生成最小为1,最大为6.由abcdefg为元素的所有组合 ...

  5. Python生成一个字典

    python字典 相同KEY整成一个列表? #encoding:utf-8 #Python3.6.0 aaa=[['韦小宝','阿珂'],['郭靖','黄蓉'],['韦小宝','双儿']] dic={ ...

  6. python生成json_Python JSON 教程

    Python JSON 教程 本文我们通过示例学习python中解析.读取和写入json.同时也涉及到转换json至字典和格式化打印. 1. json 介绍 JSON (JavaScript Obje ...

  7. python生成词云图_用python生成词云图教程

    闲话不多说,直接上干货! STEP1 安装jieba包 点击桌面菜单栏的开始按钮,输入cmd回车,进入命令窗口. 在命令行输入 pip install jieba回车,安装jieba包. 安装word ...

  8. python 生成解密字典

    用于解密时生成字典,也可以内置调用,减少IO消耗. 直接根据长度返回字典 def create_dictionary(lenth:int):words = ''# 生成字根(大小写+数字)for i ...

  9. python 生成嵌套字典

    import collections import jsontree=lambda:collections.defaultdict(tree) some_dict=tree() some_dict[' ...

最新文章

  1. Spring Boot“内存泄漏”?看看美团大牛是如何排查的
  2. Java基础笔记(入门,语法基础,流程控制,数组)
  3. 漫画:什么是 “建造者模式” ?
  4. Android中View绘制流程以及invalidate()等相关方法分析
  5. java中文乱码decode_java中文乱码
  6. LaTex:算法排版
  7. hdu5443(2015长春网络赛G题)
  8. springmvc jpa_使用JavaConfig的SpringMVC4 + Spring Data JPA + SpringSecurity配置
  9. 数据结构与算法--7.树的基础知识
  10. Gprinter Android SDK V2.1.4 使用说明
  11. rpm遇到的坑-与VMP冲突
  12. 【Red5流媒体服务器搭建】
  13. 浙大PAT 1051
  14. 人工智能AI对客户服务的影响正在形成
  15. 计算机卸载打不开,电脑卸载wps后excel打不开怎么办
  16. 右键菜单项删除 pycharm vs
  17. 详细的苹果快捷键,赶快保存吧!
  18. Java面试题-微服务
  19. 光驱刻录软件提示需要计算机管理员权限,我想刻录系统提示【找不到光盘刻录机。请确保已正确安装刻录机,并且有刻录光盘的相应权限。】是什么意思...
  20. 忙里偷闲( ˇˍˇ )闲里偷学【C语言篇】——(4)for == while ?

热门文章

  1. 本地机器 Google Colab 通过 SSH 连接远程服务器
  2. workflow engine Ruote 安装
  3. GEE学习笔记:在Google Earth Engine(GEE)中批量下载Sentinel-2影像
  4. JS测试CND js文件加载速度
  5. 8086汇编之乘法指令MUL
  6. 【iOS小白教程】如何打包:xcodebuild和xcrun介绍
  7. Efficient multi-keyword ranked query over encrypted data in cloud computing (4)
  8. 《强化学习周刊》第27期:MIT研究表明通用LTL目标的强化学习很难实现
  9. mysql“Access denied for user 'root'@'IP地址'
  10. 求含n个元素的集合的幂集