Write-up/Crypto

[Dreamhack] What is This???

mameul 2024. 10. 4. 14:17
728x90

풀이

제공된 prob.txt 파일을 확인을 해보니 엄청 긴 문자열이 있었는데 base64 인코딩이 된 것 같아서 한 번 디코딩을 해봤다.

디코딩을 했는데 또 엄청 긴 문자열이 나오는데 ==으로 끝난다. 딱 한 번만 더 디코딩을 해보자.

여전히.. base64 인코딩된 문자열 같다.

while True :
    code_bytes = str.encode('ascii')

    decoded = base64.b64decode(code_bytes)
    str = decoded.decode('UTF-8')

    if str.startswith("DH"):
        print(f"Decrypted flag: {str}")
        break

설마하는 마음으로 반복문을 걸어봤다. 플래그 형식에 맞는 문자열이 나오면 멈추는 조건을 걸었다. 

오.. 플래그가 나왔다.