KR101958386B1 - 세션키 처리장치, 처리 방법 및 이를 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록매체 - Google Patents

세션키 처리장치, 처리 방법 및 이를 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록매체 Download PDF

Info

Publication number
KR101958386B1
KR101958386B1 KR1020180070237A KR20180070237A KR101958386B1 KR 101958386 B1 KR101958386 B1 KR 101958386B1 KR 1020180070237 A KR1020180070237 A KR 1020180070237A KR 20180070237 A KR20180070237 A KR 20180070237A KR 101958386 B1 KR101958386 B1 KR 101958386B1
Authority
KR
South Korea
Prior art keywords
terminal
session key
card
payment
digital signature
Prior art date
Application number
KR1020180070237A
Other languages
English (en)
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 KR1020180070237A priority Critical patent/KR101958386B1/ko
Application granted granted Critical
Publication of KR101958386B1 publication Critical patent/KR101958386B1/ko
Priority to PCT/KR2019/007292 priority patent/WO2019245248A1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/353Payments by cards read by M-devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/32Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
    • G06Q20/322Aspects of commerce using mobile devices [M-devices]
    • G06Q20/3223Realising banking transactions through M-devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3829Payment protocols; Details thereof insuring higher security of transaction involving key management

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Security & Cryptography (AREA)
  • Finance (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

세션키 처리장치, 처리 방법 및 이를 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록매체를 개시한다.
본 실시예의 일 측면에 의하면, 단말이 세션키를 처리하는 방법에 있어서, 결제 준비신호를 서버로 전송하는 제1 전송과정과 상기 서버로부터 결제를 수행할 수 있도록 하는 세션키를 수신하여 내부에 저장하는 저장과정과 결제를 개시하기 위해, 저장된 세션키를 이용해 자신의 유효성 증명을 위한 전자서명을 생성하는 생성과정 및 생성한 전자서명을 결제단말로 전송하는 전송과정을 포함하는 것을 특징으로 하는 세션키 처리방법을 제공한다.

Description

세션키 처리장치, 처리 방법 및 이를 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록매체{Apparatus and Method for Processing Session Key and Recording Medium Recording Program thereof}
본 실시예는 세션키를 처리하는 장치와 방법 및 이를 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록매체에 관한 것이다.
이 부분에 기술된 내용은 단순히 본 실시예에 대한 배경 정보를 제공할 뿐 종래기술을 구성하는 것은 아니다.
대중교통 및 그 연계 할인서비스가 발달함에 따라, 교통카드는 우리 일상에 꼭 필요한 결제수단이다.
제1세대 교통카드는 카드 또는 카드에 준하는 다양한 모양의 물리적 매체에 소정의 금액을 충전해서 사용하는 형태였다. 각각의 교통카드는 카드ID가 존재하고, 그 카드ID를 기준으로 충전, 결제하고, 정산하는 구조였다. 충전 및 결제를 하기 위해서는 교통카드와 결제단말간의 정보교환을 통해서 이루어진다.
정보교환은 카드와 단말의 고유키를 포함한 서명화된 데이터를 이용하여 이루어진다. 즉, 카드를 사용함에 있어서는 상기 고유키가 노출이 되면 절대 안되고, 키가 노출이 되면, 제3자가 카드의 금액을 돈을 지불안하고 충전을 할 수도 있고, 카드안에 금액을 조작할 수도 있는 심각한 문제를 초래한다. 물리적인 카드의 경우에는 카드의 고유키를 카드 발급 시, 카드ID와 함께 카드에 내장을 시킨다.
물리적인 제1세대 교통카드는 들고 다녀야 하는 불편함이 있었고, 또한 카드를 잃어버리게 되면, 카드가 무기명카드이기 때문에 돈을 잃어버리는 문제점이 있었다.
이러한 문제점을 해소하기 위해 등장한 교통카드가 소위 앱 카드의 형식으로 스마트폰의 가상의 교통카드를 발급받고, 충전하여 사용하는 형태이다. 물리적인 카드가 없다는 점에서 굉장히 큰 장점이 있다.
먼저 첫 번째, 앱카드의 형태는 스마트폰 내의 USIM에 저장되는 고유키를 이용해서 운용이 되는 형태이다. USIM에 고유키가 저장이 되기 때문에, 스마트폰의 화면을 활성화 시키지 않고도 사용이 가능한 것이다.
그러나 이러한 앱 카드의 경우에는 USIM의 형태, 스마트폰의 기종에 따라서 사용이 가능한 경우가 있고, 사용이 불가능한 경우가 있으며, 제휴사와의 협력 등이 필요해서, 이해관계가 복잡한 경우에는 사용이 굉장히 제한적인 불편이 있었다.
이러한 문제에 따라 등장한 앱카드가 스마트폰 내에 저장하지 않고, 서버와의 통신을 이용하여 결제를 수행하는 방식이다. 이러한 방식은 서버와의 통신을 이용하여 보안화된, 결제에 필요한 정보를 송수신함으로써 결제를 진행한다.
그러나 이러한 방식은 교통카드와 같이, 신속한 결제가 이루어져야 하는 분야로는 도입되기 어려운 단점이 있다. 통상의 교통카드는 지불처리에 소요되는 시간이 수백ms 내에 이루어진다. 그러나 종래의 방식은 결제를 진행함에 있어, 복수 회 서버와의 통신이 수행되어야 하는 점에서, 짧은 시간 내 처리되기는 어려운 문제가 있다.
물리적인 제1 세대 교통카드의 불편을 해소하면서도 다양한 분야에서 사용될 수 있는 앱카드의 수요가 존재한다.
본 발명의 일 실시예는, 세션키를 이용해 처리함으로써 단말 내 앱카드를 이용하여 결제가 수행되기까지 소모되는 시간을 현저히 단축시킨 세션키 처리 장치, 방법 및 이를 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록매체를 제공하는 데 일 목적이 있다.
본 실시예의 일 측면에 의하면, 단말이 세션키를 처리하는 방법에 있어서, 결제 준비신호를 서버로 전송하는 제1 전송과정과 상기 서버로부터 결제를 수행할 수 있도록 하는 세션키를 수신하여 내부에 저장하는 저장과정과 결제를 개시하기 위해, 저장된 세션키를 이용해 자신의 유효성 증명을 위한 전자서명을 생성하는 생성과정 및 생성한 전자서명을 결제단말로 전송하는 전송과정을 포함하는 것을 특징으로 하는 세션키 처리방법을 제공한다.
본 실시예의 일 측면에 의하면, 상기 제1 전송과정은 상기 결제 준비신호와 함께 상기 단말이 유효한 단말인지 여부를 판단할 수 있도록 하는 카드 ID 또는 상기 단말 사용자의 CI(Connecting Information, 개인식별정보) 정보도 상기 서버로 전송하는 것을 특징으로 한다.
본 실시예의 일 측면에 의하면, 상기 세션키 처리방법은 상기 전자서명에 대한 검증 결과 및 전자서명된 결제 요청신호를 상기 결제 단말로부터 수신하는 수신과정을 더 포함하는 것을 특징으로 한다.
본 실시예의 일 측면에 의하면, 상기 세션키 처리방법은 저장된 세션키를 이용해 상기 결제 단말로부터 수신한 전자서명이 유효한지 검증하는 검증과정을 더 포함하는 것을 특징으로 한다.
본 실시예의 일 측면에 의하면, 상기 검증과정은 저장된 세션키를 이용해 전자서명을 생성하여, 상기 결제 단말로부터 수신한 전자서명과 생성한 전자서명이 동일하거나 대응되는지 여부를 판단함으로써, 상기 결제 단말로부터 수신한 전자서명의 유효성을 검증하는 것을 특징으로 한다.
본 실시예의 일 측면에 의하면, 단말이 세션키를 처리하는 방법에 있어서, 결제 준비신호를 서버로 전송하는 제1 전송과정과 상기 서버로부터 결제를 수행할 수 있도록 하는 세션키를 수신하여 내부에 저장하는 저장과정과 결제를 개시하기 위해, 저장된 세션키를 이용해 자신의 유효성 증명을 위한 전자서명을 생성하는 생성과정 및 생성한 전자서명을 결제단말로 전송하는 전송과정을 포함하는 것을 특징으로 하는 세션키 처리방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.
본 실시예의 일 측면에 의하면, 세션키 처리장치에 있어서, 결제 준비신호를 서버로, 자신의 유효성 증명을 위한 전자서명을 결제단말로 전송하거나, 결제를 수행할 수 있도록 하는 세션키를 상기 서버로부터 수신하는 통신부와 상기 세션키를 저장하는 메모리부와 상기 메모리부 내 저장된 세션키를 이용하여, 결제를 개시하기 위해 전자서명을 생성하는 서명값 관리모듈 및 상기 세션키 처리장치 내 저장된 각 구성의 동작을 제어하는 제어부를 포함하는 것을 특징으로 하는 세션키 처리장치를 제공한다.
본 실시예의 일 측면에 의하면, 상기 제어부는 상기 통신부가 상기 서버로 상기 결제 준비신호를 전송함에 있어, 상기 단말이 유효한 단말인지 여부를 판단할 수 있도록 하는 카드 ID 또는 상기 단말 사용자의 CI(Connecting Information, 개인식별정보) 정보도 상기 서버로 함께 전송하도록 제어하는 것을 특징으로 한다.
본 실시예의 일 측면에 의하면, 상기 통신부는 상기 전자서명에 대한 검증 결과 및 전자서명된 결제 요청신호를 상기 결제 단말로부터 수신하는 것을 특징으로 한다.
본 실시예의 일 측면에 의하면, 상기 서명값 관리모듈은 상기 메모리부 내 저장된 세션키를 이용해 상기 결제 단말로부터 수신한 전자서명이 유효한지 검증하는 것을 특징으로 한다.
본 실시예의 일 측면에 의하면, 상기 서명값 관리모듈은 저장된 세션키를 이용해 전자서명을 생성하여, 상기 결제 단말로부터 수신한 전자서명과 생성한 전자서명이 동일하거나 대응되는지 여부를 판단함으로써, 상기 결제 단말로부터 수신한 전자서명의 유효성을 검증하는 것을 특징으로 한다.
이상에서 설명한 바와 같이 본 실시예의 일 측면에 따르면, 세션키를 이용함으로써, 단말로 발급된 앱카드를 이용해 단말이 결제를 수행함에 있어 소모되는 시간을 현저히 줄일 수 있는 장점이 있다.
도 1은 본 발명의 일 실시예에 따른 카드 관리 시스템을 도시한 도면이다.
도 2는 본 발명의 일 실시예에 따른 단말의 구성을 도시한 도면이다.
도 3은 본 발명의 일 실시예에 따른 카드 관리서버의 구성을 도시한 도면이다.
도 4는 본 발명의 일 실시예에 따른 보안 데이터베이스의 구성을 도시한 도면이다.
도 5는 본 발명의 일 실시예에 따른 결제 단말의 구성을 도시한 도면이다.
도 6은 본 발명의 일 실시예에 따른 단말이 결제가 이루어지기 전에 미리 세션키를 요청하는 과정을 도시한 타이밍차트이다.
도 7은 본 발명의 일 실시예에 따른 단말이 결제단말과 결제를 진행하는 과정을 도시한 타이밍차트이다.
도 8은 본 발명의 일 실시예에 따른 단말이 결제 단말의 요청에 따라 결제를 진행하는 과정을 도시한 순서도이다.
도 9는 본 발명의 일 실시예에 결제 단말과 단말이 결제 카드를 선택하는 과정을 도시한 타이밍차트이다.
도 10은 본 발명의 일 실시예에 따른 단말이 결제 카드를 선택하는 과정을 도시한 순서도이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시 예를 가질 수 있는 바, 특정 실시 예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다.
제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에서, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서 "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해서 일반적으로 이해되는 것과 동일한 의미를 가지고 있다.
일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
도 1은 본 발명의 일 실시예에 따른 카드 관리 시스템을 도시한 도면이다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 카드 관리 시스템(100)은 단말(110), 카드 관리서버(120), 보안 데이터베이스(130) 및 결제 단말(140)을 포함한다.
단말(110)은 카드 관리서버(120)로부터 결제를 위한 세션키를 수신하여 저장함으로써, 기 발급된 카드를 이용하여 결제 단말(140)과의 결제를 진행하는 기기이다.
단말(110)은 카드 관리서버(120)와 LTE, Wi-fi 등 무선통신을 이용하여 연결되며, 결제를 위한 세션키를 요청하여 세션키를 수신한 후 저장한다. 단말(110)은 결제 단말(140)과 결제가 진행되기 직전에 세션키를 요청할 수도 있으나, 미리 다음 결제를 위하여 결제가 진행된 이후, 단말(110)을 재부팅하는 경우, 결제가 진행되는 시점과 무관한 시점에 세션키를 요청할 수도 있다. 이처럼, 단말(110)이 결제가 이루어지기 이전에 미리 세션키를 요청함으로써, 실제 결제 단말(140)과의 결제가 진행되는 과정에서 세션키를 요청하는 과정을 단축시킬 수 있으며, 카드 관리서버(120) 또는 카드사 서버(150) 등에서 비로소 결제가 이루어지지 않고 단말(110)에서 바로 결제가 이루어지도록 할 수 있다. 세션키를 요청하는 과정은 도 4를 참조하여 상세히 설명하기로 한다.
단말(110)은 결제 단말(140)과 NFC 등 무선통신을 이용하여 연결되며, 기 발급받은 카드를 이용하여 결제 단말(140)과 결제를 진행한다. 단말(110)이 기 발급받는 카드란 CI 정보 또는 단말 ID를 이용하여 사용자를 구분할 수 있으며, 미리 일정한 금액을 충전하여 결제를 할 수 있는 선불식 카드를 의미하는 것으로서, 예를 들어, 교통카드 등이 이에 해당된다. 단말(110)은 단말(110)의 사용자를 식별할 수 있는 CI(Connecting Information, 개인식별정보), 예를 들어, 사용자의 이메일주소, 사용자의 생년월일 등 각 사용자를 식별할 수 있는 CI 정보 또는 단말(110) ID, 예를 들어, 단말(110)의 고유번호 또는 단말의 전화번호 등 각 단말을 식별할 수 있는 단말 ID를 이용하여 단말이나 사용자를 식별하는 카드를 발급받아 발급받은 카드의 ID를 저장한다. 카드 ID는 카드를 발급한 발급사의 ID와 카드 번호를 포함한다. 카드 ID를 이용하여 해당 카드 ID를 갖는 카드가 어느 발급사에서 발급된 어떤 카드인지 식별할 수 있다. 카드는 카드의 발급사마다 카드 정보 중 암호화가 필요한 정보에 대해 암호화하는 알고리즘이 상이하기 때문에, 카드 ID 내에 발급사 ID를 포함시킴으로써 어떤 암호화 알고리즘이 사용되었는지를 확인할 수 있도록 한다. 단말(110)은 기 발급받은 카드를 이용하여 결제 단말(140)과 결제를 진행한다. 결제 단말(140)과 결제를 진행함에 있어, 단말(110)은 기 저장된 세션키를 이용하여 전자서명을 생성하거나 전자서명을 복호화함으로써 결제를 진행한다. 결제 과정은 도 5를 참조하여 상세히 설명하기로 한다.
또한, 단말(110)은 복수 개의 카드를 기 발급받아 둘 수 있다. 이때, 단말(110)은 결제를 위한 세션키를 요청하기 이전에, 결제 카드에 대한 선택 정보를 결제 단말(140)로부터 수신할 수 있다. 단말(110)은 결제 카드로 선택된 카드를 기 발급받아 두었는지를 확인하며, 발급받아 둔 경우, 해당 카드로 세션키 요청 등 검증 및 결제를 위한 모든 과정을 진행한다. 반면, 선택된 카드를 발급받지 않은 경우, 결제 단말(140)로 에러코드를 전송한다. 이에 따라, 결제 단말(140)이 다른 카드를 선택할 수 있도록 한다.
단말(110)은 스마트폰, 태블릿 PC, 스마트 워치 등 다양한 스마트 기기뿐만 아니라 PC, 노트북과 같은 다양한 통신기기로 구현될 수 있다. 단말로 발급된 카드는 단말 내에서 카드 고유의 애플리케이션 또는 프로그램으로 구현되어 저장되거나, 은행 애플리케이션 또는 프로그램 내 하나의 모듈이나 서비스로 구현되어 저장될 수 있다. 이하에서는, 단말은 스마트 폰으로, 발급받은 카드는 은행 애플리케이션 내 하나의 모듈로 구현되는 것으로 설명하나, 반드시 이에 한정되는 것은 아니다.
카드 관리서버(120)는 단말(110)의 기 발급된 카드의 정보 중 암호화가 필요치 않은 정보만을 저장하여, 단말(110)의 세션키 요청의 유효성을 검증하며 세션키의 발급을 중계하는 기기이다.
카드 관리서버(120)는 단말(110)로 기 발급된 카드의 정보 중 암호화가 필요치 않은 정보만을 저장한다. 기 발급된 카드의 정보에는 카드ID, 고유키, 잔액, 교통카드가 청소년용인지 일반용인지, 지역, 카드제조정보 등을 포함하는 다양한 정보가 포함된다. 고유키는 특정 요청에 대한 장치의 권한을 확인하기 위한 유일한 키로서, 전자서명을 하기 위하여 필수적으로 요구되는 정보이다. 카드 관리서버(120)는 기 발급된 카드의 모든 정보를 단말(110)로 전달하는 것이 아니라, 발급된 카드 정보 중 보안을 위한 암호화가 필요한 정보를 분류하여 보안 데이터베이스(130)에 저장하며, 암호화가 필요하지 않은 정보, 예를 들어 카드 ID, 발급 지역, 카드제조정보 또는 다양한 옵션정보(사용지역, 주 사용패턴, 사용자 나이 등) 등을 저장하며, 단말(110)로 전달한다.
카드 관리서버(120)는 세션키 요청을 단말(110)로부터 수신하는 경우, 보안 데이터베이스(130)로부터 세션키를 수신하여 단말(110)로 전송한다. 카드 관리서버(120)는 저장된 암호화가 필요치 않은 정보를 이용하여 단말(110)의 세션키 요청의 유효성을 검증한다. 단말(110)로부터 결제가 이루어지기 이전에 세션키 요청을 수신하는 경우, 카드 관리서버(120)는 저장된 암호화가 필요치 않은 정보 중 해당 카드 ID가 저장되어 있는지 여부를 판단하여 세션키 요청의 유효성을 검증한다. 카드 관리서버(120)는 세션키 요청이 유효한 경우에만 세션키를 보안 데이터베이스(130)로 요청할 수 있다. 세션키란 통신을 하는 상대방끼리 하나의 통신 세션 동안에만 사용하는 암호화 키로서, 동일하거나 대응되는 고유키로부터 동일하거나 대응되는 세션키가 생성된다. 즉, 동일하거나 대응되는 고유키를 가진 구성과 그로부터 생성된 세션키를 가진 구성은 해당 세션 동안 서로의 서명을 복호화하거나 서명을 암호화하여 통신할 수 있다. 또한, 세션키 내에는 카드의 ID와 그 카드 내 잔액정보가 함께 포함된다. 이에 따라, 세션키를 가진 구성은 세션키를 이용하여 결제를 수행할 수 있다. 카드 관리서버(120)는 세션키 요청을 단말(110)로부터 수신하는 경우, 세션키를 보안 데이터베이스(130)로 요청한다. 카드 관리서버(120)는 세션키를 보안 데이터베이스(130)로부터 수신하여, 단말(110)로 전달한다.
보안 데이터베이스(130)는 단말(110)로 기 발급된 카드의 정보 중 중 암호화가 필요한 정보를 저장하고, 저장된 정보를 이용하여 세션키를 생성하는 기기이다.
보안 데이터베이스(130)는 카드 또는 모듈 형태로 구현되어 카드 관리서버(120) 내에 USB 등의 형태로 구현될 수 있거나, 유선 통신 또는 LTE, TCP/IP 등과 같은 무선 통신으로 카드 관리서버(120)와 연결될 수 있다. 보안 데이터베이스(130)는 암호화가 필요한 정보를 저장하여야 하기 때문에, 슈퍼바이저를 제외하고는 작업자가 암호화가 필요한 정보를 볼 수 없고, 조작도 할 수 없는 장치로 구현된다. 예를 들어, 보안 데이터베이스(130)는 HSM(Hardware Security Module)로 구현될 수 있다. 보안 데이터베이스(130)는 카드 관리서버(120)로부터 수신한 암호화가 필요한 정보를 복호화하여 정보를 파악하며, 파악한 정보에 따라 저장된 정보를 수정할 수 있다. 암호화가 필요한 정보에는 고유키, 카드 비밀번호, 잔액 정보 등이 포함된다.
보안 데이터베이스(130)는 세션키 요청을 카드 관리서버(120)로부터 수신하는 경우, 세션키를 생성하여 카드 관리서버(120)로 전송한다. 세션키 요청을 카드 관리서버(120)로부터 수신하는 경우, 보안 데이터베이스(130)는 저장된 정보를 이용하여 세션키를 생성한다. 보안 데이터베이스(130)는 고유키를 이용하여 세션키를 생성하며, 단말(110)로 기 발급된 카드의 ID와 해당 카드 내 잔액 정보를 세션키에 포함시킨다. 세션키에 전술한 정보가 포함됨에 따라, 단말(110)이 세션키를 이용하여 카드 관리서버(120)와 통신하지 않고도 결제를 수행할 수 있다. 보안 데이터베이스(130)는 세션키를 생성하여 카드 관리서버(120)로 전송한다.
결제 단말(140)은 일정한 금액의 결제를 단말(110)로 요청하는 단말이다. 결제 단말(140)은 제1 전자서명을 단말(110)로부터 수신함으로써, 단말(110)이 이용하고자 하는 카드가 위·변조되지 않은 정상적인 카드인지를 확인한다. 단말이 정상적인 카드를 이용하고 있다고 판단한 경우, 결제 단말(140)은 결제를 요청하기 위한 제2 전자서명을 단말(110)로 전달함으로써, 결제 금액에 대한 결제가 이루어지도록 한다.
이때, 결제 단말(140)은 카드 관리서버(120)로부터 기 부여받은 결제 단말(140) 자신의 ID 및 보안 데이터베이스(130) 또는 카드사 서버(150)로부터 기 부여받은 고유키를 저장해두고 있으며, 저장된 정보를 이용해 전자서명하거나 전저 서명을 검증한다. 결제 단말(140)은 ID 및 결제에 대한 고유키를 이용하여 전자서명한 후, 단말(110)로 전달함으로써 자신의 유효성을 증명할 수 있도록 한다.
결제 단말(140)은 결제 완료 정보를 단말(110)로부터 수신하는 경우, 결제 내역을 저장하며 카드사 서버(150)와 통신하여 비용처리를 수행한다. 결제가 완료되었음을 단말(110)로부터 수신하는 경우, 결제 단말(140)은 해당 결제 내역을 저장해둔다. 결제 단말(140)은 카드사 서버(150)와 무선 통신을 수행하며, 결제 내역을 전자서명하여 카드사 서버(150)로 전송함으로써, 카드사 서버(150)가 추후 해당 결제 내역을 확인하고 결제 내역에 따른 비용처리를 결제 단말(140)로 할 수 있도록 한다. 결제 단말(140)은 매 결제가 완료되었을 때마다 결제 내역을 카드사 서버(150)로 전송할 수도 있고, 일정 기간동안 결제 내역을 저장해두고 저장된 결제 내역들을 한번에 카드사 서버(150)로 전송할 수도 있다.
또한, 결제 단말(140)은 검증 및 결제를 진행하기 이전에, 단말(110)로 결제 카드에 대한 선택정보를 전송한다. 다양한 종류의 카드가 존재하기 때문에, 결제 단말(140)은 자신과 결제 가능한 카드를 선택하여 단말(110)로 전송한다. 이에 따라, 단말(110)이 해당 카드에 대해 발급을 받아두었는지를 검증 및 결제가 진행되기 이전에 확인할 수 있어, 원활한 결제가 이루어질 수 있도록 한다. 단말(110)로부터 에로코드를 수신하는 경우, 결제 단말(140)은 단말(110)이 선택된 카드에 대해 발급을 받지 않았음을 알 수 있어, 다른 카드를 다시 선택할 수 있다.
도 2는 본 발명의 일 실시예에 따른 단말의 구성을 도시한 도면이다.
도 2를 참조하면, 본 발명의 일 실시예에 따른 단말(110)은 통신모듈(210), 제어모듈(220), 메모리부(230) 및 서명값 관리모듈(240)을 포함한다.
통신모듈(210)은 세션키 요청을 위한 결제 준비신호를 카드 관리서버(120)로 전송한다. 통신모듈(210)은 미리 다음 결제를 위하여 결제가 진행된 이후, 단말(110)을 재부팅하는 경우, 결제가 진행되는 시점과 무관한 시점 등 결제가 이루어지기 전에 세션키 요청을 위해 결제 준비신호를 카드 관리서버(120)로 전송한다. 이때, 통신모듈(210)은 결제 준비신호와 함께 카드 ID를 전송할 수 있다. 카드 관리 시스템(100)을 이용하기에 부적합한 단말도 존재하기 때문에, 카드 관리서버(120)는 세션키를 요청한 모든 단말에 모두 세션키를 제공할 수는 없다. 이에 따라, 카드 관리서버(120)가 세션키를 제공할만한 단말인지 여부를 판단할 수 있도록 하기 위해, 통신모듈(210)은 결제 준비신호와 함께 카드 ID를 전송할 수 있다.
통신모듈(210)은 세션키를 카드 관리서버(120)로부터 수신한다. 통신모듈(210)은 보안 데이터베이스(130)에서 생성된 세션키를 카드 관리서버(120)로부터 수신한다.
통신모듈(210)은 단말(110) 자신의 유효성 및 단말(110)이 사용하고자 하는 카드의 유효성을 증명하는 제1 전자서명을 결제 단말(140)로 전송한다. 제1 전자서명을 전송한 후, 통신 모듈(210)은 해당 전자서명의 검증 결과와 함께 결제를 요청하기 위한 제2 전자서명을 결제 단말(140)로부터 수신한다.
통신모듈(210)은 결제가 완료되었음을 알리기 위한 제3 전자서명을 결제 단말(140)로 전송한다.
제어모듈(220)은 메모리부(230) 내 저장된 세션키가 존재하는지를 확인하여 결제가 이루어지기 전에 결제 준비신호를 카드 관리서버(120)로 전송하도록 통신모듈(210)을 제어한다. 제어모듈(220)은 메모리부(230) 내 저장된 세션키가 존재하는지 여부를 기 설정된 간격마다 또는 기 설정된 시점에서 확인한다. 메모리부(230) 내 저장된 세션키가 존재하는 경우, 저장된 세션키를 사용하면 되기 때문에 결제 준비신호가 카드 관리서버(120)로 추가적으로 전송될 필요는 없다. 반면, 메모리부(230) 내 저장된 세션키가 존재하지 않는 경우, 제어모듈(220)은 결제가 이루어지기 전에 세션키를 미리 수신하기 위해 결제 준비신호를 카드 관리서버(120)로 전송하도록 통신모듈(210)을 제어한다. 이 경우, 제어모듈(220)은 단말(110) 및 카드의 유효성을 검증하고자 하는 카드 ID를 함께 전송하도록 통신모듈(210)을 제어할 수 있다.
제어모듈(220)은 카드 관리서버(120)로부터 수신한 세션키를 메모리부(230)로 저장한다.
제어모듈(220)은 메모리부(230) 내 저장된 세션키를 이용하여 단말(110) 자신의 유효성 및 단말(110)이 사용하고자 하는 카드의 유효성을 증명하는 제1 전자서명을 생성하도록 서명값 관리모듈(240)을 제어한다. 이미 메모리부(230) 내에 세션키가 저장되어 있기 때문에, 단말(110)은 전자서명을 위해 별도의 구성(예를 들어, 카드 관리서버나 보안 데이터베이스)으로 요청할 필요없이 자체적으로 전자서명을 복호화하거나 송부하고자 하는 정보를 전자서명하여 암호화할 수 있다. 제어모듈(220)은 결제를 개시하기 위해, 단말(110) 자신의 유효성 및 단말(110)이 사용하고자 하는 카드의 유효성을 증명하는 제1 전자서명을 생성하도록 서명값 관리모듈(240)을 제어한다.
제어모듈(220)은 수신한, 결제를 요청하기 위한 제2 전자서명을 검증하도록 서명값 관리모듈(240)을 제어한다. 통신모듈(210)이 검증 결과 및 제2 전자서명을 결제 단말(140)로부터 수신하는 경우, 제어모듈(220)은 제2 전자서명을 검증하도록 서명값 관리모듈(240)을 제어한다. 결제 단말(140)이 신뢰할 수 있는 단말인지 확인되지 않은 상태이기 때문에, 결제 단말(140)이 전송한 제2 전자서명을 검증한다. 제어모듈(220)은 전자서명의 검증을 위해, 메모리부(230) 내 저장된 세션키를 이용하여 별도의 제2 전자서명을 생성하도록 서명값 관리모듈(240)을 제어한다. 이후, 제어모듈(220)은 서명값 관리모듈(240)을 제어하여, 결제 단말(140)로부터 수신한 제2 전자서명과 생성한 제2 전자서명을 비교한다. 결제 단말(140)이 유효한 장치라면 세션키와 동일하거나 대응되는 고유키를 포함하고 있으며, 이에 따라 서명값 관리모듈(240)이 생성한 제2 전자서명과 동일하거나 대응되는 전자서명을 전송해야 한다. 따라서 제어모듈(220)은 결제 단말(140)로부터 수신한 제2 전자서명과 생성한 제2 전자서명이 동일하거나 대응되는지 여부를 판단하여 결제 단말(140)로부터 수신한 제2 전자서명의 유효성을 검증한다.
결제 단말(140)로부터 수신한 제2 전자서명의 검증이 완료된 경우, 제어모듈(220)은 결제 단말(140)로부터 수신한 제2 전자서명을 복호화하도록 서명값 관리모듈(240)을 제어한다. 제2 전자서명이 유효한 경우, 제어모듈(220)은 결제를 위해 결제 단말(140)로부터 수신한 제2 전자서명을 복호화하도록 서명값 관리모듈(240)을 제어한다. 이에 따라, 제어모듈(220)은 결제 단말(140)이 요구한 결제 금액을 확인할 수 있다.
제어모듈(220)은 결제를 진행한다. 제어모듈(220)은 메모리부(230) 내 저장된 세션키를 이용해 결제를 진행한다. 전술한 바와 같이, 세션키에는 잔액 정보도 포함되어 있다. 제어모듈(220)은 잔액 정보에 결제 금액을 차감함으로서, 결제를 진행한다. 제어모듈(220)은 결제가 완료된 후, 결제 내역을 메모리부(230) 내 저장할 수 있다. 제어모듈(220)은 결제 내역을 저장하도록 함으로써, 추후, 보안 데이터베이스(130)가 결제 내역을 이용하여 내 잔액 정보를 동기화하도록 할 수 있다.
제어모듈(220)은 결제가 완료되었음을 알리기 위한 제3 전자서명을 생성하도록 서명값 관리모듈(240)을 제어한다. 제3 전자서명이 생성된 경우, 제어모듈(220)은 해당 정보를 결제 단말(140)로 전송하도록 통신모듈(210)을 제어한다.
메모리부(230)는 기 발급된 카드의 정보 중 암호화가 필요하지 않은 정보를 저장한다. 메모리부(230)는 암호화가 필요하지 않은 정보로 카드 ID, 기타 옵션 정보를 저장한다. 단말(110)은 암호화가 필요치 않은 정보만을 수신하고 저장하기 때문에, 다른 제조사들과의 협의 없이 간단히 정보를 저장할 수 있으며, 암호화가 필요한 정보를 저장하지 않기 때문에, 보안성 측면에서도 유리한 효과가 있다.
메모리부(230)는 카드 관리서버(120)로부터 수신한 세션키를 저장한다. 메모리부(230)는 세션키를 저장함으로써, 해당 세션 동안 결제가 진행되는 동안 카드 관리서버(120) 또는 카드 관리서버(120)를 거쳐 보안 데이터베이스(130) 등에 서명을 암호화하거나 복호화하는 등의 요청을 하지 않도록 할 수 있다.
또한, 메모리부(230)는 결제가 완료된 후, 결제 내역을 저장할 수 있다. 메모리부(230)는 언제 어떠한 카드를 이용해 어떤 결제 단말과 얼마의 결제 금액만큼 결제가 이루어졌는지 등을 알 수 있도록 결제 내역을 저장할 수 있다.
메모리부(230)는 단말(110) 내에서 특정 모듈 또는 특정 변수의 형태 등 전술한 정보를 저장할 수 있는 구성이면 어떠한 구성으로도 구현될 수 있다.
서명값 관리모듈(240)은 세션키를 이용하여 전자서명을 생성하거나 수신된 전자서명을 복호화한다. 제어모듈(220)의 제어에 따라, 서명값 관리모듈(240)은 세션키를 이용하여 단말(110) 자신의 유효성 및 단말(110)이 사용하고자 하는 카드의 유효성을 증명하기 위한 제1 전자서명을 생성한다.
결제 단말(140)로부터 제2 전자서명을 수신하는 경우, 수신한 제2 전자서명의 검증을 위해 서명값 관리모듈(240)은 세션키를 이용하여 별도의 제2 전자서명을 생성한다. 서명값 관리모듈(240)은 수신한 제2 전자서명과 자신이 생성한 별도의 제2 전자서명이 동일하거나 대응되는지 여부를 확인함으로써, 수신한 제2 전자서명을 검증한다. 수신한 제2 전자서명이 유효한 경우, 서명값 관리모듈(240)은 해당 전자서명을 복호화한다.
서명값 관리모듈(240)은 결제가 완료된 후, 결제가 완료되었음을 알리기 위해 제3 전자서명을 생성한다.
도 3은 본 발명의 일 실시예에 따른 카드 관리서버의 구성을 도시한 도면이다.
도 3을 참조하면, 본 발명의 일 실시예에 따른 카드 관리서버(120)는 통신모듈(310), 제어모듈(320) 및 메모리부(330)를 포함한다.
통신모듈(310)은 결제 준비신호를 단말(110)로부터 수신한다. 이때, 통신모듈(310)은 결제 준비신호와 함께 카드 ID를 수신할 수 있다. 통신모듈(310)은 세션키 요청신호를 보안 데이터베이스(130)로 전송한다. 통신모듈(310)은 세션키 요청신호를 전송함에 있어, 카드 ID를 함께 전송할 수 있다.
통신 모듈(310)은 세션키를 보안 데이터베이스(130)로부터 수신하여, 이를 단말(110)로 전송한다.
결제 준비신호를 단말(110)로부터 수신한 경우, 제어모듈(320)은 결제 준비신호와 함께 수신한 카드 ID를 확인한다. 제어모듈(320)은 수신한 카드 ID가 메모리부(340)에 저장되어 있는지를 확인한다. 제어모듈(320)은 메모리부(340) 내 단말(110)로부터 수신한 카드 ID가 저장되어 있는지 여부에 따라, 세션키를 제공하기에 유효한 단말인지 또는 유효한 카드를 보유하고 있는 단말인지를 확인할 수 있다.
유효한 단말이거나 유효한 카드를 보유한 단말인 경우, 제어모듈(320)은 세션키 요청신호를 보안 데이터베이스(130)로 전송하도록 통신모듈(310)을 제어한다.
메모리부(330)는 단말로 기 발급된 카드의 정보 중 암호화가 필요하지 않은 정보를 저장한다. 메모리부(330)는 암호화가 필요하지 않은 정보로 카드 ID, 기타 옵션 정보를 저장한다. 이에 따라, 메모리부(330)는 제어모듈(320)이 유효한 단말인지 또는 유효한 카드를 보유하고 있는 단말인지를 확인할 수 있도록 한다.
도 4는 본 발명의 일 실시예에 따른 보안 데이터베이스의 구성을 도시한 도면이다.
도 4를 참조하면, 본 발명의 일 실시예에 따른 보안 데이터베이스(130)는 통신모듈(410), 제어모듈(420), 세션키 생성모듈(430) 및 메모리부(440)를 포함한다.
통신모듈(410)은 세션키 요청신호를 카드 관리서버(120)로부터 수신한다. 통신모듈(410)은 세션키 요청신호와 함께 카드 ID를 수신할 수 있다.
통신모듈(410)은 생성된 세션키를 카드 관리서버(120)로 전송한다.
세션키 요청신호를 카드 관리서버(120)로부터 수신하는 경우, 제어모듈(420)은 세션키를 생성하도록 세션키 생성모듈(430)을 제어한다.
세션키 생성모듈(430)은 제어모듈(420)의 제어에 따라 세션키를 생성한다. 세션키 생성모듈(430)은 메모리부(440) 내 저장된 고유키를 이용하여 세션키를 생성하며, 수신한 카드 ID와 메모리부(440) 내 저장된 해당 카드의 잔액정보를 세션키 내에 포함시킨다.
메모리부(440)는 단말로 기 발급된 카드의 정보 중 암호화가 필요한 정보를 저장한다. 암호화가 필요한 정보는 각 카드의 잔액 정보, 고유키 정보를 포함한다. 단말로 기 발급된 카드의 정보가 암호화가 필요한 정보와 필요하지 않은 정보로 분리되어 각각 서로 다른 구성에 저장됨으로써, 보안성을 확보하면서도 편리하게 카드가 사용될 수 있도록 한다.
도 5는 본 발명의 일 실시예에 따른 결제 단말의 구성을 도시한 도면이다.
도 5를 참조하면, 본 발명의 일 실시예에 따른 결제 단말(140)은 통신모듈(510), 제어모듈(520), 메모리부(530) 및 서명값 관리모듈(540)을 포함한다. 나아가, 결제 단말(140)은 출력모듈(미도시)을 더 포함할 수도 있다.
통신 모듈(510)은 제1 전자서명을 단말(110)로부터 수신한다. 통신 모듈(510)은 제1 전자서명에 대한 검증 결과와 함께 결제를 요청하기 위한 제2 전자서명을 단말(110)로 전송한다.
통신 모듈(510)은 결제가 완료되었음을 알리기 위한 제3 전자서명을 단말(110)로부터 수신한다.
통신 모듈(510)은 결제 내역을 카드사 서버(150)로 전송한다.
제1 전자서명을 단말(110)로부터 수신하는 경우, 제어모듈(520)은 수신한 제1 전자서명을 검증하도록 서명값 관리모듈(440)을 제어한다. 단말(110)이 신뢰할 수 있는 단말인지 확인되지 않은 상태이기 때문에, 단말(110)이 전송한 제1 전자서명을 검증한다. 제어모듈(520)은 서명값 관리모듈(540)을 제어하여, 제1 전자서명을 생성하도록 한다. 이후, 제어모듈(520)은 서명값 관리모듈(540)을 제어하여, 단말(110)로부터 수신한 제1 전자서명과 생성한 제1 전자서명을 비교하도록 한다. 마찬가지로, 단말(110)이 신뢰할 수 있는 단말이라면, 고유키와 동일하거나 대응되는 세션키를 포함하고 있으며, 이에 따라 서명값 관리모듈(540)이 생성한 제1 전자서명과 동일하거나 대응되는 전자서명을 생성해야 한다. 따라서 제어모듈(520)은 서명값 관리모듈(540)을 제어하여, 단말(110)로부터 수신한 제1 전자서명과 생성한 제1 전자서명이 동일하거나 대응되는지 여부를 판단하여 단말(110)로부터 수신한 제1 전자서명의 유효성을 검증하도록 한다.
제1 전자서명의 검증이 완료된 경우, 제어모듈(520)은 결제를 요청하기 위한 제2 전자서명을 생성하도록 서명값 관리모듈(540)을 제어한다. 단말(110)로 결제 금액의 결제를 요청하기 위해, 제어모듈(520)은 제2 전자서명을 생성하도록 서명값 관리모듈(540)을 제어한다. 제어모듈(520)은 제1 전자서명의 검증 결과와 생성된 제2 전자서명을 단말(110)로 전송하도록 통신모듈(510)을 제어한다.
통신 모듈(510)이 제3 전자서명을 수신한 경우, 제어모듈(520)은 결제 내역을 생성하여 메모리부(530)에 저장한다. 추후, 카드사 서버(150)가 추후 해당 결제 내역을 확인하고 결제 내역에 따른 비용처리를 결제 단말(140)로 할 수 있도록, 제어모듈(520)은 결제 내역을 생성하여 메모리부(530)에 저장한다. 제어모듈(520)은 제3 전자서명을 이용하여 카드 내 잔액정보를 확인할 수 있으며, 잔액 정보를 출력하도록 출력모듈(미도시)을 제어할 수도 있다.
제어모듈(520)은 메모리부(530) 내 저장된 결제 내역을 카드사 서버(150)로 전송하도록 통신모듈(510)을 제어한다. 제어모듈(520)은 결제 내역이 생성될 때마다 바로 카드사 서버(150)로 전송하도록 통신모듈(510)을 제어할 수도 있고, 일정 기간동안 결제 내역을 저장해두고 저장된 결제 내역들을 한번에 카드사 서버(150)로 전송하도록 통신모듈(510)을 제어할 수도 있다.
메모리부(530)는 제어모듈(520)가 생성한 결제 내역을 저장한다.
서명값 관리모듈(540)은 전자서명을 생성하거나 복호화한다. 서명값 관리모듈(540)은 고유키를 생성하거나 생성한 고유키를 저장해두고 있다가, 필요한 경우에 고유키를 이용하여 전자서명을 생성하거나 수신된 전자서명을 복호화한다. 서명값 관리모듈(540)은 SAM(Security Application Module)으로 구현될 수 있으나, 이에 한정되는 것은 아니고, 고유키를 생성하며 암호화를 할 수 있는 모듈 어떠한 것으로도 대체될 수 있다.
단말(110)로부터 제1 전자서명을 수신하는 경우, 수신한 제1 전자서명의 검증을 위해 서명값 관리모듈(540)은 고유키를 이용하여 별도의 제1 전자서명을 생성한다. 서명값 관리모듈(540)은 수신한 제1 전자서명과 자신이 생성한 별도의 제1 전자서명이 동일하거나 대응되는지 여부를 확인함으로써, 수신한 제1 전자서명을 검증한다.
수신한 제1 전자서명이 유효한 경우, 서명값 관리모듈(540)은 결제를 요청하기 위한 제2 전자서명을 생성한다.
도 6은 본 발명의 일 실시예에 따른 단말이 결제가 이루어지기 전에 미리 세션키를 요청하는 과정을 도시한 타이밍차트이다.
단말(110)은 단말 내 저장된 세션키가 존재하는지 확인한다(S610). 단말 내 저장된 세션키가 존재하는 경우, 별도로 카드 관리서버(120)로 세션키를 요청할 필요가 없다. 단말 내 저장된 세션키가 존재하지 않는 경우, 신속한 결제를 위해 단말(110)은 미리 세션키를 카드 관리서버(120)로 요청할 필요가 있다.
단말 내 저장된 세션키가 존재하지 않는 경우, 단말(110)은 결제 준비신호를 카드 관리서버(120)로 전송한다(S620). 단말(110)은 세션키 요청을 위한 결제 준비신호를 카드 관리서버(120)로 전송하며, 결제 준비신호와 함께 카드 ID를 전송한다.
카드 관리서버(120)는 세션키 요청신호를 보안 데이터베이스(130)로 전송한다(S630). 카드 관리서버(120)는 결제 준비신호와 함께 수신한 카드 ID를 이용하여, 단말이 유효하거나 단말이 보유한 카드가 유효한지를 판단하고, 해당 단말 또는 해당 카드가 유효한 경우에만 세션키 요청신호를 보안 데이터베이스(130)로 전송한다.
보안 데이터베이스(130)는 세션키를 생성한다(S640).
보안 데이터베이스(130)는 생성한 세션키를 카드 관리서버(120)로 전송한다(S650).
카드 관리서버(120)는 수신한 세션키를 단말(110)로 전송한다(S660).
단말(110)은 수신한 세션키를 저장한다(S670).
이처럼, 단말(110)이 결제가 이루어지기 전에 미리 세션키의 생성을 요청하여 저장해둠에 따라, 결제가 진행됨에 있어 결제 시간을 단축시킬 수 있다.
도 7은 본 발명의 일 실시예에 따른 단말이 결제단말과 결제를 진행하는 과정을 도시한 타이밍차트이다.
단말(110)은 자신의 유효성을 증명하기 위한 제1 전자서명을 생성하여 결제 단말(140)로 전송한다(S710).
결제 단말(140)은 제1 전자서명을 생성한다(S720). 단말(110)로부터 수신한 제1 전자서명의 검증을 위해, 결제 단말(140)은 보유하고 있는 고유키를 이용하여 별도의 제1 전자서명을 생성한다.
결제 단말(140)은 단말(110)로부터 수신한 제1 전자서명을 검증한다(S730). 결제 단말(140)은 수신한 제1 전자서명과 생성한 별도의 제1 전자서명이 동일하거나 대응되는지 여부로 수신한 제1 전자서명을 검증한다.
결제 단말(140)은 검증 결과 및 결제를 요청하기 위한 제2 전자서명을 전송한다(S740). 결제 단말(140)은 결제를 요청하기 위한 제2 전자서명을 생성하며, 생성한 제2 전자서명과 수신한 제1 전자서명의 검증결과를 단말(110)로 전송한다.
단말(110)은 제2 전자서명을 생성한다(S750). 결제 단말(140)로부터 수신한 제2 전자서명의 검증을 위해, 단말(110)은 보유하고 있는 세션키를 이용하여 별도의 제2 전자서명을 생성한다.
단말(110)은 결제 단말(140)로부터 수신한 제2 전자서명을 검증한다(S760).
단말(110)은 결제를 진행한다(S770). 수신한 제2 전자서명에 이상이 없는 경우, 단말(110)은 저장된 세션키를 이용하여 결제를 진행한다.
단말(110)은 결제가 완료되었음을 알리기 위한 제3 전자서명을 결제 단말(140)로 전송한다(S780).
도 8은 본 발명의 일 실시예에 따른 단말이 결제 단말의 요청에 따라 결제를 진행하는 과정을 도시한 순서도이다. 각 과정의 구체적인 설명은 도 1 내지 7을 참조하여 설명하였기 때문에, 상세한 설명은 생략하기로 한다.
단말(110)은 결제 진행 전 결제 준비신호를 서버로 전송한다(S810).
단말(110)은 카드 관리서버(120)로부터 세션키 수신하여 저장한다(S820).
단말(110)은 세션키를 이용하여 제1 전자서명을 생성하여 결제단말(140)로 전송한다(S830).
단말(110)은 제1 전자서명에 대한 검증 결과 및 결제를 요청하기 위한 제2 전자서명을 결제 단말(140)로부터 수신한다(S840).
단말(110)은 제2 전자서명 생성하여, 수신한 제2 전자서명을 검증한다(S850).
단말(110)은 결제를 진행한다(S860).
단말(110)은 결제가 완료되었음을 알리기 위한 제3 전자서명을 생성하여 결제 단말(140)로 전송한다(S870).
도 9는 본 발명의 일 실시예에 결제 단말과 단말이 결제 카드를 선택하는 과정을 도시한 타이밍차트이다.
결제 단말(140)은 결제 카드 선택정보를 단말(110)로 전송한다(S910). 결제 단말(140)은 자신이 결제를 진행할 수 있는 카드를 단말(110)이 알 수 있도록, 결제 카드 선택정보를 단말(110)로 전송한다.
단말(110)은 수신한 결제 카드에 대해 발급을 받았는지 여부를 확인한다(S920). 단말(110)은 복수의 카드에 대해 기 발급받아둘 수 있다. 이때, 단말(110)은 기 발급받은 카드 중 결제 단말(140)이 선택한 카드에 대해서도 발급을 받아두었는지 확인한다.
결제 카드에 대해 발급을 받지 않은 경우, 단말(110)은 에러코드를 결제 단말(140)로 응답한다(S930). 단말(110)은 에러코드를 응답함으로써, 결제 단말(140)이 다른 결제 카드를 선택할 수 있도록 한다.
결제 카드에 대해 발급을 받은 경우, 단말(110)은 결제 카드로 결제를 진행함을 통지한다(S940).
단말(110)은 선택된 결제 카드로 추후 검증 및 결제 과정을 진행한다(S950). 단말(110)은 이후, 세션키 요청을 포함한 모든 검증 및 결제 과정을 선택된 결제 카드로 진행한다.
도 10은 본 발명의 일 실시예에 따른 단말이 결제 카드를 선택하는 과정을 도시한 순서도이다.
단말(110)은 결제 카드 선택정보를 결제 단말(140)로부터 수신한다(S1010).
단말(110)은 결제 단말(140)로부터 선택된 결제 카드에 대해 발급 받았는지 여부를 확인한다(S1020).
결제 카드에 대해 발급을 받은 경우, 단말(110)은 결제 카드로 결제 진행 가능함을 결제 단말(140)로 통지한다(S1030).
단말(110)은 선택된 카드로 추후 검증 및 결제 과정을 진행한다(S1040).
결제 카드에 대해 발급을 받지 않은 경우, 단말(110)은 에러코드를 결제 단말(140)로 전송한다(S1050).
도 6 내지 10에서는 각각의 과정을 순차적으로 실행하는 것으로 기재하고 있으나, 이는 본 발명의 일 실시예의 기술 사상을 예시적으로 설명한 것에 불과한 것이다. 다시 말해, 본 발명의 일 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 일 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 각각의 도면에 기재된 과정의 순서를 변경하여 실행하거나 과정 중 하나 이상의 과정을 병렬적으로 실행하는 것으로 다양하게 수정 및 변형하여 적용 가능할 것이므로, 도 6 내지 10은 시계열적인 순서로 한정되는 것은 아니다.
한편, 도 6 내지 10에 도시된 과정들은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 즉, 컴퓨터가 읽을 수 있는 기록매체는 마그네틱 저장매체(예를 들면, 롬, 플로피 디스크, 하드디스크 등) 및 광학적 판독 매체(예를 들면, 시디롬, 디브이디 등)와 같은 저장매체를 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
이상의 설명은 본 실시예의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 실시예들은 본 실시예의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 실시예의 기술 사상의 범위가 한정되는 것은 아니다. 본 실시예의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 실시예의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
100: 카드 관리 시스템
110: 단말
120: 카드 관리서버
130: 보안 데이터베이스
140: 결제 단말
150: 카드사 서버
210, 310, 410, 510: 통신모듈
220, 320, 420, 520: 제어모듈
230, 330, 440, 530: 메모리부
240, 540: 서명값 관리모듈
430: 세션키 생성모듈

Claims (11)

  1. 단말이 세션키를 처리하는 방법에 있어서,
    결제 준비신호를 서버로 전송하는 제1 전송과정;
    상기 서버로부터 결제를 수행할 수 있도록 하는 세션키를 수신하여, 암호화가 필요하지 않은 정보가 저장될 수 있는 구성에 저장하는 저장과정;
    결제를 개시하기 위해, 저장된 세션키를 이용해 자신의 유효성 증명을 위한 전자서명을 생성하는 생성과정; 및
    생성한 전자서명을 결제단말로 전송하는 전송과정을 포함하며,
    상기 세션키는 특정 세션 동안에만 사용되는 암호화키로서, 카드 ID와 카드 내 잔액정보를 포함하는 것을 특징으로 하는 세션키 처리방법.
  2. 제1항에 있어서,
    상기 제1 전송과정은,
    상기 결제 준비신호와 함께 상기 단말이 유효한 단말인지 여부를 판단할 수 있도록 하는 카드 ID 또는 상기 단말 사용자의 CI(Connecting Information, 개인식별정보) 정보도 상기 서버로 전송하는 것을 특징으로 하는 세션키 처리방법.
  3. 제1항에 있어서,
    상기 전자서명에 대한 검증 결과 및 전자서명된 결제 요청신호를 상기 결제 단말로부터 수신하는 수신과정을 더 포함하는 것을 특징으로 하는 세션키 처리방법.
  4. 제3항에 있어서,
    저장된 세션키를 이용해 상기 결제 단말로부터 수신한 전자서명이 유효한지 검증하는 검증과정을 더 포함하는 것을 특징으로 하는 세션키 처리방법.
  5. 제4항에 있어서,
    상기 검증과정은,
    저장된 세션키를 이용해 전자서명을 생성하여, 상기 결제 단말로부터 수신한 전자서명과 생성한 전자서명이 동일하거나 대응되는지 여부를 판단함으로써, 상기 결제 단말로부터 수신한 전자서명의 유효성을 검증하는 것을 특징으로 하는 세션키 처리방법.
  6. 제1항 내지 제5항 중 어느 한 항의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
  7. 세션키 처리장치에 있어서,
    결제 준비신호를 서버로, 자신의 유효성 증명을 위한 전자서명을 결제단말로 전송하거나, 결제를 수행할 수 있도록 하는 세션키를 상기 서버로부터 수신하는 통신부;
    암호화가 필요하지 않은 정보를 저장하며, 상기 세션키를 저장하는 메모리부;
    상기 메모리부 내 저장된 세션키를 이용하여, 결제를 개시하기 위해 전자서명을 생성하는 서명값 관리모듈; 및
    상기 세션키 처리장치 내 저장된 각 구성의 동작을 제어하는 제어부를 포함하며,
    상기 세션키는 특정 세션 동안에만 사용되는 암호화키로서, 카드 ID와 카드 내 잔액정보를 포함하는 것을 특징으로 하는 세션키 처리장치.
  8. 제7항에 있어서,
    상기 제어부는,
    상기 통신부가 상기 서버로 상기 결제 준비신호를 전송함에 있어, 상기 세션키 처리장치가 유효한 세션키 처리장치인지 여부를 판단할 수 있도록 하는 카드 ID 또는 상기 세션키 처리장치 사용자의 CI(Connecting Information, 개인식별정보) 정보도 상기 서버로 함께 전송하도록 제어하는 것을 특징으로 하는 세션키 처리장치.
  9. 제7항에 있어서,
    상기 통신부는,
    상기 전자서명에 대한 검증 결과 및 전자서명된 결제 요청신호를 상기 결제 단말로부터 수신하는 것을 특징으로 하는 세션키 처리장치.
  10. 제9항에 잇어서,
    상기 서명값 관리모듈은,
    상기 메모리부 내 저장된 세션키를 이용해 상기 결제 단말로부터 수신한 전자서명이 유효한지 검증하는 것을 특징으로 하는 세션키 처리장치.
  11. 제10항에 있어서,
    상기 서명값 관리모듈은,
    저장된 세션키를 이용해 전자서명을 생성하여, 상기 결제 단말로부터 수신한 전자서명과 생성한 전자서명이 동일하거나 대응되는지 여부를 판단함으로써, 상기 결제 단말로부터 수신한 전자서명의 유효성을 검증하는 것을 특징으로 하는 세션키 처리장치.
KR1020180070237A 2018-06-19 2018-06-19 세션키 처리장치, 처리 방법 및 이를 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록매체 KR101958386B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020180070237A KR101958386B1 (ko) 2018-06-19 2018-06-19 세션키 처리장치, 처리 방법 및 이를 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록매체
PCT/KR2019/007292 WO2019245248A1 (ko) 2018-06-19 2019-06-17 세션키 처리장치, 처리 방법 및 이를 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록매체

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180070237A KR101958386B1 (ko) 2018-06-19 2018-06-19 세션키 처리장치, 처리 방법 및 이를 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록매체

Publications (1)

Publication Number Publication Date
KR101958386B1 true KR101958386B1 (ko) 2019-03-14

Family

ID=65759589

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180070237A KR101958386B1 (ko) 2018-06-19 2018-06-19 세션키 처리장치, 처리 방법 및 이를 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록매체

Country Status (2)

Country Link
KR (1) KR101958386B1 (ko)
WO (1) WO2019245248A1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150017234A (ko) * 2013-08-06 2015-02-16 한국조폐공사 사용자 단말 및 이를 이용한 교통수단 하차 처리방법
KR20170008668A (ko) * 2015-07-14 2017-01-24 김병수 다이나믹 트랙 2 결제 시스템 및 방법
KR20170074657A (ko) * 2015-12-22 2017-06-30 주식회사 한국스마트카드 클라우드 기반 지불 시스템

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101852455B1 (ko) * 2016-01-22 2018-06-11 주식회사 마크에이트 즉시충전 선불교통카드 및 이를 포함하는 교통 카드 결제 시스템
KR101771487B1 (ko) * 2017-04-28 2017-08-25 김승훈 앱 기반의 전자 지불 시스템 및 이를 이용한 전자 지불방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150017234A (ko) * 2013-08-06 2015-02-16 한국조폐공사 사용자 단말 및 이를 이용한 교통수단 하차 처리방법
KR20170008668A (ko) * 2015-07-14 2017-01-24 김병수 다이나믹 트랙 2 결제 시스템 및 방법
KR20170074657A (ko) * 2015-12-22 2017-06-30 주식회사 한국스마트카드 클라우드 기반 지불 시스템

Also Published As

Publication number Publication date
WO2019245248A1 (ko) 2019-12-26

Similar Documents

Publication Publication Date Title
US9978060B2 (en) Mobile secure element based shared cardholder verification
US20140258132A1 (en) System and method for secure electronic transaction
US20230281289A1 (en) Credential management for mobile devices
CN112889046A (zh) 用于非接触卡的密码认证的系统和方法
US20190132134A1 (en) Offline only terminal operation method and system
US8205795B2 (en) Communication device, remote server, terminal device, financial card issue system, financial card authentication system, and program
KR20180135007A (ko) 액세스 크리덴셜 관리 디바이스
KR101902992B1 (ko) 교통 카드 관리 시스템 및 방법
KR101958386B1 (ko) 세션키 처리장치, 처리 방법 및 이를 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록매체
KR101972599B1 (ko) 세션키 처리장치, 처리 방법 및 이를 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록매체
US20210385093A1 (en) Digital signature terminal and secure communication method
KR101850705B1 (ko) 앱 방식을 이용한 교통카드 발급 및 운용 시스템 및 방법
KR101103189B1 (ko) 범용 가입자 식별 모듈 정보를 이용한 공인 인증서 발급방법 및 시스템과 이를 위한 기록매체
KR101695097B1 (ko) 오티피카드를 이용한 계좌이체 기반 간편결제 방법
KR101902990B1 (ko) 보안모듈을 이용한 교통카드 발급 및 운용 시스템 및 방법
KR20190027313A (ko) 타겟 광고 제공 및 보안장치를 이용한 카드 관리 시스템 및 방법
KR101982003B1 (ko) 결제 중계 시스템 및 방법
KR20130010422A (ko) 음성통화 기반 결제처리 방법 및 시스템과 이를 위한 결제처리 서버와 통신단말기와 기록매체
KR102448378B1 (ko) 임시키 생성장치 및 방법
KR20180104585A (ko) 보안모듈을 이용한 교통카드 발급 및 운용 시스템 및 방법
KR101947011B1 (ko) 지역정보를 이용하는 카드 관리 시스템 및 방법
KR101907960B1 (ko) 보안장치를 이용한 카드 관리 시스템 및 방법
KR101691169B1 (ko) 암호키 배포 방법, 그를 이용한 카드리더 모듈, 인증 서버 및 암호키 배포 시스템
KR20200031026A (ko) 신호 처리 장치 및 방법
KR101992204B1 (ko) 결제 중계 시스템에서의 에뮬레이팅 장치 및 방법

Legal Events

Date Code Title Description
GRNT Written decision to grant