1 / 54

Chap 5. 관용 암호 방식을 이용한 기밀성

Chap 5. 관용 암호 방식을 이용한 기밀성. 기밀성 서비스 (Confidentiality). 합법적인 실체만 데이터를 읽을 수 있도록 하는 서비스 메시지 내용 공개 , 트래픽 흐름 분석 , 도청으로부터 전송 메시지 보호 접속 구간 기밀성 , 내용 기밀성 , 메시지 흐름 기밀성 암호 알고리즘 이용. 목 차. 1. 암호화 함수의 배치 2. 트래픽 기밀성 3. 키의 분배 4. 난수의 생성. 1. 암호화 함수의 배치. 기밀성 서비스 제공하기 위해 암호화 대상 (WHAT)

Télécharger la présentation

Chap 5. 관용 암호 방식을 이용한 기밀성

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. Chap 5. 관용 암호 방식을 이용한 기밀성

  2. 기밀성 서비스(Confidentiality) • 합법적인 실체만 데이터를 읽을 수 있도록 하는 서비스 • 메시지 내용 공개, 트래픽 흐름 분석, 도청으로부터 전송 메시지 보호 • 접속 구간 기밀성, 내용 기밀성, 메시지 흐름 기밀성 • 암호 알고리즘 이용

  3. 목 차 1. 암호화 함수의 배치 2. 트래픽 기밀성 3. 키의 분배 4. 난수의 생성

  4. 1. 암호화 함수의 배치 • 기밀성 서비스 제공하기 위해 • 암호화 대상(WHAT) • 암호화 위치(WHERE) 결정 • 암호 함수의 위치 결정 • 공격의 잠재적인 위치 파악 후, 암호 함수를 위치 • 암호화 함수 배치의 접근 방법 • 링크 암호화 • 단대단 암호화

  5. Netspot Central Office 1. 암호화 함수의 배치 • 암호 함수의 위치 결정 • 공격의 잠재적인 위치 파악 후, 암호 함수를 위치

  6. 1.1 기밀성 공격의 가능한 위치 • 취약점 • LAN에 의한 워크스테이션의 연결  내부의 다른 고용자에 의한 도청 (LAN상의 트래픽 감시) • LAN이 dial-in 방식을 제공  외부의 침입자가 LAN에 접근하여 traffic 감시 가능 • 배선함을 이용한 연결 : 배선함은 내부와 외부 통신을 위한 전송 집합점 제공을 위한 패치판 역할  배선함 자체에 대한 공격 (배선함에 침투하여 전송 회선을 찾아 도청) (저용량 무선 송신기를 부착하여 가까운 위치에서 송신되 는 신호를 수신가능-자동차, 인접빌딩에서)

  7. 공격 유형 • 적극적인 공격 : 공격자는 링크의 일부분을 물리적으로 제어하여 전송 내용을 삽입하거나 획득  침투 도청 • 소극 적인 공격 : 공격자는 단지 전송 내용을 도청  침투 도청, 유도 도청(전자기 방사물 검사)

  8. 통신 링크에 대한 공격 가능성 • 트위스티 페어 전화선, 동축 케이블  침투 도청과 유도 도청 가능 • 광섬유 케이블  어느 형태의 도청도 가능하지 않음 • 마이크로파와 위성 통신  공격자가 위험성 없이 도청 가능 적극적인 공격도 가능 (기술적으로 어렵고 많은 비용 요구)

  9. 통신상의 처리기 자체에 대한 공격 • 하드웨어와 소프트웨어의 불법 변조 • 처리기의 메모리에 대한 접근 • 전자기 방사물 감시  통신 링크에 대한 공격보다 발생 소지가 적지만 여전히 위험성 존재 • 결론 : 공격 당할 수 있는 장소는 다양하고 공격 위협은 항상 존재 고용자의 공격 위협 항상 존재

  10. PSN PSN PSN PSN 1.2 링크 암호화 대 단대단 암호화 • 암호화 : 공격에 대한 가장 강력하고 일반적인 접근 방법 • 패킷 교환망 상의 암호화 : 단대단 암호 장치 : 링크 암호 장치 PSN : 패킷 교환 네트워크

  11. PSN PSN PSN PSN • 링크 암호화 • 암호화 장치를 통신 링크 양단에 모두 설치하여 트래픽 보호 (많은 암호화 장치 필요) • 단점 • 패킷 교환기에서 복호화 (패킷 헤더에 있는 주소를 읽어야 하기 때문)  패킷 교환기에서 메시지 공격 가능

  12. PSN PSN PSN PSN • 단대단 암호화 • 두 종단 시스템에서 수행 (동일한 키 공유)  약간의 인증 제공 • 암호화된 데이터는 목적지까지 변경 없이 전송  사용자의 데이터는 안전 • 단점 • 패킷의 헤더 부분은 노출 (패킷 교환망에서 헤더를 인식하기 위해서)  트래픽 패턴은 안전하지 않음 • 링크 암호화와 단대단 암호화 혼용 • 안전성을 높일 수 있음

  13. PSN PSN PSN PSN • 링크 암호화와 단대단 암호화 특성 링크 암호화 단대단 암호화 중간 및 종단 시스템 ES 송신에 노출된 매시지 ES송신에 암호화된 메시지 내의 보안 IS에 노출된 메시지 IS에 암호화된 메시지 ES송신에 적용 프로세스 송신에 응용 사용자에 투명 사용자가 암호화 적용 사용자의 역할 모든 사용자를 위한 하나의 설비 사용자가 암호 기법 선정 하드웨어내에서 암호화 소프트웨어 이행 전체 메시지의 암호화 각 메시지에 대해 사용자가 또는 아무 메시지도 암호화 안함 암호화 여부 선택 적용상의 고려 사항 ES-IS 및 IS-IS쌍당 하나의 키 필요 사용자 쌍당 하나의 키 필요 ES 인증 제공 사용자 인증 제공

  14. 단대단 암호화와 링크 암호화 구조 헤더 단대단 암호화 교환기 호스트 호스트 데이터 링크 암호화 교환기 호스트 호스트 단대단 및 링크 암호화 교환기 호스트 호스트

  15. 링크 암호화 기능의 논리적 위치 • 하위 계층에서 수행 (물리층이나 링크층) • 단대단 암호화 기능의 논리적 위치 • 여러 가지 선택이 가능 • 네트워크층에서 수행하는 경우 • 개인적으로 보호될 수 있는 수와 종단 시스템의 수는 일치 • 두 종단 시스템이 하나의 비밀키를 공유한다면 다른 종단 시스템과 암호 메시지 교환 가능 • 각 종단 시스템 사용자가 동일한 암호 기법 채택  이 경우 암호화 기능을 전위 처리기로 수행 • 응용계층에서 수행하는 경우 • 고려할 엔티티의 수 증가(생성 분배할 비밀키의 수 증가)

  16. 우회 헤더 헤더 데이터 데이터 적 처리기 암호화/ 복호화 장치 혹 처리기 우회 • 전위 처리기(Front-end Precessor:FEP)의 암호화 기능 호스트 연결 네트워크 연결 • 송신 : 호스트로부터 FEP가 패킷을 접수 • 패킷의 헤더는 암호화되지 않고, 데이터 부분은 암호화 • 인터네트워크 경계를 통과하는 트랙픽에 대한 서비스 불가능 • 수신 : 복호된 전체 패킷을 호스트로 전달

  17. 축적 전달 응용의 암호화 적용 종단 시스템 우편 통로 종단 시스템 E-mail Email Email Email 표현 표현 세션 세션 TCP TCP 트랜스포트 트랜스포트 네트워크 네트워크 IP IP 데이터 링크 데이터 링크 데이터 링크 데이터 링크 물리 물리 물리 물리 인터네트워크 인터네트워크 링크층 암호화 영역 응용층 밑의 단대화 암호화 영역 응용층 단대화 암호화 영역

  18. 축적 전달 응용의 암호화 적용 (계속) • 전자 우편 게이트웨이 • OSI와 TCP/IP 기반구조의 인터네트워크를 연결 • 응용층 아래에 단대단 프로토콜이 없음 • 트랜스포트와 네트워크 연결은 전자우편 게이트웨이를 종료시키고 새로운 트랜스포트와 네트워크 통하여 연결 • 단점 • 고려해야할 개체의 수가 급증  더 많은 비밀키들이 생성되고 분배되야 함

  19. 다양한 암호화 기법 • 응용층 암호화 (링크 IS 및 게이트웨이상에서) Link - H Net - H IP - H TCP - H 데이터 Link - T • 사용자 데이터 부분만 암호 • IP층 암호화 Link - H Net - H IP - H TCP - H 데이터 Link - T 링크상 및 IS상에서 Link - H Net - H IP - H TCP - H 데이터 Link - T 게이트웨이에서 • 사용자 데이터 부분과 TCP 헤더가 암호화 • 게이트웨이를 통과하면 다음 전송을 위해 개방

  20. 다양한 암호화 기법 (계속) • 링크층 암호화 Link - H Net - H IP - H TCP - H 데이터 Link -T 링크상 에서 Link - H Net - H IP - H TCP - H 데이터 Link - T IS상 및 게이트웨이상에서 • 링크 헤더와 트레일러를 제외한 전체 데이터 암호화 • 전체 데이터 단위는 IS와 게이트웨이에서 암호화되지 않음

  21. 2. 트래픽 기밀성 • 트래픽 분석에 의해 발생 가능한 문제 • 트래픽 분석 공격으로 정보 획득 • 파트너들의 신원 • 파트너들의 통신 빈도 • 중요한 정보가 교환되고 있음을 제시해 주는 메시지 패턴, 메시지 길이 또는 메시지 양 • 특정 파트너 사이의 특별한 대화와 관련된 사건들 • 은밀한 채널 통신을 위해 트래픽 패턴 사용 • 보안 정책에 위배되는 방법으로 정보를 전송

  22. 링크 암호화 접근 방법 • 패킷 헤더를 암호화하여 트래픽 분석 기회 축소 : 공격자는 트래픽 양의 관측 가능  트래픽 패딩으로 해결 • 트래픽 패딩 : 전송할 평문이 없어도 계속해서 암호문 생성  트래픽 양 추론 불가능 • 단대단 암호화 접근 방법 • 트랜스포트나 응용층에서 일정한 길이로 데이터 단위를 패딩 • 패딩되는 스트림에 의미없는 메시지 삽입

  23. 트래픽 패딩 : 전송할 평문이 없어도 계속해서 암호문 생성  트래픽 양 추론 불가능

  24. 3. 키의 분배 • 관용 암호방식의 키 요구사항 • 양측이 동일한 비밀키를 공유할 것 • 키를 제3자가 모르게 보호할 것 • 키를 적당한 주기로 변경할 것 • 공격 당한 키의 손상범위를 제한 • 효과적인 키 전달 기술을 강구할 것

  25. 키 분배의 방법 • A가 키를 선택하여 물리적으로B에게 전달한다. • 제 3자가 키를 선택하여 물리적으로A와 B에 전달한다. • 만약 A와 B가 최근에 어떤 키를 사용했다면, 한쪽이 이전의 그 키를 사용하여 암호화된 새로운 키를 상대방에게 전송한다. • 만약 A와 B가 각각 제 3자 C에 암호화된 연결을 갖고 있으면, C는 키를 그 암호화된 연결을 통하여A와 B에게 전달한다.

  26. A가 키를 선택하여 물리적으로 B에게 전달한다. • 제 3자가 키를 선택하여 물리적으로 A와 B에 전달한다. • 물리적인 방법으로 전달 • 링크 암호화에서 적용 가능 • 단대단 암호화에서 적용 어려움(광역 분배 불가) • N개의 호스트에 필요한 키의 수 [N(N-1)/2]

  27. 임의의 종단간 연결에 필요한 키

  28. 만약 A와 B가 최근에 어떤 키를 사용했다면, 한쪽이 이전의 그 키를 사용하여 암호화된 새로운 키를 상대방에게 전송한다. • 이전의 키를 사용하여 암호화된 새로운 키를 전송 • 링크 암호화나 단대단 암호화 모두 적용 가능 • 선행 키의 공격에 의하여 이후의 모든 키가 노출 • 초기 키에 대한 생성 분배 문제

  29. 만약 A와 B가 각각 제 3자 C에 암호화된 연결을 갖고 있으면, C는 키를 그 암호화된 연결을 통하여 A와 B에게 전달한다. • 제 3자(키 분배 센터)를 통하여 키 분배 • 단대단 암호화에서 널리 채택 • 사용자는 키 분배 센터와 유일한 키를 공유 • 제 3자의 신뢰 문제, 제3자의 공증 효과

  30. 키 계층구조의 사용

  31. 키 분배 센터에서의 키 계층 구조 • 세션키(Session key) • 종단 시스템간의 통신을 암호화하는데 사용되는 임시 키 • 보통 논리적인 연결에 사용된 후 폐기 • 키 분배 센터로부터 획득 (마스터키를 사용하여 암호화되어 전송) • 개체가 N일 경우 필요한 세션키 : N(N-1) / 2 • 마스터키(Master key) • 키 분배 센터와 사용자가 공유하는 유일한 키 • 개체가 N일 경우 필요한 마스터키 : N개 • 비암호학적 방법 분배

  32. 3.1 키 분배 시나리오 • 전형적인 시나리오 키 분배 센터 (KDC) (1) Request || N1 (2) EKa[KS || Request || N1 || EKb[KS,IDA)] (3) EKb[KS || IDA] (4) EKs[N2] 발신자 A 응답자 B (5) EKs[f(N2)] - 키 분배 단계 : (1), (2), (3) - 인증 단계 : (3), (4), (5)

  33. 전형적인 시나리오 (계속) : 각 사용자와 KDC가 유일한 마스터키를 공유한다고 가정 • (1) 단계 • 세션키 요구 메시지를 보냄 • 전송 내용 • A와 B의 신원, 유일한 식별자 • (2) 단계 • 응답 메시지를 마스터키 Ka로 암호화하여 전송 • 전송 내용 • 일회용 세션키 KS, (1) 단계에서 전송 받은 메시지 • B에게 전송될 메시지를 Kb로 암호화 (EKb[KS, IDA])

  34. 전형적인 시나리오 (계속) • (3) 단계 • 세션키를 저장하고, EKb[KS, IDA]를 B에게 전송 • Kb로 암호화되었기 때문에 도청 불가능 • A와 B는 세션키 KS를 공유 • (4) 단계 (인증을 위한 추가적인 단계) • B는 A에게 임시 비표 N2를 세션키로 암호화하여 전송 • (5) 단계 (인증을 위한 추가적인 단계) • A는 B에게 f(N2)를 세션키로 암호화하여 전송

  35. 문제점 • 재전송에 취약 • 공격자 C가 과거의 KS를 획득할 수 있다면, • C가 과거의 KS가 포함된 단계3를 단순 재전송하여 A로 신분위장 가능 • 단계 4와 5에서 과거의 KS를 이용하여 인증 성공

  36. 3.2 키 제어 • 계층 키 제어 • KDC를 계층화 • 단일 KDC는 규모가 큰 네트워크에서 비실용적 • 광역 KDC: 다수의 지역 KDC로 영역을 분할 관리 • 지역 KDC: 지역내 통신책임, 다른 지역은 광역 KDC가 중계 => 계층 구조는 KDC의 손상을 그 지역만으로 제한 가능

  37. 세션키의 유효기간 • 연결형 프로토콜 • 논리적 연결 시간동안 • 논리적 연결이 너무 길 때 공격 위험 증가 • 일정한 주기동안 (PDU순서가 바뀔 때) • 비 연결형 프로토콜 • 세션키 변경 주기 불규칙 • 한 개의 트랜잭션 동안 • 교환 오버헤드 시간 증가 • 지정된 시간 또는 일정한 개수의 트랜잭션 동안 • 세션키를 자주 변경할 경우 안전성은 높아지나 처리부하 증가 • 상반된 두 가지 사항을 고려하여 결정 • 일정 기간 또는 일정 횟수의 트랜잭션만 사용

  38. 투명성 키 제어 방식 • 연결형 프로토콜을 위한 자동 키 분배 KDC FEP    호스트 F E P F E P 호스트  FEP = 전위 처리기, KDC = 키 분배 센터

  39. : 단대단 암호화를 사용자에게 투명한 방식으로 제공하는데 유용 : FEP와 KDC사이의 통신은 마스터키를 사용하여 암호화 • 1 단계 • 호스트의 연결 요구 패킷 전송 • 2 단계 • KDC에 세션키 요구 • 3 단계 • 두 전위 처리기에 세션키 전송 • 4 단계 • 두 호스트 사이의 연결 가능 => FEP를 호스트와 네트워크 사이의 인터페이스로 활용하여 종단 시스템에 영향을 최소화

  40. 분산 키 제어 • 키 분배 센터의 사용에 따른 KDC의 신뢰성 요구  키 분배를 분산 시킴으로써 해결 • 시스템 전체 N(N-1)/2개의 마스터키 필요 • 각 노드는 최대 N-1개의 마스터 키 유지 • 마스터 키 개수의 증가 (1) Request || N1 (2) EMKm[KS || Request || IDB || f(N1) || N2] (3) EKs[f(N2)] 발신자 A 응답자 B

  41. (1) 단계 • A가 B에게 세션키 요구와 임시 비표 N1을 발행 • (2) 단계 • B가 공용 마스터키로 암호화된 메시지를 응답 • 전송 내용 • 세션키, B의 식별자, f(N1), 임시 비표 N2 • (3) 단계 • 새로운 세션키를 사용하여 f(N2)를 전송

  42. 키 사용에 대한 제어 : 키의 특성에 따라 키의 사용 방법을 제한하는 방식 • DES에 적용 기법 • 64비트 DES 키의 추가된 8비트를 이용 • 1비트는 키가 세션키인지 마스터키인지 분별 • 1비트는 키가 암호화에 이용될 수 있음을 표시 • 1비트는 키가 복호화에 이용될 수 있음을 표시 • 단점 • 태그가 8비트로 제한되기 때문에 융통성과 기능성이 제한 • 태그도 암호화되기 때문에 키 사용 제어 방법이 제한

  43. 키 사용에 대한 제어 (계속) • 제어 벡터를 이용하는 기법 <세션키 암호화 과정> <세션키 복호화 과정> 제어 벡터 마스터키 세션키 제어 벡터 마스터키 암호화된 세션키 해쉬 함수 해쉬 함수 + + 키 입력 평문 입력 키 입력 평문 입력 암호 함수 복호 함수 암호화된 세션키 세션키

  44. 키 사용에 대한 제어 (계속) • 제어 벡터를 이용하는 기법 (계속) • 제어 벡터에서 세션키의 사용 및 제한 사항을 명시 • 제어벡터를 암호학적으로 결합하여 세션키 생성 • 해쉬값 : H=h(CV) • 키입력 : Km XOR H • 암호문 : EKm XOR H[Ks] • Ks=DKm XOR H[EKm XOR H[Ks]] • 장점 • 키 사용의 복잡한 제어구조 가능(제어 벡터 길이에 제한이 없음} • 제어 벡터는 암호화되지 않은 원형으로 이용(여러가지 응용이 가능)

  45. 4. 난수의 생성4.1 난수의 사용 • 난수의 요구사항 • 임의성의 증명 • 균일 분포(uniform distribution) • 각 수의 출현 빈도가 거의 동일해야 함 • 판정 방법 존재 • 독립성(independence) • 순서상 어떤 값도 다른 값으로부터 추론 불가능 • 판정 방법이 존재 하지 않음 (독립성이 존재하지 않음을 보여주는 통계적인 방법 이용)

  46. 난수의 요구사항 (계속) • 비예측성(unpredictability) • 다음에 출현할 수를 예측할 수 없음 • 출현 빈도수가 같고 독립적이어서 예측 불가 • 난수의 출처 • 물리적인 잡음 생성기 : 실용적이지 못함 • 이온화 방사선 추이의 펄스 탐지기 • 가스 방출 튜브 • 누전 축전기 • 난수 생성 알고리즘 기법 사용 • 의사 난수(pseudo random number)-참 난수가 아니고 알고리즘이 결정적

  47. 4.2 의사 난수 생성기 • 난수 생성기 평가 기준 • 완전 생성 주기를 가져야 함 (함수는 0과 m사이의 모든 값을 반복되기 전에 생성) • 생성된 순서는 임의적 • 함수는 32 비트 연산을 효율적으로 적용 • 선형 합동 방법 : Lehmer에 의해 처음 제안된 알고리즘 • 파라메터 구성 • m 법 (modulus) m > 0 • a 승수 (multiplier) 0  a < m • c 증분 (increment) 0  c < m • X0초기치 (seed) 0  X0 < m

  48. 선형 합동 방법 (계속) • 난수 생성 식 Xn+1 = (aXn + c) mod m (각 정수의 범위가 0  X0 < m 인 일련의 정수 생성) • 파라메터의 선택 • a, c, m을 적당히 선택하면 난수 생성기 평가 기준 통과 • 문제점 • 파라메터를 안다면 하나의 수로 나머지 수 계산 가능 (생성된 수를 통하여 파라메터 값 계산 가능) • 개선책 • 초기치에 클럭 값을 사용

  49. 4.3 암호학적으로 생성된 난수 • 순환 암호 방식 : 마스터키로부터 세션키를 생성하는데 이용 주기 N의 카운터 C C+1 마스터키 Km 암호알고리즘 Xi = EKm [C+1]

  50. DES의 출력 피드백 모드 • 스트림 암호화뿐만 아니라 키 생성에도 사용 가능 • 연속적인 64비트 출력은 일련의 의사 난수가 됨 • ANSI X9.17 의사 난수 생성기 : 제정 보안 응용과 PGP를 포함한 다수의 응용에 사용 • 구성 요소 • 입력 : 두개의 의사 난수 값이 생성기 구동 (1. 현재의 날짜와 시간, 2. 임의의 seed값) • 키 : 3개의 삼중 DES모듈 사용 (모두 동일한 56비트 키 사용 : 키는 보안) • 출력 : 64비트 의사 난수와 64비트 seed값으로 구성

More Related