카테고리 없음

[CS/기술면접] HTTP와 HTTPS의 차이점

보리시스템 2023. 4. 17.
HTTP와 HTTPS의 차이점은 무엇인가요?

 

1. 한마디 정리

HTTP는 클라이언트(브라우저)와 서버 간 데이터를 일반 텍스트로 교환하는 반면
HTTPS는 TLS(전송 계층 보안) 프로토콜이라는 추가적인 보안 계층이 있어
데이터 교환에 있어 안전하고 암호화된 연결을 설정한다는 차이가 있습니다.

*HTTPS는 HTTP 요청 및 응답을 SSL 및 TLS 기술에 결합한 것
  HTTP HTTPS
본말 Hypertext Transfer Protocol Hypertext Transfer Protocol Secure
기본 프로토콜 HTTP/1과 HTTP/2는 TCP/IP를 사용합니다.
HTTP/3은 QUIC 프로토콜을 사용합니다.
HTTP 요청 및 응답을 추가로 암호화하기 위해
SSL/TLS와 함께 HTTP/2 사용
포트 기본 포트 80 기본 포트 443
용도 이전 텍스트 기반 웹 사이트 모든 최신 웹 사이트
보안 추가 보안 기능 없음 퍼블릭 키 암호화에 SSL 인증서 사용
장점 인터넷을 통한 통신 지원 웹 사이트에 대한 권위, 신뢰성 및 검색 엔진 순위 개선

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

 

2. 내가 생각한 꼬리질문

1) 프로토콜은 무엇인가요?

프로토콜은 
- 컴퓨터 내부 또는 컴퓨터 사이에서의 데이터 교환 방식을 정의하는 규칙 집합
=> 신호 처리법, 오류처리, 암호, 인증, 주소 등을 포함

https://developer.mozilla.org/ko/docs/Glossary/Protocol

 

프로토콜 - MDN Web Docs 용어 사전: 웹 용어 정의 | MDN

프로토콜은 컴퓨터 내부에서, 또는 컴퓨터 사이에서 데이터의 교환 방식을 정의하는 규칙 체계입니다. 기기 간 통신은 교환되는 데이터의 형식에 대해 상호 합의를 요구합니다. 이런 형식을 정

developer.mozilla.org

 

2) HTTP보다 HTTPS를 선택하는 이유는 무엇인가요?

보안
HTTP 메시지는 일반 텍스트이므로, 권한이 없는 당사자가 인터넷을 통해 쉽게 액세스하고 읽을 수 있습니다. 반면, HTTPS는 모든 데이터를 암호화된 형태로 전송합니다. 사용자가 민감한 데이터를 제출할 때 제3자가 네트워크를 통해 해당 데이터를 가로챌 수 없음을 확신할 수 있습니다. 신용카드 세부 정보 또는 고객 개인 정보와 같은 잠재적으로 민감한 정보를 보호하려면 HTTPS를 선택하는 것이 좋습니다.

권위
검색 엔진은 HTTP의 신뢰성이 더 낮기 때문에 보통 HTTP 웹 사이트 콘텐츠의 순위를 HTTPS 웹 페이지보다 낮게 지정합니다. 고객도 HTTP보다 HTTPS 웹 사이트를 더 선호합니다. 브라우저는 브라우저 주소 표시줄에서 웹 사이트 URL 옆에 있는 자물쇠 아이콘을 배치하여 사용자에게 HTTPS 연결을 표시합니다. 사용자는 이러한 추가 보안 및 신뢰 요소 때문에 HTTPS 웹 사이트 및 애플리케이션을 선호합니다.

성능 및 분석
HTTPS 웹 애플리케이션은 HTTP 애플리케이션보다 로드 속도가 더 빠릅니다. 마찬가지로, HTTPS는 참조 링크도 더 잘 추적합니다. 추천 트래픽은 광고 또는 소셜 미디어 백링크와 같은 서드 파티 소스에서 생성되는 웹 사이트 트래픽입니다. 분석 소프트웨어가 신뢰할 수 있는 트래픽 소스를 정확하게 식별하도록 하려면 HTTPS를 활성화해야 합니다.

 

3) HTTPS 프로토콜은 어떻게 작동하나요?

사용자 브라우저가 HTTPS 웹사이트에 방문하면

