전자우편보안 (e-mail security)

26
(c) Byoungcheon Lee, Joongbu Univ. 1 전전전전전전 (E-mail Security) 2010. 11. 중중중중중 중중중중중중 중중중 중중 중중중중중중중

Upload: bayle

Post on 22-Feb-2016

122 views

Category:

Documents


0 download

DESCRIPTION

전자상거래보안. 전자우편보안 (E-mail Security). 2010. 11. 중부대학교 정보보호학과 이병천 교수. 목 차. 전자우편보안 개요 PGP (Pretty Good Privacy) PGP 에서 제공하는 보안 서비스 PGP 의 메시지의 구조 PGP 키 인증 PGP 의 기능 및 동작 S/MIME S/MIME 이 제공하는 보안 서비스 S/MIME 인증서 S/MIME 의 동작 S/MIME 메시지의 생성. 1. 전자우편 보안 개요. 전자우편이란 - PowerPoint PPT Presentation

TRANSCRIPT

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

(c) Byoungcheon Lee, Joongbu Univ. 1

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

2010. 11.중부대학교 정보보호학과이병천 교수

전자상거래보안

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

(c) Byoungcheon Lee, Joongbu Univ. 2

목 차 전자우편보안 개요 PGP (Pretty Good Privacy)

◦ PGP 에서 제공하는 보안 서비스◦ PGP 의 메시지의 구조◦ PGP 키 인증◦ PGP 의 기능 및 동작

S/MIME◦ S/MIME 이 제공하는 보안 서비스◦ S/MIME 인증서◦ S/MIME 의 동작◦ S/MIME 메시지의 생성

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

(c) Byoungcheon Lee, Joongbu Univ. 3

1. 전자우편 보안 개요 전자우편이란

◦ 현재 인터넷 사용자들이 가장 많이 사용하고 있는 인터넷 서비스중의 하나 ◦ 송신자가 수신자에게 일방향으로 메시지 전달 ◦ 보안상 매우 취약한 구조를 가지고 있음

프라이버시 문제 : 엽서와 같은 구조 인증 문제 : 남이 내 이름을 빌어 메일을 보낼 수 있음

전자우편의 보안요구사항 ◦ 기밀성 ◦ 인증성 ( 부인방지 ) : 신분인증 , 메시지인증 ◦ 무결성

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

(c) Byoungcheon Lee, Joongbu Univ. 4

보안 기법 암호화 : 기밀성 제공

◦ 대칭키 암호화 : 메시지 본문을 암호화 ◦ 공개키 암호화 : 키를 암호화

전자서명 : 인증성 제공 해쉬함수 : 무결성 제공 메시지 압축 : 통신량 감소 , 기밀성 향상 사용자 인증 : 상대방의 신분 인증 ( 신뢰 및 분쟁시 문제 해결 )

◦ PKI 이용 : S/MIME 방식 ◦ 다른 방법 이용 : PGP 방식

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

(c) Byoungcheon Lee, Joongbu Univ. 5

전자우편 어플리케이션 POP3 소프트웨어 : Outlook, Eudora 등 웹메일 : 중부대웹메일 , 네이버메일 , 한메일 등 기존의 소프트웨어에 보안기능을 어떻게 적용할 것인가 ?

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

(c) Byoungcheon Lee, Joongbu Univ. 6

2. PGP PGP (Pretty Good Privacy)

◦ 1991 년 미국의 Phil Zimmermann 에 의해서 개발된 대표적인 전자우편 보안 도구 .◦ 구현이 용이하고 일반적으로 사용된 알고리즘의 안전성이 높기 때문에 일반 대중에게 널리 사용 .◦ 정부나 특정 단체에서 만든 것이 아니라 개인이 만들어 무료로 배포 .◦ 암호화 알고리즘을 이용하여 기밀성 , 인증 , 무결성 , 부인방지 등의 기능을 지원 . ◦ http://www.pgpi.com

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

(c) Byoungcheon Lee, Joongbu Univ. 7

PGP 기능과 사용 암호 알고리즘기 능 사용 암호 알고리즘

