WarGame/SuNiNaTaS

[SuNiNaTas] 써니나타스 26번 - FORENSICS

URL은 다음과 같다.

Game 26 (suninatas.com)

 

Game 26

szqkagczvcvyabpsyincgozdainvscbnivpnzvbpnyfkqhzmmpcqhzygzgfcxznvvzgdfnvbpnjyifxmpcqhzygbpnoyaimygbzgngbvmpcqhzygcbpinnbzqndicgxhiztozgcfmpcqhzygbpnjyifxeagzyimpcqhzygbpneagzyidicgxhiztozgcfmpcqhzygcgxcoyaibzqnvyabpsyincggcbzygcfmpcqhzygszqzvbpnozivbvyabpsy

www.suninatas.com


해결책

영어를 해석하면 다음과 같다.

일단 빈도 분석이라는 게 무엇이냐.

암호학에서의 빈도분석(頻度分析, frequency analysis 또는 counting letters)이란 평문과 암호문에 사용되는 문자 또는 문자열의 출현빈도를 단서로 이용하는 암호해독법을 말한다. 평문 언어의 통계적 특징을 전제로 하여, 암호문만을 사용해서 해독을 진행하기 때문에, 암호문 단독공격으로 분류된다.(중략)

- 출처 : 위키백과(빈도분석(암호)) : https://ko.wikipedia.org/wiki/%EB%B9%88%EB%8F%84%EB%B6%84%EC%84%9D_(%EC%95%94%ED%98%B8)

 

단순하게 생각하면 알파벳을 세는 것이다. 다음의 문자열이 있다고 가정해보자. 아래는 평문이다

"I have a lot's of friend.  i'm not lying. why are you crying? Don't be so sad at being outsider. 
You'll be always outsider."

이 슬픈 문장을 대치 암호를 통해서 암호문을 만들었다고 가정하자. 영어의 알파벳에서 가장 많이 쓰이는 역시 모음인 e, i, o, a, u인데, 일반적으로 알려진 이 상식을 통해서 대치 암호문의 결과에서 많이 나오는 알파벳을 많이 쓰이는 알파벳 순서대로 매칭 해서 평문 해석을 하는 분석 방식이다. 아래는 위의 문장을 빈도 분석한 결과이다.

{'a': 7, 'b': 3, 'c': 1, 'd': 4, 'e': 8, 'f': 2, 'g': 3, 'h': 2, 'i': 7, 'l': 5, 
'm': 1, 'n': 6, 'o': 9, 'r': 5, 's': 6, 't': 6, 'u': 4, 'v': 1, 'w': 2, 'y': 5, 
'D': 1, 'I': 1, 'Y': 1}

### o가 가장많은 9개, e가 다음인 9개, i가 7가 다음이다.
### 위에 평문을 암호한 결과가 뭐시기 나올때 그 암호문을 빈도분석했을때 s가 가장많이 나왔으면 그걸
### 통상적으로 e라고 가정할 수 있고, 다음많은게 d라면 그걸 o로 가정할 수 있는 거다.

 

다행히도 이걸 해주는 사이트가 있다.

quipqiup - cryptoquip and cryptogram solver

 

quipqiup - cryptoquip and cryptogram solver

 

quipqiup.com

이 사이트를 간단하게 소개를 해주면, 빈도 분석뿐만 아니라 간단한 암호화 문제(DES 처리된 거 이런 거 말고, ROT나 카이사르 암호들도 해석해 준다. 빈도 분석의 결과는 다음과 같다.

정답은

정답은 직관적이다.