기술분야별 분류
생활필수품
차량 / 처리조작
화학 / 바이오 / 야금
섬유 / 지류
건축 / 구조물
기계 / 무기 / 조명
물리학 / 정보저장
전기 / 전자 / 통신
상표 / 디자인

전기 / 전자 / 통신

인증서를 이동 단말기로 전송하는 방법

본 발명에 의한 이동 단말기로 인증서 전달하는 방법은 인증코드의 발생을 이동 단말기에서 직접 이루어지게함으로서

1) 사용자를 배려한 편의성을 높이고,

2) 인증서를 중계해주는 서버에는 인증서 암복호화에 대한 어떠한 정보도 가지고 있지 않게 하고, 인증서와 개인키의 어떠한 정보도 서버에 남기지 않아, 보다 안전한 보안성을 제공한다.

3) 또한, 공인 인증서의 고정 단말기와 이동 단말기 간의 키 공유를 통한 인증서 암호화/복호화 처리를 통해 보다 안전한 암호화를 수행하는 효과가 있다.

 

 

이동 단말기를 사용한 무선인터넷의 사용은 최근 급격히 증가하고 있다. 또한, 스마트 폰과 같은 이동 단말기를 이용하여 은행 거래 등의 금융 거래가 많이 증가하고 있다. 이와 같은 금융거래를 하기 위해서는 공인 인증서가 필요하게 되어, 사용자 PC 등의 고정 단말기에 위치한 공인 인증서를 이동 단말기로 이동시켜야 할 필요성이 증대되고 있다.

 

한국특허 출원번호 10-2004-0070585 "이동통신 단말기를 이용한 공인 인증서 관리방법 및 사용자 인증 방법"은사용자의 네트워크 단말기에 저장된 공인 인증서를 이동통신 단말기로 내보내기 기능을 수행하고, 상기 공인인증서가 필요한 경우 상기 이동통신 단말기에 저장된 공인 인증서를 전송받아 인증 절차가 이루어지도록 하기위한 이동통신 단말기를 저장매체로서 이용한 공인 인증서 관리방법에 관한 것이다. 하지만 이동통신 단말기의 해당 인증서 관리 모듈을 구동하고 인증서 관리 서버로 전송하기 위해 콜백 유알엘(Callback URL)을 포함하는 SMS가 요구되며, 이동통신 단말기를 단순히 인증서 저장매체로의 역할만 수행한다는 문제점이 있다. 또한 인증서 관리 서버는 이동통신 단말기와 네트워크 단말기 간의 모든 통신을 열람할 수 있기 때문에 악의적인 목적으로 사용될 수 있는 문제점이 있다.

 

또한, 한국특허 등록번호 10-0908242 "고정 단말기에 저장되어 있는 인증서를 이동 단말기로 전송하는 인증서전송 서버 및 시스템 그리고 그 방법"은 인증서 전송 서버를 통하여 상기 모바일 단말기와 상기 고정 단말기를인증하고, 안전한 통신 채널을 설정하여 인증서를 전달하는 내용에 관한 것이다. 하지만, 이는 인증서 전송서버가 인증코드를 발급하고 이 인증코드를 이동단말기로 전송해서 고정 단말기를 인증하는데 사용하므로, 인증코드가 이동하는 문제가 있다. 이러한

인증코드 이동의 과정에서 악의적인 목적으로 사용될 수 있는 문제점이 여전히 존재한다.

 

 

특허기술 설명

 

본 발명에 의한 이동 단말기로 인증서 전달하는 방법은 인증코드의 발생을 이동 단말기에서 직접 이루어지게함으로서

 

1) 사용자를 배려한 편의성을 높이고,

2) 인증서를 중계해주는 서버에는 인증서 암복호화에 대한 어떠한 정보도 가지고 있지 않게 하고, 인증서와 개인키의 어떠한 정보도 서버에 남기지 않아, 보다 안전한 보안성을 이루기 위함이다.

3) 또한, 공인 인증서의 고정 단말기와 이동 단말기 간의 키 공유를 통한 인증서 암호화/복호화 처리를 통해 보다 안전한 암호화를 수행하는 것을 목적으로 한다.

 

상기의 목적을 달성하기 위해 본 발명은 다음과 같은 기술적 특징을 갖는다.

 

인증서 수신 클라이언트 모듈이 설치된 이동 단말기와, 인증서가 저장되어 있고 인증서 전송 클라이언트 모듈이 설치된 고정 단말기와, 고정 단말기로부터 이동 단말기로 인증서를 전송하는 인증서 전송 서버를 포함하는 환경에서 수행되는, 상기 인증서 전송 클라이언트 모듈이 고정 단말기로부터 이동 단말기로 인증서를 전송하는 방법에 있어서, 사용자로부터 상기 인증서 수신 클라이언트 모듈이 랜덤하게 생성한 인증코드 및 사용자 식별정보를 입력받는 제1 단계; 상기 인증코드에 기초하여 상기 저장된 인증서를 암호화하는 제2단계; 상기 암호화된 인증서 및 사용자 식별정보를 인증서 전송 서버에 전송하는 제3 단계를 포함한다.

 

