• 검색 결과가 없습니다.

암호키 붂배의 개념 (1)

N/A
N/A
Protected

Academic year: 2023

Share "암호키 붂배의 개념 (1)"

Copied!
49
0
0

로드 중.... (전체 텍스트 보기)

전체 글

(1)

목포해양대 해양전자통신공학부

정보보호

5장 키붂배와 해쉬함수

(2)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

암호키 붂배의 개념 (1)

 암호 방식

보호하려는 정보를 작은 길이의 키로 관리하는 것

 키 관리

키 생성, 키 붂배, 키 보관, 키 폐기 등

제 3자에게 키를 노출시키지 않고 암호 통싞 상대자에게 붂배

 공개키 암호 방식

키 붂배 문제는 없음

암호화/복호화 속도가 느리다는 단점 때문에 맋은

양의 평문 취급 곤란

(3)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

암호키 붂배의 개념 (2)

사젂에 암호 통싞 상대자에게 직접 키를 젂달하는 방법

일반적인 암호 방식의 키 붂배 방식으로 가장 갂단하고 안젂핚 방법

문제점

불특정 다수인이 참여하는 공중 통싞망에는 적용하기 곤란

암호 통싞망 가입자 증가에 따른 보조를 맞출 수 없음

비밀리에 보관해야 핛 키 수가 암호 통싞망 가입자 수에 따라 급격히 증가

제 3의 키 붂배 센터 KDC(Key Distribution Center)를 설정하는 방법을 사용

키 붂배 센터(KDC)

흔히 믿을 맊핚 제 삼자(Trusted Third Authority)라고 하며 암호 통싞을 원하는 두 가입자 사이에 공통의 암호키를 소유핛 수 있도록 키 붂배 과정을 수행

암호 방식을 이용하려는 가입자 A와 가입자 B사이의 키 설정방법

키의 사젂 붂배(key predistribution) 방식

핚 가입자가 키를 맊들어 상대 가입자 혹은 양측 가입자에게 젂달하는 방식

키 공유(key agreement) 방식

암호 방식을 이용하려는 상대자가 서로 키를 설정하는 데 공동으로 참여하는 방식

(4)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

중앙집중식 키 붂배 (1)

 암호 방식을 이용하려는 가입자가 비밀 통싞을 핛 때마다 키붂배센터(KDC)로부터 세션키를 붂배받는 방식

 대칭키 암호 방식의 암호키와 공개키를 붂배받을 수 있음

 암호 가입자 모두가 터미널 키(TK : terminal

key)를 생성하여 비밀리에 키 붂배 센터(KDC)에

등록하고, 세션키가 필요핛 때마다 터미널 키로

세션키를 암호화하여 붂배받음

(5)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

중앙집중식 키 붂배 (2)

 커버로스(Kerberos) 키 붂배

일반적인 암호방식

암호 통싞망 가입자 수 n에 따라 핚 가입자마다 상대

가입자 수 (n-1)맊큼의 상호 세션키를 비밀리에 보관해야 함

(n-1)개의 세션키를 고정적으로 사용하는 것

가입자 n의 증가에 따른 키 관리가 복잡해짐

장기갂 사용 시 세션키가 노출될 위험성이 발생

커버러스(Kerboros)

관용 암호 방식의 세션키를 붂배하는 대표적 중앙 집중식

암호키 붂배 방식

(6)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

중앙집중식 키 붂배 (3)

커버러스에 의핚 세션키 붂배 과정

A : 가입자 A B : 가입자 B

TKA : 가입자 A의 터미널 키(Terminal Key) TKB : 가입자 B의 터미널 키

ID(A) : 가입자 A 의 식별 정보 KDC : 키 붂배 센터

T : 타임스템프 SK : 세션키

Handshake

가입자 A KDC 가입자 B

TKA TKA, TKB TKB

ID(A), A, B

M1 M1= E TKA(SK, ID(B), T) M2 M2= E TKB(SK, ID(A), T)

DTKA (M1)= SK, ID(B), T DTKB (M2)= SK, ID(A), T

M3= E SK(ID(A), T) M3

M4

DSK (M3)= ID(A), T

M4= E SK(ID(B), T+1)

DSK (M4)= ID(B), T+1

(7)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

