XML 보안 서비스 게이트웨이 개발

Download Report

Transcript XML 보안 서비스 게이트웨이 개발

XML 보안 서비스 게이트웨이 개발
- XML 키 관리 시스템 -
발표자 : 김유나 ([email protected])
참여인력
김유나(박사04), 김하원(석사03), 김병준(석사03),
신일식(석사04), 이소영(석사04), 박준영(석사04)
HPC
목차

프로젝트 개요
– 프로젝트 목표 및 필요성
– 활용방안



세부 내용 – Trust services
개발 환경
구성도
– 전체 시스템 구성도
– Trust service architecture
– Client API architecture


HPC
프로젝트에 필요한 기술
데모
2/16
프로젝트 목표
HPC

기존의 PKI (Public Key Infrastructure) 의 복잡한 기능
을 단순화 할 수 있는 XML기반의 키 관리 시스템을
Web service 형태로 개발하고, 이 service 의 client를
API 형태로 개발한다.

XML 기반의 키 관리 스펙은 W3C에서 표준으로 채택한
XKMS 2.0을 따른다.
3/16
연구 개발의 필요성

XML 트래픽의 증가
– 웹서비스, B2B(ebXML) 등 XML 메세징의 기업 표준 인프라 활용 대세

XML에 있어서의 Security Issue
– 웹을 이용한 기업 내부 프로세스의 노출(SOAP over HTTP)

XML 기반의 종합적인 security service를 제공하는 제품 군의 시장 요구
증가

XML 기술을 이용한 Security 분야 표준화
– XML digital signature, XML encryption, XKMS, SAML, XACML 등

PKI를 대체할 XML 기반 기술 요구
– 대부분의 XML 보안기술은 PKI 가 구축된 것을 전제로 수행됨
– 기존 PKI 구조가 가지는 복잡한 키 관리 역할을 단순화
– SOAP 메시징을 이용하여, 기존의 Web service와 연동
HPC
4/16
활용방안
HPC

ebXML 전자거래 시스템과 연동하여 전자서명을 원활
히 수행하기 위한 XKMS 키 관리 시스템으로 활용하며
타 시스템과의 연동에 이용.

IT 환경이 XML 기반의 표준 플랫폼으로 변화하고 있어,
상용화 시 웹 서비스 및 포탈 등 XML을 기반으로 한 프
로젝트에 보안 프레임워크로 활용
5/16
Trust Services

XKRSS(XML Key Registration Service Specification)
– Register : 키 등록 및 인증서 발급
– Revoke : 키 삭제 및 인증서 폐기
– Reissue : 인증서 재발급
– Recover : 개인키 복구

XKISS(XML Key Information Service Specification)
– Locate : 공개키 정보 검색 및 찾기
– Validate : 키의 유효성 및 인증서 유효성 검증

X-Bulk (XML Key Management Specification Bulk Operation)
– Bulk register : 복수개의 키 등록 및 인증서 발급
– Bulk revoke : 복수개의 키 삭제 및 인증서 폐기
HPC
6/16
개발 환경







Java Development Kit : JDK 1.4.2
XML Parser : Xerces 2.4.0
XSLT processor : Xalan 2.5.0
JCE : Bouncy Castle JCE 1.19
Web Application Server : Tomcat 4.1.29
Web services toolkit (SOAP) : Axis 1.1
OpenLDAP Interface : JNDI 1.2
– Naming 및 directory service에 대한 인터페이스를 정의하는 JAVA API
– JDK1.4.2에 포함되어 있음




HPC
OCSP API : Bouncy Castle JCE 1.19
Service DB : Berkely DB
관리자 UI : JSP
XML 전자서명 및 XML 암호화 library : HPC xmlsec 2.6.2
7/16
전체 시스템 구성도
기존 PKI
OCSP
CA
LDAP
CMP
Agent
Layer
SPKI
Agent
validate
Service DB
Key/인증서 탐색
X509
Agent
register b-register
revoke b-revoke
reissue
Trust Service
XKMS
PGP
Agent
locate
설정 및 관리
관리자 UI
Client
HPC
8/16
Trust Service Architecture
Client
SOAP MSG
AXIS
XKMS Service
Register Revoke
Reissue
Recover
BulkRevoke
BulkRegister
XKRSS
Configure
PKI Agent
XMLSEC
Handler
Handler
SOAP-RPC
PKI
Agent
HPC
XKISS
Locate
Validate
PKIListener
DBParser
XKMS Message
Parser
DB Handler
Local
XMLDB
LDAP
API
LDAP
OCSP
API
OCSP
9/16
Client API Architecture
Application
Interfacing
XKISS/XKRSS Interface
XKMS
Message Parser
XMLSEC
AXIS
SOAP MSG
Trust Service
HPC
10/16
프로젝트 수행에 필요한 기술





HPC
XML 문법 및 Schema 기술 방법
PKI에 관한 기본적인 지식
SOAP 프로토콜 및 Web Service 에 관한 기본 지식
XML 전자서명 및 XML 암호화에 관한 표준
Java programming
11/16
데모 환경
XKMS server machine
Toy machine
LDAP
SOAP: XKMS spec
XKMSTS
LDAP
OCSP
OCSP
client
PKIListener
PKI toy agent
SOAP RPC
Mail



HPC
XKMS server machine : hpcfs.postech.ac.kr
Toy machine : lostmyth.postech.ac.kr
UI address : http://hpcfs.postech.ac.kr:8080/xkms/
12/16
Register (Reissue) 순서
1) keyname, authcode 저장
2) Register(Reissue) request
4) Generate
certificate
GUI
3) Register(Reissue) response
Client
6) Pending request
TS
PAH
7) Pending response
Notify
5) Send mail for completion
HPC
13/16
Locate 순서
1) TS의 DB에 등록되어 있는 경우
GUI
1) Locate request
Client
2) Locate response
TS
PAH
Notify
2) TS의 DB에 등록되어 있지 않으면서, DN을 포함한 요청인 경우
2) Locate
GUI
1) Locate request
Client
3) Locate response
TS
PAH
LDAP
Notify
HPC
14/16
Recovery 순서
1) keyname, authcode 저장
2) Recovery request
GUI
3) Recovery response
Client
5) Pending request
TS
PAH
6) Pending response
Notify
4) Send mail for completion
HPC
15/16
Revoke 순서
1) keyname, authcode 저장
2) Revoke request
4) Revoke
certificate
GUI
3) Revoke response
Client
6) Pending request
TS
PAH
7) Pending response
Notify
5) Send mail for completion
HPC
16/16