Networkmedium면접 빈도: medium

HTTPS

HTTPS (Hypertext Transfer Protocol Secure)

📝 HTTPS란?

인터넷 상에서 정보를 암호화하는 TLS 프로토콜 사용

클라이언트와 서버가 자원을 주고받을 때 쓰는 통신 규약

HTTP + S(Secure)

금융 정보, 메일 등 중요 정보 보호


🔒 안전한 통신의 3가지 특성

1. 기밀성 (Confidentiality)

송신자와 지정된 수신자만 메시지 내용 이해

암호화


2. 메시지 무결성 (Message Integrity)

통신 내용이 전송 도중 변경되지 않음


3. 종단점 인증 (End-point Authentication)

통신 상대방의 신원 확인

서버 인증


🔐 암호화 방식

1. 대칭키 암호화

암호화와 복호화에 같은 암호키 사용

대문의 열쇠와 같음

빠르지만 키 관리 위험


2. 공개키 암호화 (비대칭키)

암호화 키와 복호화 키가 다름

키 페어 (Key Pair):

  • 공개키 (Public Key)
  • 비공개키 = 개인키 = 비밀키 (Private Key)

공개키 암호화 동작

1. 수신자는 공개키와 비밀키 보유

2. 송신자는 수신자의 공개키로 메시지 암호화

3. 수신자는 자신의 비밀키로 복호화

비밀키를 나눠가질 필요 없음


🤝 TLS Handshake

1. TCP 연결 설립


2. Hello 메시지 교환

클라이언트: Hello 메시지 전송

서버: 공개키를 담은 인증서로 응답

CA 인증을 받은 인증서


3. Master Secret 교환

클라이언트: MS를 서버 공개키로 암호화하여 전송

서버: 개인키로 복호화


4. HTTPS 통신 시작

TLS 핸드셰이크: 공개키 방식

HTTPS 통신: 대칭키 방식

성능과 보안 모두 확보


🏢 CA (Certificate Authority)

공개키를 저장해주는 신뢰성 검증된 민간기업

서버의 공개키 관리

인증서 발급


💡 TLS 원천 기술

SSL 프로토콜: 넷스케이프가 고안

TLS 프로토콜: SSL에서 발전, IETF 표준화


❓ 면접 질문 예시

Q1. HTTPS에 대해 설명해주세요.

답변: HTTPS는 인터넷 상에서 정보를 암호화하는 TLS 프로토콜을 사용해 클라이언트와 서버가 자원을 주고받을 때 쓰는 통신 규약입니다. HTTP에 S(Secure)를 더한 것으로, 금융 정보나 메일 등 중요한 정보를 보호하기 위한 기본적인 기술입니다.

Q2. 안전한 통신의 3가지 특성은?

답변: 첫째, 기밀성은 송신자와 지정된 수신자만이 메시지 내용을 이해할 수 있어야 합니다. 둘째, 메시지 무결성은 통신 내용이 전송 도중에 변경되지 않아야 합니다. 셋째, 종단점 인증은 송신자와 수신자가 통신 상대방의 신원을 확인할 수 있어야 합니다.

Q3. 대칭키와 공개키 암호화의 차이는?

답변: 대칭키 암호화는 암호화와 복호화에 같은 암호키를 사용하여 빠르지만 키 관리가 위험합니다. 공개키 암호화는 암호화 키와 복호화 키가 다르며, 공개키와 비밀키 쌍을 사용합니다. 송신자는 수신자의 공개키로 암호화하고, 수신자는 자신의 비밀키로 복호화하여 비밀키를 나눠가질 필요가 없습니다.

Q4. TLS Handshake 과정을 설명해주세요.

답변: 첫째, TCP 연결을 설립합니다. 둘째, 클라이언트는 Hello 메시지를 보내고 서버는 공개키를 담은 CA 인증 인증서로 응답합니다. 셋째, 클라이언트는 Master Secret을 서버의 공개키로 암호화하여 보내고 서버는 개인키로 복호화합니다. 넷째, TLS 핸드셰이크가 끝나고 HTTPS 통신을 시작합니다.

Q5. TLS에서 대칭키와 공개키를 모두 사용하는 이유는?

답변: 모든 것을 공개키 방식으로 하면 웹 서버와 브라우저에 많은 부담이 됩니다. 그래서 TLS 핸드셰이크 과정은 공개키 방식을 사용하여 안전하게 키를 교환하고, 그 이후의 HTTPS 통신은 대칭키 방식을 사용하여 성능과 보안을 모두 확보합니다.


📚 원본 참고 자료

출처: 2023-CS-Study

추가 학습 자료

  • James F. Kurose, Keith W. Ross, 『컴퓨터 네트워킹 하향식 접근』, 최종원 옮김, 퍼스트북(2022), p584~590.
  • HTTPS