Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 정보보안 경일대학교컴퓨터공학과 김 현 성 2 강의구성  교과목 소개 (1 주 )  산업체 전문가 특강실시 (2 주 )  소프트웨어 공학 (3 주 ~7 주 : 5 주 )  산업체 전문가 특강실시 (8 주 )  팀 프로젝트 (9 주.

Similar presentations


Presentation on theme: "1 정보보안 경일대학교컴퓨터공학과 김 현 성 2 강의구성  교과목 소개 (1 주 )  산업체 전문가 특강실시 (2 주 )  소프트웨어 공학 (3 주 ~7 주 : 5 주 )  산업체 전문가 특강실시 (8 주 )  팀 프로젝트 (9 주."— Presentation transcript:

1 1 정보보안 경일대학교컴퓨터공학과 김 현 성 kim@kiu.ac.kr

2 2 강의구성  교과목 소개 (1 주 )  산업체 전문가 특강실시 (2 주 )  소프트웨어 공학 (3 주 ~7 주 : 5 주 )  산업체 전문가 특강실시 (8 주 )  팀 프로젝트 (9 주 ~14 주 : 6 주 )  팀별 프로젝트 최종 보고 및 시연회 (15 주 )  교과목 소개 (1 주 )  산업체 전문가 특강실시 (2 주 )  소프트웨어 공학 (3 주 ~4 주 )  암호기초특강 / 프로그래밍 (5 주 )  네트워크 프로그래밍 (6 주 ~7 주 : 6 주 )=> 이성운  산업체 전문가 특강실시 (8 주 )  팀 프로젝트 (9 주 ~14 주 : 6 주 )  팀별 프로젝트 최종 보고 및 시연회 (15 주 )

3 3 1. 암호의 개념  통신 당사자들끼리만 아는 비밀스런 신호나 부호  암호화와 복호화하기 위한 원리, 수단, 방법 등을 취급 하는 기술이나 과학 Alice Bob Plaintext attackattack? ? Cryptography 개방통신로

4 4 2. 암호 용어 암호알고리즘암호알고리즘복호알고리즘복호알고리즘 attack 암호해독 평문 (plaintext) 평문 (plaintext) 암호문 (ciphertext) 암호화 키 (public key) 공개키 디렉토리 송신자수신자 ( 암호장치 ) 복호화 키 (secret key)

5 5 3. 관용 암호 방식  암호화 키 (Encryption key) = 복호화 키 (Decryption key)  대칭키 암호 시스템, 단일키 암호 시스템, 관용 암호 방식 암호알고리즘복호알고리즘 평문 (plaintext) 평문 (plaintext) 암호문 (ciphertext) 공용키

6 6 4. 공개키 암호 방식  암호화 키 (Encryption key) => 상대의 공개키  복호화 키 (Decryption key) => 자신의 비밀키  비대칭키 암호 시스템, 공개키 암호 시스템 암호알고리즘복호알고리즘 평문 (plaintext) 평문 (plaintext) 암호문 (ciphertext) 공개키비밀키

7 7 5 시이저 암호법  쥴리어스 시저에 의해 개발  예제 (Key : 3) 평문 : meet me after the toga party 암호문 : PHHW PH DIWHU WKH WRJD SDUWD  암호화 ( 문자 p 를 암호화 )  C = E(p) = (p+3) mod (26)  일반화 : C = E(p) = (p+k) mod (26)  문자 p 는 C 로 암호화

8 8 프로그래밍  입력처리 : 문자열로 처리  키 처리 : 자신의 학번 제일 마지막 자리를 키로 활용  입력 문자열 : 임의의 문자열로 처리  출력  암호 입력 문자열 암호된 문자열  복호 암호된 문자열 복호된 문자열

9 9 6 단순 DES  DES (Data Encryption Standard)  IBM 에서 Lucifer System 을 개선하여 만듬  1997 년 미 상무성의 국립 표준국 (NBS) 에서 표준 암호 알고리즘으로 채택  64 비트 블럭 암호 알고리즘  56 비트 키를 사용 –64 비트 중 8 비트는 parity check 로 사용  기본 구조 round 수 : 16 round 복호화는 암호화의 역순  단순 DES  교육용 알고리즘 8 비트 평문 블럭 과 10 비트 키를 사용

10 10

11 11  기본 함수  IP (Initial Permutation) : 초기순열  함수 f K 전치 (transposition) 치환 (substitution)  SW : 데이터의 두 절반을 상호 교환하는 함수  함수 f K  IP -1 (Inverse Initial Permutation) : 초기 순열의 역인 순열 함수  암호화 / 복호화  Ciphertext = IP -1 (f K2 (SW(f K1 (IP(Plaintext)))))  Plaintext = IP -1 (f K1 (SW(f K2 (IP(Ciphertext)))))

12 12

13 13  키생성  S-DES 는 10-bit Key 를 사용 두개의 8-bit sub key 생성  P10( k1, k2, k3, k4, k5, k6, k7, k8, k9, k10) =( k3, k5, k2, k7, k4, k10, k1, k9, k8, k6) P10 입력 : 1 2 3 4 5 6 7 8 9 10 출력 : 3 5 2 7 4 10 1 9 8 6 ex : Key(1010000010) --> (1000001100)

14 14  LS-1 : 1 비트 Circular Left Shift 연산 ex : (10001) --> (00011) ex : (10001) --> (00011)  P8 입력 : 10 비트 출력 : 8 비트 P8( k1, k2, k3, k4, k5, k6, k7, k8, k9, k10) =( k6, k3, k7, k4, k8, k5, k10, k9) P8 6 3 7 4 8 5 10 9 6 3 7 4 8 5 10 9

15 15 1 0 0 1 0 0 1 1 1 0 3 5 2 7 4 10 1 9 8 6 0 0 0 1 1 0 1 1 1 0 1 2 3 4 5 6 7 8 9 10 0 0 1 1 0 1 1 1 0 0 6 3 7 4 8 5 10 9 1 2 3 4 5 6 7 8 9 10 1 1 1 1 1 0 0 0 0 1 1 0 0 1 1 0 0 1 1 2 3 4 5 6 7 8 9 10 6 3 7 4 8 5 10 9 1 1 1 0 0 0 1 0

16 16  암호화 과정  입력 : 8 비트  출력 : 8 비트  IP( 초기 순열 ) 과 IP -1 ( 역 초기 순열 ) M = (IP -1 (IP(M)) IP 입력 : 1 2 3 4 5 6 7 8 출력 : 2 6 3 1 4 8 5 7 IP -1 출력 : 4 1 3 5 7 2 8 6

17 17  함수 f K  전치 (transposition)  치환 (substitution)  입력 8 비트 L (Left most 4 bits) R (Right most 4 bits)  처리 f K = ( L XOR F( R, SK ), R ) SK (Sub Key = K1 or K2) 함수 F() 사용

18 18

19 19  E/P (Expansion/Permutation)  입력 : 4 비트  출력 : 8 비트  P4 E/P 4 1 2 3 2 3 4 1 4 1 2 3 2 3 4 1 P4 2 4 3 1 2 4 3 1

20 20  S-Box  입력 : 4 비트 ( 1 0 1 0 )  처리 행 : 1 번째와 4 번째 비트 ( 1 0 ) 열 : 2 번째와 3 번째 비트 ( 0 1 ) 0123 01032 13210 20213 33132 S0S1012300123 12013 23010 32103

21 21

22 22  S-DES 분석  Brute force 공격 가능 10 비트 키로 단지 2^10 = 1024 가지의 가능성  암호해독 가능 기지 평문 공격 : 단일평문과 그 출력 암호문이 알려져 있 을때 10 개의 미지수 ( 키 ) 를 갖는 8 개의 비 선형 방정식 (p, c) 으로 나타낼 수 잇음 => 공격 가능

23 23  특징  IBM 에서 Lucifer System 을 개선하여 만듬  1977 년 미 상무성의 국립 표준국 (NBS) 에서 표준 암호 알고리 즘으로 채택  64 비트 블럭 암호 알고리즘  56 비트 키를 사용 –64 비트 중 8 비트는 parity check 로 사용  기본 구조 round 수 : 16 round 복호화는 암호화의 역순  최근에는 DES 암호화를 세 개의 키로 세 번 반복함으로써 암 호의 강도를 높인 Triple-DES 를 사용 7 DES (Data Encryption Standard)

24 24 7.1 DES  DES 의 기본 구조 ( 데이타 암호화부 ) 입 력입 력입 력입 력 K1 K2 :::: 초기 치환 L0L0L0L0 L1L1L1L1 L2L2L2L2 R0R0R0R0 R1R1R1R1 R2R2R2R2 :::: f f R 16 L 16 f 역초기 치환 출 력출 력출 력출 력 K16 L i = R i-1 R i = L i-1 XOR f (R i-1, K i )

25 25  초기 치환 IP 58 50 42 34 26 18 10 2 60 52 44 36 28 20 12 4 62 54 46 38 30 22 14 6 64 56 48 40 32 24 16 8 57 49 41 33 25 17 9 1 59 51 43 35 27 19 11 3 61 53 45 37 29 21 13 5 63 55 47 39 31 23 15 7

26 26  f 함수의 구성도 R(32bit) 확장순열 48bit K (48bit) S1S2S8S7.. P 32 bit S-box table

27 27  확장순열 32 1 2 3 4 5 4 5 6 7 8 9 8 9 10 11 12 13 12 13 14 15 16 17 16 17 18 19 20 21 20 21 22 23 24 25 24 25 26 27 28 29 28 29 30 31 32 1  치환 P 16 7 20 21 29 12 28 17 1 15 23 26 5 18 31 10 2 8 24 14 32 27 3 9 19 13 30 6 22 11 4 25

28 28  S-box Table S1 14 4 13 1 2 15 11 8 3 10 6 12 5 9 0 7 0 15 7 4 14 2 13 1 10 6 12 11 9 5 3 8 4 1 14 8 13 6 2 11 15 12 9 7 3 10 5 0 15 12 8 2 4 9 1 7 5 11 3 14 10 0 6 13 예 ) 1 0 1 1 0 1 ------ 6 비트 입력 행 (3 행 ) 열 (6 열 ) 0 0 0 1 10 진수 ‘1’ 를 4 비트로 출력 : 0 0 0 1

29 29  DES 의 기본 구조 ( 키 생성부 ) 키 순열선택 1 c0c0c0c0 좌측 시프트 c1c1c1c1 c2c2c2c2 c 15 좌측 시프트 d0d0d0d0 d1d1d1d1 d2d2d2d2 d 15 좌측 시프트 순열선택 2 K1 K2 K16 :::: :::: ::::

30 30  순열선택 1(PC1) 57 49 41 33 25 17 9 1 58 50 42 34 26 18 10 2 59 51 43 35 27 19 11 3 60 52 44 36 63 55 47 39 31 23 15 7 62 54 46 38 30 22 14 6 61 53 45 37 29 21 13 5 28 20 12 4  순열선택 2(PC2) 14 17 11 24 1 5 3 28 15 6 21 10 23 19 2 4 26 8 16 7 27 20 13 2 41 52 31 37 47 55 30 40 51 45 33 38 44 49 39 56 34 53 46 42 50 36 29 32

31 31  쉬프트 스케줄 라운드 수 좌측 쉬프트 수 1 1 2 1 3 2 4 2 5 2 6 2 7 2 8 2 9 1 10 2 11 2 12 2 13 2 14 2 15 2 16 1

32 32  DES 는 강한 쇄도 효과 (Avalanche Effet) 를 갖는다.  DES 에 관한 우려사항  미 정부의 채택이후 DES 의 보안 수준에 대한 우려가 지속. 알고리즘의 성질을 이용한 암호 해독의 가능성 – 예 ) s - box 의 약점에 대한 공격 가능성 주장 제기됨 그러나, 약점을 발견한 사람은 현재 존재 하지 않음 키 길이에 관한 우려 –Key Serarch Machine ( 기지 평문 공격 ) Cost Expected search Time $ 100,000 35hours $1,000,000 3.5hours $10,000,000 21minutes

