CHAP   Challenge Handshake Authentication Protocol  

(2016-09-30)

MS-CHAP, MS-CHAP v2


1. CHAPPPP 등에서 사용하는 인증용 프로토콜 중의 하나

  ㅇ 특징
     - 기존 PAP 방식의 보안취약점(평문으로 사용자명,암호를 그대로 전송)을 개선
        . CHAP은 쌍방이 이미 알고있는 암호를 절대로 링크를 통해 그대로 전송 안함
     - 링크 개설은 클라이언트가 하더라도, 인증 과정은 서버쪽에서 주관 함

  ㅇ 표준 : RFC 1994 (1996년)


2. CHAP 동작 방식

  ㅇ 동작방식 : Three-way Handshaking (3 단계 핸드세이킹) 방식

     - ① Challenge 메세지 (Challenge Message)
        . 인증 서버클라이언트에게 랜덤Challenge 메세지(통상 랜덤 수)를 보내서, 
        . 그 질문에 대한 올바른 응답을 요청
           .. 한편, 챌린지 메세지는 매회 그 내용이 바뀌게 됨 (재생공격 방지)
        . 또한, 순서번호도 함께 송신

     - ② 응답
        . 클라이언트보안을 위해 서버가 보내준 Challenge 메세지와 자신의 암호 등에 의해
          해쉬 함수를 이용하여 계산한 결과인 해쉬 값을 보냄
        . 사용자 비밀 정보(암호 등)에 의한 해쉬값화는 MD5 해쉬 사용

     - ③ 인증 승인 또는 거부
        . 인증 서버는 값이 일치하면 인증을 하게 됨


3. CHAP 패킷 

  ㅇ 기본 패킷 형식
     
     - code   (1 바이트) : (1) Challenge, (2) Response, (3) Success, (4) Failure
     - ID     (1 바이트) :  송신 순서번호
     - Length (2 바이트) : CHAP 패킷 전체 길이
     - CHAP data (가변)

  ㅇ Challenge 및 Response 패킷 형식
     
     - Value SIze (1 바이트) : Value 필드의 길이
     - Value      (가변)     : 챌린지 메세지 값(Challenge, 1) 또는 해시 값(Response, 2)
        . Challenge : 서버 생성 랜덤값
        . Response  : 클라이언트 생성 해시값 (송신 순서번호 + 암호 + 챌린지)
           .. 해시 알고리즘은 기본적으로 MD5 사용           ☞ LCP 옵션 참조
     - Name       (가변)     : 송신측 식별명

  ㅇ Success 및 Failure 패킷 형식
     


4. MS-CHAP, MS-CHAP v2

  ㅇ MS-CHAP (RFC 2433)
     - MS社에서 독자적으로 개발하였으나, 후에 RFC 2433로 정의됨
     - Identity(신원) 정보 안에 해싱암호를 포함시켜 전송시킴
     - MS社 AD(Active Directory) 내에 암호해시된 값으로 저장되고, 
       후에 사용자가 제시한 해시값과 비교됨

  ㅇ MS-CHAP v2 (RFC 2759)
     - MS社 윈도우즈 2000 패밀리에서부터 사용
     - EAP-PEAP, EAP-TTLS, EAP-FAST에서 MS-CHAP v2를 선택적으로 사용
     

[링크 레벨 보안]1. PAP   2. CHAP  

[인증 프로토콜]1. "인증 프로토콜" 이란?   2. AAA (인증,권한검증,계정관리)   3. PAP   4. CHAP   5. EAP   6. RADIUS   7. DIAMETER   8. TACACS  

  1. Top (분류 펼침)      :     1,594개 분류    6,533건 해설

"본 웹사이트 내 모든 저작물은 원출처를 밝히는 한 자유롭게 사용(상업화포함) 가능합니다"
     [정보통신기술용어해설]       편집·운영 (차재복)