관용암호방식 Korea College of Information & Technology
관용암호방식 암호화와복호화에동일한키를사용 공통키암호방식또는암호화와복호화과정이대칭적이어서대칭암호방식이라고도호칭함 수천년전부터사용되어오고있는암호방식 평문의문자를다른문자로환자 ( 치환 ) 하거나또는문자의위치를바꾸는전치과정으로구성 Korea College of Information & Technology 2
관용암호방식 Korea College of Information & Technology 3
수업내용 환자암호 전치암호 적암호 ( 전치 + 환자 ) 스트림암호 암호해독 Questions & Answers Korea College of Information & Technology 4
환자암호 Korea College of Information & Technology
환자암호 시프트암호 단순환자암호 Affine 암호 동음이의환자암호 다표식환자암호 철자환자암호 Hill 암호 Playfair 암호 Korea College of Information & Technology 6
시프트암호 환자암호중에가장간단한방법으로영문자를다음과같이나열하고일정방향으로일정간격시프트 (shift) 시키는방법 특히시프트간격을 3 으로한경우를 Caesar 암호라고한다. Korea College of Information & Technology 7
시프트암호 Korea College of Information & Technology 8
시프트암호 Caesar 암호의예 Korea College of Information & Technology 9
시프트암호 수식표현 Korea College of Information & Technology 10
예제 시프트암호의키가 K=11 일때, 다음의평문 M 을암호화해보자. 평문 s u b s t i t u t i o n c i p h e r Korea College of Information & Technology 11
시프트암호의안전성 법 26 을이용한시프트암호는안전하지못하다. 침해자가 K 에 0 부터 25 까지키를대입해보면의미있는문장을찾을수있음 시프트암호는이러한소모적공격 (exhaustive key search) 에매우취약함 Korea College of Information & Technology 12
예제 시프트암호에의한암호문 C 가다음과같다. 소모적공격으로평문 M 을찾아보자. 암호문 R Y G K B O I Y E Q O D D S X Q Y X Korea College of Information & Technology 13
단순환자암호 (simple substitution) 평문문자를암호문문자로치환하는방식 평문영문자를무작위로다른영문자로치환하여암호문을만드는단순환자암호표 p.64 [ 그림 3.3] 참고 단순환자암호복호표 p.65 [ 그림 3.4] 참고 Korea College of Information & Technology 14
단순환자암호의예 Korea College of Information & Technology 15
단순환자암호의안전성 시프트암호보다전사공격에는안전 키의수 = 26!( 약 4 * 10 26 개 ) 빈도수에의한통계적분석으로해독가능 충분한길이의암호문, 암호문의양이많을수록통계적성질이많이유지되어암호문해독이용이함 p.65 [ 표 3.1], p.66 [ 표 3.2], [ 표 3.3] Korea College of Information & Technology 16
Affine 암호 시프트암호방식 C M +K mod 26, K = 3 Affine 암호 C K 1 M + K 2 mod 26 gcd (K 1, 26) = 1 ax = b mod m 에서 gcd(a,m)=1 이면유일한해 x 존재함 12 개의 K 1 과 26 개의 K 2 의조합이키가될수있으므로키숫자는 12*26=312 Korea College of Information & Technology 17
예제 K 1 =3, K 2 =15 일때 information security 를 Affine 암호화하자. Korea College of Information & Technology 18
Affine 암호의예 K 1 = {1,3,5,7,9,11,15,17,19,21,23,25} 중 K 1 = 7 K 2 = 1 Korea College of Information & Technology 19
동음이의환자암호 단순환자암호방식처럼언어통계학적성질을이용한해독에취약한것을보완하기위해고안된방식 암호문의문자빈도가균등하게분포되도록만드는방식 Korea College of Information & Technology 20
동음이의환자암호 미국의 T.J.Beale 이고안한 Beale 암호방식 Korea College of Information & Technology 21
동음이의환자암호의예 p.69 [ 최하단 ] Korea College of Information & Technology 22
예제 Korea College of Information & Technology 23
다표식환자암호 (Vigenere cipher) polyalphabetic substitution pronounced /viːdʒɪnɛəɹ/, "veez-ih-nair" 1553 발간된책에기술됨 ( La cifra del. Sig. Giovan Battista Bellaso ) 19th 세기에알려져, 현재 "Vigenère cipher 로알려짐 Korea College of Information & Technology 24
다표식환자암호 (Vigenere cipher) 표 Korea College of Information & Technology 25
예제 키워드 SECURITY 로 Vigenere 암호방식에따라다음을암호화해보자 Korea College of Information & Technology 26
철자환자암호 Hill 암호 Playfair 암호 Korea College of Information & Technology 27
철자환자암호 Hill 암호 다형환자암호 Polygram substitution cipher 두문자이상을묶어이들을다른문자나숫자로변환 Invented by Lester S. Hill in 1929 Korea College of Information & Technology 28
철자환자암호 Hill 암호 Hill's "Message Protector" patent Korea College of Information & Technology 29
철자환자암호 Hill 암호 철자환자암호 - Hill 암호 Korea College of Information & Technology 30
예제 a A c b, A d 다음행렬 K 로 Hill 암호및복호화하기 1 1 ad bc d c b a M op, K 11 3 8 mod 26, K 7 1 7 23 18 mod 26 11 C MK mod 26 11 8 C 14 15 mod 26 3 7 (154 45,112 105) mod 26 (17,9) mod 26 RJ M CK 1 mod 26 7 18 C 17 9 mod 26 23 11 (119 207,306 99) mod 26 (14,15) mod 26 op Korea College of Information & Technology 31
철자환자암호 - Playfair 암호 The Playfair system was invented by Charles Wheatstone, who first described it in 1854. Lord Playfair, who heavily promoted its use. Korea College of Information & Technology 32
철자환자암호 - Playfair 암호 Playfair 암호표의예 암호표생성규칙 키워드의문자를테이블에좌 우, 위 아래방향으로하나씩채움 ( 단, 중복문자는버림 ) 나머지남는공간은알파벳순서로채움 알파벳의개수 (25) 를맞추기위해일반적으로 "J" 를생략 (J=I) 또는많이사용되지않는 "Q" 를생략 (Q=Z) Korea College of Information & Technology 33
철자환자암호 - Playfair 암호 Playfair 암호표의예 2 Using "playfair example" as the key, the table becomes Korea College of Information & Technology 34
철자환자암호 - Playfair 암호 Playfair 암호화절차 먼저평문의띄어쓰기를없애면서, 2 문자씩분리하는데 연속되는문자 ( 예 PP) 가있으면같은문자사이에 X 를삽입 ( 예 PXP) 하여같은알파벳이중복되지않도록하면서다시 2 문자씩분리하는방법을계속함 전체의글자수가홀수이면맨마지막에 X 를추가하여짝수개로만듬 Korea College of Information & Technology 35
철자환자암호 - Playfair 암호 Playfair 암호화절차 1) 동일행에 m 1 m 2 가있으면 c 1 c 2 는우측문자 2) 동일열에 m 1 m 2 가있으면 c 1 c 2 는아래문자 3) 다른행열에 m 1 m 2 가있으면 c 1 c 2 는대각문자 Korea College of Information & Technology 36
예제 아래의표를참고하여평문 informationsecurity 를 Playfair 암호화하기 Korea College of Information & Technology 37
전치암호 Korea College of Information & Technology
전치암호 (transposition cipher) 평문문자의순서를어떤특별한절차에따라재배치하여평문을암호화하는방식 scytale 암호 단순전치암호 Nihilist 암호 Korea College of Information & Technology 39
scytale 암호 Korea College of Information & Technology 40
단순전치암호 simple transposition cipher 정상적인평문배열을특정한키의순서에따라평문배열을재조정하여암호화하는방식 Korea College of Information & Technology 41
예제 단순전치암호의키가다음과같을때 information security 를암호화하자 Korea College of Information & Technology 42
Nihilist 암호 단순전치암호의암호강도를높이기위해행은물론열에대해서도전치를적용한암호 키워드에따라먼저행을일정간격으로전치시키고다시키워드의순서에따라열을일정간격으로전치시킨다. 때로는, 전치를대각선방향으로하는경우도있다. Korea College of Information & Technology 43
예제 LEMON 이라는키워드를이용한 Nihilist 암호를구성해보자 Korea College of Information & Technology 44
적암호 Korea College of Information & Technology
적암호 (product cipher) 암호강도를향상시키기위해전치와환자를혼합한암호방식 대표적인예 제 1 차세계대전때독일군이사용하던 ADFGVX 암호 대부분의현대관용암호방식은적암호방식을이용하고있음 Korea College of Information & Technology 46
적암호 ADFGVX 암호 Feistel DES Rijndael(AES) SEED Korea College of Information & Technology 47
ADFGVX 암호 ADFGVX 의여섯개의문자를행과열로나열한다음 36 개의열과행이직교하는위치에 26 개의문자와 10 개의숫자를무작위로대입하여암호화 Korea College of Information & Technology 48
ADFGVX 암호 ADFGVX 암호환자표 Korea College of Information & Technology 49
예제 평문 conventional cryptography 를앞의표에따라전치키워드 CIPHER 로 ADFGVX 암호화해보자. 중간암호문작성 ( 환자 ) 전치키워드를이용한전치 Korea College of Information & Technology 50
Feistel 암호 Shannon 의암호이론을근거로전치와환자를반복적용한적암호를구성함 간편한방식과암호의안전성이높아대부분의현대관용암호방식설계에 Feistel 암호방식이이용되고있음 Korea College of Information & Technology 51
[ 참고 ] Claude Shannon Claude Elwood Shannon April 30, 1916 February 24, 2001 an American electronic engineer and mathematician, is known as "the father of information theory". 정보이론의아버지 Claude Elwood Shannon (1916-2001) Korea College of Information & Technology 52
Feistel 암호방식 Korea College of Information & Technology 53
Feistel 암호방식 관계식 LE 16 = RE 15 RE 16 = LE 15 f (RE 15, K 16 ) Korea College of Information & Technology 54
Feistel 암호방식의복호화과정 복호화과정 LD 1 = RD 0 = LE 16 = RE 15 RD 1 = LD 0 f (RD 0, K 16 ) = RE 16 f (RD 0, K 16 ) = [LE 15 f (RE 15, K 16 )] f (RE 15, K 16 ) = LE 15 LD 16 = RE 0 RD 16 = LE 0 A B B = A Korea College of Information & Technology 55
스트림암호 Korea College of Information & Technology
스트림암호 비트단위의암호화를수행 메시지열과키계열을이진합하여암호화하는방식 Korea College of Information & Technology 57
스트림암호 스트림암호방식의암호강도는키계열의무작위성이결정한다. 키스트림의비예측성 (unpredictability) 을충족하기위해서최대주기, 선형복잡도, 난수성필요 일반적으로키계열은선형궤환시프트레지스터 (linear feedback shift register, LFSR) 를이용하여생성함 Korea College of Information & Technology 58
4 단선형궤환시프트레지스터 플립플롭의초기값은모두 0 이어서는안됨 왜냐하면, 출력키계열은계속해서 0 만출력함 스트림암호는암호문과평문이동일하게됨 Korea College of Information & Technology 59
예제 [ 그림 3.8] 의선형궤환시프트레지스터의플립플롭 F/F i 의초기값이 1010 일때키계열을구해보자. Korea College of Information & Technology 60
암호해독 환자암호의해독 Korea College of Information & Technology
암호해독 암호방식의정규참여자가아닌제삼자로암호문으로부터평문을찾으려는시도를암호해독또는공격이라함 암호해독자, 제삼자, 침해자 eavesdropper ( 사적인대화를 ) 엿듣는사람. Korea College of Information & Technology 62
암호해독방법 암호문단독공격 (Ciphertext-only Attack) 기지평문공격 (Known-plaintext Attack) 선택평문공격 (Chosen-plaintext Attack) 선택암호문공격 (Chosen-ciphertext Attack) Korea College of Information & Technology 63
[ 참고 ] 환자암호의해독 교재 p.90 Korea College of Information & Technology 64
Questions & Answers Korea College of Information & Technology 65