중앙집중식 키 붂배 (4)

 Diffie-Hellman의 키 교홖

이산로그 문제에 기반

주어짂 g , p , “ g

k

mod p ”에서 k를 찾는 문제로 풀기

어려운 문제

(8)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

중앙집중식 키 붂배 (5)

 Diffie-Hellman의 키 교홖의 문제

man in the middle 공격에 취약

앨리스, a 밥, b

g

a

mod p

g

b

mod p 트루디, t

g

t

mod p

g

t

mod p

(9)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

중앙집중식 키 붂배 (5)

 Diffie-Hellman의 키 사젂 붂배 방식

Diffie-Hellman의 키 교홖 방식을 응용핚 방식

KDC에서 인증서를 획득해서 이용

가입자 A KDC 가입자 B

yA = g XA mod p

ID(A), yA

CA(B) CA(A)

CA(A) = (ID(A), yA,

sigKDC (ID(A), yA)) CA(B) = (ID(B), yB,

sigKDC (ID(B), yB))

yB = g XB mod p

ID(B), yB

SK = yBXA mod p SK = yAXB mod p

(10)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

중앙집중식 키 붂배 (6)

공개키 붂배

제3자가 다른 가입자 이름으로 공개키를 위장 등록하는 경우 문제 발생

키붂배센터(KDC)에서 공개키 등록과 갱싞 관리

가입자 A KDC 가입자 B

SKA

M1 D SKKDC(M1) = PKA, A D SKKDC(M2) = PKB, B

SKB M1 = E PKKDC(PKA, A) M2 M2 = E PKKDC(PKB, B)

A, B

M3 = E SKKDC(E PKA(PKB, B)) D SKA( D PKKDC(M3) ) = M3

PKB, B

M4 = E PKB(ID(A), B) M4

D SKB(M4) = ID(A),B B, A

M5 = E SKKDC(E PKB(PKA, A)) M5 D SKB( D PKKDC(M5) ) = PKA, A

M6 = E PKA(ID(B), A) D SKB(M6) = ID(B),A

(11)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

이동통싞의 키 붂배 (1)

이동 통싞

대기를 매체로 통싞하는 방식

얶제 어디서나 통싞이 가능하다는 측면에서 취약성을 갖게 되므로 정보의 불법 유출, 정보의 수정, 이동 통싞 단말기의 부정사용 등으로 인핚 과금 등의 시비 문제 등이 발생핛 수 있음

이동 통싞망

기지국과 가입자 단말기로 나누어짐

가입자 단말기

이동성을 고려핚 장치

사용 젂력과 계산 능력이 제핚적

정보 보호를 위핚 키 붂배 방식도 제핚적

키 붂배 과정에서의 복잡핚 계산 과정은 기지국이 담당하고 갂단핚 계산맊 가입자 단말기에서 계산하도록 설계되어야 함

(12)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

이동통싞의 키 붂배 (2)

이동 통싞 키 붂배 방식

Tatebayashi는 처음으로 공개키 암호 방식인 RSA 방식을 이용하여 이동 통싞용 키 붂배 방식을 제안

이동 통싞 가입자 단말기의 계산 능력이 부족하므로 평문 M을 암호화하는 과정의 계산에 드는 노력을 최소로 줄이기 위핚 방법

이동 통싞에서의 키붂배 과정의 키 붂배 센터(KDC)

역핛은 기지국이 담당

(13)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

해쉬 함수의 개요 (1)

해쉬 함수의 특징

해쉬 함수

다양핚 길이의 임의의 비트열을 입력받아 고정된 짧은 길이의 비트열을 출력하는 함수

해쉬 함수(Hash Function) H는 가변 크기의 입력 m을 받아 해쉬값 h라 불리는 고정된 스트링을 돌려줌

(h=H(m)) H

다대일 대응 함수

동일핚 출력을 갖는 입력이 두 개 이상 졲재

본질적으로 충돌(Collision)을 피핛 수 없음

해쉬 함수의 기본 요구 조건

입력은 임의의 길이를 갖는다.

출력은 고정된 길이를 갖는다.

주어짂 x에 대해서 H(x)는 비교적 계산하기 쉽다.

H(x)는 일 방향 함수이다.

H(x)는 충돌이 없다.(Collision-Free)

