Python 多线程密码字典生成脚本 - 快速生成密码组合
Python 多线程密码字典生成脚本
该脚本使用 Python 编写,旨在生成密码字典并将其存储在一个 txt 文件中。它使用多线程技术,可以更快地生成较大的字典。
代码实现
import threading
class PasswordGenerator:
def __init__(self, filename):
self.filename = filename
self.characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!@#$%^&*()_+{}[]|;:,.<>/?'
self.length = 8
self.thread_count = 4
def generate_passwords(self):
threads = []
for i in range(self.thread_count):
t = threading.Thread(target=self._generate_passwords, args=(i,))
threads.append(t)
t.start()
for t in threads:
t.join()
def _generate_passwords(self, thread_num):
total_threads = self.thread_count
with open(self.filename, 'a') as f:
for i in range(thread_num, len(self.characters), total_threads):
prefix = self.characters[i]
self._generate_passwords_helper(f, prefix, self.length - 1)
def _generate_passwords_helper(self, f, prefix, length):
if length == 0:
f.write(prefix + '\n')
return
for c in self.characters:
self._generate_passwords_helper(f, prefix + c, length - 1)
使用方法
- 将以上代码复制到一个名为
password_generator.py的文件中。 - 在你的代码中导入
password_generator模块。 - 创建一个
PasswordGenerator实例,指定一个文件名来存储生成的密码字典。 - 调用
generate_passwords方法来生成密码字典。
示例代码:
import password_generator
pg = password_generator.PasswordGenerator('passwords.txt')
pg.generate_passwords()
生成的密码字典将保存在名为 passwords.txt 的文件中。
原文地址: https://www.cveoy.top/t/topic/lh2N 著作权归作者所有。请勿转载和采集!