메시지 기밀성 IDEA,CAST,Triple-DES

전자서명( 무결성 , 사용자 인증 , 송신자 부인 봉쇄 )

RSA,DSS/Diffie-Hellman,SHA-1,MD5,RIPEMD-160

압축 ZIP

전자우편 호환성 Radix-64 conversion

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

(c) Byoungcheon Lee, Joongbu Univ. 8

PGP 의 메시지의 구조수신자의 공개키 (KUb) 의 키 ID

Session Key

Time Stamp

송신자의 공개키 (KUa) 의 키 ID

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

Message Digest

File Name

Time Stamp

Data

세션키구성요소

서명

메시지

R64

EIKsZIP

KUb= 사용자 b 의 공개키KUa= 사용자 a 의 공개키Ks= 세션키ER= 암호화기능EI=IDEA 복호화 기능ZIP=PKZIP 압축 기능R64=Radix-64 변환 기능

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

(c) Byoungcheon Lee, Joongbu Univ. 9

PGP 의 메시지의 구조 메시지

◦ Timestamp : 데이터가 만들어진 시각이 들어감 . 서명

◦ Timestamp : 서명이 만들어진 시각이 들어감 .◦ Message Digest 의 선행 두 옥텟 : 암호화된 Message Digest를 모두 비교하면 시간이 오래 걸리므로 앞의 16 비트만 비교하기 위해서 필요한 부분 .◦ Message Digest : 서명이 생성된 시각의 Timestamp 와 데이터를 해쉬함수로 다이제스트 시킨 것을 나타낸다 .

세션키 구성요소◦ Session Key

메시지를 암호화하고 복호화하는 용도에 사용 . 이 세션키는 수신자의 공개키를 이용하여 암호화한다 .

◦ 수신자의 공개키의 키 ID

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

(c) Byoungcheon Lee, Joongbu Univ. 10

Key Ring 필요성

◦ 모든 키는 사용자가 효과적으로 사용할 수 있도록 체계적인 방법으로 관리 , 저장될 필요가 있다 .◦ 사용자가 소유하는 공개 / 개인키 쌍과 다른 사람의 공개키들을 저장하기 위한 자료 구조를 제공 ◦ 개인키 링 , 공개키 링

개인키 링◦ 사용자 ID 나 키 ID 로서 색인화◦ 사용자의 시스템에만 저장 , IDEA 를 이용하여 암호화

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

(c) Byoungcheon Lee, Joongbu Univ. 11

Key Ring 공개키 링

◦ 다른 사용자와 상호 운영하기 위해서는 다른 사용자의 공개키를 가지고 있어야 함◦ 사용자 ID 나 키 ID 로서 색인화◦ attack 으로부터 공개키를 보호하는 일이 가장 어려운 문제◦ 공개키를 보호하는 접근법

실제로 가져 옴 전화 통화로 확인 양쪽이 신뢰하는 개인으로부터 신뢰되는 인증기관으로부터

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

(c) Byoungcheon Lee, Joongbu Univ. 12

PGP 키 인증 문제점

◦ 사용자 A 의 키라고 받은 키가 정말로 A 의 키인지를 확인하는 것은 어렵다 .◦ PGP 에서는 사용자들간의 신뢰도를 계산하여 키의 진위를 결정한다 .◦ 이러한 키의 인증 과정에서 필요한 값들은 Public key ring의 Owner_trust, Key_legitimacy, Signature, Signa-

ture_trust 이 있다 .

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

(c) Byoungcheon Lee, Joongbu Univ. 13

PGP 키 인증 Key_legitimacy

◦ 사용자가 A 의 키라고 되어 있는 키를 받았을 때 이 키가 어느 정도 A 인지를 나타내는 필드이다 .◦ 값은 다른 필드의 값을 참고하여 PGP 가 자동으로 계산한다 .

Undefined : 사용자가 알고 있는 사람의 서명이 없을 때 Untrusted : 사용자가 불신하고 있는 사람의 서명이 있을 때 Marginal trust : 사용자가 어느 정도 믿는 사람의 서명이 있을 때 Complete trust : 사용자가 완전히 믿는 사람의 서명이 있을 때

