T

Text Machine

강력한 텍스트 도구를 브라우저에서

암호 식별기

지금 보고 있는 게 어떤 암호인지 확신이 안 서나요? 정체불명의 텍스트를 붙여넣으면 이 도구가 문자 집합, 글자 빈도, 일치 지수를 분석해 가장 가능성 높은 암호 순으로 정렬해 보여주고, 맞는 디코더로 바로 연결해 드립니다. 모든 작업은 브라우저에서 실행됩니다.

샘플로 사용해 보기:

식별할 암호문

위에 텍스트를 붙여넣으면 가능성이 가장 높은 암호들이 신뢰도순으로 여기에 표시됩니다.

암호 식별기 사용 방법

  1. 1

    정체불명의 텍스트 붙여넣기

    알 수 없는 코드나 암호문을 복사해 입력란에 붙여넣으세요. 글자, Morse의 점과 선, Base64, 숫자 등 거의 무엇이든 가능합니다.

  2. 2

    분석 요약 읽기

    문자 수, 그 안에 포함된 글자 수, 감지된 문자 집합, 그리고 암호가 하나의 알파벳을 썼는지 여러 개를 썼는지 힌트를 주는 일치 지수를 확인하세요.

  3. 3

    정렬된 추정 결과 검토하기

    가능성이 가장 높은 암호들이 카드로 표시되며, '매우 유력'부터 '가능성 낮음'까지 신뢰도순으로 정렬됩니다. 각 카드에는 어떤 신호가 작동했는지 설명하는 짧은 이유가 함께 나옵니다.

  4. 4

    맞는 디코더 열기

    최상위 후보의 전용 디코더로 들어가 해독을 마무리하세요. 여러 개가 제안되면 목록 위에서부터 차례로 시도해 보세요.

  5. 5

    공유 또는 지우기

    여러분의 텍스트가 그대로 들어 있는 상태로 도구를 다시 여는 공유 가능한 링크를 복사하거나, 입력란을 지워 다시 시작하세요. 모든 내용은 브라우저 안에 머뭅니다.

알 수 없는 암호를 식별하는 방법

암호 식별기란?

암호 식별기는 정체불명의 텍스트를 입력받아 어떤 암호나 부호화로 만들어졌을 가능성이 가장 높은지 알려주는 도구입니다. 무작정 추측하거나 디코더를 하나씩 다 시도하는 대신, 암호문을 한 번만 붙여넣으면 카이사르, Vigenère, Base64, Morse 등 후보 목록을 신뢰도와 함께 정렬해서 보여주고, 각 후보마다 맞는 디코더로 바로 연결되는 링크를 제공합니다.

이는 만드는 방법을 알 수 없는 부호화된 텍스트를 발견했을 때 가장 자연스러운 출발점입니다. CTF(Capture-the-Flag) 챌린지, 방탈출 단서, 지오캐싱 퍼즐, 대체 현실 게임(ARG), 암호로 적힌 쪽지 등이 그런 경우입니다. 암호의 계열을 알면 수십 가지 가능성이 한두 가지로 좁혀지므로, 검색을 멈추고 해독을 시작할 수 있습니다.

암호 식별기의 작동 원리

이 식별기는 머신러닝이 아니라 고전 암호 분석을 사용하므로 모든 판정을 설명할 수 있습니다. 가장 명백한 것부터 가장 미묘한 것까지 일련의 검사를 텍스트에 차례로 적용합니다. 먼저 문자 집합을 살핍니다. 점과 선으로만 이루어진 텍스트는 Morse, 0과 1로만 된 것은 이진수, 16진수 숫자로만 된 것은 16진수이며, 길이가 4의 배수인 Base64 알파벳은 Base64입니다. 작은 숫자들의 나열은 Polybius 사각형, A1Z26 글자 번호 매기기, 또는 ASCII 코드를 가리킵니다.

텍스트가 평범한 글자일 때는 통계로 전환합니다. 일치 지수를 측정해 하나의 알파벳을 썼는지(단일 치환) 여러 개를 썼는지(다중 치환) 판단한 다음, 영어 글자 빈도에 대한 카이제곱 점수를 이용해 카이사르 시프트 검사와 Atbash 검사를 실행합니다. 문자 집합, 빈도 프로필, 그리고 길이와 반복 패턴 같은 구조적 단서를 결합해 여러분이 보는 정렬된 목록을 만들어 냅니다.

일치 지수란 무엇인가

일치 지수(Index of Coincidence, IoC)는 텍스트에서 무작위로 고른 두 글자가 같을 확률이 얼마나 되는지를 측정합니다. 평범한 영어 텍스트의 일치 지수는 약 0.067인데, E나 T 같은 일부 글자가 다른 글자보다 훨씬 자주 나오기 때문입니다. 완전히 무작위인 텍스트는 모든 글자가 똑같이 나올 확률을 가져 0.038 근처에 있습니다.

이 하나의 숫자는 글자 기반 암호에서 가장 유용한 단서입니다. 카이사르, Atbash, 키워드 치환 암호는 한 글자를 다른 글자로 바꾸기만 하므로 영어 특유의 들쭉날쭉한 빈도 프로필이 그대로 남아 일치 지수가 0.066 근처로 높게 유지됩니다. Vigenère 같은 다중 치환 암호는 여러 알파벳을 동시에 사용해 빈도를 평탄하게 만들고 일치 지수를 0.04 쪽으로 끌어내립니다. 그래서 높은 일치 지수는 단일 치환을, 낮은 일치 지수는 다중 치환을 뜻하며, 그 사이의 값은 둘 다 시도해 보라는 힌트입니다.

문자 집합 단서 읽기

많은 부호화는 알파벳만으로 정체를 드러냅니다. Morse 부호는 점, 선, 구분자만 사용합니다. 이진수는 숫자 0과 1만, 보통 여덟 개씩 묶어 사용합니다. 16진수는 숫자 0에서 9와 글자 A에서 F를 사용하며 문자 개수가 짝수입니다. Base64는 대소문자, 숫자, 더하기, 슬래시를 사용하고, 흔히 끝에 패딩으로 등호 한두 개가 붙으며, 전체 길이가 4의 배수입니다.

숫자에는 저마다의 의미가 있습니다. 1과 5 사이의 숫자 쌍은 Polybius 사각형의 좌표입니다. 모두 1과 26 사이에 드는 숫자는 1이 A이고 26이 Z인 A1Z26일 가능성이 가장 높습니다. 32에서 126 범위의 더 큰 숫자는 10진 ASCII 문자 코드입니다. 글자 A, D, F, G, V, X로만 이루어진 텍스트는 제1차 세계대전 때 쓰인 ADFGX 또는 ADFGVX 야전 암호의 틀림없는 특징입니다.

단일 치환 암호 대 다중 치환 암호

텍스트가 글자이고 일치 지수가 높다면, 거의 확실하게 단일 치환 암호를 보고 있는 것입니다. 단일 치환에서는 각 평문 글자가 항상 같은 암호문 글자로 대응됩니다. 가장 단순한 것은 모든 글자를 같은 양만큼 옮기는 카이사르 암호이며, 식별기는 정확히 한 가지 시프트가 텍스트를 영어로 바꿀 때 이를 확인해 줍니다. Atbash는 알파벳을 뒤집어 A가 Z가 되게 하는 특수한 경우입니다. 시프트도 뒤집기도 통하지 않지만 일치 지수가 여전히 높다면, 치환 해독기가 필요한 일반적인 키워드 또는 아핀 치환입니다.

일치 지수가 낮다면 그 암호는 둘 이상의 알파벳을 사용합니다. 대표적인 예는 반복되는 키워드를 적용해 각 위치마다 다른 시프트를 쓸 수 있게 하는 Vigenère이며, 그 친척으로는 Beaufort, Gronsfeld, Porta가 있습니다. 또 다른 단서인 짝수 길이이면서 쌍 안에 중복 글자가 없다는 점은 대신 한 번에 두 글자를 암호화하는 Playfair 같은 다중 문자 암호를 가리킵니다.

암호를 식별한 다음에 할 일

식별은 첫 단계일 뿐입니다. 결과의 각 후보는 해당 암호의 전용 디코더로 연결되며, 거기서 작업을 마무리할 수 있습니다. 카이사르 암호의 경우 디코더가 25가지 시프트를 모두 무차별 대입한 뒤 빈도 분석으로 가장 좋은 것을 골라 줍니다. Base64, Morse, 이진수, 16진수의 경우 맞는 변환기가 코드를 곧바로 텍스트로 되돌려 줍니다. Vigenère와 치환 암호는 보통 키나 해독기가 필요하지만, 계열을 알면 어떤 기법을 써야 할지 정확히 알 수 있습니다.

후보가 여러 개 나오면 신뢰도가 가장 높은 것부터 목록을 따라 내려가며 작업하세요. 증거가 모호할 때 식별기는 일부러 둘 이상의 가능성을 제시합니다. 짧은 메시지는 확정적인 답을 주는 경우가 드물기 때문입니다. 가장 유력한 디코더를 시도해 보면 거의 항상 몇 초 안에 그 추정이 맞는지 아닌지가 확인됩니다.

유념해야 할 한계

어떤 자동 식별기도 완벽하지 않습니다. 매우 짧은 메시지는 통계가 믿을 만하기에 충분한 글자를 담고 있지 않아, 한 문단이면 명백할 것도 다섯 글자 표본에서는 모호할 수 있습니다. 카이사르 암호를 적용한 뒤 Base64로 변환하는 식으로 여러 겹으로 부호화된 메시지는 처음에는 가장 바깥쪽 겹만 드러납니다. 그것을 해독한 다음 그 결과를 다시 식별기에 넣어 실행하세요.

이 도구는 퍼즐, 게임, 역사에 등장하는 계열인 고전 암호와 흔한 부호화에 초점을 맞춥니다. AES나 RSA 같은 현대 암호는 인식하려 하지 않는데, 그 출력은 완전히 무작위로 보이도록 설계되어 식별할 만한 구조를 전혀 지니지 않기 때문입니다. 결과는 맞는 디코더를 가리켜 주는 전문가의 힌트로 여기고, 보장된 판정으로 받아들이지는 마세요.

자주 묻는 질문

