15
상용 보안키 사용 방안 (Sentinel Hardware Keys) 2009.03.09 시스템팀 김종혁 과장

Sentinel Hardware Keys

Embed Size (px)

DESCRIPTION

In order to lease our product, how to use Sentinel Hardware Keys.

Citation preview

Page 1: Sentinel Hardware Keys

상용 보안키 사용 방안(Sentinel Hardware Keys)

2009.03.09시스템팀

김종혁 과장

Page 2: Sentinel Hardware Keys

1. 도입배경

2. 주요특징

3. 기본기능

4. 배포기능

5. 갱신기능

6. 가상구성

목 차

Page 3: Sentinel Hardware Keys

본사 자체 개발 스마트 키의 취약점 보완

제공된 인터페이스 사용으로 빠른 개발 속도

전문 회사의 제품으로 높은 완성도 기대

도입배경

Page 4: Sentinel Hardware Keys

주요특징

ECC(상용공개키방식) 알고리즘탑재

데이터암호/복호에 128비트AES 사용

쿼리-응답보호에AES 알고리즘사용

실행파일과센티널키사이의보안터널사용

ECC 키쌍과AES 비밀키랜덤값생성

윈도우/리눅스공용 SDK 제공

Page 5: Sentinel Hardware Keys

기본기능 - API

String –출력가능한 256 ASCII 문자

Raw Data –개발자가정의한 256 바이트데이터

Integers – 8, 16, 32 비트의숫자데이터

Boolean –참/거짓데이터

Counter – 0부터 4,294,967,295까지의카운트다운

AES –AES 알고리즘기반의데이터암호/복호

ECC – ECC 알고리즘기반의 디지털서명 / 검증

Page 6: Sentinel Hardware Keys

기본기능 – 예제

MachineID : BJ_MX (String)MachineType : MT (String)LeaseDate : 2008.3.31 (AES)

Lease Date - 메뉴얼 인용

RTC 기반의 센티널 키는 임대된 프로그램의 사용내역 추적을 위한 정확한 날짜와 시간을 가르키는 내부 real-time 클럭을 포함하고 있다. real 클럭은 시스템 시간과 독립적인 시간 트랙으로 유지된다. – 시간 공격에 가장 효과 적인 대응 수단을 제공함.

Page 7: Sentinel Hardware Keys

배포기능 - 예제

배포자키에제한된사용자키의생성권한을부여함으로써, 중간배포자는본사가정한범위내에서일정부분권한을갖는다.

Distributor Key와 License Group File은 한쌍으로써, 라이센스 그룹파일의내용을 해당 배포키를 통하여 10번의유저키 생성 권한 부여.

Page 8: Sentinel Hardware Keys

갱싞기능

원격업데이트기능은이미고객이나중간배포자가사용중인보안키를갱싞하는 방법을 제공한다. 사용자는 보안키의 정보가 담긴 Request code를생성하여, 이메일이나 웹을 통하여 본사에 젂달하고, 본사는 Request code에대응하는새로운Update code를제공한다.

Page 9: Sentinel Hardware Keys

갱싞기능 - API

/****************************************************************************** SecureUpdate.h** Description: Contains the function prototypes for the exported API's to End User.*******************************************************************************/

#include "SentinelKeystypes.h"

unsigned short SFNTGenerateRequestCode ( SP_IN SP_DWORD DeveloperID,SP_IN SP_DWORD licenseID,SP_OUT SPP_BYTE requestBuffer,SP_INOUT SPP_DWORD bufferSize);

typedef unsigned short (*TSFNTGenerateRequestCodeFnPtr)(SP_DWORD DeveloperID,SP_DWORD licenseID,SPP_BYTE requestBuffer,SPP_DWORD bufferSize);

unsigned short SFNTApplyUpdateCode ( SP_IN SPP_BYTE updateCode,SP_IN SP_DWORD size);

typedef unsigned short (*TSFNTApplyUpdateCodeFnPtr)(SPP_BYTE updateCode,SP_DWORD size);