◦ 마지막을 제외한 값을 가지고 있는 키는 사용할 때 경고 메시지가 보여진다 .

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

(c) Byoungcheon Lee, Joongbu Univ. 14

PGP 의 기능 및 동작 기밀성 ( 암호화 )

◦ IDEA, CAST, Triple-DES 등의 알고리즘이 사용된다 .

ERKUb[Ks]

MZ EI l l

ERDR

DI Z-1 M

Ks

KRb

KUb

압축 대칭키암호

공개키암호

연접

송신자 A 수신자 B

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

(c) Byoungcheon Lee, Joongbu Univ. 15

PGP 의 기능 및 동작 메시지 인증 ( 전자서명 )

◦ RSA 와 MD5 가 사용된다 .

MH ER

l l Z-1

DR

H

KRa

Z M

ERKRa[H(M)] KUa

compare ?

해쉬 서명 검증

송신자 A 수신자 B

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

(c) Byoungcheon Lee, Joongbu Univ. 16

PGP 의 기능 및 동작 기밀성 및 인증

H ZER l l EI l l

ER

Z-1DI M

DR

H

M

DR

Compare?

KRaKs

KUbERKUb

[Ks]ERKRa

[H(M)] KUaKRb

서명 암호화 복호화 서명검증

송신자 A 수신자 B

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

(c) Byoungcheon Lee, Joongbu Univ. 17

PGP 의 기능 및 동작 압축

◦ ZIP 알고리즘을 사용하여 압축 전자 우편 호환성

◦ PGP 를 사용해 생성된 파일들은 연속적인 8 비트의 흐름으로 이루어지지만 대개의 전자우편 시스템은 ASCII 문자만을 인식한다 .◦ 그래서 Radix-64 conversion 을 통하여 세 개의 8 비트를 4 개의

ASCII 문자로 변환시킨다 . 분할 및 재결합

◦ 대개의 전자 우편 프로그램은 최대 메시지의 길이를 제한하여 50,000바이트 이하의 메시지만 한번에 보낼 수 있다 . 하지만 PGP 는 큰 메시지를 자동으로 나누어 보낸다 .◦ 또한 분할된 메시지를 자동으로 결합해 준다 .

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

(c) Byoungcheon Lee, Joongbu Univ. 18

3. S/MIME 인터넷 전자 메일의 구성

◦ 헤더 : 메시지 전송과 관련된 주요 정보◦ 보디 : 메시지 내용

MIME (Multipurpose Internet Mail Extension)◦ 보디 부분을 어떻게 구성할 것인가에 대한 정의를 나타낸다 .◦ 텍스트 이외의 음성 , 영상 , 문서 , 첨부화일 등을 메일 메시지 형태로 구성하는 방법에 대한 정의 ◦ MIME 객체

S/MIME (Secure MIME)◦ 응용계층에서 보안을 제공하는 가장 대표적인 시스템◦ MIME 객체에 암호화와 전자서명 기능을 추가한 프로토콜 .◦ 전자우편에 국한하여 보안을 제공하지는 않는다 .

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

(c) Byoungcheon Lee, Joongbu Univ. 19

S/MIME 이 제공하는 보안 서비스

보안서비스 보안 메커니즘 암호 알고리즘

메시지 기밀성 암호화 Triple-DES메시지 무결성 해쉬함수 SHA-1사용자 인증 공개키 인증 x.509 v3 인증서

부인방지 전자 서명 DSA

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

(c) Byoungcheon Lee, Joongbu Univ. 20

S/MIME 인증서 S/MIME 인증서

◦ X.509 인증서에 포함된 공개키를 이용해 보안 메커니즘을 이용 공개키 인증서 발행 절차

◦ 사용자는 웹 브라우저를 이용해 인증서 발행 기관에 접속 , 이때 자신의 비밀키와 공개키를 만든다 .◦ 자신의 공개키 , 전자우편 주소와 같은 사용자 정보를 작성 및 전송◦ 인증기관에서는 X.509 형태의 S/MIME 인증서를 발행 .

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

(c) Byoungcheon Lee, Joongbu Univ. 21

S/MIME 의 동작 S/MIME 의 동작

◦ 사용자는 수신자에게 보낼 메시지를 작성 (MIME 형태로 ).◦ 전자서명 , 암호화 , 전자서명 / 암호화 3 개 중 택한다 .◦ 그러면 S/MIME 어플리케이션은 MIME 형태의 메시지를 S/MIME 메시지로 변환한 후 전송◦ 수신자는 메일을 복호화 , 전자서명 확인 등을 통하여 메일을 확인한다 .

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

(c) Byoungcheon Lee, Joongbu Univ. 22

S/MIME 의 동작 전자서명 메시지 생성 절차

◦ 원본 메일을 MIME 형태로 변환 . ◦ 해쉬 함수를 사용하여 20 바이트의 해쉬값을 생성한다 . 이것을 자신의 비밀키로 전자서명 한다 . 이 데이터는 PKCS #7 에 정의된 형태로 만들어진다 .◦ 이진 형태의 전자서명 데이터는 전송을 위해 사용되는 base-64 인코딩 처리를 한다 .◦ 생성된 전자서명 데이터는 Content-Type:application/x-pkcs7-

signature 을 이용해 MIME 형태로 변환된다 .◦ 마지막으로 원본 메시지와 전자서명 데이터를 “ Content-

Type:multipart/signed”를 사용해 MIME 형태로 변환하여 합친다 .

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

(c) Byoungcheon Lee, Joongbu Univ. 23

S/MIME 의 동작 메시지 암호화 절차

◦ 원본 메시지를 MIME 형태로 변환◦ 송신자는 암호화에 사용될 비밀키 생성◦ 비밀키는 수신자의 공개키로 암호화되어 의도하는 수신자 외에는 볼 수 없도록 한다 .◦ 생성된 비밀키와 RC2 와 같은 알고리즘으로 암호화된다 .◦ 이 데이터에 대해 ASN.1 에 따른 BER 로 변환하고 , base-64 인코딩 한다 .◦ 마지막으로 암호화가 수행된 데이터는 “ Content-

Type:application/x-pkcs7-mime”를 사용한 MIME 형태로 변환한다 .

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

(c) Byoungcheon Lee, Joongbu Univ. 24

S/MIME V2 와 V3 비교비교 항목 ( 알고리

즘 )S/MIME v2 S/MIME v3

해쉬 알고리즘 MD5 SHA-1

전자 서명 RSA DSA

공개키 암호 알고리즘 RSA Diffie-Hellman

대칭키 암호 알고리즘 40bit RC2 Triple-DES

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

(c) Byoungcheon Lee, Joongbu Univ. 25

전자우편 보안 시스템의 비교안전한 전자우편 시스템 비고

PEM (Privacy Enhanced Mail)

IETFInternet 표준안중앙 집중화 된 키 인증 , 구현이 어렵다높은 보안성 ( 군사용 , 은행 시스템 )많이 사용되지 않음

PGP (Pretty Good Privacy)

Phil Zimmerman 이 개발분산화 된 키 인증구현이 용이일반 용도의 보안성많이 사용

S/MIMERSA Data Security,Inc 개발전자우편 메시지 표준 (MIME) 기반다양한 상용 툴 킷x.509 인증지원

PGP/MIME전자우편 메시지 표준 (MIME) 기반PGP 암호 기법 + 전자우편 시스템x.509 인증서 지원 안됨

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

(c) Byoungcheon Lee, Joongbu Univ. 26

Questions 인터넷 이용자들이 많이 사용하는 어플리케이션 중에서 전자우편과 같은 보안서비스가 필요한 것에는 어떤 것들이 있는가 ? 위에서 제시한 어플리케이션에서는 어떤 보안서비스가 필요한가 ? 위의 보안서비스를 제공할 수 있는 방법은 무엇인가 ?