1

この問題のために、私は暗号化されたテキスト ファイルを受け取り、キーを見つけてファイルを .txt.gz ファイルに復号化するように依頼されました。

これまでのところ、使用すべき暗号は置換暗号の一種であることがわかっています。メッセージの暗号化に使用されたコードを受け取りました。キーを見つけてメッセージを解読するには、XOR ローテーションが必要であることを知っています。

これは、キーを与えられたときに開発したコードです

import sys
import gzip

with open("juliaplaintext.txt.gz.enc", "rb") as f:
    data = f.read()
k = data.decode("utf-8")
i =0
key = "IbSeMGjyepOr" * 10000
rotated = b""

s = open("juliaplaintext.txt.gz", "wb")

for ch0, ch1 in zip(k, key):
    eb = chr(ord(ch0) ^ ord(ch1))
    rotated += bytes(ord(eb) >> 7 & 0xff | ord(eb) << 7)
    s.write(rotated)

s.close()

私はPythonに非常に慣れていないため、キーが与えられていないときにデコードプログラムを作成する方法がわかりません. どんな助けでも大歓迎です。

4

0 に答える 0