利用Python如何生成随机密码
作者:iVictor 发布时间:2021-03-24 06:07:00
标签:Python,随机,密码
本位实例为大家分享了Python生成随机密码的实现过程,供大家参考,具体内容如下
写了个程序,主要是用来检测MySQL数据库的空密码和弱密码的,
在这里,定义了三类弱密码:
1. 连续数字,譬如123456,在get_weak_num中实现
2. 连续字母,譬如abcdef,在get_weak_character中实现
当然,个数都是随机的。
3. 数字和字母随机组合。在get_weak_num_character中实现。
同时定义了一个password_exist的列表,用于保存不同的密码。如果新生成的密码在列表中存在,则不进行MySQL数据库的连接,直接到下一次循环。
具体如下:
#coding=utf8
import random,string,MySQLdb
def get_num():
return random.randint(0,9)
def get_char():
return random.choice(tuple(string.lowercase))
def choose_any():
return [str(get_num()),get_char()]
def get_weak_num():
weak_num=[]
initial_num=get_num()
for i in range(get_num()):
weak_num.append(str(initial_num+i))
if initial_num +i ==9:
break;
return weak_num
def get_weak_character():
weak_character=[]
initial_character=get_char()
for i in range(get_num()):
weak_character.append(chr(ord(initial_character)+i))
if chr(ord(initial_character)+i) == 'z':
break
return weak_character
def get_weak_num_character():
return [random.choice(choose_any()) for num in range(get_num())]
password_exist=[]
for i in range(10000):
choice = [get_weak_num(), get_weak_character(), get_weak_num_character()]
password=''.join(random.choice(choice))
print "第"+str(i)+"次密码为:"+password
if password in password_exist:
continue
else:
try:
MySQLdb.connect('192.168.244.145', 'root', password)
print 'The password for MySQL is:'+password
break
except:
continue
password_exist.append(password)
if i == 9999:
print 'The password is not so weak~'


猜你喜欢
- import socketdef open_tcp_socket(remotehost,servicename): &
- 最近面试,被问到一个题目,vue做一个按钮组件;当时只是说了一下思路,回来就附上代码。解决思路:通过父子组件通讯($refs 和 props
- 脚手架是啥从前我总觉得脚手架是个很高大上的东西,好像得牛叉:ox:一点的人才写的出来,可望而不可即。其实并不是因为困难使我们放弃,而是因为放
- 前言:本文从0到1实现django搭建一个web页面,实现了django连接mysql数据库,简单的get、post请求等一、使用pyach
- 本文实例为大家分享了PyQt5单行文本框展示的具体代码,供大家参考,具体内容如下QLineEdit 是一个允许输入和编辑纯文本的单行控件。系
- 写在前面Omi框架可以通过在组件上声明 data-* 把属性传递给子节点。Omi从设计之初,就是往标准的DOM标签的标准传递方式靠齐。比如:
- 安装cesium在已有项目中执行,npm i cesium修改配置build/webpack.base.conf.js1、定义 Cesium
- 本文实例讲述了python的类方法和静态方法。分享给大家供大家参考。具体分析如下:python没有和C++中static关键字,它的静态方法
- 本文实例为大家分享了python实现txt文件格式转换为arff格式的具体代码,供大家参考,具体内容如下将文件读取出来的时候默认都是字符型的
- <% Function XMLEncode(byVal sText) sText = Replace(sText, "&am
- 本文实例讲述了PHP实现对数组分页处理方法。分享给大家供大家参考,具体如下:最近用到了用数组数据分页,这里整理了一下,具体代码如下:<
- asp防止用户同时登陆的方法,实现这个功能可有两种方式:1.使用application用application对象:如果做的是大型社区,可能
- 由于办公需要“每天定时推送某消息用来提醒群里面所有人”,有同事提议用企业微信自带的机器人来实现此功能。我觉得企业微信的这个工具还不错,具体使
- 本文以实例形式展示了Python获取电脑硬件信息及状态的实现方法,是Python程序设计中很有实用价值的技巧。分享给大家供大家参考之用。具体
- 本文实例讲述了python使用urlparse分析网址中域名的方法。分享给大家供大家参考。具体如下:这里给定网址,通过下面这段python代
- 前言在golang中,当浮点数超过一定数值的时候,golang会把它弄成科学计数法的形式进行显示(好像只要大于七位数就变成科学计数法了)va
- 今天有人问起,晚上试着写出来,供参考; 以下代码兼容主流浏览器IE6、IE7、Firefox、Opera。从最简单的开始…………一
- 复数是由一个实数和一个虚数组合构成,表示为:x+yj一个复数时一对有序浮点数(x,y),其中x是实数部分,y是虚数部分。Python语言中有
- 一、opencv是什么?OpenCV是一个用于图像处理、分析、机器视觉方面的开源函数库.二、使用步骤1.引入库代码如下:import cv2
- XSS(跨站脚本攻击)作为一种常见的网络安全漏洞,经常被黑客用来攻击网站,Python 是一种十分流行的编程语言,有着丰富的工具库和模块,可