1 단계를 수행하기 전에, 웹 브라우저를 통해 인증서 전송 서버 접속을 요청하는 단계를 더 포함한다.

 

상기 제1 단계를 수행한 후, 사용자로부터 인증서 암호 또는 이동 단말기용 신규 인증서 암호를 입력받는 단계를 더 포함하고, 인증서 암호 또는 이동 단말기용 신규 인증서 암호로 인증서를 PKCS#12로 변환하고, 그 이후 상기 인증코드의 해쉬(hash)값을 해쉬함수를 이용해서 출력된 값 중에서 일부를 추출하여 암호화키 또는 초기 벡터값으로 사용하여, 상기 변환된 PKCS#12를 암호화한다.

 

상기 해쉬함수를 이용해서 출력된 값이 32 바이트(Byte)보다 작은 경우, 출력값을 가지고 랜덤하게 조합해서암호화키 또는 초기 벡터값으로 사용하여, 상기 변환된 상기 변환된 PKCS#12를 암호화하는 것이다.

 

또한, 암호화에 사용되는 알고리즘은 대칭키 알고리즘 SEED 블록 암호 알고리즘이다.

 

인증서 수신 클라이어트 모듈이 설치된 이동 단말기와, 인증서가 저장되어 있고 인증서 전송 클라이언트 모듈이 설치된 고정 단말기와, 고정 단말기로부터 이동 단말기로 인증서를 전송하는 인증서 전송 서버를 포함하는 환경에서 수행되는, 상기 이동 단말기가 고정 단말기로부터 인증서를 전송받는 방법에 있어서, 랜덤하게 생성된 인증코드를 이동 단말기에 현출(現出)하는 제1 단계와; 사용자로부터 사용자 식별정보를 입력받는 제2 단계와; 사용자가 상기 고정 단말기에 입력한 상기 인증코드에 기초하여 암호화되어 상기 인증서 전송서버로 전송된 인증서를 상기 인증서 전송 서버로부터 전송받는 제3 단계와; 사용자로부터 전송받은 인증서의 암호를 입력받는 제4 단계와; 상기 입력받은 인증서 암호가 유효한 경우, 전송받은 암호화된 인증서를 복호화하여 이동 단말기에 저장하는 제5 단계를 포함한다.

 

상기 제5 단계의 복호화과정은, 상기 랜덤하게 생성된 인증코드의 해쉬값을 상기 고정 단말기와 동일한 해쉬 알고리즘을 이용해서 얻은 후, 그 값 중 고정 단말기와 동일한 방법으로 일부를 추출하여 복호화 키로 사용하여 복호화하는 것이다.

 

상기 제2 단계 이후, 상기 입력받은 사용자 식별정보를 암호화하여 상기 인증서 전송 서버로 전송하는 단계를 더 포함한다.

 

이하 도면을 참조하여 본 발명에 대하여 구체적으로 설명하기로 한다.

 

1은 본 발명이 수행되는 환경의 도식도이다.

1)


 

  

인증서 수신 클라이언트 모듈이 포함된 이동 단말기가 금융기관서버의 인증서 전송 서버와 통신을 수행하고, 인증서와 인증서 전송 클라이언트 모듈이 포함된 고정 단말기와 인증서 전송 서버간에 통신을 수행하는 환경이다. 다만, 인증서 전송 서버는 금융기관에 한정되는 것은 아니다. 특허청 등 인증서를 사용하는 기관의 서버는 모두 포함될 수 있다.

 

2는 본 발명이 작동하는 환경에 대한 흐름도이다.

2)


 

 

사용자는 스마트폰 등 이동 단말기의 인증서 수신 클라이언트 모듈(프로그램)을 실행시키고 인증서 가져오기 기능을 선택한다(S100). 인증서 수신 클라이언트 모듈은 화면에 16자리의 랜덤한 인증코드를 생성하여 출력하고(S101), 주민등록번호 등의 사용자의 식별정보를 입력받는다(S102). 인증코드는 국가정보원 암호검증 랜덤키 생성에 준하는 엔트로피(랜덤 씨드 항목)을 준수하여 랜덤키의 씨드값으로 사용할 시스템 변수를 스마트폰 자체에서 가져와 그 정보를 바탕으로 랜덤한 16자리를 생성하는 것이 바람직하다.

 

