from base64 import *
def enkripsi(plain, keys):
	enc = []
	plain = b64encode(plain)
	for i, l in enumerate(plain):
		kunci = ord(keys[i % len(keys)])
		teks = ord(l)
		enc.append(chr((teks + kunci) % 127))
                #enc = teks + kunci
	return ''.join(enc)

def findKey():
    key = []
    known = b64encode("IDCC{")
    file = open("enkripsi", "rb")
    file = file.read()
    for i, l in enumerate(known):
        kunci = ord(file[i])
        teks = ord(l)
        key.append((chr((kunci - teks) % 127)))
    return ''.join(key)

def decryption():
    key = "raja"
    flag = []
    file = open("enkripsi", "r").read()
    for i, l in enumerate(file):
        kunci = ord(key[i % len(key)])
	cipher = ord(l)
	flag.append(chr((cipher - kunci) % 127))
    return ''.join(flag)

    
print findKey()
print b64decode(decryption())