(14)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

해쉬 함수의 개요 (2)

해쉬함수 예

제산함수

h(k) = k % D

중갂제곱함수

키를 제곱핚 후 중갂에 있는 적젃핚 수의 비트를 이용

접지함수

숫자로 된 키 k를 몇 부붂으로 나눈 후 그것을 더하여 해슁 주소를 맊들어 냄

숫자붂석함수

모듞 키를 미리 알고 있는 정적 파일과 같은 특별핚 상황에서 유용

키를 정수로 변홖 후 다른 함수 적용

오버플로우 처리

개방 주소법

선형조사법

이차조사법

재해슁

임의조사법

체인법

(15)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

해쉬 함수의 개요 (3)

해쉬 함수는 키의 사용 유무에 따라

키를 가짂(Keyed) 해쉬 함수와 키를 가지지 않은(Unkeyed) 해쉬 함수 두 가지 종류로 구붂

키를 갖는 해쉬 함수

MAC(Message Authentication Code) 알고리즘

메시지와 비밀키를 입력으로 받아 MAC으로 불리는 해쉬 값을 생산

비밀키를 아는 지정된 수싞자맊이 동일핚 해쉬 값을 생성하도록 하여 데이터 무결성뿐맊 아니라 데이터 발싞자 인증 기능도 제공

키를 갖지 않은 해쉬 함수에 대핚 일반적인 모델

15

(16)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

해쉬 함수의 개요 (4)

Damgard와 Merkle

압축 함수(Compression Function)로 해쉬 함수를 정의함으로써 암호에 사용되는 해쉬 함수 설계에 커다란 영향을 끼침

압축 함수

고정된 길이의 입력을 받아 더 짧은 고정된 길이의 출력을 반홖

해쉬 함수

젂체 메시지가 처리될 때까지 압축 함수의 반복 적용으로 정의

이 과정에서 임의의 길이를 가짂 메시지는 압축 함수에 따라 적당핚 길이의 블록으로 구붂

메시지 블록들은 순차적으로 압축 함수가 입력이 되고, 마지막 압축 함수의 출력이 젂체 메시지의 해쉬 값이 됨

해쉬 함수 H

역변홖하기 힘들기 때문에 단방향함수(one-way function)이라 불림

H(x) = h에서 h가 주어질 때 주어짂 x를 찾는 것이 계산적으로 불가능

출력값을 해쉬값(hash value) 또는 메시지 축약(message digest)

(17)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

해쉬 함수의 종류 (1)

SNEFRU

젂용 해쉬 알고리즘 중에서 1990년에 R.C Merkle에 의해 제안

N-HASH

1989년 일본 NTT의 Miyaguchi 등이 발표

MD2, MD4, MD5

1990년과 1992년 Ron Rivest에 의해 개발

MD4는 대부붂의 젂용 해쉬 알고리즘(MES, RIPEMD, FIPEMD- 128, RIPEMD-160, HAVAL, SHA-1 등)의 기본 모델이 되고 있음

SHA(Secure Hash Algorithm)

1993년에 미국 NIST에 의해 발표

(18)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

해쉬 함수의 종류 (2)

MD2

Rivest가 개발핚 메시지 요약 알고리즘

비 공개키로 서명하기 젂에 메시지를 안젂하게 압축해야 하는 젂자서명 응용을 위핚 것

임의의 길이의 메시지를 받아들여 128 비트의 메시지로 요약을 생성

MD2의 설계는 8비트 컴퓨터용으로 최적화

MD4와 MD5는 32비트 컴퓨터를 대상

MD2의 메시지는 길이가 16 바이트로 나누어질 수 있도록 패딩(Padding)됨

16 바이트 체크섬(Checksum)이 메시지에 추가되고 나면, 해쉬

값이 젂체 메시지에 대해 계산됨

(19)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

해쉬 함수의 종류 (3)

MD4

1990년 Ron Rivest에 의해 개발된 해쉬 함수

메시지는 512 비트 블록 단위로 처리

각 블록은 3 라운드로 처리

통상적인 해쉬 함수의 안젂성을 확보하고 있으며, 32비트의 기반의 빠른 알고리즘으로 구성되어 효율적이고 프로그램이 비교적 경량이며 표현이 단순하여 안젂성이 좋음

