Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- This message has been encrypted by applying DES two times. Can you recover the key and decrypt it? Message: ff4f3ada7884cfb0a7550083f001f44310da5ec4b0c9ef5fc73ad71d0ad19253265646283883f746547d55d5bee6e21490ac44e6cf2923ac
- Provided Script in Python:
- import os
- from Crypto.Cipher import DES
- #from crypto.Cipher import DES
- BS = DES.block_size
- pad = lambda s: s + (BS - len(s) % BS) * chr(BS - len(s) % BS)
- unpad = lambda s: s[0:-ord(s[-1])]
- def encrypt(data,key1,key2):
- data = pad(data)
- c1 = DES.new(key1, DES.MODE_ECB)
- c2 = DES.new(key2, DES.MODE_ECB)
- m = c1.encrypt(data)
- r = c2.encrypt(m)
- return r
- def decrypt(data,key1,key2):
- c1 = DES.new(key1, DES.MODE_ECB)
- c2 = DES.new(key2, DES.MODE_ECB)
- m = c2.decrypt(data)
- r = c1.decrypt(m)
- return unpad(r)
- f = open('secret.txt')
- flag = f.readline().strip()
- message = 'The flag is: ' + flag
- key1 = f.readline().strip().decode('hex') # 64-bit key generated using os.urandom(3) + ('\x00'*5)
- key2 = f.readline().strip().decode('hex') # 64-bit key generated using os.urandom(3) + ('\x00'*5)
- e = encrypt(message,key1,key2)
- print e.encode('hex')
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement