맨위로가기

고전 암호

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

고전 암호는 이동 암호와 치환 암호로 구분되며, 치환과 이동을 혼합한 더 복잡한 알고리즘도 존재한다. 치환 암호는 문자를 다른 문자로 대체하는 방식이며, 시저 암호, 키워드 기반 암호, 다중 문자 치환 암호 등이 있다. 전치 암호는 문자의 순서를 변경하는 방식으로, 열 암호, 중국 암호 등이 존재한다. 은닉 암호는 메시지 내에 널 문자를 포함시키는 방식이다. 고전 암호는 키 공간이 작거나 빈도 분석에 취약하여 해독이 쉬우며, 현대 암호는 이러한 공격에 더 강력하게 설계되었다. 고전 암호의 일부 기술은 현대 암호 강화에 사용될 수 있다.

2. 종류

고전 암호는 주로 이동 암호와 치환 암호로 나눌 수 있다. 더 복잡한 방식으로는 암호 생성 시에 치환과 이동을 섞는 것이 있다. DES와 같은 현대 블록 암호는 치환과 이동을 여러 차례 반복한다.

고전 암호는 전치 암호와 대체 암호로 자주 분류되지만, 은닉 암호도 존재한다.

2. 1. 치환 암호 (Substitution Cipher)

치환 암호는 문자(또는 문자열)가 체계적으로 다른 문자(또는 문자열)로 대체되는 암호화 방식이다. 예를 들어, 알파벳에서 각 문자를 다음 문자로 치환하는 간단한 방법이 있다. (즉, a는 b로, b는 c로, c는 d로, …, 마지막으로 z는 a로 치환한다.) 이 방법을 사용하면 "Hello my name is Bob."은 "Ifmmp nz obnf jt Cpc."으로 암호화된다.

대체 암호는 메시지 전체에서 문자 또는 문자 그룹을 다른 문자, 문자 그룹 또는 기호로 체계적으로 대체하는 암호이다.[1]

대체 암호의 잘 알려진 예는 시저 암호이다. 시저 암호로 메시지를 암호화하려면 메시지의 각 문자를 알파벳에서 세 자리 뒤의 문자로 바꾼다. 따라서 A는 D로, B는 E로, C는 F로 대체된다. 마지막으로 X, Y 및 Z는 각각 A, B 및 C로 대체된다. 예를 들어 "WIKIPEDIA"는 "ZLNLSHGLD"로 암호화된다. 시저는 알파벳을 세 글자씩 회전시켰지만 어떤 숫자도 작동한다.[1]

대체 암호의 또 다른 방법은 키워드를 기반으로 한다. 인코더는 단어 또는 구문에서 모든 공백과 중복된 문자를 제거한 다음 암호 알파벳의 시작으로 사용한다. 암호 알파벳의 끝은 키워드의 문자를 반복하지 않고 순서대로 나머지 알파벳이다. 예를 들어, 키워드가 CIPHER인 경우 암호 알파벳은 다음과 같다.[1]

일반 알파벳a b c d e f g h i j k l m n o p q r s t u v w x y z
암호 알파벳c i p h e r a b d f g j k l m n o q s t u v w x y z



앞의 예는 모두 하나의 암호 알파벳만 사용되는 단일 문자 대체 암호의 예이다. 여러 개의 암호 알파벳이 사용되는 다중 문자 대체 암호도 사용할 수 있다. 인코더는 원하는 기술을 사용하여 두 개 이상의 암호 알파벳을 만들고 메시지를 인코딩하여 각 문자 또는 단어마다 사용되는 암호 알파벳을 번갈아 가며 사용한다. 이렇게 하면 암호 해독자가 두 암호 알파벳을 모두 파악해야 하므로 메시지를 해독하기가 훨씬 더 어려워진다.[1]

해독하기가 훨씬 더 어려운 다중 문자 대체 암호의 또 다른 예는 혁신적인 인코딩 방법인 비제네르 사각 표이다. 사각 표를 사용하면 텍스트를 암호화하는 데 26개의 서로 다른 암호 알파벳이 사용된다. 각 암호 알파벳은 원본 알파벳을 오른쪽으로 이동한 또 다른 시저 암호이다. 비제네르 사각 표는 다음과 같다.[1]

:A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

:B C D E F G H I J K L M N O P Q R S T U V W X Y Z A

:C D E F G H I J K L M N O P Q R S T U V W X Y Z A B

:D E F G H I J K L M N O P Q R S T U V W X Y Z A B C

:E F G H I J K L M N O P Q R S T U V W X Y Z A B C D

:F G H I J K L M N O P Q R S T U V W X Y Z A B C D E

:G H I J K L M N O P Q R S T U V W X Y Z A B C D E F

:H I J K L M N O P Q R S T U V W X Y Z A B C D E F G

:I J K L M N O P Q R S T U V W X Y Z A B C D E F G H

:J K L M N O P Q R S T U V W X Y Z A B C D E F G H I

:K L M N O P Q R S T U V W X Y Z A B C D E F G H I J

:L M N O P Q R S T U V W X Y Z A B C D E F G H I J K

:M N O P Q R S T U V W X Y Z A B C D E F G H I J K L

:N O P Q R S T U V W X Y Z A B C D E F G H I J K L M

:O P Q R S T U V W X Y Z A B C D E F G H I J K L M N

:P Q R S T U V W X Y Z A B C D E F G H I J K L M N O

:Q R S T U V W X Y Z A B C D E F G H I J K L M N O P

:R S T U V W X Y Z A B C D E F G H I J K L M N O P Q

:S T U V W X Y Z A B C D E F G H I J K L M N O P Q R

:T U V W X Y Z A B C D E F G H I J K L M N O P Q R S

:U V W X Y Z A B C D E F G H I J K L M N O P Q R S T

:V W X Y Z A B C D E F G H I J K L M N O P Q R S T U

:W X Y Z A B C D E F G H I J K L M N O P Q R S T U V

:X Y Z A B C D E F G H I J K L M N O P Q R S T U V W

:Y Z A B C D E F G H I J K L M N O P Q R S T U V W X

:Z A B C D E F G H I J K L M N O P Q R S T U V W X Y

비제네르 사각 표를 사용하여 메시지를 암호화하려면, 먼저 사용할 키워드를 선택한 다음 인코딩할 메시지와 길이가 같을 때까지 반복한다. LEMON영어이 키워드인 경우 반복된 키워드의 각 문자는 코딩할 메시지의 각 문자에 대해 사용할 암호(어떤 행)를 알려준다. 두 번째 행의 암호 알파벳은 A에 B를, B에 C를 사용한다. 즉, 암호 알파벳 'B'이다. 각 암호 알파벳은 첫 번째 문자로 이름이 지정된다. 예를 들어 키워드가 LEMON영어이고 인코딩할 메시지가 ATTACKATDAWN영어인 경우 인코딩은 다음과 같다.[1]

평문A T T A C K A T D A W N
L E M O N L E M O N L E
암호문L X F O P V E F R N H R



일부 대체 암호는 문자가 아닌 숫자를 사용한다. 이러한 예 중 하나는 대 암호로, 음절을 나타내기 위해 숫자가 사용되었다. 또한 키워드를 기반으로 문자에 대한 네 가지 다른 숫자 쌍 옵션이 있는 또 다른 숫자 대체 암호도 있다.[1]

숫자 대신 기호를 사용하여 문자 또는 음절을 바꿀 수도 있다. 이러한 예 중 하나는 조디악 알파벳으로, 별자리의 기호가 서로 다른 문자를 나타내는 데 사용되었다. 예를 들어, 태양 기호는 A를, 목성은 B를, 토성은 C를 나타낸다. 점, 선 또는 대시도 사용할 수 있으며, 그 예로 모스 부호가 있는데, 암호는 아니지만 문자로 점과 대시를 사용한다. 피그펜 암호는 그리드 시스템 또는 선과 점을 사용하여 문자에 대한 기호를 설정한다. 알파벳의 문자를 기호 또는 점과 대시로 대체하는 다양한 다른 방법이 있다.[1]

2. 2. 전치 암호 (Transposition Cipher)

전치 암호에서는 문자 자체는 변경되지 않지만, 메시지 내에서 문자의 순서는 잘 정의된 방식에 따라 뒤섞인다. 많은 전치 암호는 기하학적 설계를 따른다. 간단한 (그리고 다시 해독하기 쉬운) 암호화 방법은 모든 단어를 거꾸로 쓰는 것이다. 예를 들어 "Hello my name is Alice."는 "olleH ym eman si ecilA."가 된다. 스키테일은 전치 방식을 돕는 기계이다.

열 암호에서는 원래 메시지가 왼쪽에서 오른쪽, 위에서 아래로 사각형으로 배열된다. 다음으로 키를 선택하여 사각형의 각 열에 숫자를 할당하여 재배열 순서를 결정한다. 키의 문자에 해당하는 숫자는 알파벳에서의 위치에 따라 결정된다. 즉, A는 1, B는 2, C는 3 등이다. 예를 들어, 키워드가 CAT이고 메시지가 THE SKY IS BLUE인 경우 메시지는 다음과 같이 배열된다.

CAT
3120
THE
SKY
ISB
LUE



다음으로, 문자는 숫자 순서대로 가져오며, 메시지는 이렇게 전치된다. A 아래의 열이 먼저 가져오고, C 아래의 열, T 아래의 열 순서로 가져오면 "The sky is blue" 메시지는 HKSUTSILEYBE가 된다.

중국 암호의 전치 방식에서는 메시지의 문자를 오른쪽에서 왼쪽으로, 열을 아래로 위로 써서 문자를 뒤섞는다. 그런 다음 첫 번째 행부터 시작하여 문자를 순서대로 가져와 새로운 암호문을 얻는다. 예를 들어, 암호화해야 할 메시지가 THE DOG RAN FAR인 경우 중국 암호는 다음과 같다.

RRGT
AAOH
FNDE



암호문은 다음과 같다. RRGT AAOH FNDE

많은 전치 암호는 이 두 가지 예와 유사하며, 일반적으로 문자를 행 또는 열로 재정렬한 다음 체계적인 방식으로 가져와 문자를 전치한다. 다른 예로는 수직 평행 암호와 이중 전치 암호가 있다.

더 복잡한 알고리즘은 치환과 전치를 곱 암호에서 혼합하여 형성할 수 있다. DES와 같은 현대의 블록 암호는 여러 단계의 치환과 전치를 반복한다.

2. 3. 스테가노그래피 (Steganography)

간단히 말해서, 은닉 암호 또는 널 암호는 여러 개의 ''널(null)'' 또는 미끼 문자를 포함하는 모든 암호를 말한다. 널 암호는 지정된 영역에 널이 배치된 평문 단어일 수도 있고, 각 단어의 끝에 널이 있는 다른 위치에서 분리된 평문 메시지일 수도 있다.[1][2] 그러나 널이 몇 개(예: 시작 부분에 하나, 끝 부분에 하나)만 있는 메시지는 ''널 암호''가 아니다.

예를 들어, 잉글랜드 내전 동안 왕당파 존 트레바니안 경은 다음 메시지로 콜체스터의 청교도 성에서 탈출하는 데 도움을 받았다.[3]

WORTHIE SIR JOHN, HOPE, THAT IS YE BESTE COMFORT OF YE AFFLICTED, CANNOT MUCH, I FEAR ME, HELP YOU NOW. THAT I WOULD SAY TO YOU, IS THIS ONLY: IF EVER I MAY BE ABLE TO REQUITE THAT I DO OWE YOU, STAND NOT UPON ASKING ME. TIS NOT MUCH THAT I CAN DO; BUT WHAT I CAN DO, BEE YE VERY SURE I WILL. I KNOW THAT, IF DETHE COMES, IF ORDINARY MEN FEAR IT, IT FRIGHTS NOT YOU, ACCOUNTING IT FOR A HIGH HONOUR, TO HAVE SUCH A REWARDE OF YOUR LOYALTY. PRAY YET YOU MAY BE SPARED THIS SOE BITTER, CUP. I FEAR NOT THAT YOU WILL GRUDGE ANY SUFFERINGS; ONLY IF BIE SUBMISSIONS YOU CAN TURN THEM AWAY, TIS THE PART OF A WISE MAN. TELL ME, AN IF YOU CAN, TO DO FOR YOU ANYTHINGE THAT YOU WOLDE HAVE DONE. THE GENERAL GOES BACK ON WEDNESDAY. RESTINGE YOUR SERVANT TO COMMAND.|워시 서 존, 희망, 그것은 고통받는 자의 가장 좋은 위안이며, 지금은 그다지 도움이 되지 않을까 두렵습니다. 내가 당신에게 말하고 싶은 것은 이것뿐입니다. 만약 내가 당신에게 빚진 것을 갚을 수 있다면, 나에게 요구하는 것을 주저하지 마십시오. 내가 할 수 있는 일은 많지 않지만, 내가 할 수 있는 일은 무엇이든 반드시 할 것입니다. 나는 죽음이 온다면, 평범한 사람들이 그것을 두려워한다면, 그것이 당신을 두렵게 하지 않고, 당신의 충성심에 대한 그러한 보상을 받는 것을 높은 영광으로 여기는 것을 알고 있습니다. 그러나 당신이 이 쓰라린 잔을 면할 수 있기를 바랍니다. 나는 당신이 어떤 고통도 아까워하지 않을까 두렵지 않습니다. 오직 복종함으로써 당신이 그것들을 물리칠 수 있다면, 그것은 현명한 사람의 몫입니다. 당신이 할 수 있다면, 당신이 하고 싶은 일을 나에게 말해주세요. 장군은 수요일에 돌아갑니다. 당신의 종에게 명령하기 위해 휴식을 취합니다.영어

각 구두점 뒤의 세 번째 글자는 "예배당 동쪽 끝의 패널이 미끄러집니다"를 나타낸다.

점 또는 바늘 구멍 널 암호는 글의 특정 문자 위 또는 아래에 점 또는 바늘 구멍을 배치하는 일반적인 고전 암호화 방법이다.[4] 이에 대한 초기 언급은 아에네아스 타티쿠스가 그의 저서 《요새 방어에 관하여》에서 썼을 때였다.[5]

3. 암호 해독

고전 암호는 일반적으로 해독하기가 매우 쉽다. 공격자가 충분한 암호문만 알고 있어도 많은 고전 암호를 해독할 수 있으며, 따라서 이들은 암호문 단독 공격에 취약하다. 카이사르 암호와 같은 일부 고전 암호는 키 공간이 작아 모든 키를 시도해 보는 무차별 대입 공격으로 해독할 수 있다. 치환 암호는 키 공간이 클 수 있지만, 평문 언어에서 빈번한 문자가 암호문에서 빈번한 문자에 해당하기 때문에 빈도 분석에 종종 취약하다. 비제네르 암호와 같은 다중 알파벳 암호는 여러 치환을 사용하여 단순한 빈도 분석을 방지하지만, 카시스키 검사와 같은 더 발전된 기술을 사용하여 해독할 수 있다.[1]

반면에 현대 암호는 암호문 단독 공격보다 훨씬 강력한 공격에 견딜 수 있도록 설계되었다. 우수한 현대 암호는 기지 평문 공격, 선택 평문 공격은 물론 선택 암호문 공격을 포함한 광범위한 잠재적 공격에 대해 안전해야 한다. 이러한 암호의 경우 공격자는 평문과 해당 암호문의 양을 알고 있고, 심지어 평문이나 암호문을 직접 선택할 수 있더라도 키를 찾을 수 없어야 한다. 고전 암호는 이러한 훨씬 더 강력한 기준을 충족하지 못하므로 더 이상 심각한 응용 분야에 사용되지 않는다.[1]

고전 암호의 일부 기술은 현대 암호를 강화하는 데 사용될 수 있다. 예를 들어, MixColumns 단계는 AES에서 힐 암호이다.[1]

4. 현대 암호에의 영향

고전 암호는 일반적으로 해독하기가 매우 쉽다. 공격자가 충분한 암호문만 알고 있어도 많은 고전 암호를 해독할 수 있으며, 따라서 이들은 암호문 단독 공격에 취약하다. 일부 고전 암호(예: 카이사르 암호)는 키 공간이 작다. 이러한 암호는 모든 키를 시도해 보는 무차별 대입 공격으로 해독할 수 있다. 치환 암호는 키 공간이 클 수 있지만, 평문 언어에서 빈번한 문자가 암호문에서 빈번한 문자에 해당하기 때문에 빈도 분석에 종종 취약하다. 비제네르 암호와 같은 다중 알파벳 암호는 여러 치환을 사용하여 단순한 빈도 분석을 방지한다. 그러나 카시스키 검사와 같은 더 발전된 기술을 사용하여 이러한 암호를 해독할 수 있다.

반면에 현대 암호는 암호문 단독 공격보다 훨씬 강력한 공격에 견딜 수 있도록 설계되었다. 우수한 현대 암호는 기지 평문 공격과 선택 평문 공격은 물론 선택 암호문 공격을 포함한 광범위한 잠재적 공격에 대해 안전해야 한다. 이러한 암호의 경우 공격자는 평문과 해당 암호문의 양을 알고 있고, 심지어 평문이나 암호문을 직접 선택할 수 있더라도 키를 찾을 수 없어야 한다. 고전 암호는 이러한 훨씬 더 강력한 기준을 충족하지 못하므로 더 이상 심각한 응용 분야에 사용되지 않는다.

고전 암호의 일부 기술은 현대 암호를 강화하는 데 사용될 수 있다. 예를 들어, MixColumns 단계는 AES에서 힐 암호이다.

참조

[1] 서적 The Spy's Guidebook Usborne Pocketbooks
[2] 서적 Explorer Academy Codebreaking Activity Adventure National Geographic Books
[3] 서적 Top Secret: a Handbook of Codes, Ciphers, and Secret Writing Candlewick Press
[4] 서적 Top Secret: a Handbook of Codes, Ciphers, and Secret Writing Candlewick Press
[5] 웹사이트 Aeneas Tacticus • Siege Defense, XXI‑XXXI https://penelope.uch[...] 2022-05-28
[6] 웹사이트 Understanding AES Mix-Columns Transformation Calculation https://www.angelfir[...] 2016-10-26



본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.

문의하기 : help@durumis.com