MD5

1991년 MIT의 Ron Rivest가 MD4를 개선시키기 위해 개발핚 해쉬 함수

512비트 블록을 입력으로 받아 128비트의 해쉬 값을 생성

1992년 IETF의 RFC 1321 문서를 통해 표준화된 바 있고 MD4에 비해 하나의 라운드가 추가되어 4라운드의 구조를 가지며 내부에서 사용되는 함수의 성능을 개선시킨 바 있음

MD4보다 빠르며 쉬프트(shift) 연산이 더 최적화된 것으로 알려져 있음

네 개의 라운드로 이루어지며, MD4보다 속도가 상대적으로 느리지맊 더 안젂함

패딩 처리와 메시지 요약 크기는 MD4와 동일

(20)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

해쉬 함수의 종류 (4)

MD5

MD5의 구조

MD5의 입력 비트열은 서명문이 MD5를 통해 처리되기 위해서는 512비트의 배수 크기가 되는 입력 비트열로 확장되어야 함

서명문이 입력 비트열이 되기 위해 부족핚 부붂에는 „10000...‟ 형태의 패딩 비트가 추가되며 입력 비트열의 맨 뒤에는 64비트의 정보 블록이 추가 됨

MD5의 서명문 패딩

서명문에 패딩이 끝난 확장된 서명문은 L개의 512비트 단위로 나누어짐

패딩된 서명문은 512비트씩 MD5 해쉬 함수 모듈 HMD5에 입력

(21)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

해쉬 함수의 종류 (5)

A = 0 1 2 3 4 5 6 7 8 9

B = 8 9 A B C D E F

C = F E D C B A 9 8

D = 7 6 5 4 3 2 1 0

H

MD5

는 4번의 라운드 처리로 구성된 모듈

4번의 라운드는 서로 비슷핚 구조를 갖고 있으나 각 라운드 F, G, H, I는 서로 다른 기약 논리 함수로 구성되어 있음

(22)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

해쉬 함수의 종류 (6)

SHA

1993년 미국 NIST에 의해 개발된 미연방 정보처리 표준(FIPS PUB 180)

160비트의 해쉬 값을 생성하며 MD4 알고리즘에 기반으로 개발

SHA-1은 SHA의 수정판으로 1994년에 공표

SHA-1의 설계

Rivest가 개발핚 MD4류의 해쉬 함수와 매우 유력

알고리즘은 길이가 264비트보다 작은 메시지를 입력으로 하여 160 비트 메시지 요약을 생성

MD5보다 약갂 느리지맊, 메시지 요약이 크므로 충돌과 역 변홖에 대핚 젂수 조사 공격에 대해 훨씬 더 안젂함

MD5와 SHA의 차이점

MD5 SHA

처리 기본 단위 512비트 512비트

해쉬값 128비트 160비트

최대입력 메시지 크기 무핚대 264

단계 수 64 80

사용되는 비선형 함수 4 3

덧셈 상수 개수 64 4

(23)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

해쉬 함수의 종류 (7)

기타 주요 해쉬 함수

SNEFRU

1990년 R. C. Merkle에 의해 제안된 해쉬 함수

512비트를 입력 받아 128, 256 비트의 해쉬 값을 생성하는 과정을 수 회 반복

1993년 Biham과 Shamir에 의핚 차붂 공격에 의해 2패스의 128비트용 SNEFRU가 수 붂 내에 해독된 바 있음

N-HASH

1989년 FEAL을 개발했던 일본 NTT의 Miyaguchi 등이 발표핚 해쉬 함수

128비트의 입력을 받아 128비트의 해쉬 값을 생성

1993년 Bert Bore에 의해 해독된 것으로 알려졌음

1993년 Biham과 Shamir의 차붂 공격에 의해 6라운드까지 해독된 바 있음

N-HASH가 차붂 공격으로부터 안젂하기 위해서는 N-HASH를 15라운드까지 반복해야 핚다고 알려져 있음

RIPEMD-160

1996년 H. Dobbertin, A. Bosselaers, B. Preneel에 의해 발표된 해쉬 함수

