HTTP, HTTPS 어떤 차이가 있지?
HTTPS는 HTTP에 보안기능이 추가된 프로토콜이다. 각각의 항목에 대해 아래에서 자세히 알아보자.
HTTP(HyperText Transfer Protocol)
HPPT란 하이퍼 텍스트 전송 프로토콜(HyperText Transfer Protocol)의 약자로 웹에서 정보를 주고 받을 수 있는 프로토콜이다. 주로 HTML 문서를 주고 받는데 쓰였지만 최근에는 Plain text, JSON, XML 등 다양한 형태의 정보도 전송하고 있다.
🔮 프로토콜 (Protocol)
복수의 컴퓨터 사이나 중앙 컴퓨터와 단말기 사이에서 데이터 통신을 원활하게 하기 위해 필요한 통신 규약이다. 신호 송신의 순서, 데이터의 표현법, 오류 검출법 등을 규정한다.
HTTP의 특징으로는 첫째, '클라이언트 - 서버 모델'이다.
클라이언트가 연결하여 요청을 생성하면, 응답을 받을 때까지 대기한다.
둘째, 상태가 없는 무상태(Stateless)이다.
서버는 클라이언트와의 연결이 끊어진 후 어떠한 상태나 데이터를 유지하지 않는다.
이를 보완하기 위해 쿠키, 세션, 토큰을 사용한다.
셋째, 비연결성(Conectionless)을 가진다.
서버가 요청에 response 한 이후에는 클라이언트와 서버의 연결이 끊어진다.
넷째, TCP/IP 레이어 기반이다.
🔮 전송 제어 프로토콜 (TCP)
전송 제어 프로토콜(Transmission Control Protocol)은 근거리 통신망이나 인트라넷, 인터넷에 연결된 컴퓨터에서 실행되는 프로그램 간에 일련의 바이트를 안정적으로, 순서대로, 에러없이 교환할 수 있도록 한다.
HTTPS(Hypertext Transfer Protocol Secure)
HTTPS는 HTTP에 보안기능(Secure Socket)이 추가된 형태이다. 기존의 HTTP 통신에 SSL 혹은 TLS 프로토콜를 조합하여 세션 데이터를 암호화한다. SSL 프로토콜 위에서 동작하는 HTTP라고 할 수 있다.
SSL(보안 소켓 계층)을 사용하여 서버와 브라우저 사이에 암호화된 연결을 제공하며, 443번 포트를 사용한다.
SSL(Secure Sockets Layer)
SSL(Secure Sockets Layer)은 암호화 기반 인터넷 보안 프로토콜이다. 인터넷 통신의 개인정보 보호, 인증, 데이터 무결성을 보장하기 위해 Netscape가 1995년 처음으로 개발했다. SSL은 현재 사용 중인 TLS 암호화의 전신이다.
- SSL은 높은 수준의 개인정보 보호를 제공하기 위해, 웹에서 전송되는 데이터를 암호화한다.
- 데이터를 가로채려는 자는 거의 해독할 수 없는 복잡한 문자만 보게 된다.
- 두 통신 장치 사이에 핸드셰이크라는 인증 프로세스를 시작하여 두 장치의 ID를 확인한다.
- 데이터 무결성을 제공한다.
- 데이터에 디지털 서명하여 데이터가 의도된 수신자에 도착하기 전에 조작되지 않았다는 것을 확인한다.
- SSL 인증서(공식적으로 "TLS 인증서")가 있는 웹사이트만 실행할 수 있다.
- SSL 인증서는 사람의 신원을 확인하는 신분증이나 배지와 같다.
- SSL 인증서는 웹사이트나 애플리케이션 서버가 웹에 저장하고 표시한다.
SSL 인증서 유형
- 단일 도메인
- 단 하나의 도메인( www.test.com)에 적용할 수 있다.
- 와일드카드
- 단일 도메인 인증서처럼 단 하나의 도메인에 적용되지만, 도메인의 하위 도메인도 포함된다.
- 예를 들어, 와일드카드 인증서는 www.test.com, blog.test.com, developers.test.com을 포함할 수 있다.
- 멀티 도메인
- 관련되지 않은 다수의 도메인에 적용될 수 있다.
SSL 인증서 유효성 검사
- 도메인 유효성 검사
- 가장 덜 엄격하고 저렴한 수준의 유효성 검사입니다. 기업은 도메인을 관리하고 있다는 것만 증명된다.
- 조직 유효성 검사
- 보다 실무적인 프로세스입니다. CA가 담당자나 기업에 인증서를 직접 문의한다.
- 이 인증서는 사용자에게 더 많은 신뢰를 제공한다.
- 확장 유효성 검사
- 조직의 배경을 완전히 검사한 후에 SSL 인증서를 발행할 수 있다.
<참고>
'# CS > Network' 카테고리의 다른 글
[Network] L1, L2, L3, L4, L7 모든 스위치에 대해 알아보자 (0) | 2024.07.19 |
---|---|
[Network] 미들웨어(Middleware)란 무엇인가? (0) | 2023.02.15 |