python如何生成密碼字典
更新時間:2022年03月08日 15:53:38 作者:用余生去守護
這篇文章主要介紹了python如何生成密碼字典,密碼字典主要是配合解密使用,下面利用python實現(xiàn)生成密碼字典,需要的小伙伴可以參考一下
一、密碼字典
所謂密碼字典,主要是配合解密使用,一般情況用來暴力破解密碼,是由指定字符排列組合組成的文本文件。如果知道密碼設(shè)置的規(guī)律指定性生成密碼,會對破解密碼有決定性的幫助??!
二、字典生成
1.生成6位數(shù)小寫字母+數(shù)字密碼字典
代碼如下(示例):
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 itertools 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') ? ? 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="密碼字典內(nèi)密碼的長度") ? ? parser.add_argument('-filename',metavar='filename',type=str,default='password.txt',help="密碼字典文件昵稱") ? ? #parser.add_argument('-numonly',metavar='numonly',type=bool,default=False,help="是否只含有數(shù)字") ? ? args=parser.parse_args() ? ? func=choices[args.model] ? ? func(args.length,args.filename)
到此這篇關(guān)于python
如何生成密碼字典的文章就介紹到這了,更多相關(guān)python密碼字典內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
基于python 將列表作為參數(shù)傳入函數(shù)時的測試與理解
這篇文章主要介紹了基于python 將列表作為參數(shù)傳入函數(shù)時的測試與理解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-06-06Python整數(shù)與Numpy數(shù)據(jù)溢出問題解決
這篇文章主要介紹了Python 的整數(shù)與 Numpy 的數(shù)據(jù)溢出,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2019-09-09Django-rest-framework中過濾器的定制實例
這篇文章主要介紹了Django-rest-framework中過濾器的定制實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-04-04Pandas之Fillna填充缺失數(shù)據(jù)的方法
這篇文章主要介紹了Pandas之Fillna填充缺失數(shù)據(jù)的方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-06-06