Chapter 8 현대 대칭키 암호를 이용한 암호화 기법

Slides:



Advertisements
Similar presentations
비즈쿨 - 정 성 욱 - - 금오공고 비즈쿨 - 정 성 욱 1. 나는 각 단원들의 활동들에 성실하게 참여 하겠습니다. 우리의 다짐 2. 나는 나와 전체의 발전을 위해 각 멘토들의 지도에 순종하겠습니다. 3. 나는 각 단원들을 숙지함으로써 비즈니스 마인드를 함양하고 자신의.
Advertisements

Cryptography and Network Security Chapter 6. Multiple Encryption & DES clear a replacement for DES was needed  theoretical attacks that can break it.
8. 현대 대칭키 암호를 이용한 암호화 기법 경일대학교 사이버보안학과 김현성 교수.
1 정보보안 경일대학교컴퓨터공학과 김 현 성 2 강의구성  교과목 소개 (1 주 )  산업체 전문가 특강실시 (2 주 )  소프트웨어 공학 (3 주 ~7 주 : 5 주 )  산업체 전문가 특강실시 (8 주 )  팀 프로젝트 (9 주.
1 Chap 3. 관용 암호 방식 현대적 기법. 2
순천향대학교 정보보호연구회 김현민 DES (Data Encryption Standard)
7.1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 7 Advanced Encryption Standard (AES)
TE628 : Internet Server Context for Wireless. 2 Preliminary GSM ( Global System for Mobile Communications )  유럽의 주도하에 표준화된 디지털 셀룰러 이동 통신 시스템  음성통화를.
Copyright © 2006 by The McGraw-Hill Companies, Inc. All rights reserved. McGraw-Hill Technology Education Copyright © 2006 by The McGraw-Hill Companies,
정보보안 강의자료 ( 2016년 1학기 ) 윤 정 오 정 보 통 신 공 학 과.
용액의 물리적 성질 12.1 용액의 종류 12.2 용해 과정의 분자적 관찰 12.3 농도 단위
제1장. 화학이란 무엇인가   Copyright © The McGraw-Hill Companies, Inc.  Permission required for reproduction or display.
서로를 위한 약속 학교규칙 제·개정에 대한 이해.
- 예∙결산 및 기본재산 운영 신뢰도 제고를 위한 실태점검, 결산지원사업 -
교육 세부 프로그램 일차 시간 주제 세부 내용 교육방식 강사 3/26(화) 18:30~ 21:30 (3H) 영업직의 이해
Internet Protocol Version4
Chapter 13 전송층 개요.
Chapter 3 데이터와 신호 (Data and Signals).
Chapter 4 암호 수학 제 2부 대수구조 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
박 종 혁 3장. 블록 암호 및 DES 박 종 혁
주 무 현 (고용정보원 선임연구위원) 지역고용사업의 주요 동향 주 무 현 (고용정보원 선임연구위원)
암호화 기술(SSL, IPSec) 손재성 권기읍 안복선 최준혁
2009,성지순례계획 (추진안) 일시 : 2009년 하반기 (9월경) 장소 : 중동3개국 10일 예정
IPsec 석진선.
Chapter 18 네트워크층 보안: IPSec
Chapter 3 Symmetric Key Crypto
Chapter 17 전송층 보안: SSL과 TLS
자바 암호 프로그래밍 Java Cryptography Programming
DES (Data Encryption Standard)
Chapter 8 목차 8.1 네트워크 보안이란 무엇인가? 8.2 암호학의 원리 8.3 메시지 무결성 8.4 종단점 인증
제 4장 블록 암호 모드.
McGraw-Hill Technology Education
무선 LAN 보안.
Chapter 10 네트워크 보안.
Ch7.커패시터와 인덕터 캐패시터, 인덕터, 저장에너지, 직렬, 병렬결합
Chapter 15 키 관리 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Chapter 11 Unicast Routing Protocols.
08장 암호의 이해: 숨기고자 하는 이들의 싸움.
Chapter 3 Symmetric Key Crypto
암호에 대한 이해 정보 보안 개론 7장.
DES를 이용한 GPS 위치 정보 암호화 송신 2조 김민수 문형진 안인석 조우람.
제 3 장 신경회로망 (Neural Networks)
(Bandwidth Utilization: Multiplexing and Spreading)
Chapter 12 다중 접속 (Multiple Access).
Fault Diagnosis for Embedded Read-Only Memories
1. 병원 직원들을 위한 서비스기본 과정 ■ 교육 목적 ■ 교육 내용 ▪ 의료 환경 변화의 이해와 고객만족 서비스 마인드 함양
Chapter 16 무선 WANs: 셀 방식 전화의 위성망
Chapter 10: 정보 시스템 정보 관리 & 시스템 개발
Chapter 5 IPv4 주소.
순천향대학교 정보보호연구회 민성의 AES 순천향대학교 정보보호연구회 민성의
Chapter 15 Transmission Control Protocol (TCP).
자바 암호 프로그래밍 Java Cryptography Programming
Chapter 15 LAN 연결, 백본망과 가상 LAN
McGraw-Hill Technology Education
Chapter 5 화폐의 시간가치 McGraw Hill/Irwin
칼빈의 생애와 개혁자로의 변모 사학과 김종식.
국제의료관광 관련 법, 제도.
Chapter 4 네트워크 계층 소개.
Use of a Broken or Risky Cryptographic Algorithm
2. CONCEPTS 컴퓨터 네트워크 실험실 석사 1학기 강 동 호.
원자, 분자 및 이온 화학 반응에서의 질량관계 3.1 원자 질량 3.2 아보가드로 수와 원소의 몰질량 3.3 분자 질량
제9장 환경정책평가의 기준 시그마프레스 Copyright © 2015 한택환 김금수 임동순 홍인기 .
CHAPTER 9-1 한국의 사회복지정책 - 사회보험제도 -
인천경제자유구역 영종지구 영종하늘도시 개발사업
Chapter 5 화폐의 시간가치 McGraw Hill/Irwin
논리회로 설계실험 ICE ICE 담당교수 : 김 인 수.
‘주요기업 인사제도 운영실태’ 조사결과(요약)
제2부 전략경영 미래 CEO를 위한 경영학 제5장 전략유형 기업수준의 전략 사업수준의 전략 기능수준의 전략.
경찰학 세미나 제 5 강 경찰관직무집행법 2조 5호의 의미 신라대학교 법경찰학부 김순석.
Presentation transcript:

Chapter 8 현대 대칭키 암호를 이용한 암호화 기법 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.

Chapter 18 Objectives ❑ DES와 AES 같은 현대 표준 암호를 이용하여 긴 메시지를 암호화하는 방법 ❑ 블록 암호 기반 다섯 가지 운영모드 ❑ 블록 암호를 이용하여 스트림 암호를 설계하는 운영모드의 정의 ❑ 다양한 운영모드의 안전성과 에러전파 효과 ❑ 실시간으로 데이터를 암호화하기 위하여 사용되는 두 가지 스트림 암호

Topics discussed in this section: 8-1 현대 블록 암호의 이용 USE OF MODERN BLOCK CIPHERS 대칭키 암호화 기법은 현대 블록암호를 기반으로 수행된다. 앞서 6, 7장에서 살펴본 DES와 AES라 불리는 현대 블록 암호는 고정된 길이의 텍스트 블록을 암호화하거나 복호화한다. Topics discussed in this section: 8.1.1 Electronic Codebook (ECB) Mode 8.1.2 Cipher Block Chaining (CBC) Mode 8.1.3 Cipher Feedback (CFB) Mode 8.1.4 Output Feedback (OFB) Mode 8.1.5 Counter (CTR) Mode

8-1 Continued Figure 8.1 운영모드

8.1.1 Electronic Codebook (ECB) Mode Figure 8.2 Electronic Codebook (ECB) 모드

8.1.1 Continued Example 8.1 Bob은 Alice가 암호화한 평문 블록을 정확하게 복구할 수 있다. 왜냐하면 암호화와 복호는 서로 역관계에 있기 때문이다. Example 8.2 ECB 모드는 두 개의 열에 2n개의 성분을 갖는 2k 개의 코드북을 사전 수집할 수 있으므로 electronic codebook으로 불린다. 각각의 성분은 평문과 그에 대응하는 암호문을 목록화 할 수 있다. 하지만, k와 n이 커지면 코드북을 사전 수집하고 유지하는 것이 매우 어려워진다.

8.1.1 Continued Example 8.3 Eve가 회사에서 한 달에 단지 몇 시간만 일을 하고 그녀의 급여가 매우 적다고 가정하자. 그리고 Eve는 회사가 각 고용자의 계좌에 지급해야 할 금액에 대한 정보가 17번째 블록에 저장된다는 사실을 알고 있다고 하자. Eve는 월말에 회사가 은행에 보내는 암호문을 가로채서 풀타임 일을 한 동료의 급여 정보를 갖는 블록을 복사하여 자신의 급여 정보를 갖는 블록과 대체할 수 있다. 매달 Eve는 자신이 일한 대가보다 훨씬 더 많은 급여를 받을 수 있다.

8.1.1 Continued 오류 파급 (Error Propagation) 전송 도중에 발생하는 단일 비트의 에러는 대응되는 블록 내의 비트들(일반적으로 블록의 반이거나 블록의 모든 비트)에 에러를 발생시킨다. 하지만, 그 에러는 다른 블록의 비트에는 영향을 주지 않는다.

8.1.1 Continued 암호문 stealing (Ciphertext Stealing) 암호문 stealing(CTS) 이라 불리는 이 기술을 이용하면 덧붙이기 없이 ECB 모드를 사용할 수 있다. CTS에서 마지막 두 개의 평문 블록 PN−1 과 PN은 아래와 같이 다르게 암호화 된다. 단, PN−1은 n비트 블록이고 PN은 m (m ≤ n ) 비트 블록이라고 가정한다.

8.1.2 Cipher Block Chaining (CBC) Mode CBC 모드에서 각각의 평문 블록은 암호화되기 전에 이전 블록의 암호문과 XOR된다. Figure 8.3 Cipher block chaining (CBC) 모드

8.1.2 Continued Figure 8.3 Cipher block chaining (CBC) 모드

8.1.2 Continued 초기벡터 (Initialization Vector (IV)) Example 8.4 Alice가 암호화한 평문 블록을 Bob은 정확하게 복구할 수 있다. 왜냐하면 암호화와 복호화 과정은 서로 역관계에 있기 때문이다. 초기벡터 (Initialization Vector (IV)) 초기벡터(IV)는 송신자와 수신자간에 공유되어야 하지만 반드시 비밀일 필요는 없다.

8.1.2 Continued 오류 파급 (Error Propagation) 암호문 블록 Cj가 전송 도중 한 비트 오류가 발생하였다고 가정하자. 그러면 복호화 과정에서는 평문 블록 Pj 에서는 대부분의 비트에서 오류가 발생되고, 평문 블록 Pj+1 에서는 Cj 의 오류 비트와 같은 위치에서 한 비트 오류가 발생한다.

8.1.2 Continued 암호문 stealing (Ciphertext Stealing) ECB 모드에서 설명한 암호문 stealing 기술은 아래와 같이 CBC 모드에도 적용될 수 있다.  head 함수는 ECB 모드에서 정의한 것과 같고 pad는 0을 덧붙이는 함수이다.

8.1.3 Cipher Feedback (CFB) Mode 이 모드에서는 DES나 AES의 블록의 크기가 n이지만 평문이나 암호문 블록의 크기는 r(r≤n)이다. Figure 8.4 cipher feedback (CFB) 모드의 암호화

CFB 모드에서 암호화와 복호는 블록 암호의 암호화 함수를 이용한다. 8.1.3 Continued Note CFB 모드에서 암호화와 복호는 블록 암호의 암호화 함수를 이용한다. 평문 블록과 암호문 블록 사이의 관계는 다음과 같이 정의된다.:

8.1.3 Continued 스트림 암호로서의 CFB 모드 (CFB as a Stream Cipher) Figure 8.5 스트림 암호로서의 cipher feedback (CFB) 모드

8.1.3 Continued

18.1.4 Output Feedback (OFB) Mode Figure 8.6 Output feedback (OFB) 모드의 암호화

8.1.4 Continued 스트림 암호로서의 OFB 모드 (OFB as a Stream Cipher) Figure 8.7 스트림 암호로서의 output feedback (OFB) 모드

8.1.4 Continued

8.1.5 Counter (CTR) Mode CTR 모드는 암호화시 피드백이 존재하지 않는다. 그렇지만 키 스트림의 의사난수성은 카운터를 사용함으로서 성취될 수 있다. Figure 8.8 카운터(CTR) 모드의 암호화

8.1.5 Continued Figure 8.9 스트림 암호로서의 Counter (CTR) 모드

8.1.5 Continued

8.1.5 Continued 다른 운영 모드와의 비교

Topics discussed in this section: 8-2 USE OF STREAM CIPHERS 비록 다섯 가지 운영 모드가 메시지나, 큰 단위(ECB, CBC, CTR 모드)의 파일과 작은 단위(CFB, OFB 모드)의 데이터를 암호화하기 위하여 이용될 수 있지만, 때로는 문자나 비트와 같은 작은 단위의 데이터를 암호화하기 위하여 스트림 암호가 필요하다. Topics discussed in this section: 8.2.1 RC4 8.2.2 A5/1

8.2.1 RC4 RC4는 바이트 단위 스트림 암호로서, 평문 1 바이트(8 비트)와 키 1 바이트가 XOR되어 암호문의 1 바이트를 생성한다. 상태 (State) RC4는 상태 개념을 사용한다.

8.2.1 Continued Figure 8.10 RC4 스트림 암호의 개괄적 암호화 과정

8.2.1 Continued 초기화(Initialization ) 초기화는 2 단계로 수행된다: 키 스트림 생성 (Key Stream Generation) 키 스트림의 키 는 한 개씩 생성된다.

8.2.1 Continued Algorithm

8.2.1 Continued Algorithm Continued

8.2.1 Continued Example 8.5 스트림 키의 난수성을 보여주기 위하여 모든 바이트가 0인 비밀키를 이용한다. 키 스트림 k의 20개의 값은 (222, 24, 137, 65, 136, 55, 93, 58, 138, 6, 30, 103, 87, 110, 146, 109, 199, 26, 127, 163)이다. Example 8.6 예 8.5를 반복하라. 하지만 비밀키는 (15, 202, 33, 6, 8)로 구성된 다섯 바이트이다. 키 스트림은 (248, 18, 102, 54, 212, 237, 186, 133, 51, 238, 108, 106, 103, 214, 39, 242, 30, 34, 144, 49)이다. 키 스트림의 난수성은 다시 한 번 명확해졌다.

8.2.2 A5/1 A5/1(A5 패밀리 중 하나)은 휴대 전화 통신을 위한 네트워크 인 Global System for Mobile Communication (GSM)에서 사용된다. Figure 8.11 A5/1의 전체구조

8.2.2 Continued 키 생성기 (Key Generator) A5/1은 19, 22, 23개의 셀을 갖는 세 개의 LFSR을 사용한다. Figure 8.12 A5/1의 세 개의 LFSR

8.2.2 Continued 초기화 (Initialization) 1. 첫째, 세 개 LFSR의 모든 셀을 0으로 초기화 한다. 2. 다음 코드에 따라 레지스터의 값을 64 비트 키로 섞는다. 3. 22 비트 프레임 넘버를 이용하여 이전 과정을 반복한다.

8.2.2 Continued 4. 100 사이클 동안 전체 생성기를 클럭킹 한다. 그러나 LFSR의 클럭은 Majority 함수(다음 절에서 소개함)를 이용한다.

8.2.2 Continued Example 8.7 특정 시점에 클럭킹 비트가 1,0,1이다. 어떤 LFSR이 클럭(이동)되는가?  Solution majority 함수의 결과값은 Majority(1,0,1)=1을 만족한다. LFSR1과 LFSR3은 이동되고 LFSR2는 이동되지 않는다.

8.2.2 Continued 암호화/복호화 (Encryption/Decryption) 키 생성기로부터 생성된 비트 스트림은 암호문 프레임을 생성하기 위하여 평문 프레임과 XOR 하기 위한 228 비트 키를 형성하기 위하여 버퍼에 저장된다. 암호화/복호화는 동시에 한 프레임에 대하여 수행된다.

Topics discussed in this section: 8-3 기타 (OTHER ISSUES) 대칭키 블록이나 스트림 암호를 사용하는 환경은 또 다른 관점에서 논의가 필요하다. Topics discussed in this section: 8.3.1 키 관리(Key Management) 8.3.2 키 생성(Key Generation)

8.3.1 키 관리(Key Management) Alice와 Bob은 대칭키 암호를 이용하여 안전하게 통신을 하기 위하여 그들 사이에 비밀키를 공유하여야 한다. 만약 커뮤니티에 n명의 구성원이 있다면, 각 구성원은 n-1명과 비밀 통신을 하기 위하여 비밀키가 필요하다. 그러므로 총 n(n − 1)/2 개의 비밀키가 필요하다. Note 키 관리는 15장에서 다룬다.

8.3.2 키 생성( Key Generation) 대칭키 암호가 사용되는 환경에서의 또 다른 논점은 비밀키를 생성하는 방법이다. 다양한 대칭키 암호는 다양한 사이즈의 키를 필요로 한다. 키는 랜덤하게 선택되어야만 한다. 이는 난수 생성기에 대한 필요성을 야기한다. Note 난수 생성기는 부록 K에서 다룬다.