암호 식별기란 무엇인가요?
암호 식별기는 알 수 없는 텍스트를 분석해 어떤 암호나 부호화로 만들어졌을 가능성이 가장 높은지 알려줍니다. 디코더를 하나씩 손으로 시도하는 대신, 암호문을 한 번만 붙여넣으면 후보 목록을 신뢰도와 함께 정렬해서 받고, 각 후보마다 맞는 디코더로 연결되는 링크를 얻습니다.
어떻게 무슨 암호인지 알아내나요?
고전 암호 분석을 사용합니다. Morse, 이진수, 16진수, Base64, 숫자 코드는 각각 독특한 알파벳을 쓰기 때문에 먼저 문자 집합을 확인합니다. 글자 기반 텍스트의 경우 글자 빈도와 일치 지수를 측정한 다음 카이사르와 Atbash 검사를 실행하고, 모든 증거를 결합해 정렬된 목록으로 만듭니다. 완전히 규칙 기반이므로 모든 결과에 설명이 따라옵니다.
일치 지수란 무엇인가요?
일치 지수는 텍스트에서 무작위로 고른 두 글자가 같을 확률을 측정합니다. 영어는 약 0.067이고 무작위 텍스트는 약 0.038입니다. 단일 치환 암호는 그 값을 0.066 근처로 높게 유지하는 반면, Vigenère 같은 다중 치환 암호는 0.04 쪽으로 평탄하게 만듭니다. 이는 두 계열을 구분하는 데 가장 유용한 단 하나의 단서입니다.
모든 암호를 식별할 수 있나요?
아닙니다. 퍼즐, 게임, 역사에 나오는 고전 암호와 흔한 부호화, 통틀어 열다섯 계열 이상을 다룹니다. 출력이 무작위로 보이고 구조를 지니지 않도록 설계된 AES나 RSA 같은 현대 암호는 인식하지 못합니다. 결과는 맞는 디코더를 가리켜 주는 강력한 힌트로 여기고, 보장된 답으로 받아들이지는 마세요.
왜 하나 이상의 암호를 제안하나요?
증거가 모호할 때, 이 도구는 답을 놓치지 않도록 일부러 여러 가능성을 신뢰도순으로 나열합니다. 특히 짧은 메시지는 확정적인 판정을 주는 경우가 드물어 후보가 두세 개 보이는 것이 정상입니다. 가장 유력한 것부터 시작해 목록을 따라 내려가세요.
제 텍스트가 평문이라고 나옵니다. 무슨 뜻인가요?
글자 분포가 이미 평범한 영어와 일치한다는 뜻이며, 따라서 애초에 암호화되지 않았거나 정상적인 빈도를 보존하는 암호를 쓴 것일 수 있습니다. 암호일 거라고 예상했다면, 그 메시지가 그냥 읽을 수 있는 것인지, 아니면 영어 같은 통계를 유지하는 방식으로 부호화된 것인지 확인해 보세요.
이 도구가 메시지도 해독해 주나요?
식별기는 여러분이 어떤 암호를 가졌는지 알려 주는 데 초점을 둡니다. 해독하려면 최상위 후보의 링크를 클릭하세요. 그러면 해당 암호의 전용 디코더가 열립니다. 카이사르, Base64, Morse, 이진수, 16진수처럼 즉시 해독되는 것도 있고, Vigenère처럼 보통 키나 해독기가 필요한 것도 있지만, 어떤 도구를 써야 할지는 정확히 알게 됩니다.
제 텍스트가 서버로 업로드되나요?
아닙니다. 모든 분석은 전적으로 브라우저 안에서 일어나므로 여러분의 텍스트는 결코 업로드되거나 기록되거나 저장되지 않습니다. 공유 링크조차도 여러분의 텍스트를 URL의 해시 뒤쪽 부분에 담는데, 브라우저는 이 부분을 결코 서버로 보내지 않으므로 여러분이 공유하기로 선택할 때까지 비공개로 유지됩니다.
어떤 암호와 부호화를 감지할 수 있나요?
특히 Morse 부호, 이진수, 16진수, Base64, Baconian, Polybius 사각형, A1Z26과 ASCII 숫자 코드, ADFGX와 ADFGVX, 카이사르와 ROT 시프트 암호, Atbash, 키워드와 아핀 치환, Vigenère와 그 밖의 다중 치환 암호, 그리고 Playfair 방식의 이중 문자 암호를 인식합니다.
왜 매우 짧은 메시지는 식별하지 못하나요?
빈도 분석이나 일치 지수 같은 통계 검사는 신뢰할 만하려면 충분한 글자가 필요합니다. 몇 글자만으로는 한 암호를 다른 암호와 구분할 만한 정보가 충분하지 않아, 짧은 표본은 흔히 모호하거나 식별 불가로 돌아옵니다. 메시지가 길수록 식별은 더 확실해집니다.
암호를 손으로 어떻게 식별하나요?
먼저 알파벳을 보세요. 점과 선은 Morse, 0과 1은 이진수, A, D, F, G, V, X로 된 알파벳은 ADFGX를 뜻합니다. 글자의 경우 빈도를 확인하세요. 영어에서 E가 그러하듯 한 암호 글자가 두드러진다면 단순 시프트나 치환일 가능성이 높고, 빈도가 평탄해 보이면 다중 치환일 가능성이 높습니다. 이 도구는 바로 그러한 검사를 자동화합니다.
암호와 부호화의 차이는 무엇인가요?
Base64, 16진수, Morse 같은 부호화는 단지 텍스트를 다른 형태로 나타낼 뿐이며 되돌리는 데 비밀 키가 필요 없습니다. 카이사르나 Vigenère 같은 암호는 메시지를 일부러 숨기며 해독하려면 키가 필요합니다. 식별기는 둘 다 다루는데, 정체불명의 텍스트를 마주하면 먼저 둘 중 어느 쪽을 상대하는지 알아야 하기 때문입니다.

관련 도구

이런 편리한 도구도 함께 사용해 보세요

카이사르 암호

비제네르 암호

아트바시 암호

레일 펜스 암호

플레이페어 암호

아핀 암호