이후, 사용자는 고정 단말기에서 거래하는 금융기관의 인터넷 뱅킹 싸이트에 접속하여 인증서 전송 메뉴를 사용해 인증서 전송 클라이언트 모듈을 실행한다(S103). 이 경우 ActiveX 도는 exe실행 클라이언트 형태 둘 다 가능하다.

 

다만, 사용자는 고정 단말기에서 거래하는 금융기관의 인터넷 뱅킹 싸이트에 접속(로그인)을 해도 되고 하지않아도 서비스의 이용이 가능할 수 있다. 따라서 로그인을 하지 않고 바로 인증서 전송에 대한 과정을 처리할 수도 있다.

 

사용자는 인증서 수신 클라이언트 모듈에서 표시된 랜덤한 16자리 인증번호와 주민등록 번호를 고정 단말기를 통하여 입력하고(S104), 전송할 인증서를 선택한다. 사용자가 인증서 전송 버튼을 클릭하면 인증서 암호를 다 시 한번 입력하게 되고, 이어 이동 단말기용 신규 인증서 암호를 입력하게 된다.

 

예를 들어, 인증서 선택 후 전송(혹은 다음) 버튼을 클릭하면 인증서 암호를 입력한 후, 다시 이동 단말기용신규 암호를 입력하게 된다.

 

입력받은 인증서 암호를 이용해서 인증서를 PKCS#12로 만든다. 다만, 인증서 암호는 고정 단말기에 존재하는 인증서 암호일 수도 있고, 이동 단말기용 신규 인증서 암호일 수도 있다. 다만, 고정 단말기에서 PKCS#12로 만드는 데 사용한 것을 후에 이동 단말기에서 동일하게 사용하여야 한다.

 

PKCS#12로 만든 후, 다시 16자리의 인증번호의 Hash값을 Hash함수를 이용해서 출력된 값 중 16 바이트+16 바이트를 추출하여 각각을 암호화 키값 또는 초기 I 벡터값으로 사용한다. 해쉬 알고리즘에 의해 출력값이 위의16 + 16 = 32 바이트보다 작을 경우는 출력값을 가지고 임의로 조합해 16 바이트 + 16 바이트 형태로 만들어사용한다. 이 두값은 PKCS#12 인증서를 다시 암호화하기 위한 키값과 초기 벡터값으로 사용된다. 이렇게 PKCS#12 인증서를 다시 한번 암호화해서 거래하는 금융기관의 인증서 전송 서버의 메모리에 전송한다. 이때 사용자 식별정보를 함께 전달할 수 있다(S105 S106).

 

, 인증서 암호로 인증서와 개인키를 PKCS#12로 변환한다. 그 후 다시 16자리의 랜덤한 인증코드의 hash값을 hash함수를 이용해서 출력된 값중 16byte를 추출하여 암호화키로 사용하여 PKCS#12인증서를 다시 암호화하여 금융기관의 인증서 전송 서버로 전송한다.

 

인증서 암호는 기존 인증서 암호를 요구할 수도 있고, 신규 인증서 암호를 요구할 수도 있다. 여기에서 단말에서 사용할 인증서 암호를 입력받게 되면 전송된 인증서를 단말에서 사용할 때만 이 암호를 사용하게 되며, 입력을 받지 않았을 경우는 기존 인증서의 암호를 공통으로 사용하게 된다.

 

인증서 전송 서버에서는 암호화된 인증서 및 사용자 식별정보를 저장한다(S107).

 

사용자는 이동 단말기의 인증서 수신 클라이언트 모듈에서 인증서 수신 버튼을 클릭하면 입력된 사용자 식별정보를 인덱스 값으로 거래하는 금융기관의 인증서 전송 서버로 전송한다(S108). 이를 전송받은 금융기관의 인증서 전송 서버는 전송된 사용자 식별정보와 동일한 필드의 정보가 있는지를 검색한다(S109). 일치하는 사용자 식별정보가 존재하는 경우, 이에 해당하는 암호화된 인증서를 이동 단말기로 전송한다(S110). 또한, 인증서 전송 서버는 이의 전송 후에 암호화된 인증서 및 사용자 식별정보를 메모리에서 삭제한다.(S113)

 

이러한 과정을 통해 인증서 전송 서버의 메모리에 저장된 암호화된 PKCS#12 인증서가 스마트폰 등의 이동 단말기로 다운로드된다.

 

암호화된 PKCS#12 인증서가 다운로드 되기 직전에, 인증서 수신 클라이언트 모듈은 사용자에게 인증서의 암호를 입력할 것을 요구하게 되고(S111), 사용자가 인증서 암호를 입력하면 복호화 작업을 수행하여 복호화된 인증서를 이동 단말기에 저장하게 된다(S112).

 

이때의 인증서 암호는 인증서 전송시에 입력된 단말기용 신규 인증서 암호를 이용하여 복호화하며 인증서 전송시 신규 인증서 암호를 입력받지 않았다면 기존 인증서의 암호를 그대로 사용하여 복호화하게 된다.

 

