python-3.x - 如何创建一个简单的 python 暴力破解函数?

标签 python-3.x

我正在尝试创建一个函数,该函数将对一个学术 Python 项目使用蛮力。密码可以限制 我想传入密码,函数迭代一组字符(a-z、A-Z、0-9)尝试组合,直到找到密码。我知道这将是低效的,所以为了测试让我们假设密码是 4 个字符长。任何帮助开始编写此功能的人都将不胜感激。

最佳答案

gen = itertools.combinations_with_replacement(characters,password_length) #1
for password in gen:                                                      #2 
    check_password(password)                                              #3

这是它的工作原理:

  • 第 1 行:这将创建一个生成器。它就像一个记住它停止的地方的功能。查看此以获取更多信息:http://getpython3.com/diveintopython3/generators.html。这个特定的生成器遍历给定长度的给定字符的所有可能组合。
  • 第 2 行:for 循环的每次迭代都会调用 next(gen)。这产生下一个值
  • 第 3 行:做你需要做的事

例如,如果 characters = '01234567890'password_length = 2 那么循环将遍历组合:('0','0') , ('0','1'), ('0','2')...('0','9'),('1','0'),('1','1 ')...('9','9').

关于python-3.x - 如何创建一个简单的 python 暴力破解函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13459856/

相关文章:

python3通过分隔符将大文件分割成小文件(不是大小,行)

python - python 如何破坏对象名称和类定义?

python - 如何使用Python CDK代码部署Java Lambda jar?

python - 如何从 Django 发送电子邮件

python-3.x - Plotly Dash 应用程序中的重定向

Python3 脱离源代码构建

python - 从 Odoo 中的现有选择中删除项目

python - 检查时间控制并更改 listrCtrl 中的颜色

python - 将列表转换为字典,其中每个键都嵌套在下一个键下

django - "django.db.utils.ProgrammingError: relation "auth_user "does not exist"Django V2.0