KR20080026140A - 단말장치 - Google Patents

단말장치 Download PDF

Info

Publication number
KR20080026140A
KR20080026140A KR1020080018542A KR20080018542A KR20080026140A KR 20080026140 A KR20080026140 A KR 20080026140A KR 1020080018542 A KR1020080018542 A KR 1020080018542A KR 20080018542 A KR20080018542 A KR 20080018542A KR 20080026140 A KR20080026140 A KR 20080026140A
Authority
KR
South Korea
Prior art keywords
encryption
key
card
information
card information
Prior art date
Application number
KR1020080018542A
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 KR1020080018542A priority Critical patent/KR20080026140A/ko
Publication of KR20080026140A publication Critical patent/KR20080026140A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0863Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B5/00Near-field transmission systems, e.g. inductive or capacitive transmission systems
    • H04B5/40Near-field transmission systems, e.g. inductive or capacitive transmission systems characterised by components specially adapted for near-field transmission
    • H04B5/48Transceivers

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Cash Registers Or Receiving Machines (AREA)

Abstract

본 발명은 단말장치에 관한 것으로서, 통신망 상의 서버와 결제승인요청 전문 송수신을 위한 통신채널을 연결하는 기능과, 고객 결제수단 정보가 리딩되면, 소정의 OTP(One Time Password) 코드를 생성하기 위한 OTP 생성 정보를 저장하는 메모리와 연계하여, 상기 리딩되는 결제수단 정보를 암호화하기 위한 OTP 코드를 생성하는 기능과, 상기 생성된 상기 OTP 코드를 암호화 키로 이용하여 상기 리딩된 결제수단 정보를 암호화 처리하는 기능 및 상기 암호화된 결제수단 정보를 포함하는 결제승인요청 전문을 생성하여 상기 연결된 통신채널을 통해 상기 통신망 상의 서버로 전송하는 기능을 구비한다.
결제, 승인, 카드리더 모듈

Description

