41
1 Chap 9. Chap 9. 전전전전 전전전전 전전전전 전전전전

Chap 9. 전자우편 정보보호

Embed Size (px)

DESCRIPTION

Chap 9. 전자우편 정보보호. 목 차. 1. PGP 2. PEM. 전자우편 보안 (E-mail Security). SMTP(Simple Mail Transfer Protocol) E-mail 전송 Plaintext Form(Only ASCII text data) binary file 은 전송하지 못함 암호화된 메시지 전송 Message Encryption(binary file) uuencode - PowerPoint PPT Presentation

Citation preview

Page 1: Chap 9.  전자우편 정보보호

1

Chap 9. Chap 9. 전자우편 정보보호전자우편 정보보호

Page 2: Chap 9.  전자우편 정보보호

2

목 차목 차1. PGP1. PGP

2. PEM2. PEM

Page 3: Chap 9.  전자우편 정보보호

3

전자우편 보안전자우편 보안 (E-mail Security)(E-mail Security)

SMTP(Simple Mail Transfer Protocol)SMTP(Simple Mail Transfer Protocol) E-mail E-mail 전송전송 Plaintext Form(Only ASCII text data)Plaintext Form(Only ASCII text data) binary filebinary file 은 전송하지 못함은 전송하지 못함

암호화된 메시지 전송암호화된 메시지 전송Message Encryption(binary file) uuencodeMessage Encryption(binary file) uuencode

encrypted text file uudecode decryption encrypted text file uudecode decryption MessageMessage

Page 4: Chap 9.  전자우편 정보보호

4

E-mail security tool - PGP, E-mail security tool - PGP, PEMPEM

Electronic mail Electronic mail

현재 인터넷 사용자들이 가장 많이 사용하고 있는 인터넷

서비스중의 하나

보안상 매우 취약한 구조를 가지고 있음

– 엽서와 같은 구조

– 해결책 : 메세지의 암호화

인터넷상의 E-mail 보안 도구 : PGP, PEM

confidentiality, authentication, integrity, Nonrepudiation 등의

기능을 제공

next on the continued

Page 5: Chap 9.  전자우편 정보보호

5

PGP & PEMPGP & PEM

PEM PGPPEM PGP 1. IETF Phil Zimmerman1. IETF Phil Zimmerman 2. Internet 2. Internet 표준안 응용 프로그램표준안 응용 프로그램 3. 3. 이론 중심 실세계 중심이론 중심 실세계 중심 4. 4. 중앙집중화된 키 인증 분산화된 키 인증중앙집중화된 키 인증 분산화된 키 인증 5. 5. 구현이 어렵다 구현이 용이함구현이 어렵다 구현이 용이함 6. 6. 익명의 메세지를 허용치 않음 익명의 메세지를 허용함익명의 메세지를 허용치 않음 익명의 메세지를 허용함 7. 7. 높은 보안성 일반 용도의 보안성높은 보안성 일반 용도의 보안성 (( 군사용군사용 , , 은행 시스템은행 시스템 ) ) 8. 8. 많이 사용되지 않음 많이 사용많이 사용되지 않음 많이 사용

Page 6: Chap 9.  전자우편 정보보호

6

1. PGP 1. PGP

