Presentation is loading. Please wait.

Presentation is loading. Please wait.

순천향대학교 정보보호연구회 2010. 1. 12 김현민 DES (Data Encryption Standard)

Similar presentations


Presentation on theme: "순천향대학교 정보보호연구회 2010. 1. 12 김현민 DES (Data Encryption Standard)"— Presentation transcript:

1 순천향대학교 정보보호연구회 2010. 1. 12 김현민 k_l_love@naver.com DES (Data Encryption Standard)

2 2 암호학 세미나 개요 1. 단순 DES 2. 블록 암호 기법의 원리 3. 블록 암호의 운용 모드

3 3 암호학 세미나 1. 단순 DES  DES  1972 년, IBM 에서 Lucifer[FEIS 73] 을 개선하여 만듬  1977 년, 현재 미국 표준 기술연구소 (NIST) 의 전신인 미국 표준국에서 채택  56 비트 키를 이용, 64 비트 출력으로 변환 8 비트는 parity check 로 사용  단순 DES  교육용 알고리즘  Santa Clara 대학의 Edward Schaefer 교수에 의해 개 발

4 4 암호학 세미나 1. 단순 DES( 계속 )  S-DES 의 설계 개요 8-bit ciphertext 8-bit ciphertext P10 IP Shift f SW f IP Shift P8 f SW f IP 10-bit key 8-bit plaintext 8-bit plaintext IP k k k k k 1 k 1 k 2 k 2 암호화 복호화 키생성

5 5 암호학 세미나 1. 단순 DES( 계속 )  S-DES 키의 생성 P10 LS-1 LS-2 P8 10-bit key 10 5 5 5 5 8 8 5 5 k 1 k 2 k1k2k3k4k5k6k7k8k9k 10 1010000010k3k5k2k7k4k 10 k1k9k8k6k6 1000001100 P10 10000 LS-1 00001 01100 11000 k6k3k7k4k8k5k 10 k9 10000011 P8 00001 LS-2 00100 11000 00011 k6k3k7k4k8k5k 10 k9 01001011 P8 k 1 k 2

6 6 암호학 세미나 1032 3210 0213 3132 0123 0 1 2 3 0123 2013 3010 2103 0123 0 1 2 3 1. 단순 DES( 계속 )  S-DES 암호 알고리즘 IP S0S1 P4 k 1 8-bit plaintext 8 4 4 44 2 2 4 4 8 E/P SWSW 8 f k k1k2k3k4k5k6k7k8 10010100k2k6k3k1k4k8k5k5k7 01011000 IP 0101 1000 0101 k4k1k2k3k2k3k4k4k1 01000001 E/P 1110 S011 0101 S101 10100100 k 1 11100101 k5k6k7k8k1k2k3k4 10001000 SW 1101 P4 0101 IP 앞부분 1000 k2k4k3k1 1000

7 7 암호학 세미나 1. 단순 DES( 계속 )  S-DES 암호 알고리즘 IP S0S1 P4 E/P k 2 4 4 44 2 2 4 8 SW 8 4 8 8-bit ciphertext E/P f k k5k6k7k8k1k2k3k4 10001000 SW k4k1k2k3k2k3k4k4k1 01000001 E/P 01000011 k 2 00000010 1032 3210 0213 3132 0123 0 1 2 3 0123 2013 3010 2103 0123 0 1 2 3 0000 S001 0010 S101 1100 P4 1000 SW 앞부분 0100 k2k4k3k1k4k1k3k5k7k2k8k8k6 00010100 IP 1000

8 8 암호학 세미나 2. 블록 암호 기법의 원리  스트림 암호와 블록 암호 기법  스트림 암호 기법 1 비트 / 1 바이트의 디지털 데이터 스트림을 암호화 하는 방식 Vigenere 암호, Vernam 암호 방식  블록 암호 방식 평문 블록 전체를 가지고 같은 크기의 암호문 블록 생성 블록크기는 전형적으로 64 비트 사용 일반적으로 스트림 암호 방식 보다 더 넓은 범위에 응용될 수 있음 네트워크 기반 대칭 암호 응용시 사용

