开发者

python如何生成密码字典

目录
  • 一、密码字典
  • 二、字典生成
    • 1.生成6位数小写字母+数字密码字典
    • 2.选择模式运行

一、密码字典

所谓密码字典,主要是配合解密使用,一般情况用来暴力破解密码,是由指定字符排列组合组成的文本文件。如果知道密码设置的规律指定性生成密码,会对破解密码有决定性的帮助!!

二、字典生成

1.生成6位数小写字母+数字密码字典

代码如下(示例):

import itertools as its

words = 'abcdefghijklmnopqrstuvwxyz1234567890' #采用的字符

r = its.product(words, repeat=6) # repeat 要生成多少位的字典

dic = open("pass.txt", "a")  #保存
for i in r:
  dic.write("".join(i))
  dic.write("".join("\r"))
dic.close()

2.选择模式运行

python dictionary.py default
python dictionary.py numonly
python dictionary.py letteronly

代码如下(示例):

import itertoolwww.cppcns.coms as its
import argparse
def run_default(length,filename):
  global words
  '''
  words='ha'
 
  if numonly == True:
    words="1234567890"
  else:
    words="1234567890qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM"
  '''
  words="1234567890qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM"
  r =its.product(words,repeat=length)
  dic = open(filename,'a')
  for i in r:
    dic.write("".join(i))
    dic.write("".join("\n"))
  dic.close()

def run_numonly(length,filename):
  global words
  words="1234567890"
  r =its.product(words,repeat=length)
  dic = open(filename,'a')
 dRjHKxPaHP for i in r:
    dic.write("".join(i))
    dic.write("".join("\n"))
  dic.close()

def run_letteronly(length,filename):
  global words
  words="qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM"
  r =its.product(words,repeat=length)
  dic = open(filename,'a')
  for编程客栈 i in r:
    dic.write("".join(i))
    dic.write("".join("\n"))
  dic.close()

if __name__ == "__main__":
  choices={"default":run_default,"numonly":run_numonly,"letteronly":run_letteronly}
  parser=argparse.ArgumentParser(description='快速生成密码字典')
  parser.add_argument('model',choices=choices,help='选择哪个模式运行')
  parser.add_argument('--length',metavar='length',type=int,default=3,help="密码字典内密码的长度")
  parser.add_argume编程客栈nt('-filename',metavar='filename',type=str,default='password.txt',help="密码字典文件昵称")
  #parser.adddRjHKxPaHP_argument('-numonly',metavar='numonly',type=bool,default=False,help="是否只含有数字")
  args=parser.parse_args()
  func=choices[args.model]
  func(args.length,args.filename)

到此这篇关于python如何生成密码字典的文章就介绍到这了,更多相关python密码字典内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新开发

开发排行榜