보안 · 심화
Perfect Forward Secrecy(PFS)가 HTTPS 통신에서 제공하는 핵심 보안 이점은 무엇이며, 이를 구현하기 위해 TLS 핸드셰이크 과정에서 어떤 키 교환 알고리즘(Key Exchange Algorithm)이 사용되어야 하는지 구체적으로 설명해주세요.
힌트 · PFS는 장기 개인 키가 유출되더라도 과거 세션 키가 노출되지 않도록 보장합니다. 이를 위해 임시 키를 사용하는 Diffie-Hellman 계열(예: ECDHE) 키 교환 방식이 필수적입니다.
전방향 보안세션 키 유출 방지Diffie-HellmanEphemeral 키 교환ECDHE
모범답안
Perfect Forward Secrecy, 즉 PFS는 HTTPS 통신에서 매우 중요한 보안 이점을 제공합니다. 핵심은 서버의 장기 개인 키가 유출되더라도, 과거에 이루어졌던 모든 통신 세션의 암호화 키가 노출되지 않는다는 것입니다.
이를 구현하기 위해 TLS 핸드셰이크 과정에서는 임시 키 교환(Ephemeral Key Exchange) 방식을 사용하는 키 교환 알고리즘이 필수적입니다. 가장 대표적인 예로는 **ECDHE(Elliptic Curve Diffie-Hellman Ephemeral)**가 있습니다.
ECDHE는 각 세션마다 새로운 임시 키 쌍을 생성하여 키를 교환합니다. 이 임시 키는 세션이 종료되면 폐기되므로, 설령 서버의 장기 개인 키가 나중에 유출되더라도 이전에 사용했던 세션 키를 복구하는 데 사용할 수 없습니다. 즉, 과거 통신 기록의 기밀성을 강력하게 보장하는 것입니다.
읽었다면, 이제 직접 답해볼 차례예요
패스잇 앱에서 이 질문에 말로 답하면 AI가 꼬리질문까지 이어가며 1:1 코칭합니다.
함께 보는 HTTPS / TLS / 암호화 면접 질문
- TLS 1.2와 TLS 1.3 버전의 주요 차이점을 설명하고, TLS 1.3이 보안 및 성능 측면에서 어떤 개선을 이루었는지 구체적으로 설명해 주세요.
- SNI(Server Name Indication)가 HTTPS에서 어떤 문제를 해결하기 위해 도입되었으며, 어떻게 동작하는지 설명해 주세요.
- TLS 1.3의 0-RTT(Zero Round-Trip Time) 모드는 초기 연결 설정 성능을 크게 향상시킵니다. 하지만 이 모드가 도입하는 보안상의 주요 위험 요소는 무엇이며, 이를 완화하기 위한 기술적 접근 방식에는 어떤 것들이 있을까요?
- 클라이언트 측에서 서버 인증서의 신뢰성을 강화하기 위한 기법으로 Certificate Pinning이 사용되곤 했습니다. HPKP(HTTP Public Key Pinning)가 왜 권장되지 않고 현재는 거의 사용되지 않는지 설명하고, 이를 대체하거나 보완하는 현대적인 접근 방식(예: Certificate Transparency)은 무엇인지 비교 설명해주세요.
- MSA(Microservice Architecture) 환경에서 서비스 간 인증(Service-to-Service Authentication) 및 권한 부여를 강화하기 위해 Mutual TLS(mTLS)를 도입하려 합니다. mTLS의 동작 방식과 기존 단방향 TLS 대비 이점을 설명하고, 실제 MSA 환경에서 mTLS를 구축할 때 고려해야 할 기술적 과제와 해결 방안은 무엇이 있을까요?
- TLS 구현체는 다양한 Side-Channel Attack에 노출될 수 있습니다. 특정 암호화 모드나 패딩 방식의 취약점을 이용한 Lucky 13, BEAST, CRIME 같은 공격들이 대표적인 예시입니다. 이러한 공격들이 TLS 통신에 어떻게 영향을 미치며, 이를 방어하기 위한 현대적인 TLS 프로토콜 및 구현체의 설계 원칙은 무엇인지 설명해주세요.