cryptopals S1-4

题目:

https://cryptopals.com/sets/1/challenges/4

解法:

 

legal_chars = "01234567890abcdefghijklmnopgrstuvwxyzABCDEFGHIGKLMNOPQRSTUVWXYZ "

with open("f:\\4.txt") as fin:
    for line in fin.readlines():
        x = bytes.fromhex(line.strip())
        for i in range(256):
            y = [chr(i^sx) for sx in x]
            if len([c for c in y if c in legal_chars]) > 0.8 * len(x):
                print(line, i, ''.join(y))

 

感想:

没有仔细读题,还以为就是S1-3的放大版

posted @ 2019-12-07 00:45  雪溯  阅读(209)  评论(0编辑  收藏  举报