본문 바로가기
system_fundamentals/security_cryptography

HTTPS는 어떻게 안전한가

by 죄니안죄니 2026. 5. 15.
반응형
HTTPS는 어떻게 안전한가HTTPS는 어떻게 안전한가
 
 
 

HTTPS(HTTPS)가 안전한 이유는 사실 여러 기술을 조합했기 때문이야.

핵심은:

1. 진짜 서버인지 확인
2. 안전하게 키 교환
3. AES로 빠르게 암호화 통신
4. 위변조 검증
 

이 4개를 동시에 하기 때문이다.


먼저 HTTP는 위험

HTTP는 평문이다.

즉:

ID/PW
쿠키
본문 데이터
 

전부 그대로 네트워크에 흐른다.

중간에서 보면:

다 읽힘
 

HTTPS는 뭐냐?

간단히:

HTTP + TLS(SSL)
 

이다.

즉 HTTP 위에 암호화 계층을 추가한 것.


HTTPS 전체 흐름

실제로는:

1. 서버 인증
2. 키 교환
3. 암호화 통신
 

순서로 진행된다.


STEP 1 — 서버 인증서 전달

브라우저가 접속하면 서버가:

  • 인증서(Certificate)
  • 공개키(Public Key)

를 보낸다.


인증서 안에는

예:

도메인
공개키
발급기관(CA)
전자서명
 

등이 들어있다.


STEP 2 — 브라우저가 인증서 검증

브라우저는:

"이 공개키가 진짜 네이버 것 맞나?"
 

를 확인한다.


여기서 CA 등장

대표:

  • Let's Encrypt
  • DigiCert

같은 인증기관.


CA가 전자서명함

즉:

"이 공개키는 진짜 네이버 것 맞음"
 

이라고 도장 찍어주는 것.


브라우저는 공개키로 검증

브라우저 안에는:

신뢰 가능한 CA 공개키
 

들이 미리 들어있다.

그래서 전자서명 검증 가능.


여기까지의 의미

"가짜 서버가 아니구나"
 

를 확인 완료.


STEP 3 — 키 교환

이제 실제 암호화 통신용 키 필요.

HTTPS는 현재 보통:

  • Elliptic-curve Diffie–Hellman
  • ECDHE

사용.


핵심

AES 키를 직접 보내지 않음
 

이다.


대신

브라우저와 서버가:

각자 계산해서
같은 AES 세션키 생성
 

한다.


왜 안전하냐?

중간에서:

  • 공개값
  • 통신 내용 일부

봐도:

최종 AES 키 계산 불가
 

하기 때문.


STEP 4 — 실제 암호화 통신

이제부터는:

  • Advanced Encryption Standard
  • AES-GCM

으로 통신.


왜 AES 쓰냐?

엄청 빠르기 때문.

즉:

RSA/ECC
→ 키 교환 전용

AES
→ 실제 데이터 통신
 

구조.


STEP 5 — 무결성 검증

현대 HTTPS는 보통:

  • AES-GCM
  • ChaCha20-Poly1305

사용.

이건:

암호화 + 위변조 검증
 

동시에 수행.


그래서 가능한 것

중간에서 데이터 바꾸면:

인증 태그 검증 실패
 

즉시 연결 오류.


HTTPS가 막아주는 것

공격 방어 여부
중간 감청 O
비밀번호 탈취 O
데이터 위변조 O
가짜 서버 O(인증서 검증 시)

실제로 중간에서 뭘 보나?

HTTPS에서도:

  • IP
  • 도메인(SNI/DNS)
  • 패킷 크기

등 일부 메타데이터는 보일 수 있다.

하지만:

본문 내용
쿠키
비밀번호
 

는 암호화된다.


왜 "자물쇠 아이콘" 뜨나?

브라우저가:

TLS 연결 성공
+
인증서 검증 성공
 

했다는 의미.


HTTPS 핵심 기술 연결

기술 역할
인증서 서버 신원 증명
전자서명 인증서 위조 방지
ECDHE 세션키 교환
AES-GCM 실제 암호화
Hash/HMAC 무결성 검증

그런데 HTTPS도 완벽하진 않다

HTTPS는:

전송 구간 보호
 

다.

즉:

  • 서버 내부 해킹
  • XSS
  • SQL Injection
  • 계정 탈취

까지 막는 건 아니다.


예를 들어

HTTPS라도:

악성 JS
 

가 브라우저에서 비밀번호 훔치면 끝.


핵심 한 줄

HTTPS가 안전한 이유는:

전자서명으로 서버를 검증하고,
ECDHE로 안전하게 AES 키를 만든 뒤,
AES-GCM으로 데이터를 암호화·위변조 검증하기 때문
 

이다.

반응형

'system_fundamentals > security_cryptography' 카테고리의 다른 글

인증서는 누가 믿는가  (1) 2026.05.15
TLS Handshake 전체 흐름  (0) 2026.05.15
권한 시스템 설계  (1) 2026.05.15
ACL  (0) 2026.05.15
ABAC  (0) 2026.05.15

댓글