Page 10: Sentinel Hardware Keys

갱싞기능 – Req. 생성

[root@jhkim-rhel4 LeaseDate]# ./a.out

Sentinel Keys 1.0.2 Demonstration ProgramCopyright (C) 2006 SafeNet, Inc.

Status: Cycle number 1:

Machine Type : MTMachine ID : BJ_KRLease Date : 2009/3/31 - 23:59:58

[root@jhkim-rhel4 SecureUpdateUtility]# echo Req | ./SecureUpdateUtility -r-------------------------------------------------------------------------------

Secure Update UtilitySentinel Keys 1.0.2

Copyright (C) 2006 SafeNet Inc. All rights reserved.-------------------------------------------------------------------------------Enter the filename:Request Code Successfully written to Req.req

유효기갂이 얼마 남지 않은 사용자가 보안키의 유효기갂을 연장하기 위하여,Req.req 파일을 생성하여 메일/웹 등을 통하여 본사에 전달한다.

Page 11: Sentinel Hardware Keys

갱싞기능 – Upd. 적용

[root@jhkim-rhel4 SecureUpdateUtility]# ./SecureUpdateUtility -u ~/Update.upw-------------------------------------------------------------------------------

Secure Update UtilitySentinel Keys 1.0.2

Copyright (C) 2006 SafeNet Inc. All rights reserved.-------------------------------------------------------------------------------Success!

[root@jhkim-rhel4 LeaseDate]# ./a.out

Sentinel Keys 1.0.2 Demonstration ProgramCopyright (C) 2006 SafeNet, Inc.

Status: Cycle number 1:

Machine Type : MTMachine ID : BJ_KRLease Date : 2009/6/30 - 23:59:58

본사 또는 중갂 배포자로부터 전달받은 Update.upw 파일을 이용하여 사용자가직접 보안키의 유효기갂을 연장한다.

Page 12: Sentinel Hardware Keys

SECURE KEY

가상구성 – 키 내부

S/N - 내장

TITLE - 발급

VERSION - 발급

TIMER - 갱신

LEASE - 발급

SYSINFO - 생성 설치인증

SYSKEY=SN+TITLE+VER.+α

SN=내장TITLE=정의VERSION=정의

AUTHKEY (사용자입력)

SYSINFO 저장

인증장비

TIMER=시스템시간

SYSINFO = 저장된값GETSYSI = 하드웨어

Page 13: Sentinel Hardware Keys

가상구성 – 웹 연동

USER 4

DIST 1

MASTER

DIST 2

USER 3USER 1 USER 2

MT/BJ (SK: 110)

MT/BA (SK: 111)

• 각 제품은 고유한 SYSKEY를 갖는다.• 각 제품은 사용자나 배포자에 의해서 설치, 갱신 된다.• 각 제품은 마스터의 승인 하에 상위권자가 변경될 수 있다.

Page 14: Sentinel Hardware Keys

가상구성 – 설치 과정

제품정보 입력 :

SYSKEY : ABCD-EFGH-IJKL-MNOPTITLE : MT4VERSION : BlackJack R2USER : LUCKY CASINODIST : LUCKY DISTRIBUTOR----------------------------------AUTHKEY : 1234-5678-9012 (자동생성)

제품 SYSKEY에 대응하는AUTH KEY 정보를 본사/배포자에게 요청하여 설치를진행한다.

발급받은 DIST ID를 통하여, 인증서버에 접속하여,AUTHKEY를 조회한다.

Page 15: Sentinel Hardware Keys

가상구성 – 갱싞 과정

유효기간 연장을 위한 기계별Req 파일을 생성, 수집하여 중간배포자 혹은 본사에 접수하고대응되는 Update 파일을 다운받아 기간을 연장한다.

업데이트 요청 파일을확인하고, 업데이트 파일을 생성하여 사용자가다운로드 할 수 있도록인증 웹사이트에 등록한다.