단말장치{Terminal Devices}
도 1은 본 발명의 실시 방법에 따른 POS 단말의 기능 구성을 도시한 도면이다.
도 2는 본 발명의 실시 방법에 따른 POS 단말의 RFID 리더부와 RFID 태그 간 기능구성에 대한 간단한 도면이다.
도 3은 본 발명의 일 실시 방법에 따라 소정의 암호화키를 통해 카드정보를 암호화하는 기능이 구비된 카드리더 모듈 구성을 도시한 도면이다.
도 4는 본 발명의 실시 방법에 따라 카드리더 모듈에서 카드정보를 대칭키(또는 비밀키) 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
도 5는 본 발명의 실시 방법에 따라 카드리더 모듈에서 카드정보를 공개키 기반 구조 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
도 6은 본 발명의 실시 방법에 따라 카드리더 모듈에서 카드정보를 전자봉투 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
도 7a와 도 7b는 본 발명의 실시 방법에 따라 카드리더 모듈에서 카드정보를 키교환 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
도 8은 본 발명의 다른 일 실시 방법에 따라 소정의 암호화키를 통해 카드정 보를 암호화하는 기능이 구비된 카드리더 모듈 구성을 도시한 도면이다.
도 9는 본 발명의 실시 방법에 따라 카드리더 모듈에서 카드정보를 대칭키(또는 비밀키) 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
도 10은 본 발명의 실시 방법에 따라 카드리더 모듈에서 카드정보를 공개키 기반 구조 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
도 11은 본 발명의 실시 방법에 따라 카드리더 모듈에서 카드정보를 전자봉투 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
도 12a와 도 12b는 본 발명의 실시 방법에 따라 카드리더 모듈에서 카드정보를 키교환 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
도 13은 본 발명의 또다른 일 실시 방법에 따라 소정의 암호화키를 통해 카드정보를 암호화하는 기능이 구비된 카드리더 모듈 구성을 도시한 도면이다.
도 14는 본 발명의 실시 방법에 따라 카드리더 모듈에서 카드정보를 대칭키(또는 비밀키) 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
도 15는 본 발명의 실시 방법에 따라 카드리더 모듈에서 카드정보를 공개키 기반 구조 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
도 16은 본 발명의 실시 방법에 따라 카드리더 모듈에서 카드정보를 전자봉투 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
도 17a와 도 17b는 본 발명의 실시 방법에 따라 카드리더 모듈에서 카드정보를 키교환 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
도 18은 본 발명의 일 실시 방법에 따라 소정의 OTP 코드를 통해 카드정보를 암호화하는 기능이 구비된 카드리더 모듈 구성을 도시한 도면이다.
도 19는 본 발명의 실시 방법에 따라 카드리더 모듈에서 카드정보를 대칭키(또는 비밀키) 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
도 20은 본 발명의 실시 방법에 따라 카드리더 모듈에서 카드정보를 공개키 기반 구조 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
도 21은 본 발명의 실시 방법에 따라 카드리더 모듈에서 카드정보를 전자봉투 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
도 22a와 도 22b는 본 발명의 실시 방법에 따라 카드리더 모듈에서 카드정보를 키교환 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
도 23은 본 발명의 다른 일 실시 방법에 따라 소정의 OTP 코드를 통해 카드정보를 암호화하는 기능이 구비된 카드리더 모듈 구성을 도시한 도면이다.
도 24는 본 발명의 실시 방법에 따라 카드리더 모듈에서 카드정보를 대칭키(또는 비밀키) 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
도 25는 본 발명의 실시 방법에 따라 카드리더 모듈에서 카드정보를 공개키 기반 구조 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
도 26은 본 발명의 실시 방법에 따라 카드리더 모듈에서 카드정보를 전자봉투 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
도 27a와 도 27b는 본 발명의 실시 방법에 따라 카드리더 모듈에서 카드정보를 키교환 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
도 28은 본 발명의 또다른 일 실시 방법에 따라 소정의 OTP 코드를 통해 카 드정보를 암호화하는 기능이 구비된 카드리더 모듈 구성을 도시한 도면이다.
도 29는 본 발명의 실시 방법에 따라 카드리더 모듈에서 카드정보를 대칭키(또는 비밀키) 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
도 30은 본 발명의 실시 방법에 따라 카드리더 모듈에서 카드정보를 공개키 기반 구조 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
도 31은 본 발명의 실시 방법에 따라 카드리더 모듈에서 카드정보를 전자봉투 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
도 32a와 도 32b는 본 발명의 실시 방법에 따라 카드리더 모듈에서 카드정보를 키교환 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
도 33은 본 발명의 실시 방법에 따른 암호화된 카드정보를 이용한 전자결제 기능을 수행하는 POS 단말의 동작 과정을 도시한 도면이다.
도 34는 본 발명의 실시 방법에 따른 결제승인요청 전문 구조를 예시한 도면이다.
<도면의 주요부분에 대한 설명>
100 : POS 단말 105 : 제어부
110 : 화면 출력부 115 : 키 입력부
120 : RFID 리더부 125 : 바코드 리더부
130 : 카드리더 모듈 135 : 통신 처리부
140 : 인쇄 출력부 145 : 메모리부
150 : 전원 공급부 155 : 인쇄장치
본 발명은 통신망 상의 서버와 결제승인요청 전문 송수신을 위한 통신채널을 연결하는 기능과, 고객 결제수단 정보가 리딩되면, 소정의 OTP(One Time Password) 코드를 생성하기 위한 OTP 생성 정보를 저장하는 메모리와 연계하여, 상기 리딩되는 결제수단 정보를 암호화하기 위한 OTP 코드를 생성하는 기능과, 상기 생성된 상기 OTP 코드를 암호화 키로 이용하여 상기 리딩된 결제수단 정보를 암호화 처리하는 기능 및 상기 암호화된 결제수단 정보를 포함하는 결제승인요청 전문을 생성하여 상기 연결된 통신채널을 통해 상기 통신망 상의 서버로 전송하는 기능을 구비하는 단말장치에 관한 것이다.
매장이 자동화되면서 매장관리와 재고관리 및 판매관리를 적어도 하나 이상 포함하는 판매시점 관리를 위해 각 매장마다 POS(Point Of Sales) 단말이 구비되었으며, 상기 판매시점 관리와 전자결제(또는 카드결제) 기능을 동시에 지원하기 위해 상기 POS 단말에 신용조회단말(Credit Authorization Terminal; CAT), 및/또는 직불결제단말 등과 같은 결제단말 기능이 추가되었다.
한편, 결제단말과 달리 상기 POS 단말은 대용량 저장장치와 고성능 연산장치를 구비한 컴퓨터로서, 고객관계관리를 위해 상기 전자결제(또는 카드결제) 중 상기 고객 카드로부터 획득되는 적어도 하나 이상의 카드정보를 상기 POS 단말 내 저장장치에 저장할 수 있다.
*그러나, 상기와 같이 카드정보를 상기 POS 단말 내 저장하여 고객관계관리에 이용하는 경우, 상기 고객에 대한 사생활 침해를 유발할 수 있는 심각한 문제점을 포함한다.
본 발명의 목적은 통신망 상의 서버와 결제승인요청 전문 송수신을 위한 통신채널을 연결하는 기능과, 고객 결제수단 정보가 리딩되면, 소정의 OTP(One Time Password) 코드를 생성하기 위한 OTP 생성 정보를 저장하는 메모리와 연계하여, 상기 리딩되는 결제수단 정보를 암호화하기 위한 OTP 코드를 생성하는 기능과, 상기 생성된 상기 OTP 코드를 암호화 키로 이용하여 상기 리딩된 결제수단 정보를 암호화 처리하는 기능 및 상기 암호화된 결제수단 정보를 포함하는 결제승인요청 전문을 생성하여 상기 연결된 통신채널을 통해 상기 통신망 상의 서버로 전송하는 기능을 구비하는 단말장치를 제공함에 있다.
본 발명에 따른 단말장치는, 통신망 상의 서버와 결제승인요청 전문 송수신을 위한 통신채널을 연결하는 기능과, 고객 결제수단 정보가 리딩되면, 소정의 OTP(One Time Password) 코드를 생성하기 위한 OTP 생성 정보를 저장하는 메모리와 연계하여, 상기 리딩되는 결제수단 정보를 암호화하기 위한 OTP 코드를 생성하는 기능과, 상기 생성된 상기 OTP 코드를 암호화 키로 이용하여 상기 리딩된 결제수단 정보를 암호화 처리하는 기능 및 상기 암호화된 결제수단 정보를 포함하는 결제승인요청 전문을 생성하여 상기 연결된 통신채널을 통해 상기 통신망 상의 서버로 전송하는 기능을 구비한다.
이하 첨부된 도면과 설명을 참조하여 본 발명의 바람직한 실시예에 대한 동작 원리를 상세히 설명한다. 다만, 하기에 도시되는 도면과 후술되는 설명은 본 발명의 특징을 효과적으로 설명하기 위한 여러 가지 방법 중에서 바람직한 실시 방법에 대한 것이며, 본 발명이 하기의 도면과 설명만으로 한정되는 것은 아니다.
또한, 하기에서 본 발명을 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서, 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명에서 전반에 걸친 내용을 토대로 내 려져야 할 것이다.
또한, 이하 실시되는 본 발명의 바람직한 실시예는 본 발명을 이루는 기술적 구성요소를 효율적으로 설명하기 위해 각각의 시스템 기능구성에 기 구비되어 있거나, 또는 본 발명이 속하는 기술분야에서 통상적으로 구비되는 시스템 기능구성은 가능한 생략하고, 본 발명을 위해 추가적으로 구비되어야 하는 기능구성을 위주로 설명한다.
만약 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면, 하기에 도시하지 않고 생략된 기능구성 중에서 종래에 기 사용되고 있는 구성요소의 기능을 용이하게 이해할 수 있을 것이며, 또한 상기와 같이 생략된 구성요소와 본 발명을 위해 추가된 구성요소 사이의 관계도 명백하게 이해할 수 있을 것이다.
또한, 이하 실시예는 본 발명의 핵심적인 기술적 특징을 효율적으로 설명하기 위해 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 명백하게 이해할 수 있도록 용어를 적절하게 변형하여 사용할 것이나, 이에 의해 본 발명이 한정되는 것은 결코 아니다.
결과적으로, 본 발명의 기술적 사상은 청구범위에 의해 결정되며, 이하 실시예는 진보적인 본 발명의 기술적 사상을 본 발명이 속하는 기술분야에서 통상의 지 식을 가진 자에게 효율적으로 설명하기 위한 일 수단일 뿐이다.
도면1은 본 발명의 실시 방법에 따른 POS 단말(100)의 기능 구성을 도시한 도면이다.
보다 상세하게 본 도면1은 고객 카드로부터 리딩되는 카드정보의 암호화를 통한 보안 결제 서비스를 제공하기 위한 POS(Point Of Sales) 단말의 일 실시 방법에 대한 것으로서, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면, 본 도면1을 참조 및/또는 변형하여 고객 카드로부터 리딩되는 카드정보의 암호화를 통한 보안 결제 서비스를 제공하기 위한 다양한 POS 단말(100) 기능 구성을 유추할 수 있을 것이나, 본 발명의 기술적 특징이 본 도면1에 의해 한정되는 것이 아니라, 상기 유추되는 모든 실시 방법을 포함하는 것임을 밝혀두는 바이다.
본 발명의 실시 방법에 따르는 도면1을 참조하면, 상기 고객 카드로부터 리딩되는 카드정보의 암호화를 통한 보안 결제 서비스를 제공하기 위한 POS 단말(100)은 판매시점 관리를 위한 POS 고유 기능과, 적어도 하나 이상의 결제수단을 구비한 고객 카드를 통한 전자결제 기능을 구비하여 이루어진 것으로 도시하지만, 본 발명에 따른 모든 POS 단말(100)이 본 도면1에 도시된 실시 방법으로 한정되는 것은 결코 아님을 밝혀두는 바이다.
도면1을 참조하면, POS 단말(100)은 기본적으로 제어부(105)와 메모리부(145)와 키 입력부(115)와 화면 출력부(110)와 바코드 리더부(125)(및/또는 RFID 리더부(120))와 인쇄 출력부(140) 등을 구비하고, 상기 POS 단말(100)로 소정의 전원을 공급하는 전원 공급부(150)를 포함하여 이루어지는 것을 특징으로 하며, 적어도 하나 이상의 결제수단이 구비된 고객 카드를 통한 전자결제 기능을 제공하기 위해 카드리더 모듈과 통신 처리부(135)를 적어도 하나 이상 더 구비하여 이루어지는 것을 특징으로 한다.
또한, 상기 POS 단말(100)은 보다 효율적인 판매시점 관리를 위해 소정의 현금 보관함을 더 구비하는 것이 바람직하며, 이에 의해 본 발명이 한정되지 아니한다.
상기 제어부(105)는 기능 구성 상 POS 단말(100)의 전반적인 동작을 제어하고, 각 구성요소 간 정보 또는 데이터의 흐름을 관리하며, 고객 카드로부터 리딩되는 카드정보의 암호화를 통한 보안 결제 처리를 위해 POS 단말(100)에 구비되는 구성요소를 제어하는 것을 특징으로 하며, 하드웨어적으로 CPU(Central Processing Unit)/MPU(Micro Processing Unit)를 포함하는 적어도 하나 이상의 프로세서와 실행 메모리(예컨대, 레지스터 및/또는 RAM(Random Access Memory)) 및 소정의 데이터를 입출력하는 버스(BUS)를 포함하여 이루어지는 것을 특징으로 하고, 또한 소프트웨어적으로 POS 단말(100) 특유의 기능을 수행하기 위해 소정의 기록매체로부터 상기 실행 메모리로 로딩(Loading)되어 상기 프로세서에 의해 연산 처리되는 소정의 프로그램 루틴(Routine) 및/또는 프로그램 데이터를 포함(따라서, 고객 카드로부터 리딩되는 카드정보의 암호화를 통한 보안 결제 처리를 위해 상기 POS 단말(100)에 구비된 기록매체에 기록되는 소정의 프로그램 및/또는 상기 POS 단말(100)에 구비되는 기능구성 중에서 소프트웨어적으로 처리가 가능한 구성요소를 본 제어부(105) 내에 구비되는 것으로 도시함)하여 이루어지는 것을 특징으로 한다.
본 발명의 실시 방법에 따르면, 상기 제어부(105)는 상기 POS 단말(100)에 구비되는 구성요소(예컨대, 상기 메모리부(145)와 카드리더 모듈과 키 입력부(115)와 화면 출력부(110)와 통신 처리부(135)와 보안응용모듈(x35)과 인쇄 출력부(140) 및/또는 당업자의 의도에 따른 단말 기능부(도시생략) 등)를 상호 연동하여 상기 POS 단말(100)에 정의된 판매시점 관리 기능을 제어 및 관리함은 물론, 본 발명에 따른 고객 카드로부터 리딩되는 카드정보의 암호화를 통한 보안 결제 서비스를 위해 상기 POS 단말(100)에 구비되는 상기 구성요소를 상호 연동하여 제어하거나, 및/또는 상기 고객 카드로부터 리딩되는 카드정보의 암호화를 통한 보안 결제 서비스를 위해 상기 POS 단말(100)에 구비된 기록매체에 기록되는 프로그램을 실행하는 것이 바람직하다.
상기 메모리부(145)는 POS 단말(100)의 전반적인 동작을 제어하기 위한 소정 의 프로그램 루틴(또는 코드) 및/또는 프로그램 데이터(예컨대, 프로그램 루틴(또는 코드)에 의한 동작이 수행될 때 입출력되는 정보 또는 데이터)를 저장하기 위한 비휘발성 메모리의 총칭으로서, 하드웨어적으로 EEPROM(Electrically Erasable and Programmable Read Only Memory) 및/또는 FM(Flash Memory) 및/또는 HDD(Hard Disk Drive)를 포함하는 적어도 하나 이상의 저장수단을 포함하여 이루어지며, 상기 제어부(105)가 소정의 제어 기능을 수행하기 위해 요구되는 소정의 프로그램 루틴과 프로그램 데이터(예컨대, 프로그램 루틴이 소정의 기능을 수행하기 위해 입력 또는 출력되는 데이터)가 저장되는 것을 특징으로 한다.
본 발명의 실시 방법에 따르면, 상기 메모리부(145)는 판매시점 관리를 위해 상기 POS 단말(100)이 구비된 매장에서 판매하는 적어도 하나 이상의 상품에 대한 상품정보와, 상기 상품에 부착된 태그(예컨대, RFID(Radio Frequency Identification) 태그, 및/또는 바코드(Barcode) 태그)에 구비된 소정의 태그정보(예컨대, RFID 정보, 바코드 정보)를 연계 처리하여 저장하는 것을 특징으로 한다.
여기서, 상기 상품정보는 상기 POS 단말(100)이 구비된 매장에서 판매하는 적어도 하나 이상의 상품에 대한 상품명 정보와 상기 상품의 판매가격 정보(또는 할인된 판매가격 정보)를 포함하여 이루어지는 것을 특징으로 한다.
또한, 상기 태그정보 중 RFID 정보는 EPC(Electronic Product Code), 및/또 는 ISO 코드, 및/또는 U-코드 중 상기 POS 단말(100)이 구비된 매장에서 판매하는 적어도 하나 이상의 상품에 부착된 적어도 하나 이상의 RFID 코드를 포함하여 이루어지는 것을 특징으로 하며, 및/또는 상기 바코드 정보는 1차원 바코드, 및/또는 2차원 바코드, 및/또는 3차원 바코드, 및/또는 컬러코드 중 상기 POS 단말(100)이 구비된 매장에서 판매하는 적어도 하나 이상의 상품에 부착된 적어도 하나 이상의 바코드를 포함하여 이루어지는 것을 특징으로 한다.
본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면, 상기 메모리부(145)에 연계 처리되어 저장된 적어도 하나 이상의 상품정보와 태그정보에 대한 기술적 속성과 특징을 기 숙지하고 있을 것이므로, 이에 대한 보다 상세한 설명은 편의상 생략한다.
본 발명의 다른 실시 방법에 따라 상기 POS 단말(100)이 대형 매장으로서 상기 매장 내에 적어도 두개 이상의 POS 단말(100)이 구비되고, 상기 POS 단말(100)이 소정의 로컬서버(도시생략)를 통해 관리되는 경우, 상기 메모리부(145)에 연계 처리되어 저장된 적어도 하나 이상의 상품정보와 태그정보는 상기 로컬서버에 구비된 데이터베이스(도시생략)에 저장되어도 무방하며, 이에 의해 본 발명이 한정되지 아니한다.
본 발명의 다른 일 실시 방법에 따르면, 상기 메모리부 및/또는 상기 POS 단 말과 연계되는 로컬 서버(예컨대, 대형매장에서 적어도 하나 이상의 POS 단말을 관리하는 매장 서버(도시생략))에 구비된 데이터베이스(도시생략)는 상기 고객의 카드정보를 제외하고 상기 고객 관리에 필요한 고객정보를 저장할 수 있으며, 이에 의해 본 발명이 한정되지 아니한다.
상기 화면 출력부(110)는 상기 POS 단말(100)이 판매시점 관리 기능을 수행하는 과정에서 상기 제어부(105)에 의해 LCD(Liquid Crystal Display) 및/또는 CRT(Cathode Ray Tube)를 포함하는 소정의 화면출력 장치로 출력되도록 미리 정의되거나 또는 실시간 정의되어지는 적어도 하나 이상의 정보 또는 데이터를 미리 정의된 인터페이스 화면을 통해 출력하는 것을 특징으로 하며, 상기 화면 출력부(110)와 화면출력 장치가 상호 연동하여 상기 POS 단말(100)에 구비되는 화면출력수단의 기능을 수행한다.
상기 POS 단말(100)에서 상기 화면출력 장치에 출력되도록 미리 정의된 정보 또는 데이터는, 상기 RFID 리더부(120)(및/또는 바코드 리더부(125))를 통해 적어도 하나 이상의 상품에 부착된 태그로부터 리딩되는 태그정보에 대응하여 상기 메모리부(145)로부터 추출되는 상품정보(예컨대, 상품명 정보와 상품 판매가격 정보)를 포함하여 이루어지며, 이외에 당업자의 의도에 따라 상기 키 입력부(115)를 통해 입력되는 키 데이터, 및/또는 상기 POS 단말(100)에서 수행하는 소정의 연산결과(예컨대, 적어도 하나 이상의 상품 판매가격을 합산한 총 금액), 및/또는 통신 처리부(135)를 통해 송수신되는 적어도 하나 이상의 정보(또는 데이터)를 적어도 하나 이상 포함하여 이루어진다.
본 발명의 바람직한 실시 방법에 따르면, 상기 화면 출력부(110)는 상기 POS 단말(100)에 정의된 판매시점 관리 서비스를 위해 상기 화면출력 장치로 각 판매시점 관리 단계에 따른 판매시점 관리 화면을 출력시키는 화면출력수단의 기능을 수행하는 것이 바람직하며, 또한 본 발명에 따른 고객 카드로부터 리딩되는 카드정보의 암호화를 통한 보안 결제 서비스를 위해 상기 화면출력장치로 상기 전자결제 단계에 대응하는 처리 화면을 출력시키는 화면출력수단의 기능을 수행하는 것이 바람직하다.
상기 키 입력부(115)는 적어도 하나 이상의 숫자키(Number Key) 및/또는 문자키(Character Key) 및/또는 기능키(Function Key) 및/또는 메뉴키(Menu Key) 포함하는 적어도 하나 이상의 키 버튼(Key Button)을 구비한 소정의 키 입력장치로부터 입력되는 정보(또는 신호)를 검출하고, 상기 제어부(105)에 의해 제어되는 상기 POS 단말(100)의 특정 입력모드 및/또는 동작모드에서 상기 키 입력장치에 구비된 소정의 키 버튼으로부터 소정의 정보(또는 신호)가 입력되면, 상기 입력되는 정보(또는 신호)에 대응하는 키 이벤트를 발생하고, 상기 발생된 키 이벤트를 상기 제어부(105)로 제공하는 것을 특징으로 하며, 이 때 상기 제어부(105)는 상기 POS 단말(100)의 현재 입력모드 및/또는 동작모드에서 상기 키 이벤트에 대응하는 소정의 키 데이터를 획득하거나, 및/또는 상기 키 이벤트와 매칭되어 정의된 소정의 기능을 실행하는 명령어를 획득하는 것을 특징으로 한다. 상기 키 입력부(115)와 적어도 하나 이상의 키 버튼을 구비한 상기 키 입력장치가 상호 연동하여 상기 POS 단말(100)에 구비되는 키 입력수단의 기능을 수행한다.
상기 키 입력부(115)와 연동하는 키 입력장치는 적어도 하나 이상의 숫자키 및/또는 문자키 및/또는 기능키 및/또는 메뉴키를 구비한 키패드 장치, 및/또는 적어도 하나 이상의 숫자키 및/또는 문자키 및/또는 기능키 및/또는 메뉴키를 구비한 키보드 장치, 및/또는 상기 화면 출력수단과 연동하여 적어도 하나 이상의 숫자키 입력 기능 및/또는 문자키 입력 기능 및/또는 기능키 입력 기능 및/또는 메뉴키 입력 기능을 구비한 터치스크린 장치를 적어도 하나 이상 포함하여 이루어지는 것이 바람직하다.
본 발명의 실시 방법에 따르면, 상기 키 입력부(115)는 상기 POS 단말(100)에 정의된 판매시점 관리 서비스를 위해 적어도 하나 이상의 키 입력장치로부터 상기 판매시점 관리 서비스에 대응하는 키 데이터를 입력받는 키 입력수단의 기능을 수행하는 것이 바람직하며, 또한 본 발명에 따른 고객 카드로부터 리딩되는 카드정보의 암호화를 통한 보안 결제 서비스를 위해 상기 키 입력장치로부터 상기 전자결제 제공 과정에서 요구되는 적어도 하나 이상의 키 데이터를 입력받는 키 입력수단의 기능을 수행하는 것이 바람직하다.
상기 RFID 리더부(120)는 상기 POS 단말(100) 내에서 상기 매장에서 판매하는 적어도 하나 이상의 상품에 부착된 RFID 태그로부터 소정의 RFID 정보를 독출하는 RFID 리더기의 기능을 수행하는 것을 특징으로 하며, 상기 RFID 리더기의 내부 기능구성은 상기 RFID 태그의 기능구성 및/또는 상기 RFID 태그가 사용하는 주파수 대역에 따라 가변적이다. 본 발명에서는 RFID 리더부(120)를 통해 바람직한 실시방법을 포함하는 RFID 리더기와 RFID 태그의 기능구성을 도시하여 설명한다.
상기 RFID 리더부(120)는 상기 POS 단말(100) 내에서 소정의 상기 매장에서 판매하는 적어도 하나 이상의 상품에 부착된 바코드 태그로부터 소정의 바코드 정보를 독출하는 바코드 리더기의 기능을 수행하는 것을 특징으로 한다.
본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면, 상기 바코드 리더부(125)가 소정의 바코드 리더 장치를 통해 적어도 하나 이상의 상품에 부착된 바코드를 리딩하는 기술적 특징을 기 숙지하고 있을 것이므로, 이에 대한 상세한 설명은 편의상 생략한다.
본 발명의 실시 방법에 따르면, 상기 RFID 리더부(120)(및/또는 바코드 리더부(125))를 통해 상기 매장에서 판매하는 적어도 하나 이상의 상품에 부착된 태그로부터 적어도 하나 이상의 태그정보가 리딩되면, 상기 태그정보는 상기 제어 부(105)로 제공되며, 상기 제어부(105)는 상기 태그정보를 기반으로 상기 메모리부(145)에 저장된 상품정보를 조회함으로써, 상기 태그정보에 대응하는 상품정보(예컨대, 상품명 정보와 상품 판매가격 정보)를 추출하고, 상기 추출된 상품정보를 상기 화면 출력부(110)를 통해 상기 화면 출력수단의 판매시점 관리 화면으로 출력하는 것이 바람직하다.
이 때, 상기 제어부(105)는 상기 RFID 리더부(120)(및/또는 바코드 리더부(125))를 통해 리딩되는 상기 태그정보에 대응하여 상기 메모리부(145)로부터 추출되는 상기 상품정보에 포함된 상품 판매가격을 합산함으로써, 상기 합산된 총 판매가격을 상기 화면 출력부(110)를 통해 상기 화면 출력수단의 판매시점 관리 화면으로 출력하는 것이 바람직하다.
상기 인쇄 출력부(140)는 상기 POS 단말(100)이 상기 판매시점 관리 기능을 수행하는 과정 및/또는 그 결과로서 생성되는 소정의 인쇄 데이터를 소정의 인쇄장치를 통해 출력하는 것을 특징으로 하며, 상기 인쇄 데이터를 소정의 인쇄 양식에 맞게 상기 인쇄장치를 통해 인쇄하기 위한 인쇄 프로토콜 및 드라이버를 포함하여 이루어지는 것이 바람직하다.
여기서, 상기 인쇄장치는 소정의 가멸지에 소정의 인쇄 데이터(예컨대, 고객이 구매한 상품에 대한 상품정보 및/또는 태그정보)를 인쇄하는 도트 프린터, 및/ 또는 잉크젯 프린터, 및/또는 버블젯 프린터, 및/또는 레이저 프린터 중 어느 하나를 포함하여 이루어지는 것이 바람직하다.
본 발명의 실시 방법에 따라 상기 POS 단말(100)에 적어도 하나 이상의 결제수단을 구비한 고객 카드를 통한 전자결제 기능을 구비한 경우, 상기 인쇄 출력부(140)는 상기 전자결제 결과(예컨대, 결제처리 내역)에 대응하는 인쇄 데이터를 상기 인쇄장치를 통해 출력하는 기능을 더 구비하여 이루어지는 것이 바람직하며, 이 때 상기 인쇄장치는 소정의 가멸지에 상기 전자결제 결과(예컨대, 결제처리 내역)을 포함하는 영수증을 인쇄하는 도트 프린터, 및/또는 잉크젯 프린터, 및/또는 버블젯 프린터, 및/또는 레이저 프린터 중 어느 하나를 포함하여 이루어지는 것이 바람직하다.
본 발명의 실시 방법을 따르는 도면1을 참조하면, 상기 POS 단말(100)은 소정의 고객 카드를 통한 전자결제 기능을 제공하기 위해, 적어도 하나 이상의 결제수단을 구비한 고객 카드로부터 전자결제 처리를 위한 소정의 카드정보를 리딩하는 카드리더 모듈(130)과, 상기 카드정보를 포함하는 소정의 결제승인요청 전문을 소정의 결제 네트워크(예컨대, 부가가치통신망(Value Added Network; VAN)) 상의 호스트로 전송하고, 상기 호스트로부터 상기 결제승인요청 전문에 대응하는 결제처리 내역을 포함하는 결제승인 전문을 수신하는 통신 처리부(135)를 구비하여 이루어지는 것을 특징으로 한다.
본 발명의 실시 방법에 따르면, 상기 매장에 방문하여 적어도 하나 이상의 상품을 구매하는 고객은, ISO/IEC 7810 규격을 기반으로 MS(Magnetic Stripe)카드, 및/또는 ISO/IEC 7816 규격을 기반으로 접촉식 IC카드(또는 무선 IC칩), 및/또는 ISO/IEC 14443 규격을 기반으로 비접촉식 IC카드(또는 무선 IC칩)을 적어도 하나 이상 포함하는 카드를 소지(또는 소유)하는 것이 바람직하며, 상기 고객 카드를 통한 전자결제를 별도의 신용조회단말(Credit Authorization Terminal; CAT) 및/또는 직불결제단말 없이 처리하기 위해 상기 POS 단말(100)은 상기 카드에 구비된 적어도 하나 이상의 카드정보를 리딩하는 카드리더 모듈(130)을 구비한다.
여기서, 상기 고객 카드로부터 리딩되는 카드정보는 신용카드 정보, 및/또는 체크카드 정보, 및/또는 직불카드 정보, 및/또는 선불카드 정보, 및/또는 금융계좌 정보 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 상기 카드정보(또는 상술된 카드정보에서 생략된 다른 카드정보)에 의해 본 발명이 한정되지 아니한다.
본 발명의 실시 방법에 따르면, 상기 카드리더 모듈(130)은 상기 MS카드와 상기 POS 단말(100) 간 인터페이스를 제공하는 MS 리더부, 및/또는 상기 접촉식 IC카드와 상기 POS 단말(100) 간 인터페이스를 제공하는 접촉식 IC 리더부, 및/또는 상기 비접촉식 IC카드와 상기 POS 단말(100) 간 인터페이스를 제공하는 비접촉 식 IC 리더부 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하다.
본 발명에 따르면, 상기 카드리더 모듈(130)은 상기 POS 단말(100)에 구비되는 전자결제 서비스를 위해 상기 고객 카드로부터 소정의 카드정보를 리딩하고, 상기 리딩된 카드정보를 암호화하여 상기 제어부(105)로 제공하는 것을 특징으로 한다.
여기서, 상기 카드리더 모듈(130)이 상기 고객 카드로부터 리딩된 카드정보를 암호화하는 방법은 하드웨어적인 암호화 방법(예컨대, 암호화 칩셋 및/또는 회로 구성을 통한 암호화 방법) 및/또는 소프트웨어적인 암호화 방법 중 어느 하나를 포함하여 이루어지는 것이 바람직하며, 이에 의해 본 발명이 한정되지 아니한다.
본 발명의 실시 방법에 따르면, 상기 카드리더 모듈(130)이 상기 고객 카드로부터 리딩된 카드정보를 암호화하는 방식은 대칭키(또는 비밀키) 암호화 방식, 및/또는 공개키 암호화 방식, 및/또는 전자봉투 암호화 방식, 및/또는 키교환 암호화 방식 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하다.
여기서, 상기 카드정보를 암호화하기 위한 암호화키는 상기 카드리더 모듈(130)에 구비되거나, 및/또는 상기 카드리더 모듈(130) 내에서 OTP(One Time Password) 방식으로 동적 생성되는 것이 모두 가능하며, 이에 의해 본 발명이 한정 되지 아니한다.
상기 카드리더 모듈(130)에 의해 상기 암호화된 카드정보를 제공받은 상기 제어부(105)는 상기 RFID 리더부(120)(및/또는 바코드 리더부(125))를 통해 리딩된 적어도 하나 이상의 태그정보에 대응하는 상품정보에 포함된 적어도 하나 이상의 상품 판매가격을 합산하여 산출된 총 판매금액을 결제금액 정보로 처리하고, 상기 결제금액 정보와 상기 카드리더 모듈(130)을 통해 상기 고객 카드로부터 리딩된 카드정보를 포함하는 소정의 결제승인요청 전문을 생성한다.
본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면, 상기 결제금액 정보와 상기 카드정보를 기반으로 각각의 결제수단에 대응하는 결제승인요청 전문을 생성하는 기술적 특징을 기 숙지하고 있을 것이므로, 이에 대한 상세한 설명은 편의상 생략한다.
본 발명의 실시 방법에 따르면, 상기 생성된 결제승인요청 전문은 상기 통신 처리부(135)를 통해 결제 네트워크(VAN) 상의 호스트로 전송되는 것이 바람직하다.
상기 통신 처리부(135)는 일반전화교환망(Public Switched Telephone Network; PSTN), 및/또는 xDSL 기반 유선 통신망, 및/또는 CDMA(Code Division Multiple Access) 기반 이동 통신망, 또는 IEEE 802.16x 기반 휴대 인터넷을 적어 도 하나 이상 포함하는 무선 통신망 중 어느 하나의 통신망을 백본망으로 이용하여 상기 결제 네트워크 상의 호스트와 적어도 하나 이상의 결제관련 전문 송수신을 위한 통신채널을 연결하는 것을 특징으로 한다.
본 발명의 실시 방법에 따르면, 상기 제어부(105)를 통해 상기 RFID 리더부(120)(및/또는 바코드 리더부(125))로부터 리딩된 적어도 하나 이상의 태그정보에 대응하는 상품정보에 포함된 적어도 하나 이상의 상품 판매가격을 기반으로 산출된 결제금액 정보와, 상기 카드리더 모듈(130)을 통해 리딩된 카드정보를 포함하는 소정의 결제승인요청 전문이 생성되면, 상기 통신 처리부(135)는 상기 일반전화교환망(PSTN), 및/또는 xDSL 기반 유선 통신망, 및/또는 CDMA 기반 이동 통신망, 또는 IEEE 802.16x 기반 휴대 인터넷을 적어도 하나 이상 포함하는 무선 통신망 중 어느 하나의 통신망을 백본망으로 이용하여 상기 결제승인요청 전문을 상기 결제 네트워크 상의 호스트로 전송하는 것을 특징으로 한다.
상기 결제 네트워크 상의 호스트로 상기 결제승인요청 전문을 전송한 후, 상기 통신 처리부(135)는 상기 호스트로부터 상기 결제승인요청 전문에 대응하는 결제처리 내역을 포함하는 소정의 결제승인 전문이 수신되는지 주기적으로(또는 전문 수신 이벤트에 대응하여) 확인한다.
만약 상기 결제 네트워크 상의 호스트로부터 상기 백본망을 통해 상기 결제 승인요청 전문에 대응하는 결제처리 내역을 포함하는 소정의 결제승인 전문이 수신되면, 상기 통신 처리부(135)는 상기 수신된 결제승인 전문을 상기 제어부(105)로 제공하며, 상기 제어부(105)는 상기 결제승인 전문으로부터 상기 결제처리 내역을 추출하고, 상기 추출된 결제처리 내역을 상기 화면 출력부(110)를 통해 화면 출력하거나, 및/또는 상기 인쇄 출력부(140)를 통해 인쇄 출력한다.
본 발명의 다른 일 실시 방법에 따르면, 상기 통신 처리부(135)는 상기 호스트로부터 상기 가맹점 매장의 고객 관리에 필요한 최소한의 고객정보(예컨대, 고객 카드정보를 제외한 고객정보)를 제공받을 수 있으며, 이에 의해 본 발명이 한정되지 아니한다.
도면2는 본 발명의 실시 방법에 따른 POS 단말(100)의 RFID 리더부(120)와 RFID 태그 간 기능구성에 대한 간단한 도면이다.
보다 상세하게 본 도면2는 상기 도면1에 도시된 POS 단말(100)의 RFID 리더부(120)와 상기 POS 단말(100)이 구비된 매장에서 판매하는 적어도 하나 이상의 상품에 부착된 RIFD 태그 간 기능 구성에 대한 것으로서, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면, 본 도면2를 참조 및/또는 변형하여 상기 RFID 리더부(120)와 RFID 태그 간 기능 구성에 대한 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 실시 방법을 모두 포함하며, 본 도면2에 도시된 실시 방법으로 한정되지 아니한다.
도면2를 참조하면, 상기 RFID 태그는 RFID 리더부(120)로부터 소정의 주파수대의 무선 주파수 신호(전파)를 송수신하는(또는 에너지원(전원)을 공급받는) 역할을 수행하는 안테나부(255)(본 도면2에서는 편의상 외장형으로 도시함)와, 소정의 고유 정보를 저장하는 메모리부(275)와, 클럭 발생부(260)와, 전원부(265)와, 명령어 검출부(270)와, 엔코더부(280)와, 변조 절차부(285) 및 변조 스위치부(290)로 구성되는데, 상기 RFID 태그의 메모리부(275)는 EPC(Electronic Product Code) 및/또는 U-코드 및/또는 ISO/IEC 15963 및/또는 당업자의 의도(또는 적용분야)에 따른 임의의 코드값을 포함하는 고유 정보를 미리 정의된 메모리 구조에 따라 저장한다. 또한, 상기 전원부(265)는 수동형 RFID 태그의 경우 상기 안테나부(255)를 통해 수신되는 무선 주파수 신호로부터 소정의 전압치를 갖는 소정의 전원을 생성하거나, 능동형 RFID 태그의 경우 소정의 전원을 충전하여 저장하며, 상기 전원은 상기 RFID 태그 전체에 공급된다. 또한, 상기 클럭 발생부(260)는 상기 안테나부(255)로부터 입력된 무선 주파수 신호를 기반으로 소정의 클럭을 발생하고, 상기 명령어 검출부(270)는 상기 안테나부(255)로부터 입력된 무선 주파수 신호로부터 소정의 명령어를 검출하는데, 상기 클럭과 상기 명령어에 의해 상기 메모리부(145)(275)로부터 소정의 고유 정보가 추출되어 상기 엔코더부(280)로 제공된다. 상기 엔코더부(280)에 의해 엔코딩된 상기 고유 정보는 상기 변조 절차부(285)에 의한 소정의 변조 절차에 기반으로 상기 변조 스위치부(290)에 의해 변조되어 상기 안테나 부(255)를 통해 상기 RFID 리더부(120)로 송신된다.
본 발명의 바람직한 실시 방법에 따르면, 상기 메모리부(275)는 읽기전용 메모리(예컨대, ROM(Read Only Memory)) 및/또는 읽기/쓰기 메모리(예컨대, EEPROM(Electrically Erasable and Programmable Read Only Memory), FM(Flash Memory), RAM(Random Access Memory)) 및/또는 한 번 쓰고 여러 번 읽기(Write Once Read Many: WORM) 메모리를 적어도 하나 이상 포함하여 이루어지는 것이 바람직하다.
상기 RFID 리더부(120)는 RFID 태그를 향해 소정의 전파를 방출하거나 또는 받아들이는 전자회로와, 상기 전자회로와 연계하여 상기 RFID 태그로 특정 주파수의 전파를 방출 및/또는 받아들이는 안테나와, 상기 RFID 태그로부터 수신되는 신호(Signal)를 판독하여 소정의 데이터를 추출 및 검증(Check)하는 마이크로 컨트롤러(215)를 포함하여 이루어지는 것이 일반적이며, 상기 RFID 태그에 구비된 기능구성 및/또는 RFID 시스템의 적용분야(예컨대, 물류/유통분야, 제조업분야, 의료/동물관리분야 등등)에 따라 상기 데이터를 저장하는 기능구성, 또는 상기 데이터를 소정의 정보처리단말(또는 서버)로 전송하는 기능구성 등을 더 포함하여 이루어질 수 있으며, 본 도면2에 도시된 RFID 리더부(120)의 기능구성은 RFID 태그와 상호 작용하는 RFID 리더부(120)에 대한 것으로서, 본 발명을 이루기 위한 RFID 리더부(120)의 기능구성이 본 도면2의 경우로 한정되는 것은 결코 아님을 밝혀두는 바 이다.
도면2를 참조하면, 상기 RFID 리더부(120)는 상기 안테나부(225)를 통해 방출(송출)할 무선 주파수 신호를 위한 발진부(210)와 상기 안테나부(225)를 통해 상기 무선 주파수 신호 송출을 제어하는 마이크로 컨트롤러(215)와, 상기 무선 주파수 신호를 안테나부를 통해 방출(송출)하기 위해 전력을 증폭하는 전력 증폭부(220) 및 상기 안테나부(225)를 통해 상기 RFID 태그로부터 수신되는 무선 주파수 신호로부터 피크(Peak)를 검출하는 피크 검출부(230)를 포함하여 이루어지며, 또한 상기 검출된 피크를 정형화(Shaping)하는 정형부(245) 및/또는 상기 피크를 증폭(Amplifying)하는 증폭부(240) 및/또는 상기 피크를 필터링(Filtering)하는 필터부(235)를 포함하여 이루어진다. 특히, 상기 마이크로 컨트롤러(215)는 상기 피크(예컨대, 정형화 및/또는 증폭 및/또는 필터링된 피크)로부터 소정의 데이터를 독출하여 판독(해독)하는 기능을 더 포함하여 이루어지는 것이 바람직하며, 상기 데이터는 상기 RFID 리더부(120) 내 저장되거나 또는 상기 데이터에 대한 정보처리를 수행하는 소정의 정보처리단말(또는 서버)로 제공된다.
본 발명의 바람직한 실시 방법에 따르면, 상기 RFID 리더부(120)와 RFID 태그 간 무선 주파수 신호 송수신은 진폭변조(Amplitude Shift Keying; ASK), 주파수 변조(Frequency Shift Keying; FSK), 위상 변조(Phase Shift Keying; PSK)를 포함하는 적어도 하나 이상의 변조 방식을 통해 이루어지는 것이 바람직하며, 본 발명 의 기술적 사상은 상기 RFID 리더부(120)와 RFID 태그 간 무선 주파수 신호 송수신 방식에 의해 한정되지 아니한다.
도면3은 본 발명의 일 실시 방법에 따라 소정의 암호화키를 통해 카드정보를 암호화하는 기능이 구비된 카드리더 모듈(130) 구성을 도시한 도면이다.
보다 상세하게 본 도면3은 상기 도면1에 도시된 POS 단말(100)의 카드리더 모듈(130)에 있어서, 소정의 MS카드로부터 리딩되는 카드정보를 상기 POS 단말(100)의 제어부(105)로 제공하기 전에 상기 카드리더 모듈(130)에서 소정의 암호화키를 통해 암호화하여 제공하는 기능 구성에 대한 것으로서, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면, 본 도면3을 참조 및/또는 변형하여 상기 MS카드로부터 리딩되는 카드정보를 소정의 소정의 암호화키를 통해 암호화하여 상기 POS 단말(100)의 제어부(105)로 제공하는 카드리더 모듈(130)에 대한 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 실시 방법을 모두 포함하며, 본 도면3에 도시된 실시 방법으로 한정되지 아니한다.
도면3을 참조하면, 상기 카드리더 모듈(130)은 상기 고객 소유 MS카드와 ISO/IEC 7810 규격에 대응하는 카드 인터페이스를 제공하는 MS 리더부(310)와, 상기 MS카드로부터 리딩된 카드정보를 암호화하는 소정의 암호화 키와 상기 암호화 키 인덱스를 연계 처리하여 저장하는 메모리와, 상기 암호화 키를 통해 상기 MS카 드로부터 리딩되는 카드정보를 암호화하는 암호 처리부(305)와, 상기 암호화된 카드정보와 상기 암호화 키 인덱스를 상기 POS 단말(100)에 구비된 제어부(105)로 제공하는 정보 제공부(300)를 구비하여 이루어지는 것을 특징으로 한다.
상기 MS 리더부(310)는 ISO/IEC 7810에 근거하는 카드 리더부로서, 소정의 코일을 포함하는 적어도 하나 이상의 자기 헤드(Magnetic Head)를 포함하여 이루어지며, 소정의 정보(예컨대, 자성화된 이진(Binary) 데이터)가 기록된 MS카드가 상기 자기 헤드와 밀착하여 소정의 방향으로 이동(또는 자기 헤드가 소정의 정보가 기록된 MS카드와 밀착하여 이동)하면, 상기 자기 헤드에 소정의 전기적 신호가 로딩되는 것을 이용하여 상기 MS카드의 MS에 구비된 적어도 하나 이상의 트랙(Track)으로부터 소정의 카드정보를 POS 단말(100)로 인터페이싱 하는 것을 특징으로 한다.
*상기 메모리는 상기 MS카드로부터 리딩된 카드정보를 암호화하는 소정의 암호화 키를 저장하는 것을 특징으로 하며, 상기 암호화 키는 소정의 암호화 키 인덱스와 연계 처리되어 상기 메모리에 저장되는 것을 특징으로 한다.
여기서, 상기 암호화 키는 상기 카드정보를 대칭키(또는 비밀키) 암호화 방식으로 암호화하기 위한 암호화 키, 및/또는 상기 카드정보를 공개키 암호화 방식 으로 암호화하기 위한 암호화 키, 및/또는 상기 카드정보를 전자봉투 암호화 방식으로 암호화하기 위한 암호화 키, 및/또는 상기 카드정보를 키교환 암호화 방식으로 암호화하기 위한 암호화 키 중 적어도 하나 이상을 포함하여 이루어진다.
또한, 상기 암호화 키와 연계 처리되어 상기 메모리에 저장되는 상기 암호화 키 인덱스는 상기 암호화된 카드정보를 복호화하는 호스트에서 상기 암호화 키와 연계된 소정의 복호화 키를 확인하는 위한 인덱스 정보를 포함하여 이루어지는 것을 특징으로 하며, 이에 의해 상기 암호화된 카드정보를 복호화하는 호스트는 상기 암호화 키 인덱스를 근거로 상기 암호화 키에 대응하는 적어도 하나 이상의 복호화 키를 확인하고, 상기 확인된 복호화 키를 통해 상기 암호화된 카드정보를 복호화할 수 있다.
여기서, 상기 암호화 키 인덱스를 통해 확인되는 상기 복호화 키는 상기 암호화된 카드정보를 대칭키(또는 비밀키) 복호화 방식으로 복호화하기 위한 복호화 키, 및/또는 상기 암호화된 카드정보를 공개키 복호화 방식으로 복호화하기 위한 복호화 키, 및/또는 상기 암호화된 카드정보를 전자봉투 복호화 방식으로 복호화하기 위한 복호화 키, 및/또는 상기 암호화된 카드정보를 키교환 복호화 방식으로 복호화하기 위한 복호화 키 중 적어도 하나 이상을 포함하여 이루어진다.
본 발명의 다른 실시 방법에 따르면, 상기 POS 단말(100)에서 생성하는 결제 승인요청 전문에 포함되는 POS 단말(100) 정보가 상기 암호화 키 인덱스 기능을 수행하는 경우, 상기 메모리부(145)는 상기 암호화 키 인덱스가 생략될 수 있으며, 이에 의해 본 발명이 한정되지 아니한다.
본 발명의 실시 방법에 따르면, 상기 메모리는 상기 MS 리더부(310)를 통해 리딩된 카드정보를 암호화되기 전에 임시 저장하는 것이 바람직하며, 상기 암호 처리부(305)는 상기 메모리에 저장된 카드정보를 암호화하는 것이 바람직하다.
또는, 상기 MS 리더부(310)를 통해 리딩된 카드정보를 암호화되기 전에 소정의 보안칩(도시생략)에 구비된 메모리에 저장되는 것이 가능하며, 이에 의해 본 발명이 한정되지 아니한다.
상기 암호 처리부(305)는 상기 MS 리더부(310)를 통해 소정의 MS카드로부터 리딩된 카드정보를 상기 메모리에 저장된 암호화 키를 통해 대칭키(또는 비밀키) 암호화 방식, 및/또는 공개키 암호화 방식, 및/또는 전자봉투 암호화 방식, 및/또는 키교환 암호화 방식 중 적어도 하나 이상의 암호화 방식을 통해 암호화하는 것을 특징으로 하며, 상기 암호화된 카드정보를 상기 정보 제공부(300)로 제공한다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)는 상기 카드정보를 암호화하는 과정을 인증하는 보안기능을 더 구비하여 이루어지는 것이 바람직하며, 상기 보안기능은 상기 카드리더 모듈에 구비되는 소정의 보안칩 형태로 구비되는 것이 바람직하다.
상기 정보 제공부(300)는 상기 암호 처리부(305)에 의해 대칭키(또는 비밀키) 암호화 방식, 및/또는 공개키 암호화 방식, 및/또는 전자봉투 암호화 방식, 및/또는 키교환 암호화 방식 중 적어도 하나 이상의 암호화 방식으로 암호화된 카드정보 및/또는 상기 암호화 키와 연계되어 상기 메모리에 저장된 암호화 키 인덱스를 상기 POS 단말(100)에 구비된 제어부(105)로 제공하는 것을 특징으로 하며, 이에 의해 상기 카드리더 모듈(130)에서 암호화된 카드정보는 소정의 호스트에서 소정의 복호화 키를 복호화될 때까지 보안이 유지된다.
본 발명의 실시 방법에 따르면, 상기 정보 제공부(300)는 상기 암호화된 카드정보 이외에 상기 암호화되지 않은 카드정보의 일부(예컨대, 카드번호 중 카드사 식별번호)를 상기 POS 단말에 구비된 제어부(105)로 제공하는 것이 가능하며, 상기 암호화되지 않은 카드정보의 일부는 상기 POS 단말에 구비된 메모리(및/또는 로컬 서버에 구비된 데이터베이스)에 저장되는 것이 가능하다.
본 발명의 실시 방법에 따르면, 상기 MS 리더부(310)와, 암호 처리부(305)와, 정보 제공부(310)는 상기 카드리더 모듈에 구비되는 프로그램 형태로 탑재되는 것이 바람직하며, 상기 프로그램은 소정의 프로그램 제공 서버(도시생략)으로부터 다운로드되어 상기 카드리더 모듈에 탑재되는 것이 바람직하다.
또한, 상기 프로그램이 상기 카드리더 모듈로 다운로드되어 탑재되는 과정에서, 상기 프로그램의 암호화 방식 및/또는 암호화 키가 결정되는 것이 바람직하다.
도면4는 본 발명의 실시 방법에 따라 카드리더 모듈(130)에서 카드정보를 대칭키(또는 비밀키) 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
보다 상세하게 본 도면4는 상기 도면3과 같은 암호화 기능이 구비된 카드리더 모듈(130)에서 상기 카드정보를 대칭키(또는 비밀키) 방식으로 암호화하여 송신하는 실시 방법에 대한 것으로서, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 지라면, 본 도면4를 참조 및/또는 변형하여 상기 카드리더 모듈(130)에서 상기 카드정보를 대칭키(또는 비밀키) 방식으로 암호화하는 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 실시 방법을 모두 포함하며, 본 도면4에 도시된 실시 방법으로 한정되지 아니한다.
본 발명의 실시 방법을 따르는 본 도면4에서 상기 대칭키(또는 비밀키)는 상기 카드리더 모듈(130)에 구비된 상기 메모리로부터 독출되는 것이 바람직하다.
도면4를 참조하면, 상기 카드리더 모듈(130)의 MS 리더부(310)에서 소정의 카드번호와 카드 유효기간 및/또는 카드사 정보를 적어도 하나 이상 포함하는 소정의 카드정보가 리딩되면, 이를 상기 암호 처리부(305)로 제공하는데(400), 상기 카드정보가 제공되면, 상기 암호 처리부(305)는 상기 카드리더 모듈(130)에 구비된 메모리로부터 카드정보를 암호화하기 위한 소정의 대칭키(또는 비밀키)를 독출하고(405), 상기 독출된 대칭키(또는 비밀키)를 통해 상기 카드정보를 암호화한다(410).
여기서, 상기 암호 처리부(305)의 암호화 기능을 E(Encryption)라고 하고, 상기 대칭키(또는 비밀키)를 k(key), 상기 카드정보를 P(Plaintext), 및 상기 대칭키(또는 비밀키)로 암호화된 카드정보를 C(Ciphertext)라고 하면, 상기 암호 처리부(305)의 암호화 기능은 "Ek(P)=C"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)가 상기 대칭키(또는 비밀키)를 통해 상기 카드정보를 암호화하는 알고리즘은, SEED, DES(Data Encryption Standard), Triple-DES, Skipjack, IDEA(International Data Encryption Algorithm) 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 암호화 알고리즘이 이용될 수 있으나, 특정 암호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
상기와 같이 대칭키(또는 비밀키)를 통해 카드정보가 암호화되면, 상기 정보 제공부(300)는 상기 암호화된 카드정보를 상기 POS 단말(100)의 제어부(105)로 제공한다(415).
본 발명의 실시 방법에 따르면, 상기 정보 제공부(300)는 상기 암호화된 카드정보에 상기 메모리에 저장된 상기 암호화 키 인덱스를 더 포함하여 상기 POS 단말(100)의 제어부(105)로 제공하는 것이 바람직하다.
도면5는 본 발명의 실시 방법에 따라 카드리더 모듈(130)에서 카드정보를 공개키 기반 구조 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
보다 상세하게 본 도면5는 상기 도면3과 같은 암호화 기능이 구비된 카드리더 모듈(130)에서 상기 카드정보를 공개키 기반 구조 방식으로 암호화하여 송신하는 실시 방법에 대한 것으로서, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 지라면, 본 도면5를 참조 및/또는 변형하여 상기 카드리더 모듈(130)에서 상기 카드정보를 공개키 방식으로 암호화하는 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 실시 방법을 모두 포함하며, 본 도면5에 도시된 실시 방법으로 한정되지 아니한다.
본 발명의 실시 방법을 따르는 본 도면5에서 상기 서버측 공개키는 상기 카드리더 모듈(130)에 구비된 상기 메모리로부터 독출되는 것이 바람직하다.
도면5를 참조하면, 상기 카드리더 모듈(130)의 MS 리더부(310)에서 소정의 카드번호와 카드 유효기간 및/또는 카드사 정보를 적어도 하나 이상 포함하는 소정의 카드정보가 리딩되면, 이를 상기 암호 처리부(305)로 제공하는데(500), 상기 카드정보가 제공되면, 상기 암호 처리부(305)는 상기 메모리로부터 상기 카드정보를 암호화하기 위한 소정의 서버측 공개키를 추출하고(505), 상기 추출된 서버측 공개키를 통해 상기 카드정보를 암호화한다(510).
여기서, 상기 암호 처리부(305)의 암호화 기능을 E(Encryption)라고 하고, 상기 서버측 공개키를 k1(key), 상기 카드정보를 P(Plaintext), 및 상기 서버측 공개키로 암호화된 카드정보를 C(Ciphertext)라고 하면, 상기 암호 처리부(305)의 암호화 기능은 "Ek1(P)=C"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)가 상기 서버측 공개키를 통해 상기 카드정보를 암호화하는 알고리즘은, RSA(Ron Rivest, Adi Shamir, Len Adleman), DSA(Digital Signature Algorithm), DH(Diffie, Hellman), ECC(Elliptic Curve Cryptosystem), KCDSA, ECDSA, ECDH 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 암호화 알고리즘이 이용될 수 있으나, 특정 암호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
예를들어, 상기 암호화 알고리즘 중 RSA 암호화 알고리즘을 통해 상기 카드정보를 암호화하는 경우, 암호화 과정에서 이용되는 공개된 법(Modulus)을 n, 상기 n의 서로 다른 소인수로 공개되지 않은 소수를 a와 b, 공개된 지수(예컨대, 3 또는 216+)를 e, 공개되지 않은 지수를 d라고 하면, 상기 n은 "n=a*b"를 만족하고, 상기 d는 " de=1 mod (a-1)(b-1)"를 만족하는데, 이 때 상기 암호 처리부(305)의 암호화 기능은 "C=Ek1(P)=Pe mod n"와 같이 표현할 수 있다.
상기와 같이 서버측 공개키를 통해 카드정보가 암호화되면, 상기 정보 제공부(300)는 상기 암호화된 카드정보를 상기 POS 단말(100)의 제어부(105)로 제공한다(515).
본 발명의 실시 방법에 따르면, 상기 정보 제공부(300)는 상기 암호화된 카드정보에 상기 메모리에 저장된 상기 암호화 키 인덱스를 더 포함하여 상기 POS 단말(100)의 제어부(105)로 제공하는 것이 바람직하다.
도면6은 본 발명의 실시 방법에 따라 카드리더 모듈(130)에서 카드정보를 전자봉투 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
보다 상세하게 본 도면6은 상기 도면3과 같은 암호화 기능이 구비된 카드리더 모듈(130)에서 상기 카드정보를 전자봉투 방식으로 암호화하여 송신하는 실시 방법에 대한 것으로서, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 지라면, 본 도면6을 참조 및/또는 변형하여 상기 카드리더 모듈(130)에서 상기 카드정보를 전자봉투 방식으로 암호화하는 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 실시 방법을 모두 포함하며, 본 도면6에 도시된 실시 방법으로 한정되지 아니한다.
본 발명의 실시 방법을 따르는 본 도면6에서 상기 서버측 공개키는 상기 카드리더 모듈(130)에 구비된 상기 메모리로부터 독출되는 것이 바람직하다.
도면6을 참조하면, 상기 카드리더 모듈(130)의 MS 리더부(310)에서 소정의 카드번호와 카드 유효기간 및/또는 카드사 정보를 적어도 하나 이상 포함하는 소정의 카드정보가 리딩되면, 이를 상기 암호 처리부(305)로 제공하는데(600), 상기 카드정보가 제공되면, 상기 암호 처리부(305)는 상기 카드정보를 비밀키(secret Key, Symmetric Key) 방식으로 암호화하기 위한 소정의 랜덤 비밀키(Random Secret key)를 생성하고(605), 상기 생성된 비밀키를 이용하여 상기 카드정보를 암호화한다(610).
여기서, 상기 암호 처리부(305)의 암호화 기능을 E(Encryption)라고 하고, 상기 비밀키를 r(random Secret key), 상기 카드정보를 P(Plaintext), 및 상기 비밀키로 암호화된 카드정보를 C(Ciphertext)라고 하면, 상기 암호 처리부(305)의 암 호화 기능은 "Er(P)=C"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)가 상기 비밀키를 통해 상기 카드정보를 암호화하는 알고리즘은, SEED, DES(Data Encryption Standard), Triple-DES, Skipjack, IDEA(International Data Encryption Algorithm) 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 암호화 알고리즘이 이용될 수 있으나, 특정 암호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
이후, 상기 암호 처리부(305)는 상기 카드정보를 암호화하는데 사용한 상기 비밀키(랜덤 비밀키)를 암호화하는데, 이를 위해 상기 암호 처리부(305)는 상기 메모리로부터 소정의 서버측 공개키를 추출하고(615), 상기 서버측 공개키를 이용하여 상기 비밀키를 암호화한다(620).
여기서, 상기 암호 처리부(305)의 암호화 기능을 E(Encryption)라고 하고, 상기 서버측 공개키를 k1(key), 상기 비밀키를 r(random Secret key), 및 상기 서버측 공개키로 암호화된 비밀키를 C(Ciphertext)라고 하면, 상기 암호 처리부(305)의 암호화 기능은 "Ek1(r)=C"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)가 상기 서버측 공개 키를 통해 상기 비밀키를 암호화하는 알고리즘은, RSA(Ron Rivest, Adi Shamir, Len Adleman), DSA(Digital Signature Algorithm), DH(Diffie, Hellman), ECC(Elliptic Curve Cryptosystem), KCDSA, ECDSA, ECDH 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 암호화 알고리즘이 이용될 수 있으나, 특정 암호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
예를들어, 상기 암호화 알고리즘 중 RSA 암호화 알고리즘을 통해 상기 비밀키를 암호화하는 경우, 암호화 과정에서 이용되는 공개된 법(Modulus)을 n, 상기 n의 서로 다른 소인수로 공개되지 않은 소수를 a와 b, 공개된 지수(예컨대, 3 또는 216+)를 e, 공개되지 않은 지수를 d라고 하면, 상기 n은 "n=a*b"를 만족하고, 상기 d는 " de=1 mod (a-1)(b-1)"를 만족하는데, 이 때 상기 암호 처리부(305)의 암호화 기능은 "C=Ek1(r)=re mod n"와 같이 표현할 수 있다.
상기 카드정보가 상기 비밀키로 암호화되고, 또한 상기 비밀키가 상기 서버측 공개키를 통해 암호화되면, 상기 암호 처리부(305)는 상기 비밀키로 암호화된 카드정보와 상기 서버측 공개키로 암호화된 비밀키를 연계한 결제수단 정보를 생성하여 상기 정보 제공부(300)로 제공하며(625), 상기 정보 제공부(300)는 상기 결제수단 정보를 상기 POS 단말(100)의 제어부(105)로 제공한다(630).
본 발명의 실시 방법에 따르면, 상기 정보 제공부(300)는 상기 결제수단 정 보(및/또는 암호화된 카드정보)에 상기 메모리에 저장된 상기 암호화 키 인덱스를 더 포함하여 상기 POS 단말(100)의 제어부(105)로 제공하는 것이 바람직하다.
도면7a와 도면7b는 본 발명의 실시 방법에 따라 카드리더 모듈(130)에서 카드정보를 키교환 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
보다 상세하게 본 도면7a와 도면7b는 상기 도면3과 같은 암호화 기능이 구비된 카드리더 모듈(130)에서 상기 카드정보를 키교환 방식으로 암호화하여 송신하는 실시 방법에 대한 것으로서, 발명이 속하는 기술분야에서 통상의 지식을 가진 지라면, 본 도면7을 참조 및/또는 변형하여 상기 카드리더 모듈(130)에서 상기 카드정보를 키교환 방식으로 암호화하는 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 실시 방법을 모두 포함하며, 본 도면7에 도시된 실시 방법으로 한정되지 아니한다.
본 발명의 실시 방법을 따르는 본 도면7에서 상기 카드리더 모듈(130)측 개인키와 서버측 공개키는 상기 카드리더 모듈(130)에 구비된 상기 메모리로부터 독출되는 것이 바람직하다.
도면7a와 도면7b를 참조하면, 상기 카드리더 모듈(130)의 MS 리더부(310)에서 소정의 카드번호와 카드 유효기간 및/또는 카드사 정보를 적어도 하나 이상 포 함하는 소정의 카드정보가 리딩되면, 이를 상기 암호 처리부(305)로 제공하는데(700), 상기 카드정보가 제공되면, 상기 암호 처리부(305)는 상기 카드정보를 소정의 일방향 해시함수(예컨대, 상기 카드정보의 길이에 상관없이 일정길이의 해시코드(Hash Code)를 포함하는 메시지 다이제스트(Message Digest)를 생성하고, 상기 해시코드(또는 메시지 다이제스트)를 통해 원래의 메시지를 확인(또는 유추)할 수 없는 일방향 해시함수(Hash Function). 상기 카드리더 모듈(130)과 상기 암호화된 카드정보를 복호화하는 호스트는 동일한 해시함수를 사용)를 통해 소정의 메시지 다이제스트를 생성하고(705), 상기 메시지 다이제스트를 상기 카드리더 모듈(130)측 개인키를 통해 암호화함으로써 전자서명한다(710).
여기서, 상기 암호 처리부(305)의 암호화 기능을 E(Encryption)라고 하고, 상기 카드리더 모듈(130)측 개인키를 t1(yerminal side key), 상기 메시지 다이제스트를 m(message digest), 및 상기 카드리더 모듈(130)측 개인키로 암호화된 메시지 다이제스트를 C(Ciphertext)라고 하면, 상기 암호 처리부(305)의 전자서명 기능은 "Et1(m)=C"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)가 상기 카드리더 모듈(130)측 개인키를 통해 상기 메시지 다이제스트를 암호화하는 알고리즘은, RSA(Ron Rivest, Adi Shamir, Len Adleman), DSA(Digital Signature Algorithm), DH(Diffie, Hellman), ECC(Elliptic Curve Cryptosystem), KCDSA, ECDSA, ECDH 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 암호화 알고리즘이 이용될 수 있으나, 특정 암호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
예를들어, 상기 암호화 알고리즘 중 RSA 암호화 알고리즘을 통해 상기 메시지 다이제스트를 암호화하는 경우, 암호화 과정에서 이용되는 공개된 법(Modulus)을 n, 상기 n의 서로 다른 소인수로 공개되지 않은 소수를 a와 b, 공개된 지수(예컨대, 3 또는 216+)를 e, 공개되지 않은 지수를 d라고 하면, 상기 n은 "n=a*b"를 만족하고, 상기 d는 " de=1 mod (a-1)(b-1)"를 만족하는데, 이 때 상기 암호 처리부(305)의 전자서명 기능은 "C=Et1(m)=me mod n"와 같이 표현할 수 있다.
또한, 상기 암호 처리부(305)는 상기 카드정보를 비밀키(secret Key, Symmetric Key) 방식으로 암호화하기 위한 소정의 랜덤 비밀키(Random Secret key)를 생성하고(715), 상기 카드정보와 상기 카드리더 모듈(130)측 개인키로 암호화된 상기 메시지 다이제스트와 상기 메모리에 구비된 인증서(예컨대, 카드리더 모듈(130)측 공개키를 포함하는 인증서) 사본을 연계하여 상기 생성된 비밀키를 통해 암호화한다(720).
여기서, 상기 암호 처리부(305)의 암호화 기능을 E(Encryption)라고 하고, 상기 비밀키를 r(random Secret key), 상기 카드정보와 인증서 사본을 P(Plaintext), 및 상기 비밀키로 암호화된 카드정보와 인증서 사본을 C(Ciphertext)라고 하면, 상기 암호 처리부(305)의 암호화 기능은 "Er(P)=C"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)가 상기 비밀키를 통해 상기 카드정보와 인증서 사본을 암호화하는 알고리즘은, SEED, DES(Data Encryption Standard), Triple-DES, Skipjack, IDEA(International Data Encryption Algorithm) 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 암호화 알고리즘이 이용될 수 있으나, 특정 암호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
또한, 상기 암호 처리부(305)는 상기 카드정보를 암호화시킨 상기 비밀키를 암호화하기 위해 상기 메모리로부터 소정의 서버측 공개키를 추출하고(725), 상기 서버측 공개키를 이용하여 상기 카드정보를 암호화한 비밀키를 암호화한다(730).
여기서, 상기 암호 처리부(305)의 암호화 기능을 E(Encryption)라고 하고, 상기 서버측 공개키를 s1(server side key), 상기 비밀키를 r(random Secret key), 및 상기 서버측 공개키로 암호화된 비밀키를 C(Ciphertext)라고 하면, 상기 암호 처리부(305)의 암호화 기능은 "Es1(r)=C"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)가 상기 서버측 공개키를 통해 상기 비밀키를 암호화하는 알고리즘은, RSA(Ron Rivest, Adi Shamir, Len Adleman), DSA(Digital Signature Algorithm), DH(Diffie, Hellman), ECC(Elliptic Curve Cryptosystem), KCDSA, ECDSA, ECDH 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 암호화 알고리즘이 이용될 수 있으나, 특정 암호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
예를들어, 상기 암호화 알고리즘 중 RSA 암호화 알고리즘을 통해 상기 비밀키를 암호화하는 경우, 암호화 과정에서 이용되는 공개된 법(Modulus)을 n, 상기 n의 서로 다른 소인수로 공개되지 않은 소수를 a와 b, 공개된 지수(예컨대, 3 또는 216+)를 e, 공개되지 않은 지수를 d라고 하면, 상기 n은 "n=a*b"를 만족하고, 상기 d는 " de=1 mod (a-1)(b-1)"를 만족하는데, 이 때 상기 암호 처리부(305)의 암호화 기능은 "C=Es1(r)=re mod n"와 같이 표현할 수 있다.
상기 카드정보와 상기 카드리더 모듈(130)측 개인키로 암호화된 상기 메시지 다이제스트와 상기 카드리더 모듈(130)측 공개키를 포함하는 인증서 사본이 연계되어 상기 생성된 비밀키를 통해 암호화되고, 상기 비밀키가 상기 서버측 공개키를 통해 암호화되면, 상기 암호 처리부(305)는 상기 비밀키를 통해 암호화된 상기 카드정보와 상기 카드리더 모듈(130)측 개인키로 암호화된 상기 메시지 다이제스트와 상기 카드리더 모듈(130)측 공개키를 포함하는 인증서 사본을 상기 서버측 공개키 로 암호화된 비밀키와 연계하여 소정의 결제수단 정보를 생성하고, 상기 생성된 결제수단 정보를 상기 정보 제공부(300)로 제공하며(735), 상기 정보 제공부(300)는 상기 결제수단 정보를 상기 POS 단말(100)의 제어부(105)로 제공한다(740).
본 발명의 실시 방법에 따르면, 상기 정보 제공부(300)는 상기 결제수단 정보(및/또는 암호화된 카드정보)에 상기 메모리에 저장된 상기 암호화 키 인덱스를 더 포함하여 상기 POS 단말(100)의 제어부(105)로 제공하는 것이 바람직하다.
*도면8은 본 발명의 다른 일 실시 방법에 따라 소정의 암호화키를 통해 카드정보를 암호화하는 기능이 구비된 카드리더 모듈(130) 구성을 도시한 도면이다.
보다 상세하게 본 도면8은 상기 도면1에 도시된 POS 단말(100)의 카드리더 모듈(130)에 있어서, 소정의 접촉식 IC카드로부터 리딩되는 카드정보를 상기 POS 단말(100)의 제어부(105)로 제공하기 전에 상기 카드리더 모듈(130)에서 소정의 암호화키를 통해 암호화하여 제공하는 기능 구성에 대한 것으로서, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면, 본 도면8을 참조 및/또는 변형하여 상기 접촉식 IC카드로부터 리딩되는 카드정보를 소정의 소정의 암호화키를 통해 암호화하여 상기 POS 단말(100)의 제어부(105)로 제공하는 카드리더 모듈(130)에 대한 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 실시 방법을 모두 포함하며, 본 도면8에 도시된 실시 방법으로 한정되지 아니한다.
도면8을 참조하면, 상기 카드리더 모듈(130)은 상기 고객 소유 접촉식 IC카드와 ISO/IEC 7816 규격에 대응하는 카드 인터페이스를 제공하는 접촉식 IC 리더부(800)와, 상기 접촉식 IC카드로부터 리딩된 카드정보를 암호화하는 소정의 암호화 키와 상기 암호화 키 인덱스를 연계 처리하여 저장하는 메모리와, 상기 암호화 키를 통해 상기 접촉식 IC카드로부터 리딩되는 카드정보를 암호화하는 암호 처리부(305)와, 상기 암호화된 카드정보와 상기 암호화 키 인덱스를 상기 POS 단말(100)에 구비된 제어부(105)로 제공하는 정보 제공부(300)를 구비하여 이루어지는 것을 특징으로 한다.
상기 접촉식 IC 리더부(800)는 ISO/IEC 7816에 근거하는 카드 리더부로서, 접촉식 IC카드에 구비된 COB(Chip On Board; COB)와 접촉식으로 전기적 접점을 이루는 적어도 하나 이상의 접촉점을 포함하여 이루어지며, 상기 접촉점을 통해 상기 IC카드의 IC칩으로 전원을 공급하고, APDU(Application Protocol Data Unit)를 이용하는 상기 반이중(Half Duplex) 방식의 트랜잭션을 통해 상기 IC칩으로부터 소정의 카드정보를 POS 단말(100)로 인터페이싱 하는 것을 특징으로 한다.
상기 메모리는 상기 접촉식 IC카드로부터 리딩된 카드정보를 암호화하는 소정의 암호화 키를 저장하는 것을 특징으로 하며, 상기 암호화 키는 소정의 암호화 키 인덱스와 연계 처리되어 상기 메모리에 저장되는 것을 특징으로 한다.
여기서, 상기 암호화 키는 상기 카드정보를 대칭키(또는 비밀키) 암호화 방식으로 암호화하기 위한 암호화 키, 및/또는 상기 카드정보를 공개키 암호화 방식으로 암호화하기 위한 암호화 키, 및/또는 상기 카드정보를 전자봉투 암호화 방식으로 암호화하기 위한 암호화 키, 및/또는 상기 카드정보를 키교환 암호화 방식으로 암호화하기 위한 암호화 키 중 적어도 하나 이상을 포함하여 이루어진다.
또한, 상기 암호화 키와 연계 처리되어 상기 메모리에 저장되는 상기 암호화 키 인덱스는 상기 암호화된 카드정보를 복호화하는 호스트에서 상기 암호화 키와 연계된 소정의 복호화 키를 확인하는 위한 인덱스 정보를 포함하여 이루어지는 것을 특징으로 하며, 이에 의해 상기 암호화된 카드정보를 복호화하는 호스트는 상기 암호화 키 인덱스를 근거로 상기 암호화 키에 대응하는 적어도 하나 이상의 복호화 키를 확인하고, 상기 확인된 복호화 키를 통해 상기 암호화된 카드정보를 복호화할 수 있다.
여기서, 상기 암호화 키 인덱스를 통해 확인되는 상기 복호화 키는 상기 암호화된 카드정보를 대칭키(또는 비밀키) 복호화 방식으로 복호화하기 위한 복호화 키, 및/또는 상기 암호화된 카드정보를 공개키 복호화 방식으로 복호화하기 위한 복호화 키, 및/또는 상기 암호화된 카드정보를 전자봉투 복호화 방식으로 복호화하 기 위한 복호화 키, 및/또는 상기 암호화된 카드정보를 키교환 복호화 방식으로 복호화하기 위한 복호화 키 중 적어도 하나 이상을 포함하여 이루어진다.
본 발명의 다른 실시 방법에 따르면, 상기 POS 단말(100)에서 생성하는 결제승인요청 전문에 포함되는 POS 단말(100) 정보가 상기 암호화 키 인덱스 기능을 수행하는 경우, 상기 메모리부(145)는 상기 암호화 키 인덱스가 생략될 수 있으며, 이에 의해 본 발명이 한정되지 아니한다.
본 발명의 실시 방법에 따르면, 상기 메모리는 상기 접촉식 IC 리더부(800)를 통해 리딩된 카드정보를 암호화되기 전에 임시 저장하는 것이 바람직하며, 상기 암호 처리부는 상기 메모리에 저장된 카드정보를 암호화하는 것이 바람직하다.
또는, 상기 접촉식 IC 리더부(800)를 통해 리딩된 카드정보를 암호화되기 전에 소정의 보안칩(도시생략)에 구비된 메모리에 저장되는 것이 가능하며, 이에 의해 본 발명이 한정되지 아니한다.
상기 암호 처리부(305)는 상기 접촉식 IC 리더부(800)를 통해 소정의 접촉식 IC카드로부터 리딩된 카드정보를 상기 메모리에 저장된 암호화 키를 통해 대칭키(또는 비밀키) 암호화 방식, 및/또는 공개키 암호화 방식, 및/또는 전자봉투 암호화 방식, 및/또는 키교환 암호화 방식 중 적어도 하나 이상의 암호화 방식을 통해 암호화하는 것을 특징으로 하며, 상기 암호화된 카드정보를 상기 정보 제공부(300)로 제공한다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)는 상기 카드정보를 암호화하는 과정을 인증하는 보안기능을 더 구비하여 이루어지는 것이 바람직하며, 상기 보안기능은 상기 카드리더 모듈에 구비되는 소정의 보안칩 형태로 구비되는 것이 바람직하다.
상기 정보 제공부(300)는 상기 암호 처리부(305)에 의해 대칭키(또는 비밀키) 암호화 방식, 및/또는 공개키 암호화 방식, 및/또는 전자봉투 암호화 방식, 및/또는 키교환 암호화 방식 중 적어도 하나 이상의 암호화 방식으로 암호화된 카드정보 및/또는 상기 암호화 키와 연계되어 상기 메모리에 저장된 암호화 키 인덱스를 상기 POS 단말(100)에 구비된 제어부(105)로 제공하는 것을 특징으로 하며, 이에 의해 상기 카드리더 모듈(130)에서 암호화된 카드정보는 소정의 호스트에서 소정의 복호화 키를 복호화될 때까지 보안이 유지된다.
본 발명의 실시 방법에 따르면, 상기 정보 제공부(300)는 상기 암호화된 카드정보 이외에 상기 암호화되지 않은 카드정보의 일부(예컨대, 카드번호 중 카드사 식별번호)를 상기 POS 단말에 구비된 제어부로 제공하는 것이 가능하며, 상기 암호화되지 않은 카드정보의 일부는 상기 POS 단말에 구비된 메모리(및/또는 로컬 서버 에 구비된 데이터베이스)에 저장되는 것이 가능하다.
본 발명의 실시 방법에 따르면, 상기 접촉식 IC 리더부(800)와, 암호 처리부(305)와, 정보 제공부(300)는 상기 카드리더 모듈에 구비되는 프로그램 형태로 탑재되는 것이 바람직하며, 상기 프로그램은 소정의 프로그램 제공 서버(도시생략)으로부터 다운로드되어 상기 카드리더 모듈에 탑재되는 것이 바람직하다.
또한, 상기 프로그램이 상기 카드리더 모듈로 다운로드되어 탑재되는 과정에서, 상기 프로그램의 암호화 방식 및/또는 암호화 키가 결정되는 것이 바람직하다.
도면9는 본 발명의 실시 방법에 따라 카드리더 모듈(130)에서 카드정보를 대칭키(또는 비밀키) 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
보다 상세하게 본 도면9는 상기 도면8과 같은 암호화 기능이 구비된 카드리더 모듈(130)에서 상기 카드정보를 대칭키(또는 비밀키) 방식으로 암호화하여 송신하는 실시 방법에 대한 것으로서, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 지라면, 본 도면9를 참조 및/또는 변형하여 상기 카드리더 모듈(130)에서 상기 카드정보를 대칭키(또는 비밀키) 방식으로 암호화하는 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 실시 방법을 모두 포함하며, 본 도면9에 도시된 실시 방법으로 한정되지 아니한다.
본 발명의 실시 방법을 따르는 본 도면9에서 상기 대칭키(또는 비밀키)는 상기 카드리더 모듈(130)에 구비된 상기 메모리로부터 독출되는 것이 바람직하다.
도면9를 참조하면, 상기 카드리더 모듈(130)의 접촉식 IC 리더부(800)에서 소정의 카드번호와 카드 유효기간 및/또는 카드사 정보를 적어도 하나 이상 포함하는 소정의 카드정보가 리딩되면, 이를 상기 암호 처리부(305)로 제공하는데(900), 상기 카드정보가 제공되면, 상기 암호 처리부(305)는 상기 카드리더 모듈(130)에 구비된 메모리로부터 카드정보를 암호화하기 위한 소정의 대칭키(또는 비밀키)를 독출하고(905), 상기 독출된 대칭키(또는 비밀키)를 통해 상기 카드정보를 암호화한다(910).
여기서, 상기 암호 처리부(305)의 암호화 기능을 E(Encryption)라고 하고, 상기 대칭키(또는 비밀키)를 k(key), 상기 카드정보를 P(Plaintext), 및 상기 대칭키(또는 비밀키)로 암호화된 카드정보를 C(Ciphertext)라고 하면, 상기 암호 처리부(305)의 암호화 기능은 "Ek(P)=C"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)가 상기 대칭키(또는 비밀키)를 통해 상기 카드정보를 암호화하는 알고리즘은, SEED, DES(Data Encryption Standard), Triple-DES, Skipjack, IDEA(International Data Encryption Algorithm) 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 암호화 알고리즘이 이용될 수 있으나, 특정 암호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
상기와 같이 대칭키(또는 비밀키)를 통해 카드정보가 암호화되면, 상기 정보 제공부(300)는 상기 암호화된 카드정보를 상기 POS 단말(100)의 제어부(105)로 제공한다(915).
본 발명의 실시 방법에 따르면, 상기 정보 제공부(300)는 상기 암호화된 카드정보에 상기 메모리에 저장된 상기 암호화 키 인덱스를 더 포함하여 상기 POS 단말(100)의 제어부(105)로 제공하는 것이 바람직하다.
도면10은 본 발명의 실시 방법에 따라 카드리더 모듈(130)에서 카드정보를 공개키 기반 구조 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
보다 상세하게 본 도면10은 상기 도면8과 같은 암호화 기능이 구비된 카드리더 모듈(130)에서 상기 카드정보를 공개키 기반 구조 방식으로 암호화하여 송신하는 실시 방법에 대한 것으로서, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 지라면, 본 도면10을 참조 및/또는 변형하여 상기 카드리더 모듈(130)에서 상기 카드정보를 공개키 방식으로 암호화하는 다양한 실시 방법을 유추할 수 있을 것이 나, 본 발명은 상기 유추되는 실시 방법을 모두 포함하며, 본 도면10에 도시된 실시 방법으로 한정되지 아니한다.
본 발명의 실시 방법을 따르는 본 도면10에서 상기 서버측 공개키는 상기 카드리더 모듈(130)에 구비된 상기 메모리로부터 독출되는 것이 바람직하다.
도면10을 참조하면, 상기 카드리더 모듈(130)의 접촉식 IC 리더부(800)에서 소정의 카드번호와 카드 유효기간 및/또는 카드사 정보를 적어도 하나 이상 포함하는 소정의 카드정보가 리딩되면, 이를 상기 암호 처리부(305)로 제공하는데(1000), 상기 카드정보가 제공되면, 상기 암호 처리부(305)는 상기 메모리로부터 상기 카드정보를 암호화하기 위한 소정의 서버측 공개키를 추출하고(1005), 상기 추출된 서버측 공개키를 통해 상기 카드정보를 암호화한다(1010).
여기서, 상기 암호 처리부(305)의 암호화 기능을 E(Encryption)라고 하고, 상기 서버측 공개키를 k1(key), 상기 카드정보를 P(Plaintext), 및 상기 서버측 공개키로 암호화된 카드정보를 C(Ciphertext)라고 하면, 상기 암호 처리부(305)의 암호화 기능은 "Ek1(P)=C"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)가 상기 서버측 공개키를 통해 상기 카드정보를 암호화하는 알고리즘은, RSA(Ron Rivest, Adi Shamir, Len Adleman), DSA(Digital Signature Algorithm), DH(Diffie, Hellman), ECC(Elliptic Curve Cryptosystem), KCDSA, ECDSA, ECDH 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 암호화 알고리즘이 이용될 수 있으나, 특정 암호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
예를들어, 상기 암호화 알고리즘 중 RSA 암호화 알고리즘을 통해 상기 카드정보를 암호화하는 경우, 암호화 과정에서 이용되는 공개된 법(Modulus)을 n, 상기 n의 서로 다른 소인수로 공개되지 않은 소수를 a와 b, 공개된 지수(예컨대, 3 또는 216+)를 e, 공개되지 않은 지수를 d라고 하면, 상기 n은 "n=a*b"를 만족하고, 상기 d는 " de=1 mod (a-1)(b-1)"를 만족하는데, 이 때 상기 암호 처리부(305)의 암호화 기능은 "C=Ek1(P)=Pe mod n"와 같이 표현할 수 있다.
상기와 같이 서버측 공개키를 통해 카드정보가 암호화되면, 상기 정보 제공부(300)는 상기 암호화된 카드정보를 상기 POS 단말(100)의 제어부(105)로 제공한다(1015).
본 발명의 실시 방법에 따르면, 상기 정보 제공부(300)는 상기 암호화된 카드정보에 상기 메모리에 저장된 상기 암호화 키 인덱스를 더 포함하여 상기 POS 단말(100)의 제어부(105)로 제공하는 것이 바람직하다.
*도면11은 본 발명의 실시 방법에 따라 카드리더 모듈(130)에서 카드정보를 전자봉투 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
보다 상세하게 본 도면11은 상기 도면8과 같은 암호화 기능이 구비된 카드리더 모듈(130)에서 상기 카드정보를 전자봉투 방식으로 암호화하여 송신하는 실시 방법에 대한 것으로서, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 지라면, 본 도면11을 참조 및/또는 변형하여 상기 카드리더 모듈(130)에서 상기 카드정보를 전자봉투 방식으로 암호화하는 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 실시 방법을 모두 포함하며, 본 도면11에 도시된 실시 방법으로 한정되지 아니한다.
본 발명의 실시 방법을 따르는 본 도면11에서 상기 서버측 공개키는 상기 카드리더 모듈(130)에 구비된 상기 메모리로부터 독출되는 것이 바람직하다.
도면11을 참조하면, 상기 카드리더 모듈(130)의 접촉식 IC 리더부(800)에서 소정의 카드번호와 카드 유효기간 및/또는 카드사 정보를 적어도 하나 이상 포함하는 소정의 카드정보가 리딩되면, 이를 상기 암호 처리부(305)로 제공하는데(1100), 상기 카드정보가 제공되면, 상기 암호 처리부(305)는 상기 카드정보를 비밀키(secret Key, Symmetric Key) 방식으로 암호화하기 위한 소정의 랜덤 비밀 키(Random Secret key)를 생성하고(1105), 상기 생성된 비밀키를 이용하여 상기 카드정보를 암호화한다(1110).
여기서, 상기 암호 처리부(305)의 암호화 기능을 E(Encryption)라고 하고, 상기 비밀키를 r(random Secret key), 상기 카드정보를 P(Plaintext), 및 상기 비밀키로 암호화된 카드정보를 C(Ciphertext)라고 하면, 상기 암호 처리부(305)의 암호화 기능은 "Er(P)=C"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)가 상기 비밀키를 통해 상기 카드정보를 암호화하는 알고리즘은, SEED, DES(Data Encryption Standard), Triple-DES, Skipjack, IDEA(International Data Encryption Algorithm) 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 암호화 알고리즘이 이용될 수 있으나, 특정 암호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
이후, 상기 암호 처리부(305)는 상기 카드정보를 암호화하는데 사용한 상기 비밀키(랜덤 비밀키)를 암호화하는데, 이를 위해 상기 암호 처리부(305)는 상기 메모리로부터 소정의 서버측 공개키를 추출하고(1115), 상기 서버측 공개키를 이용하여 상기 비밀키를 암호화한다(1120).
여기서, 상기 암호 처리부(305)의 암호화 기능을 E(Encryption)라고 하고, 상기 서버측 공개키를 k1(key), 상기 비밀키를 r(random Secret key), 및 상기 서버측 공개키로 암호화된 비밀키를 C(Ciphertext)라고 하면, 상기 암호 처리부(305)의 암호화 기능은 "Ek1(r)=C"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)가 상기 서버측 공개키를 통해 상기 비밀키를 암호화하는 알고리즘은, RSA(Ron Rivest, Adi Shamir, Len Adleman), DSA(Digital Signature Algorithm), DH(Diffie, Hellman), ECC(Elliptic Curve Cryptosystem), KCDSA, ECDSA, ECDH 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 암호화 알고리즘이 이용될 수 있으나, 특정 암호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
예를들어, 상기 암호화 알고리즘 중 RSA 암호화 알고리즘을 통해 상기 비밀키를 암호화하는 경우, 암호화 과정에서 이용되는 공개된 법(Modulus)을 n, 상기 n의 서로 다른 소인수로 공개되지 않은 소수를 a와 b, 공개된 지수(예컨대, 3 또는 216+)를 e, 공개되지 않은 지수를 d라고 하면, 상기 n은 "n=a*b"를 만족하고, 상기 d는 " de=1 mod (a-1)(b-1)"를 만족하는데, 이 때 상기 암호 처리부(305)의 암호화 기능은 "C=Ek1(r)=re mod n"와 같이 표현할 수 있다.
상기 카드정보가 상기 비밀키로 암호화되고, 또한 상기 비밀키가 상기 서버 측 공개키를 통해 암호화되면, 상기 암호 처리부(305)는 상기 비밀키로 암호화된 카드정보와 상기 서버측 공개키로 암호화된 비밀키를 연계한 결제수단 정보를 생성하여 상기 정보 제공부(300)로 제공하며(1125), 상기 정보 제공부(300)는 상기 결제수단 정보를 상기 POS 단말(100)의 제어부(105)로 제공한다(1130).
본 발명의 실시 방법에 따르면, 상기 정보 제공부(300)는 상기 결제수단 정보(및/또는 암호화된 카드정보)에 상기 메모리에 저장된 상기 암호화 키 인덱스를 더 포함하여 상기 POS 단말(100)의 제어부(105)로 제공하는 것이 바람직하다.
도면12a와 도면12b는 본 발명의 실시 방법에 따라 카드리더 모듈(130)에서 카드정보를 키교환 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
보다 상세하게 본 도면12a와 도면12b는 상기 도면8과 같은 암호화 기능이 구비된 카드리더 모듈(130)에서 상기 카드정보를 키교환 방식으로 암호화하여 송신하는 실시 방법에 대한 것으로서, 발명이 속하는 기술분야에서 통상의 지식을 가진 지라면, 본 도면12를 참조 및/또는 변형하여 상기 카드리더 모듈(130)에서 상기 카드정보를 키교환 방식으로 암호화하는 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 실시 방법을 모두 포함하며, 본 도면12에 도시된 실시 방법으로 한정되지 아니한다.
본 발명의 실시 방법을 따르는 본 도면12에서 상기 카드리더 모듈(130)측 개인키와 서버측 공개키는 상기 카드리더 모듈(130)에 구비된 상기 메모리로부터 독출되는 것이 바람직하다.
도면12a와 도면12b를 참조하면, 상기 카드리더 모듈(130)의 접촉식 IC 리더부(800)에서 소정의 카드번호와 카드 유효기간 및/또는 카드사 정보를 적어도 하나 이상 포함하는 소정의 카드정보가 리딩되면, 이를 상기 암호 처리부(305)로 제공하는데(1200), 상기 카드정보가 제공되면, 상기 암호 처리부(305)는 상기 카드정보를 소정의 일방향 해시함수(예컨대, 상기 카드정보의 길이에 상관없이 일정길이의 해시코드(Hash Code)를 포함하는 메시지 다이제스트(Message Digest)를 생성하고, 상기 해시코드(또는 메시지 다이제스트)를 통해 원래의 메시지를 확인(또는 유추)할 수 없는 일방향 해시함수(Hash Function). 상기 카드리더 모듈(130)과 상기 암호화된 카드정보를 복호화하는 호스트는 동일한 해시함수를 사용)를 통해 소정의 메시지 다이제스트를 생성하고(1205), 상기 메시지 다이제스트를 상기 카드리더 모듈(130)측 개인키를 통해 암호화함으로써 전자서명한다(1210).
여기서, 상기 암호 처리부(305)의 암호화 기능을 E(Encryption)라고 하고, 상기 카드리더 모듈(130)측 개인키를 t1(yerminal side key), 상기 메시지 다이제스트를 m(message digest), 및 상기 카드리더 모듈(130)측 개인키로 암호화된 메시지 다이제스트를 C(Ciphertext)라고 하면, 상기 암호 처리부(305)의 전자서명 기능 은 "Et1(m)=C"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)가 상기 카드리더 모듈(130)측 개인키를 통해 상기 메시지 다이제스트를 암호화하는 알고리즘은, RSA(Ron Rivest, Adi Shamir, Len Adleman), DSA(Digital Signature Algorithm), DH(Diffie, Hellman), ECC(Elliptic Curve Cryptosystem), KCDSA, ECDSA, ECDH 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 암호화 알고리즘이 이용될 수 있으나, 특정 암호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
예를들어, 상기 암호화 알고리즘 중 RSA 암호화 알고리즘을 통해 상기 메시지 다이제스트를 암호화하는 경우, 암호화 과정에서 이용되는 공개된 법(Modulus)을 n, 상기 n의 서로 다른 소인수로 공개되지 않은 소수를 a와 b, 공개된 지수(예컨대, 3 또는 216+)를 e, 공개되지 않은 지수를 d라고 하면, 상기 n은 "n=a*b"를 만족하고, 상기 d는 " de=1 mod (a-1)(b-1)"를 만족하는데, 이 때 상기 암호 처리부(305)의 전자서명 기능은 "C=Et1(m)=me mod n"와 같이 표현할 수 있다.
또한, 상기 암호 처리부(305)는 상기 카드정보를 비밀키(secret Key, Symmetric Key) 방식으로 암호화하기 위한 소정의 랜덤 비밀키(Random Secret key)를 생성하고(1215), 상기 카드정보와 상기 카드리더 모듈(130)측 개인키로 암호화 된 상기 메시지 다이제스트와 상기 메모리에 구비된 인증서(예컨대, 카드리더 모듈(130)측 공개키를 포함하는 인증서) 사본을 연계하여 상기 생성된 비밀키를 통해 암호화한다(1220).
여기서, 상기 암호 처리부(305)의 암호화 기능을 E(Encryption)라고 하고, 상기 비밀키를 r(random Secret key), 상기 카드정보와 인증서 사본을 P(Plaintext), 및 상기 비밀키로 암호화된 카드정보와 인증서 사본을 C(Ciphertext)라고 하면, 상기 암호 처리부(305)의 암호화 기능은 "Er(P)=C"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)가 상기 비밀키를 통해 상기 카드정보와 인증서 사본을 암호화하는 알고리즘은, SEED, DES(Data Encryption Standard), Triple-DES, Skipjack, IDEA(International Data Encryption Algorithm) 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 암호화 알고리즘이 이용될 수 있으나, 특정 암호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
또한, 상기 암호 처리부(305)는 상기 카드정보를 암호화시킨 상기 비밀키를 암호화하기 위해 상기 메모리로부터 소정의 서버측 공개키를 추출하고(1225), 상기 서버측 공개키를 이용하여 상기 카드정보를 암호화한 비밀키를 암호화한다(1230).
여기서, 상기 암호 처리부(305)의 암호화 기능을 E(Encryption)라고 하고, 상기 서버측 공개키를 s1(server side key), 상기 비밀키를 r(random Secret key), 및 상기 서버측 공개키로 암호화된 비밀키를 C(Ciphertext)라고 하면, 상기 암호 처리부(305)의 암호화 기능은 "Es1(r)=C"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)가 상기 서버측 공개키를 통해 상기 비밀키를 암호화하는 알고리즘은, RSA(Ron Rivest, Adi Shamir, Len Adleman), DSA(Digital Signature Algorithm), DH(Diffie, Hellman), ECC(Elliptic Curve Cryptosystem), KCDSA, ECDSA, ECDH 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 암호화 알고리즘이 이용될 수 있으나, 특정 암호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
예를들어, 상기 암호화 알고리즘 중 RSA 암호화 알고리즘을 통해 상기 비밀키를 암호화하는 경우, 암호화 과정에서 이용되는 공개된 법(Modulus)을 n, 상기 n의 서로 다른 소인수로 공개되지 않은 소수를 a와 b, 공개된 지수(예컨대, 3 또는 216+)를 e, 공개되지 않은 지수를 d라고 하면, 상기 n은 "n=a*b"를 만족하고, 상기 d는 " de=1 mod (a-1)(b-1)"를 만족하는데, 이 때 상기 암호 처리부(305)의 암호화 기능은 "C=Es1(r)=re mod n"와 같이 표현할 수 있다.
상기 카드정보와 상기 카드리더 모듈(130)측 개인키로 암호화된 상기 메시지 다이제스트와 상기 카드리더 모듈(130)측 공개키를 포함하는 인증서 사본이 연계되어 상기 생성된 비밀키를 통해 암호화되고, 상기 비밀키가 상기 서버측 공개키를 통해 암호화되면, 상기 암호 처리부(305)는 상기 비밀키를 통해 암호화된 상기 카드정보와 상기 카드리더 모듈(130)측 개인키로 암호화된 상기 메시지 다이제스트와 상기 카드리더 모듈(130)측 공개키를 포함하는 인증서 사본을 상기 서버측 공개키로 암호화된 비밀키와 연계하여 소정의 결제수단 정보를 생성하고, 상기 생성된 결제수단 정보를 상기 정보 제공부(300)로 제공하며(1235), 상기 정보 제공부(300)는 상기 결제수단 정보를 상기 POS 단말(100)의 제어부(105)로 제공한다(1240).
본 발명의 실시 방법에 따르면, 상기 정보 제공부(300)는 상기 결제수단 정보(및/또는 암호화된 카드정보)에 상기 메모리에 저장된 상기 암호화 키 인덱스를 더 포함하여 상기 POS 단말(100)의 제어부(105)로 제공하는 것이 바람직하다.
도면13은 본 발명의 또다른 일 실시 방법에 따라 소정의 암호화키를 통해 카드정보를 암호화하는 기능이 구비된 카드리더 모듈(130) 구성을 도시한 도면이다.
보다 상세하게 본 도면13은 상기 도면1에 도시된 POS 단말(100)의 카드리더 모듈(130)에 있어서, 소정의 비접촉식 IC카드로부터 리딩되는 카드정보를 상기 POS 단말(100)의 제어부(105)로 제공하기 전에 상기 카드리더 모듈(130)에서 소정의 암 호화키를 통해 암호화하여 제공하는 기능 구성에 대한 것으로서, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면, 본 도면13을 참조 및/또는 변형하여 상기 비접촉식 IC카드로부터 리딩되는 카드정보를 소정의 소정의 암호화키를 통해 암호화하여 상기 POS 단말(100)의 제어부(105)로 제공하는 카드리더 모듈(130)에 대한 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 실시 방법을 모두 포함하며, 본 도면13에 도시된 실시 방법으로 한정되지 아니한다.
도면13을 참조하면, 상기 카드리더 모듈(130)은 상기 고객 소유 비접촉식 IC카드와 ISO/IEC 14443 규격에 대응하는 카드 인터페이스를 제공하는 비접촉식 IC 리더부(1300)와, 상기 비접촉식 IC카드로부터 리딩된 카드정보를 암호화하는 소정의 암호화 키와 상기 암호화 키 인덱스를 연계 처리하여 저장하는 메모리와, 상기 암호화 키를 통해 상기 비접촉식 IC카드로부터 리딩되는 카드정보를 암호화하는 암호 처리부(305)와, 상기 암호화된 카드정보와 상기 암호화 키 인덱스를 상기 POS 단말(100)에 구비된 제어부(105)로 제공하는 정보 제공부(300)를 구비하여 이루어지는 것을 특징으로 한다.
상기 비접촉식 IC 리더부(1300)는 상기 비접촉식 IC 리더부(1300)는 ISO/IEC 14443에 근거하는 카드 리더부로서, 정전결합(Capacitive Coupling) 및/또는 전자유도(Inductive Coupling) 등을 이용하여 비접촉식 IC카드와 비접촉식으로 전기적 접점을 이루는 적어도 하나 이상의 안테나를 포함하여 이루어지며, 상기 안테나를 통해 상기 IC카드의 IC칩으로 전원을 공급하고, APDU를 이용하는 상기 반이중(Half Duplex) 방식의 트랜잭션을 통해 상기 IC칩으로부터 소정의 카드정보를 POS 단말(100)로 인터페이싱 하는 것을 특징으로 한다.
상기 메모리는 상기 비접촉식 IC카드로부터 리딩된 카드정보를 암호화하는 소정의 암호화 키를 저장하는 것을 특징으로 하며, 상기 암호화 키는 소정의 암호화 키 인덱스와 연계 처리되어 상기 메모리에 저장되는 것을 특징으로 한다.
여기서, 상기 암호화 키는 상기 카드정보를 대칭키(또는 비밀키) 암호화 방식으로 암호화하기 위한 암호화 키, 및/또는 상기 카드정보를 공개키 암호화 방식으로 암호화하기 위한 암호화 키, 및/또는 상기 카드정보를 전자봉투 암호화 방식으로 암호화하기 위한 암호화 키, 및/또는 상기 카드정보를 키교환 암호화 방식으로 암호화하기 위한 암호화 키 중 적어도 하나 이상을 포함하여 이루어진다.
또한, 상기 암호화 키와 연계 처리되어 상기 메모리에 저장되는 상기 암호화 키 인덱스는 상기 암호화된 카드정보를 복호화하는 호스트에서 상기 암호화 키와 연계된 소정의 복호화 키를 확인하는 위한 인덱스 정보를 포함하여 이루어지는 것을 특징으로 하며, 이에 의해 상기 암호화된 카드정보를 복호화하는 호스트는 상기 암호화 키 인덱스를 근거로 상기 암호화 키에 대응하는 적어도 하나 이상의 복호화 키를 확인하고, 상기 확인된 복호화 키를 통해 상기 암호화된 카드정보를 복호화할 수 있다.
여기서, 상기 암호화 키 인덱스를 통해 확인되는 상기 복호화 키는 상기 암호화된 카드정보를 대칭키(또는 비밀키) 복호화 방식으로 복호화하기 위한 복호화 키, 및/또는 상기 암호화된 카드정보를 공개키 복호화 방식으로 복호화하기 위한 복호화 키, 및/또는 상기 암호화된 카드정보를 전자봉투 복호화 방식으로 복호화하기 위한 복호화 키, 및/또는 상기 암호화된 카드정보를 키교환 복호화 방식으로 복호화하기 위한 복호화 키 중 적어도 하나 이상을 포함하여 이루어진다.
본 발명의 다른 실시 방법에 따르면, 상기 POS 단말(100)에서 생성하는 결제승인요청 전문에 포함되는 POS 단말(100) 정보가 상기 암호화 키 인덱스 기능을 수행하는 경우, 상기 메모리부(145)는 상기 암호화 키 인덱스가 생략될 수 있으며, 이에 의해 본 발명이 한정되지 아니한다.
본 발명의 실시 방법에 따르면, 상기 메모리는 상기 비접촉식 IC 리더부(1300)를 통해 리딩된 카드정보를 암호화되기 전에 임시 저장하는 것이 바람직하며, 상기 암호 처리부(305)는 상기 메모리에 저장된 카드정보를 암호화하는 것이 바람직하다.
또는, 상기 비접촉식 IC 리더부(1300)를 통해 리딩된 카드정보를 암호화되기 전에 소정의 보안칩(도시생략)에 구비된 메모리에 저장되는 것이 가능하며, 이에 의해 본 발명이 한정되지 아니한다.
상기 암호 처리부(305)는 상기 비접촉식 IC 리더부(1300)를 통해 소정의 비접촉식 IC카드로부터 리딩된 카드정보를 상기 메모리에 저장된 암호화 키를 통해 대칭키(또는 비밀키) 암호화 방식, 및/또는 공개키 암호화 방식, 및/또는 전자봉투 암호화 방식, 및/또는 키교환 암호화 방식 중 적어도 하나 이상의 암호화 방식을 통해 암호화하는 것을 특징으로 하며, 상기 암호화된 카드정보를 상기 정보 제공부(300)로 제공한다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)는 상기 카드정보를 암호화하는 과정을 인증하는 보안기능을 더 구비하여 이루어지는 것이 바람직하며, 상기 보안기능은 상기 카드리더 모듈에 구비되는 소정의 보안칩 형태로 구비되는 것이 바람직하다.
상기 정보 제공부(300)는 상기 암호 처리부(305)에 의해 대칭키(또는 비밀키) 암호화 방식, 및/또는 공개키 암호화 방식, 및/또는 전자봉투 암호화 방식, 및/또는 키교환 암호화 방식 중 적어도 하나 이상의 암호화 방식으로 암호화된 카드정보 및/또는 상기 암호화 키와 연계되어 상기 메모리에 저장된 암호화 키 인덱스를 상기 POS 단말(100)에 구비된 제어부(105)로 제공하는 것을 특징으로 하며, 이 에 의해 상기 카드리더 모듈(130)에서 암호화된 카드정보는 소정의 호스트에서 소정의 복호화 키를 복호화될 때까지 보안이 유지된다.
본 발명의 실시 방법에 따르면, 상기 정보 제공부(300)는 상기 암호화된 카드정보 이외에 상기 암호화되지 않은 카드정보의 일부(예컨대, 카드번호 중 카드사 식별번호)를 상기 POS 단말에 구비된 제어부로 제공하는 것이 가능하며, 상기 암호화되지 않은 카드정보의 일부는 상기 POS 단말에 구비된 메모리(및/또는 로컬 서버에 구비된 데이터베이스)에 저장되는 것이 가능하다.
본 발명의 실시 방법에 따르면, 상기 비접촉식 IC 리더부(1300)와, 암호 처리부(305)와, 정보 제공부(300)는 상기 카드리더 모듈에 구비되는 프로그램 형태로 탑재되는 것이 바람직하며, 상기 프로그램은 소정의 프로그램 제공 서버(도시생략)으로부터 다운로드되어 상기 카드리더 모듈에 탑재되는 것이 바람직하다.
또한, 상기 프로그램이 상기 카드리더 모듈로 다운로드되어 탑재되는 과정에서, 상기 프로그램의 암호화 방식 및/또는 암호화 키가 결정되는 것이 바람직하다.
도면14는 본 발명의 실시 방법에 따라 카드리더 모듈(130)에서 카드정보를 대칭키(또는 비밀키) 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
보다 상세하게 본 도면14는 상기 도면13과 같은 암호화 기능이 구비된 카드리더 모듈(130)에서 상기 카드정보를 대칭키(또는 비밀키) 방식으로 암호화하여 송신하는 실시 방법에 대한 것으로서, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 지라면, 본 도면14를 참조 및/또는 변형하여 상기 카드리더 모듈(130)에서 상기 카드정보를 대칭키(또는 비밀키) 방식으로 암호화하는 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 실시 방법을 모두 포함하며, 본 도면14에 도시된 실시 방법으로 한정되지 아니한다.
본 발명의 실시 방법을 따르는 본 도면14에서 상기 대칭키(또는 비밀키)는 상기 카드리더 모듈(130)에 구비된 상기 메모리로부터 독출되는 것이 바람직하다.
도면14를 참조하면, 상기 카드리더 모듈(130)의 비접촉식 IC 리더부(1300)에서 소정의 카드번호와 카드 유효기간 및/또는 카드사 정보를 적어도 하나 이상 포함하는 소정의 카드정보가 리딩되면, 이를 상기 암호 처리부(305)로 제공하는데(1400), 상기 카드정보가 제공되면, 상기 암호 처리부(305)는 상기 카드리더 모듈(130)에 구비된 메모리로부터 카드정보를 암호화하기 위한 소정의 대칭키(또는 비밀키)를 독출하고(1405), 상기 독출된 대칭키(또는 비밀키)를 통해 상기 카드정보를 암호화한다(1410).
여기서, 상기 암호 처리부(305)의 암호화 기능을 E(Encryption)라고 하고, 상기 대칭키(또는 비밀키)를 k(key), 상기 카드정보를 P(Plaintext), 및 상기 대칭키(또는 비밀키)로 암호화된 카드정보를 C(Ciphertext)라고 하면, 상기 암호 처리부(305)의 암호화 기능은 "Ek(P)=C"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)가 상기 대칭키(또는 비밀키)를 통해 상기 카드정보를 암호화하는 알고리즘은, SEED, DES(Data Encryption Standard), Triple-DES, Skipjack, IDEA(International Data Encryption Algorithm) 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 암호화 알고리즘이 이용될 수 있으나, 특정 암호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
상기와 같이 대칭키(또는 비밀키)를 통해 카드정보가 암호화되면, 상기 정보 제공부(300)는 상기 암호화된 카드정보를 상기 POS 단말(100)의 제어부(105)로 제공한다(1415).
본 발명의 실시 방법에 따르면, 상기 정보 제공부(300)는 상기 암호화된 카드정보에 상기 메모리에 저장된 상기 암호화 키 인덱스를 더 포함하여 상기 POS 단말(100)의 제어부(105)로 제공하는 것이 바람직하다.
도면15는 본 발명의 실시 방법에 따라 카드리더 모듈(130)에서 카드정보를 공개키 기반 구조 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
보다 상세하게 본 도면15는 상기 도면13과 같은 암호화 기능이 구비된 카드리더 모듈(130)에서 상기 카드정보를 공개키 기반 구조 방식으로 암호화하여 송신하는 실시 방법에 대한 것으로서, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 지라면, 본 도면15를 참조 및/또는 변형하여 상기 카드리더 모듈(130)에서 상기 카드정보를 공개키 방식으로 암호화하는 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 실시 방법을 모두 포함하며, 본 도면15에 도시된 실시 방법으로 한정되지 아니한다.
본 발명의 실시 방법을 따르는 본 도면15에서 상기 서버측 공개키는 상기 카드리더 모듈(130)에 구비된 상기 메모리로부터 독출되는 것이 바람직하다.
도면15를 참조하면, 상기 카드리더 모듈(130)의 비접촉식 IC 리더부(1300)에서 소정의 카드번호와 카드 유효기간 및/또는 카드사 정보를 적어도 하나 이상 포함하는 소정의 카드정보가 리딩되면, 이를 상기 암호 처리부(305)로 제공하는데(1500), 상기 카드정보가 제공되면, 상기 암호 처리부(305)는 상기 메모리로부터 상기 카드정보를 암호화하기 위한 소정의 서버측 공개키를 추출하고(1505), 상기 추출된 서버측 공개키를 통해 상기 카드정보를 암호화한다(1510).
여기서, 상기 암호 처리부(305)의 암호화 기능을 E(Encryption)라고 하고, 상기 서버측 공개키를 k1(key), 상기 카드정보를 P(Plaintext), 및 상기 서버측 공개키로 암호화된 카드정보를 C(Ciphertext)라고 하면, 상기 암호 처리부(305)의 암호화 기능은 "Ek1(P)=C"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)가 상기 서버측 공개키를 통해 상기 카드정보를 암호화하는 알고리즘은, RSA(Ron Rivest, Adi Shamir, Len Adleman), DSA(Digital Signature Algorithm), DH(Diffie, Hellman), ECC(Elliptic Curve Cryptosystem), KCDSA, ECDSA, ECDH 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 암호화 알고리즘이 이용될 수 있으나, 특정 암호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
예를들어, 상기 암호화 알고리즘 중 RSA 암호화 알고리즘을 통해 상기 카드정보를 암호화하는 경우, 암호화 과정에서 이용되는 공개된 법(Modulus)을 n, 상기 n의 서로 다른 소인수로 공개되지 않은 소수를 a와 b, 공개된 지수(예컨대, 3 또는 216+)를 e, 공개되지 않은 지수를 d라고 하면, 상기 n은 "n=a*b"를 만족하고, 상기 d는 " de=1 mod (a-1)(b-1)"를 만족하는데, 이 때 상기 암호 처리부(305)의 암호화 기능은 "C=Ek1(P)=Pe mod n"와 같이 표현할 수 있다.
상기와 같이 서버측 공개키를 통해 카드정보가 암호화되면, 상기 정보 제공 부(300)는 상기 암호화된 카드정보를 상기 POS 단말(100)의 제어부(105)로 제공한다(1515).
본 발명의 실시 방법에 따르면, 상기 정보 제공부(300)는 상기 암호화된 카드정보에 상기 메모리에 저장된 상기 암호화 키 인덱스를 더 포함하여 상기 POS 단말(100)의 제어부(105)로 제공하는 것이 바람직하다.
도면16은 본 발명의 실시 방법에 따라 카드리더 모듈(130)에서 카드정보를 전자봉투 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
보다 상세하게 본 도면16은 상기 도면13과 같은 암호화 기능이 구비된 카드리더 모듈(130)에서 상기 카드정보를 전자봉투 방식으로 암호화하여 송신하는 실시 방법에 대한 것으로서, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 지라면, 본 도면16을 참조 및/또는 변형하여 상기 카드리더 모듈(130)에서 상기 카드정보를 전자봉투 방식으로 암호화하는 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 실시 방법을 모두 포함하며, 본 도면16에 도시된 실시 방법으로 한정되지 아니한다.
본 발명의 실시 방법을 따르는 본 도면16에서 상기 서버측 공개키는 상기 카드리더 모듈(130)에 구비된 상기 메모리로부터 독출되는 것이 바람직하다.
도면16을 참조하면, 상기 카드리더 모듈(130)의 비접촉식 IC 리더부(1300)에서 소정의 카드번호와 카드 유효기간 및/또는 카드사 정보를 적어도 하나 이상 포함하는 소정의 카드정보가 리딩되면, 이를 상기 암호 처리부(305)로 제공하는데(1600), 상기 카드정보가 제공되면, 상기 암호 처리부(305)는 상기 카드정보를 비밀키(secret Key, Symmetric Key) 방식으로 암호화하기 위한 소정의 랜덤 비밀키(Random Secret key)를 생성하고(1605), 상기 생성된 비밀키를 이용하여 상기 카드정보를 암호화한다(1610).
여기서, 상기 암호 처리부(305)의 암호화 기능을 E(Encryption)라고 하고, 상기 비밀키를 r(random Secret key), 상기 카드정보를 P(Plaintext), 및 상기 비밀키로 암호화된 카드정보를 C(Ciphertext)라고 하면, 상기 암호 처리부(305)의 암호화 기능은 "Er(P)=C"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)가 상기 비밀키를 통해 상기 카드정보를 암호화하는 알고리즘은, SEED, DES(Data Encryption Standard), Triple-DES, Skipjack, IDEA(International Data Encryption Algorithm) 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 암호화 알고리즘이 이용될 수 있으나, 특정 암호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
이후, 상기 암호 처리부(305)는 상기 카드정보를 암호화하는데 사용한 상기 비밀키(랜덤 비밀키)를 암호화하는데, 이를 위해 상기 암호 처리부(305)는 상기 메모리로부터 소정의 서버측 공개키를 추출하고(1615), 상기 서버측 공개키를 이용하여 상기 비밀키를 암호화한다(1620).
여기서, 상기 암호 처리부(305)의 암호화 기능을 E(Encryption)라고 하고, 상기 서버측 공개키를 k1(key), 상기 비밀키를 r(random Secret key), 및 상기 서버측 공개키로 암호화된 비밀키를 C(Ciphertext)라고 하면, 상기 암호 처리부(305)의 암호화 기능은 "Ek1(r)=C"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)가 상기 서버측 공개키를 통해 상기 비밀키를 암호화하는 알고리즘은, RSA(Ron Rivest, Adi Shamir, Len Adleman), DSA(Digital Signature Algorithm), DH(Diffie, Hellman), ECC(Elliptic Curve Cryptosystem), KCDSA, ECDSA, ECDH 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 암호화 알고리즘이 이용될 수 있으나, 특정 암호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
예를들어, 상기 암호화 알고리즘 중 RSA 암호화 알고리즘을 통해 상기 비밀키를 암호화하는 경우, 암호화 과정에서 이용되는 공개된 법(Modulus)을 n, 상기 n 의 서로 다른 소인수로 공개되지 않은 소수를 a와 b, 공개된 지수(예컨대, 3 또는 216+)를 e, 공개되지 않은 지수를 d라고 하면, 상기 n은 "n=a*b"를 만족하고, 상기 d는 " de=1 mod (a-1)(b-1)"를 만족하는데, 이 때 상기 암호 처리부(305)의 암호화 기능은 "C=Ek1(r)=re mod n"와 같이 표현할 수 있다.
상기 카드정보가 상기 비밀키로 암호화되고, 또한 상기 비밀키가 상기 서버측 공개키를 통해 암호화되면, 상기 암호 처리부(305)는 상기 비밀키로 암호화된 카드정보와 상기 서버측 공개키로 암호화된 비밀키를 연계한 결제수단 정보를 생성하여 상기 정보 제공부(300)로 제공하며(1625), 상기 정보 제공부(300)는 상기 결제수단 정보를 상기 POS 단말(100)의 제어부(105)로 제공한다(1630).
본 발명의 실시 방법에 따르면, 상기 정보 제공부(300)는 상기 결제수단 정보(및/또는 암호화된 카드정보)에 상기 메모리에 저장된 상기 암호화 키 인덱스를 더 포함하여 상기 POS 단말(100)의 제어부(105)로 제공하는 것이 바람직하다.
도면17a와 도면17b는 본 발명의 실시 방법에 따라 카드리더 모듈(130)에서 카드정보를 키교환 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
보다 상세하게 본 도면17a와 도면17b는 상기 도면13과 같은 암호화 기능이 구비된 카드리더 모듈(130)에서 상기 카드정보를 키교환 방식으로 암호화하여 송신 하는 실시 방법에 대한 것으로서, 발명이 속하는 기술분야에서 통상의 지식을 가진 지라면, 본 도면17을 참조 및/또는 변형하여 상기 카드리더 모듈(130)에서 상기 카드정보를 키교환 방식으로 암호화하는 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 실시 방법을 모두 포함하며, 본 도면17에 도시된 실시 방법으로 한정되지 아니한다.
본 발명의 실시 방법을 따르는 본 도면17에서 상기 카드리더 모듈(130)측 개인키와 서버측 공개키는 상기 카드리더 모듈(130)에 구비된 상기 메모리로부터 독출되는 것이 바람직하다.
도면17a와 도면17b를 참조하면, 상기 카드리더 모듈(130)의 비접촉식 IC 리더부(1300)에서 소정의 카드번호와 카드 유효기간 및/또는 카드사 정보를 적어도 하나 이상 포함하는 소정의 카드정보가 리딩되면, 이를 상기 암호 처리부(305)로 제공하는데(1700), 상기 카드정보가 제공되면, 상기 암호 처리부(305)는 상기 카드정보를 소정의 일방향 해시함수(예컨대, 상기 카드정보의 길이에 상관없이 일정길이의 해시코드(Hash Code)를 포함하는 메시지 다이제스트(Message Digest)를 생성하고, 상기 해시코드(또는 메시지 다이제스트)를 통해 원래의 메시지를 확인(또는 유추)할 수 없는 일방향 해시함수(Hash Function). 상기 카드리더 모듈(130)과 상기 암호화된 카드정보를 복호화하는 호스트는 동일한 해시함수를 사용)를 통해 소정의 메시지 다이제스트를 생성하고(1705), 상기 메시지 다이제스트를 상기 카드리 더 모듈(130)측 개인키를 통해 암호화함으로써 전자서명한다(1710).
여기서, 상기 암호 처리부(305)의 암호화 기능을 E(Encryption)라고 하고, 상기 카드리더 모듈(130)측 개인키를 t1(yerminal side key), 상기 메시지 다이제스트를 m(message digest), 및 상기 카드리더 모듈(130)측 개인키로 암호화된 메시지 다이제스트를 C(Ciphertext)라고 하면, 상기 암호 처리부(305)의 전자서명 기능은 "Et1(m)=C"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)가 상기 카드리더 모듈(130)측 개인키를 통해 상기 메시지 다이제스트를 암호화하는 알고리즘은, RSA(Ron Rivest, Adi Shamir, Len Adleman), DSA(Digital Signature Algorithm), DH(Diffie, Hellman), ECC(Elliptic Curve Cryptosystem), KCDSA, ECDSA, ECDH 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 암호화 알고리즘이 이용될 수 있으나, 특정 암호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
예를들어, 상기 암호화 알고리즘 중 RSA 암호화 알고리즘을 통해 상기 메시지 다이제스트를 암호화하는 경우, 암호화 과정에서 이용되는 공개된 법(Modulus)을 n, 상기 n의 서로 다른 소인수로 공개되지 않은 소수를 a와 b, 공개된 지수(예컨대, 3 또는 216+)를 e, 공개되지 않은 지수를 d라고 하면, 상기 n은 "n=a*b"를 만족하고, 상기 d는 " de=1 mod (a-1)(b-1)"를 만족하는데, 이 때 상기 암호 처리부(305)의 전자서명 기능은 "C=Et1(m)=me mod n"와 같이 표현할 수 있다.
또한, 상기 암호 처리부(305)는 상기 카드정보를 비밀키(secret Key, Symmetric Key) 방식으로 암호화하기 위한 소정의 랜덤 비밀키(Random Secret key)를 생성하고(1715), 상기 카드정보와 상기 카드리더 모듈(130)측 개인키로 암호화된 상기 메시지 다이제스트와 상기 메모리에 구비된 인증서(예컨대, 카드리더 모듈(130)측 공개키를 포함하는 인증서) 사본을 연계하여 상기 생성된 비밀키를 통해 암호화한다(1720).
여기서, 상기 암호 처리부(305)의 암호화 기능을 E(Encryption)라고 하고, 상기 비밀키를 r(random Secret key), 상기 카드정보와 인증서 사본을 P(Plaintext), 및 상기 비밀키로 암호화된 카드정보와 인증서 사본을 C(Ciphertext)라고 하면, 상기 암호 처리부(305)의 암호화 기능은 "Er(P)=C"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)가 상기 비밀키를 통해 상기 카드정보와 인증서 사본을 암호화하는 알고리즘은, SEED, DES(Data Encryption Standard), Triple-DES, Skipjack, IDEA(International Data Encryption Algorithm) 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하 며, 이외에도 다양한 형태의 암호화 알고리즘이 이용될 수 있으나, 특정 암호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
또한, 상기 암호 처리부(305)는 상기 카드정보를 암호화시킨 상기 비밀키를 암호화하기 위해 상기 메모리로부터 소정의 서버측 공개키를 추출하고(1725), 상기 서버측 공개키를 이용하여 상기 카드정보를 암호화한 비밀키를 암호화한다(1730).
여기서, 상기 암호 처리부(305)의 암호화 기능을 E(Encryption)라고 하고, 상기 서버측 공개키를 s1(server side key), 상기 비밀키를 r(random Secret key), 및 상기 서버측 공개키로 암호화된 비밀키를 C(Ciphertext)라고 하면, 상기 암호 처리부(305)의 암호화 기능은 "Es1(r)=C"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)가 상기 서버측 공개키를 통해 상기 비밀키를 암호화하는 알고리즘은, RSA(Ron Rivest, Adi Shamir, Len Adleman), DSA(Digital Signature Algorithm), DH(Diffie, Hellman), ECC(Elliptic Curve Cryptosystem), KCDSA, ECDSA, ECDH 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 암호화 알고리즘이 이용될 수 있으나, 특정 암호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
예를들어, 상기 암호화 알고리즘 중 RSA 암호화 알고리즘을 통해 상기 비밀 키를 암호화하는 경우, 암호화 과정에서 이용되는 공개된 법(Modulus)을 n, 상기 n의 서로 다른 소인수로 공개되지 않은 소수를 a와 b, 공개된 지수(예컨대, 3 또는 216+)를 e, 공개되지 않은 지수를 d라고 하면, 상기 n은 "n=a*b"를 만족하고, 상기 d는 " de=1 mod (a-1)(b-1)"를 만족하는데, 이 때 상기 암호 처리부(305)의 암호화 기능은 "C=Es1(r)=re mod n"와 같이 표현할 수 있다.
상기 카드정보와 상기 카드리더 모듈(130)측 개인키로 암호화된 상기 메시지 다이제스트와 상기 카드리더 모듈(130)측 공개키를 포함하는 인증서 사본이 연계되어 상기 생성된 비밀키를 통해 암호화되고, 상기 비밀키가 상기 서버측 공개키를 통해 암호화되면, 상기 암호 처리부(305)는 상기 비밀키를 통해 암호화된 상기 카드정보와 상기 카드리더 모듈(130)측 개인키로 암호화된 상기 메시지 다이제스트와 상기 카드리더 모듈(130)측 공개키를 포함하는 인증서 사본을 상기 서버측 공개키로 암호화된 비밀키와 연계하여 소정의 결제수단 정보를 생성하고, 상기 생성된 결제수단 정보를 상기 정보 제공부(300)로 제공하며(1735), 상기 정보 제공부(300)는 상기 결제수단 정보를 상기 POS 단말(100)의 제어부(105)로 제공한다(1740).
본 발명의 실시 방법에 따르면, 상기 정보 제공부(300)는 상기 결제수단 정보(및/또는 암호화된 카드정보)에 상기 메모리에 저장된 상기 암호화 키 인덱스를 더 포함하여 상기 POS 단말(100)의 제어부(105)로 제공하는 것이 바람직하다.
도면18은 본 발명의 일 실시 방법에 따라 소정의 OTP 코드를 통해 카드정보를 암호화하는 기능이 구비된 카드리더 모듈(130) 구성을 도시한 도면이다.
보다 상세하게 본 도면18은 상기 도면1에 도시된 POS 단말(100)의 카드리더 모듈(130)에 있어서, 소정의 MS카드로부터 리딩되는 카드정보를 상기 POS 단말(100)의 제어부(105)로 제공하기 전에 상기 카드리더 모듈(130)에서 소정의 OTP 코드를 동적 생성 및 상기 OTP 코드를 통해 암호화하여 제공하는 기능 구성에 대한 것으로서, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면, 본 도면18을 참조 및/또는 변형하여 상기 MS카드로부터 리딩되는 카드정보를 소정의 소정의 OTP 코드를 동적 생성 및 상기 OTP 코드를 통해 암호화하여 상기 POS 단말(100)의 제어부(105)로 제공하는 카드리더 모듈(130)에 대한 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 실시 방법을 모두 포함하며, 본 도면18에 도시된 실시 방법으로 한정되지 아니한다.
도면18을 참조하면, 상기 카드리더 모듈(130)은 상기 고객 소유 MS카드와 ISO/IEC 7810 규격에 대응하는 카드 인터페이스를 제공하는 MS 리더부(310)와, 소정의 OTP 코드를 생성하기 위한 OTP 생성 정보를 저장하는 메모리와, 상기 OTP 생성 정보를 통해 상기 MS카드로부터 리딩되는 카드정보를 암호화하기 위한 OTP 코드를 생성하는 OTP 생성부(1800)와, 상기 OTP 코드를 암호화 키로 이용하여 상기 MS카드로부터 리딩되는 카드정보를 암호화하는 암호 처리부(305)와, 상기 암호화된 카드정보와 상기 암호화 키 인덱스를 상기 POS 단말(100)에 구비된 제어부(105)로 제공하는 정보 제공부(300)를 구비하여 이루어지는 것을 특징으로 한다.
상기 MS 리더부(310)는 ISO/IEC 7810에 근거하는 카드 리더부로서, 소정의 코일을 포함하는 적어도 하나 이상의 자기 헤드(Magnetic Head)를 포함하여 이루어지며, 소정의 정보(예컨대, 자성화된 이진(Binary) 데이터)가 기록된 MS카드가 상기 자기 헤드와 밀착하여 소정의 방향으로 이동(또는 자기 헤드가 소정의 정보가 기록된 MS카드와 밀착하여 이동)하면, 상기 자기 헤드에 소정의 전기적 신호가 로딩되는 것을 이용하여 상기 MS카드의 MS에 구비된 적어도 하나 이상의 트랙(Track)으로부터 소정의 카드정보를 POS 단말(100)로 인터페이싱 하는 것을 특징으로 한다.
*상기 메모리는 소정의 OTP 코드를 생성하기 위한 OTP 생성 정보를 저장하는 것을 특징으로 하며, 상기 OTP 생성부(1800)는 상기 OTP 생성 정보를 기반으로 상기 MS카드로부터 리딩되는 카드정보를 암호화하기 위한 OTP 코드를 생성하는 것을 특징으로 한다.
본 발명의 실시 방법에 따라 시간-동기화 방식으로 OTP 코드를 생성하는 경우, 상기 OTP 생성부(1800)는 상기 OTP 생성 정보와 소정의 타이머로부터 독출되는 현재 시각 정보를 매개변수로 사용하여 상기 MS카드로부터 리딩되는 카드정보를 암호화하기 위한 OTP 코드를 생성하는 것이 바람직하다.
본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면, 상기 시간-동기 방식으로 상기 OTP 생성 정보와 현재 시각 정보를 기반으로 소정의 OTP 코드를 생성하는 기술적 특징을 기 숙지하고 있을 것이므로, 이에 대한 상세한 설명은 편의상 생략한다.
본 발명의 실시 방법에 따르면, 상기 OTP 생성부(1800)가 생성하는 OTP 코드는 상기 MS카드로부터 리딩된 카드정보를 암호화하는 소정의 암호화 키의 기능을 수행하는 것을 특징으로 하며, 상기 암호화 키는 상기 카드정보를 대칭키(또는 비밀키) 암호화 방식으로 암호화하기 위한 암호화 키, 및/또는 상기 카드정보를 공개키 암호화 방식으로 암호화하기 위한 암호화 키, 및/또는 상기 카드정보를 전자봉투 암호화 방식으로 암호화하기 위한 암호화 키, 및/또는 상기 카드정보를 키교환 암호화 방식으로 암호화하기 위한 암호화 키 중 적어도 하나 이상을 포함하여 이루어진다.
본 발명의 다른 실시 방법에 따르면, 상기 OTP 코드가 상기 OTP 생성 정보 없이 현재 시각 정보만을 통해 생성되는 경우, 상기 메모리에 상기 OTP 생성 정보를 저장하는 것이 생략 가능하며, 이에 의해 본 발명이 한정되지 아니한다.
본 발명의 실시 방법에 따르면, 상기 메모리는 상기 MS 리더부(310)를 통해 리딩된 카드정보를 암호화되기 전에 임시 저장하는 것이 바람직하며, 상기 암호 처리부(305)는 상기 메모리에 저장된 카드정보를 암호화하는 것이 바람직하다.
또는, 상기 MS 리더부(310)를 통해 리딩된 카드정보를 암호화되기 전에 소정의 보안칩(도시생략)에 구비된 메모리에 저장되는 것이 가능하며, 이에 의해 본 발명이 한정되지 아니한다.
상기 암호 처리부(305)는 상기 MS 리더부(310)를 통해 소정의 MS카드로부터 리딩된 카드정보를 상기 OTP 생성부(1800)에 의해 동적 생성된 OTP 코드에 대응하는 암호화 키를 통해 대칭키(또는 비밀키) 암호화 방식, 및/또는 공개키 암호화 방식, 및/또는 전자봉투 암호화 방식, 및/또는 키교환 암호화 방식 중 적어도 하나 이상의 암호화 방식을 통해 암호화하는 것을 특징으로 하며, 상기 암호화된 카드정보를 상기 정보 제공부(300)로 제공한다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)는 상기 카드정보를 암호화하는 과정을 인증하는 보안기능을 더 구비하여 이루어지는 것이 바람직하며, 상기 보안기능은 상기 카드리더 모듈에 구비되는 소정의 보안칩 형태로 구비되는 것이 바람직하다.
상기 정보 제공부(300)는 상기 암호 처리부(305)에 의해 대칭키(또는 비밀키) 암호화 방식, 및/또는 공개키 암호화 방식, 및/또는 전자봉투 암호화 방식, 및/또는 키교환 암호화 방식 중 적어도 하나 이상의 암호화 방식으로 암호화된 카드정보를 상기 POS 단말(100)에 구비된 제어부(105)로 제공하는 것을 특징으로 하며, 이에 의해 상기 카드리더 모듈(130)에서 암호화된 카드정보는 소정의 호스트에서 소정의 복호화 키를 복호화될 때까지 보안이 유지된다.
본 발명의 실시 방법에 따르면, 상기 정보 제공부(300)는 상기 암호화된 카드정보 이외에 상기 암호화되지 않은 카드정보의 일부(예컨대, 카드번호 중 카드사 식별번호)를 상기 POS 단말에 구비된 제어부로 제공하는 것이 가능하며, 상기 암호화되지 않은 카드정보의 일부는 상기 POS 단말에 구비된 메모리(및/또는 로컬 서버에 구비된 데이터베이스)에 저장되는 것이 가능하다.
본 발명의 실시 방법에 따르면, 상기 MS 리더부(310)와, 암호 처리부(305)와, 정보 제공부(300)는 상기 카드리더 모듈에 구비되는 프로그램 형태로 탑재되는 것이 바람직하며, 상기 프로그램은 소정의 프로그램 제공 서버(도시생략)으로부터 다운로드되어 상기 카드리더 모듈에 탑재되는 것이 바람직하다.
또한, 상기 프로그램이 상기 카드리더 모듈로 다운로드되어 탑재되는 과정에 서, 상기 프로그램의 암호화 방식 및/또는 암호화 키가 결정되는 것이 바람직하다.
도면19는 본 발명의 실시 방법에 따라 카드리더 모듈(130)에서 카드정보를 대칭키(또는 비밀키) 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
보다 상세하게 본 도면19는 상기 도면18과 같은 암호화 기능이 구비된 카드리더 모듈(130)에서 상기 카드정보를 대칭키(또는 비밀키) 방식으로 암호화하여 송신하는 실시 방법에 대한 것으로서, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 지라면, 본 도면19를 참조 및/또는 변형하여 상기 카드리더 모듈(130)에서 상기 카드정보를 대칭키(또는 비밀키) 방식으로 암호화하는 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 실시 방법을 모두 포함하며, 본 도면19에 도시된 실시 방법으로 한정되지 아니한다.
본 발명의 실시 방법을 따르는 본 도면19에서 상기 대칭키(또는 비밀키)는 상기 카드리더 모듈(130)에 구비된 상기 OTP 생성부(1800)로부터 동적 생성되는 OTP 코드를 포함하여 이루어지는 것이 바람직하다.
도면19를 참조하면, 상기 카드리더 모듈(130)의 MS 리더부(310)에서 소정의 카드번호와 카드 유효기간 및/또는 카드사 정보를 적어도 하나 이상 포함하는 소정의 카드정보가 리딩되면, 이를 상기 암호 처리부(305)로 제공하는데(1900), 상기 카드정보가 제공되면, 상기 암호 처리부(305)는 상기 카드리더 모듈(130)에 구비된 OTP 생성부(1800)로부터 카드정보를 암호화하기 위한 소정의 대칭키(또는 비밀키)를 독출하고(1905), 상기 독출된 대칭키(또는 비밀키)를 통해 상기 카드정보를 암호화한다(1910).
여기서, 상기 암호 처리부(305)의 암호화 기능을 E(Encryption)라고 하고, 상기 대칭키(또는 비밀키)를 k(key), 상기 카드정보를 P(Plaintext), 및 상기 대칭키(또는 비밀키)로 암호화된 카드정보를 C(Ciphertext)라고 하면, 상기 암호 처리부(305)의 암호화 기능은 "Ek(P)=C"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)가 상기 대칭키(또는 비밀키)를 통해 상기 카드정보를 암호화하는 알고리즘은, SEED, DES(Data Encryption Standard), Triple-DES, Skipjack, IDEA(International Data Encryption Algorithm) 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 암호화 알고리즘이 이용될 수 있으나, 특정 암호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
상기와 같이 대칭키(또는 비밀키)를 통해 카드정보가 암호화되면, 상기 정보 제공부(300)는 상기 암호화된 카드정보를 상기 POS 단말(100)의 제어부(105)로 제공한다(1915).
도면20은 본 발명의 실시 방법에 따라 카드리더 모듈(130)에서 카드정보를 공개키 기반 구조 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
보다 상세하게 본 도면20은 상기 도면18과 같은 암호화 기능이 구비된 카드리더 모듈(130)에서 상기 카드정보를 공개키 기반 구조 방식으로 암호화하여 송신하는 실시 방법에 대한 것으로서, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 지라면, 본 도면20을 참조 및/또는 변형하여 상기 카드리더 모듈(130)에서 상기 카드정보를 공개키 방식으로 암호화하는 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 실시 방법을 모두 포함하며, 본 도면20에 도시된 실시 방법으로 한정되지 아니한다.
본 발명의 실시 방법을 따르는 본 도면20에서 상기 서버측 공개키는 상기 카드리더 모듈(130)에 구비된 상기 OTP 생성부(1800)로부터 동적 생성되는 OTP 코드를 포함하여 이루어지는 것이 바람직하다.
도면20을 참조하면, 상기 카드리더 모듈(130)의 MS 리더부(310)에서 소정의 카드번호와 카드 유효기간 및/또는 카드사 정보를 적어도 하나 이상 포함하는 소정의 카드정보가 리딩되면, 이를 상기 암호 처리부(305)로 제공하는데(2000), 상기 카드정보가 제공되면, 상기 암호 처리부(305)는 상기 OTP 생성부(1800)로부터 상기 카드정보를 암호화하기 위한 소정의 서버측 공개키를 추출하고(2005), 상기 추출된 서버측 공개키를 통해 상기 카드정보를 암호화한다(2010).
여기서, 상기 암호 처리부(305)의 암호화 기능을 E(Encryption)라고 하고, 상기 서버측 공개키를 k1(key), 상기 카드정보를 P(Plaintext), 및 상기 서버측 공개키로 암호화된 카드정보를 C(Ciphertext)라고 하면, 상기 암호 처리부(305)의 암호화 기능은 "Ek1(P)=C"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)가 상기 서버측 공개키를 통해 상기 카드정보를 암호화하는 알고리즘은, RSA(Ron Rivest, Adi Shamir, Len Adleman), DSA(Digital Signature Algorithm), DH(Diffie, Hellman), ECC(Elliptic Curve Cryptosystem), KCDSA, ECDSA, ECDH 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 암호화 알고리즘이 이용될 수 있으나, 특정 암호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
예를들어, 상기 암호화 알고리즘 중 RSA 암호화 알고리즘을 통해 상기 카드정보를 암호화하는 경우, 암호화 과정에서 이용되는 공개된 법(Modulus)을 n, 상기 n의 서로 다른 소인수로 공개되지 않은 소수를 a와 b, 공개된 지수(예컨대, 3 또는 216+)를 e, 공개되지 않은 지수를 d라고 하면, 상기 n은 "n=a*b"를 만족하고, 상기 d는 " de=1 mod (a-1)(b-1)"를 만족하는데, 이 때 상기 암호 처리부(305)의 암호화 기능은 "C=Ek1(P)=Pe mod n"와 같이 표현할 수 있다.
상기와 같이 서버측 공개키를 통해 카드정보가 암호화되면, 상기 정보 제공부(300)는 상기 암호화된 카드정보를 상기 POS 단말(100)의 제어부(105)로 제공한다(2015).
도면21은 본 발명의 실시 방법에 따라 카드리더 모듈(130)에서 카드정보를 전자봉투 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
보다 상세하게 본 도면21은 상기 도면18과 같은 암호화 기능이 구비된 카드리더 모듈(130)에서 상기 카드정보를 전자봉투 방식으로 암호화하여 송신하는 실시 방법에 대한 것으로서, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 지라면, 본 도면21을 참조 및/또는 변형하여 상기 카드리더 모듈(130)에서 상기 카드정보를 전자봉투 방식으로 암호화하는 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 실시 방법을 모두 포함하며, 본 도면21에 도시된 실시 방법으로 한정되지 아니한다.
본 발명의 실시 방법을 따르는 본 도면21에서 상기 서버측 공개키는 상기 카드리더 모듈(130)에 구비된 상기 OTP 생성부(1800)로부터 동적 생성되는 OTP 코드를 포함하여 이루어지는 것이 바람직하다.
도면21을 참조하면, 상기 카드리더 모듈(130)의 MS 리더부(310)에서 소정의 카드번호와 카드 유효기간 및/또는 카드사 정보를 적어도 하나 이상 포함하는 소정의 카드정보가 리딩되면, 이를 상기 암호 처리부(305)로 제공하는데(2100), 상기 카드정보가 제공되면, 상기 암호 처리부(305)는 상기 카드정보를 비밀키(secret Key, Symmetric Key) 방식으로 암호화하기 위한 소정의 랜덤 비밀키(Random Secret key)를 생성하고(2105), 상기 생성된 비밀키를 이용하여 상기 카드정보를 암호화한다(2110).
여기서, 상기 암호 처리부(305)의 암호화 기능을 E(Encryption)라고 하고, 상기 비밀키를 r(random Secret key), 상기 카드정보를 P(Plaintext), 및 상기 비밀키로 암호화된 카드정보를 C(Ciphertext)라고 하면, 상기 암호 처리부(305)의 암호화 기능은 "Er(P)=C"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)가 상기 비밀키를 통해 상기 카드정보를 암호화하는 알고리즘은, SEED, DES(Data Encryption Standard), Triple-DES, Skipjack, IDEA(International Data Encryption Algorithm) 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 암호화 알고리즘이 이용될 수 있으나, 특정 암호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
이후, 상기 암호 처리부(305)는 상기 카드정보를 암호화하는데 사용한 상기 비밀키(랜덤 비밀키)를 암호화하는데, 이를 위해 상기 암호 처리부(305)는 상기 OTP 생성부(1800)로부터 소정의 서버측 공개키를 추출하고(2115), 상기 서버측 공개키를 이용하여 상기 비밀키를 암호화한다(2120).
여기서, 상기 암호 처리부(305)의 암호화 기능을 E(Encryption)라고 하고, 상기 서버측 공개키를 k1(key), 상기 비밀키를 r(random Secret key), 및 상기 서버측 공개키로 암호화된 비밀키를 C(Ciphertext)라고 하면, 상기 암호 처리부(305)의 암호화 기능은 "Ek1(r)=C"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)가 상기 서버측 공개키를 통해 상기 비밀키를 암호화하는 알고리즘은, RSA(Ron Rivest, Adi Shamir, Len Adleman), DSA(Digital Signature Algorithm), DH(Diffie, Hellman), ECC(Elliptic Curve Cryptosystem), KCDSA, ECDSA, ECDH 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 암호화 알고리즘이 이용될 수 있으나, 특정 암호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
예를들어, 상기 암호화 알고리즘 중 RSA 암호화 알고리즘을 통해 상기 비밀키를 암호화하는 경우, 암호화 과정에서 이용되는 공개된 법(Modulus)을 n, 상기 n 의 서로 다른 소인수로 공개되지 않은 소수를 a와 b, 공개된 지수(예컨대, 3 또는 216+)를 e, 공개되지 않은 지수를 d라고 하면, 상기 n은 "n=a*b"를 만족하고, 상기 d는 " de=1 mod (a-1)(b-1)"를 만족하는데, 이 때 상기 암호 처리부(305)의 암호화 기능은 "C=Ek1(r)=re mod n"와 같이 표현할 수 있다.
상기 카드정보가 상기 비밀키로 암호화되고, 또한 상기 비밀키가 상기 서버측 공개키를 통해 암호화되면, 상기 암호 처리부(305)는 상기 비밀키로 암호화된 카드정보와 상기 서버측 공개키로 암호화된 비밀키를 연계한 결제수단 정보를 생성하여 상기 정보 제공부(300)로 제공하며(2125), 상기 정보 제공부(300)는 상기 결제수단 정보를 상기 POS 단말(100)의 제어부(105)로 제공한다(2130).
도면22a와 도면22b는 본 발명의 실시 방법에 따라 카드리더 모듈(130)에서 카드정보를 키교환 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
보다 상세하게 본 도면22a와 도면22b는 상기 도면18과 같은 암호화 기능이 구비된 카드리더 모듈(130)에서 상기 카드정보를 키교환 방식으로 암호화하여 송신하는 실시 방법에 대한 것으로서, 발명이 속하는 기술분야에서 통상의 지식을 가진 지라면, 본 도면22를 참조 및/또는 변형하여 상기 카드리더 모듈(130)에서 상기 카드정보를 키교환 방식으로 암호화하는 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 실시 방법을 모두 포함하며, 본 도면22에 도시된 실시 방 법으로 한정되지 아니한다.
본 발명의 실시 방법을 따르는 본 도면22에서 상기 카드리더 모듈(130)측 개인키와 서버측 공개키는 상기 카드리더 모듈(130)에 구비된 상기 OTP 생성부(1800)로부터 동적 생성되는 OTP 코드를 포함하여 이루어지는 것이 바람직하다.
도면22a와 도면22b를 참조하면, 상기 카드리더 모듈(130)의 MS 리더부(310)에서 소정의 카드번호와 카드 유효기간 및/또는 카드사 정보를 적어도 하나 이상 포함하는 소정의 카드정보가 리딩되면, 이를 상기 암호 처리부(305)로 제공하는데(2200), 상기 카드정보가 제공되면, 상기 암호 처리부(305)는 상기 카드정보를 소정의 일방향 해시함수(예컨대, 상기 카드정보의 길이에 상관없이 일정길이의 해시코드(Hash Code)를 포함하는 메시지 다이제스트(Message Digest)를 생성하고, 상기 해시코드(또는 메시지 다이제스트)를 통해 원래의 메시지를 확인(또는 유추)할 수 없는 일방향 해시함수(Hash Function). 상기 카드리더 모듈(130)과 상기 암호화된 카드정보를 복호화하는 호스트는 동일한 해시함수를 사용)를 통해 소정의 메시지 다이제스트를 생성하고(2205), 상기 메시지 다이제스트를 상기 카드리더 모듈(130)측 개인키를 통해 암호화함으로써 전자서명한다(2210).
여기서, 상기 암호 처리부(305)의 암호화 기능을 E(Encryption)라고 하고, 상기 카드리더 모듈(130)측 개인키를 t1(yerminal side key), 상기 메시지 다이제 스트를 m(message digest), 및 상기 카드리더 모듈(130)측 개인키로 암호화된 메시지 다이제스트를 C(Ciphertext)라고 하면, 상기 암호 처리부(305)의 전자서명 기능은 "Et1(m)=C"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)가 상기 카드리더 모듈(130)측 개인키를 통해 상기 메시지 다이제스트를 암호화하는 알고리즘은, RSA(Ron Rivest, Adi Shamir, Len Adleman), DSA(Digital Signature Algorithm), DH(Diffie, Hellman), ECC(Elliptic Curve Cryptosystem), KCDSA, ECDSA, ECDH 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 암호화 알고리즘이 이용될 수 있으나, 특정 암호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
예를들어, 상기 암호화 알고리즘 중 RSA 암호화 알고리즘을 통해 상기 메시지 다이제스트를 암호화하는 경우, 암호화 과정에서 이용되는 공개된 법(Modulus)을 n, 상기 n의 서로 다른 소인수로 공개되지 않은 소수를 a와 b, 공개된 지수(예컨대, 3 또는 216+)를 e, 공개되지 않은 지수를 d라고 하면, 상기 n은 "n=a*b"를 만족하고, 상기 d는 " de=1 mod (a-1)(b-1)"를 만족하는데, 이 때 상기 암호 처리부(305)의 전자서명 기능은 "C=Et1(m)=me mod n"와 같이 표현할 수 있다.
또한, 상기 암호 처리부(305)는 상기 카드정보를 비밀키(secret Key, Symmetric Key) 방식으로 암호화하기 위한 소정의 랜덤 비밀키(Random Secret key)를 생성하고(2215), 상기 카드정보와 상기 카드리더 모듈(130)측 개인키로 암호화된 상기 메시지 다이제스트와 상기 메모리(도시생략)에 구비된 인증서(예컨대, 카드리더 모듈(130)측 공개키를 포함하는 인증서) 사본을 연계하여 상기 생성된 비밀키를 통해 암호화한다(2220).
여기서, 상기 암호 처리부(305)의 암호화 기능을 E(Encryption)라고 하고, 상기 비밀키를 r(random Secret key), 상기 카드정보와 인증서 사본을 P(Plaintext), 및 상기 비밀키로 암호화된 카드정보와 인증서 사본을 C(Ciphertext)라고 하면, 상기 암호 처리부(305)의 암호화 기능은 "Er(P)=C"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)가 상기 비밀키를 통해 상기 카드정보와 인증서 사본을 암호화하는 알고리즘은, SEED, DES(Data Encryption Standard), Triple-DES, Skipjack, IDEA(International Data Encryption Algorithm) 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 암호화 알고리즘이 이용될 수 있으나, 특정 암호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
또한, 상기 암호 처리부(305)는 상기 카드정보를 암호화시킨 상기 비밀키를 암호화하기 위해 상기 OTP 생성부(1800)로부터 소정의 서버측 공개키를 추출하고(2225), 상기 서버측 공개키를 이용하여 상기 카드정보를 암호화한 비밀키를 암호화한다(2230).
여기서, 상기 암호 처리부(305)의 암호화 기능을 E(Encryption)라고 하고, 상기 서버측 공개키를 s1(server side key), 상기 비밀키를 r(random Secret key), 및 상기 서버측 공개키로 암호화된 비밀키를 C(Ciphertext)라고 하면, 상기 암호 처리부(305)의 암호화 기능은 "Es1(r)=C"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)가 상기 서버측 공개키를 통해 상기 비밀키를 암호화하는 알고리즘은, RSA(Ron Rivest, Adi Shamir, Len Adleman), DSA(Digital Signature Algorithm), DH(Diffie, Hellman), ECC(Elliptic Curve Cryptosystem), KCDSA, ECDSA, ECDH 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 암호화 알고리즘이 이용될 수 있으나, 특정 암호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
예를들어, 상기 암호화 알고리즘 중 RSA 암호화 알고리즘을 통해 상기 비밀키를 암호화하는 경우, 암호화 과정에서 이용되는 공개된 법(Modulus)을 n, 상기 n의 서로 다른 소인수로 공개되지 않은 소수를 a와 b, 공개된 지수(예컨대, 3 또는 216+)를 e, 공개되지 않은 지수를 d라고 하면, 상기 n은 "n=a*b"를 만족하고, 상기 d는 " de=1 mod (a-1)(b-1)"를 만족하는데, 이 때 상기 암호 처리부(305)의 암호화 기능은 "C=Es1(r)=re mod n"와 같이 표현할 수 있다.
상기 카드정보와 상기 카드리더 모듈(130)측 개인키로 암호화된 상기 메시지 다이제스트와 상기 카드리더 모듈(130)측 공개키를 포함하는 인증서 사본이 연계되어 상기 생성된 비밀키를 통해 암호화되고, 상기 비밀키가 상기 서버측 공개키를 통해 암호화되면, 상기 암호 처리부(305)는 상기 비밀키를 통해 암호화된 상기 카드정보와 상기 카드리더 모듈(130)측 개인키로 암호화된 상기 메시지 다이제스트와 상기 카드리더 모듈(130)측 공개키를 포함하는 인증서 사본을 상기 서버측 공개키로 암호화된 비밀키와 연계하여 소정의 결제수단 정보를 생성하고, 상기 생성된 결제수단 정보를 상기 정보 제공부(300)로 제공하며(2235), 상기 정보 제공부(300)는 상기 결제수단 정보를 상기 POS 단말(100)의 제어부(105)로 제공한다(2240).
도면23은 본 발명의 다른 일 실시 방법에 따라 소정의 OTP 코드를 통해 카드정보를 암호화하는 기능이 구비된 카드리더 모듈(130) 구성을 도시한 도면이다.
보다 상세하게 본 도면23은 상기 도면1에 도시된 POS 단말(100)의 카드리더 모듈(130)에 있어서, 소정의 접촉식 IC카드로부터 리딩되는 카드정보를 상기 POS 단말(100)의 제어부(105)로 제공하기 전에 상기 카드리더 모듈(130)에서 소정의 OTP 코드를 동적 생성 및 상기 OTP 코드를 통해 암호화하여 제공하는 기능 구성에 대한 것으로서, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면, 본 도면23을 참조 및/또는 변형하여 상기 접촉식 IC카드로부터 리딩되는 카드정보를 소정의 소정의 OTP 코드를 동적 생성 및 상기 OTP 코드를 통해 암호화하여 상기 POS 단말(100)의 제어부(105)로 제공하는 카드리더 모듈(130)에 대한 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 실시 방법을 모두 포함하며, 본 도면23에 도시된 실시 방법으로 한정되지 아니한다.
도면23을 참조하면, 상기 카드리더 모듈(130)은 상기 고객 소유 접촉식 IC카드와 ISO/IEC 7816 규격에 대응하는 카드 인터페이스를 제공하는 접촉식 IC 리더부(800)와, 소정의 OTP 코드를 생성하기 위한 OTP 생성 정보를 저장하는 메모리와, 상기 OTP 생성 정보를 통해 상기 접촉식 IC카드로부터 리딩되는 카드정보를 암호화하기 위한 OTP 코드를 생성하는 OTP 생성부(1800)와, 상기 OTP 코드를 암호화 키로 이용하여 상기 접촉식 IC카드로부터 리딩되는 카드정보를 암호화하는 암호 처리부(305)와, 상기 암호화된 카드정보와 상기 암호화 키 인덱스를 상기 POS 단말(100)에 구비된 제어부(105)로 제공하는 정보 제공부(300)를 구비하여 이루어지는 것을 특징으로 한다.
상기 접촉식 IC 리더부(800)는 ISO/IEC 7816에 근거하는 카드 리더부로서, 접촉식 IC카드에 구비된 COB(Chip On Board; COB)와 접촉식으로 전기적 접점을 이루는 적어도 하나 이상의 접촉점을 포함하여 이루어지며, 상기 접촉점을 통해 상기 IC카드의 IC칩으로 전원을 공급하고, APDU(Application Protocol Data Unit)를 이용하는 상기 반이중(Half Duplex) 방식의 트랜잭션을 통해 상기 IC칩으로부터 소정의 카드정보를 POS 단말(100)로 인터페이싱 하는 것을 특징으로 한다.
상기 메모리는 소정의 OTP 코드를 생성하기 위한 OTP 생성 정보를 저장하는 것을 특징으로 하며, 상기 OTP 생성부(1800)는 상기 OTP 생성 정보를 기반으로 상기 접촉식 IC카드로부터 리딩되는 카드정보를 암호화하기 위한 OTP 코드를 생성하는 것을 특징으로 한다.
본 발명의 실시 방법에 따라 시간-동기화 방식으로 OTP 코드를 생성하는 경우, 상기 OTP 생성부(1800)는 상기 OTP 생성 정보와 소정의 타이머로부터 독출되는 현재 시각 정보를 매개변수로 사용하여 상기 접촉식 IC카드로부터 리딩되는 카드정보를 암호화하기 위한 OTP 코드를 생성하는 것이 바람직하다.
본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면, 상기 시간-동기 방식으로 상기 OTP 생성 정보와 현재 시각 정보를 기반으로 소정의 OTP 코드를 생성하는 기술적 특징을 기 숙지하고 있을 것이므로, 이에 대한 상세한 설명은 편의상 생략한다.
본 발명의 실시 방법에 따르면, 상기 OTP 생성부(1800)가 생성하는 OTP 코드 는 상기 접촉식 IC카드로부터 리딩된 카드정보를 암호화하는 소정의 암호화 키의 기능을 수행하는 것을 특징으로 하며, 상기 암호화 키는 상기 카드정보를 대칭키(또는 비밀키) 암호화 방식으로 암호화하기 위한 암호화 키, 및/또는 상기 카드정보를 공개키 암호화 방식으로 암호화하기 위한 암호화 키, 및/또는 상기 카드정보를 전자봉투 암호화 방식으로 암호화하기 위한 암호화 키, 및/또는 상기 카드정보를 키교환 암호화 방식으로 암호화하기 위한 암호화 키 중 적어도 하나 이상을 포함하여 이루어진다.
본 발명의 다른 실시 방법에 따르면, 상기 OTP 코드가 상기 OTP 생성 정보 없이 현재 시각 정보만을 통해 생성되는 경우, 상기 메모리에 상기 OTP 생성 정보를 저장하는 것이 생략 가능하며, 이에 의해 본 발명이 한정되지 아니한다.
본 발명의 실시 방법에 따르면, 상기 메모리는 상기 접촉식 IC 리더부(800)를 통해 리딩된 카드정보를 암호화되기 전에 임시 저장하는 것이 바람직하며, 상기 암호 처리부(305)는 상기 메모리에 저장된 카드정보를 암호화하는 것이 바람직하다.
또는, 상기 접촉식 IC 리더부(800)를 통해 리딩된 카드정보를 암호화되기 전에 소정의 보안칩(도시생략)에 구비된 메모리에 저장되는 것이 가능하며, 이에 의해 본 발명이 한정되지 아니한다.
상기 암호 처리부(305)는 상기 접촉식 IC 리더부(800)를 통해 소정의 접촉식 IC카드로부터 리딩된 카드정보를 상기 OTP 생성부(1800)에 의해 동적 생성된 OTP 코드에 대응하는 암호화 키를 통해 대칭키(또는 비밀키) 암호화 방식, 및/또는 공개키 암호화 방식, 및/또는 전자봉투 암호화 방식, 및/또는 키교환 암호화 방식 중 적어도 하나 이상의 암호화 방식을 통해 암호화하는 것을 특징으로 하며, 상기 암호화된 카드정보를 상기 정보 제공부(300)로 제공한다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)는 상기 카드정보를 암호화하는 과정을 인증하는 보안기능을 더 구비하여 이루어지는 것이 바람직하며, 상기 보안기능은 상기 카드리더 모듈에 구비되는 소정의 보안칩 형태로 구비되는 것이 바람직하다.
상기 정보 제공부(300)는 상기 암호 처리부(305)에 의해 대칭키(또는 비밀키) 암호화 방식, 및/또는 공개키 암호화 방식, 및/또는 전자봉투 암호화 방식, 및/또는 키교환 암호화 방식 중 적어도 하나 이상의 암호화 방식으로 암호화된 카드정보를 상기 POS 단말(100)에 구비된 제어부(105)로 제공하는 것을 특징으로 하며, 이에 의해 상기 카드리더 모듈(130)에서 암호화된 카드정보는 소정의 호스트에서 소정의 복호화 키를 복호화될 때까지 보안이 유지된다.
본 발명의 실시 방법에 따르면, 상기 정보 제공부(300)는 상기 암호화된 카드정보 이외에 상기 암호화되지 않은 카드정보의 일부(예컨대, 카드번호 중 카드사 식별번호)를 상기 POS 단말에 구비된 제어부로 제공하는 것이 가능하며, 상기 암호화되지 않은 카드정보의 일부는 상기 POS 단말에 구비된 메모리(및/또는 로컬 서버에 구비된 데이터베이스)에 저장되는 것이 가능하다.
본 발명의 실시 방법에 따르면, 상기 접촉식 IC 리더부(800)와, 암호 처리부(305)와, 정보 제공부(300)는 상기 카드리더 모듈에 구비되는 프로그램 형태로 탑재되는 것이 바람직하며, 상기 프로그램은 소정의 프로그램 제공 서버(도시생략)으로부터 다운로드되어 상기 카드리더 모듈에 탑재되는 것이 바람직하다.
또한, 상기 프로그램이 상기 카드리더 모듈로 다운로드되어 탑재되는 과정에서, 상기 프로그램의 암호화 방식 및/또는 암호화 키가 결정되는 것이 바람직하다.
*도면24는 본 발명의 실시 방법에 따라 카드리더 모듈(130)에서 카드정보를 대칭키(또는 비밀키) 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
보다 상세하게 본 도면24는 상기 도면23과 같은 암호화 기능이 구비된 카드리더 모듈(130)에서 상기 카드정보를 대칭키(또는 비밀키) 방식으로 암호화하여 송 신하는 실시 방법에 대한 것으로서, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 지라면, 본 도면24를 참조 및/또는 변형하여 상기 카드리더 모듈(130)에서 상기 카드정보를 대칭키(또는 비밀키) 방식으로 암호화하는 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 실시 방법을 모두 포함하며, 본 도면24에 도시된 실시 방법으로 한정되지 아니한다.
본 발명의 실시 방법을 따르는 본 도면24에서 상기 대칭키(또는 비밀키)는 상기 카드리더 모듈(130)에 구비된 상기 OTP 생성부(1800)로부터 동적 생성되는 OTP 코드를 포함하여 이루어지는 것이 바람직하다.
도면24를 참조하면, 상기 카드리더 모듈(130)의 접촉식 IC 리더부(800)에서 소정의 카드번호와 카드 유효기간 및/또는 카드사 정보를 적어도 하나 이상 포함하는 소정의 카드정보가 리딩되면, 이를 상기 암호 처리부(305)로 제공하는데(2400), 상기 카드정보가 제공되면, 상기 암호 처리부(305)는 상기 카드리더 모듈(130)에 구비된 OTP 생성부(1800)로부터 카드정보를 암호화하기 위한 소정의 대칭키(또는 비밀키)를 독출하고(2405), 상기 독출된 대칭키(또는 비밀키)를 통해 상기 카드정보를 암호화한다(2410).
여기서, 상기 암호 처리부(305)의 암호화 기능을 E(Encryption)라고 하고, 상기 대칭키(또는 비밀키)를 k(key), 상기 카드정보를 P(Plaintext), 및 상기 대칭 키(또는 비밀키)로 암호화된 카드정보를 C(Ciphertext)라고 하면, 상기 암호 처리부(305)의 암호화 기능은 "Ek(P)=C"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)가 상기 대칭키(또는 비밀키)를 통해 상기 카드정보를 암호화하는 알고리즘은, SEED, DES(Data Encryption Standard), Triple-DES, Skipjack, IDEA(International Data Encryption Algorithm) 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 암호화 알고리즘이 이용될 수 있으나, 특정 암호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
상기와 같이 대칭키(또는 비밀키)를 통해 카드정보가 암호화되면, 상기 정보 제공부(300)는 상기 암호화된 카드정보를 상기 POS 단말(100)의 제어부(105)로 제공한다(2415).
도면25는 본 발명의 실시 방법에 따라 카드리더 모듈(130)에서 카드정보를 공개키 기반 구조 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
보다 상세하게 본 도면25는 상기 도면23과 같은 암호화 기능이 구비된 카드리더 모듈(130)에서 상기 카드정보를 공개키 기반 구조 방식으로 암호화하여 송신하는 실시 방법에 대한 것으로서, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 지라면, 본 도면25를 참조 및/또는 변형하여 상기 카드리더 모듈(130)에서 상기 카드정보를 공개키 방식으로 암호화하는 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 실시 방법을 모두 포함하며, 본 도면25에 도시된 실시 방법으로 한정되지 아니한다.
본 발명의 실시 방법을 따르는 본 도면25에서 상기 서버측 공개키는 상기 카드리더 모듈(130)에 구비된 상기 OTP 생성부(1800)로부터 동적 생성되는 OTP 코드를 포함하여 이루어지는 것이 바람직하다.
*도면25를 참조하면, 상기 카드리더 모듈(130)의 접촉식 IC 리더부(800)에서 소정의 카드번호와 카드 유효기간 및/또는 카드사 정보를 적어도 하나 이상 포함하는 소정의 카드정보가 리딩되면, 이를 상기 암호 처리부(305)로 제공하는데(2500), 상기 카드정보가 제공되면, 상기 암호 처리부(305)는 상기 OTP 생성부(1800)로부터 상기 카드정보를 암호화하기 위한 소정의 서버측 공개키를 추출하고(2505), 상기 추출된 서버측 공개키를 통해 상기 카드정보를 암호화한다(2510).
여기서, 상기 암호 처리부(305)의 암호화 기능을 E(Encryption)라고 하고, 상기 서버측 공개키를 k1(key), 상기 카드정보를 P(Plaintext), 및 상기 서버측 공개키로 암호화된 카드정보를 C(Ciphertext)라고 하면, 상기 암호 처리부(305)의 암 호화 기능은 "Ek1(P)=C"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)가 상기 서버측 공개키를 통해 상기 카드정보를 암호화하는 알고리즘은, RSA(Ron Rivest, Adi Shamir, Len Adleman), DSA(Digital Signature Algorithm), DH(Diffie, Hellman), ECC(Elliptic Curve Cryptosystem), KCDSA, ECDSA, ECDH 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 암호화 알고리즘이 이용될 수 있으나, 특정 암호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
예를들어, 상기 암호화 알고리즘 중 RSA 암호화 알고리즘을 통해 상기 카드정보를 암호화하는 경우, 암호화 과정에서 이용되는 공개된 법(Modulus)을 n, 상기 n의 서로 다른 소인수로 공개되지 않은 소수를 a와 b, 공개된 지수(예컨대, 3 또는 216+)를 e, 공개되지 않은 지수를 d라고 하면, 상기 n은 "n=a*b"를 만족하고, 상기 d는 " de=1 mod (a-1)(b-1)"를 만족하는데, 이 때 상기 암호 처리부(305)의 암호화 기능은 "C=Ek1(P)=Pe mod n"와 같이 표현할 수 있다.
상기와 같이 서버측 공개키를 통해 카드정보가 암호화되면, 상기 정보 제공부(300)는 상기 암호화된 카드정보를 상기 POS 단말(100)의 제어부(105)로 제공한다(2515).
도면26은 본 발명의 실시 방법에 따라 카드리더 모듈(130)에서 카드정보를 전자봉투 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
보다 상세하게 본 도면26는 상기 도면25과 같은 암호화 기능이 구비된 카드리더 모듈(130)에서 상기 카드정보를 전자봉투 방식으로 암호화하여 송신하는 실시 방법에 대한 것으로서, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 지라면, 본 도면26을 참조 및/또는 변형하여 상기 카드리더 모듈(130)에서 상기 카드정보를 전자봉투 방식으로 암호화하는 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 실시 방법을 모두 포함하며, 본 도면26에 도시된 실시 방법으로 한정되지 아니한다.
본 발명의 실시 방법을 따르는 본 도면26에서 상기 서버측 공개키는 상기 카드리더 모듈(130)에 구비된 상기 OTP 생성부(1800)로부터 동적 생성되는 OTP 코드를 포함하여 이루어지는 것이 바람직하다.
도면26을 참조하면, 상기 카드리더 모듈(130)의 접촉식 IC 리더부(800)에서 소정의 카드번호와 카드 유효기간 및/또는 카드사 정보를 적어도 하나 이상 포함하는 소정의 카드정보가 리딩되면, 이를 상기 암호 처리부(305)로 제공하는데(2600), 상기 카드정보가 제공되면, 상기 암호 처리부(305)는 상기 카드정보를 비밀키(secret Key, Symmetric Key) 방식으로 암호화하기 위한 소정의 랜덤 비밀 키(Random Secret key)를 생성하고(2605), 상기 생성된 비밀키를 이용하여 상기 카드정보를 암호화한다(2210).
여기서, 상기 암호 처리부(305)의 암호화 기능을 E(Encryption)라고 하고, 상기 비밀키를 r(random Secret key), 상기 카드정보를 P(Plaintext), 및 상기 비밀키로 암호화된 카드정보를 C(Ciphertext)라고 하면, 상기 암호 처리부(305)의 암호화 기능은 "Er(P)=C"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)가 상기 비밀키를 통해 상기 카드정보를 암호화하는 알고리즘은, SEED, DES(Data Encryption Standard), Triple-DES, Skipjack, IDEA(International Data Encryption Algorithm) 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 암호화 알고리즘이 이용될 수 있으나, 특정 암호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
이후, 상기 암호 처리부(305)는 상기 카드정보를 암호화하는데 사용한 상기 비밀키(랜덤 비밀키)를 암호화하는데, 이를 위해 상기 암호 처리부(305)는 상기 OTP 생성부(1800)로부터 소정의 서버측 공개키를 추출하고(2615), 상기 서버측 공개키를 이용하여 상기 비밀키를 암호화한다(2620).
여기서, 상기 암호 처리부(305)의 암호화 기능을 E(Encryption)라고 하고, 상기 서버측 공개키를 k1(key), 상기 비밀키를 r(random Secret key), 및 상기 서버측 공개키로 암호화된 비밀키를 C(Ciphertext)라고 하면, 상기 암호 처리부(305)의 암호화 기능은 "Ek1(r)=C"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)가 상기 서버측 공개키를 통해 상기 비밀키를 암호화하는 알고리즘은, RSA(Ron Rivest, Adi Shamir, Len Adleman), DSA(Digital Signature Algorithm), DH(Diffie, Hellman), ECC(Elliptic Curve Cryptosystem), KCDSA, ECDSA, ECDH 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 암호화 알고리즘이 이용될 수 있으나, 특정 암호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
예를들어, 상기 암호화 알고리즘 중 RSA 암호화 알고리즘을 통해 상기 비밀키를 암호화하는 경우, 암호화 과정에서 이용되는 공개된 법(Modulus)을 n, 상기 n의 서로 다른 소인수로 공개되지 않은 소수를 a와 b, 공개된 지수(예컨대, 3 또는 216+)를 e, 공개되지 않은 지수를 d라고 하면, 상기 n은 "n=a*b"를 만족하고, 상기 d는 " de=1 mod (a-1)(b-1)"를 만족하는데, 이 때 상기 암호 처리부(305)의 암호화 기능은 "C=Ek1(r)=re mod n"와 같이 표현할 수 있다.
상기 카드정보가 상기 비밀키로 암호화되고, 또한 상기 비밀키가 상기 서버 측 공개키를 통해 암호화되면, 상기 암호 처리부(305)는 상기 비밀키로 암호화된 카드정보와 상기 서버측 공개키로 암호화된 비밀키를 연계한 결제수단 정보를 생성하여 상기 정보 제공부(300)로 제공하며(2625), 상기 정보 제공부(300)는 상기 결제수단 정보를 상기 POS 단말(100)의 제어부(105)로 제공한다(2630).
도면27a와 도면27b는 본 발명의 실시 방법에 따라 카드리더 모듈(130)에서 카드정보를 키교환 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
보다 상세하게 본 도면27a와 도면27b는 상기 도면23과 같은 암호화 기능이 구비된 카드리더 모듈(130)에서 상기 카드정보를 키교환 방식으로 암호화하여 송신하는 실시 방법에 대한 것으로서, 발명이 속하는 기술분야에서 통상의 지식을 가진 지라면, 본 도면27을 참조 및/또는 변형하여 상기 카드리더 모듈(130)에서 상기 카드정보를 키교환 방식으로 암호화하는 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 실시 방법을 모두 포함하며, 본 도면27에 도시된 실시 방법으로 한정되지 아니한다.
본 발명의 실시 방법을 따르는 본 도면27에서 상기 카드리더 모듈(130)측 개인키와 서버측 공개키는 상기 카드리더 모듈(130)에 구비된 상기 OTP 생성부(1800)로부터 동적 생성되는 OTP 코드를 포함하여 이루어지는 것이 바람직하다.
도면27a와 도면27b를 참조하면, 상기 카드리더 모듈(130)의 접촉식 IC 리더부(800)에서 소정의 카드번호와 카드 유효기간 및/또는 카드사 정보를 적어도 하나 이상 포함하는 소정의 카드정보가 리딩되면, 이를 상기 암호 처리부(305)로 제공하는데(2700), 상기 카드정보가 제공되면, 상기 암호 처리부(305)는 상기 카드정보를 소정의 일방향 해시함수(예컨대, 상기 카드정보의 길이에 상관없이 일정길이의 해시코드(Hash Code)를 포함하는 메시지 다이제스트(Message Digest)를 생성하고, 상기 해시코드(또는 메시지 다이제스트)를 통해 원래의 메시지를 확인(또는 유추)할 수 없는 일방향 해시함수(Hash Function). 상기 카드리더 모듈(130)과 상기 암호화된 카드정보를 복호화하는 호스트는 동일한 해시함수를 사용)를 통해 소정의 메시지 다이제스트를 생성하고(2705), 상기 메시지 다이제스트를 상기 카드리더 모듈(130)측 개인키를 통해 암호화함으로써 전자서명한다(2710).
여기서, 상기 암호 처리부(305)의 암호화 기능을 E(Encryption)라고 하고, 상기 카드리더 모듈(130)측 개인키를 t1(yerminal side key), 상기 메시지 다이제스트를 m(message digest), 및 상기 카드리더 모듈(130)측 개인키로 암호화된 메시지 다이제스트를 C(Ciphertext)라고 하면, 상기 암호 처리부(305)의 전자서명 기능은 "Et1(m)=C"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)가 상기 카드리더 모듈(130)측 개인키를 통해 상기 메시지 다이제스트를 암호화하는 알고리즘은, RSA(Ron Rivest, Adi Shamir, Len Adleman), DSA(Digital Signature Algorithm), DH(Diffie, Hellman), ECC(Elliptic Curve Cryptosystem), KCDSA, ECDSA, ECDH 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 암호화 알고리즘이 이용될 수 있으나, 특정 암호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
예를들어, 상기 암호화 알고리즘 중 RSA 암호화 알고리즘을 통해 상기 메시지 다이제스트를 암호화하는 경우, 암호화 과정에서 이용되는 공개된 법(Modulus)을 n, 상기 n의 서로 다른 소인수로 공개되지 않은 소수를 a와 b, 공개된 지수(예컨대, 3 또는 216+)를 e, 공개되지 않은 지수를 d라고 하면, 상기 n은 "n=a*b"를 만족하고, 상기 d는 " de=1 mod (a-1)(b-1)"를 만족하는데, 이 때 상기 암호 처리부(305)의 전자서명 기능은 "C=Et1(m)=me mod n"와 같이 표현할 수 있다.
또한, 상기 암호 처리부(305)는 상기 카드정보를 비밀키(secret Key, Symmetric Key) 방식으로 암호화하기 위한 소정의 랜덤 비밀키(Random Secret key)를 생성하고(2715), 상기 카드정보와 상기 카드리더 모듈(130)측 개인키로 암호화된 상기 메시지 다이제스트와 상기 메모리(도시생략)에 구비된 인증서(예컨대, 카드리더 모듈(130)측 공개키를 포함하는 인증서) 사본을 연계하여 상기 생성된 비밀키를 통해 암호화한다(2720).
여기서, 상기 암호 처리부(305)의 암호화 기능을 E(Encryption)라고 하고, 상기 비밀키를 r(random Secret key), 상기 카드정보와 인증서 사본을 P(Plaintext), 및 상기 비밀키로 암호화된 카드정보와 인증서 사본을 C(Ciphertext)라고 하면, 상기 암호 처리부(305)의 암호화 기능은 "Er(P)=C"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)가 상기 비밀키를 통해 상기 카드정보와 인증서 사본을 암호화하는 알고리즘은, SEED, DES(Data Encryption Standard), Triple-DES, Skipjack, IDEA(International Data Encryption Algorithm) 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 암호화 알고리즘이 이용될 수 있으나, 특정 암호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
또한, 상기 암호 처리부(305)는 상기 카드정보를 암호화시킨 상기 비밀키를 암호화하기 위해 상기 OTP 생성부(1800)로부터 소정의 서버측 공개키를 추출하고(2725), 상기 서버측 공개키를 이용하여 상기 카드정보를 암호화한 비밀키를 암호화한다(2730).
여기서, 상기 암호 처리부(305)의 암호화 기능을 E(Encryption)라고 하고, 상기 서버측 공개키를 s1(server side key), 상기 비밀키를 r(random Secret key), 및 상기 서버측 공개키로 암호화된 비밀키를 C(Ciphertext)라고 하면, 상기 암호 처리부(305)의 암호화 기능은 "Es1(r)=C"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)가 상기 서버측 공개키를 통해 상기 비밀키를 암호화하는 알고리즘은, RSA(Ron Rivest, Adi Shamir, Len Adleman), DSA(Digital Signature Algorithm), DH(Diffie, Hellman), ECC(Elliptic Curve Cryptosystem), KCDSA, ECDSA, ECDH 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 암호화 알고리즘이 이용될 수 있으나, 특정 암호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
예를들어, 상기 암호화 알고리즘 중 RSA 암호화 알고리즘을 통해 상기 비밀키를 암호화하는 경우, 암호화 과정에서 이용되는 공개된 법(Modulus)을 n, 상기 n의 서로 다른 소인수로 공개되지 않은 소수를 a와 b, 공개된 지수(예컨대, 3 또는 216+)를 e, 공개되지 않은 지수를 d라고 하면, 상기 n은 "n=a*b"를 만족하고, 상기 d는 " de=1 mod (a-1)(b-1)"를 만족하는데, 이 때 상기 암호 처리부(305)의 암호화 기능은 "C=Es1(r)=re mod n"와 같이 표현할 수 있다.
상기 카드정보와 상기 카드리더 모듈(130)측 개인키로 암호화된 상기 메시지 다이제스트와 상기 카드리더 모듈(130)측 공개키를 포함하는 인증서 사본이 연계되어 상기 생성된 비밀키를 통해 암호화되고, 상기 비밀키가 상기 서버측 공개키를 통해 암호화되면, 상기 암호 처리부(305)는 상기 비밀키를 통해 암호화된 상기 카드정보와 상기 카드리더 모듈(130)측 개인키로 암호화된 상기 메시지 다이제스트와 상기 카드리더 모듈(130)측 공개키를 포함하는 인증서 사본을 상기 서버측 공개키로 암호화된 비밀키와 연계하여 소정의 결제수단 정보를 생성하고, 상기 생성된 결제수단 정보를 상기 정보 제공부(300)로 제공하며(2735), 상기 정보 제공부(300)는 상기 결제수단 정보를 상기 POS 단말(100)의 제어부(105)로 제공한다(2740).
도면28은 본 발명의 또다른 일 실시 방법에 따라 소정의 OTP 코드를 통해 카드정보를 암호화하는 기능이 구비된 카드리더 모듈(130) 구성을 도시한 도면이다.
보다 상세하게 본 도면28은 상기 도면1에 도시된 POS 단말(100)의 카드리더 모듈(130)에 있어서, 소정의 비접촉식 IC카드로부터 리딩되는 카드정보를 상기 POS 단말(100)의 제어부(105)로 제공하기 전에 상기 카드리더 모듈(130)에서 소정의 OTP 코드를 동적 생성 및 상기 OTP 코드를 통해 암호화하여 제공하는 기능 구성에 대한 것으로서, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면, 본 도면28을 참조 및/또는 변형하여 상기 비접촉식 IC카드로부터 리딩되는 카드정보를 소정의 소정의 OTP 코드를 동적 생성 및 상기 OTP 코드를 통해 암호화하여 상기 POS 단말(100)의 제어부(105)로 제공하는 카드리더 모듈(130)에 대한 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 실시 방법을 모두 포함하며, 본 도면28에 도시된 실시 방법으로 한정되지 아니한다.
도면28을 참조하면, 상기 카드리더 모듈(130)은 상기 고객 소유 비접촉식 IC카드와 ISO/IEC 14443 규격에 대응하는 카드 인터페이스를 제공하는 비접촉식 IC 리더부(1300)와, 소정의 OTP 코드를 생성하기 위한 OTP 생성 정보를 저장하는 메모리와, 상기 OTP 생성 정보를 통해 상기 비접촉식 IC카드로부터 리딩되는 카드정보를 암호화하기 위한 OTP 코드를 생성하는 OTP 생성부(1800)와, 상기 OTP 코드를 암호화 키로 이용하여 상기 비접촉식 IC카드로부터 리딩되는 카드정보를 암호화하는 암호 처리부(305)와, 상기 암호화된 카드정보와 상기 암호화 키 인덱스를 상기 POS 단말(100)에 구비된 제어부(105)로 제공하는 정보 제공부(300)를 구비하여 이루어지는 것을 특징으로 한다.
상기 비접촉식 IC 리더부(1300)는 ISO/IEC 7816에 근거하는 카드 리더부로서, 비접촉식 IC카드에 구비된 COB(Chip On Board; COB)와 접촉식으로 전기적 접점을 이루는 적어도 하나 이상의 접촉점을 포함하여 이루어지며, 상기 접촉점을 통해 상기 IC카드의 IC칩으로 전원을 공급하고, APDU(Application Protocol Data Unit)를 이용하는 상기 반이중(Half Duplex) 방식의 트랜잭션을 통해 상기 IC칩으로부터 소정의 카드정보를 POS 단말(100)로 인터페이싱 하는 것을 특징으로 한다.
상기 메모리는 소정의 OTP 코드를 생성하기 위한 OTP 생성 정보를 저장하는 것을 특징으로 하며, 상기 OTP 생성부(1800)는 상기 OTP 생성 정보를 기반으로 상 기 비접촉식 IC카드로부터 리딩되는 카드정보를 암호화하기 위한 OTP 코드를 생성하는 것을 특징으로 한다.
본 발명의 실시 방법에 따라 시간-동기화 방식으로 OTP 코드를 생성하는 경우, 상기 OTP 생성부(1800)는 상기 OTP 생성 정보와 소정의 타이머로부터 독출되는 현재 시각 정보를 매개변수로 사용하여 상기 비접촉식 IC카드로부터 리딩되는 카드정보를 암호화하기 위한 OTP 코드를 생성하는 것이 바람직하다.
본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면, 상기 시간-동기 방식으로 상기 OTP 생성 정보와 현재 시각 정보를 기반으로 소정의 OTP 코드를 생성하는 기술적 특징을 기 숙지하고 있을 것이므로, 이에 대한 상세한 설명은 편의상 생략한다.
본 발명의 실시 방법에 따르면, 상기 OTP 생성부(1800)가 생성하는 OTP 코드는 상기 비접촉식 IC카드로부터 리딩된 카드정보를 암호화하는 소정의 암호화 키의 기능을 수행하는 것을 특징으로 하며, 상기 암호화 키는 상기 카드정보를 대칭키(또는 비밀키) 암호화 방식으로 암호화하기 위한 암호화 키, 및/또는 상기 카드정보를 공개키 암호화 방식으로 암호화하기 위한 암호화 키, 및/또는 상기 카드정보를 전자봉투 암호화 방식으로 암호화하기 위한 암호화 키, 및/또는 상기 카드정보를 키교환 암호화 방식으로 암호화하기 위한 암호화 키 중 적어도 하나 이상을 포 함하여 이루어진다.
본 발명의 다른 실시 방법에 따르면, 상기 OTP 코드가 상기 OTP 생성 정보 없이 현재 시각 정보만을 통해 생성되는 경우, 상기 메모리에 상기 OTP 생성 정보를 저장하는 것이 생략 가능하며, 이에 의해 본 발명이 한정되지 아니한다.
본 발명의 실시 방법에 따르면, 상기 메모리는 상기 비접촉식 IC 리더부(1300)를 통해 리딩된 카드정보를 암호화되기 전에 임시 저장하는 것이 바람직하며, 상기 암호 처리부(305)는 상기 메모리에 저장된 카드정보를 암호화하는 것이 바람직하다.
또는, 상기 비접촉식 IC 리더부(1300)를 통해 리딩된 카드정보를 암호화되기 전에 소정의 보안칩(도시생략)에 구비된 메모리에 저장되는 것이 가능하며, 이에 의해 본 발명이 한정되지 아니한다.
상기 암호 처리부(305)는 상기 비접촉식 IC 리더부(1300)를 통해 소정의 비접촉식 IC카드로부터 리딩된 카드정보를 상기 OTP 생성부(1800)에 의해 동적 생성된 OTP 코드에 대응하는 암호화 키를 통해 대칭키(또는 비밀키) 암호화 방식, 및/또는 공개키 암호화 방식, 및/또는 전자봉투 암호화 방식, 및/또는 키교환 암호화 방식 중 적어도 하나 이상의 암호화 방식을 통해 암호화하는 것을 특징으로 하며, 상기 암호화된 카드정보를 상기 정보 제공부(300)로 제공한다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)는 상기 카드정보를 암호화하는 과정을 인증하는 보안기능을 더 구비하여 이루어지는 것이 바람직하며, 상기 보안기능은 상기 카드리더 모듈에 구비되는 소정의 보안칩 형태로 구비되는 것이 바람직하다.
상기 정보 제공부(300)는 상기 암호 처리부(305)에 의해 대칭키(또는 비밀키) 암호화 방식, 및/또는 공개키 암호화 방식, 및/또는 전자봉투 암호화 방식, 및/또는 키교환 암호화 방식 중 적어도 하나 이상의 암호화 방식으로 암호화된 카드정보를 상기 POS 단말(100)에 구비된 제어부(105)로 제공하는 것을 특징으로 하며, 이에 의해 상기 카드리더 모듈(130)에서 암호화된 카드정보는 소정의 호스트에서 소정의 복호화 키를 복호화될 때까지 보안이 유지된다.
본 발명의 실시 방법에 따르면, 상기 정보 제공부(300)는 상기 암호화된 카드정보 이외에 상기 암호화되지 않은 카드정보의 일부(예컨대, 카드번호 중 카드사 식별번호)를 상기 POS 단말에 구비된 제어부로 제공하는 것이 가능하며, 상기 암호화되지 않은 카드정보의 일부는 상기 POS 단말에 구비된 메모리(및/또는 로컬 서버에 구비된 데이터베이스)에 저장되는 것이 가능하다.
본 발명의 실시 방법에 따르면, 상기 비접촉식 IC 리더부(1300)와, 암호 처리부(305)와, 정보 제공부(300)는 상기 카드리더 모듈에 구비되는 프로그램 형태로 탑재되는 것이 바람직하며, 상기 프로그램은 소정의 프로그램 제공 서버(도시생략)으로부터 다운로드되어 상기 카드리더 모듈에 탑재되는 것이 바람직하다.
또한, 상기 프로그램이 상기 카드리더 모듈로 다운로드되어 탑재되는 과정에서, 상기 프로그램의 암호화 방식 및/또는 암호화 키가 결정되는 것이 바람직하다.
도면29는 본 발명의 실시 방법에 따라 카드리더 모듈(130)에서 카드정보를 대칭키(또는 비밀키) 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
보다 상세하게 본 도면29는 상기 도면28과 같은 암호화 기능이 구비된 카드리더 모듈(130)에서 상기 카드정보를 대칭키(또는 비밀키) 방식으로 암호화하여 송신하는 실시 방법에 대한 것으로서, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 지라면, 본 도면29를 참조 및/또는 변형하여 상기 카드리더 모듈(130)에서 상기 카드정보를 대칭키(또는 비밀키) 방식으로 암호화하는 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 실시 방법을 모두 포함하며, 본 도면29에 도시된 실시 방법으로 한정되지 아니한다.
본 발명의 실시 방법을 따르는 본 도면29에서 상기 대칭키(또는 비밀키)는 상기 카드리더 모듈(130)에 구비된 상기 OTP 생성부(1800)로부터 동적 생성되는 OTP 코드를 포함하여 이루어지는 것이 바람직하다.
도면29를 참조하면, 상기 카드리더 모듈(130)의 비접촉식 IC 리더부(1300)에서 소정의 카드번호와 카드 유효기간 및/또는 카드사 정보를 적어도 하나 이상 포함하는 소정의 카드정보가 리딩되면, 이를 상기 암호 처리부(305)로 제공하는데(2900), 상기 카드정보가 제공되면, 상기 암호 처리부(305)는 상기 카드리더 모듈(130)에 구비된 OTP 생성부(1800)로부터 카드정보를 암호화하기 위한 소정의 대칭키(또는 비밀키)를 독출하고(2905), 상기 독출된 대칭키(또는 비밀키)를 통해 상기 카드정보를 암호화한다(2910).
여기서, 상기 암호 처리부(305)의 암호화 기능을 E(Encryption)라고 하고, 상기 대칭키(또는 비밀키)를 k(key), 상기 카드정보를 P(Plaintext), 및 상기 대칭키(또는 비밀키)로 암호화된 카드정보를 C(Ciphertext)라고 하면, 상기 암호 처리부(305)의 암호화 기능은 "Ek(P)=C"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)가 상기 대칭키(또는 비밀키)를 통해 상기 카드정보를 암호화하는 알고리즘은, SEED, DES(Data Encryption Standard), Triple-DES, Skipjack, IDEA(International Data Encryption Algorithm) 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하 며, 이외에도 다양한 형태의 암호화 알고리즘이 이용될 수 있으나, 특정 암호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
상기와 같이 대칭키(또는 비밀키)를 통해 카드정보가 암호화되면, 상기 정보 제공부(300)는 상기 암호화된 카드정보를 상기 POS 단말(100)의 제어부(105)로 제공한다(2915).
도면30은 본 발명의 실시 방법에 따라 카드리더 모듈(130)에서 카드정보를 공개키 기반 구조 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
보다 상세하게 본 도면30은 상기 도면28과 같은 암호화 기능이 구비된 카드리더 모듈(130)에서 상기 카드정보를 공개키 기반 구조 방식으로 암호화하여 송신하는 실시 방법에 대한 것으로서, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 지라면, 본 도면30을 참조 및/또는 변형하여 상기 카드리더 모듈(130)에서 상기 카드정보를 공개키 방식으로 암호화하는 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 실시 방법을 모두 포함하며, 본 도면30에 도시된 실시 방법으로 한정되지 아니한다.
본 발명의 실시 방법을 따르는 본 도면30에서 상기 서버측 공개키는 상기 카드리더 모듈(130)에 구비된 상기 OTP 생성부(1800)로부터 동적 생성되는 OTP 코드 를 포함하여 이루어지는 것이 바람직하다.
*도면30을 참조하면, 상기 카드리더 모듈(130)의 비접촉식 IC 리더부(1300)에서 소정의 카드번호와 카드 유효기간 및/또는 카드사 정보를 적어도 하나 이상 포함하는 소정의 카드정보가 리딩되면, 이를 상기 암호 처리부(305)로 제공하는데(3000), 상기 카드정보가 제공되면, 상기 암호 처리부(305)는 상기 OTP 생성부(1800)로부터 상기 카드정보를 암호화하기 위한 소정의 서버측 공개키를 추출하고(3005), 상기 추출된 서버측 공개키를 통해 상기 카드정보를 암호화한다(3010).
여기서, 상기 암호 처리부(305)의 암호화 기능을 E(Encryption)라고 하고, 상기 서버측 공개키를 k1(key), 상기 카드정보를 P(Plaintext), 및 상기 서버측 공개키로 암호화된 카드정보를 C(Ciphertext)라고 하면, 상기 암호 처리부(305)의 암호화 기능은 "Ek1(P)=C"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)가 상기 서버측 공개키를 통해 상기 카드정보를 암호화하는 알고리즘은, RSA(Ron Rivest, Adi Shamir, Len Adleman), DSA(Digital Signature Algorithm), DH(Diffie, Hellman), ECC(Elliptic Curve Cryptosystem), KCDSA, ECDSA, ECDH 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 암호화 알고리즘이 이용될 수 있으나, 특정 암호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
예를들어, 상기 암호화 알고리즘 중 RSA 암호화 알고리즘을 통해 상기 카드정보를 암호화하는 경우, 암호화 과정에서 이용되는 공개된 법(Modulus)을 n, 상기 n의 서로 다른 소인수로 공개되지 않은 소수를 a와 b, 공개된 지수(예컨대, 3 또는 216+)를 e, 공개되지 않은 지수를 d라고 하면, 상기 n은 "n=a*b"를 만족하고, 상기 d는 " de=1 mod (a-1)(b-1)"를 만족하는데, 이 때 상기 암호 처리부(305)의 암호화 기능은 "C=Ek1(P)=Pe mod n"와 같이 표현할 수 있다.
상기와 같이 서버측 공개키를 통해 카드정보가 암호화되면, 상기 정보 제공부(300)는 상기 암호화된 카드정보를 상기 POS 단말(100)의 제어부(105)로 제공한다(3015).
도면31은 본 발명의 실시 방법에 따라 카드리더 모듈(130)에서 카드정보를 전자봉투 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
보다 상세하게 본 도면31은 상기 도면28과 같은 암호화 기능이 구비된 카드리더 모듈(130)에서 상기 카드정보를 전자봉투 방식으로 암호화하여 송신하는 실시 방법에 대한 것으로서, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 지라면, 본 도면31을 참조 및/또는 변형하여 상기 카드리더 모듈(130)에서 상기 카드정 보를 전자봉투 방식으로 암호화하는 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 실시 방법을 모두 포함하며, 본 도면31에 도시된 실시 방법으로 한정되지 아니한다.
본 발명의 실시 방법을 따르는 본 도면31에서 상기 서버측 공개키는 상기 카드리더 모듈(130)에 구비된 상기 OTP 생성부(1800)로부터 동적 생성되는 OTP 코드를 포함하여 이루어지는 것이 바람직하다.
도면31을 참조하면, 상기 카드리더 모듈(130)의 비접촉식 IC 리더부(1300)에서 소정의 카드번호와 카드 유효기간 및/또는 카드사 정보를 적어도 하나 이상 포함하는 소정의 카드정보가 리딩되면, 이를 상기 암호 처리부(305)로 제공하는데(3100), 상기 카드정보가 제공되면, 상기 암호 처리부(305)는 상기 카드정보를 비밀키(secret Key, Symmetric Key) 방식으로 암호화하기 위한 소정의 랜덤 비밀키(Random Secret key)를 생성하고(3105), 상기 생성된 비밀키를 이용하여 상기 카드정보를 암호화한다(3110).
여기서, 상기 암호 처리부(305)의 암호화 기능을 E(Encryption)라고 하고, 상기 비밀키를 r(random Secret key), 상기 카드정보를 P(Plaintext), 및 상기 비밀키로 암호화된 카드정보를 C(Ciphertext)라고 하면, 상기 암호 처리부(305)의 암호화 기능은 "Er(P)=C"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)가 상기 비밀키를 통해 상기 카드정보를 암호화하는 알고리즘은, SEED, DES(Data Encryption Standard), Triple-DES, Skipjack, IDEA(International Data Encryption Algorithm) 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 암호화 알고리즘이 이용될 수 있으나, 특정 암호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
이후, 상기 암호 처리부(305)는 상기 카드정보를 암호화하는데 사용한 상기 비밀키(랜덤 비밀키)를 암호화하는데, 이를 위해 상기 암호 처리부(305)는 상기 OTP 생성부(1800)로부터 소정의 서버측 공개키를 추출하고(3115), 상기 서버측 공개키를 이용하여 상기 비밀키를 암호화한다(3120).
여기서, 상기 암호 처리부(305)의 암호화 기능을 E(Encryption)라고 하고, 상기 서버측 공개키를 k1(key), 상기 비밀키를 r(random Secret key), 및 상기 서버측 공개키로 암호화된 비밀키를 C(Ciphertext)라고 하면, 상기 암호 처리부(305)의 암호화 기능은 "Ek1(r)=C"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)가 상기 서버측 공개키를 통해 상기 비밀키를 암호화하는 알고리즘은, RSA(Ron Rivest, Adi Shamir, Len Adleman), DSA(Digital Signature Algorithm), DH(Diffie, Hellman), ECC(Elliptic Curve Cryptosystem), KCDSA, ECDSA, ECDH 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 암호화 알고리즘이 이용될 수 있으나, 특정 암호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
예를들어, 상기 암호화 알고리즘 중 RSA 암호화 알고리즘을 통해 상기 비밀키를 암호화하는 경우, 암호화 과정에서 이용되는 공개된 법(Modulus)을 n, 상기 n의 서로 다른 소인수로 공개되지 않은 소수를 a와 b, 공개된 지수(예컨대, 3 또는 216+)를 e, 공개되지 않은 지수를 d라고 하면, 상기 n은 "n=a*b"를 만족하고, 상기 d는 " de=1 mod (a-1)(b-1)"를 만족하는데, 이 때 상기 암호 처리부(305)의 암호화 기능은 "C=Ek1(r)=re mod n"와 같이 표현할 수 있다.
상기 카드정보가 상기 비밀키로 암호화되고, 또한 상기 비밀키가 상기 서버측 공개키를 통해 암호화되면, 상기 암호 처리부(305)는 상기 비밀키로 암호화된 카드정보와 상기 서버측 공개키로 암호화된 비밀키를 연계한 결제수단 정보를 생성하여 상기 정보 제공부(300)로 제공하며(3125), 상기 정보 제공부(300)는 상기 결제수단 정보를 상기 POS 단말(100)의 제어부(105)로 제공한다(3130).
도면32a와 도면32b는 본 발명의 실시 방법에 따라 카드리더 모듈(130)에서 카드정보를 키교환 방식으로 암호화하여 송신하는 방법을 도시한 도면이다.
보다 상세하게 본 도면32a와 도면32b는 상기 도면28과 같은 암호화 기능이 구비된 카드리더 모듈(130)에서 상기 카드정보를 키교환 방식으로 암호화하여 송신하는 실시 방법에 대한 것으로서, 발명이 속하는 기술분야에서 통상의 지식을 가진 지라면, 본 도면32를 참조 및/또는 변형하여 상기 카드리더 모듈(130)에서 상기 카드정보를 키교환 방식으로 암호화하는 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 실시 방법을 모두 포함하며, 본 도면32에 도시된 실시 방법으로 한정되지 아니한다.
본 발명의 실시 방법을 따르는 본 도면32에서 상기 카드리더 모듈(130)측 개인키와 서버측 공개키는 상기 카드리더 모듈(130)에 구비된 상기 OTP 생성부(1800)로부터 동적 생성되는 OTP 코드를 포함하여 이루어지는 것이 바람직하다.
도면32a와 도면32b를 참조하면, 상기 카드리더 모듈(130)의 비접촉식 IC 리더부(1300)에서 소정의 카드번호와 카드 유효기간 및/또는 카드사 정보를 적어도 하나 이상 포함하는 소정의 카드정보가 리딩되면, 이를 상기 암호 처리부(305)로 제공하는데(3200), 상기 카드정보가 제공되면, 상기 암호 처리부(305)는 상기 카드정보를 소정의 일방향 해시함수(예컨대, 상기 카드정보의 길이에 상관없이 일정길이의 해시코드(Hash Code)를 포함하는 메시지 다이제스트(Message Digest)를 생성하고, 상기 해시코드(또는 메시지 다이제스트)를 통해 원래의 메시지를 확인(또는 유추)할 수 없는 일방향 해시함수(Hash Function). 상기 카드리더 모듈(130)과 상기 암호화된 카드정보를 복호화하는 호스트는 동일한 해시함수를 사용)를 통해 소정의 메시지 다이제스트를 생성하고(3205), 상기 메시지 다이제스트를 상기 카드리더 모듈(130)측 개인키를 통해 암호화함으로써 전자서명한다(3210).
여기서, 상기 암호 처리부(305)의 암호화 기능을 E(Encryption)라고 하고, 상기 카드리더 모듈(130)측 개인키를 t1(yerminal side key), 상기 메시지 다이제스트를 m(message digest), 및 상기 카드리더 모듈(130)측 개인키로 암호화된 메시지 다이제스트를 C(Ciphertext)라고 하면, 상기 암호 처리부(305)의 전자서명 기능은 "Et1(m)=C"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)가 상기 카드리더 모듈(130)측 개인키를 통해 상기 메시지 다이제스트를 암호화하는 알고리즘은, RSA(Ron Rivest, Adi Shamir, Len Adleman), DSA(Digital Signature Algorithm), DH(Diffie, Hellman), ECC(Elliptic Curve Cryptosystem), KCDSA, ECDSA, ECDH 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 암호화 알고리즘이 이용될 수 있으나, 특정 암호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
예를들어, 상기 암호화 알고리즘 중 RSA 암호화 알고리즘을 통해 상기 메시 지 다이제스트를 암호화하는 경우, 암호화 과정에서 이용되는 공개된 법(Modulus)을 n, 상기 n의 서로 다른 소인수로 공개되지 않은 소수를 a와 b, 공개된 지수(예컨대, 3 또는 216+)를 e, 공개되지 않은 지수를 d라고 하면, 상기 n은 "n=a*b"를 만족하고, 상기 d는 " de=1 mod (a-1)(b-1)"를 만족하는데, 이 때 상기 암호 처리부(305)의 전자서명 기능은 "C=Et1(m)=me mod n"와 같이 표현할 수 있다.
또한, 상기 암호 처리부(305)는 상기 카드정보를 비밀키(secret Key, Symmetric Key) 방식으로 암호화하기 위한 소정의 랜덤 비밀키(Random Secret key)를 생성하고(3215), 상기 카드정보와 상기 카드리더 모듈(130)측 개인키로 암호화된 상기 메시지 다이제스트와 상기 메모리(도시생략)에 구비된 인증서(예컨대, 카드리더 모듈(130)측 공개키를 포함하는 인증서) 사본을 연계하여 상기 생성된 비밀키를 통해 암호화한다(3220).
여기서, 상기 암호 처리부(305)의 암호화 기능을 E(Encryption)라고 하고, 상기 비밀키를 r(random Secret key), 상기 카드정보와 인증서 사본을 P(Plaintext), 및 상기 비밀키로 암호화된 카드정보와 인증서 사본을 C(Ciphertext)라고 하면, 상기 암호 처리부(305)의 암호화 기능은 "Er(P)=C"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)가 상기 비밀키를 통 해 상기 카드정보와 인증서 사본을 암호화하는 알고리즘은, SEED, DES(Data Encryption Standard), Triple-DES, Skipjack, IDEA(International Data Encryption Algorithm) 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 암호화 알고리즘이 이용될 수 있으나, 특정 암호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
또한, 상기 암호 처리부(305)는 상기 카드정보를 암호화시킨 상기 비밀키를 암호화하기 위해 상기 OTP 생성부(1800)로부터 소정의 서버측 공개키를 추출하고(3225), 상기 서버측 공개키를 이용하여 상기 카드정보를 암호화한 비밀키를 암호화한다(3230).
여기서, 상기 암호 처리부(305)의 암호화 기능을 E(Encryption)라고 하고, 상기 서버측 공개키를 s1(server side key), 상기 비밀키를 r(random Secret key), 및 상기 서버측 공개키로 암호화된 비밀키를 C(Ciphertext)라고 하면, 상기 암호 처리부(305)의 암호화 기능은 "Es1(r)=C"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(305)가 상기 서버측 공개키를 통해 상기 비밀키를 암호화하는 알고리즘은, RSA(Ron Rivest, Adi Shamir, Len Adleman), DSA(Digital Signature Algorithm), DH(Diffie, Hellman), ECC(Elliptic Curve Cryptosystem), KCDSA, ECDSA, ECDH 중 적어도 하나 이상을 포 함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 암호화 알고리즘이 이용될 수 있으나, 특정 암호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
예를들어, 상기 암호화 알고리즘 중 RSA 암호화 알고리즘을 통해 상기 비밀키를 암호화하는 경우, 암호화 과정에서 이용되는 공개된 법(Modulus)을 n, 상기 n의 서로 다른 소인수로 공개되지 않은 소수를 a와 b, 공개된 지수(예컨대, 3 또는 216+)를 e, 공개되지 않은 지수를 d라고 하면, 상기 n은 "n=a*b"를 만족하고, 상기 d는 " de=1 mod (a-1)(b-1)"를 만족하는데, 이 때 상기 암호 처리부(305)의 암호화 기능은 "C=Es1(r)=re mod n"와 같이 표현할 수 있다.
상기 카드정보와 상기 카드리더 모듈(130)측 개인키로 암호화된 상기 메시지 다이제스트와 상기 카드리더 모듈(130)측 공개키를 포함하는 인증서 사본이 연계되어 상기 생성된 비밀키를 통해 암호화되고, 상기 비밀키가 상기 서버측 공개키를 통해 암호화되면, 상기 암호 처리부(305)는 상기 비밀키를 통해 암호화된 상기 카드정보와 상기 카드리더 모듈(130)측 개인키로 암호화된 상기 메시지 다이제스트와 상기 카드리더 모듈(130)측 공개키를 포함하는 인증서 사본을 상기 서버측 공개키로 암호화된 비밀키와 연계하여 소정의 결제수단 정보를 생성하고, 상기 생성된 결제수단 정보를 상기 정보 제공부(300)로 제공하며(3235), 상기 정보 제공부(300)는 상기 결제수단 정보를 상기 POS 단말(100)의 제어부(105)로 제공한다(3240).
도면33은 본 발명의 실시 방법에 따른 암호화된 카드정보를 이용한 전자결제 기능을 수행하는 POS 단말(100)의 동작 과정을 도시한 도면이다.
보다 상세하게 본 도면33은 상기 도면1에 도시된 POS 단말(100)에서 소정의 고객 카드를 이용한 전자결제가 수행되는 경우, 상기 POS 단말(100)에 구비된 소정의 카드리더 모듈(130)에서 상기 고객카드로부터 리딩되는 카드정보를 암호화하고, 상기 암호화된 카드정보를 기반으로 소정의 전자결제 기능을 수행하는 상기 POS 단말(100)의 바람직한 동작 과정에 대한 것으로서, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면, 본 도33을 참조 및/또는 변형하여 상기 카드리더 모듈(130)에서 암호화된 카드정보를 이용한 다양한 전자결제 과정을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 모든 실시 방법을 포함하며, 본 도면33에 도시된 실시 방법으로 한정되지 아니한다.
도면33을 참조하면, 소정의 고객이 상기 도면1에 도시된 POS 단말(100)이 구비된 매장에 방문하여 적어도 하나 이상의 상품을 구매하면, 상기 POS 단말(100)은 상기 구매상품에 부착된 태그로부터 소정의 태그 정보를 리딩하는데(3300), 상기 태그 정보는 RFID 정보 및/또는 바코드 정보 중 적어도 하나 이상을 포함하여 이루어진다.
상기와 같이 태그 정보가 리딩되면, 상기 POS 단말(100)은 상기 메모리 부(145)로부터 상기 리딩된 태그 정보에 대응하는 상품정보(예컨대, 상품명 정보와 상품 판매가격 정보)를 추출하여 상기 POS 단말(100)의 판매시점 관리 화면에 출력하고(3305), 상기 상품정보에 포함된 상품 판매가격을 합산하여 총 판매금액을 산출하여 상기 POS 단말(100)의 판매시점 관리 화면에 출력한다(3310).
상기와 같은 판매시점 관리 과정이 수행되는 동안, 상기 POS 단말(100)은 상기 총 판매금액(=결제금액)을 상기 고객 카드를 통한 전자결제 절차를 통해 결제하는지 확인하는데(3315), 만약 상기 총 판매금액(=결제금액)을 상기 고객 카드를 통한 전자결제 절차를 통해 결제하지 않는다면(예컨대, 상기 고객이 상기 총 판매금액(=결제금액)을 현금으로 결제한다면)(3320), 상기 POS 단말(100)은 본 발명에 따른 암호화된 카드정보를 이용한 전자결제 기능을 수행하지 않는다.
반면 상기 총 판매금액(=결제금액)을 상기 고객 카드를 통한 전자결제 절차를 통해 결제한다면(3320), 상기 POS 단말(100)에 구비된 카드리더 모듈(130)은 소정의 고객 카드로부터 소정의 카드정보를 리딩하고(3325), 상기 리딩된 카드정보를 소정의 암호화 키(및/또는 OTP 코드)를 통해 암호화한 후(3335), 상기 암호화된 카드정보(또는 결제수단 정보)를 상기 POS 단말(100)측으로 제공한다(3340).
여기서, 상기 카드리더 모듈(130)이 상기 카드정보를 암호화하는 과정은 상기 도시된 실시예 중 적어도 하나 이상을 포함하여 이루어지며, 본 도면33은 상기 카드정보의 암호화 과정에 대한 상세한 설명을 편의상 생략한다.
이후, 상기 POS 단말(100)은 상기 암호화된 카드정보(또는 결제수단 정보)와 상기 총 판매금액(=결제금액)을 포함하여 도면34에 도시된 바와 같은 결제승인요청 전문을 생성하고(3340), 상기 결제승인요청 전문을 상기 결제 네트워크 상의 호스트로 전송한 후, 상기 호스트로부터 상기 결제승인요청 전문에 대응하는 결제처리 내역을 포함하는 소정의 결제승인 전문이 수신되는지 확인한다(3345).
만약 상기 결제 네트워크 상의 호스트로부터 상기 결제승인 전문이 수신되면(3350), 상기 POS 단말(100)은 상기 결제승인 전문에 포함된 상기 결제처리 내역을 추출하여 상기 POS 단말(100)에 구비된 화면 출력수단으로 화면 출력하거나, 및/또는 상기 POS 단말(100)에 구비된 인쇄 출력수단으로 인쇄 출력한다(3355).
도면34는 본 발명의 실시 방법에 따른 결제승인요청 전문 구조를 예시한 도면이다.
보다 상세하게 본 도면34는 상기 도면1에 도시된 POS 단말(100)에서 상기 카드리더 모듈(130)을 통해 암호화된 카드정보(및/또는 결제수단 정보)를 기반으로 소정의 전자결제를 처리하기 위한 결제승인요청 전문 구조에 대한 것으로서, 구체적으로 상기 카드리더 모듈(130)이 상기 고객 카드로부터 리딩한 카드정보가 신용 카드 정보인 경우, 상기 신용카드 정보를 암호화하여 전자결제 처리하기 위한 결제승인요청 전문 구조에 대한 것이다.
본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면, 본 도면34를 참조 및/또는 변형하여 당업자에 의도에 따라 상기 카드리더 모듈(130)을 통해 암호화된 카드정보(및/또는 결제수단 정보)를 기반으로 소정의 전자결제를 처리하기 위한 결제승인요청 전문 구조에 대한 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 모든 실시 방법을 포함하며, 본 결제승인요청 전문 구조가 본 도면34에 예시된 것으로 한정되는 것은 결코 아니다.
도면34를 참조하면, 결제승인요청 전문 구조는 소정의 개시문자(STX(Start of TeXt), 0X02)와 종료문자(ETX(End of TeXt), 0X03) 사이에 정의되는 적어도 하나 이상의 전문 정보와, 상기 종료문자 이후에 상기 전문 정보에 대한 첵섬(CRC-CCITT)을 더 포함하여 이루어지는 것을 특징으로 한다.
상기 결제승인요청 전문은 상기 신용카드 결제와 관련된 거래 구분 항목(예컨대, 신용승인요청, 신용승인취소 등)과, 상기 POS 단말(100)에 대한 Terminal_ID 항목과, POS Entry Mode 항목과, 상기 POS 단말(100)에 구비된 카드리더 모듈(130)을 통해 리딩된 카드정보에 대응하는 TRACK II Data 항목(예컨대, MS카드의 TRACK II의 PAN(Primary Account Number) 영역과 AD(Additional Data) 및/또는 DD(Discretionary Data) 영역으로부터 획득되는 신용카드 정보, 또는 IC카드의 신용카드 파일로부터 획득되는 신용카드 정보)을 포함하여 이루어지며, 소정의 FS(File Separator, 0X1C) 이후에 신용카드 결제정보에 해당하는 할부 개월수 항목과 총 금액 항목과 및 봉사료 항목을 포함하며, 또한 Working Key Index 항목과, 비밀번호 항목, 상품코드 항목 및 전표일련번호 항목 등을 포함하여 이루어진다.
본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면, 본 도면34에 도시된 내용을 기반으로 상기 신용카드 결제요청 전문부에 포함된 각각의 항목에 대한 상세한 내용을 명백하게 이해할 수 있을 것이므로, 이에 대한 상세한 설명은 생략한다.
본 발명의 실시 방법에 따르면, 상기 결제승인요청 전문 구조 상에서 상기 Terminal_ID 항목은 상기 POS 단말(100)에 대응하는 소정의 POS 단말(100) 정보를 포함하는 것이 바람직하며, 상기 TRACK II Data 항목은 상기 POS 단말(100)에 구비된 카드리더 모듈(130)을 통해 암호화된 카드정보(및/또는 결제수단 정보)를 포함하는 것이 바람직하다.
본 발명의 일 실시 방법에 따르면, 상기 TRACK II Data 항목은 상기 카드정보를 암호화한 암호화 키에 대응하는 암호화 키 인덱스를 더 포함하는 것이 가능하며, 이에 의해 본 발명이 한정되지 아니한다.
본 발명에 따르면, 상기 POS 단말에 구비되는 소정의 카드리더 모듈에 상기 고객 카드로부터 리딩되는 카드정보를 암호화하는 기능을 구비함으로써, 상기 POS 단말에서 상기 고객 카드로부터 리딩된 카드정보를 악용하지 못하도록 방지하는 이점이 있다.
본 발명에 따르면, 상기 POS 단말에서 상기 카드리더 모듈을 통해 암호화된 카드정보를 포함하는 결제승인요청 전문을 생성하여 호스트로 전송하고, 상기 호스트에서 상기 암호화된 카드정보를 복호화하도록 처리함으로써, 상기 결제승인요청 전문 송수신 과정에서 발생하는 보안상 문제점을 해결하는 이점이 있다.

