吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 5042|回复: 45
收起左侧

[Python 转载] 自己写的Python密码字典生成器小工具,大佬勿喷,欢迎提出建议

 关闭 [复制链接]
skywalker0123 发表于 2022-8-6 11:37
本帖最后由 skywalker0123 于 2022-8-7 11:41 编辑

自己写的Python密码字典生成器小工具,大佬勿喷,欢迎提出建议和提出bug。
本人最近学习Python以及网络安全,在网络安全中,跑密码字典进行密码攻击是很平常的一件事,但是朋友们,该软件不得用于非法用途哦!通常,我们进行密码暴力破解都是需要一些技巧的,甚至,不同的目标会需要不同的字典,这样密码爆破效率会提高,正好最近本人在学习Python,就用写了一个密码字典生成器,因为是萌新,该密码字典生成器还不够完善,大佬勿喷,本人后续会改进该字典,发布新版本。欢迎提交建议以及bug。
介绍:该密码字典生成器会通过一个人的部分信息生存密码,如他的名字以及他对象的,他的生日,他的历史密码等等,因为是合在一起的,所以如果不需要生成那个项目,请输入0。
源代码:(1.1版本)
#这是一个密码字典生成器1.1版本
print("欢迎使用该软件")
doc=open('1.txt','w')
num1=input("首先,生成纯数字密码,请输入你想要生成的位数,如果不生成此项需要,请输入0") #输入位数1
num1=int(num1)
if num1==0:
    print("OK,进入下一个")
else:
    b=10 ** num1
    b=int(b)
    i=0
    i=int(i)
    while i < b:
        print(i,file=doc)
        i = i+1
    print("已经打印完成\n")
mubiao_name=input("输入目标姓名的拼音或英文名(大小写和多少个字母可根据你想设置而自己确定)")
num2=input("请输入你想生成目标姓名后面接多少数字,如果不需要生成此项请输入0") #不需要生成请在这里输入0
num2=int(num2)
if num2==0:
    print("ok ,进入下一个")
else:
    c=10 ** num2 #设置位数
    c=int(c)
    i1=0
    i1=int(i1)
    while i1 < c:#判断语句
        print(str(mubiao_name)+str(i1),file=doc)
        int(i1)
        i1 = i1+1
    print("已经打印完成\n")
mubiaobanlv_name=input("输入目标伴侣姓名的拼音或英文名(大小写和多少个字母可根据你想设置而自己确定,打印完请自行复制到文档中)")
num3=input("请输入你想生成目标伴侣姓名后面接多少数字,如果不需要生成此项请输入0")
num3=int(num3)
if num3==0:
    print("ok ,进入下一个")
else:
    d=10 ** num3 #设置位数
    d=int(d)
    i2=0                     #循环设置
    i2=int(i2)
    while i2 < d:#判断语句
        print(str(mubiaobanlv_name)+str(i2),file=doc)
        int(i2)
        i2 = i2+1
    print("1314520"+str(mubiaobanlv_name),file=doc)
    print(str(mubiaobanlv_name)+"1314520",file=doc)
    print("520" + str(mubiaobanlv_name),file=doc)
    print(str(mubiaobanlv_name) + "520",file=doc)
    print("已经打印完成\n")
mubiao_birth=input("输入目标生日")
num4=input("请输入你想生成目标生日后面接多少数字,如果不需要生成此项请输入0")
num4=int(num4)
if num4==0:
    print("ok ,进入下一个")
else:
    e=10 ** num4 #设置位数
    e=int(e)
    i3=0                     #循环设置
    i3=int(i3)
    while i3 < e:#判断语句
        print(str(mubiao_birth)+str(i3),file=doc)
        int(i3)
        i3 = i3+1
    print("已经打印完成\n")
mubiao_hobby=input("输入目标的爱好(可自行选择大小写以及内容长短,友情提示,密码尽量在6~16位之间)")
num5=input("请输入你想生成目标爱好后面接多少数字,如果不需要生成此项请输入0")
num5=int(num5)
if num5==0:
    print("ok ,进入下一个")
else:
    e=10 ** num5 #设置位数
    e=int(e)
    i=0                     #循环设置
    i=int(i)
    while i < e:#判断语句
        print(str(mubiao_hobby)+str(i),file=doc)
        int(i)
        i = i+1
    print("已经打印完成\n")
