Python生成密码字典教程
首先声明:本教程只用于技术交流,请勿用于非法用途。请严格遵循相关法律法规。
晚上莫名想要折腾一下aircraft,虽然本学校用的网络是校园网,破解了wifi也不能直接用,还得破解别人的账号密码,但是这个就越界了,所以我们只是实验性质的做一下。但是突然想起来影响破解成功率的最大因素就是字典的好坏,反正都是暴力破解,如果没有一个趁手的字典,再怎么努力也没用。
一般来说获取字典的方式都是直接从网上下载,可是据我个人的经验来讲,网上下载的字典并没什么大用。一是那些字典多为英文单词,不符合中国国情,我猜大部分人用的密码都是与自己相关的,比如姓名,生日,女朋友生日,或者这几种的组合等等,这也就是为什么社会工程学也是黑客必备课程之一的原因。二是密码字典太小了,如果就几兆的字典,你想他能破解出什么来?一共就没几条数据,能破解的东西很有限。或者网上动辄几十G的字典,下载又耗费时间,又耗费流量。所以我打算自己生成一个能破解大多数密码的字典。
正好看到极客君发布的一篇文章中(https://www.cnblogs.com/lifengfneg/p/5992649.html)有生成字典的相关原理,便想着自己动手操作一下。
首先用列表存储最常用密码组合,生日的年、月、日。
然后再存储名字的姓,名的拼音,与生日的年月日和符号组合,可能是大部分人的密码组成方式。
通过这些字符串的排列组合,是不是能够造出一个符合我们用的字典生成器呢
有的字典可能还不够,大家可以帮我再找找,不过应该可以破解大部分人的密码了,不信可以找找自己用的密码,是不是在我生成的字典里呢?
接下来是把这些字符串拼接起来,我不是什么大神,只能用最笨的办法,循环遍历列表,然后把每个值追加写入到字典文件中。这种方法的复杂度真的很高,如果是6个字符串拼接,那么时间复杂度可以达到O(n6),希望有大神可以给指导完善一下啦。
名字相同也可以,这样自己写的时候更好区分一点,下面的gen4,5,6都和上面相同,只是多加了几重循环。
函数定义好了,就差往里传参数了,下面就是组合环节。其实还可以有很多组合方法,只不过组合的方法越多,你的字典就越大,可以根据实际需要组合。用我的方法组合出来的字典有10多个G,应该能应付大部分情况了,如果不能,那就接着生成更全的字典,或者将漏掉的组合方式生成到别的字典文件中,利用多个字典进行破解。
看看我的组合里面有没有你的密码呢?有的话考虑一下换个密码吧~~
最后就是生成的密码字典了,每次打印的好处是你不用怀疑自己的程序没干活,实时观测进度嘛~~~最后生成的字典文件如下,一共13.1G,要是把所有人拼音输进去可能更容易就破解了啊,就是字典太大了。
不过也不用担心,毕竟生成又不像下载一样费流量,而且时间还慢。只需要下载一个字典生成代码,简简单单生成密码文件~~
最后欢迎大家光临我的博客
陈京九的博客
Python生成密码字典教程相关推荐
- Python生成密码字典写入文件算法
Python生成密码字典写入文件算法 简介 主要原理 代码 如果有其他可以提高时空复杂度的算法可以优化一下 简介 密码字典生成原理比较简单,主要靠正常的按序叠加生成,故所需时间以及较大的内存资源 主要 ...
- python创建一个字典、保存用户名和密码_Python实现生成密码字典的方法示例
本文实例讲述了Python实现生成密码字典的方法.分享给大家供大家参考,具体如下: key_data.py 文件存放组成数据,可以随时扩充及简化. #coding=utf-8 #!/usr/bin/p ...
- python wifi密码字典
python wifi密码字典 WiFi默认密码是8位英文字母大写+小写+数字(有些时候还有特殊符号),密码成分可以自行更改.自己按照代码试了一下,结果2开头还没开始文本大少就超过了6GB(注意:如果 ...
- php 生成密码字典,密码字典生成工具crunch的简单使用
案例1: crunch 1 8 #生成最小1位,最大8位,由26个小写字母为元素的所有组合 案例2: crunch 1 6 abcdefg #生成最小为1,最大为6.由abcdefg为元素的所有组合 ...
- Python生成一个字典
python字典 相同KEY整成一个列表? #encoding:utf-8 #Python3.6.0 aaa=[['韦小宝','阿珂'],['郭靖','黄蓉'],['韦小宝','双儿']] dic={ ...
- python生成json_Python JSON 教程
Python JSON 教程 本文我们通过示例学习python中解析.读取和写入json.同时也涉及到转换json至字典和格式化打印. 1. json 介绍 JSON (JavaScript Obje ...
- python生成词云图_用python生成词云图教程
闲话不多说,直接上干货! STEP1 安装jieba包 点击桌面菜单栏的开始按钮,输入cmd回车,进入命令窗口. 在命令行输入 pip install jieba回车,安装jieba包. 安装word ...
- python 生成解密字典
用于解密时生成字典,也可以内置调用,减少IO消耗. 直接根据长度返回字典 def create_dictionary(lenth:int):words = ''# 生成字根(大小写+数字)for i ...
- python 生成嵌套字典
import collections import jsontree=lambda:collections.defaultdict(tree) some_dict=tree() some_dict[' ...
最新文章
- Spring Boot“内存泄漏”?看看美团大牛是如何排查的
- Java基础笔记(入门,语法基础,流程控制,数组)
- 漫画:什么是 “建造者模式” ?
- Android中View绘制流程以及invalidate()等相关方法分析
- java中文乱码decode_java中文乱码
- LaTex:算法排版
- hdu5443(2015长春网络赛G题)
- springmvc jpa_使用JavaConfig的SpringMVC4 + Spring Data JPA + SpringSecurity配置
- 数据结构与算法--7.树的基础知识
- Gprinter Android SDK V2.1.4 使用说明
- rpm遇到的坑-与VMP冲突
- 【Red5流媒体服务器搭建】
- 浙大PAT 1051
- 人工智能AI对客户服务的影响正在形成
- 计算机卸载打不开,电脑卸载wps后excel打不开怎么办
- 右键菜单项删除 pycharm vs
- 详细的苹果快捷键,赶快保存吧!
- Java面试题-微服务
- 光驱刻录软件提示需要计算机管理员权限,我想刻录系统提示【找不到光盘刻录机。请确保已正确安装刻录机,并且有刻录光盘的相应权限。】是什么意思...
- 忙里偷闲( ˇˍˇ )闲里偷学【C语言篇】——(4)for == while ?
热门文章
- 本地机器 Google Colab 通过 SSH 连接远程服务器
- workflow engine Ruote 安装
- GEE学习笔记:在Google Earth Engine(GEE)中批量下载Sentinel-2影像
- JS测试CND js文件加载速度
- 8086汇编之乘法指令MUL
- 【iOS小白教程】如何打包:xcodebuild和xcrun介绍
- Efficient multi-keyword ranked query over encrypted data in cloud computing (4)
- 《强化学习周刊》第27期:MIT研究表明通用LTL目标的强化学习很难实现
- mysql“Access denied for user 'root'@'IP地址'
- 求含n个元素的集合的幂集