코드소프트 망신 사건

 


1. 개요
2. 암호화 알고리즘 MaskCrypt의 문제점
3. 현재

[image]
'''모든 것을 요약해주는 사진 한장.'''

1. 개요


2009년 3월, 코드소프트라는 기업에서 2008년 12월 4일에 특허를 받은 새로운 암호 알고리즘을 개발했다고 발표하고, 현상금 1천만 원을 내걸고 깨보라고 선언했는데 꼴랑 '''2시간 만에 깨져서 망신당한''' 사건. 2일도 아니고 '''2시간'''이다! #
코드소프트에서는 3월 16일부터 6월 30일까지 진행한다고 했으나, 문제를 낸 당일 겨우 2시간 만에 깨져서 망신을 당하고 말았다.#(…)
암호를 해체한 것은 PlayXP의 Kesarr였다고 한다.#
상금 천만원중 100만원은 선지급 되었고 나머지는 추후에 지급하기로 했다는데 추후에 지급되었는지 여부는 확인이 불가하다.#

2. 암호화 알고리즘 MaskCrypt의 문제점


MaskCrypt는 ‘다국어 텍스트 문자열 암호화를 위한 대칭키 암호 알고리즘 보완 방법’으로 2008년 특허를 받았고 제작자의 발표에 따르면 암호화된 한글이 깨지지 않고 길이가 그대로 유지되기 때문에 DB에 자유롭게 저장할 수 있는 것이 장점이며, C, Java, JavaScript를 사용했다고 한다.
Kesarr는 JavaScript 소스를 기반으로 암호화를 해석했다. 그가 분석한 이 암호화 알고리즘의 약점은 다음과 같다.
  • 평문과 암호문의 각 문자가 1:1로 대응하여 확산 성질(Diffusion)이 없다.
  • 공백문자, 구두점 등 특수문자가 그대로 남아 있기 때문에 문장 구조를 파악하기 쉬워 빈도 분석이 매우 간단하다.
  • 비밀키의 각 문자가 아스키 코드의 일반 문자로 한정되어 있어서 경우의 수가 많지 않다.
  • 비밀키의 각 문자가 암호문의 한 문자를 만들어내기 때문에 혼돈 성질(Confusion)이 없어 글자별로 테스트하기 쉽다.
  • 비밀키의 길이를 파악하기도 쉽다.
사실, 이 해설대로라면 MaskCrypt는 기껏해야 고전 암호 수준으로, 암호학과 해독 기법이 발전한 현대에서는 절대 효과적인 암호 알고리즘이라고 볼 수 없다.
이것은 원리적으로 '''16세기'''에 만들어진(…) 비지넬 암호(Vigenere cipher)와 비슷한 것으로 보인다. 비지넬 암호는 단순 치환식 암호보다 한 단계 더 나아간 것으로, 모든 암호를 같은 키로 변환하는 단순 치환식 암호와는 달리 다소 긴 키를 사용하여 키의 길이만큼 반복해가며 암호를 만든다.
비지넬 암호는 '''1863년'''에 비교적 효율적인 카시스키 테스트라는 해독법이 나왔으며, 현대라면 PC를 사용해서 '''10초''' 이내에 깰 수 있다.
혼돈(confusion)과 확산(diffusion) 효과의 개념은 클로드 섀넌이 '''1949년'''에 제시한 이후 현대 암호 알고리즘의 기본 원리가 된 것으로, 이것이 없다는 것은 말하자면 '''4~500년 전 수준'''의 암호 알고리즘인 것이다.
게다가 공백과 구두점, 특수문자를 변환하지 않는다는 치명적인 문제점이 있기 때문에 빈도분석이 쉬워서 더욱 간단히 깰 수 있다. 알고리즘을 직접 알아내야 하는 상황이니까 2시간이나 걸렸지, 알고리즘이 알려져 있는 것을 전제로 하는 '''실전 상황'''이라면 이 암호가 돌파당하는 데 걸리는 시간은 수초 이내일 것이다. 암호화로서의 의미가 없는 수준이다.
현대에 쓰이는 암호 방식에서 일반적으로 소스 코드알고리즘이 공개되는 것은 흔히 있는 일[1]이므로, 알고리즘이 알려졌다는 것은 현대 암호에서는 해독당한 것의 변명이 되지 못한다.

3. 현재



홈페이지에 접속하면 굉장히 오래 전부터 서비스 준비 중이라는 문구만 있고 아무것도 없다. 그 외에 다른 정보는 전혀 없는 상황이다. 언젠가는 판매용 도메인이 돼서 다른 사람이 사서 다른 홈페이지가 될지도 모를 일이다. KISREPORT에 코드소프트웨어라는 폐업한 곳이 있는데 그게 저 코드소프트인지는 알 수 없다.
2013년 6월 확인결과, 이미 판매용 도메인이 되었다. 도메인인 codesoft.co.kr을 WHOIS 서비스에서 검색해 보면 2010년에 재등록되어 개인 소유 도메인이 되어 있고, 해당 서비스 준비중 문구는 도메인 등록업체에서 기본 제공하는 공사중 페이지이다.
2020년 현재 해당 도메인은 코딩 교육용 사이트가 가져갔다.

[1] 현대에 유명한 암호 알고리즘은 거의 대부분 알고리즘과 소스 코드가 공개되어 있다. 현대 암호학에서는 기본적으로 내부 구현의 공개를 전제조건으로 한다. 암호 알고리즘이 어떻게 구현되었고 어떤 구조로 동작하는지 공격자가 알고 있더라도 해독할 수 없어야 한다는 것이다.