HTTP와 HTTPS의 가장 큰 차이 : 보안
HTTP : Hypertext Transfer Protocol - 클라이언트와 서버 간 통신을 위한 통신 규칙 세트, 또는 프로토콜
HTTPS : Hypertext Transfer Protocol Secure - HTTP의 확장, 더 안전한 버전
* 브라우저에서는 HTTPS가 아닌 모든 웹 사이트는 안전하지 않은 것으로 표시된다.
HTTS 프로토콜의 작동 버전
HTTP는 암호화 되지 않은 데이터를 전송한다. 데이터를 안전하게 만들기 위해 HTTP는 HTTP 요청 및 응답을 SSL 및 TLS 기술에 결합한다.
HTTPS 웹 사이트는 독립된 인증 기관인 CA(Certificate Authority)에서 SSL/TLS에서 인증서를 획득해야 한다.
SSL : Security Sockets Layer, 보안 소켓 계층
TLS : Transport Layer Security, 전송 계층 보안
SSL 인증서는 암호화 정보를 포함하므로 서버와 웹 브라우저는 암호화 된 데이터나 스크램블된 데이터를 교환할 수 있다.
1. 사용자 브라우저의 주소 표시줄에 https:// URL 형식을 입력하여 HTTPS 웹사이트를 방문한다.
2. 브라우저는 서버의 SSL 인증서를 요청하여 사이트의 신뢰성을 검증하려고 시도한다.
3. 서버는 퍼블릭 키가 포함된 SSL 인증서를 회신으로 전송한다.
* 비대칭 공개 키 인프라를 사용 - 두 개의 서로 다른 키를 사용하여 두 당사자 간의 통신을 암호화
: 개인 키 _ 웹 사이트 소유자가 관리하며, 비공개로 유지된다. 공개 키로 암호화 된 정보를 해독하는 데 사용.
: 공개 키 _ 안전한 방식으로 서버와 상호 작용하고자 하는 모든 사람이 사용 가능. 공개 키로 암호화 된 정보는 개인 키로만 해독이 가능.
4. 웹 사이트의 SSL 인증서는 서버 아이덴티티를 증명한다. 브라우저에서 인증되면, 브라우저가 퍼블릭 키를 사용하여 비밀 세션 키가 포함된 메시지를 암호화하고 전송한다.
5. 웹 서버는 개인 키를 사용하여 메시지를 해독하고 세션 키를 검색한다. 그런 다음, 세션 키를 암호화하고 브라우저에 승인 메시지를 전송한다.
6. 이에 브라우저와 웹 서버 모두 동일한 세션 키를 사용하여 메시지를 안전하게 교환하도록 전환한다.
HTTPS를 선택하는 이유
- 보안
: HTTP 메시지는 일반 텍스트여서 권한이 없는 당사자가 인터넷을 통해 쉽게 액세스할 수 있다.
하지만 HTTPS는 모든 데이터를 암호화 된 형태로 전송하고 받기 때문에 권한이 없는 경우 데이터에 접근할 수 없다.
- 권위
: 검색 엔진은 더 안전성 있는 HTTPS의 순위를 HTTP 웹 사이트보다 높게 지정한다.
- 성능 및 분석
: HTTPS 웹 애플리케이션은 HTTP 애플리케이션보다 로드 속도가 더 빠르다.
HTTPS 는 참조 링크도 더 잘 추적이 가능하다.
HTTPS에 관한 정보
- ACM (Amazon Certificate Manager)은 AWs 서비스 및 내부 연결 리소스와 함께 사용할 수 있는 퍼블릭 및 프라이빗 SSL/TLS 인증서를 프로비저닝, 관리 및 배포한다. ACM은 SSL/TLS 인증서를 구매, 업로드 및 갱신하는 시간 소모적인 수동 프로세스를 대신 처리한다.
인증 관리자 - AWS Certificate Manager - AWS
AWS Certificate Manager(ACM)를 사용하면 AWS 서비스 및 연결된 내부 리소스에 사용할 공인 및 사설 SSL/TLS 인증서를 프로비저닝, 관리 및 배포할 수 있습니다. ACM은 SSL/TLS 인증서를 구매, 업로드 및 갱신
aws.amazon.com
- CloudFlare는 2014년 Universal SSL을 출시했으며 SSL 인증서를 무료로 제공한 최초의 기업이다. 손쉽게 HTTPS를 활성화 가능하다.
모든 곳을 연결하고, 보호하며, 구축합니다
복잡성과 비용을 줄이면서 직원, 애플리케이션, 네트워크를 어디에서든 더 빠르고 안전하게 만듭니다.
www.cloudflare.com
'TIL' 카테고리의 다른 글
웹 프로토콜 (0) | 2024.08.15 |
---|---|
함수형 프로그래밍 (Function Programming) (0) | 2024.08.14 |
브라우저의 렌더링 과정 (0) | 2024.08.12 |
[PB] 7주차 스터디 정리 (0) | 2024.08.06 |
[PB] 4주차 스터디 정리 (0) | 2024.07.21 |