1. 브라우저는 서버의 SSL 인증서를 요청해 사이트의 신뢰성을 검증 시도
2. 서버는 퍼블릭 키가 포함된 SSL 인증서를 전송
3. 웹 사이트의 SSL 인증서는 서버 아이덴티티를 증명
4. 브라우저에서 인증되면 퍼블릭 키를 사용해 비밀 세션 키가 포함된 메시지를 암호화하고 전송
5. 웹 서버는 프라이빗 킷를 사용해 메시지를 해독하고 세션 키를 검색 -> 세션 키를 암호화하고 브라우저에 승인 메시지 전송
6. 브라우저와 웹 서버는 동일한 세션 키를 사용해 메시지를 안전하게 교환하도록 전환

------

HTTP는 암호화되지 않은 데이터를 전송합니다. 즉, 브라우저에서 전송된 정보를 제3자가 가로채고 읽을 수 있습니다. 이는 이상적인 프로세스가 아니었기 때문에, 통신에 또 다른 보안 계층을 추가하기 위해 HTTPS로 확장되었습니다. HTTPS는 HTTP 요청 및 응답을 SSL 및 TLS 기술에 결합합니다.

HTTPS 웹 사이트는 독립된 인증 기관(CA)에서 SSL/TLS 인증서를 획득해야 합니다. 이러한 웹 사이트는 신뢰를 구축하기 위해 데이터를 교환하기 전에 브라우저와 인증서를 공유합니다. SSL 인증서는 암호화 정보도 포함하므로 서버와 웹 브라우저는 암호화된 데이터나 스크램블된 데이터를 교환할 수 있습니다. 프로세스는 다음과 같이 작동합니다.

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

 

4) HTTPS가 데이터를 전송하기 전에 안전하고 암호화된 연결을 설정하는 방법은 무엇인가요?

HTTP 요청 및 응답을 추가로 암호화하기 위해
SSL/TLS와 함께 HTTP/2 사용합니다.

 

5) SSL 및 TLS 기술은 무엇인가요?

전송 계층 보안으로 전송 계층을 보호하도록 설계된 암호화 프로토콜입니다 

TLS란 무엇입니까?

TLS(전송 계층 보안)는 통신 링크 또는 전송 계층을 보호하도록 설계된 암호화 프로토콜입니다. TLS는 전송 중인 정보를 보호함으로써 안전하지 않은 인프라를 통한 통신을 보호할 수 있습니다.

SSL이란 무엇입니까?
SSL(Secure Sockets Layer)은 Netscape가 당초 인터넷상의 통신을 보호하기 위해 설계한 것으로, 현재 사용하지 않는 암호화 프로토콜입니다.

SSL과 TLS 중 무엇이 더 좋습니까?
TLS 버전 1.3은 최근에 활발하게 사용되는 암호화 프로토콜 버전으로, 이제는 사용하지 않는 SSL 버전 3.0 프로토콜보다 향상된 보안 기능과 성능을 다수 제공합니다.

TLS와 SSL의 차이점은 무엇입니까?
원래 암호화 프로토콜은 SSL 버전 2였습니다. Netscape가 개발해 1994년에 출시되었고, 1995년에 Netscape가 출시한 SSL 버전 3으로 발전했습니다.

1999년에는 TLS 버전 1.0이 SSL 버전 3과 아주 미세한 차이가 있는 RFC 2246으로 출시되었습니다. 이후 2006년에 여러 보안 수정 사항이 포함된 TLS 버전 1.1 릴리스로 발전했습니다. TLS 버전 1.2는 2008년에 출시되었으며, 인증된 암호화 기능을 지원하고 하드 코딩된 보안 기본 형식을 제거한 완전히 유연한 프로토콜입니다.

TLS 버전 1.3은 2018년에 출시된 최신 버전의 전송 계층 보안 프로토콜로, 인터넷을 통해 안정적인 암호화 기능을 제공합니다. TLS 버전 1.3은 속도를 높이고 보안을 강화하는 데 중점을 둡니다.

SSL 이름이 TLS로 변경된 이유는 무엇입니까?
SSL 프로토콜은 원래 1994년 Netscape에서 개발되었습니다. 이후 SSL 프로토콜은 TLS 실무진을 통해 IETF(Internet Engineering Task Force)로 마이그레이션되었습니다. 당시 Netscape와 Microsoft 간에는 웹에서 우위를 차지하기 위한 정치적인 싸움이 있었습니다. Microsoft를 위해 SSL(Secure Sockets Layer) 프로토콜 이름이 TLS(전송 계층 보안)로 변경되었습니다.

SSL과 TLS 중 무엇이 더 오래된 것입니까?
SSL 버전 3은 TLS 1.3보다 이전 버전으로, SSL 버전 3 프로토콜은 이제 사용되지 않습니다.

 

3. 스터디원 꼬리질문

 


 

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