密码的哈希值

小明一直将电脑密码的哈希值写在纸上,结果一不小心将墨水撒在了上面,只看得到前10位是c2979c7124,小明只记得密码是4位的数字加字母,你能帮小明恢复密码的哈希值吗?(提示:flag为密码的哈希值)

代码如下:

import hashlib

target_hash = "c2979c7124"  # 目标哈希值前十位
characters = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"  # 密码可能的字符集合
password_length = 4  # 密码长度

# 遍历所有可能的密码组合
for i in range(len(characters)):
    for j in range(len(characters)):
        for k in range(len(characters)):
            for l in range(len(characters)):
                password = characters[i] + characters[j] + characters[k] + characters[l]  # 构建密码
                password_hash = hashlib.md5(password.encode()).hexdigest()[:10]  # 计算密码的哈希值的前十位
                if password_hash == target_hash:
                    print("密码的Hash值(即为Flag值): " + password_hash)
                    print("恢复的密码: " + password)
                    exit()

print("未找到匹配的密码!")

data="OK98"
hashlib.md5(data.encode())

你可能感兴趣的:(python,哈希算法)