mubiao_lsmm=input("请输入目标历史密码")
num6=input("请输入你想要在历史密码后面接多少位数字,如果不需要生成此项请输入0")
num6=int(num6)
if num6==0:
    print("ok ,进入下一个")
else:
    e=10 ** num6 #设置位数
    e=int(e)
    i=0                     #循环设置
    i=int(i)
    while i < e:#判断语句
        print(str(mubiao_lsmm)+str(i),file=doc)
        int(i)
        i = i+1
    print("已经打印完成\n")
zidingyi=input("这是自定义字典,请在此输入前缀(可以是数字,字母等等)")
num6=input("请输入你想要在前缀后面接多少位数字,如果不需要生成此项请输入0")
num6=int(num6)
if num6==0:
    print("ok ,程序运行结束")
else:
    e=10 ** num6 #设置位数
    e=int(e)
    i=0                     #循环设置
    i=int(i)
    while i < e:#判断语句
        print(str(zidingyi)+str(i),file=doc)
        int(i)
        i = i+1
    print("已经打印完成\n")
    print("程序运行结束。")
import os
os.system("pause")
doc.close()
因为目前我还是个Python萌新,输出完的字典请自行复制走~
希望各位大佬们给点好的建议,谢谢!
不需要请输入0
1.0版本https://wwn.lanzouv.com/iv2930936zla
1.1版本https://wwn.lanzouv.com/ikD7z094uikh
版本更新:1.1版本不会把密码内容直接打印在上面,而会输出到1.txt
可以在下图所示的代码自行进行改变文件名。以下分别是和改变文件名的代码,运行截图和生成字典示例


搜狗截图20220807114117.png
3.png
4.png

免费评分

参与人数 6吾爱币 +6 热心值 +5 收起 理由
Junge08 + 1 + 1 谢谢@Thanks!
chao8709 + 1 + 1 热心回复!
kopxmkimi + 1 + 1 热心回复!
250075083 + 1 我很赞同!
快车0326 + 1 + 1 感谢分享!
萧然行者 + 1 + 1 热心回复!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| skywalker0123 发表于 2022-8-6 11:56
漏了一个,这是用Python3写的,请用Python3运行,谢谢
MyModHeaven 发表于 2022-8-6 12:32

回帖奖励 +1 CB吾爱币

[Python] 纯文本查看 复制代码
#这是一个密码字典生成器1.0版本
print("欢迎使用该软件")
num1=input("首先,生成纯数字密码,请输入你想要生成的位数(打印完请自行复制到文档中)如果不生成此项需要,请输入0") #输入位数1
num1=int(num1)
if num1==0:
    print("OK,进入下一个")
else:
    b=10 ** num1
    b=int(b)
    i=0
    i=int(i)
    while i < b:
        print(i)
        i = i+1
    print("已经打印完成,请自行复制到文档中\n")
mubiao_name=input("输入目标姓名的拼音或英文名(大小写和多少个字母可根据你想设置而自己确定,打印完请自行复制到文档中)")
num2=input("请输入你想生成目标姓名后面接多少数字,如果不需要生成此项请输入0")
num2=int(num2)
if num2==0:
    print("ok ,进入下一个")
else:
    c=10 ** num2 #设置位数
    c=int(c)
    i1=0
    i1=int(i1)
    while i1 < c:#判断语句
        print(str(mubiao_name)+str(i1))
        int(i1)
        i1 = i1+1
    print("已经打印完成,请自行复制到文档中\n")
mubiaobanlv_name=input("输入目标伴侣姓名的拼音或英文名(大小写和多少个字母可根据你想设置而自己确定,打印完请自行复制到文档中)")
num3=input("请输入你想生成目标伴侣姓名后面接多少数字,如果不需要生成此项请输入0")   #不需要生成请在这里输入0
num3=int(num3)
if num3==0:
    print("ok ,进入下一个")