33 33 –Brute force Attack ; 1970 년대 /80 년대 --- low computing power 90 년대 --- high computing power – 미국 수출 허용 기준인 40 비트의 키 : Michael Wienerd 의 key search machine 으로 0.2 초만에 해독 가 능 Key size Number of One Encryption 10 6 Encryption Key size Number of One Encryption 10 6 Encryption Alternative Keys per micro sec per micro sec 32bits 2 23 = 4.3 * 10 9 35.8 minutes 2.15ms 32bits 2 23 = 4.3 * 10 9 35.8 minutes 2.15ms 56bits 2 56 = 7.2 * 10 16 1142years 10.01h 56bits 2 56 = 7.2 * 10 16 1142years 10.01h 128bits 2 128 = 3.4 * 10 38 10 24 years 5.4 * 10 18 years 128bits 2 128 = 3.4 * 10 38 10 24 years 5.4 * 10 18 years

34 34 7.2 DES 작동 모드 7.2 DES 작동 모드

35 35  ECB (Electronic Codebook) 모드의 특징  평문은 64 비트씩 처리  마지막 비트가 64 비트 미만이면 나머지 비트를 채운 후 진행  동일한 블록이 입력되면 암호문도 같다. --> 해독될 위험성이 있다.  중요 데이타가 같은 위치에 있을 때 취약블럭이 상호 결합하 지 않음 => 연속적인 블럭 암호화법 ; Chaining 기법

36 36  ECB (Electronic Codebook) 모드  암호화 DES 암호화 P1P1 C1C1 K DES 암호화 P2P2 C2C2 K DES 암호화 PNPN CNCN K... DES 복호화 C1C1 P1P1 K 4 복호화 DES 복호화 CNCN PNPN K DES 복호화 C2C2 P2P2 K...

37 37  CBC (Cipher Block Chaining) 모드의 특징  하나의 암호화 스텝의 출력을 사용하여 다음 입력으로 수정  각각의 암호 블럭은 서로 영향을 받음  선행하는 평문 블럭 전체에 좌우됨  C n : 모든 평문 블럭 P 1, P 2,..., P n 의 함수  암호화 : C n =E k (P n +C n-1 )  복호화 : Q n =D k (C n ) + C n-1 =P n  Padding  Self-Recovering 기능

38 38  CBC (Cipher Block Chaining) 모드  암호화 4 복호화 DES 복호화 C1C1 P1P1 K  DES 암호화 P2P2 C2C2 K  DES 암호화 PNPN CNCN K ... C N-1 DES 암호화 P1P1 C1C1 K  DES 복호화 C2C2 P2P2 K  DES 복호화 CNCN PNPN K  C N-1...

39 39  CFB (Cipher Feedback) 모드의 특징  문자의 길이 : m(1<m<64)  암호화 하기 위한 m 비트 : DES 출력의 m 비트  DES 알고리즘이 회선 양단에서 암호화로서 사용  Shift Register : 매번 새로운 비트로 교체  암호문은 선행하는 평문 모두의 함수

