KR20150106140A - 보안토큰 및 그 동작방법 - Google Patents

보안토큰 및 그 동작방법 Download PDF

Info

Publication number
KR20150106140A
KR20150106140A KR1020140028261A KR20140028261A KR20150106140A KR 20150106140 A KR20150106140 A KR 20150106140A KR 1020140028261 A KR1020140028261 A KR 1020140028261A KR 20140028261 A KR20140028261 A KR 20140028261A KR 20150106140 A KR20150106140 A KR 20150106140A
Authority
KR
South Korea
Prior art keywords
security token
authentication
electronic signature
authentication button
digital signature
Prior art date
Application number
KR1020140028261A
Other languages
English (en)
Other versions
KR101586562B1 (ko
Inventor
국상진
Original Assignee
국상진
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 국상진 filed Critical 국상진
Priority to KR1020140028261A priority Critical patent/KR101586562B1/ko
Publication of KR20150106140A publication Critical patent/KR20150106140A/ko
Application granted granted Critical
Publication of KR101586562B1 publication Critical patent/KR101586562B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/34User authentication involving the use of external additional devices, e.g. dongles or smart cards

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

본 발명은 보안토큰 및 그 동작방법에 관한 것이다. 본 보안토큰은, 인증과 관련된 특정 트랜잭션을 처리할 수 있는 칩이 내장된 본체, 및 본체의 일 영역에 배치된 인증 버튼을 포함하며, 전자서명의 요청시, 인증 버튼이 동작한 경우에만 전자서명 결과값을 출력한다. 본 발명에 따르면, 사용자에 의해 인증 버튼이 동작한 경우에만 정상적인 인증 과정을 수행하도록 하여, 사용자가 인식하지 못한 상황에서 보안토큰이 불법적으로 이용되는 것을 방지할 수 있고, 디스플레이에 표시된 내용을 이용하여 원하는 대상에 서명하고 있는지 확인할 수 있다.

Description

보안토큰 및 그 동작방법{Hardware security module and operation method thereof}
본 발명은 보안토큰 및 그 동작방법에 관한 것으로, 더욱 상세하게는 인증 버튼이 구비되어 보안성이 강화된 보안토큰 및 그 동작방법에 관한 것이다.
보안토큰이란 일반적으로 HSM(Hardware Security Module)을 의미하며 전자서명 키와 같은 중요한 정보를 안전하게 보호하는 역할을 한다. 또한, 안전한 저장 이외에도 키의 생성, 암호연산 등이 기기 내부에서 처리되도록 구현된 하드웨어 기기이다. 이러한 보안토큰은 마이크로프로세서, 운영체제, 보안 모듈, 메모리 등을 자체적으로 갖추고, 특정 트랜잭션을 처리할 수 있도록 집적회로 칩으로 구성되어 있으며, 보안성이 강화되어 피싱이나 해킹 등으로부터 공인인증서 등의 중요 정보의 유출을 방지할 수 기능을 제공한다.
이러한 보안토큰은 공인인증서 유출문제에 대한 해결 방안으로 제시되고 있다. 보안토큰은 USB 형태와 스마트카드 형태 등으로 주로 생산되고 있으며, HSM의 기능을 가지고 있는 SE(Secure Element)까지로 확대되고 있다. USIM, MicroSD 등은 SE로써 HSM의 기능을 수행한다.
한편, 전자서명의 경우 일반적으로 해쉬(hash) 함수를 사용하고 있다. 해쉬 함수의 특성상 원본을 모를 경우 해쉬값 만을 가지고 원본을 추측할 수 없으므로, 서명에 대한 효력 추정이 가능하기 때문이다. 이러한 이유로 전자서명을 하는 경우, 일반적으로 해쉬연산 과정을 거쳐 해쉬연산 결과에 전자서명을 수행한다. 해쉬연산 결과는 입력 값에 의하여 결정되며, 출력 값의 길이는 알고리즘에 따라 고정되어 있다. 일반적으로 한 번의 전자서명 연산이 가능한 길이이다.
그런데, 전자서명 프로그램이 보안토큰을 사용하는 경우, 전자서명 프로그램은 원본 문서를 해쉬하여 보안토큰에 전달하고 보안토큰은 전달받은 해쉬 값에 대하여 전자서명을 수행하기 때문에 보안토큰은 실제로 전달받은 해쉬 값이 원본문서의 해쉬 값 인지 다른 문서의 해쉬 값인지 정확하게 알 수 없다.
또한, 공격 프로그램이나 악성코드의 경우, 인증서를 보안토큰에서 가져갈 수는 없으나, 보안토큰의 PIN 값을 아는 경우 보안토큰에 전자서명을 요청하여 전자서명을 생성할 수 있다. 만일, 보안토큰이 온라인상으로 연결되어 있고 PIN 값을 알고 있는 경우 관리자 모르게 임의로 전자서명을 만들어 낼 수 있는 공격이 가능할 수도 있다. 이러한 공격은 인증서가 유출되었을 때와 거의 동일한 파급 효과를 갖는다. 사용자는 자신의 보안토큰이 전자서명을 하고 있는지 알 수 없기 때문에 심각한 문제를 야기할 수 있다.
또한, 보안토큰을 이용하여 전자서명을 하는 경우에도 원하는 대상에 서명을 하는 것인지 여부를 확인하기도 어렵다. 따라서, 전자서명 시점에 다른 프로그램이나, 프로세스가 끼어들어 전자서명을 대신 요청하게 된다면, 의도하지 않은 다른 문서에 전자서명을 하는 경우도 발생할 수 있다.
그러므로, 사용자가 인식하지 못하는 상황에서 보안토큰이 불법적으로 사용되지 못하도록 보안성을 강화시킬 필요성이 존재한다.
따라서, 본 발명의 목적은, 사용자가 보안토큰의 사용을 인지한 상태에서만 동작 가능하도록 하고, 서명하는 대상이 정확한지 확인 가능한 보안성을 강화한 보안토큰 및 그 동작방법을 제공함에 있다.
상기 목적을 달성하기 위한 본 발명에 따른 보안토큰은, 인증과 관련된 특정 트랜잭션을 처리할 수 있는 칩이 내장된 본체, 및 상기 본체의 일 영역에 배치된 인증 버튼을 포함하며, 전자서명의 요청시, 상기 인증 버튼이 동작시에만 전자서명 결과값을 출력한다.
상기 보안토큰은, 상기 전자서명 요청시, 점등하는 표시등을 더 포함할 수 있으며, 상기 전자서명의 요청시, 상기 전자서명과 관련된 정보를 표시하는 정보창도 더 포함할 수 있다.
또한, 상기 목적을 달성하기 위한 본 발명에 따른 보안토큰의 동작방법은, 본체의 일 영역에 인증 버튼을 마련하는 단계, 전자서명의 요청시, 상기 인증 버튼의 동작 여부를 파악하는 단계, 상기 인증 버튼이 동작한 경우, 전자서명 결과값을 출력하는 단계, 및 상기 인증 버튼이 동작하지 않으면, 인증 과정을 종료하는 단계를 포함한다.
본 발명에 따르면, 본체의 일 영역에 인증 버튼을 배치하여, 전자서명의 요청시 사용자에 의해 인증 버튼이 동작한 경우에만 정상적인 인증 과정을 수행하도록 한다. 또한, 정보창을 마련하여 인증 대상을 명확하게 파악하도록 한다. 이에 따라, 사용자가 인식하지 못한 상황에서 보안토큰이 불법적으로 이용되는 것을 방지할 수 있고, 보안토큰이 적정하게 사용되고 있는지 알 수 있어, 보안성을 더욱 강화시킬 수 있다.
도 1은 본 발명의 일실시예에 따른 보안토큰의 외형을 나타낸 도면,
도 2는 본 발명의 다른 실시예에 따른 보안토큰의 외형을 나타낸 도면,
도 3은 본 발명의 또 다른 실시예에 따른 보안토큰의 외형을 나타낸 도면, 그리고
도 4는 본 발명의 일실시예에 따른 보안토큰의 동작방법에 대한 설명에 제공되는 신호 흐름도이다.
이하에서는 도면을 참조하여 본 발명을 보다 상세하게 설명한다.
도 1은 본 발명의 일실시예에 따른 보안토큰의 외형을 나타낸 도면이다.
도 1을 참조하면, 본 보안토큰(100)은 USB 형태의 본체(110)와, 본체(110)의 일 영역에 배치된 인증 버튼(120)을 포함한다.
본체(110)에는 마이크로프로세서, 운영체제, 보안 모듈, 메모리 등을 자체적으로 갖추고, 전자서명과 같은 특정 트랜잭션을 처리할 수 있도록 집적회로 칩이 내장되어 있다.
인증버튼(120)은 전자서명 요청에 대한 사용자의 인증을 확인하는 기능을 수행한다. 즉, 전자서명 요청 시점에 사용자에 의해 인증 버튼(120)이 푸시 또는 터치 조작 등에 의해 동작하게 하면, 정상적인 인증과정이 수행되도록 하고, 인증 버튼(120)이 동작하지 않은 경우에는 정상적인 인증과정을 수행하지 않고 종료하도록 한다.
이와 같은 동작에 의해, 백그라운드(Background) 프로세스 등과 같이 사용자가 인식하지 못하는 상황에서 전자서명이 수행되는 것을 방지할 수 있다.
또한, 전자서명 요청시, 미리 설정된 시간 내에 인증 버튼(120) 동작한 경우에만 정상적인 인증과정이 수행되도록 구성할 수도 있다. 예컨대, 전자서명 요청 후, 3초 이내에 인증 버튼(120)이 동작하지 않으면, 정상적인 인증과정이 수행되지 못하도록 설정할 수 있다.
보안토큰(100)의 USB 형태가 아니라, IC 칩으로 구현된 스마트카드, 휴대폰에서 사용되는 USIM 또는 메모리 카드 형태인 경우에는, 보안토큰(100)이 설치된 케이스의 외부에서 인증 버튼(120)을 동작시킬 수 있도록 케이스나 인증 버튼(120)을 제작할 수 있다.
도 2는 본 발명의 다른 실시예에 따른 보안토큰의 외형을 나타낸 도면이다.
도 2를 참조하면, 본 실시예에 따른 보안토큰(100)은 표시등(130)을 더 포함한다. 표시등(130)은 인증 버튼(120)이나 인증 버튼(120) 주변에 배치할 수 있다.
이와 같은 구성에서, 전자서명이 요청되는 경우, 표시등(130)이 점등하도록 구성하여, 사용자가 인증 버튼(120)을 푸시 또는 터치하여 동작하도록 유도할 수 있다. 또한, 표시등(130)이 여러 가지 색상을 표시할 수 있도록 하여, 인증의 성공이나 실패 및 기타 동작 상태를 표시등(130)을 통해 나타낼 수도 있다. . .
도 3은 본 발명의 또 다른 실시예에 따른 보안토큰의 외형을 나타낸 것이다.
도 3을 참조하면, 본 실시예에 따른 보안토큰(100)은 정보창(140)을 더 포함한다. 보안토큰(100)의 사용시, 실제 서명 요청이 여러 개가 들어오거나, 공격프로그램이 실제 서명 요청한 내용은 누락시키고 임의로 생성한 다른 내용에 대하여 서명을 수행시킬 수 있다.
이와 같은 공격을 방지하기 위하여, 보안토큰(100)에 세션 번호 등을 표시할 수 있도록 정보창(140)을 추가로 배치할 수 있다.
즉, 보안토큰(100)의 정보창(140)에 연결된 세션 정보를 표시하도록 구현하여, 전자서명 등의 업무를 수행하는 소프트웨어 프로그램에서 보안토큰(100)을 사용하는 경우에 보안토큰(100)과 연결된 세션 값을 보여주고, 보안토큰(100)이 보여주고 있는 세션 정보 값과 같은지 확인하여, 값이 같은 경우 인증 버튼(120)을 눌러 전자서명 등의 업무를 진행하도록 할 수 있다. 또한, 보안토큰(100)은 세션 정보 대신에 실제 처리해야 될 정보 등을 표시할 수 있다.
이와 같이 정보창(140)에 세션 정보 등을 표시하여, MITM(Man in the middle attack) 공격 등에 대하여 방어 기능을 제공할 수 있다.
이외에도 보안토큰(100)에 입력장치를 두어서 PIN 번호 등을 보안토큰(100) 내에서 입력받는다면, 키 보드 해킹 등의 공격을 피할 수 있으며, 자신이 모르는 사이에 백그라운드에서 전자서명이 수행되는 결과를 막을 수 있다.
한편, 보안토큰(100)은 PKCS#11, PC/SC, MSCAPI 등과 같은 표준을 이용하고 있다. RSA사의 PKCS#11의 경우, 보안토큰을 사용하기 위한 API를 정의한 표준으로, 이러한 표준 API를 통해 PC 등과 통신할 수 있다. 하드웨어 벤더들은 보안토큰(100)을 사용하기 위한 드라이버를 제공하고, 이 드라이버는 상위 API를 지원하도록 구현된다.
보안토큰(100)이 PKCS#11을 지원한다면, PKCS#11(Cryptographic Token Interface Standard)을 지원하는 소프트웨어에서 바로 사용이 가능하다. 이는 소프트웨어가 보안토큰(100)을 사용하기 위하여 상위 레벨의 명령을 PKCS#11에서 명시한 방식대로 요청하고, PKCS#11을 지원하는 드라이버가 이를 하드웨어에서 인식할 수 있는 형식으로 바꿀 수 있기 때문이다.
PKCS#11을 이용하여 전자서명을 수행하는 과정은, 일반적으로 보안토큰 연결 및 세션 정보 생성, 세션 정보를 기반으로 저장된 인증서 목록 읽어 오기 등과 같은 여러 가지 기능 수행 등의 과정으로 진행된다. 그리고 전자서명 등과 같은 중요한 기능에 대하여는 PIN 값이 추가적으로 필요하다.
즉, 전자서명을 수행하기 위하여 세션 정보를 생성하고, 보안토큰(100) 안에 저장되어 있는 정보를 읽어 온 후 (일반적으로 저장되어 있는 인증서 정보, 대상 인증서 선택에 사용) 전자서명을 요청하게 된다. 또한, 전자서명을 요청하기 위하여는 PIN 값을 추가로 전달하여 권한을 확인하며, PIN 값이 맞는 경우에 보안토큰(100)은 선택된 개인키(인증서)를 이용하여 전자서명을 수행한다.
도 4는 본 발명의 일실시예에 따른 보안토큰의 동작방법에 대한 설명에 제공되는 신호 흐름도이다.
도 4를 참조하면, 인증 또는 전자서명이 필요한 특정 사이트에 접속하는 경우 등에, 사용자 입력에 따라 인증 과정의 수행을 위해 PC에 설치된 가입자 소프트웨어(200)는 보안토큰(100)으로 PIN 번호와 인증서 비밀 번호를 전송한다(S300).
보안토큰(100)은 전달받은 PIN 번호와 인증서 비밀 번호를 인증하여, 사용자 인증을 수행하고(S305), 인증 결과를 가입자 소프트웨어(200)로 전달한다(S310).
사용자 인증이 완료되면, 가입자 소프트웨어(200)는 전자서명할 메시지를 보안토큰(100)으로 전송한다(S315).
이때, 표시등(130)을 점등하거나, 정보창(140)에 전자서명과 관련된 정보를 표시할 수 있다.
전자서명할 메시지를 전송받은 후, 인증 버튼(120)이 동작하게 되면(S320), 보안토큰(100)은 개인키를 이용하여 전자서명을 수행하여(S325), 서명값과 공인인증서 등을 가입자 소프트웨어(200)로 전달한다(S330). 이때, 개인키는 PC에서 생성하지 않고, 보안토큰(100)에서 생성한다.
만일, 미리 설정된 시간내에 인증 버튼(120)이 동작하지 않으면(S320), 서명값과 공인인증서 등을 전달하지 않고, 인증과정은 종료한다.
가입자 소프트웨어(200)는 보안토큰(100)으로부터 전달받은 서명값과 공인인증서 등을 이용하여, 웹 서버와 필요한 인증 과정을 수행한다.
이와 같은 과정에 의해, 사용자가 인증 버튼(120)을 동작시킨 경우에만, 보안토큰(100)를 이용한 정상적인 인증과정이 수행될 수 있다.
그리고, 본 발명에 따른 보안토큰 및 그 동작방법은 상기한 바와 같이 설명된 실시예들의 구성과 방법이 한정되게 적용될 수 있는 것이 아니라, 상기 실시예들은 다양한 변형이 이루어질 수 있도록 각 실시예들의 전부 또는 일부가 선택적으로 조합되어 구성될 수도 있다.
또한, 이상에서는 본 발명의 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어서는 안될 것이다.
110 : 본체 120 : 인증 버튼
130 : 표시등 140 : 정보창

Claims (8)

  1. 인증과 관련된 특정 트랜잭션을 처리할 수 있는 칩이 내장된 본체; 및
    상기 본체의 일 영역에 배치된 인증 버튼을 포함하며,
    전자서명의 요청시, 상기 인증 버튼이 동작시에만 전자서명 결과값을 출력하는 보안토큰.
  2. 제1항에 있어서,
    상기 전자서명 요청시, 점등하는 표시등을 더 포함하는 보안토큰.
  3. 제1항에 있어서,
    상기 전자서명의 결과값은, 상기 인증 버튼이 기설정된 시간 내에 동작한 경우에만 출력되는 것을 특징으로 하는 보안토큰.
  4. 제1항에 있어서,
    상기 전자서명의 요청시, 상기 전자서명과 관련된 정보를 표시하는 정보창을 더 포함하는 것을 특징으로 하는 보안토큰.
  5. 제1항에 있어서,
    상기 전자서명과 관련된 정보를 표시하는 디스플레이; 및
    상기 전자서명에 필요한 데이터의 입력을 위한 입력 장치를 더 포함하는 보안토큰.
  6. 본체의 일 영역에 인증 버튼을 마련하는 단계;
    전자서명의 요청시, 상기 인증 버튼의 동작 여부를 파악하는 단계;
    상기 인증 버튼이 동작한 경우, 전자서명 결과값을 출력하는 단계; 및
    상기 인증 버튼이 동작하지 않으면, 인증 과정을 종료하는 단계를 포함하는 보안토큰의 동작방법.
  7. 제6항에 있어서,
    표시등을 마련하고, 상기 전자서명의 요청시 상기 표시등을 점등하는 단계를 더 포함하는 보안토큰의 동작방법.
  8. 제6항에 있어서,
    정보창을 마련하고, 상기 전자서명의 요청시, 상기 전자서명과 관련된 정보를 표시하는 단계를 더 포함하는 보안토큰의 동작방법.
KR1020140028261A 2014-03-11 2014-03-11 보안토큰 및 그 동작방법 KR101586562B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020140028261A KR101586562B1 (ko) 2014-03-11 2014-03-11 보안토큰 및 그 동작방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140028261A KR101586562B1 (ko) 2014-03-11 2014-03-11 보안토큰 및 그 동작방법

Publications (2)

Publication Number Publication Date
KR20150106140A true KR20150106140A (ko) 2015-09-21
KR101586562B1 KR101586562B1 (ko) 2016-01-20

Family

ID=54245094

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140028261A KR101586562B1 (ko) 2014-03-11 2014-03-11 보안토큰 및 그 동작방법

Country Status (1)

Country Link
KR (1) KR101586562B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102668238B1 (ko) 2016-12-15 2024-05-23 삼성전자주식회사 전자 장치 및 그 동작 방법

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110087178A (ko) * 2010-01-25 2011-08-02 서정훈 안전한 사용자 인증수단을 가진 usb보안장치 및 인증방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110087178A (ko) * 2010-01-25 2011-08-02 서정훈 안전한 사용자 인증수단을 가진 usb보안장치 및 인증방법

Also Published As

Publication number Publication date
KR101586562B1 (ko) 2016-01-20

Similar Documents

Publication Publication Date Title
US11288371B2 (en) Blockchain-based data processing method, apparatus, and device
CN106656502B (zh) 计算机系统及安全执行的方法
CN101106455B (zh) 身份认证的方法和智能密钥装置
US11025644B2 (en) Data verification via independent processors of a device
KR101878149B1 (ko) 패스워드의 보안 입력 및 처리 장치, 시스템 및 방법
TWI724683B (zh) 電腦實施的用於管理用戶金鑰對的方法、用於管理用戶金鑰對的系統以及用於管理用戶金鑰對的裝置
CN105531664A (zh) 移动通信装置及其操作方法
CN108335105B (zh) 数据处理方法及相关设备
KR20160100151A (ko) 보안 정보의 처리
CN102883324A (zh) 移动终端中的插件调用安全验证方法及装置、移动终端
US20150302201A1 (en) Device and method for processing transaction request in processing environment of trust zone
CN106687985A (zh) 用于基于特权模式的安全输入机构的方法
ES2393220T3 (es) Método y sistema para el incremento de la seguridad en la elaboración de firmas electrónicas mediante tarjeta con chip
CN109614798B (zh) 安全启动方法、装置及终端设备
US10354075B1 (en) Trustworthy indication of software integrity
KR102616421B1 (ko) 생체 인증을 이용한 결제 방법 및 그 전자 장치
KR101586562B1 (ko) 보안토큰 및 그 동작방법
US20220108008A1 (en) Platform health verification
KR20210024070A (ko) 저장된 데이터의 안전한 운행 방법 및 시스템
KR101350438B1 (ko) 모바일기기 내의 se를 이용하는 전자서명 시스템
WO2019244855A1 (ja) 確認システム及び確認方法
CN109309917B (zh) 基于移动端软件密码模块的eID数字身份认证方法及系统
KR20070012106A (ko) 개인용 인증토큰 및 인증방법
TWI628558B (zh) a method of indicating a mobile device operating environment and a mobile device capable of indicating an operating environment
CN110046493B (zh) 一种数据处理方法、装置、设备和机器可读介质

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
FPAY Annual fee payment

Payment date: 20200108

Year of fee payment: 5