ASIS CTF Finals 2017: Simple Crypto
最初はげきむずだったのでz3など色々試していたのに、消えて戻ってきたら自明問になっていました。
solution
xor.
implementation
#!/usr/bin/env python2
import sys
def xor_str(x, y):
if len(x) > len(y):
return ''.join([chr(ord(z) ^ ord(p)) for (z, p) in zip(x[:len(y)], y)])
else:
return ''.join([chr(ord(z) ^ ord(p)) for (z, p) in zip(x, y[:len(x)])])
KEY = 'musZTXmxV58UdwiKt8Tp'
key = KEY.encode('hex')
with open('flag.enc') as fh:
enc = fh.read()
print xor_str(enc, key * len(enc)).decode('hex') #=> PNG