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

54
1 Chap 5. Chap 5. 관관 관관 관관관 관관 관관 관관관 관관관 관관관 관관관 관관관

Upload: kyra-holland

Post on 31-Dec-2015

77 views

Category:

Documents


0 download

DESCRIPTION

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

TRANSCRIPT

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

1

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

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

2

기밀성 서비스기밀성 서비스 (Confidentiality)(Confidentiality)

합법적인 실체만 데이터를 읽을 수 있도록 하는 서비스 메시지 내용 공개 , 트래픽 흐름 분석 , 도청으로부터 전송

메시지 보호 접속 구간 기밀성 , 내용 기밀성 , 메시지 흐름 기밀성 암호 알고리즘 이용

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

3

목 차목 차

1. 암호화 함수의 배치

2. 트래픽 기밀성

3. 키의 분배

4. 난수의 생성

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

4

1. 1. 암호화 함수의 배치암호화 함수의 배치

기밀성 서비스 제공하기 위해 기밀성 서비스 제공하기 위해

암호화 대상 (WHAT)

암호화 위치 (WHERE) 결정

암호 함수의 위치 결정암호 함수의 위치 결정

공격의 잠재적인 위치 파악 후 , 암호 함수를 위치

암호화 함수 배치의 접근 방법암호화 함수 배치의 접근 방법

링크 암호화

단대단 암호화

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

5

1. 1. 암호화 함수의 배치암호화 함수의 배치 암호 함수의 위치 결정암호 함수의 위치 결정

공격의 잠재적인 위치 파악 후 , 암호 함수를 위치

NetspotNetspot

CentralCentral

OfficeOffice

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

6

1.1 1.1 기밀성 공격의 가능한 위치기밀성 공격의 가능한 위치

취약점취약점 LAN 에 의한 워크스테이션의 연결 내부의 다른 고용자에 의한 도청 (LAN 상의 트래픽 감시 )

LAN 이 dial-in 방식을 제공 외부의 침입자가 LAN 에 접근하여 traffic 감시 가능

배선함을 이용한 연결 : 배선함은 내부와 외부 통신을 위한 전송 집합점 제공을 위한 패치판 역할

배선함 자체에 대한 공격 ( 배선함에 침투하여 전송 회선을 찾아 도청 ) ( 저용량 무선 송신기를 부착하여 가까운 위치에서 송신되 는 신호를 수신가능 - 자동차 , 인접빌딩에서 )

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

7

공격 유형공격 유형 적극적인 공격

: 공격자는 링크의 일부분을 물리적으로 제어하여 전송 내용을 삽입하거나 획득 침투 도청

소극 적인 공격: 공격자는 단지 전송 내용을 도청 침투 도청 , 유도 도청 ( 전자기 방사물 검사 )

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

8

통신 링크에 대한 공격 가능성통신 링크에 대한 공격 가능성 트위스티 페어 전화선 , 동축 케이블 침투 도청과 유도 도청 가능

광섬유 케이블 어느 형태의 도청도 가능하지 않음

마이크로파와 위성 통신 공격자가 위험성 없이 도청 가능 적극적인 공격도 가능 ( 기술적으로 어렵고 많은 비용 요구 )

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

9

통신상의 처리기 자체에 대한 공격통신상의 처리기 자체에 대한 공격 하드웨어와 소프트웨어의 불법 변조 처리기의 메모리에 대한 접근 전자기 방사물 감시

통신 링크에 대한 공격보다 발생 소지가 적지만 여전히 위험성 존재

결론결론: 공격 당할 수 있는 장소는 다양하고 공격 위협은 항상 존재

고용자의 공격 위협 항상 존재

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

10

1.2 1.2 링크 암호화 대 단대단 암호화링크 암호화 대 단대단 암호화

암호화암호화: 공격에 대한 가장 강력하고 일반적인 접근 방법

패킷 교환망 상의 암호화패킷 교환망 상의 암호화

PSN

: 단대단 암호 장치

: 링크 암호 장치