Claims (1)

  1. 통신망 상의 서버와 결제승인요청 전문 송수신을 위한 통신채널을 연결하는 기능;
    고객 결제수단 정보가 리딩되면, 소정의 OTP(One Time Password) 코드를 생성하기 위한 OTP 생성 정보를 저장하는 메모리와 연계하여, 상기 리딩되는 결제수단 정보를 암호화하기 위한 OTP 코드를 생성하는 기능;
    상기 생성된 상기 OTP 코드를 암호화 키로 이용하여 상기 리딩된 결제수단 정보를 암호화 처리하는 기능; 및
    상기 암호화된 결제수단 정보를 포함하는 결제승인요청 전문을 생성하여 상기 연결된 통신채널을 통해 상기 통신망 상의 서버로 전송하는 기능;을 구비하여 이루어진 것을 특징으로 하는 단말장치.
KR1020080018542A 2008-02-28 2008-02-28 단말장치 KR20080026140A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080018542A KR20080026140A (ko) 2008-02-28 2008-02-28 단말장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080018542A KR20080026140A (ko) 2008-02-28 2008-02-28 단말장치

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020060063685A Division KR100840894B1 (ko) 2006-06-08 2006-07-07 단말장치와 프로그램 기록매체

Publications (1)

Publication Number Publication Date
KR20080026140A true KR20080026140A (ko) 2008-03-24

