반응형
S/MIME 개요
전자 우편 보안
SMTP(Simple Mail Transfer Protocol)
- E-mail 전송
- Plaintext Form(Only ASCII text data)
- binary file은 전송하지 못함
암호화된 메시지 전송
인터넷 전자 메일의 구성
- 헤더: 메시지 전송과 관련된 주요 정보
- 본문: 메시지 내용
MIME(Multipurpose Internet Mail Extension)
- 본문 구성에 대한 정의
- 텍스트 및 음성, 영상, 문서, 첨부파일 등 메일의 형태로 구성하는 방법에 대한 정의
- MIME 객체
S/MIME 기본 구조 및 동작
MIME 헤더 필드
헤더필드 | 설명 |
MIME-버전(MIME-version) | 메시지가 RFC2045와 2046을 준수(파라미터 값 1.0) |
내용-타입(Content-Type) | 몸체에 포함된 데이터를 서술 |
내용-전송-부호화(Content-Transfer-Encoding) | 우편전송을 위한 몸체표현의 변형 타입 정의 |
내용-식별자(Content-ID) | 다수의 문맥에서 MIME 엔티티를 유일하게 식별 |
내용-설명(Content-Description) | 몸체를 가진 객체의 텍스트 설명(읽을 수 없는 객체, 오디오데이터 등) |
MIME 포맷
MIME 구성항목
봉투 (Envelop) |
메시지 헤더 (Message Header) |
⬇️MIME 헤더 영역⬇️
MIME-Version : 1.1 Content-Type: type/subtype Content-Transfer-Encoding: encoding type Content-ID: message-id Contnet-Description: textual description of ...... |
메시지 몸체 (Message Body) |
MIME 내용 유형
7개의 주 타임과 15개의 부 타입으로 구성됨
- 주타입: 데이터의 일반적인 유형을 선언
- 부타: 주타입 내에서의 특정 형식을 지정
주 타입의 의미
- Text: 텍스트
- Multipart: 몸체가 다수의 독립적인 파트를 포함하고 있을 때 지정
- Image: 이미지
- Video: 비디오
- Audio: 오디오 / Application 응용
메시지 암호화 개요
메시지 암호화
- HTTP, SMTP, POP3, IMAP 프로토콜은 메시지 보안 기능이 없음
- 메시지 호화를 사용하여 기밀성 및 무결성 제공 가능
- 메시지 암호화 절차
- 메시지의 본문을 비밀 키를 사용하여 암호화하고, 메시지 암호화에 사용된 비밀 키를 받는 사람의 공개 키로 암호화하여 메시지에 첨부하여 보냄
디지털 서명
- SMTP 프로토콜은 보낸 사람을 확인할 수 있는 기능이 없음
- 디지털 서명을 사용하여 보낸 사람 인증 및 무결성 제공 기능
- 디지털 서명 절차
- 메시지를 보내는 사람은 메시지의 해시를 생성하고, 생성된 해시를 자신의 개인 키로 암호화한 후, 자신의 공용 키와 함께 메시지에 첨부하여 보냄
- 디지털 서명 확인 순서
- 메시지를 받은 사람은 보낸 사람의 공용 키를 사용하여 암호화된 해시를 해독하고, 도착된 메시지에서 새로운 해시를 생성하여 해독된 해시와 비교
디지털 서명 및 메시지 암호화
- 디지털 서명만을 사용할 경우 메시지의 기밀성을 제공할 수 없음
- 메시지 암호화만을 사용할 경우 메시지를 보낸 사람의 인증이 안됨
- 디지털 서명과 메시지 암호화는 동시에 사용되어야 함
- 디지털 서명 및 메시지 암호화 순서
- 디지털 서명 후 메시지를 암호화하여 보냄
디지털 서명 확인 및 메시지 해독 순서
- 암호화된 메시지를 해독한 후 디지털 서명을 확인
S/MIME 정의
S/MIME란?
- 메시지를 안전하게 전송하기 위해 1995년 몇몇의 보안 업체들에 의해 개발됨
- 1998년 S/MIME version 2가 IETF 표준이 됨(RFC2311, 2312)
- 1999년 S/MIME version 3가 IETF에 의해 제안되어 RFC 2633, 2634 표준이 됨
- Microsoft Outlook, Outlook Express, Outlook Web Access에서 지원함
응용계층에서 보안을 제공하는 가장 대표적인 시스템
- MIME 객체에 암호화와 전자서명 기능을 추가한 프로토콜
- 전자우편에 국한하여 보안을 제공하지는 않음
S/MIME가 하는일
- 디지털 서명을 이용하여 보낸 사람 증명, 메시지 무결성 제공
- 메시지 암호화를 이용하여 메시지 기밀성 및 무결성 제공
- 서버와 상관 없이 보낸 사람과 받는 사람간에 암호화 제공
- 보낸 사람과 받는 사람의 인증서 필요
- 메시지 별로 디지털 서명 및 암호화 선택
S/MIME (Secure MIME)
- 응용계층에서 보안을 제공하는 가장 대표적인 시스템
- MIME 객체에 암호화와 전자서명 기능을 추가한 프로토콜
- 전자우편에 국한하여 보안을 제공하지는 않음
S/MIME 제공 보안성
보안서비스 | 보안 메커니즘 | 암호 알고리즘 |
메시지 기밀성 | 암호화 | Triple-DES |
메시지 무결성 | 해쉬함수 | SHA-1 |
사용자 인증 | 공개키 인증 | x.509 v3인증서 |
부인방지 | 전자 서명 | DSA |
S/MIME 인증서
- X.509 인증서에 포함된 공개키를 이용해 보안 메커니즘을 이용
공개키 인증서 발행 절차
- 사용자는 웹 브라우저를 이용해 인증서 발행 기관에 접속, 이때 자신의 비밀키와 공개키를 만듦
- 자신의 공개키, 전자우편 주소와 같은 사용자 정보를 작성 및 전송
- 인증기관에는 X.509 형태의 S/MIME 인증서를 발행
S/MIME 적용
- Using S/MIME
- Outlook, Outlook Express, Outlook Web Access, Outlook Mobile Access에서 S/MIME 사용
- Using SSL
- HTTP, SMTP, POP3, IMAP에서 SSL 사용
- Using IPSec Between FE and BE
- IPSec을 사용하여 FE 서버와 BE 서버 사이의 데이터 암호화
S/MIME의 동작
- 사용자는 수신자에게 보낼 메시지를 작성(MIME형태로) 전자서명, 암호화, 전자서명/암호화 3개 중 택함
- S/MIME 어플리케이션은 MIME형태의 메시지를 S/MIME 메시지로 변화한 후 전송
- 수신자는 메일을 복호화, 전자서명 확인 등을 통하여 메일을 확인
반응형