9 9 암호학 세미나 2. 블록 암호 기법의 원리 ( 계속 )  Feistel 암호 방식  단순한 치환 암호를 개략적으로 설계할 수 있음을 제안  두 개 이상의 기본 암호가 연속적으로 수행되는 방식 치환과 순열을 번갈아 수행하는 암호 방식의 사용을 제안  현재 사용되고 있는 거의 모든 중요한 대칭 블록 암호가 사용하는 구조

10 10 암호학 세미나 2. 블록 암호 기법의 원리 ( 계속 )  확산과 혼돈  확산 : 평문의 통계적 구조가 암호문의 광범위한 통계 값 에 분산되어 버리는 방식 암호문 숫자는 다수의 평문 숫자에 의해 영향을 받음 키를 추론하기 어렵게 하기 위해 평문과 암호문 사이에 통계적인 관 계를 복잡하게 만듬  혼돈 : 키를 발견하기 어렵게 하기 위해 암호문에 대한 통계 값과 암호 키 값 사이의 관계를 가능한 복잡 하게 만듬 공격자가 통계값으로 암시를 얻어도 암호문을 생성하는 방법이 복 잡하여 키를 추론하기 어려움

11 11 암호학 세미나  블록크기 : 일반적으로 64 비트의 블록크기를 사 용. 큰 블록크기는 암호 / 복호 속도 저하  키 크기 : 큰 키는 보안이 강해지지만, 암호 / 복호 속도 저하. 일반적으로 128bit 사용  반복수 : 다중반복과정은 보안성 증가, 전형적인 반복 횟수 16 회  서브키 생성 알고리즘 : 알고리즘이 복잡할수록 암호해독이 더욱 어려움  반복함수 : 복잡할수록 암호해독이 더욱 어려움  Feistel 암호구조 2. 블록 암호 기법의 원리 ( 계속 ) 2w bits F Plaintext (2w bits) L 0 R 0 L 1 R 1 K 0

12 12 암호학 세미나 3. 블록 암호의 운용모드 모 드모 드설 명설 명전형적인 응용 전자 코드북 (ECB) (Electronic Code Book) 평문 64 비트 각각의 블록은 동일키를 사용하여 개별적으로 암호화 단일 값의 보안전송 (ex : 암호화 키 ) 암호 블록 연결 (CBC) (Cipher Block Chaining) 암호 알고리즘의 입력은 선행 암호문 64 비트와 다음 평문 64 비트를 연결하여 XOR 하는 방식 일반용도의 블록형 전송 인증 암호 피드백 (CFB) (Cipher Feedback) 입력은 한번에 J 비트씩 처리 선행 암호문은 평문과 XOR 연산된 의사 난수 출 력은 만드는 암호 알고리즘의 입력 일반용도의 스트림형 전송 인증 출력 피드백 (OFB) (Output Feedback) 암호 알고리즘의 입력이 선행한 DES 출력이라는 것을 제외하면 CFB 와 유사 잡음 있는 채널상의 스트림형 전송 (ex : 위성 통신 ) 계수기 (CTR) (Counter) 평문의 각 블록이 암호화된 카운터와 XOR 됨 카운터는 다음 블록을 위하여 증가 일반용도의 블록형 전송 고속의 요구 사항에 유용  블록 암호의 운용모드

13 13 암호학 세미나 3. 블록 암호의 운영모드 ( 계속 )  전자 코드북 (ECB) 모드  DES 의 가장 단순한 모드  평문이 한 번에 64 비트씩 처리되고 각 평문 블록은 동 일키로 암호화  평문의 동일한 64 비트 블록이 두 번 이상 나올 경우 항 상 동일한 암호문 생성  메시지가 길 경우 ECB 모드가 안전하지 않을 수 있음

14 14 암호학 세미나 3. 블록 암호의 운영모드 ( 계속 ) Encrypt Encryption P 1 C 1 K C 2 K P 2 C N P N K Decryption Decrypt K KK C 1 C 2 C N P 1 P 2 P N Time = 1 Time = 2Time = N  전자 코드북 (ECB) 모드 ( 계속 )

15 15 암호학 세미나 3. 블록 암호의 운영모드 ( 계속 )  암호 블록연결 (CBC) 모드  ECB 의 보안 결함을 극복하기 위하여 개발  암호 알고리즘 입력은 현 평문 블록과 선행 암호 블록 의 XOR 결과 ( 동일 키 사용 )  평문 블록이 처리 과정에 연속적으로 연결  암호 함수의 입력은 평문 블록과의 고정된 관계가 없기 때문에 64 비트의 반복 패턴이 나타나지 않음  64 비트 이상의 메시지 암호화에 적절한 모드

