HTTP 란?
- HyperText Transfer Rrotocol의 약자
- 데이터(HyperText)를 주고 받기 위한 프로토콜(통신 규약)
- 암호화 되지 않은 평문 데이터 전송하는 통신으로 보안에 취약
- 80번 포트 사용
HTTPS 란?
- HyperText Transfer Protocol Secure의 약자
- HTTP + 데이터 암호화 추가된 프로토콜(HTTP 보안 강화)
- 소켓 통신에서 일반 텍스트 대신,
SSL
or TLS
프로토콜을 통해 세션 데이터를 암호화
- SSL 사용으로 통신처리 시간 소요, 자원 소모
- 443번 포트 사용
대칭키 암호화 / 비대칭키 암호화
대칭키(Symmetric Key) 암호화
- 클라이언트(메세지를 보냄) / 서버(메세지를 받음)가
동일한 키
를 사용하여 암호화
& 복호화
같이 할 수 있는 방식의 암호화 기법
- 키 노출되어 해킹 위험 노출
- 연산 속도 fast(why? 동일한 키로 주고 받기 때문)
비대칭키(Public Key, 공개키) 암호화
- 1개 쌍으로 구성(공개키 / 개인키) 사용하여 암호화 & 복호화 방식 사용
- 키 노출되나, 비교적 안전
- 연산 속도가 대칭키보다 slow
- 공개키 : 소유자 외 타인에게 공개된 키
- 개인키 : 자신(서버)만 가지고 있는 키
SSL 란?
- Secure Sockets Layer, 보안 소켓 계층
- 웹사이트와 브라우저 사이에 전송된 데이터를 암호화하여 넷 연결 보안 유지 기술
- 대칭키를 주고받을 때만 공개키 암호화 방식을 사용,
이후에는 계속 대칭키 암호화 방식으로 통신
TLS 란?
- Transport Layer Security, 전송 계층 보안
- 가장 최신 기술(더 강력한 버전의 SSL)
[referance]
(https://ko.wikipedia.org/wiki/HTTPS)
(https://www.digicert.com/kr/what-is-ssl-tls-https/)
(https://mangkyu.tistory.com/98)
(https://sdesigner.tistory.com/85)
(https://devlimk1.tistory.com/135)