본문 바로가기
웹 개발 (Frontend Developer)/네트워크

HTTPS는?

by Jackykim 2024. 9. 26.

<HTTPS에 대해>

HTTPS는 (Hypertext Transfer Protocol Secure) HTTP 요청을 SSL 또는 TLS 프로토콜을 이용해, HTTP 통신을 하는 과정에서 내용을 암호화하여 데이터를 전송하는 방법입니다. 이는 사용자가 은행 계좌, 이메일 서비스, 의료 보험 공급자에 로그인하는 등 중요한 데이터를 전송할 때 특히 중요합니다.

*클라이언트와 서버 간의 통신을 암호화합니다*

 

<인증서>

HTTPS 프로토콜의 또 다른 특징 중 하나는 브라우저가 응답과 함께 전달된 인증서 정보를 확인할 수 있다는 점입니다. 브라우저는 인증서의 도메인과 데이터를 제공한 제공자의 도메인을 비교할 수 있기 때문에 인증서의 도메인 정보와 데이터 제공자의 도메인 정보가 다른 '중간자 공격'을 감지하여 보안 위협으로부터 사용자 및 사용자의 데이터를 보호할 수 있습니다.

인증서 (certificate)
- 데이터 제공자 신원 보상
- 도메인 종속

CA (Certificate Authority)
- 공인 인증서 발급 기관

- CA는 웹사이트에 신뢰할 수 있는 인증서를 발급해주며, 브라우저는 CA에서 발급한 인증서를 통해 웹사이트의 신뢰성을 확인합니다

 

<HTTPS 작동 방법>

HTTPS 웹 사이트는 독립된 인증 기관 (CA)에서 SSL/TLS 인증서를 획득해야 합니다, 서버와 웹 브라우저가 암호화된 데이터를 교환하는 프로세스는 다음과 같습니다. 

  1. 브라우저의 주소에 https:// URL 형식을 입력하여 HTTPS 웹 사이트를 방문합니다
  2. 브라우저는 서버의 SSL 인증서를 요청하여 사이트 검증하려고 시도합니다 
  3. 서버는 퍼블릭 키가 포함된 SSL 인증서를 회신으로 전송합니다
  4. 웹 사이트의 SSL 인증서는 서버 아이덴티티를 증명하고, 인증 후 브라우저가 퍼블릭 키를 사용하여 비밀 세션 키가 포함된 메시지를 암호화하고 전송합니다
  5. 웹 서버는 개인 키를 사용하여 메시지를 해독하고 세션 키를 검색합니다. 그런 다음, 세션 키를 암호화하고 브라우저에 승인 메시지를 전송합니다
  6. 브라우저와 웹 서버 모두 동일한 세션 키를 사용하여 메시지를 안전하게 교환하도록 전환합니다

<HTTPS를 선택하는 이유?>

  • 보안 : HTTP 메시지는 일반 텍스트이므로, 권한이 없는 당사자가 인터넷을 통해 쉽게 액세스 하고 읽을 수 있습니다. 반면, HTTPS는 모든 데이터를 암호화된 형태로 전송하여 제3자가 네트워크를 통해 데이터를 가로챌 수 없습니다.
  • 권위 : 검색 엔진은 HTTP의 신뢰성이 더 낮기 때문에 보통 HTTP 웹 사이트 콘텐츠의 순위를 HTTPS 웹 페이지보다 낮게 지정합니다. 사용자는 추가 보안을 신회 하여 HTTPS 웹 사이트를 더 선호합니다.
  • 성능 및 분석 : HTTPS 웹 애플리케이션은 HTTP 애플리케이션보다 로드 속도가 더 빠릅니다. HTTPS는 최신 프로토콜을 지원하여 데이터 전송이 더 효율적이기 때문에 성능이 더 뛰어납니다.

<HTTP vs HTTPS 요약>

참고 자료 :

https://aws.amazon.com/ko/compare/the-difference-between-https-and-http/

 

HTTP와 HTTPS 비교 - 전송 프로토콜 간의 차이점 - AWS

1996~1997년에 출시된 최초의 HTTP 버전이 HTTP/1.1입니다. HTTP/2와 HTTP/3은 프로토콜 자체를 업그레이드한 버전입니다. 데이터 전송 시스템을 수정하면서 효율성을 개선했습니다. 예를 들어, HTTP/2는 텍

aws.amazon.com

https://www.cloudflare.com/ko-kr/learning/ssl/what-is-https/

 

 

'웹 개발 (Frontend Developer) > 네트워크' 카테고리의 다른 글

URL & URI & URN  (1) 2024.09.29
REST API  (5) 2024.09.27
HTTP 버전별 차이점  (5) 2024.09.26
기본 HTTP에 대해 알아보기  (2) 2024.09.26
TCP & UDP  (0) 2024.09.25