「配枪朱丽叶。」

RootのCTF学习笔记。

密码学-哈希还原

小明一直将电脑密码的Hash值写在标签纸上,结果一不小心墨水撒到了上面,只能看到前十位是c2979c7124,另外小明记得他的密码是4位的数字加字母,你能帮小明恢复密码的Hash值吗?(密码的Hash值即为Flag值)

import string
import re
import hashlib
import sys
# string.ascii_uppercase  所有大写字母
# string.ascii_lowercase 所有小写字母
# string.ascii_letters  所有字母
# string.digits  所有数字
a = string.ascii_letters+string.digits
for q in a:
    for w in a:
        for e in a:
            for r in a:
                b = str(q)+str(w)+str(e)+str(r)
                flag = hashlib.md5(b.encode('utf-8')).hexdigest()
                if(re.findall('c2979c7124(.*?)',flag)):
                    print(flag)
                    sys.exit()