본문 바로가기

정보보안기사

Part 03. 대칭키 암호(1)

1.현대 블록 암호

1)현대 블록암호의 구성요소

:전치 요소(P-box) 치환 요소(S-box) 결합하여 설계

(1)P-box

:전치 암호를 병렬적 수행

①단순 P박스

②축소 P박스: 특정비트는 소실되어 출력되지 않음

③확장 P박스: 비트의 양을 증가시키고자 사용

구분

입력(m),출력(n)

역함수

비고

단순

m=n

O

    •  

축소

m>n

X

비트를 줄일

확장

m

X

비트를 늘릴

 

(2)S-box

:역함수가 존재하면 입력비트와 출력비트의 개수가 동일, 치환 암호

 

(3)합성 암호

:Shannon 치환, 전치, 다른 구성요소를 결합

Shannon 업적

-정보이론의 창시자

-일회용 패드(OTP) 안정성을 증명

-혼돈과 확산을 정의

②혼돈: 평문을 찾고자 하는 공격자를 좌절

③확산: 키를 찾고자 하는 공격자를 좌절

 

④라운드: 반복적 합성 암호를 사용

->DES(16회전),3DES(48회전)

 

(4)두가지 종료의 합성 암호

Feistel 암호

-강도를 결정짓는 요소: 평문 블록의 길이, 키의 길이, 라운드의

-AES최종후보인 알고리즘(MARS,RC6,Twofish)에서 사용

(, Rijndael 사용X)

SPN 구조

:Shannon 이론에 근거

 

Feistel

그물을 짜듯이

암호화 과정=복호화 과정

3회전이상 짝수라운드

DES,3DES,SEED

SPN

전치+치환 반복

암호화 과정복호화 과정

병렬구조

AES,ARIA

 

(5)블록암호에 대한 공격

①차분 분석

-Biham Shamir 개발

-평문의 일부를 변경 => 선택 평문 공격

②선형 분석

-암호 해독자가 임의로 만든 평문을 암호화 가능을 가정

-근사 선형 관계성을 찾으면 기지 평문 공격 가능

③전수공격법

-Diffie, Hellman 방법

-경우의 수가 많은 경우에는 실현 불가능

④통계적 분석

:빈도와 통계적 자료를 이용

⑤수학적 분석

:통계적 방법과 수학적이론을 이용

 

2)현대 스트림 암호

:임호화와 복호화는 한번에 r비트를 생성함

(1)스트림 암호 설계 고려사항

①암호화의 연속은 주기를 가져야함

②키 스트림(K1...Kn) 난수 스트림과 비슷

Ex)10 개수는 거의 동일해야함

③전사적 공격에 대응위해 키가 길어야함(적어도 128비트)

 

(2)동기식 스트림 암호

①키 스트림은 평문 또는 암호문 스트림과 독립적

One Time Pad(OPT ;버냄암호)

-길버트 버냄이 설계

-해독이 불가능하기 때문에 절대적 안정성

-배타적 논리합 연산사용, 한번에 비트씩 적용(XOR)

-암호화 알고리즘과 복호화 알고리즘은 역관계(≠역수관계)

- 사이즈 평문과 동일

-키는 재사용X -> 진난수

-ex)강대국간 핫라인

-cf)OTP(One time Password)

③귀환(Feedback) 시프트 레지스터(FSR)

:시프트 레지스터와 귀환함수로 구성

④선형 귀환 시프트 레지스터(LFSR)

특정위치 비트를 변경할 경우 암호화된 결과에서도 같은 위치 비트가

변경되고, 다른 위치의 비트는 변경X

전송오류에서 비트가 사라지거나 잘못된 비트가 추가되는 경우 오류

이후 복호화가 실패 -> 암호화와 복호화에서 상호 동기화가 필수

 

(3)비동기식 스트림 암호

①키 스트림의 비트는 평문 또는 암호문에 종속적

-> 함호의 내부상태는 이전 내부상태에 의존X

CFB 모드에서 사용

③오류가 발생하는 경우 일부분만이 복호화에 실패하고 이후 다시

정상적인 복호화 값을 얻을 있는 자기 동기성을 가짐

(오류 파급이 제한적)

 

반응형