1 / 35

인증 프로토콜

인증 프로토콜. 목차. 상호인증 관용암호방식 공개키 암호화 방식 일방향 인증 관용 암호 방식 공개키 암호 방식. 1 . 인증. 1 . Login request. 2 . ID A || PW A. 3 . Accept or Reject. Bob Server. Alice Client. 1. 상호 인증. 상호 인증 프로토콜 신분 확인에 대해 상호 만족시킴 세션키를 교환할 수 있게 함 인증된 키 교환 문제에 있어서 두 가지 고려할 점 기밀성( confidentiality)

anila
Download Presentation

인증 프로토콜

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 인증 프로토콜

  2. 목차 • 상호인증 • 관용암호방식 • 공개키 암호화 방식 • 일방향 인증 • 관용 암호 방식 • 공개키 암호 방식

  3. 1. 인증 1. Login request 2. IDA || PWA 3. Accept or Reject Bob Server Alice Client

  4. 1. 상호 인증 • 상호 인증 프로토콜 • 신분 확인에 대해 상호 만족시킴 • 세션키를 교환할 수 있게 함 • 인증된 키 교환 문제에 있어서 두 가지 고려할 점 • 기밀성(confidentiality) • 신분 위장 방지 : 신원 증명이 필요 • 세션키의 손상 방지 : 암호화 형태로 통신되어야 함 • 적시성(timeliness) • 메시지 재전송의 위협 방지 • 메시지 재전송 • 공격자가 세션키를 손상 • 다른 상대방을 흉내 초점 : 키 분배

  5. 재전송 공격의 예 • 단순 재전송 • 공격자가 메시지를 단순히 복사하고 후에 재전송하는 것 • 시간 범위 내에서 재전송 • 공격자는 유효한 시간 윈도우 내에서 타임 스탬프가 있는 메시지를 재전송할 수 있다. • 발견될 수 없는 재전송 • 원본 메시지의 사용을 정지시켜서 목적지에 도착하지 않고 오직 재전송 메시지만 도착할 경우에 일어날 수 있다. • 수정 없이 역방향 재전송 • 메시지 송신자에 대한 재전송 반환 • 송신자가 보낸 메시지들과 받은 메시지들 사이의 내용적 차이를 쉽게 알 수 없을 때 가능.

  6. 재전송 공격에 대항하기 위한 접근 방법 • 각 메시지에 대한 일련 번호 부여 • 일련 번호가 적절한 일련 번호일 경우에만 수신 • 단점 • 마지막 메시지의 일련 번호 유지 요구 ∴인증과 키 교환에 일반적으로 사용하지 않음

  7. 일반적인 접근 방법 • 타임 스탬프(Timestamp) • A는 메시지가 현재 시간에 대하여 충분히 밀접하다고 판단하는 타임스탬프를 포함할 때만 메시지를 선명한 것으로 받아들인다. • 다양한 참가자들 사이에 동기화된 시계를 요구하기 때문에 어렵다. • 신청/응답(Challenge/Response) • A는 B로 부터의 선명한 메시지를 기대 • B에게 임시비표(신청)을 보냄 • B로 부터 수신되는 메시지(응답)가 정확한 임시비표 값을 포함 할 것을 요구

  8. 2. 관용 암호 방식 • KDC(Key Distribution Center)역할 • 각 통신 주체는 비밀키를 KDC와 공유한다. • KDC는 통신 상대방 사이의 연결에 대한 세션키를 만든다. • 키 전달 보호를 위해 마스터키를 이용하여 키들을 할당한다. • Needham과 Schroeder[NEED78] 프로토콜 • A KDC : IDA Ⅱ IDB ⅡN1 • KDC A : EKa[Ks Ⅱ IDB Ⅱ N1 Ⅱ EKb [Ks Ⅱ IDA]] • A B : EKb[KS ⅡIDA] • B A : EKs[N2] • A B : EKs[f(N2)] 이 프로토콜의 목적은 A와 B에서 세션키 Ks를 안전하게 배포하는 것이다.

  9. 2. 관용 암호 방식 • Needham - Schnoeder 방식 1. IDA || IDB || N1 KDC 2. EKA[KS || IDB || N1 || EKB[KS || IDA]] 3. EKB[KS || IDA] 4. EKS[N2] 5. EKS[f(N2)] Alice Bob • 재전송 공격에 대해 여전히 취약 Denning 방식 제안

  10. 비밀키 Ka 와 Kb는 각각 A와 KDC사이, B와 KDC사이에서 공유된다. • 1단계 • 세션키 요구 메시지를 보냄 • 전송 내용 - A와 B의 신원, 유일한 식별자 • 2단계 • 응답 메시지를 마스터키 Ka 로 암호화하여 전송 • 전송 내용 - 일회용 세션키 Ks, 1단계에서 전송 받은 메시지 - B에게 전송될 메시지를 Kb로 암호화 (EKb[KS ⅡIDA])

  11. 3단계 • 세션키를 저장하고, EKb[KS ⅡIDA]를 B에게 전송 • Kb로 암호화되었기 때문에 도청 불가능 A와 B는 세션키 KS를 공유 • 4단계 • B는 A에게 임시비표 N2 를 세션키로 암호화하여 전송 • 5단계 • A는 B에게 f(N2)를 세션키로 암호화하여 전송 목적 : 재전송 공격 방해하기 위해 BUT!! 여전히 재전송 공격에 취약하다. X는 과거의 키를 사용하여 단계 3을 단순히 재전송 함으로써 A인 체 하고 B를 속일 수 있다.

  12. Denning[DENN81, DENN82]프로토콜 - 타임 스탬프를 추가함으로써 Needham/Schroeder 프로토콜을 보완 • A KDC : IDA Ⅱ IDB • KDC A : EKa[Ks Ⅱ IDB Ⅱ TⅡ EKb [Ks Ⅱ IDA ⅡT]] • A B : EKb[KS ⅡIDA ⅡT] • B A : EKs[N1] • A B : EKs[f(N1)] • 네트워크 전체에 걸쳐서 동기화된 클럭에 대한 신뢰를 요구한다. • 지연-재전송 공격(suppress-replay attack)에 취약. • T는 A와 B에서 세션키가 시간에 적합하게 바로 만들어진 것이라는 것을 보장해주는 역할을 한다

  13. Denning은 단계 2와 3에 timestamp를 추가 • 가정 • 마스터 키 KA와 KB가 안전하다. 1. IDA || IDB KDC 2. EKA[KS || IDB || T || EKB[KS || IDA || T]] 3. EKB[KS || IDA || T] 4. EKS[N1] 5. EKS[f(N1)] Alice Bob

  14. [NEUM93a] 프로토콜 - 지연-재전송 공격에 강하다. • A B : IDA ⅡNa • B KDC : IDB Ⅱ Nb Ⅱ EKb [IDA Ⅱ Na ⅡTb]] • KDC A : EKa[IDB Ⅱ Na Ⅱ Ks ⅡTb] EKb[IDA Ⅱ Ks ⅡTb Ⅱ Nb] • A B : EKb[IDA Ⅱ Ks ⅡTb ]EKs[ Nb] • 각 단계 설명 • 1단계 • 인증교환 시작 • 전송 내용 - 임시비표 Na, 식별자 • 2단계 • B가 KDC에게 세션키 요청 • 전송 내용 - 임시비표 Nb, 식별자, 비밀키로 암호화된 블록

  15. 3단계 • 전송 내용 - B의 임시비표, B 와 KDC에 의해 공유되는 비밀키로 암호화한 블록(인증을 위해),A와 KDC에 의해 공유되는 비밀키로 암호화된 블록 • 4단계 • EKs[ Nb]은 메시지가 A로 부터 왔고 재전송이 아니라는 것을 인증한다.

  16. 3. 공개키 암호화 방식 • 각각이 상대방의 현재 공개키를 가지고 있다고 가정. • [DENN81] 타임 스탬프를 사용하는 프로토콜 • A AS : IDA Ⅱ IDB • AS A : EKRas[IDAⅡ KUaⅡTⅡ EKRas[IDBⅡ KUbⅡT] • A B : EKRas[IDAⅡ KUaⅡTⅡ EKRas[IDBⅡ KUbⅡT]Ⅱ EKUb [EKRa [KsⅡT]] • AS는 인증서버로 간주된다. AS는 공개키 인증서를 제공한다. • 간결하지만 앞에서와 같이 클럭의 동기화를 요구한다.

  17. 3. 공개키 암호화 방식 5. EKRAuth[IDA || KUA] || EKUn[EKRAuth[NA || KS || IDB] ] 1. IDA || IDB KDC 2. EKRAuth[IDB || KUB] 4. IDA || IDB || EKUAuth[NA] 3. KUB[NA || IDA] 6. EKUA[EKRAuth[NA || KS || IDB] || NB ] 7. EKS[NB] Alice Bob

  18. 3. 공개키 암호화 방식 • Woo와 Lam[WOO92a] 임시비표를 이용한 프로토콜 • A KDC : IDA Ⅱ IDB • KDC A : EKRauth[IDBⅡ KUb] • A B : EKUb [Na Ⅱ IDA ] • B KDC : IDB Ⅱ IDA ⅡEKUauth[Na ] • KDC B : EKUauth[IDAⅡKUa]Ⅱ EKUb[EKRauth[NaⅡKsⅡIDAⅡIDB]] • B A : EKUa[ EKUauth [NaⅡKsⅡIDAⅡIDB]ⅡNb] • A B : EKS [Nb] • 각 단계 설명 • 1단계 : A는 B와의 연결 의도를 알린다. • 2단계 : B의 공개키 인증서의 복사본을 반송 • 3단계 : A는 B에게 통신 요청, 임시비표를 보낸다

  19. 3. 공개키 암호화 방식 • 4단계 : B는 KDC에게 A의 공캐키 인증서를 요구, 세션키를 요구 • 5단계 : A의 공개키 인증서 사본, 정보[ NaⅡKsⅡ IDB ]를 반송 • 6단계 : [ NaⅡKsⅡ IDB ]은 KDC의 개인키로 암호화한 상태로 Nb와 함께 A에게 중계 • 7단계 : 세션키에 대한 A의 지식을 B에게 보증 위 프로토콜의 개선된 버전 • A의 식별자 IDa 가 단계 5와 6에서 KDC의 개인키로 암호화된 항목들의 집합에 추가된다. • IDa 의 포함은 A에 의해서 만들어진 모든 임시비표중에서만 유일한것이다.

  20. 4. 일방향 인증 • 수신자는 메시지가 합법적 송신자로부터 왔다는 보장을 요구 • 관용 암호 방식 • 대표적인 예…… 전자 우편(e-mail) • 요구사항 • 우편처리 시스템이 복호키를 가지고 있지 않아도 되는 범위에서 전자우편 메시지가 암호화되어야 한다. • 수신측은 메시지가 합법적 송신자로부터 왔다는 것의 어떤 보장을 원한다.(인증)

  21. 4. 일방향 인증 1. IDA || IDB || N1 KDC 2. EKA[KS || IDB || N1 || EKB[KS || IDA]] 3. EKB[KS, IDA] || EKS(M) Bob Alice • 메시지의 의도된 수신자만이 해당 메시지를 읽을 수 있다는 것을 보증 • 메시지 재전송 공격에 취약

  22. 5. 관용 암호 방식 • 암호화된 전자우편 (개선된 KDC전략) A, B 동시에 온라인 일 수 없기 때문에 • A KDC : IDA Ⅱ IDB ⅡN1 • KDC A : EKa[Ks Ⅱ IDB Ⅱ N1 Ⅱ EKb [Ks Ⅱ IDA]] • A B : EKb[Ks ⅡIDA]ⅡEKs[M] 의도된 수신자만이 메시지를 읽을 수 있다는 것을 보증한다.

  23. 6. 공개키 암호화 방식 • 비밀성이 주요 관심이라면 오직 B만이 복호 할 수 있다. • 인증이 주요 관심이라면 (디지털 서명 만족) A가 메시지를 보냈다는 것을 부인할 수 없다. A B : EKUB(KS) || EKS(M) A B : M || EKRA(H(M))

  24. 공개키 암호화 방식 • 메시지와 서명 둘 다 만족 (수신자의 공개키로 암호화) • 디지털 인증서 (시기적으로 적절하다는확신이 요구 됨) A B : EKUB(M || EKRA(H(M))) A B : M || EKRA[H(M)] || EKRAS(T || IDA || KUA)

  25. 디지털 서명의 표준

  26. 10.3 디지털 서명의 표준 • DSS (Digital Signature Standards) • 1991년 미국 NIST에서 표준안으로 개발 • 안전한 해쉬 알고리즘을 사용하면서 새로운 디지털 서명기술즉, 디지털 서명 알고리즘을 나타냄 • 디지털 서명 기술을 제공하기 위해 설계된 알고리즘 사용 (암호화나 키 교환에 사용되지 않음) • 공개키 기반의 알고리즘 • 이산대수의 어려움에 기반을 둔 알고리즘

  27. DSS 접근법 비교 • RSA 접근방식 • 서명되는메시지는 고정된 길이의 비밀 해쉬코드를 생성하는 해쉬함수 입력 • 해쉬코드는 서명을 형성하기 위해 송신자의 개인키를 사용하여 암호화 • 수신자는 메시지를 받고 해쉬코드를 생성 • 수신자는 송신자의 공개키를 사용하여 서명을 복호화 • 계산된 해쉬코드가 복호화된 서명과 일치한다면 서명은 유효한 것으로 인정

  28. DSS 접근법 비교 • DSS접근 방식 • RSA와는 달리 해쉬코드는 특정한 서명을 위해 생성된 K와 함께 서명함수(Sig)에 입력으로서 제공 • 송신자의 개인키와 전체적인 공개키(통신 주체의 집단에 알려진 매개변수의 집합)도 서명함수의 입력요소 • 서명함수의 결과는 s와 r로 표시된 두개의 요소로 구성 • 수신자는 메시지의 해쉬코드 생성 이것은 서명과 함께 확인함수의 입력이 됨 • 확인함수는 송신자의 공개키와 전체적인 공개키에 의존 • 확인함수의 출력은 서명이 유효하다면 서명구성요소 r과같음 • 서명함수는 개인키에 대해 알고 있는 송신자만이 유효한 서명을 생성할 수 있음

  29. H | | M M KRa 비교 KUa H E EKRa[H(M)] D H | | M M KUG KRa KRG KUa s H Sig r 비교 Ver k DSS 접근법 비교 RSA DSA

  30. DSA (Digital Signature Algorithm) • 준비과정 • 모든 사용자 집단에 공통적으로 사용되는 세개의 매개변수 • 160비트 길이의 소수 q 선택 • 512 ~ 1024 비트 사이의 소수 p 선택 • g = h(p-1)/q mod p ( 1<h<(p-1) ) • 비밀키 선택, 공개키 생성 • 랜덤한 비밀키 x 선택 (0<x<q) • 공개키 y 계산 y=gx mod p

  31. p q g f2 r k x q M H f1 s DSA (Digital Signature Algorithm) • 서명 과정 • 메시지별 비밀번호 k를 랜덤하게 생성(0<k<q) • 서명 • r=(gk mod p) mod q • s=[k-1(H(M)+xr)] mod q • Signature = (r, s)

  32. y q g H M f4 q s f3 r 비교 DSA (Digital Signature Algorithm) • 확인과정 • w=s-1 mod q • u1=[(H(M)w)] mod q • u2= rw mod q • v=[(gu1 yu2) mod p] mod q • TEST : v = r

  33. 문제 • 인터넷에서 물건을 사려고 한다. 안전하게 물건을 사기 위한 요구되는 보안모델을 제시하고 제시한 모델에 기반한 보안 기법들을 순서대로 제시하고, 그 기법을 상세히 설명하시오. Alice Bob

  34. 신뢰된 제 3 자 (예: 비밀정보의 중재자, 분배자) 통신주체 통신주체 보안 관련 변환 보안 관련 변환 메시지 메시지 정보 채널 비밀정보 비밀정보 적 (Opponent) 보안 모델

  35. 보안 서비스 • 보안 서비스 (Security Service) • 조직의 데이터 처리 시스템 및 정보 전송에 대한 보완을 강화하기 위한 제반 서비스 • 보안 서비스의 종류 • 기밀성 서비스 • 무결성 서비스 • 인증 서비스 • 부인봉쇄 서비스 • 접근 제어 서비스 • 가용성 서비스

More Related