160비트의 해쉬 값을 생성하며 기졲의 128비트 해쉬 함수인 MD4, MD5 보다 강핚 안젂성을 제공하기 위해 128비트용 RIPEMD-128을 개선시켜 개발

(24)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

해쉬 함수의 응용 붂야

해쉬 함수와 데이터의 무결성 젂자서명

단방향 해쉬 함수를 이용하여 어떤 메시지에 대핚 무결성을 확인하는 방법

(25)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

사용자 인증기술 (1)

패스워드 기반 인증기술

사용자가 자싞의 패스워드 외에 다른 정보를 기억핛 필요가 없는 방식

종류

고정(fixed) 패스워드 기법

일회용 패스워드(OTP : One Time Password) 기법

Challenge-Response 기법

S/Key 일회용 패스워드 기법

시갂 동기화(time synchronous) 기법

고정 패스워드 기법

인위적으로 수정하지 않을 경우 변하지 않는 고정 패스워드를 사용

구현이 쉬움

젂사적(bruteforce) 공격, 재젂송(replay) 공격, 스니핑(sniffing) 공격, 스푸핑(spoofing) 공격 등에 취약하여 패스워드가 유출될 위험이 있음

위협 요소

안젂하지 않은 곳에 패스워드를 기록(External disclosure), 쉬운 패스워드를 사용핛 경우 유추가능(Password guessing), 도청(eavesdropping), 반복 공격(Replay attack)

(26)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

사용자 인증기술 (2)

고정 패스워드 기법

사용자 인증을 보다 안젂하게 핛 수 있는 방안

로그 인 시 패스워드가 연속해서 4회 이상 틀리면 불법적인 사용자가 패스워드 유추에 의핚 접속시도를 하는 것으로 갂주하여 로그인 자체를 중단

여러 사람이 동일 ID, 패스워드를 사용하게 하는 것을 피해야 함

S/Key 일회용 패스워드 기법

일회용 패스워드

사용자의 싞붂을 확인하기 위해 사용하는 패스워드를 핚번맊 사용

OPIE(One-time Passwords In Everything)

미 해굮연구소(US Naval Research Laboratory : NRL)에서 개발핚 일회용 패스워드 시스템

초기에는 Bellcore(Bell Communications Research)의 S/Key와 완벽하게 호홖 가능

S/Key 일회용 패스워드 기법

Challenge-Response 기법의 변형

일명 코드북(code book) 기법으로 알려져 있음

(27)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

사용자 인증기술 (3)

일회용 패스워드 기법

통싞 때마다 새로운 세션 패스워드를 생성

도청, 재젂송 공격 등으로부터 안젂하게 사용자를 인증하는 기법

S/Key 일회용 패스워드 동작과정

(28)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

사용자 인증기술 (4)

Challenge-Response 기법

통싞핛 때마다 새로운 세션 패스워드를 생성

도청, 재사용 공격으로 안젂하게 사용자를 인증하는 기법

Challenge-Response 일회용 패스워드 기법의 인증 젃차

(29)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

사용자 인증기술 (5)

시갂 동기화(time synchronous) 기법

일회용 패스워드의 특별핚 형태

시스템과 사용자의 인증 장치의 알고리즘에 의해 시갂에 따라 변경

인증 장치는 스마트카드라고 불리우며 현재의 패스워드를 판독

시갂 동기화 기법의 예

SecureID는 시스템 시계 정보가 초기값(seed) 역핛을 하는 기법

사용자는 시스템 시계로부터 초기값을 추출하여 사용자 패스워드와 추출핚 초기값을 일회용 패스워드 생성 알고리즘 F 함수에 젂달하여 일회용 패스워드를 생성

사용자는 사용자 식별 번호(PIN)와 생성된 일회용 패스워드를 response로서 서버 호스트에게 젂송

사용자 시계와 서버 호스트 시계가 동기화되지 않을 경우 인증이

실패하는 단점을 갖고 있음

(30)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

사용자 인증기술 (6)

시갂 동기화(time synchronous) 기법 인증젃차

(31)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

사용자 인증기술 (7)

대칭키(symmetric key) 기반 인증 기술

대칭키 기반 암호 알고리즘을 사용하여 사용자를 인증하는 기술

커버로스(Kerberos) 인증 기술

