[꼼꼼한 개발자] 꼼코더
[WEB] - HTTPS란? 대칭키란? 비대칭키란?(대칭키와 비대칭키의 차이점, 공개키) - 간단하고 쉽게 이해하기 본문
🧑🏻🏫 간단 정리
- HTTPS : HTTP에서 S(Secure) 보안이 추가된 것, 즉 HTTP보다 보안이 향상된 것
- 암호화 : '전송 데이터'를 '암호화 데이터'로 변환
- 복호화 : '암호화 데이터'를 '일반 데이터'로 변환
- 대칭키 : 암호화, 복호화에 사용하는 비밀키가 서로 같은(대칭) 방식
- 비대칭키 : 암호화와 복호화에 사용하는 비밀키가 서로 다른(비대칭) 방식
🌐 HTTPS란?
HTTPS는 Hyper Text Transfer Protocol Secure의 약어로
인터넷에서 정보를 안전하게 전송하기 위한 프로토콜이다.
HTTPS는 일반 HTTP와는 달리, 데이터를 암호화하여 보호한다.
예시로 이전에는 로그인 페이지에서 로그인 도중 제3자가 중간에 정보를 엿볼 수 있었다.(ID, PW같은 정보또한 마찬가지..)
즉, HTTPS를 사용하면 제3자가 정보를 엿볼 수 없고
정보를 위조하거나 변조하는 것을 방지할 수 있다.(데이터가 암호화되어 있어 제3자가 알아볼 수 없는 데이터이기 때문)
HTTPS는 주로 온라인 결제, 로그인, 개인정보 입력 등 보안이 중요한 데이터를 처리하는 웹사이트에서 사용된다.
HTTPS의 S는 보안을 의미하는데 이 보안 인증 마크는 아래 그림에 URL 좌측의 자물쇠 모양으로 표시된다🔒
이러한 인증(S [🔒])을 부여하는 곳은 CA라는 인증서를 발급하는 기관에서 발급해 준다.
🔑🔑 대칭키
대칭키는 암호화와 복호화에 서로 같은 비밀키를 사용한다.
암호화된 데이터를 받는 쪽에서는 동일한 비밀키를 공유하고 있어야 한다.
장점 : 서로 같은 비밀키로 인하여 암호화, 복호화가 빠르기 때문에 처리, 전송 속도를 빠르게 한다.(대용량에 적합)
단점 : 공개된 통신 채널을 통해 비밀키를 공유하기 때문에 도청 등의 공격에 취약하고 키가 노출되면 제3자가 해당 암호문을 해독할 수 있기 때문에 안전에 더 유의해야 한다.
🔑🗝️ 비대칭키
비대칭키는 암호화와 복호화에 서로 다른 비밀키를 사용한다.
장점 : 대칭키 방식의 취약점을 보완하며, 공개키를 공유하므로 보안성이 높다.
단점 : 암호화와 복호화에 시간이 많이 걸리고, 대용량 데이터의 암호화에는 적합하지 않다.
따라서 대칭키는 대용량 데이터의 암호화에 적합하고, 비대칭키는 안전한 통신을 위한 인증서나 전자서명 등에 사용됩니다.
🌏 HTTPS의 공개키
HTTPS 웹 사이트 서버에는 모든 클라이언트에게 공개하는 공개키라는 것이 있다.
대칭키 방식처럼 데이터를 대칭키로 암호화 후 전송하기 전
먼저 대칭키부터 암호화하여 전송한다.
이렇게 암호화된 대칭키를 받은 클라이언트는 이를 자신의 비밀키로 복호화하여 대칭키를 얻고
이후 대칭키를 사용하여 데이터를 암호화하고 전송한다.
이러한 대칭키와 비대칭키를 조합하여 사용하는 방식은 HTTPS를 보안성 높은 통신 방식으로 만들어주며
사용자와 서버 간의 데이터를 안전하게 전송할 수 있도록 보장한다.
'간단하고 쉽게 > WEB' 카테고리의 다른 글
[WEB] - RequestEntity 객체란? (요청) 간단하고 쉽게 이해하기 (0) | 2023.05.18 |
---|---|
[WEB] - Postman이란?(포스트맨이란?) 간단하고 쉽게 이해하기 (0) | 2023.05.04 |
[WEB] - MIME TYPE이란? 간단하고 쉽게 이해하기 (0) | 2023.03.27 |
[WEB] - 로깅이란?(log, Logging, 로깅을 수행) 간단하고 쉽게 이해하기 (0) | 2023.03.21 |
[WEB] SQL 쿼리란? 간단하고 쉽게 이해하기 (0) | 2023.03.21 |