: 패킷 교환 네트워크

PSN

PSN

PSN

PSN

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

11

링크 암호화링크 암호화 암호화 장치를 통신 링크 양단에 모두 설치하여 트래픽 보호 ( 많은 암호화 장치 필요 )

단점• 패킷 교환기에서 복호화 ( 패킷 헤더에 있는 주소를 읽어야 하기 때문 )

패킷 교환기에서 메시지 공격 가능

PSN

PSN

PSN

PSN

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

12

PSN

PSN

PSN

PSN

단대단 암호화단대단 암호화 두 종단 시스템에서 수행 ( 동일한 키 공유 )

약간의 인증 제공 암호화된 데이터는 목적지까지 변경 없이 전송

사용자의 데이터는 안전 단점

• 패킷의 헤더 부분은 노출 ( 패킷 교환망에서 헤더를 인식하기 위해서 )

트래픽 패턴은 안전하지 않음

링크 암호화와 단대단 암호화 혼용링크 암호화와 단대단 암호화 혼용 안전성을 높일 수 있음

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

13

PSN

PSN

PSN

PSN

링크 암호화와 단대단 암호화 특성링크 암호화와 단대단 암호화 특성

링크 암호화링크 암호화 단대단 암호화 단대단 암호화

중간 및 종단 시스템 ES 송신에 노출된 매시지 ES 송신에 암호화된 메시지

내의 보안 IS 에 노출된 메시지 IS 에 암호화된 메시지

ES 송신에 적용 프로세스 송신에 응용

사용자에 투명 사용자가 암호화 적용

사용자의 역할 모든 사용자를 위한 하나의 설비 사용자가 암호 기법 선정

하드웨어내에서 암호화 소프트웨어 이행

전체 메시지의 암호화 각 메시지에 대해 사용자가 또는 아무 메시지도 암호화 안함 암호화 여부 선택

적용상의 고려 사항 ES-IS 및 IS-IS 쌍당 하나의 키 필요 사용자 쌍당 하나의 키 필요

ES 인증 제공 사용자 인증 제공

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

14

단대단 암호화와 링크 암호화 구조단대단 암호화와 링크 암호화 구조

호스트 호스트

교환기단대단 암호화

호스트 호스트

교환기단대단 및 링크 암호화

호스트 호스트

교환기링크 암호화

헤더

데이터

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

15

링크 암호화 기능의 논리적 위치링크 암호화 기능의 논리적 위치 하위 계층에서 수행 ( 물리층이나 링크층 )

단대단 암호화 기능의 논리적 위치단대단 암호화 기능의 논리적 위치 여러 가지 선택이 가능 네트워크층에서 수행하는 경우

• 개인적으로 보호될 수 있는 수와 종단 시스템의 수는 일치• 두 종단 시스템이 하나의 비밀키를 공유한다면 다른 종단 시스템과 암호 메시지 교환 가능• 각 종단 시스템 사용자가 동일한 암호 기법 채택 이 경우 암호화 기능을 전위 처리기로 수행

응용계층에서 수행하는 경우• 고려할 엔티티의 수 증가 ( 생성 분배할 비밀키의 수 증가 )

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

16

전위 처리기전위 처리기 (Front-end Precessor:FEP)(Front-end Precessor:FEP) 의 암호화 기능의 암호화 기능

헤더

데이터적 처리기 암호화 /

복호화 장치혹 처리기

우회

우회

헤더

데이터

호스트 연결 네트워크 연결

송신 : 호스트로부터 FEP 가 패킷을 접수 패킷의 헤더는 암호화되지 않고 , 데이터 부분은 암호화 인터네트워크 경계를 통과하는 트랙픽에 대한 서비스 불가능 수신 : 복호된 전체 패킷을 호스트로 전달

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

17

축적 전달 응용의 암호화 적용축적 전달 응용의 암호화 적용

트랜스포트

데이터 링크

표현

세션

네트워크

물리

종단 시스템

Email

트랜스포트

데이터 링크

표현