Family

ID=39413662

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080018542A KR20080026140A (ko) 2008-02-28 2008-02-28 단말장치

Country Status (1)

Country Link
KR (1) KR20080026140A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108416400A (zh) * 2018-01-31 2018-08-17 杭州晟元数据安全技术股份有限公司 一种基于动态二维码的支付方法及支付系统

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108416400A (zh) * 2018-01-31 2018-08-17 杭州晟元数据安全技术股份有限公司 一种基于动态二维码的支付方法及支付系统

Similar Documents

Publication Publication Date Title
KR20070107990A (ko) 결제처리 방법 및 시스템과 이를 위한 프로그램 기록매체
US20210385075A1 (en) Efficient authentic communication system and method
KR20070117420A (ko) 결제방법 및 시스템과 이를 위한 프로그램 기록매체
KR101677803B1 (ko) 카드 리더, 단말기, 중계 서버 및 그를 이용한 결제 정보 처리 방법
KR20170004339A (ko) 결제 시스템, 카드 리더기, 결제 단말 장치 및 그를 이용한 카드 정보 처리 방법
KR100840894B1 (ko) 단말장치와 프로그램 기록매체
KR101250387B1 (ko) 결제단말을 이용한 포인트 사용방법과 결제단말
KR100876091B1 (ko) 근거리 무선 통신을 이용한 분산형 결제용 트랜잭션 포인트 단말장치
KR100834582B1 (ko) 결제처리 시스템
KR20080009777A (ko) 결제 시스템
KR101168076B1 (ko) 모바일 카드 서비스 방법 및 그 방법을 수행하기 위한 이동 단말기
KR20080026140A (ko) 단말장치
KR100791269B1 (ko) 정보처리 방법 및 시스템과 이를 위한 프로그램 기록매체
KR20070117512A (ko) 전문 처리 방법
KR101323655B1 (ko) 쿠폰 운용 방법
KR100832783B1 (ko) 전화기를 이용한 결제처리 시스템
KR100791270B1 (ko) 가맹점 카드단말 관리방법 및 시스템과 가맹점 카드단말관리서버와 카드 단말장치와 기록매체
KR101052791B1 (ko) 정보 보안용 포스 단말
KR100834583B1 (ko) 결제 대행 처리방법과 이를 위한 프로그램 기록매체
KR20080096639A (ko) 트랜잭션 포인트 단말을 이용한 분산형 결제 방법
KR20090037421A (ko) 디지털 서명 처리방법
KR20080009358A (ko) 모바일 에스크로우 결제 처리방법
KR20090046771A (ko) 트랜잭션 포인트 단말을 이용한 분산 결제 방법
KR20090000585A (ko) 무선 통신망을 이용한 분산 결제용 트랜잭션 포인트단말장치와 이를 이용한 분산 결제 방법, 시스템, 기록매체
KR20080056141A (ko) 결제처리 방법

Legal Events

Date Code Title Description
A107 Divisional application of patent
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid