TLS(SSL): Difference between revisions
From CS Wiki
(새 문서: ;브라우저-서버 구간 암호화를 지원하는 보안 프로토콜 == SSL과 TLS == * Netscape에서 처음 개발할 때 이름이 SSL이었다. 이 때부터 사실상 표...) |
No edit summary |
||
Line 6: | Line 6: | ||
: (모 기업의 상용 제품과 이름이 겹쳐서 혼동을 피하고자 했다.) | : (모 기업의 상용 제품과 이름이 겹쳐서 혼동을 피하고자 했다.) | ||
* 즉 SSLv3 ≒ TLS | * 즉 SSLv3 ≒ TLS | ||
* 무선 환경에서는 WTLS가 사용된다. | |||
== 기본 스펙 == | |||
* 공개키 알고리즘을 기반으로 동작한다. | |||
* X.509 인증서를 지원한다. | |||
* 기본적으로 TCP 443 포트를 이용한다. | |||
* OSI 7계층 중 4계층(Transport)부터 7계층(Application)에 걸쳐 동작한다. | |||
* RSA, MD5, SHA-1 등을 사용한다. SHA-1은 최근에 SHA-256으로 대부분 교체되었다. | |||
== 프로토콜 구성 == | == 프로토콜 구성 == | ||
Line 15: | Line 23: | ||
* 세션에 대한 세션정보와 연결 정보를 공유하기 위한 프로토콜 | * 세션에 대한 세션정보와 연결 정보를 공유하기 위한 프로토콜 | ||
* 초기 연결 시 세션 형성을 관장한다. | * 초기 연결 시 세션 형성을 관장한다. | ||
* '''동작순서''' | |||
*# 초기 협상 단계 : 프로토콜 버전, 암호화 방식 등 보안 파라미터를 협상한다. | |||
*# 서버 인증 단계 | |||
*# 클라이언트 인증 단계 | |||
*# 종료 단계 : 협상된 보안 알고리즘에 따라 메시지 교환을 시작한다. | |||
=== Change Cipher Spec 프로토콜 === | === Change Cipher Spec 프로토콜 === | ||
* 서버와 클라이언트 상호 간의 cipher spec 확인을 위해 메시지를 교환하는데 사용된다. | * 서버와 클라이언트 상호 간의 cipher spec 확인을 위해 메시지를 교환하는데 사용된다. | ||
Line 21: | Line 34: | ||
== 인증서의 종류 == | == 인증서의 종류 == | ||
DV(Domain Validation) : 실제 도메인의 소유주인지만 확인한다. | === 보증 범위에 따른 구분 === | ||
OV(Organization Validation) : 신청시 업체로부터 담당자(신청자)의 정보와 사용자 등록을 받음으로써 기업의 실체가 인증된다. | * Wild Card 인증서 : 서브도메인의 개수와 상관없이 모든 서브도메인을 다 보증한다. 가격이 훨씬 비싸다. | ||
EV(Extended Validation) : 업체의 사업자등록증과 기업 신용정보 등 기업의 신뢰도까지 검증하여 피싱, 파밍을 방지할 수 있다. | * 일반 인증서 : 특정 한 도메인에 대해서만 보증하며,서브도메인도 하나의 도메인으로 간주한다. | ||
=== 보증 강도에 따른 종류 === | |||
* DV(Domain Validation) : 실제 도메인의 소유주인지만 확인한다. | |||
* OV(Organization Validation) : 신청시 업체로부터 담당자(신청자)의 정보와 사용자 등록을 받음으로써 기업의 실체가 인증된다. | |||
* EV(Extended Validation) : 업체의 사업자등록증과 기업 신용정보 등 기업의 신뢰도까지 검증하여 피싱, 파밍을 방지할 수 있다. |
Revision as of 07:01, 13 May 2018
- 브라우저-서버 구간 암호화를 지원하는 보안 프로토콜
SSL과 TLS
- Netscape에서 처음 개발할 때 이름이 SSL이었다. 이 때부터 사실상 표준 처럼 많이 쓰였다.
- IETF에서 SSLv3을 기반으로 표준화를 진행하면서 TLS로 명칭이 변경되었다.
- (모 기업의 상용 제품과 이름이 겹쳐서 혼동을 피하고자 했다.)
- 즉 SSLv3 ≒ TLS
- 무선 환경에서는 WTLS가 사용된다.
기본 스펙
- 공개키 알고리즘을 기반으로 동작한다.
- X.509 인증서를 지원한다.
- 기본적으로 TCP 443 포트를 이용한다.
- OSI 7계층 중 4계층(Transport)부터 7계층(Application)에 걸쳐 동작한다.
- RSA, MD5, SHA-1 등을 사용한다. SHA-1은 최근에 SHA-256으로 대부분 교체되었다.
프로토콜 구성
Record 프로토콜
- 기밀성을 위한 데이터 암호화를 수행한다.
- 무결성을 위한 MAC을 생성한다.
- 아래 3개의 프로토콜 하위에 위치하며 실질적인 보안을 수행한다.
Handshake 프로토콜
- 세션에 대한 세션정보와 연결 정보를 공유하기 위한 프로토콜
- 초기 연결 시 세션 형성을 관장한다.
- 동작순서
- 초기 협상 단계 : 프로토콜 버전, 암호화 방식 등 보안 파라미터를 협상한다.
- 서버 인증 단계
- 클라이언트 인증 단계
- 종료 단계 : 협상된 보안 알고리즘에 따라 메시지 교환을 시작한다.
Change Cipher Spec 프로토콜
- 서버와 클라이언트 상호 간의 cipher spec 확인을 위해 메시지를 교환하는데 사용된다.
Alert 프로토콜
- 메시지의 암호화 오류, 인증서 오류 등을 전달한다.
인증서의 종류
보증 범위에 따른 구분
- Wild Card 인증서 : 서브도메인의 개수와 상관없이 모든 서브도메인을 다 보증한다. 가격이 훨씬 비싸다.
- 일반 인증서 : 특정 한 도메인에 대해서만 보증하며,서브도메인도 하나의 도메인으로 간주한다.
보증 강도에 따른 종류
- DV(Domain Validation) : 실제 도메인의 소유주인지만 확인한다.
- OV(Organization Validation) : 신청시 업체로부터 담당자(신청자)의 정보와 사용자 등록을 받음으로써 기업의 실체가 인증된다.
- EV(Extended Validation) : 업체의 사업자등록증과 기업 신용정보 등 기업의 신뢰도까지 검증하여 피싱, 파밍을 방지할 수 있다.