세션

네트워크

물리

Email

물리

데이터 링크

IP

TCP

Email

물리

데이터 링크

IP

TCP

종단 시스템우편 통로

인터네트워크 인터네트워크

링크층 암호화 영역

응용층 밑의 단대화 암호화 영역

응용층 단대화 암호화 영역

E-mail

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

18

축적 전달 응용의 암호화 적용 축적 전달 응용의 암호화 적용 (( 계속계속 ))

전자 우편 게이트웨이• OSI 와 TCP/IP 기반구조의 인터네트워크를 연결

응용층 아래에 단대단 프로토콜이 없음

트랜스포트와 네트워크 연결은 전자우편 게이트웨이를 종료시키고 새로운 트랜스포트와 네트워크 통하여 연결

단점• 고려해야할 개체의 수가 급증 더 많은 비밀키들이 생성되고 분배되야 함

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

19

• 사용자 데이터 부분만 암호 IP 층 암호화

다양한 암호화 기법다양한 암호화 기법 응용층 암호화 ( 링크 IS 및 게이트웨이상에서 )

Link - H Net - H IP - H TCP - H 데이터 Link - T

Link - H Net - H IP - H TCP - H 데이터 Link - T

링크상 및 IS 상에서

Link - H Net - H IP - H TCP - H 데이터 Link - T

게이트웨이에서

• 사용자 데이터 부분과 TCP 헤더가 암호화• 게이트웨이를 통과하면 다음 전송을 위해 개방

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

20

다양한 암호화 기법 다양한 암호화 기법 (( 계속계속 ))

링크층 암호화

Link - H Net - H IP - H TCP - H 데이터 Link -T

링크상 에서

Link - H Net - H IP - H TCP - H 데이터 Link - T

IS 상 및 게이트웨이상에서

• 링크 헤더와 트레일러를 제외한 전체 데이터 암호화

• 전체 데이터 단위는 IS 와 게이트웨이에서 암호화되지 않음

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

21

2. 2. 트래픽 기밀성트래픽 기밀성

트래픽 분석에 의해 발생 가능한 문제트래픽 분석에 의해 발생 가능한 문제 트래픽 분석 공격으로 정보 획득

• 파트너들의 신원• 파트너들의 통신 빈도• 중요한 정보가 교환되고 있음을 제시해 주는 메시지 패턴 ,

메시지 길이 또는 메시지 양• 특정 파트너 사이의 특별한 대화와 관련된 사건들

은밀한 채널 통신을 위해 트래픽 패턴 사용• 보안 정책에 위배되는 방법으로 정보를 전송

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

22

링크 암호화 접근 방법링크 암호화 접근 방법 패킷 헤더를 암호화하여 트래픽 분석 기회 축소

: 공격자는 트래픽 양의 관측 가능 트래픽 패딩으로 해결

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

단대단 암호화 접근 방법단대단 암호화 접근 방법 트랜스포트나 응용층에서 일정한 길이로 데이터 단위를 패딩 패딩되는 스트림에 의미없는 메시지 삽입

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

23

트래픽 패딩

: 전송할 평문이 없어도 계속해서 암호문 생성

트래픽 양 추론 불가능

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

24

3. 3. 키의 분배키의 분배

관용 암호방식의 키 요구사항관용 암호방식의 키 요구사항

양측이 동일한 비밀키를 공유할 것

키를 제 3 자가 모르게 보호할 것

키를 적당한 주기로 변경할 것

• 공격 당한 키의 손상범위를 제한

효과적인 키 전달 기술을 강구할 것

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

25

키 분배의 방법키 분배의 방법

1)1) AA 가 키를 선택하여 물리적으로가 키를 선택하여 물리적으로 BB 에게 전달한다에게 전달한다 . .

2)2) 제 제 33 자가 키를 선택하여 물리적으로자가 키를 선택하여 물리적으로 AA 와 와 BB 에 전달한다에 전달한다 ..

3)3) 만약 만약 AA 와 와 BB 가 최근에 어떤 키를 사용했다면가 최근에 어떤 키를 사용했다면 , , 한쪽이 한쪽이 이전의 이전의

그 키를 사용하여그 키를 사용하여 암호화된 새로운 키를 상대방에게 전송한다 암호화된 새로운 키를 상대방에게 전송한다 ..

4)4) 만약 만약 AA 와 와 BB 가 각각 제 가 각각 제 33 자 자 CC 에 암호화된 연결을 갖고 에 암호화된 연결을 갖고

있으면있으면 , C, C 는 키를 그 는 키를 그 암호화된 연결을 통하여암호화된 연결을 통하여 AA 와 와 BB 에게 에게

전달한다전달한다 ..

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

26

1)1) AA 가 키를 선택하여 물리적으로 가 키를 선택하여 물리적으로 BB 에게 전달한다에게 전달한다 ..

2)2) 제 제 33 자가 키를 선택하여 물리적으로 자가 키를 선택하여 물리적으로 AA 와 와 BB 에 전달한다에 전달한다 ..

물리적인 방법으로 전달물리적인 방법으로 전달

링크 암호화에서 적용 가능

단대단 암호화에서 적용 어려움 ( 광역 분배 불가 )

N 개의 호스트에 필요한 키의 수 [N(N-1)/2]

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

27

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

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

28

3)3) 만약 만약 AA 와 와 BB 가 최근에 어떤 키를 사용했다면가 최근에 어떤 키를 사용했다면 , , 한쪽이 한쪽이

이전의 그 키를 사용하여 암호화된 새로운 키를 이전의 그 키를 사용하여 암호화된 새로운 키를

상대방에게 전송한다상대방에게 전송한다 ..

이전의 키를 사용하여 암호화된 새로운 키를 전송이전의 키를 사용하여 암호화된 새로운 키를 전송

링크 암호화나 단대단 암호화 모두 적용 가능

선행 키의 공격에 의하여 이후의 모든 키가 노출

초기 키에 대한 생성 분배 문제

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

29

4)4) 만약 만약 AA 와 와 BB 가 각각 제 가 각각 제 33 자 자 CC 에 암호화된 연결을 갖고 에 암호화된 연결을 갖고

있으면있으면 , C, C 는 키를 그 암호화된 연결을 통하여 는 키를 그 암호화된 연결을 통하여 AA 와 와 BB

에게 전달한다에게 전달한다 . .

제 제 33 자자 (( 키 분배 센터키 분배 센터 )) 를 통하여 키 분배를 통하여 키 분배

단대단 암호화에서 널리 채택

사용자는 키 분배 센터와 유일한 키를 공유

제 3 자의 신뢰 문제 , 제 3 자의 공증 효과

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

30

키 계층구조의 사용키 계층구조의 사용

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

31

키 분배 센터에서의 키 계층 구조키 분배 센터에서의 키 계층 구조 세션키 (Session key)

• 종단 시스템간의 통신을 암호화하는데 사용되는 임시 키

• 보통 논리적인 연결에 사용된 후 폐기

• 키 분배 센터로부터 획득

( 마스터키를 사용하여 암호화되어 전송 )

• 개체가 N 일 경우 필요한 세션키 : N(N-1) / 2

마스터키 (Master key)

• 키 분배 센터와 사용자가 공유하는 유일한 키

• 개체가 N 일 경우 필요한 마스터키 : N 개

• 비암호학적 방법 분배

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

32

3.1 3.1 키 분배 시나리오키 분배 시나리오

전형적인 시나리오전형적인 시나리오

발신자A

응답자B

키 분배 센터(KDC)

(1) Request || N1

(2) EKa[KS || Request || N1 || EKb[KS,IDA)]

(3) EKb[KS || IDA]

(4) EKs[N2]

(5) EKs[f(N2)]

- 키 분배 단계 : (1), (2), (3)

- 인증 단계 : (3), (4), (5)

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

33

전형적인 시나리오 전형적인 시나리오 (( 계속계속 )): 각 사용자와 KDC 가 유일한 마스터키를 공유한다고 가정 (1) 단계

• 세션키 요구 메시지를 보냄• 전송 내용

– A 와 B 의 신원 , 유일한 식별자

(2) 단계• 응답 메시지를 마스터키 Ka 로 암호화하여 전송• 전송 내용

– 일회용 세션키 KS, (1) 단계에서 전송 받은 메시지– B 에게 전송될 메시지를 Kb 로 암호화 (EKb[KS, IDA])

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

34

전형적인 시나리오 전형적인 시나리오 (( 계속계속 )) (3) 단계

• 세션키를 저장하고 , EKb[KS, IDA] 를 B 에게 전송• Kb 로 암호화되었기 때문에 도청 불가능 A 와 B 는 세션키 KS 를 공유

(4) 단계 ( 인증을 위한 추가적인 단계 )

• B 는 A 에게 임시 비표 N2 를 세션키로 암호화하여 전송

(5) 단계 ( 인증을 위한 추가적인 단계 )

• A 는 B 에게 f(N2) 를 세션키로 암호화하여 전송

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

35

문제점문제점

재전송에 취약재전송에 취약

공격자 C 가 과거의 KS 를 획득할 수 있다면 ,

C 가 과거의 KS 가 포함된 단계 3 를 단순 재전송하여 A

로 신분위장 가능

단계 4 와 5 에서 과거의 KS 를 이용하여 인증 성공

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

36

3.2 3.2 키 제어키 제어

계층 키 제어계층 키 제어 KDC 를 계층화

• 단일 KDC 는 규모가 큰 네트워크에서 비실용적

• 광역 KDC: 다수의 지역 KDC 로 영역을 분할 관리• 지역 KDC: 지역내 통신책임 , 다른 지역은 광역 KDC 가

중계

=> 계층 구조는 KDC 의 손상을 그 지역만으로 제한 가능

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

37

세션키의 유효기간세션키의 유효기간

연결형 프로토콜연결형 프로토콜 논리적 연결 시간동안

• 논리적 연결이 너무 길 때 공격 위험 증가

일정한 주기동안 (PDU순서가 바뀔 때 )

비 연결형 프로토콜비 연결형 프로토콜 세션키 변경 주기 불규칙

한 개의 트랜잭션 동안

• 교환 오버헤드 시간 증가

• 지정된 시간 또는 일정한 개수의 트랜잭션 동안

세션키를 자주 변경할 경우 안전성은 높아지나 처리부하 증가세션키를 자주 변경할 경우 안전성은 높아지나 처리부하 증가 상반된 두 가지 사항을 고려하여 결정

일정 기간 또는 일정 횟수의 트랜잭션만 사용일정 기간 또는 일정 횟수의 트랜잭션만 사용

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

38

연결형 프로토콜을 위한 자동 키 분배

KDCKDC

FEP

호스트호스트 호스트호스트FEP

FEP

FEP = 전위 처리기 , KDC = 키 분배 센터

투명성 키 제어 방식투명성 키 제어 방식

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

39

: 단대단 암호화를 사용자에게 투명한 방식으로 제공하는데 유용: FEP 와 KDC 사이의 통신은 마스터키를 사용하여 암호화 1 단계

• 호스트의 연결 요구 패킷 전송 2 단계

• KDC 에 세션키 요구 3 단계

• 두 전위 처리기에 세션키 전송 4 단계

• 두 호스트 사이의 연결 가능=> FEP 를 호스트와 네트워크 사이의 인터페이스로 활용하여

종단 시스템에 영향을 최소화

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

40

키 분배 센터의 사용에 따른 키 분배 센터의 사용에 따른 KDCKDC 의 신뢰성 요구의 신뢰성 요구 키 분배를 분산 시킴으로써 해결

• 시스템 전체 N(N-1)/2 개의 마스터키 필요• 각 노드는 최대 N-1 개의 마스터 키 유지• 마스터 키 개수의 증가

발신자A

응답자B

(1) Request || N1

(2) EMKm[KS || Request || IDB || f(N1) || N2]

(3) EKs[f(N2)]

분산 키 제어분산 키 제어

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

41

(1) (1) 단계단계 A 가 B 에게 세션키 요구와 임시 비표 N1 을 발행

(2) (2) 단계단계 B 가 공용 마스터키로 암호화된 메시지를 응답 전송 내용

• 세션키 , B 의 식별자 , f(N1), 임시 비표 N2

(3) (3) 단계단계 새로운 세션키를 사용하여 f(N2) 를 전송

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

42

키 사용에 대한 제어키 사용에 대한 제어: 키의 특성에 따라 키의 사용 방법을 제한하는 방식 DES 에 적용 기법

• 64 비트 DES 키의 추가된 8 비트를 이용– 1 비트는 키가 세션키인지 마스터키인지 분별– 1 비트는 키가 암호화에 이용될 수 있음을 표시– 1 비트는 키가 복호화에 이용될 수 있음을 표시

• 단점– 태그가 8 비트로 제한되기 때문에 융통성과 기능성이 제한– 태그도 암호화되기 때문에 키 사용 제어 방법이 제한

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

43

키 사용에 대한 제어 키 사용에 대한 제어 (( 계속계속 ))

제어 벡터를 이용하는 기법

해쉬 함수

+

암호 함수

제어 벡터 마스터키 세션키

평문 입력키 입력

암호화된 세션키

해쉬 함수

+

복호 함수

제어 벡터 마스터키 암호화된 세션키

평문 입력키 입력

세션키

< 세션키 암호화 과정 > < 세션키 복호화 과정 >

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

44

키 사용에 대한 제어 키 사용에 대한 제어 (( 계속계속 ))

제어 벡터를 이용하는 기법 ( 계속 )

• 제어 벡터에서 세션키의 사용 및 제한 사항을 명시

• 제어벡터를 암호학적으로 결합하여 세션키 생성– 해쉬값 : H=h(CV)

– 키입력 : Km XOR H

– 암호문 : EKm XOR H[Ks]

– Ks=DKm XOR H[EKm XOR H[Ks]]

• 장점– 키 사용의 복잡한 제어구조 가능 ( 제어 벡터 길이에 제한이 없음 }

– 제어 벡터는 암호화되지 않은 원형으로 이용 ( 여러가지 응용이 가능 )

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

45

4. 4. 난수의 생성난수의 생성4.1 4.1 난수의 사용난수의 사용 난수의 요구사항난수의 요구사항

임의성의 증명• 균일 분포 (uniform distribution)

– 각 수의 출현 빈도가 거의 동일해야 함– 판정 방법 존재

• 독립성 (independence)– 순서상 어떤 값도 다른 값으로부터 추론 불가능– 판정 방법이 존재 하지 않음 ( 독립성이 존재하지 않음을 보여주는 통계적인 방법 이용 )

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

46

난수의 요구사항 난수의 요구사항 (( 계속계속 )) 비예측성 (unpredictability)

• 다음에 출현할 수를 예측할 수 없음• 출현 빈도수가 같고 독립적이어서 예측 불가

난수의 출처난수의 출처 물리적인 잡음 생성기

: 실용적이지 못함• 이온화 방사선 추이의 펄스 탐지기• 가스 방출 튜브• 누전 축전기

난수 생성 알고리즘 기법 사용 의사 난수 (pseudo random number)-참 난수가 아니고

알고리즘이 결정적

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

47

4.2 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

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

48

선형 합동 방법 선형 합동 방법 (( 계속계속 )) 난수 생성 식

Xn+1 = (aXn + c) mod m

( 각 정수의 범위가 0 X0 < m 인 일련의 정수 생성 )

파라메터의 선택• a, c, m 을 적당히 선택하면 난수 생성기 평가 기준 통과

문제점• 파라메터를 안다면 하나의 수로 나머지 수 계산 가능 ( 생성된 수를 통하여 파라메터 값 계산 가능 )

개선책• 초기치에 클럭 값을 사용

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

49

4.3 4.3 암호학적으로 생성된 난수암호학적으로 생성된 난수

순환 암호 방식순환 암호 방식: 마스터키로부터 세션키를 생성하는데 이용

CC

C+1C+1

암호알고리즘

주기 N 의 카운터

Xi = EKm [C+1]

마스터키Km

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

50

DESDES 의 출력 피드백 모드의 출력 피드백 모드 스트림 암호화뿐만 아니라 키 생성에도 사용 가능 연속적인 64 비트 출력은 일련의 의사 난수가 됨

ANSI X9.17 ANSI X9.17 의사 난수 생성기의사 난수 생성기: 제정 보안 응용과 PGP 를 포함한 다수의 응용에 사용 구성 요소

• 입력 : 두개의 의사 난수 값이 생성기 구동(1. 현재의 날짜와 시간 , 2. 임의의 seed

값 )• 키 : 3 개의 삼중 DES 모듈 사용

( 모두 동일한 56 비트 키 사용 : 키는 보안 )

• 출력 : 64 비트 의사 난수와 64 비트 seed값으로 구성

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

51

ANSI X9.17 ANSI X9.17 의사 난수 생성기 의사 난수 생성기 (( 계속계속 ))

EDE

EDE

EDE

DTi

Vi

K1, K2

Vi+1

Ri

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

52

4.3 Blum Blum Shub 4.3 Blum Blum Shub 생성기생성기

안전한 의사난수 생성을 위한 방법안전한 의사난수 생성을 위한 방법 (BLUM86)(BLUM86) 44 로 나누었을 때 로 나누었을 때 33 이 남는 이 남는 22 개의 큰 소수 개의 큰 소수 p, qp, q 를 선택를 선택 p p q q 3(mod 4); (p mod 4) = (q mod 4) 3(mod 4); (p mod 4) = (q mod 4) 를 의미를 의미

예 : 2 개의 소수 = 7, 11 인 경우 7 11 3 (mod 4) 을 만족

n = p x qn = p x q

nn 에 서로소인 에 서로소인 ss 를 선택를 선택BBS BBS 생성기는 다음 알고리즘에 따라 비트열 생성기는 다음 알고리즘에 따라 비트열 BiBi 를 를 생성생성XX00 = s = s22 mod n mod n

for i = 1 to for i = 1 to XXii = (x = (xi-1i-1))22 mod n mod n

BBii = X = Xii mod 2 mod 2

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

53

n=192649=383*503 s=101355n=192649=383*503 s=101355

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

54

암호학적으로 안전한 의사난수 비트 생성기로 평가암호학적으로 안전한 의사난수 비트 생성기로 평가 (CSPRBG: C(CSPRBG: C

ryptographically Secure Pseudorandom Bit Generator)ryptographically Secure Pseudorandom Bit Generator)

““의사난수 비트 생성기는 출력 순서의 첫 번째 의사난수 비트 생성기는 출력 순서의 첫 번째 kk 비트들의 비트들의

입력에서 입력에서 ½ ½ 보다 큰 확률로 보다 큰 확률로 (k + 1)st (k + 1)st 비트를 예측할 수 있는 비트를 예측할 수 있는

다항다항 -- 시간 알고리즘이 없다면 “시간 알고리즘이 없다면 “ next-bit test”next-bit test” 를 통과한다고 를 통과한다고

말할 수 있다말할 수 있다 .”[MENE97] .”[MENE97]

다음 출현 비트가 다음 출현 비트가 50%50% 이상의 확률로 이상의 확률로 0 0 또는 또는 11 인지 예측할 수 인지 예측할 수

없다면 “없다면 “ next-bit test”next-bit test” 을 만족을 만족

BBSBBS 의 안전성은 의 안전성은 nn 의 소인수 분해의 어려움에 근거의 소인수 분해의 어려움에 근거

p 와 q 를 큰 소수로 결정할 필요가 있음