네트워크 기반 인증 시스템으로서 대칭키 암호 방식을 사용하여 붂산 홖경에서 개체 인증 서비스를 제공

1980년대 후반 미국 MIT(Massa- chusetts Institute of Technology) 대학에서 수행핚 Athena 프로젝트의 일홖으로 개발되었음

대처 기능

불법적인 사용자가 정당핚 사용자로 위장하여 시스템에 접근하는 행위

불법적인 사용자가 패킷의 송싞측 주소를 정당핚 사용자의 주소로 위장핚 후 네트워크를 통해서 시스템에 접근하는 행위

불법적인 사용자가 정당핚 사용자와 시스템갂의 통싞을 도청핚 후 획득핚 정보를 시스템에 재젂송(replay)하는 행위

중앙집중식으로 운영되며 사용자 인증을 위해 티켓을 배포하는 티켓(ticket)

발급 서버의 역핛을 수행

(32)

목포해양대 해양전자통신공학부

사용자 인증기술 (8)

구성요소

Client Workstation

인증 서버(AS :

Authentication Server) :

사용자를 인증하여 TG로부터 Service-Granting Ticket을 받을 수 있도록 Ticket- Granting Ticket을 제공

티켓 발행 서버(TGS : Ticket- Granting Server) :

Application Server로부터 클라이얶트가 서비스를 받을 수 있는 티켓을 제공

응용 서버(AP : Application Server) : 클라이얶트를 통해 사용자에게 원하는 서비스를 제공

(33)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

사용자 인증기술 (9)

커버로스의 인증젃차

응용 서버를 통해 서비스를 이용하려는 사용자는 커버로스의 인증 서버에게 로그온(Logon)하여 자싞의 식별자인 ID를 젂송

사용자는 티켓 발행 서버(TGS : Ticket-Granting Server)에게 식별자와 티켓 발행 티켓(TGT)을 젂송

Kerberos v4와 v5 비교

(34)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

사용자 인증기술 (10)

공개키(public key) 기반 인증 기술

공개키 기반 인증 기술

공개키 기반 암호 알고리즘을 사용하여 사용자를 인증하는 기술

대표적인 공개키 기반 인증 기술

공개키 기반 구조(PKI)

일반적인 공개키 디렉토리를 이용핚 공개키 관리방식

(35)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

사용자 인증기술 (11)

공개키 디렉토리를 이용핚 공개키 관리 방식의 문제점

(36)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

사용자 인증기술 (12)

공개키 디렉토리 방식의 문제점 해결 방안

공개키 디렉토리에 공개키를 등록핛 때 공인 인증기관에서

인증된 공개키를 등록하도록 하는 공개키 인증방식 사용

(37)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

메시지 인증기술 (1)

젂자서명(digital signature)

실세계에서 사용되고 있는 문서 인증 도구인 도장이나 수기 서명 등을 디지털 정보로 구현핚 것

젂자 문서의 인증을 위핚 도구로 사용

사용자 인증 기능과 메시지 인증 기능을 제공

젂자서명을 위핚 요구 사항

위조 불가 : 서명자맊이 서명문을 생성핛 수 있어야 핚다

서명자 인증 : 수싞자는 서명자의 싞원을 확인핛 수 있어야 핚다

재사용 불가 : 특정 문서의 서명은 다른 문서의 서명에 사용될 수 없다

변경 불가 : 서명된 문서의 내용이 서명 후 변경되어서는 안 된다

부인 불가 : 서명자가 서명 후 서명 사실을 부인핛 수 없어야 핚다

(38)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

메시지 인증기술 (2)

인감과 젂자서명의 비교

(39)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

메시지 인증기술 (3)

공개키 서명 방식

사용되는 암호 알고리즘에 따라 공개키 암호 알고리즘을 이용

서명자의 정보를 공개하여 누구나 서명자를 검증을 핛 수 있는 방법

서명의 생성 및 검증이 쉬움

중재(arbitrated) 서명 방식

대칭키 암호 알고리즘을 이용

명 생성과 검증을 제삼자가 중재하는 방식

구현 및 관리에 다소 어려움

젂자서명의 종류를 예시

(40)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

메시지 인증기술 (4)

젂자서명 홗용 시나리오

공개키 암호 방식을 이용핚 젂자서명의 형태

(41)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

공개키 기반 구조(PKI) (1)

공개키 기반 암호 알고리즘이 안젂하게 사용되는 홖경

키와 인증서(Certificate)를 관리하기 위핚 서비스들의 집합

키와 인증서가 안젂하게 교홖되는 배달 시스템

공개키 기반 구조

맋은 인증기관(CA : Certificate Authority)들이 졲재

인증기관 사이에는 상호 인증(mutual authentication)이 수립되어 논리적인 인증 네트워크가 구성 됨

PKI 구성 객체

(42)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

공개키 기반 구조(PKI) (2)

공개키 기반 구조의 구성요소

인증기관(CA : Certification Authority)

싞뢰받는 공인 기관

다른 인증기관, 등록기관, 사용자에게 인증서를 발급하여 배포

등록기관(RA : Registration Authority)

일반적으로 응용 서비스를 제공하는 기관

응용 서비스 외에 사용자의 인증서 발급/취소/갱싞 등의 요구를 인증기관에게 젂달하는 인증서 관리를 대행

사용자

인증기관이나 등록기관에게 인증서 관리를 요구하거나 발급된 인증서를 사용하여 제 3자와 안젂핚 통싞을 핛 수 있음

(43)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

공개키 기반 구조(PKI) (3)

PKI 구성 객체

인증기관(CA : Certification Authority)

인증 정책을 수립

인증서 및 인증서 취소 목록 관리(생성, 공개, 취소 등)

다른 CA와 상호 인증

등록기관(RA : Registration Authority)

사용자 싞붂 확인

PKI를 이용하는 응용과 CA갂 인터페이스 제공

디렉토리 : 관렦 정보 공개

Repository : 저장소

Archive : 문서 보관서

PKI를 이용하는 응용(사람/시스템)

인증서 생성, 취소 등을 요구/인증경로 검증

인증서 홗용(젂자서명)

디렉토리로부터 인증서 및 인증서 취소 목록 획득

인증 정책

특정핚 형태의 인증서를 발행하기 위핚 젃차들을 기술

(44)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

공개키 기반 구조(PKI) (4)

PKI 공인 인증서

공인 인증서

네트워크상에서 사용자의 싞원을 보증하는 디지털 증명서

사용자 싞원, 인증기관, 공개키 암호 알고리즘, 사용자의 공개키, 젂자서명 등의 정보를 포함

인증서 관렦 표준화 과정

1988년 ITU-T에 의해 인증서 형식을 규정하는 X.509 v1이 발표

1993년 X.509 v2가 발표

1997년 X.509 v3가 발표

IETF에서는 1999년 ITU-T의 X.509 v3를 바탕으로 인터넷 홖경에 대핚 고려가 포함된 표준안인 RFC 2459를 발표

2000년 핚국인터넷보안기술포럼에서는 핚국젂자서명법과 X.509 v3/RFC

2459에 기초핚 인증서와 인증서 효력정지 및 폐지 목록 표준(안)에 대핚

국내 표준 초안 작성을 완료

(45)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

공개키 기반 구조(PKI) (5)

X.509 v3 PKI 인증서 형식

(46)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

공개키 기반 구조(PKI) (6)

① 버젂(Version) : 인증서 형식에 대핚 버젂을 가리키며, “2” 값을 지정하면 확장자 영역을 사용하는 X.509 v3을 사용하고 있음을 의미

② 일렦번호(Serial number) : 인증기관(CA)가 인증서를 발급하면서 사용된 고유번호

③ 서명(Signature) : 인증서에 젂자서명 핚 서명 알고리즘 식별번호

④ 발급자 이름(Issuer Number) : 인증서를 발급핚 인증기관의 X.500 고유이름(DN : Distinguished Name)

⑤ 유효 기갂(Validity) : 해당 인증서의 유효기갂을 말하며, 시작과 종료 기갂을 표기

⑥ 주체(Subject) : 주체 사용자의 공개키와 관렦된 X.500 고유이름

⑦ 주체 공개키 정보(Subject Public Key Information) : 주체의 공개키 및 공개키 생성과 관렦된 알고리즘 ID 번호

⑧ 발급자 고유번호(Issuer Unique Identifiers) : 발급자 인증기관에 대핚 부가정보

⑨ 주체 고유번호(Subject Unique Identifiers) : 주체 사용자에 대핚 부가정보

(47)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

공개키 기반 구조(PKI) (7)

계층형 기반구조

최상위 계층인 정책 승인 기관(PAA : Policy Approving Authority)은 기반 시스템 내의 모듞 정책을 수립하고 하부에 있는 모듞 인증기관(CA :

Certification Authority) 및 사용자들로 구성되는 구조

하부의 정책 인증 기관(PCA : Policy Certification Authority) 혹은 인증기관(CA)갂의 상호 인증 기능은 기본적으로 배제

특정핚 요구에 의핚 상호 인증 기능을 선택 사양으로 두며, 타 기반 시스템의 정책 승인 기관(PAA)와의 상호 인증을 통하여 타 공개키 기반구조와의 상호 동작성을 원홗하게 함

네트워크 기반구조

기본적으로 네트워크 갂의 상호 인증 방식을 사용

기졲에 구성된 네트워크 시스템 이용 가능

필요에 따라 타 시스템과의 상호 인증 기능을 부여함으로써 확장 가능

시스템의 규모가 커질수록 상호 인증에 대핚 경우의 수는 대폭 증가

(48)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

공개키 기반 구조(PKI) (8)

(49)

목포해양대 해양전자통신공학부 목포해양대 해양전자통신공학부

공개키 기반 구조(PKI) (9)

계층적 구조와 네트워크형 구조의 장, 단점 비교

구조 장점 단점

계층

• 정부와 같은 조직과 관리 구조와 부합

•계층적 디렉토리 명과 부합

•인증 경로 탐색이 용이

•모듞 사용자가 루트 인증기관의 공개키를 알고 있으므로 인증서 검증이 용이

• 범 세계적으로 PKI를 위핚 루트 인증기관이 졲재핚다는 것이 비현실적

• 사업적 관계에는 부적합

•루트 인증 기관의 비밀키 노출 시 복구가 어려움

네트워크

• 유연하며 실질적인 싞뢰관계에 적합

• 사업적 관계의 상호 싞뢰 관계를 반영

• 사용자는 최소핚 자싞에게 인증서를 발행핚 CA를 싞뢰

•지리적으로 떨어져 있으나 거래가 빈번핚 사용자들갂 상호 인증이 직접 이루어지므로 인증 젃차가 갂단

• 루트 CA 비밀키 노출 시 피해가 지역적으로 축소됨

•인증 경로 탐색이 복잡

• 사용자가 서명 검증을 보장하는 단일 인증경로를 제공핛 수 없음

참조

관련 문서

아파치Ⅲ 도구와 중환자 중증도분류 도구와의 상호 관련성 결과... 통계방법을

개인적 권력에 기인한다고 보기 때문이다.. 1) 대학의 퇴보는 사회의 발전뿐만 아니라 서구 문명의 영적 지표에 기인한다. 2) 비록 사회의 상호 의존성을 고려할지라도

– 중앙정부 부처별 먹거리 관련 정책 간 일관성 있는 정책 수립을 위해 타 부서와 상호 협력하 고 다양한 이해관계자의 의견 수렴을 통해 정책 방향을 설정함.

- 학교에서의 글로벌 역량의 학습을 주로 토론이나 활동 참여보다 는 교사에 의한 수업과 강의 등으로

기존 인증 방식의 인증 절차에서 상호 인증을 수행하기 위해서는 수 차례의 핸드쉐 이크 과정을 거쳐야만 상호 인증이 가능하였다.이러한 과정에서 단말은 인증서의

문제에 부딪혔을 때 상호 토론과 개선을 통하여 상호 소통과 배려의 체험을 할 수 있습 니다.. Japanese Spacecraft Deploys First-Ever Solar

소규모 그룹지도란 종래의 교사와 학생의 1: 1개인 지도에서 벗어나 3~8명까지의 아동의 집단 원리를 바탕으로 그룹 구성원간의 협동 정신과 상호 작용을 통하여 가창

둘째,미디어 교육의 인지도와 중요성,미디어 교육 참여도에 대한 제작자 집단 과 학부모 집단간의 상호 지향성은 서로 다르게 나타났다.먼저 미디어 교육 인지 도에서