swuforce

[Dreamhack] ROT128

범호야 2025. 1. 14. 23:02

문제 파일을 살펴보자

hex_list

이 코드는 앞에 2글자를 자르고, 두 자리수로 만들어주기 위해 한 자리 수면 0을 채워준다

enc_list

현재 위치의 16진수 값을 128을 더한 후 hex_list의 길이로 나눈 위치에 해당하는 16진수 값을 enc_list 에 저장한다

 

암호화된 파일을 복호화하기위해서는 코드 과정을 반대로 진행한다.

for 문을 거꾸로 실행시키고 16진수 문자열을 바이트 데이터로 전환한다. 

코드를 수정하면 .png파일이 생성되고 flag를 입력하면 문제가 해결된다.