mingming

IPSec VPN Phase 1 & Phase 2 본문

카테고리 없음

IPSec VPN Phase 1 & Phase 2

mingming_96 2025. 10. 12. 04:38

Phase 1: IKE SA 협상 (보안 채널 설정)

1. 목적

Phase 1은 VPN 장비가 서로를 인증하고, 안전한 IKE SA(보안 채널)를 생성하는 단계입니다.
이 IKE SA는 Phase 2에서 실제 데이터 트래픽 보호를 위한 IPSec SA의 기반이 됩니다.

2. 배경 지식

  • IPSec: Layer3 에서 데이터 암호화 및 인증을 통해 안전한 통신 제공
  • IKE (Internet Key Exchange): 안전한 키 교환과 SA 생성 프로토콜
  • HMAC (Hash-based Message Authentication Code): 메시지 무결성 검증용 해시 기반 인증 코드
  • Diffie-Hellman (DH): 안전한 공유 비밀 키 생성용 공개키 교환 알고리즘

3. 구성 요소

항목 설명 예시
인증 방식 VPN 장치 인증 수단 PSK, Digital Certificate
암호화 알고리즘 데이터 보호 AES-128/192/256, 3DES
해시/무결성 메시지 무결성 SHA-1, SHA-256, MD5
DH 그룹 키 교환 안전 수준 2, 5, 14, 19, 20
IKE Version 프로토콜 버전 IKEv1, IKEv2
LifeTime SA 유효 기간  

4. Phase 1 – IKE SA 협상 과정

4.1 단계 1: Initiation

  • Initiator → Responder: SA Proposal 전달
  • 포함 정보: 암호화/해시/인증 방식, DH 그룹, LifeTime
  • Responder → Initiator: 지원 가능한 옵션 선택

4.2 단계 2: DH 키 교환

  • Initiator와 Responder 상호 공개키 교환 → 공유 비밀 키 생성
  • Nonce(Ni, Nr) + DH 공개값으로 세션 키 파생
    • SK_d: Phase2 데이터 키
    • SK_ai/SK_ar: HMAC 키
    • SK_ei/SK_er: 암호화 키

4.3 단계 3: 인증

  • Initiator → Responder
    • SK_ei로 암호화, SK_ai로 HMAC 생성
    • IDi + AUTH 전송
  • Responder 처리
    • SK_ei 복호화, SK_ai HMAC 검증
  • Responder → Initiator
    • SK_er로 암호화, SK_ar HMAC 생성
    • IDr + AUTH 전송
  • Initiator 처리
    • SK_er 복호화, SK_ar HMAC 검증
  • 결과: 상호 인증 완료 → IKE SA 확립

5. Phase 1 메시지 흐름 (IKEv1 Main Mode)

단계 메시지 역할
1 Initiator → Responder: SA 제안 암호화/해시/인증 방식 제시
2 Responder → Initiator: SA 수락 제안 수락, 협상 완료
3 DH + Nonce 상호 교환 공유 비밀 키 계산, SK_* 파생
4 Initiator → Responder: 인증 메시지 ID + AUTH 암호화 전송
5 Responder → Initiator: 인증 메시지 ID + AUTH 암호화 전송
6 Phase 1 완료 IKE SA 확립, Phase 2 준비

Phase 2: IPSec SA 협상 (데이터 보호 채널)

1. 목적

Phase 2는 실제 데이터 트래픽을 암호화하기 위한 IPSec SA를 설정하는 단계입니다.

2. 배경 지식

  • SPI: 각 SA를 식별하는 고유 번호
  • Transform Set: 사용할 암호화/인증/PFS 방식 결정
  • PFS(Perfect Forward Secrecy): DH 재교환으로 이전 키 노출에도 안전한 통신 제공

3. Phase 2 – IPSec SA 협상 과정

3.1 IPSec SA 제안 (Initiator → Responder)

  • 제안 항목: 프로토콜(AH/ESP), 암호화/해시 알고리즘, Lifetime
  • Phase 1 IKE SA를 이용해 메시지 암호화 + HMAC 무결성 검증

3.2 SA 수락 및 응답 (Responder → Initiator)

  • 제안 중 허용 가능한 옵션 선택
  • PFS 사용 시 DH 교환 및 Nonce 사용
  • Phase 1 키(SK_ei, SK_ai 등)로 암호화/무결성 검증

3.3 인증 및 SA 확립

  • Initiator → Responder
    • SK_ei로 암호화, SK_ai로 HMAC 생성
    • 이전 단계 교환값(Ni, Nr) 기반 IPSec 세션 키 계산, HASH 전송
  • Responder 처리
    • SK_ei 복호화, SK_ai HMAC 검증
    • HASH 확인 → IPSec SA 생성
  • Responder → Initiator
    • SK_er 암호화, SK_ar HMAC 생성
    • IDr + 인증 데이터 전송
  • Initiator 처리
    • SK_er 복호화, SK_ar HMAC 검증 → IPSec SA 확립 완료

4. Phase 2 메시지 흐름 (Quick Mode)

단계 메시지 역할
1 Initiator → Responder: IPSec SA 제안 프로토콜(AH/ESP), 암호화/해시 알고리즘, Lifetime 등 제안. Phase 1에서 확립된 IKE SA를 이용해 암호화(HMAC 포함)
2 Responder → Initiator: SA 수락 협상된 IPSec SA 선택, 제안 수락
3 (Optional) DH 교환 PFS 적용 시, 새로운 공유 키 계산
5 Phase 2 완료 상호 인증 완료 및 IPSec SA 확립 → 실제 데이터 트래픽 암호화 가능

요약

  • Phase 1: IKE SA 생성 → 안전한 제어 채널 확보
  • Phase 2: IPSec SA 생성 → 실제 데이터 트래픽 암호화
  • 양 단계 모두 암호화, HMAC, Nonce, DH 키를 이용하여 인증, 무결성, 기밀성 확보