🌐 HTTP
HTTP(HyperText Transfer Protocol)는 서로 다른 시스템들 사이에서 통신을 주고 받도록 하는 여러 프로토콜 중 가장 대표적이고 기본적인 프로토콜이다. 대표적으로 인터넷을 사용할 때 서버에서 각 인터넷 브라우저에 데이터를 전송해주는 용도로 사용되고 있다.
더 자세한 내용은 HTTP Requset와 Response에 대해 정리한 글에서 확인할 수 있습니다!
🌐 HTTPS
HTTPS(HyperText Transfer Protocol Secure)는 HTTP의 보안 문제점을 보완한 프로토콜이다.
🚨 HTTP의 문제점
HTTP는 서버에서 브라우저로 전송되는 정보가 암호화되지 않는다. 따라서, 공격자가 데이터를 중간에 탈취할 경우 그대로 공격자가 데이터를 읽을 수 있게 된다는 뜻이다.
🤜 HTTP의 문제점 해결: HTTPS
HTTPS는 암호화되지 않는 HTTP의 문제점을 해결하기 위해 SSL 또는 TLS 프로토콜을 통해 세션 데이터를 암호화하도록 했다.
✅ 전송 계층 보안: SSL, TLS
SSL과 TLS 모두 전송 계층 보안으로 각각 Secure Sockets Layer, Transport Layer Security의 준말이다.
전송 계층 보안은 TCP/IP 네트워크를 사용하는 통신에 적용되고, 통신 과정에서 전송 계층의 보안과 데이터 무결성을 확보해준다.
TLS는 다음과 같은 3단계의 절차를 거치게 된다.
- 지원 가능한 알고리즘을 교환
- 키 교환 및 인증
- 대칭키 암호를 통한 암호화 및 메시지 인증
위 단계들을 거쳐 전송 계층에서 전달되는 세션 데이터들을 암호화하고 보호한다.
🌐 FTP
FTP(File Transfer Protocol)는 파일을 전송하는 프로토콜로, TCP/IP 네트워크를 사용하는 서버와 클라이언트 간의 파일 전송을 위한 프로토콜이다.
쉽게 생각하면, 웹서핑을 하며 여러 사이트들을 둘러볼 때는 HTTP/HTTPS를, 간단한 메시지를 주고받을 때는 XMPP를, 인터넷에 파일을 주고받을 때는 FTP를 사용한다고 할 수 있다.
하지만 최근에는 FTP의 보안 문제로 인해 사용이 줄어들고 있는 추세이며, SFTP를 사용하거나 Dropbox 를 많이 사용하고 있다.
📜 참고
https://velog.io/@lzhxxn/Protocol-HTTP-HTTPS-FTP-FTPS-SSH-%EA%B0%9C%EB%85%90-%EC%A0%95%EB%A6%AC
'Network > Network' 카테고리의 다른 글
IP Address - whois, hosts 파일, ping (0) | 2022.05.19 |
---|---|
OSI 7계층 (0) | 2022.05.13 |
DNS(Domain Name System)과 URI, URL, URN (0) | 2022.05.07 |
[Dreamhack] 쿠키(Cookie)와 세션(Session) (0) | 2022.05.05 |
네트워크 장비: 허브, 스위치, 라우터 (0) | 2022.04.29 |