[CS] HTTP와 HTTPS

insung·2025년 4월 11일

CS

목록 보기
10/20

HTTP (Hypertext Transfer Protocol)

HTTP는 웹 브라우저와 서버 간의 데이터 전송을 위한 애플리케이션 계층 프로토콜.

하지만 보안 측면에서 몇 가지 중요한 단점이 있음

  • 무상태 프로토콜
    • HTTP는 요청 간 상태를 유지하지 않기 때문에, 클라이언트와 서버 간의 상호작용이 독립적으로 처리.
    • 이를 보완하기 위해 쿠키나 세션과 같은 기술이 추가로 사용
  • 보안 취약점:
    1. 암호화 부족
      • HTTP는 데이터를 암호화하지 않아 도청 및 데이터 탈취의 위험이 있음
    2. 인증 부재
      • 클라이언트와 서버가 서로를 신뢰할 수 있는 방법이 없기 때문에, 중간자 공격(Man-in-the-Middle Attack)에 취약

HTTPS (Hypertext Transfer Protocol Secure)

HTTPS는 HTTP에 SSL/TLS 암호화 계층을 추가하여 보안성을 강화한 프로토콜

  • SSL/TLS 기반 보안:
    • 데이터를 암호화하여 도청 및 데이터 변조를 방지
    • TLS(Transport Layer Security)는 SSL의 발전된 버전으로, 더 강력한 보안 기능을 제공
  • 데이터 무결성과 인증:
    • HTTPS는 서버 인증서를 통해 클라이언트가 신뢰할 수 있는 서버와 통신하고 있음을 확인할 수 있음
    • 데이터 무결성을 보장하여, 전송 중 데이터가 변경되지 않도록 보호
  • 추가적인 이점:
    • 검색엔진 최적화(SEO): HTTPS를 사용하는 웹사이트는 검색 엔진에서 우선 순위를 부여받음
    • 최신 브라우저 기능 지원: Progressive Web Apps(PWAs)와 같은 최신 기술은 HTTPS를 필수로 요구

HTTP와 HTTPS의 주요 차이점

특징HTTPHTTPS
암호화없음SSL/TLS로 암호화
인증없음서버 인증서를 통해 신뢰성 확보
데이터 무결성없음전송 중 데이터 변조 방지
성능비교적 빠름암호화로 인해 약간 느릴 수 있음
사용 사례민감하지 않은 데이터 전송민감한 정보(예: 결제 정보, 로그인 정보) 보호
profile
안녕하세요 프론트엔드 관련 포스팅을 주로 하고 있습니다

0개의 댓글