40 40  CFB (Cipher Feedback) 모드  암호화 64 비트 레지스터 DES 암호화 선택 j 비트 K  P1P1P1P1 C1C1C1C1 64 비트 레지스터 DES 암호화 선택 j 비트 K  P2P2P2P2 C2C2C2C2 64 비트 레지스터 DES 암호화 선택 j 비트 K  PNPNPNPN CNCNCNCN... C N-1 4 복호화 64 비트 레지스터 DES 복호화 선택 j 비트 K  P1P1P1P1 C1C1C1C1 64 비트 레지스터 DES 복호화 선택 j 비트 K  P2P2P2P2 C2C2C2C2 64 비트 레지스터 DES 복호화 선택 j 비트 K  PNPNPNPN CNCNCNCN... C N-1

41 41  OFB (Output Feedback) 모드의 특징  CBC, CFB 의 Error Extention 에 대한 응용  Vernam type  키 스트림 : 주기성이 있음  Feedback 의 출발 위치를 제외하고는 CFB 와 유사

42 42  OFB (Output Feedback) 모드 64 비트 레지스터 DES 암호화 선택 j 비트 K  P1P1P1P1 C1C1C1C1 64 비트 레지스터 DES 암호화 선택 j 비트 K  P2P2P2P2 C2C2C2C2 64 비트 레지스터 DES 암호화 선택 j 비트 K  PNPNPNPN CNCNCNCN... O N-1 64 비트 레지스터 DES 복호화 선택 j 비트 K  P1P1P1P1 C1C1C1C1 64 비트 레지스터 DES 복호화 선택 j 비트 K  P2P2P2P2 C2C2C2C2 64 비트 레지스터 DES 복호화 선택 j 비트 K  PNPNPNPN CNCNCNCN... O N-1 4 복호화 4 암호화


Download ppt "1 정보보안 경일대학교컴퓨터공학과 김 현 성 2 강의구성  교과목 소개 (1 주 )  산업체 전문가 특강실시 (2 주 )  소프트웨어 공학 (3 주 ~7 주 : 5 주 )  산업체 전문가 특강실시 (8 주 )  팀 프로젝트 (9 주."

Similar presentations


Ads by Google