HTTP & HTTPS
HTTP(Hypertext Transfer Protocol)
클라이언트와 서버 간 통신을 위한 통신 규칙 세트 또는 프로토콜
사용자가 웹 사이트를 방문하면 사용자 브라우저가 웹 서버에 HTTP 요청을 전송하고 웹 서버는 HTTP 응답으로 응답합니다.
웹 서버와 사용자 브라우저는 데이터를 일반 텍스트로 교환합니다.
간단히 말해 HTTP 프로토콜은 네트워크 통신을 작동하게 하는 기본 기술입니다.
HTTPS(Hypertext Transfer Protocol Secure)
HTTP의 확장 버전 또는 더 안전한 버전
HTTPS에서는 브라우저와 서버가 데이터를 전송하기 전에 안전하고 암호화된 연결을 설정합니다.
HTTP 작동 방식
HTTP는 OSI(Open Systems Interconnection) 네트워크 통신 모델의 애플리케이션 계층 프로토콜입니다.
HTTP는 여러 유형의 요청과 응답을 정의합니다.
HTTP 요청 예시
- 웹 사이트의 일부 데이터를 보려는 경우 HTTP GET 요청을 전송합니다.
- 연락처 양식 작성과 같은 일부 정보를 전송하려는 경우 HTTP PUT 요청을 전송합니다.
HTTP 응답 예시
- 200 - OK(정상)
- 400 - Bad request(잘못된 요청)
- 404 - Resource not found(리소스를 찾을 수 없음)
이러한 요청 및 응답 통신은 일반적으로 사용자에게 보이지 않습니다.
브라우저와 웹 서버가 사용하는 통신 방식이므로 World Wide Web은 모든 사용자에게 일관되게 작동합니다.
HTTPS 작동 방식
HTTPS는 HTTP 요청 및 응답을 SSL 및 TLS 기술에 결합합니다.
HTTPS 웹 사이트는 독립된 인증 기관(CA)에서 SSL/TLS 인증서를 획득해야 합니다. 이러한 웹 사이트는 신뢰를 구축하기 위해 데이터를 교환하기 전에 브라우저와 인증서를 공유합니다. SSL 인증서는 암호화 정보도 포함하므로 서버와 웹 브라우저는 암호화된 데이터나 스크램블된 데이터를 교환할 수 있습니다.
HTTPS 프로세스
- 사용자 브라우저의 주소 표시줄에 https:// URL 형식을 입력하여 HTTPS 웹 사이트를 방문합니다.
- 브라우저는 서버의 SSL 인증서를 요청하여 사이트의 신뢰성을 검증하려고 시도합니다.
- 서버는 퍼블릭 키가 포함된 SSL 인증서를 회신으로 전송합니다.
- 웹 사이트의 SSL 인증서는 서버 아이덴티티를 증명합니다. 브라우저에서 인증되면, 브라우저가 퍼블릭 키를 사용하여 비밀 세션 키가 포함된 메시지를 암호화하고 전송합니다.
- 웹 서버는 개인 키를 사용하여 메시지를 해독하고 세션 키를 검색합니다. 그런 다음, 세션 키를 암호화하고 브라우저에 승인 메시지를 전송합니다.
- 이제 브라우저와 웹 서버 모두 동일한 세션 키를 사용하여 메시지를 안전하게 교환하도록 전환합니다.
HTTP와 HTTPS의 차이점
HTTP | HTTPS | |
의미 | Hypertext Transfer Protocol | Hypertext Transfer Protocol Secure |
용도 | 이전 텍스트 기반 웹사이트 | 모든 최신 웹사이트 |
보안 | 추가 보안 기능 없음 | 퍼블릭 키 암호화에 SSL 인증서 사용 |
이점 | 인터넷을 통한 통신 지원 | 웹사이트에 대한 권위, 신뢰성 및 검색 엔진 순위 개선 |
면접 예상 질문
- HTTP란 무엇인가요?
- HTTPS란 무엇인가요?
- HTTP의 작동 방식에 대해 설명해주세요.
- HTTPS의 작동 방식에 대해 설명해주세요.
- HTTP와 HTTPS 차이점은 무엇이 있을까요?
참고 URL
https://aws.amazon.com/ko/compare/the-difference-between-https-and-http/
'네트워크' 카테고리의 다른 글
TCP Handshake (1) | 2023.12.22 |
---|---|
TCP & UDP (0) | 2023.12.17 |
OSI 7계층 구조 (0) | 2023.11.18 |