인증서 수신 클라이언트 모듈에 다운로드 된 인증서는 16자리 랜덤 넘버의 Hash값중 16자리를 이용해서 복호화하고, 복호화된 PKCS#12 인증서를 인증서의 암호를 이용해서 다시 복호화하여 이동단말기에 저장하고, 인증서 서비스를 이용하게 된다. , 16자리의 인증코드의 hash값을 고정 단말기와 동일한 hash알고리즘을 이용해서 얻은 후, 16 바이트 + 16 바이트 두가지의 형태로 추출하여 복호화 키 또는 초기 벡터값으로 사용하여(고정 단말기와 동일한 방법으로 16byte를 추출하여 복호화 키로 사용하여) 암호화된 PKCS#12를 복호화한다. 그리고 다시 인증서 수신시 이동 단말기에서 입력받은 인증서 암호를 이용하여 PKCS#12 인증서를 복호화하여 이동 단말기에 저장한다.

 

본 발명의 핵심은 S101 단계에서 이동 단말기에서 생성된 16자리의 인증코드를 사용하여, S105 단계에서 고정 단말기에서 암호화를 수행하는 데에 있다. 또한, 다시 암호화된 인증서를 이동 단말기에서 복호화하는 경우에는 상기 16자리의 인증코드가 존재하기 때문에 다른 발명에 비해 그 보완성에서 매우 우수한 효과가 있다.

 

이하, hash 알고리즘 및 암호화 알고리즘에 대해 설명한다. 이동 단말기와 고정 단말기에 저장되어 사용하는 알고리즘은 동일한 알고리즘을 사용한다.

 

사용하는 hash 알고리즘은 국내외 표준 알고리즘을 사용한다. SHA-1, SHA-224, SHA-256, SHA-384, SHA-512 HAS-160 등이다.

 

사용하는 암호화 알고리즘은 대칭 혹은 비대칭 알고리즘 모두 사용이 가능하나, 스마트폰이나 일반 휴대폰에서 암복호화시 대칭키 알고리즘을 사용하는 것이 성능향상에 도움이 되므로 대칭키 알고리즘 SEED 블록 암호 알고리즘을 사용하며 운영모드는 CBC 모드를 사용한다. 이 경우, ECB, CBC, CFB, OFB, CTR 운용모드 모두 사용이가능하며 블록 암호 알고리즘은 ARIA128, 192, 256, SEED AES, DES, 3DES, RC4, RC5 등도 이용이 가능하다.

 

난수 생성기는 표준 해쉬함수 기반 난수 발생기와 표준 블록암호 기반 난수 발생기를 사용한다. FIPS 186-2
Appendix3.1&3.3
항목을 준수하여 아래의 난수 발생기를 지원한다.

 

DSA-PRNG-ARIA128, 192, 256

DSA-PRNG-SEED

DSA-PRNG-SHA1, SHA-224, SHA-256, SHA-384, SHA-512

DSA-PRNG-HAS160

 

이상 첨부 도면을 참조하여 본 발명의 실시예에 대하여 설명하였지만 본 발명의 권리범위는 첨부하는 특허청구범위에 의하여 결정되며, 전술한 실시예에 제한되는 것으로 해석되어서는 아니 된다.

 

또한, 당업자에게 자명하고 특허청구범위에 기재되어 있는 발명의 본질에서 벗어나지 않는, 변경, 개량 내지 수정된 기술도 본 발명의 권리범위에 포함됨이 명백하게 이해된다.

 

 

발명자: 김덕엽, 길용민, 손영진

대리인: 백도현

 

특허 등록번호

10-1100726-0000

 

                                  

표시번호

        

1

출원 연월일 :

2009 11 24

출 원 번 호 :

10-2009-0113751

특허결정(심결)연월일 :

2011 10 31

청구범위의 항수 :

2

유 별 :

H04W 12/00

발명의 명칭 :

인증서를 이동 단말기로 전송하는 방법

존속기간(예정)만료일 :

2029 11 24

2011 12 23일 등록

 

                                  

순위번호

        

1

(등록권리자)

이니텍()

서울특별시 구로구 구로동 ***-** 에이스하이앤드* **

2011 12 23일 등록

 


'인증서를 이동 단말기로 전송하는 방법' 특허 자세히 보기

뉴아이피비즈 제휴문의 이용약관 개인정보보호정책 오시는 길 사이트 맵
홍보: 주식회사 코마나스 해외업무: 대일국제특허법률사무소
서울시 영등포구 당산로 27길 18 진양빌딩 3층
사업자등록번호 : 117-81-77198, 대표 이현구/변리사 이종일
Copyright © 2011~2019 Comanas Co., Ltd all rights reserved.