sha(sha256爆破+维吉尼亚)

题目:
1.py

#sha
sha256 = '5875d1b49d1e75478c37cec83534ac477f939578da80b8e317bb2fb1e525ec7a'
message = '××××mybabywonder'
print(('SHA-256(?+{}) == {}'.format(message[4:],sha256)))
#key=?

2.txt

hint:该密码使用一系列凯撒密码组成密码字母表的加密算法,属于多表密码的一种简单形式
密文:stck{2pm434d60h8r23nf837e07q88n3ei0qj}
key:××××

思路:
爆破key->用key解密,猜测是维吉尼亚
首先,爆破key
exp:

import hashlib
import string
import itertools

char = string.digits + string.ascii_lowercase
print(char)
s = "5875d1b49d1e75478c37cec83534ac477f939578da80b8e317bb2fb1e525ec7a"
for i in itertools.product(char, repeat=4):
    key = "".join(i)
    message = key + "mybabywonder"
    print(message)
    c = hashlib.sha256(message.encode()).hexdigest()
    if c == s:
        print("key>>>", key)
        print("c>>>", c)
        break


或者使用kali的john工具,设置mask模式,将5875d1b49d1e75478c37cec83534ac477f939578da80b8e317bb2fb1e525ec7a写入1.txt

john --format=raw-sha256 --mask='?a?a?a?amybabywonder' 1.txt


最后是维吉尼亚

posted @ 2025-05-15 00:16  lethe311  阅读(8)  评论(0)    收藏  举报