16 16 암호학 세미나  암호 블록연결 (CBC) 모드 3. 블록 암호의 운영모드 ( 계속 ) Time = 1Time = 2Time = N Encrypt Encryption P 1 C 1 K C 2 K P 2 C N P N K IV C N-1 Decryption Decrypt K KK C 1 C 2 C N P 1 P 2 P N IV C N-1

17 17 암호학 세미나 3. 블록 암호의 운영모드 ( 계속 )  암호 피드백 (CFB) 모드  본질적으로 64 비트 블록을 사용하는 블록암호 방식  문자 스트림의 전송 중 각 문자를 문자지향 스트림 암 호화를 이용하여 암호화 후 즉시 전송 가능  암호문이 평문과 같은 길이 8 비트 문자 전송의 경우 각 문자는 8 비트를 사용하여 암호화

18 18 암호학 세미나  암호 피드백 (CFB) 모드 3. 블록 암호의 운영모드 ( 계속 ) Shift register 64-j bits | j bits Shift register 64-j bits | j bits Shift register 64-j bits | j bits DES encrypt DES encrypt DES encrypt SelectDiscard j bit | 64-j bits SelectDiscard j bit | 64-j bits SelectDiscard j bit | 64-j bits IV C 1 C 2 P 1 P 2 P M C M C M-1 K K K 64 j j j Encryption

19 19 암호학 세미나  암호 피드백 (CFB) 모드 3. 블록 암호의 운영모드 ( 계속 ) Shift register 64-j bits | j bits Shift register 64-j bits | j bits Shift register 64-j bits | j bits DES encrypt DES encrypt DES encrypt SelectDiscard j bit | 64-j bits SelectDiscard j bit | 64-j bits SelectDiscard j bit | 64-j bits IV C 1 C 2 P 1 P 2 P M C M C M-1 K K K Decryption

20 20 암호학 세미나 3. 블록 암호의 운영모드 ( 계속 )  출력 피드백 (OFB) 모드  CFB 의 구조와 유사  장점 전송중의 비트 오류가 전파되지 않음  단점 CFB 보다 메시지 스트림 변조 공격에 취약

21 21 암호학 세미나  출력 피드백 (OFB) 모드 3. 블록 암호의 운영모드 ( 계속 ) Encryption Shift register 64-j bits | j bits Shift register 64-j bits | j bits Shift register 64-j bits | j bits DES encrypt DES encrypt DES encrypt SelectDiscard j bit | 64-j bits SelectDiscard j bit | 64-j bits SelectDiscard j bit | 64-j bits IV C 1 C 2 P 1 P 2 P M C M M-1 K K K

22 22 암호학 세미나  출력 피드백 (OFB) 모드 3. 블록 암호의 운영모드 ( 계속 ) Decryption Shift register 64-j bits | j bits Shift register 64-j bits | j bits Shift register 64-j bits | j bits DES encrypt DES encrypt DES encrypt SelectDiscard j bit | 64-j bits SelectDiscard j bit | 64-j bits SelectDiscard j bit | 64-j bits IV C 1 C 2 P 1 P 2 P M C M M-1 K K K

23 23 암호학 세미나 3. 블록 암호의 운영모드 ( 계속 )  계수기 (CTR) 모드  통신망 보안 및 IP 보안에 대한 응용  계수기 값이 암호화되는 각 평문 블록마다 달라야 함  CTR 모드의 장점 카운터하드웨어 효율성 소프트웨어 효율성 전처리 임의 접근 검증 보안 단순성

24 24 암호학 세미나  계수기 (CTR) 모드 3. 블록 암호의 운영모드 ( 계속 ) Encrypt Counter K C 1 P 1 Encrypt Counter + 1 K C 2 P 2 Encrypt Counter + N - 1 K C N P N Encryption Decryption Encrypt Counter K P 1 C 1 Encrypt Counter + 1 K P 2 C 2 Encrypt Counter + N - 1 K P N C N

25 Thank You


Download ppt "순천향대학교 정보보호연구회 2010. 1. 12 김현민 DES (Data Encryption Standard)"

Similar presentations


Ads by Google