Python生成密码字典写入文件算法
Python生成密码字典写入文件算法
- 简介
- 主要原理
- 代码
如果有其他可以提高时空复杂度的算法可以优化一下
简介
密码字典生成原理比较简单,主要靠正常的按序叠加生成,故所需时间以及较大的内存资源
主要原理
首先定义一个密码字典所需的资源表,然后用循环生成一个所有的一位密码的密码本,然后读取该密码本并在其第二位依次添加新元素生成二位密码,依此循环生成多位密码
代码
#该密码字典生成算法所需调用的内存资源较大,四位密码生成速度较快,五位及以上所需时间和空间随几何倍数增长
#定义一个所需密码元素的表
lis=[1,2,3,4,5,6,7,8,9,0,'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z',',','.','/','?','<','>','{','}',';',':',' ','"','[',']','`','~','!','@','#','$','%','^','&','*','(',')','_','-','+','=','|']#以下函数为用以生成新密码的函数,读取已有密码的一行用循环加上新元素
def mk(nu,nam):name1=str(nam)+str(nu)+'.'+'txt'nu=nu+1name2=str(nam)+str(nu)+'.'+'txt'f=open(name1)line = f.readline()while line:f1=open(name2,'a')line = line.strip('\n')for j in lis:f1.write(str(line)+str(j)+'\n')line=f.readline()f1.close()f.close()#该函数用以将各个位的密码写入到统一的密码文件中
def fin(nu1,nam1):name3=str(nam1)+str(nu1)+'.'+'txt'name4=str(nam1)+'.'+'txt'f=open(name3)line=f.readline()while line:f1=open(name4,'a')line=line.strip('\n')f1.write(str(line)+'\n')line=f.readline()f1.close()f.close()number=int(input('请输入密码位数:'))
passbook=str(input('请输入密码本名字:'))#将密码所需的参数统一格式
passbook1=str(passbook)+'0'+'.'+'txt'
number1=number-1#将一位的密码写入密码本
f=open(passbook1,'a')
for i in lis:f.write(str(i)+'\n')
f.close()#生成其他位的密码本
for i in range(number1):passbook=str(passbook)mk(i,passbook)#将所生成密码统一到一个文本中
for i in range(number):passbook=str(passbook)fin(i,passbook)
Python生成密码字典写入文件算法相关推荐
- Python生成密码字典教程
首先声明:本教程只用于技术交流,请勿用于非法用途.请严格遵循相关法律法规. 晚上莫名想要折腾一下aircraft,虽然本学校用的网络是校园网,破解了wifi也不能直接用,还得破解别人的账号密码,但是这 ...
- python创建一个字典、保存用户名和密码_Python实现生成密码字典的方法示例
本文实例讲述了Python实现生成密码字典的方法.分享给大家供大家参考,具体如下: key_data.py 文件存放组成数据,可以随时扩充及简化. #coding=utf-8 #!/usr/bin/p ...
- python wifi密码字典
python wifi密码字典 WiFi默认密码是8位英文字母大写+小写+数字(有些时候还有特殊符号),密码成分可以自行更改.自己按照代码试了一下,结果2开头还没开始文本大少就超过了6GB(注意:如果 ...
- Python读取Json字典写入Excel表格的方法
需求: 因需要将一json文件中大量的信息填入一固定格式的Excel表格,单纯的复制粘贴肯定也能完成,但是想偷懒一下,于是借助Python解决问题. 环境: Windows7 +Python2.7 + ...
- php 生成密码字典,密码字典生成工具crunch的简单使用
案例1: crunch 1 8 #生成最小1位,最大8位,由26个小写字母为元素的所有组合 案例2: crunch 1 6 abcdefg #生成最小为1,最大为6.由abcdefg为元素的所有组合 ...
- Python如何把字典写入到CSV文件
在实际数据分析过程中,我们分析用Python来处理数据(海量的数据),我们都是把这个数据转换为Python的对象的,比如最为常见的字典. 比如现在有几十万份数据(当然一般这么大的数据,会用到数据库的概 ...
- Python生成一个字典
python字典 相同KEY整成一个列表? #encoding:utf-8 #Python3.6.0 aaa=[['韦小宝','阿珂'],['郭靖','黄蓉'],['韦小宝','双儿']] dic={ ...
- python处理嵌套字典写入Excel
需求:针对mongo数据库的数据进行提取,因为mongo数据库的字段是可伸缩的,所以导致没有值的key不会出现,针对提取的该数据的嵌套字典做处理,如下所示,给了一个data的示例数据 import o ...
- python 生成解密字典
用于解密时生成字典,也可以内置调用,减少IO消耗. 直接根据长度返回字典 def create_dictionary(lenth:int):words = ''# 生成字根(大小写+数字)for i ...
最新文章
- 在JSP页面中显示动态时间
- 简单的JS统计静态网站访问次数
- 白血病孕妇产子继母子双双安然
- 《JavaScript高级程序设计(第四版)》红宝书学习笔记(1)
- 写了个简单的pdo的封装类
- MegaRAID Storage Manager RAID管理工具实用教程
- 针对利用tzselect修改时间及ln -sf 修改系统时间不好使的情况 linux 6.5
- python语言程序设计王恺pdf_Python语言程序设计
- 项目集锦 | 易基因近期m6A甲基化(MeRIP-seq)研究成果
- java读取json文件
- 史上最强C语言教程----万字初识C语言
- mysql 计算农历_SQL农历转换函数
- python填充nan_Python Pandas Dataframe填充NaN值
- mysql update无效_Mysql update记录无效如何解决
- python实现热力图_基于 Folium 的 Python 热力图实现
- 不要害怕超级人工智能
- filebeat重复采集数据问题排查
- HI3516DV300笔记(二)硬件适配
- 如何让网页自适应所有屏幕宽度
- 读取和博客可视化分析
热门文章
- Palm OS系统简介
- 澳大利亚nbn成功测试诺基亚通用NG-PON光纤解决方案
- 消防给水及消火栓系统技术规范_消防给水及消火栓系统技术规范9、10、11 习题...
- Win7与Ubuntu双系统时【卸载Ubuntu】
- ok6410如何驱动NW336无线网卡.更新zd1211b到kernel 2.6.15上.成功在Linux下安装TP-LINK TL-WN322G+ 54M无线USB网卡驱动
- 呼叫中心管理系统的描述
- 404计算机考研,404分考研过来人谈高分心得和经验
- 计算机毕业设计PHP基于Web的软考题库平台(源码+程序+VUE+lw+部署)
- 小巧使用的GTD管理软件
- 吴信东--数据挖掘top10算法