else:
    d=10 ** num3 #设置位数
    d=int(d)
    i2=0                     #循环设置
    i2=int(i2)
    while i2 < d:#判断语句
        print(str(mubiaobanlv_name)+str(i2))
        int(i2)
        i2 = i2+1
    print("1314520"+str(mubiaobanlv_name))
    print(str(mubiaobanlv_name)+"1314520")
    print("520" + str(mubiaobanlv_name))
    print(str(mubiaobanlv_name) + "520")
    print("已经打印完成,请自行复制到文档中\n")
mubiao_birth=input("输入目标生日")
num4=input("请输入你想生成目标生日后面接多少数字,如果不需要生成此项请输入0")
num4=int(num4)
if num4==0:
    print("ok ,进入下一个")
else:
    e=10 ** num4 #设置位数
    e=int(e)
    i3=0                     #循环设置
    i3=int(i3)
    while i3 < e:#判断语句
        print(str(mubiao_birth)+str(i3))
        int(i3)
        i3 = i3+1
    print("已经打印完成,请自行复制到文档中\n")
mubiao_hobby=input("输入目标的爱好(可自行选择大小写以及内容长短,友情提示,密码尽量在6~16位之间)")
num5=input("请输入你想生成目标爱好后面接多少数字,如果不需要生成此项请输入0")
num5=int(num5)
if num5==0:
    print("ok ,进入下一个")
else:
    e=10 ** num5 #设置位数
    e=int(e)
    i=0                     #循环设置
    i=int(i)
    while i < e:#判断语句
        print(str(mubiao_hobby)+str(i))
        int(i)
        i = i+1
    print("已经打印完成,请自行复制到文档中\n")
mubiao_lsmm=input("请输入目标历史密码")
num6=input("请输入你想要在历史密码后面接多少位数字,如果不需要生成此项请输入0")
num6=int(num6)
if num6==0:
    print("ok ,进入下一个")
else:
    e=10 ** num6 #设置位数
    e=int(e)
    i=0                     #循环设置
    i=int(i)
    while i < e:#判断语句
        print(str(mubiao_lsmm)+str(i))
        int(i)
        i = i+1
    print("已经打印完成,请自行复制到文档中\n")
zidingyi=input("这是自定义字典,请在此输入前缀(可以是数字,字母等等)")
num6=input("请输入你想要在前缀后面接多少位数字,如果不需要生成此项请输入0")
num6=int(num6)
if num6==0:
    print("ok ,程序运行结束")
else:
    e=10 ** num6 #设置位数
    e=int(e)
    i=0                     #循环设置
    i=int(i)
    while i < e:#判断语句
        print(str(zidingyi)+str(i))
        int(i)
        i = i+1
    print("已经打印完成,请自行复制到文档中\n")
    print("程序运行结束,打印结果请自行复制到文本中。")
import os
os.system("pause")

免费评分

参与人数 2吾爱币 +1 热心值 +2 收起 理由
skywalker0123 + 1 + 1 谢谢@Thanks!
wblylh + 1 谢谢@Thanks!

查看全部评分

 楼主| skywalker0123 发表于 2022-8-6 16:56
kk159 发表于 2022-8-6 16:54
呵呵  你试试生成13位数字,

没办法,大部分字典生成器生成13位都会很卡而且占内存,正常来说不需要这么多吧。先she公啊,
semors 发表于 2022-8-6 11:46

回帖奖励 +1 CB吾爱币

小工具挺好的
Eureka8 发表于 2022-8-6 11:50

回帖奖励 +1 CB吾爱币

支持一下,代码结构非常可以的~~

免费评分

参与人数 1吾爱币 +1 收起 理由
skywalker0123 + 1 谢谢@Thanks!

查看全部评分

Beens 发表于 2022-8-6 12:08

回帖奖励 +1 CB吾爱币

学习一下。
khiuvenpeng 发表于 2022-8-6 12:09

回帖奖励 +1 CB吾爱币

很好很好很好
wawai 发表于 2022-8-6 12:25

回帖奖励 +1 CB吾爱币

支持一下,可以看出楼主有其他语言基础。提点小建议:Python里数值类型是不需要重复定义的哦。本人也是python萌新一个,若有错误,请忽略。
nekotann 发表于 2022-8-6 12:30

回帖奖励 +1 CB吾爱币

学习一下
Z0220721 发表于 2022-8-6 12:38

回帖奖励 +1 CB吾爱币

学习一下,抱走了
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-24 19:28

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表