다양한 기종에서 무료로 사용 가능 ( 필요한 경우 상용화하여 사용 가능

– Windows, UNIX, Macintosh

공개적 검토를 통해 대단히 안전하다고 할 수 있는 알고리즘에 기반– RSA, IDEA, MD5

기업 및 개인에 이르기까지 다양한 영역에 응용성 확보 미국 이외의 지역에서도 사용 가능

– RSA 에 대한 특허 문제는 미국 내에서만 필요

Page 7: Chap 9.  전자우편 정보보호

7

용어 표기용어 표기 KS : 관용암호에서 사용하는 세션키 KRa : 공개키 암호 방식에서 사용되는 사용자 A 의 개인키 KUa : 공개키 암호 방식에서 사용되는 사용자 A 의 공개키 ER : RSA 를 이용한 공개키 암호화 DR : RSA 알고리즘을 이용한 공개키 복호화 EI : IDEA 를 이용한 암호화 DI : IDEA 를 이용한 복호화 H : 해쉬 함수 || : 연접 Z : ZIP 알고리즘을 이용한 압축 R64 : 기수 64ASCII 형식으로 변환

Page 8: Chap 9.  전자우편 정보보호

8

PGP PGP 운영 방법운영 방법 PGP function & algorithmPGP function & algorithm

기 능 알고리즘기 능 알고리즘

인 증 인 증 IDEA, RSAIDEA, RSA

디지털 서명 디지털 서명 RSA, MD5RSA, MD5

압축 압축 ZIPZIP

E-mail E-mail 호환 호환 Radix-64 conversionRadix-64 conversion

단편화 분할과 재결합단편화 분할과 재결합

• PGP 에서는 관용 암호 방식으로 IDEA 를 사용하는데 128bit 의 키가 필요• 공개키 암호 방식으로는 RSA, 해쉬 함수로는 MD5 를 사용

Page 9: Chap 9.  전자우편 정보보호

9

PGP StructurePGP Structure

Authentication & Digital SignatureAuthentication & Digital Signature

송신자는 메시지 생성

MD5 를 이용하여 128 비트 해쉬 코드 생성

해쉬 값을 RSA 로 암호화하여 결과값에 포함

수신자는 송신자의 공개키를 이용해 해쉬 코드 복호화

수신자는 메시지에 대한 새로운 해쉬 코드와 복호화된 코드를

비교

만약 두 값이 같다면 메시지는 인증된 것이다 .

Page 10: Chap 9.  전자우편 정보보호

10

PGP StructurePGP Structure

Authentication & Digital SignatureAuthentication & Digital Signature 인증과 전자 서명을 위해서는 인증과 전자 서명을 위해서는 RSARSA 와 해쉬함수 와 해쉬함수 MD5MD5 가 사용가 사용

MH ER

l l Z-1

DR

H

KRa

Z M

ERKRa[H(M)] KUa

compare ?

출처 A 목적지 B

Page 11: Chap 9.  전자우편 정보보호

11

PGP StructurePGP Structure

Confidentiality Confidentiality 세션키를 통한 메시지 보호를 위해 다음과 같이 수행세션키를 통한 메시지 보호를 위해 다음과 같이 수행

송신자 – 메시지와 세션키로 사용될 128 비트 난수 생성– 메시지는 세션키로 IDEA 를 이용하여 암호화– 세션키는 RSA 로 수신자의 공개키를 이용해 암호화 되며 ,

메시지에 포함 수신자

– 자신의 개인키로 RSA 를 이용해 세션키를 알아냄– 세션키를 이용하여 메시지를 복호화 한다 .

Page 12: Chap 9.  전자우편 정보보호

12

PGP StructurePGP Structure Confidentiality Confidentiality

메세지의 기밀성을 위해서는 메세지의 기밀성을 위해서는 RSARSA 와 와 IDEAIDEA 가 함께 쓰인다가 함께 쓰인다

ERKUb[Ks]

MZ EI l l

ERDR

DI Z-1 M

Ks

KRb

KUb

Page 13: Chap 9.  전자우편 정보보호

13

PGP StructurePGP Structure

Confidentiality & AuthenticationConfidentiality & Authentication 기밀성과 인증을 모두 보장하려면 인증을 위한 행동을 먼저 수행하고 그 결과에 기밀성과 인증을 모두 보장하려면 인증을 위한 행동을 먼저 수행하고 그 결과에

기밀성을 위한 동작을 해주면 된다기밀성을 위한 동작을 해주면 된다 ..

H ZER l l EI l l

ER

Z-1DIM

DR

H

M

DR

Compare?

KRaKs

KUbERKUb

[Ks]ERKRa

[H(M)] KUaKRb

Page 14: Chap 9.  전자우편 정보보호

14

PGP StructurePGP Structure

CompressCompress 메시지 압축을 위해서는 메시지 압축을 위해서는 ZIP ZIP 알고리즘을 사용알고리즘을 사용

서명을 수행한 후에 압축을 취함으로써 암호화된 결과를 가지고 평문을 추측하는 서명을 수행한 후에 압축을 취함으로써 암호화된 결과를 가지고 평문을 추측하는

행동을 더욱 어렵게 하고 전자 우편 전송과 화일 저장에 대해서 기억 공간을 행동을 더욱 어렵게 하고 전자 우편 전송과 화일 저장에 대해서 기억 공간을

절약한다는 이점이 있다절약한다는 이점이 있다 ..

E-mail compatibilityE-mail compatibility Radix-64 conversionRadix-64 conversion 을 통하여 을 통하여 33 개의 개의 8bit8bit 를 를 44 개의 개의 ASCIIASCII 문자로 문자로 변환시킴으로서 기존의 전자 우편 시스템과의 호환성 문제를 해결변환시킴으로서 기존의 전자 우편 시스템과의 호환성 문제를 해결

Segmentation & ReassemblySegmentation & Reassembly 전자 우편 프로그램은 대개 전자 우편 프로그램은 대개 50,000byte50,000byte 이하의 메시지를 한번에 전송이하의 메시지를 한번에 전송 PGPPGP 에서는 에서는 50,000byte50,000byte 이상의 메시지를 쪼개어 전송이상의 메시지를 쪼개어 전송 , , 또한 분할된 또한 분할된 메시지를 자동으로 결합메시지를 자동으로 결합

Page 15: Chap 9.  전자우편 정보보호

15

암호화와 키 연결 관계암호화와 키 연결 관계

PGPPGP 에서 사용되는 암호화 키에서 사용되는 암호화 키 세션키세션키 (IDEA (IDEA 이용이용 ))

전송 메시지 암호화에 이용 , 각 세션키는 한 번만 사용됨 공개키공개키 (RSA (RSA 이용이용 ))

세션키 암호화에 이용 ( 송 수신자는 서로의 공개키 복사본 관리 •필요 )

개인키 개인키 (RSA (RSA 이용이용 )) 디지털 서명을 위한 메시지 암호화에 이용

passphrase-based passphrase-based 키키 (IDEA (IDEA 이용이용 00 키 송신자가 저장하는 개인키를 암호화하는데 이용

Page 16: Chap 9.  전자우편 정보보호

16

PGPPGP 메시지의 일반 요소메시지의 일반 요소 구분구분

세션키 부분 서명 부분 메시지 부분

서명 부분의 구성 요소서명 부분의 구성 요소 타임 스템프 메시지 다이제스트 메시지 다이제스트의 맨 앞 두 옥텟 송신자 공개키의 키 ID

Page 17: Chap 9.  전자우편 정보보호

17

PGP PGP 메시지의 일반 형식메시지의 일반 형식수신자의 공개키 수신자의 공개키 (KU(KUbb)) 의 키 의 키 IDID

Session KeySession Key

Time StampTime Stamp

송신자의 공개키 송신자의 공개키 (KU(KUaa)) 의 키 의 키 IDID

메시지 다이제스트의 메시지 다이제스트의 선행 두 옥텟선행 두 옥텟

Message DigestMessage Digest

File NameFile Name

Time StampTime Stamp

DataData

세션키구성요소

서명

메시지

R64

EIKsZIP

Page 18: Chap 9.  전자우편 정보보호

18

Key RingKey Ring

모든 키는 사용자가 효과적으로 사용할 수 있도록 체계적인 모든 키는 사용자가 효과적으로 사용할 수 있도록 체계적인

방법으로 관리방법으로 관리 , , 저장될 필요가 있다저장될 필요가 있다 ..

사용자가 소유하는 공개사용자가 소유하는 공개 // 개인키 쌍과 다른 사람의 공개키들을 개인키 쌍과 다른 사람의 공개키들을

저장하기 위한 자료 구조를 제공 저장하기 위한 자료 구조를 제공

개인키 링개인키 링 , , 공개키 링공개키 링

개인키 링개인키 링 사용자 ID 나 키 ID 로서 색인화

사용자의 시스템에만 저장 , IDEA 를 이용하여 암호화

Page 19: Chap 9.  전자우편 정보보호

19

Key Ring(Key Ring( 계속계속 ))

공개키 링공개키 링 다른 사용자와 상호 운영하기 위해서는 다른 사용자의

공개키를 가지고 있어야 함 사용자 ID 나 키 ID 로서 색인화 attack으로부터 공개키를 보호하는 일이 가장 어려운 문제 공개키를 보호하는 접근법

– 실제로 가져 옴

– 전화 통화로 확인

– 양쪽이 신뢰하는 개인으로부터

– 신뢰되는 인증기관으로부터

Page 20: Chap 9.  전자우편 정보보호

20

PGP Message PGP Message Transaction(Transaction( 송신송신 ))

M

H

DI

H ER l l Z

EI

RNGRNG

ER l l

IDA

Passphrase

개인키 링

공개키 링

선택

선택IDB

암호화된 개인키

A

세션키 Ks

공개키 KUb

키 ID

출력

암호화된 서명 + 메세지

Radix-64

next on the continued

Page 21: Chap 9.  전자우편 정보보호

21

PGP Message PGP Message Transaction(Transaction( 수신수신 ))

암호화된메세지

+서명

수신자의 키 ID

암호화된세션키

개인키 링

HPassphrase

DI

암호화된 개인키

DR

DI서명

송신자의 키 ID

암호화된다이제스트

Z-1

공개키 링

선택선택

DR

H

개인키 KRb

세션키 Ks

공개키 KUa

Radix-64

Compare?

Page 22: Chap 9.  전자우편 정보보호

22

PGP PGP 관련 파일 설명관련 파일 설명 PGP PGP 관련 화일관련 화일

pubring.pgppubring.pgp

자신의 공개키와 다른 사람의 공개키를 함께 저장하는 화일 이진 형태로 저장 , 일반 명령으로 확인 불능

secring.pgpsecring.pgp

사용자 자신의 비밀키만을 저장 passphrase 를 IDEA 의 키로 사용하여 암호화 해 놓는다 .

randseed.binrandseed.bin

공개 / 비밀키를 생성하는데 필요한 두 개의 random prime number 를

선택하는데 이용되는 seed 값과 IDEA 의 생산에 쓰일 seed 값을 보관

Page 23: Chap 9.  전자우편 정보보호

23

PGP PGP 관련 내용 설명관련 내용 설명 PassphrasePassphrase

패스워드 개념패스워드 개념 길이에 제한이 없으며길이에 제한이 없으며 , MD5 hash function, MD5 hash function 을 거치면서 을 거치면서 128bit128bit 의 의 hash codhash cod

ee 가 가

생성생성 128 bit IDEA128 bit IDEA 의 키로 사용하여 의 키로 사용하여 messagemessage 를 암호화하거나를 암호화하거나 , RSA, RSA 에서 생성된 에서 생성된 비밀키를 암호화하여 개인키 링비밀키를 암호화하여 개인키 링 (secring.pgp)(secring.pgp) 에 저장에 저장

FingerprintFingerprint 공개키를 공개키를 MD5MD5 를 사용하여 를 사용하여 128bit128bit 의 형태로 나타내는 것의 형태로 나타내는 것 각 키에 대해 고유한 값을 가진다각 키에 대해 고유한 값을 가진다

키의 신원을 확인할 수 있는 도구로 이용키의 신원을 확인할 수 있는 도구로 이용

Page 24: Chap 9.  전자우편 정보보호

24

FingerprintFingerprint

Page 25: Chap 9.  전자우편 정보보호

25

PGP installPGP install

PGPPGP 를 구할 수 있는 곳를 구할 수 있는 곳 http:// www. ifi.uio.no/pgp/http:// www. ifi.uio.no/pgp/ ftp://juno.kaist.ac.kr/pub/security/pgp/ftp://juno.kaist.ac.kr/pub/security/pgp/ ftp://what.snu.ac.kr/pub/pgp/ftp://what.snu.ac.kr/pub/pgp/

PGP VersionPGP Version PGP 2.3aPGP 2.3a PGP 2.6uiPGP 2.6ui MIT PGP 2.6.2MIT PGP 2.6.2 PGP 2.6.3iPGP 2.6.3i PGP 3.0PGP 3.0 현재 최신 현재 최신 versionversion 으로 으로 PGP 5.0PGP 5.0

Page 26: Chap 9.  전자우편 정보보호

26

PGP installPGP install

Page 27: Chap 9.  전자우편 정보보호

27

PGP installPGP install

Page 28: Chap 9.  전자우편 정보보호

28

PGP installPGP install

Page 29: Chap 9.  전자우편 정보보호

29

Page 30: Chap 9.  전자우편 정보보호

30

Page 31: Chap 9.  전자우편 정보보호

31

2. PEM(Privacy 2. PEM(Privacy Enhanced Mail)Enhanced Mail)

전자 우편 응용에 대한 정보보호 관련 서비스를 제공하는 인터넷 표준 설계 특징설계 특징

– 상호 동작성

» 응용층에서 구현» 하위 프로토콜 , 운영체제 , 호스트와는 독립적

– 호환성

» 기존의 우편 시스템에 도입하더라도 별도의 변경 사항이 필요 없음

– 다중 우편 전송 기능 – 다양한 사용자 인터페이스– pc 사용자에 지원 가능– 우편 목록 지원– 다양한 키 관리 방법 제공

» 수동 , 중앙 집중형 ( 대칭 암호 기반 ), 공개키 인증서 등 지원

Page 32: Chap 9.  전자우편 정보보호

32

2.1 2.1 개요개요 PEMPEM 에서 지원되는 기능에서 지원되는 기능

노출 보호노출 보호 발신자 인증발신자 인증 메시지 무결성메시지 무결성 발신처 부인 봉쇄 발신처 부인 봉쇄 (( 비대칭 키 관리 사용시비대칭 키 관리 사용시 ))

지원하지 않는 기능지원하지 않는 기능 엑세스 제어 , 트래픽 흐름 기밀성 , 경로 제어 , 다중 사용자

관리 , 수신 거절 봉쇄 , 참조 메시지 연동 , 메시지 중복 차단 및 재 전송 방지 기능 ,

Page 33: Chap 9.  전자우편 정보보호

33

2.2 2.2 암호 알고리즘과 키암호 알고리즘과 키

알고리즘 분석알고리즘 분석 메시지 암호화메시지 암호화 (DES-CBC (DES-CBC 이용이용 ))

– 메시지 => 일회용 세션키로 DES-CBC 를 이용해 암호화

– 세션키 => 수신자의 공개키로 RSA 를 이용해 암호화

인증 및 디지털 서명인증 및 디지털 서명 (MD2 OR MD5(MD2 OR MD5 를 이용한 를 이용한 RSA)RSA)– 메시지 해쉬 => MD2 OR MD5 이용

– 해쉬 결과는 송신자의 개인키로 RSA 를 이용해 암호화

인증인증 (MD2 OR MD5 : DES-ECB OR DES-EDE)(MD2 OR MD5 : DES-ECB OR DES-EDE)– 메시지 해쉬 => MD2 OR MD5 이용

– 해쉬 결과는 대칭 키를 이용해 DES-ECB 나 DES-EDE 를 이용해 암호화

Page 34: Chap 9.  전자우편 정보보호

34

알고리즘 분석알고리즘 분석 (( 계속계속 ))

대칭키 관리대칭키 관리 (DES-ECB OR DES-EDE (DES-ECB OR DES-EDE 이용이용 ))

– 세션키 : 대칭키를 이용하여 DES-ECB 나 DES-EDE 를 이용해

암호화

비대칭키 관리비대칭키 관리 (RSA & MD2)(RSA & MD2)

– 공개키 인증서 => MD2 로 해쉬

– 해쉬 결과는 RSA 를 이용하여 암호화

– 세션키 => 수신자의 공개키로 RSA 를 이용하여 암호화

Page 35: Chap 9.  전자우편 정보보호

35

PEMPEM 에서의 키 사용에서의 키 사용

비대칭 키 관리 대칭 키 관리

암호화를 위해 사용된 데이터암호화키 (DEK)

암호화에 사용되는 상호 교환키 (IK)

암호화에 사용되는 발행자 비대칭 키

메시지 텍스트 ,MIC 의 서명된 표현

DEK

공개키 인증서 해쉬 코드

메시지 텍스트

DEK, MIC( 메시지 무결성 코드 )

Page 36: Chap 9.  전자우편 정보보호

36

2.3 2.3 운영에 대한 설명운영에 대한 설명 메시지를 정형화된 형태로 변환메시지를 정형화된 형태로 변환

SMTP 전송 형식과 로컬 형식 사이의 대응에서 변환상의 문제 발생을 없애기 위해 실행

MIC 계산시에는 기수 -64 변환 이용

메시지 무결성과 인증 정보 생성메시지 무결성과 인증 정보 생성 MIC 에 의존

– 비대칭 암호 인증 (RSA 이용 )

– 대칭 암호 인증 중 하나를 사용 (DES-ECB OR DES-EDE 이용 )

Page 37: Chap 9.  전자우편 정보보호

37

메시지 암호화메시지 암호화 (( 선택 서비스선택 서비스 )) IK 가 대칭 또는 비대칭인지에 따라 다르게 처리 비대칭

– EKDEK(EKRa[H(M)]

대칭– DEK 로 암호화 하는 일은 필요치 않음

프린트 할 수 있는 부호화된 형태로 변환프린트 할 수 있는 부호화된 형태로 변환 (( 선택서비스선택서비스 )) 다양한 메일 처리 시스템과의 호환성을 유지를 위해 보장 메시지를 프린트 가능한 부호화된 형태로 변환

Page 38: Chap 9.  전자우편 정보보호

38

PEM PEM 메시지 전송메시지 전송

메시지를 정형 형식으로 변환

MIC 생성 : 인증 정보 추가

암호화가 요구되는가 ?

출력 가능한 부호화가 요구되는가 ?

메시지 암호화 : 키 정보 포함

기수 64 로 변환

평문 메시지

처리된 메시지

Y

YN

N

Page 39: Chap 9.  전자우편 정보보호

39

PEM PEM 메시지 수신메시지 수신

메시지를 정형 형식으로 변환

MIC 생성 : 인증 정보 추가

암호화가 사용되는가 ?

출력 가능한 부호화를 사용했는가 ?

메시지 복호화 : 세션키 이용

기수 64 로 변환

평문 메시지

처리된 메시지

Y

Y

N

N

Page 40: Chap 9.  전자우편 정보보호

40

End privacy-enhanced message

사용자 TEXT

암호화된 DEK

버전 / 유효기간발행 기관MIC 정보

발행자 인증서발신자 키 정보발신자 인증서

버전 / 유효기간발행 기관

메시지 텍스트 암호 알고리즘내용 도메인

처리 유형

PEM PEM 형식형식 (( 비대칭비대칭 ))

Begin privacy-enhanced message

발신자 필드

수신자 필드

발신자 ID 필드

수신자 ID 필드

선택사항

Page 41: Chap 9.  전자우편 정보보호

41

PEM PEM 형식형식 (( 대칭대칭 ))

End privacy-enhanced message

사용자 TEXT

암호화된 MIC

암호화된 DEK

버전 / 유효기간발행 기관엔티티 ID

발신자 키 정보버전 / 유효기간

발행 기관엔티티 ID

메시지 텍스트 암호 알고리즘내용 도메인

처리 유형Begin privacy-enhanced message

발신자 필드

수신자 필드

발신자 ID 필드

수신자 ID 필드

선택사항

선택사항