python caesar密码蛮力解密

2024-06-01 05:05:37 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在为我的11年级计算机科学做期末考试,我必须用加密、解密和蛮力制作一个凯撒密码,我完全被蛮力困住了。有人能帮我吗


Tags: 密码蛮力计算机科学期末考试
1条回答
网友
1楼 · 发布于 2024-06-01 05:05:37

您可以使用itertools模块为每个组合进行循环。我会这样做:

import itertools
import string
import sys

chars = string.ascii_lowercase + string.ascii_uppercase + string.digits

user_passw = input("Enter Your Password: ")
attempts = 0

for password_length in range(1, 9):
    for guess in itertools.product(chars, repeat=password_length):
        guess = ''.join(guess)
        attempts += 1
        print(guess, attempts)
        if guess == user_passw:                
            print('Password Is {}'.format(guess))
            sys.exit()

基本上,我们首先定义可以在暴力中使用的所有角色。为此,我们使用字符串模块创建一个大字符串,其中包含我们将使用的每个名为chars的字符

之后,我们要求用户输入一个将被强制使用的密码

接下来,我们开始一个for循环,该循环将在范围1和9内运行。请注意,1表示密码的最小长度,9表示密码的最大可能长度。如果愿意,可以将它们更改为len(user_passw)

接下来,我们创建一个嵌套的for循环,该循环遍历chars字符串中的每个字母

然后,我们打印猜测和尝试次数,纯粹是为了视觉参考

接下来,我们检查猜测是否等于密码。如果是,则计算机将其打印给用户并退出循环

相关问题 更多 >