Write-up/Crypto
[Dreamhack] ICM2022
mameul
2024. 9. 13. 23:22
728x90
문제풀이
제공된 코드를 살펴봤을때, 평문 p가 주어졌을 때 암호화 방식은 아래 공식과 같다.
이 식을 아래와 같이 정리해보면 복호화 방식을 알 수 있다.
여기서 readme 파일을 확인해보면 p 를 구하기 위해 필요한 것 중 모르는 것은 key1 밖에 없는 것을 확인할 수 있다. 이때코드에서 key2 보다 key1 이 작다는 것을 알 수 있고 , key1 은 1~94 까지의 값을 가진다 . 큰 범위가 아니므로 전수조사를 시행한다 .
복호화 공식에 따라 코드를 작성하고, 나누어 떨어지는 경우만 프린트하도록 하면 p 값을 얻을 수 있다 .