KR20080009777A - 결제 시스템 - Google Patents

결제 시스템 Download PDF

Info

Publication number
KR20080009777A
KR20080009777A KR1020080005225A KR20080005225A KR20080009777A KR 20080009777 A KR20080009777 A KR 20080009777A KR 1020080005225 A KR1020080005225 A KR 1020080005225A KR 20080005225 A KR20080005225 A KR 20080005225A KR 20080009777 A KR20080009777 A KR 20080009777A
Authority
KR
South Korea
Prior art keywords
key
encryption
card
information
card information
Prior art date
Application number
KR1020080005225A
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 KR1020080005225A priority Critical patent/KR20080009777A/ko
Publication of KR20080009777A publication Critical patent/KR20080009777A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/20Point-of-sale [POS] network systems
    • G06Q20/206Point-of-sale [POS] network systems comprising security or operator identification provisions, e.g. password entry
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/22Payment schemes or models
    • G06Q20/24Credit schemes, i.e. "pay after"
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3823Payment protocols; Details thereof insuring higher security of transaction combining multiple encryption tools for a transaction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification

Abstract

본 발명은 결제 시스템에 관한 것으로서, 고객 카드로부터 결제수단 정보를 리딩하여 호스트에서 복호화될 암호화 키를 통해 암호화하는 카드리더 모듈과, 상기 카드리더 모듈에서 암호화된 결제수단 정보를 포함하는 결제승인요청 전문을 생성하여 호스트로 전송하는 단말과, 상기 암호화된 결제수단 정보를 포함하는 결제승인요청 전문을 수신하고, 상기 결제승인요청 전문에 포함된 상기 암호화된 결제수단 정보를 복호화 하는 호스트 서버를 구비한다.
결제, 암호화, 복호화

Description

결제 시스템{System for Payment}
도 1은 본 발명의 실시 방법에 따른 POS 단말 기반 전자결제 시스템 구성을 도시한 도면이다.
도 2는 본 발명의 실시 방법에 따른 POS 단말의 기능 구성을 도시한 도면이다.
도 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는 본 발명의 실시 방법에 따른 결제승인요청 전문 구조를 예시한 도면이다.
도 35는 본 발명의 실시 방법에 따라 호스트에서 암호화되어 수신된 카드정보를 대칭키(또는 비밀키) 방식으로 복호화하는 방법을 도시한 도면이다.
도 36은 본 발명의 실시 방법에 따라 호스트에서 암호화되어 수신된 카드정보를 공개키 기반 구조 방식으로 복호화하는 방법을 도시한 도면이다.
도 37은 본 발명의 실시 방법에 따라 호스트에서 암호화되어 수신된 카드정보를 전자봉투 방식으로 복호화하는 방법을 도시한 도면이다.
도 38a와 도 38b는 본 발명의 실시 방법에 따라 호스트에서 암호화되어 수신 된 카드정보를 키교환 방식으로 복호화하는 방법을 도시한 도면이다.
도 39는 본 발명의 실시 방법에 따라 호스트에서 암호화되어 수신된 카드정보를 대칭키(또는 비밀키) 방식으로 복호화하는 방법을 도시한 도면이다.
도 40은 본 발명의 실시 방법에 따라 호스트에서 암호화되어 수신된 카드정보를 공개키 기반 구조 방식으로 복호화하는 방법을 도시한 도면이다.
도 41은 본 발명의 실시 방법에 따라 호스트에서 암호화되어 수신된 카드정보를 전자봉투 방식으로 복호화하는 방법을 도시한 도면이다.
도 42a와 도 42b는 본 발명의 실시 방법에 따라 호스트에서 암호화되어 수신된 카드정보를 키교환 방식으로 복호화하는 방법을 도시한 도면이다.
도 43은 본 발명의 실시 방법에 따른 암호화된 카드정보를 이용한 전자결제 기능을 수행하는 호스트 동작 과정을 도시한 도면이다.
<도면의 주요부분에 대한 설명>
100 : POS 단말 105 : 제어부
110 : 화면 출력부 115 : 키 입력부
120 : RFID 리더부 125 : 바코드 리더부
130 : 카드리더 모듈 135 : 통신 처리부
140 : 인쇄 출력부 145 : 메모리부
150 : 전원 공급부 155 : 인쇄장치
본 발명은 고객 카드로부터 결제수단 정보를 리딩하여 호스트에서 복호화될 암호화 키를 통해 암호화하는 카드리더 모듈과, 상기 카드리더 모듈에서 암호화된 결제수단 정보를 포함하는 결제승인요청 전문을 생성하여 호스트로 전송하는 단말과, 상기 암호화된 결제수단 정보를 포함하는 결제승인요청 전문을 수신하고, 상기 결제승인요청 전문에 포함된 상기 암호화된 결제수단 정보를 복호화 하는 호스트 서버를 구비하는 결제 시스템에 관한 것이다.
매장이 자동화되면서 매장관리와 재고관리 및 판매관리를 적어도 하나 이상 포함하는 판매시점 관리를 위해 각 매장마다 POS(Point Of Sales) 단말이 구비되었으며, 상기 판매시점 관리와 전자결제(또는 카드결제) 기능을 동시에 지원하기 위해 상기 POS 단말에 신용조회단말(Credit Authorization Terminal; CAT), 및/또는 직불결제단말 등과 같은 결제단말 기능이 추가되었다.
한편, 결제단말과 달리 상기 POS 단말은 대용량 저장장치와 고성능 연산장치를 구비한 컴퓨터로서, 고객관계관리를 위해 상기 전자결제(또는 카드결제) 중 상기 고객 카드로부터 획득되는 적어도 하나 이상의 카드정보를 상기 POS 단말 내 저장장치에 저장할 수 있다.
그러나, 상기와 같이 카드정보를 상기 POS 단말 내 저장하여 고객관계관리에 이용하는 경우, 상기 고객에 대한 사생활 침해를 유발할 수 있는 심각한 문제점을 포함한다.
본 발명의 목적은 고객 카드로부터 결제수단 정보를 리딩하여 호스트에서 복호화될 암호화 키를 통해 암호화하는 카드리더 모듈과, 상기 카드리더 모듈에서 암호화된 결제수단 정보를 포함하는 결제승인요청 전문을 생성하여 호스트로 전송하는 단말과, 상기 암호화된 결제수단 정보를 포함하는 결제승인요청 전문을 수신하고, 상기 결제승인요청 전문에 포함된 상기 암호화된 결제수단 정보를 복호화 하는 호스트 서버를 구비하는 결제 시스템을 제공함에 있다.
본 발명에 따른 결제 시스템은, 고객 카드로부터 결제수단 정보를 리딩하여 호스트에서 복호화될 암호화 키를 통해 암호화하는 카드리더 모듈과, 상기 카드리더 모듈에서 암호화된 결제수단 정보를 포함하는 결제승인요청 전문을 생성하여 호스트로 전송하는 단말과, 상기 암호화된 결제수단 정보를 포함하는 결제승인요청 전문을 수신하고, 상기 결제승인요청 전문에 포함된 상기 암호화된 결제수단 정보를 복호화 하는 호스트 서버를 구비한다.
본 발명에 따르면, 상기 카드리더 모듈은, 상기 고객 카드로부터 결제수단 정보를 리딩하여 검증한 후, 상기 검증된 결제수단 정보를 암호화하는 것을 특징으로 한다.
본 발명에 따르면, 상기 카드리더 모듈은, 복수의 암호화 키를 키 인덱스 별로 분류하여 구비하고, 상기 복수의 암호화 키 중 어느 하나의 암호화 키를 통해 상기 결제수단 정보를 암호화하고, 상기 암호화된 결제수단 정보와 키 인덱스를 상기 단말로 제공하는 것을 특징으로 한다.
이하 첨부된 도면과 설명을 참조하여 본 발명의 바람직한 실시예에 대한 동작 원리를 상세히 설명한다. 다만, 하기에 도시되는 도면과 후술되는 설명은 본 발명의 특징을 효과적으로 설명하기 위한 여러 가지 방법 중에서 바람직한 실시 방법에 대한 것이며, 본 발명이 하기의 도면과 설명만으로 한정되는 것은 아니다.
또한, 하기에서 본 발명을 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서, 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명에서 전반에 걸친 내용을 토대로 내 려져야 할 것이다.
또한, 이하 실시되는 본 발명의 바람직한 실시예는 본 발명을 이루는 기술적 구성요소를 효율적으로 설명하기 위해 각각의 시스템 기능구성에 기 구비되어 있거나, 또는 본 발명이 속하는 기술분야에서 통상적으로 구비되는 시스템 기능구성은 가능한 생략하고, 본 발명을 위해 추가적으로 구비되어야 하는 기능구성을 위주로 설명한다.
만약 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면, 하기에 도시하지 않고 생략된 기능구성 중에서 종래에 기 사용되고 있는 구성요소의 기능을 용이하게 이해할 수 있을 것이며, 또한 상기와 같이 생략된 구성요소와 본 발명을 위해 추가된 구성요소 사이의 관계도 명백하게 이해할 수 있을 것이다.
또한, 이하 실시예는 본 발명의 핵심적인 기술적 특징을 효율적으로 설명하기 위해 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 명백하게 이해할 수 있도록 용어를 적절하게 변형하여 사용할 것이나, 이에 의해 본 발명이 한정되는 것은 결코 아니다.
결과적으로, 본 발명의 기술적 사상은 청구범위에 의해 결정되며, 이하 실시예는 진보적인 본 발명의 기술적 사상을 본 발명이 속하는 기술분야에서 통상의 지 식을 가진 자에게 효율적으로 설명하기 위한 일 수단일 뿐이다.
도면1은 본 발명의 실시 방법에 따른 POS 단말 기반 전자결제 시스템 구성을 도시한 도면이다.
보다 상세하게 본 도면1은 고객 카드로부터 리딩되는 카드정보를 암호화하는 카드리더 모듈(130)이 구비된 POS 단말(100)에 있어서, 상기 암호화된 카드정보(및/또는 결제수단 정보)를 이용한 전자결제 시스템 구성에 대한 것으로, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면, 본 도면1을 참조 및/또는 변형하여 상기 암호화된 카드정보(및/또는 결제수단 정보)를 이용한 다양한 전자결제 시스템 구성을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 실시 방법을 모두 포함하며, 본 도면1에 도시된 실시 방법으로 한정되지 아니한다.
도면1을 참조하면, 상기 POS 단말(100) 기반 전자결제 시스템은, 고객 카드로부터 리딩되는 카드정보를 암호화하는 카드리더 모듈(130)이 구비된 POS 단말(100)과, 상기 카드리더 모듈(130)을 통해 암호화된 카드정보(및/또는 결제수단 정보)를 복호화하는 호스트 서버(160)를 포함하여 이루어지는 것을 특징으로 한다.
상기 POS 단말(100)은 판매시점 관리 기능을 구비하는 것을 특징으로 하며, 본 발명에 따른 POS 단말(100) 기반 전자결제 처리를 위해 소정의 고객 카드로부터 리딩 되는 카드정보를 암호화하는 카드리더 모듈(130)을 구비한 것을 특징으로 하며, 이에 의해 상기 POS 단말(100)은 암호화된 카드정보(및/또는 결제수단 정보)를 포함하는 결제승인요청 전문을 생성하는 것을 특징으로 한다.
이후, 상기 POS 단말(100)은 본 발명에 따른 POS 단말(100) 기반 전자결제 처리를 위해 상기 암호화된 카드정보(및/또는 결제수단 정보)를 포함하여 생성된 상기 결제승인요청 전문을 소정의 결제 네트워크를 통해 소정의 호스트 서버(160)로 전송하는 것을 특징으로 한다.
여기서, 상기 호스트 서버(160)는 밴사에 구비된 밴사 서버이거나, 및/또는 상기 고객 카드를 발급한 카드사에 구비된 카드사 서버이거나, 및/또는 상기 밴사 및/또는 카드사와 제휴하여 상기 결제승인요청 전문에 포함된 상기 암호화된 카드정보(및/또는 결제수단 정보)를 복호화하는 보안 서버 중 적어도 하나 이상을 포함하여 이루어지며, 본 발명의 바람직한 실시예에서는 편의상 상기 호스트 서버(160)를 소정의 밴사에 구비된 밴사 서버로 도시하여 설명한다.
그러나, 상기 호스트 서버(160)가 상기 밴사에 구비된 밴사 서버로 한정되는 것은 결코 아니며, 상기 호스트 서버(160)는 본 발명을 실시하는 당업자의 의도에 따라 다양한 분야에 적용하는 것이 가능하다.
도면1을 참조하면, 상기 호스트 서버(160)는 소정의 결제 네트워크를 통해 상기 POS 단말(100)로부터 전송된 결제승인요청 전문을 수신하는 전문 수신부(165)와, 상기 전문 수신부(165)를 통해 수신된 결제승인요청 전문으로부터 상기 암호화된 카드정보(및/또는 결제수단 정보)를 포함하는 적어도 하나 이상의 결제처리 정보를 추출하는 정보 추출부(170)와, 상기 암호화된 카드정보(및/또는 결제수단 정보)를 복호화하는 복호화부(180)와, 상기 복호화된 카드정보(및/또는 결제수단 정보)를 포함하는 적어도 하나 이상의 결제처리 정보를 통해 결제처리 절차를 수행하는 결제 처리부(190)와, 상기 결제처리 절차가 수행된 후, 상기 결제처리 결과에 대응하는 소정의 결제처리 내역을 포함하는 결제승인 전문을 생성하는 전문 생성부(185)와, 상기 생성된 결제승인 전문을 상기 결제 네트워크를 통해 상기 POS 단말(100)로 전송하는 전문 전송부(175)를 구비하여 이루어지는 것을 특징으로 한다.
상기 전문 수신부(165)는 상기 POS 단말(100)에서 상기 카드리더 모듈(130)을 통해 암호화된 카드정보(및/또는 결제수단 정보)를 포함하는 소정의 결제승인요청 전문을 생성하여 상기 결제 네트워크를 통해 전송하면, 상기 결제 네트워크를 통해 상기 결제승인요청 전문을 수신하는 것을 특징으로 하며, 상기 수신된 결제승인요청 전문을 상기 정보 추출부(170)로 제공한다.
상기 정보 추출부(170)는 상기 결제승인요청 전문으로부터 상기 암호화된 카드정보(및/또는 결제수단 정보)와 결제금액 정보와 POS 단말(100) 정보 및/또는 전문생 성 시간 정보 등을 적어도 하나 이상 포함하는 결제처리 정보를 추출하는 것을 특징으로 하며, 이 중 상기 암호화된 카드정보(및/또는 결제수단 정보)를 상기 복호화부(180)로 제공한다.
상기 복호화부(180)는 상기 암호화된 카드정보(및/또는 결제수단 정보)에 적용된 암호화 방식에 대응하는 소정의 복호화 방식을 통해 상기 암호화된 카드정보(및/또는 결제수단 정보)를 복호화하는 것을 특징으로 한다.
본 발명의 실시 방법에 따르면, 상기 암호화된 카드정보(및/또는 결제수단 정보)는 대칭키(또는 비밀키) 복호화 방식, 및/도는 공개키 복호화 방식, 및/또는 전자봉투 복호화 방식, 및/또는 키교환 복호화 방식 중 적어도 하나 이상의 복호화 방식을 통해 복호화되는 것이 바람직하다.
본 발명의 일 실시 방법에 따라 상기 암호화된 카드정보(및/또는 결제수단 정보)가 소정의 암호화 키를 통해 암호화된 경우, 상기 호스트 서버(160)와 연계된 DBMS에는 상기 암호화된 카드정보(및/또는 결제수단 정보)를 복호화 하기 위해 소정의 복호화 키 인덱스와 복호화 키를 연계 처리하여 저장하는 것이 바람직하다.
본 발명의 다른 일 실시 방법에 따라 상기 암호화된 카드정보(및/또는 결제수단 정보)가 소정의 OTP 코드를 암호화 키로 사용하여 암호화된 경우, 상기 호스트 서 버(160)와 연계된 DBMS에는 상기 암호화된 카드정보(및/또는 결제수단 정보)를 복호화 하기 위한 소정의 복호화 키를 OTP 코드 형태로 동적 생성하기 위한 OTP 생성 정보를 저장하는 것이 바람직하다.
예컨대, 상기 암호화된 카드정보(및/또는 결제수단 정보)가 시간-동기화 방식으로 생성된 OTP 코드를 암호화 키로 사용하여 암호화된 경우, 상기 결제처리 정보에 포함된 전문생성 시간 정보(및/또는 상기 호스트 서버(160)에서 상기 결제승인요청 전문을 수신한 시간 정보)와 상기 OTP 생성 정보를 기반으로 소정의 OTP 코드를 생성하고, 상기 생성된 OTP 코드를 복호화 키로 사용하여 상기 암호화된 카드정보(및/또는 결제수단 정보)를 복호화할 수 있다.
상기 결제 처리부(190)는 상기 정보 추출부(170)를 통해 추출된 적어도 하나 이상의 결제처리 정보와 상기 복호화부(180)를 통해 복호화된 카드정보를 이용하여 상기 결제승인요청 전문을 통해 요청된 전자결제 처리 절차를 수행하는 것을 특징으로 한다.
본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면, 상기 결제 처리부(190)가 상기 정보 추출부(170)를 통해 추출된 적어도 하나 이상의 결제처리 정보와 상기 복호화부(180)를 통해 복호화된 카드정보를 이용하여 상기 결제승인요청 전문을 통해 요청된 전자결제 처리 절차를 수행하는 기술적 특징을 기 숙지하고 있 을 것이므로, 이에 대한 상세한 설명은 편의상 생략한다.
상기 결제 처리부(190)에 의해 소정의 결제처리 절차가 수행되면(예컨대, 소정의 결제승인 내역 또는 결제오류 내역 중 어느 하나를 포함하는 결제처리 내역이 생성되면), 상기 전문 생성부(185)는 상기 결제처리 결과에 대응하는 소정의 결제처리 내역을 포함하는 결제승인 전문을 생성하는 것을 특징으로 하며, 상기 생성된 결제승인 전문을 상기 전문 전송부(175)로 제공한다.
상기 전문 전송부(175)는 상기 전문 생성부(185)에 의해 생성된 상기 결제승인 전문을 상기 결제 네트워크를 통해 상기 결제 네트워크를 통해 상기 POS 단말(100)로 전송하는 것을 특징으로 하며, 상기 POS 단말(100)은 상기 결제승인 전문을 수신 및 판독하여 상기 결제처리 내역을 화면 출력(및/또는 인쇄 출력)하는 것을 특징으로 한다.
도면2는 본 발명의 실시 방법에 따른 POS 단말(100)의 기능 구성을 도시한 도면이다.
보다 상세하게 본 도면2는 고객 카드로부터 리딩되는 카드정보의 암호화를 통한 보안 결제 서비스를 제공하기 위한 POS(Point Of Sales) 단말의 일 실시 방법에 대한 것으로서, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면, 본 도면1을 참조 및/또는 변형하여 고객 카드로부터 리딩되는 카드정보의 암호화를 통한 보안 결제 서비스를 제공하기 위한 다양한 POS 단말(100) 기능 구성을 유추할 수 있을 것이나, 본 발명의 기술적 특징이 본 도면2에 의해 한정되는 것이 아니라, 상기 유추되는 모든 실시 방법을 포함하는 것임을 밝혀두는 바이다.
본 발명의 실시 방법에 따르는 도면2를 참조하면, 상기 고객 카드로부터 리딩되는 카드정보의 암호화를 통한 보안 결제 서비스를 제공하기 위한 POS 단말(100)은 판매시점 관리를 위한 POS 고유 기능과, 적어도 하나 이상의 결제수단을 구비한 고객 카드를 통한 전자결제 기능을 구비하여 이루어진 것으로 도시하지만, 본 발명에 따른 모든 POS 단말(100)이 본 도면1에 도시된 실시 방법으로 한정되는 것은 결코 아님을 밝혀두는 바이다.
도면2를 참조하면, 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)는 상기 호스트로부터 상기 가맹점 매장의 고객 관리에 필요한 최소한의 고객정보(예컨대, 고객 카드정보를 제외한 고객정보)를 제공받을 수 있으며, 이에 의해 본 발명이 한정되지 아니한다.
도면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 단말에 구비된 제어부로 제공하는 것이 가능하며, 상기 암호화되지 않은 카드정보의 일부는 상기 POS 단말에 구비된 메모리(및/또는 로컬 서버에 구비된 데이터베이스)에 저장되는 것이 가능하다.
본 발명의 실시 방법에 따르면, 상기 MS 리더부(310)와, 암호 처리부(305)와, 정보 제공부(300)는 상기 카드리더 모듈에 구비되는 프로그램 형태로 탑재되는 것이 바람직하며, 상기 프로그램은 소정의 프로그램 제공 서버(도시생략)으로부터 다운로드되어 상기 카드리더 모듈에 탑재되는 것이 바람직하다.
또한, 상기 프로그램이 상기 카드리더 모듈로 다운로드되어 탑재되는 과정에서, 상기 프로그램의 암호화 방식 및/또는 암호화 키가 결정되는 것이 바람직하다.
*도면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)를 통해 리딩된 카드정보를 암호화되기 전에 임시 저장하는 것이 바람직하며, 상기 암호 처리부(305)는 상기 메모리에 저장된 카드정보를 암호화하는 것이 바람직하다.
또는, 상기 접촉식 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 리더부(800)를 통해 리딩된 카드정보를 암호화되기 전에 임시 저장하는 것이 바람직하며, 상기 암호 처리부(305)는 상기 메모리에 저장된 카드정보를 암호화하는 것이 바람직하다.
또는, 상기 접촉식 IC 리더부(800)를 통해 리딩된 카드정보를 암호화되기 전에 소정의 보안칩(도시생략)에 구비된 메모리에 저장되는 것이 가능하며, 이에 의해 본 발명이 한정되지 아니한다.
상기 암호 처리부(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 항목은 상기 카드정보를 암호화한 암호화 키에 대응하는 암호화 키 인덱스를 더 포함하는 것이 가능하 며, 이에 의해 본 발명이 한정되지 아니한다.
도면35는 본 발명의 실시 방법에 따라 호스트에서 암호화되어 수신된 카드정보를 대칭키(또는 비밀키) 방식으로 복호화하는 방법을 도시한 도면이다.
보다 상세하게 본 도면35는 상기 도면3 및/또는 도면8 및/또는 도면13과 같은 암호화 기능이 구비된 카드리더 모듈(130)로부터 암호화되어 수신된 상기 카드정보를 소정의 호스트에서 대칭키(또는 비밀키) 방식으로 복호화하는 실시 방법에 대한 것으로서, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 지라면, 본 도면35를 참조 및/또는 변형하여 상기 카드리더 모듈(130)에서 상기 암호화된 카드정보를 대칭키(또는 비밀키) 방식으로 복호화하는 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 실시 방법을 모두 포함하며, 본 도면35에 도시된 실시 방법으로 한정되지 아니한다.
본 발명의 실시 방법을 따르는 본 도면35에서 상기 대칭키(또는 비밀키)는 상기 호스트에 구비된 상기 DBMS로부터 독출되는 것이 바람직하며, 상기 DBMS는 상기 호스트와 연동하는 소정의 데이터베이스(도시생략)에 저장되는 것이 바람직하며, 이에 의해 본 발명이 한정되지 아니한다.
도면35를 참조하면, 상기 호스트의 정보 추출부(170)는 상기 전문 수신부(165)를 통해 수신된 결제승인요청 전문으로부터 상기 암호화된 카드정보를 추출하여 상기 복호화부(180)로 제공한다(3500).
이후, 상기 복호화부(180)는 호스트에 구비된 상기 DBMS로부터 상기 암호화된 카드정보를 복호화하기 위한 소정의 대칭키(또는 비밀키)를 추출하고(3505), 상기 추출된 대칭키(또는 비밀키)를 통해 상기 암호화된 카드정보를 복호화한다(3510).
여기서, 상기 복호화부(180)의 복호화 기능을 D(Decryption)라고 하고, 상기 대칭키(또는 비밀키)를 k(key), 상기 대칭키(또는 비밀키)로 암호화된 카드정보를 C(Ciphertext), 및 상기 복호화되는 카드정보를 P(Plaintext)라고 하면, 상기 복호화부(180)가 상기 암호화된 카드정보를 복호화하는 기능은 "Dk=P, 또는 Dk(Ek(P))=P"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 복호화부(180)가 상기 대칭키(또는 비밀키)를 통해 상기 암호화된 카드정보를 복호화하는 알고리즘은, SEED, DES(Data Encryption Standard), Triple-DES, Skipjack, IDEA(International Data Encryption Algorithm) 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 복호화 알고리즘이 이용될 수 있으나, 상기 복호화 알고리즘은 상기 카드리더 모듈(130)에서 사용된 암호화 알고리즘과 매칭되는 것을 특징으로 하며, 특정 복호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
상기와 같이 대칭키(또는 비밀키)를 통해 암호화된 카드정보가 복호화되면, 상기 복호화부(180)는 상기 복호화된 카드정보를 상기 결제 처리부(190)로 제공하는데(3515), 상기 결제 처리부(190)는 상기 복호화된 카드정보와 적어도 하나 이상의 결제처리 정보를 통해 상기 결제승인요청 전문을 통해 요청된 결제처리 절차를 수행한다.
도면36은 본 발명의 실시 방법에 따라 호스트에서 암호화되어 수신된 카드정보를 공개키 기반 구조 방식으로 복호화하는 방법을 도시한 도면이다.
보다 상세하게 본 도면36은 상기 도면3 및/또는 도면8 및/또는 도면13와 같은 암호화 기능이 구비된 카드리더 모듈(130)로부터 암호화되어 수신된 상기 카드정보를 호스트에서 공개키 기반 구조 방식으로 복호화하는 실시 방법에 대한 것으로서, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 지라면, 본 도면36을 참조 및/또는 변형하여 상기 카드리더 모듈(130)에서 상기 서버측 공개키로 암호화된 카드정보를 공개키 기반 구조 방식으로 복호화하는 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 실시 방법을 모두 포함하며, 본 도면36에 도시된 실시 방법으로 한정되지 아니한다.
본 발명의 실시 방법을 따르는 본 도면36에서 상기 서버측 공개키로 암호화된 카드 정보를 공개키 기반 구조 방식으로 복호화하기 위한 서버측 개인키는 상기 호스트에 구비된 상기 DBMS로부터 독출되는 것이 바람직하며, 상기 DBMS는 상기 호스트와 연동하는 소정의 데이터베이스(도시생략)에 저장되는 것이 바람직하며, 이에 의해 본 발명이 한정되지 아니한다.
도면36을 참조하면, 상기 호스트의 정보 추출부(170)는 상기 전문 수신부(165)를 통해 수신된 결제승인요청 전문으로부터 상기 암호화된 카드정보를 추출하여 상기 복호화부(180)로 제공한다(3600).
이후, 상기 복호화부(180)는 호스트에 구비된 상기 DBMS로부터 상기 암호화된 카드정보를 복호화하기 위한 서버측 개인키를 추출하고(3605), 상기 추출된 서버측 개인키를 통해 상기 암호화된 카드정보를 복호화한다(3610).
여기서, 상기 복호화부(180)의 복호화 기능을 D(Decryption)라고 하고, 상기 서버측 개인키를 k2(key), 상기 서버측 공개키로 암호화된 카드정보를 C(Ciphertext), 및 상기 서버측 개인키로 복호화되는 카드정보를 P(Plaintext)라고 하면, 상기 복호화부(180)가 상기 암호화된 카드정보를 복호화하는 기능은 "Dk2=P, 또는 Dk2(Ek(P))=P"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 복호화부(180)가 상기 서버측 개인키를 통해 상기 카드리더 모듈(130)에서 서버측 공개키로 암호화된 카드정보를 복호화하는 알고리즘은, RSA(Ron Rivest, Adi Shamir, Len Adleman), DSA(Digital Signature Algorithm), DH(Diffie, Hellman), ECC(Elliptic Curve Cryptosystem), KCDSA, ECDSA, ECDH 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 복호화 알고리즘이 이용될 수 있으나, 상기 복호화 알고리즘은 상기 카드리더 모듈(130)에서 사용된 암호화 알고리즘과 매칭되는 것을 특징으로 하며, 특정 복호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
예를들어, 상기 공개키 기반 복호화 알고리즘 중 RSA 복호화 알고리즘을 통해 상기 카드정보를 복호화하는 경우, 복호화 과정에서 이용되는 공개된 법(Modulus)을 n, 상기 n의 서로 다른 소인수로 공개되지 않은 소수를 a와 b, 공개된 지수(예컨대, 3 또는 216+)를 e, 공개되지 않은 지수를 d라고 하면, 상기 n은 "n=a*b"를 만족하고, 상기 d는 " de=1 mod (a-1)(b-1)"를 만족하는데, 이 때 상기 복호화부(180)의 복호화 기능은 "P=Dk2=Cd mod n"와 같이 표현할 수 있다.
상기와 같이 서버측 개인키를 통해 상기 카드리더 모듈(130)에서 서버측 공개키로 암호화된 카드정보가 복호화되면, 상기 복호화부(180)는 상기 복호화된 카드정보를 상기 결제 처리부(190)로 제공하는데(3615), 상기 결제 처리부(190)는 상기 복호화된 카드정보와 적어도 하나 이상의 결제처리 정보를 통해 상기 결제승인요청 전문을 통해 요청된 결제처리 절차를 수행한다.
도면37은 본 발명의 실시 방법에 따라 호스트에서 암호화되어 수신된 카드정보를 전자봉투 방식으로 복호화하는 방법을 도시한 도면이다.
보다 상세하게 본 도면37은 상기 도면3 및/또는 도면8 및/또는 도면13와 같은 암호화 기능이 구비된 카드리더 모듈(130)로부터 암호화된 카드정보를 포함하는 결제수단 정보를 수신한 호스트에서 상기 결제수단 정보를 전자봉투 방식으로 복호화하는 실시 방법에 대한 것으로서, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 지라면, 본 도면37을 참조 및/또는 변형하여 상기 카드리더 모듈(130)에서 상기 전자봉투 방식으로 암호화된 결제수단 정보를 같은 전자봉투 방식으로 복호화하는 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 실시 방법을 모두 포함하며, 본 도면37에 도시된 실시 방법으로 한정되지 아니한다.
본 발명의 실시 방법을 따르는 본 도면37에서 상기 결제수단 정보를 전자봉투 방식으로 복호화하기 위한 서버측 개인키는 상기 호스트에 구비된 상기 DBMS로부터 독출되는 것이 바람직하며, 상기 DBMS는 상기 호스트와 연동하는 소정의 데이터베이스(도시생략)에 저장되는 것이 바람직하며, 이에 의해 본 발명이 한정되지 아니한다.
도면37을 참조하면, 상기 호스트의 정보 추출부(170)는 상기 전문 수신부(165)를 통해 수신된 결제승인요청 전문으로부터 상기 암호화된 카드정보를 포함하는 결제수단 정보를 추출하여 상기 복호화부(180)로 제공한다(3700).
이후, 상기 복호화부(180)는 호스트에 구비된 상기 DBMS로부터 상기 결제수단 정보에 포함된 암호화된 비밀키를 복호화하기 위한 서버측 개인키를 추출하고(3705), 상기 추출된 서버측 개인키를 통해 상기 카드리더 모듈(130)에서 상기 서버측 공개키로 암호화된 비밀키를 복호화함으로써(3710), 상기 카드정보를 복호화하기 위한 소정의 비밀키를 추출하고(3715), 상기 추출된 비밀키를 이용하여 상기 카드정보를 복호화함으로써(3720), 상기 카드리더 모듈(130)에서 상기 비밀키로 암호화된 상기 카드정보를 추출한다(3725).
여기서, 상기 복호화부(180)의 복호화 기능을 D(Decryption)라고 하고, 상기 서버측 개인키를 k2(key), 상기 서버측 공개키로 암호화된 비밀키를 C(Ciphertext), 및 상기 서버측 개인키로 복호화되는 비밀키를 r(random secret key)라고 하면, 상기 복호화부(180)가 상기 암호화된 비밀키를 복호화하는 기능은 "Dk2=r, 또는 Dk2(Ek1(r))=r"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 복호화부(180)가 상기 서버측 개인키를 통해 상기 카드리더 모듈(130)에서 서버측 공개키로 암호화된 비밀키를 복호화하는 알고리즘은, RSA(Ron Rivest, Adi Shamir, Len Adleman), DSA(Digital Signature Algorithm), DH(Diffie, Hellman), ECC(Elliptic Curve Cryptosystem), KCDSA, ECDSA, ECDH 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 복호화 알고리즘이 이용될 수 있으나, 상기 복호화 알고리즘은 상기 카드리더 모듈(130)에서 사용된 암호화 알고리즘과 매칭되는 것을 특징으로 하며, 특정 복호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
예를들어, 상기 공개키 기반 복호화 알고리즘 중 RSA 복호화 알고리즘을 통해 상기 비밀키를 복호화하는 경우, 복호화 과정에서 이용되는 공개된 법(Modulus)을 n, 상기 n의 서로 다른 소인수로 공개되지 않은 소수를 a와 b, 공개된 지수(예컨대, 3 또는 216+)를 e, 공개되지 않은 지수를 d라고 하면, 상기 n은 "n=a*b"를 만족하고, 상기 d는 " de=1 mod (a-1)(b-1)"를 만족하는데, 이 때 상기 복호화부(180)의 복호화 기능은 "P=Dk2=Cd mod n"와 같이 표현할 수 있다.
또한, 여기서, 상기 복호화부(180)의 복호화 기능을 D(Decryption)라고 하고, 상기 비밀키를 r(random Secret key), 상기 비밀키로 암호화된 카드정보를 C(Ciphertext), 및 상기 복호화되는 카드정보를 P(Plaintext)라고 하면, 상기 복호화부(180)가 상기 암호화된 카드정보를 복호화하는 기능은 "Dr=P, 또는 Dr(Er(P))=P"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 복호화부(180)가 상기 비밀키를 통해 상기 암 호화된 카드정보를 복호화하는 알고리즘은, SEED, DES(Data Encryption Standard), Triple-DES, Skipjack, IDEA(International Data Encryption Algorithm) 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 복호화 알고리즘이 이용될 수 있으나, 상기 복호화 알고리즘은 상기 카드리더 모듈(130)에서 사용된 암호화 알고리즘과 매칭되는 것을 특징으로 하며, 특정 복호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
상기와 같이 카드정보가 복호화되면, 상기 복호화부(180)는 상기 복호화된 카드정보를 상기 결제 처리부(190)로 제공하는데(3730), 상기 결제 처리부(190)는 상기 복호화된 카드정보와 적어도 하나 이상의 결제처리 정보를 통해 상기 결제승인요청 전문을 통해 요청된 결제처리 절차를 수행한다.
도면38a와 도면38b는 본 발명의 실시 방법에 따라 호스트에서 암호화되어 수신된 카드정보를 키교환 방식으로 복호화하는 방법을 도시한 도면이다.
보다 상세하게 본 도면38a와 도면38b는은 상기 도면3 및/또는 도면8 및/또는 도면13와 같은 암호화 기능이 구비된 카드리더 모듈(130)로부터 암호화된 카드정보를 포함하는 결제수단 정보를 수신한 호스트에서 상기 결제수단 정보를 키교환 방식으로 복호화하는 실시 방법에 대한 것으로서, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 지라면, 본 도면38을 참조 및/또는 변형하여 상기 카드리더 모듈(130) 에서 상기 키교환 방식으로 암호화된 결제수단 정보를 같은 키교환 방식으로 복호화하는 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 실시 방법을 모두 포함하며, 본 도면38에 도시된 실시 방법으로 한정되지 아니한다.
본 발명의 실시 방법을 따르는 본 도면38에서 상기 결제수단 정보를 키교환 방식으로 복호화하기 위한 서버측 개인키와 카드리더 모듈(130)측 공개키는 상기 호스트에 구비된 상기 DBMS로부터 독출되는 것이 바람직하며, 상기 DBMS는 상기 호스트와 연동하는 소정의 데이터베이스(도시생략)에 저장되는 것이 바람직하며, 이에 의해 본 발명이 한정되지 아니한다.
도면38a와 도면38b를 참조하면, 상기 호스트의 정보 추출부(170)는 상기 전문 수신부(165)를 통해 수신된 결제승인요청 전문으로부터 상기 암호화된 카드정보를 포함하는 결제수단 정보를 추출하고(3800), 상기 결제수단 정보를 상기 복호화부(180)로 제공하는데(3805), 상기 결제수단 정보는 상기 비밀키로 암호화된 상기 카드정보와 상기 카드리더 모듈(130)측 개인키로 암호화된 상기 메시지 다이제스트와 상기 카드리더 모듈(130)측 공개키를 포함하는 인증서 사본과, 상기 서버측 공개키로 암호화된 상기 비밀키를 포함하여 이루어지는 것이 바람직하다.
이후, 상기 복호화부(180)는 상기 서버측 공개키로 암호화된 비밀키를 복호화하기 위해 호스트에 구비된 상기 DBMS로부터 상기 서버측 개인키를 추출하고(3810), 상 기 서버측 개인키를 통해 상기 비밀키를 복호화함으로써(3815), 상기 카드정보와 상기 카드리더 모듈(130)측 개인키로 암호화된 상기 메시지 다이제스트와 상기 카드리더 모듈(130)측 공개키를 포함하는 인증서 사본을 복호화하기 위한 상기 비밀키를 추출한다(3820).
여기서, 상기 복호화부(180)의 복호화 기능을 D(Decryption)라고 하고, 상기 서버측 개인키를 s2(server side key), 상기 서버측 공개키로 암호화된 비밀키를 C(Ciphertext), 및 상기 서버측 개인키로 복호화되는 비밀키를 r(random secret key)라고 하면, 상기 복호화부(180)가 상기 암호화된 비밀키를 복호화하는 기능은 "Ds2=r, 또는 Ds2(Es1(r))=r"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 복호화부(180)가 상기 서버측 개인키를 통해 상기 카드리더 모듈(130)에서 서버측 공개키로 암호화된 비밀키를 복호화하는 알고리즘은, RSA(Ron Rivest, Adi Shamir, Len Adleman), DSA(Digital Signature Algorithm), DH(Diffie, Hellman), ECC(Elliptic Curve Cryptosystem), KCDSA, ECDSA, ECDH 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 복호화 알고리즘이 이용될 수 있으나, 상기 복호화 알고리즘은 상기 카드리더 모듈(130)에서 사용된 암호화 알고리즘과 매칭되는 것을 특징으로 하며, 특정 복호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
예를들어, 상기 공개키 기반 복호화 알고리즘 중 RSA 복호화 알고리즘을 통해 상기 비밀키를 복호화하는 경우, 복호화 과정에서 이용되는 공개된 법(Modulus)을 n, 상기 n의 서로 다른 소인수로 공개되지 않은 소수를 a와 b, 공개된 지수(예컨대, 3 또는 216+)를 e, 공개되지 않은 지수를 d라고 하면, 상기 n은 "n=a*b"를 만족하고, 상기 d는 " de=1 mod (a-1)(b-1)"를 만족하는데, 이 때 상기 복호화부(180)의 복호화 기능은 "P=Ds2=Cd mod n"와 같이 표현할 수 있다.
상기와 같이 비밀키가 추출되면, 상기 복호화부(180)는 상기 추출된 비밀키를 이용하여 상기 카드정보와 상기 카드리더 모듈(130)측 개인키로 암호화된 상기 메시지 다이제스트와 상기 카드리더 모듈(130)측 공개키를 포함하는 인증서 사본을 복호화함으로써(3825), 상기 비밀키로 암호화된 상기 카드정보와 상기 카드리더 모듈(130)측 개인키로 암호화된 상기 메시지 다이제스트와 상기 카드리더 모듈(130)측 공개키를 포함하는 인증서 사본을 추출한다.
여기서, 상기 복호화부(180)의 복호화 기능을 D(Decryption)라고 하고, 상기 비밀키를 r(random secret key), 상기 비밀키로 암호화된 카드정보와 상기 카드리더 모듈(130)측 개인키로 암호화된 상기 메시지 다이제스트와 상기 카드리더 모듈(130)측 공개키를 포함하는 인증서 사본을 C(Ciphertext), 및 상기 복호화되는 카드정보와 상기 카드리더 모듈(130)측 개인키로 암호화된 상기 메시지 다이제스트와 상기 카드리더 모듈(130)측 공개키를 포함하는 인증서 사본을 P(Plaintext)라고 하면, 상기 복호화부(180)가 상기 암호화된 카드정보와 상기 카드리더 모듈(130)측 개인키로 암호화된 상기 메시지 다이제스트와 상기 카드리더 모듈(130)측 공개키를 포함하는 인증서 사본을 복호화하는 기능은 "Dr=P, 또는 Dr(Er(P))=P"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 복호화부(180)가 상기 비밀키를 통해 상기 암호화된 카드정보와 상기 카드리더 모듈(130)측 개인키로 암호화된 상기 메시지 다이제스트와 상기 카드리더 모듈(130)측 공개키를 포함하는 인증서 사본을 복호화하는 알고리즘은, SEED, DES(Data Encryption Standard), Triple-DES, Skipjack, IDEA(International Data Encryption Algorithm) 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 복호화 알고리즘이 이용될 수 있으나, 상기 복호화 알고리즘은 상기 카드리더 모듈(130)에서 사용된 암호화 알고리즘과 매칭되는 것을 특징으로 하며, 특정 복호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
또한, 상기 복호화부(180)는 상기 카드리더 모듈(130)측 개인키로 암호화된 상기 메시지 다이제스트를 상기 카드리더 모듈(130)측 공개키를 통해 복호화함으로써(3830), 상기 카드리더 모듈(130)에서 상기 카드정보로부터 생성하여 전송한 메시지 다이제스트를 추출한다(3835).
여기서, 상기 복호화부(180)의 복호화 기능을 D(Decryption)라고 하고, 상기 카드리더 모듈(130)측 공개키를 t2(terminal side key), 상기 카드리더 모듈(130)측 개인키로 암호화된 메시지 다이제스트를 C(Ciphertext), 및 상기 카드리더 모듈(130)측 공개키로 복호화되는 메시지 다이제스트를 m(Message Digest)라고 하면, 상기 복호화부(180)가 상기 암호화된 메시지 다이제스트를 복호화하는 기능은 "Dt2=m, 또는 Dt2(Es1(r))=m"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 복호화부(180)가 상기 카드리더 모듈(130)측 공개키를 통해 상기 카드리더 모듈(130)에서 카드리더 모듈(130)측 개인키로 암호화된 메시지 다이제스트를 복호화하는 알고리즘은, RSA(Ron Rivest, Adi Shamir, Len Adleman), DSA(Digital Signature Algorithm), DH(Diffie, Hellman), ECC(Elliptic Curve Cryptosystem), KCDSA, ECDSA, ECDH 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 복호화 알고리즘이 이용될 수 있으나, 상기 복호화 알고리즘은 상기 카드리더 모듈(130)에서 사용된 암호화 알고리즘과 매칭되는 것을 특징으로 하며, 특정 복호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
예를들어, 상기 공개키 기반 복호화 알고리즘 중 RSA 복호화 알고리즘을 통해 상기 메시지 다이제스트를 복호화하는 경우, 복호화 과정에서 이용되는 공개된 법(Modulus)을 n, 상기 n의 서로 다른 소인수로 공개되지 않은 소수를 a와 b, 공개 된 지수(예컨대, 3 또는 216+)를 e, 공개되지 않은 지수를 d라고 하면, 상기 n은 "n=a*b"를 만족하고, 상기 d는 " de=1 mod (a-1)(b-1)"를 만족하는데, 이 때 상기 복호화부(180)의 복호화 기능은 "P=Dt2=Cd mod n"와 같이 표현할 수 있다.
이후, 상기 복호화부(180)는 상기 수신된 카드정보를 상기 카드리더 모듈(130)와 동일한 일방향 해시함수를 통해 소정의 메시지 다이제스트를 생성한 후(3840), 상기 생성된 메시지 다이제스트와 상기 복호화된 메시지 다이제스트를 비교함으로써(3845), 상기 수신된 카드정보에 대한 유효성을 확인한다.
만약 상기 생성된 메시지 다이제스트와 상기 복호화된 메시지 다이제스트가 일치한다면(3850), 상기 복호화부(180)는 상기 카드정보를 상기 결제 처리부(190)로 제공하는데(3855), 상기 결제 처리부(190)는 상기 복호화된 카드정보와 적어도 하나 이상의 결제처리 정보를 통해 상기 결제승인요청 전문을 통해 요청된 결제처리 절차를 수행한다.
도면39는 본 발명의 실시 방법에 따라 호스트에서 암호화되어 수신된 카드정보를 대칭키(또는 비밀키) 방식으로 복호화하는 방법을 도시한 도면이다.
보다 상세하게 본 도면39는 상기 도면18 및/또는 도면23 및/또는 도면28과 같은 암호화 기능이 구비된 카드리더 모듈(130)로부터 암호화되어 수신된 상기 카드정보를 소정의 호스트에서 대칭키(또는 비밀키) 방식으로 복호화하는 실시 방법에 대한 것으로서, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 지라면, 본 도면39를 참조 및/또는 변형하여 상기 카드리더 모듈(130)에서 상기 암호화된 카드정보를 대칭키(또는 비밀키) 방식으로 복호화하는 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 실시 방법을 모두 포함하며, 본 도면39에 도시된 실시 방법으로 한정되지 아니한다.
본 발명의 실시 방법을 따르는 본 도면39에서 상기 대칭키(또는 비밀키)는 상기 호스트에 구비된 상기 DBMS로부터 독출되는 소정의 OTP 생성 정보와 상기 결제처리 정보에 포함된 전문생성 시간 정보(및/또는 결제승인요청 전문 수신 시간)를 기반으로 동적 생성되는 OTP 코드를 포함하여 이루어지는 것이 바람직하며, 이에 의해 본 발명이 한정되지 아니한다.
도면39를 참조하면, 상기 호스트의 정보 추출부(170)는 상기 전문 수신부(165)를 통해 수신된 결제승인요청 전문으로부터 상기 암호화된 카드정보를 추출하여 상기 복호화부(180)로 제공한다(3900).
이후, 상기 복호화부(180)는 호스트에 구비된 상기 DBMS로부터 상기 암호화된 카드정보를 복호화하기 위한 소정의 OTP 생성 정보와 상기 결제처리 정보에 포함된 전문생성 시간 정보(및/또는 결제승인요청 전문 수신 시간)를 기반으로 상기 대칭키 (또는 비밀키)를 생성하고(3905), 상기 생성된 대칭키(또는 비밀키)를 통해 상기 암호화된 카드정보를 복호화한다(3910).
여기서, 상기 복호화부(180)의 복호화 기능을 D(Decryption)라고 하고, 상기 대칭키(또는 비밀키)를 k(key), 상기 대칭키(또는 비밀키)로 암호화된 카드정보를 C(Ciphertext), 및 상기 복호화되는 카드정보를 P(Plaintext)라고 하면, 상기 복호화부(180)가 상기 암호화된 카드정보를 복호화하는 기능은 "Dk=P, 또는 Dk(Ek(P))=P"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 복호화부(180)가 상기 대칭키(또는 비밀키)를 통해 상기 암호화된 카드정보를 복호화하는 알고리즘은, SEED, DES(Data Encryption Standard), Triple-DES, Skipjack, IDEA(International Data Encryption Algorithm) 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 복호화 알고리즘이 이용될 수 있으나, 상기 복호화 알고리즘은 상기 카드리더 모듈(130)에서 사용된 암호화 알고리즘과 매칭되는 것을 특징으로 하며, 특정 복호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
상기와 같이 대칭키(또는 비밀키)를 통해 암호화된 카드정보가 복호화되면, 상기 복호화부(180)는 상기 복호화된 카드정보를 상기 결제 처리부(190)로 제공하는데(3915), 상기 결제 처리부(190)는 상기 복호화된 카드정보와 적어도 하나 이상의 결제처리 정보를 통해 상기 결제승인요청 전문을 통해 요청된 결제처리 절차를 수행한다.
도면40은 본 발명의 실시 방법에 따라 호스트에서 암호화되어 수신된 카드정보를 공개키 기반 구조 방식으로 복호화하는 방법을 도시한 도면이다.
보다 상세하게 본 도면40은 상기 도면18 및/또는 도면23 및/또는 도면28과 같은 암호화 기능이 구비된 카드리더 모듈(130)로부터 암호화되어 수신된 상기 카드정보를 호스트에서 공개키 기반 구조 방식으로 복호화하는 실시 방법에 대한 것으로서, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 지라면, 본 도면40을 참조 및/또는 변형하여 상기 카드리더 모듈(130)에서 상기 서버측 공개키로 암호화된 카드정보를 공개키 기반 구조 방식으로 복호화하는 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 실시 방법을 모두 포함하며, 본 도면40에 도시된 실시 방법으로 한정되지 아니한다.
본 발명의 실시 방법을 따르는 본 도면40에서 상기 서버측 공개키로 암호화된 카드정보를 공개키 기반 구조 방식으로 복호화하기 위한 서버측 개인키는 상기 호스트에 구비된 상기 DBMS로부터 독출되는 소정의 OTP 생성 정보와 상기 결제처리 정보에 포함된 전문생성 시간 정보(및/또는 결제승인요청 전문 수신 시간)를 기반으로 동적 생성되는 OTP 코드를 포함하여 이루어지는 것이 바람직하며, 이에 의해 본 발 명이 한정되지 아니한다.
도면40을 참조하면, 상기 호스트의 정보 추출부(170)는 상기 전문 수신부(165)를 통해 수신된 결제승인요청 전문으로부터 상기 암호화된 카드정보를 추출하여 상기 복호화부(180)로 제공한다(4000).
이후, 상기 복호화부(180)는 호스트에 구비된 상기 DBMS로부터 상기 암호화된 카드정보를 복호화하기 위한 소정의 OTP 생성 정보와 상기 결제처리 정보에 포함된 전문생성 시간 정보(및/또는 결제승인요청 전문 수신 시간)를 기반으로 상기 암호화된 카드정보를 복호화하기 위한 서버측 개인키를 생성하고(4005), 상기 생성된 서버측 개인키를 통해 상기 암호화된 카드정보를 복호화한다(4010).
여기서, 상기 복호화부(180)의 복호화 기능을 D(Decryption)라고 하고, 상기 서버측 개인키를 k2(key), 상기 서버측 공개키로 암호화된 카드정보를 C(Ciphertext), 및 상기 서버측 개인키로 복호화되는 카드정보를 P(Plaintext)라고 하면, 상기 복호화부(180)가 상기 암호화된 카드정보를 복호화하는 기능은 "Dk2=P, 또는 Dk2(Ek(P))=P"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 복호화부(180)가 상기 서버측 개인키를 통해 상기 카드리더 모듈(130)에서 서버측 공개키로 암호화된 카드정보를 복호화하는 알 고리즘은, RSA(Ron Rivest, Adi Shamir, Len Adleman), DSA(Digital Signature Algorithm), DH(Diffie, Hellman), ECC(Elliptic Curve Cryptosystem), KCDSA, ECDSA, ECDH 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 복호화 알고리즘이 이용될 수 있으나, 상기 복호화 알고리즘은 상기 카드리더 모듈(130)에서 사용된 암호화 알고리즘과 매칭되는 것을 특징으로 하며, 특정 복호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
예를들어, 상기 공개키 기반 복호화 알고리즘 중 RSA 복호화 알고리즘을 통해 상기 카드정보를 복호화하는 경우, 복호화 과정에서 이용되는 공개된 법(Modulus)을 n, 상기 n의 서로 다른 소인수로 공개되지 않은 소수를 a와 b, 공개된 지수(예컨대, 3 또는 216+)를 e, 공개되지 않은 지수를 d라고 하면, 상기 n은 "n=a*b"를 만족하고, 상기 d는 " de=1 mod (a-1)(b-1)"를 만족하는데, 이 때 상기 복호화부(180)의 복호화 기능은 "P=Dk2=Cd mod n"와 같이 표현할 수 있다.
상기와 같이 서버측 개인키를 통해 상기 카드리더 모듈(130)에서 서버측 공개키로 암호화된 카드정보가 복호화되면, 상기 복호화부(180)는 상기 복호화된 카드정보를 상기 결제 처리부(190)로 제공하는데(4015), 상기 결제 처리부(190)는 상기 복호화된 카드정보와 적어도 하나 이상의 결제처리 정보를 통해 상기 결제승인요청 전문을 통해 요청된 결제처리 절차를 수행한다.
도면41은 본 발명의 실시 방법에 따라 호스트에서 암호화되어 수신된 카드정보를 전자봉투 방식으로 복호화하는 방법을 도시한 도면이다.
보다 상세하게 본 도면41은 상기 도면18 및/또는 도면23 및/또는 도면28과 같은 암호화 기능이 구비된 카드리더 모듈(130)로부터 암호화된 카드정보를 포함하는 결제수단 정보를 수신한 호스트에서 상기 결제수단 정보를 전자봉투 방식으로 복호화하는 실시 방법에 대한 것으로서, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 지라면, 본 도면41을 참조 및/또는 변형하여 상기 카드리더 모듈(130)에서 상기 전자봉투 방식으로 암호화된 결제수단 정보를 같은 전자봉투 방식으로 복호화하는 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 실시 방법을 모두 포함하며, 본 도면41에 도시된 실시 방법으로 한정되지 아니한다.
본 발명의 실시 방법을 따르는 본 도면41에서 상기 결제수단 정보를 전자봉투 방식으로 복호화하기 위한 서버측 개인키는 상기 호스트에 구비된 상기 DBMS로부터 독출되는 소정의 OTP 생성 정보와 상기 결제처리 정보에 포함된 전문생성 시간 정보(및/또는 결제승인요청 전문 수신 시간)를 기반으로 동적 생성되는 OTP 코드를 포함하여 이루어지는 것이 바람직하며, 이에 의해 본 발명이 한정되지 아니한다.
도면41을 참조하면, 상기 호스트의 정보 추출부(170)는 상기 전문 수신부(165)를 통해 수신된 결제승인요청 전문으로부터 상기 암호화된 카드정보를 포함하는 결제 수단 정보를 추출하여 상기 복호화부(180)로 제공한다(4100).
이후, 상기 복호화부(180)는 호스트에 구비된 상기 DBMS로부터 상기 결제수단 정보에 포함된 암호화된 비밀키를 복호화하기 위한 서버측 개인키를 생성하고(4105), 상기 생성된 서버측 개인키를 통해 상기 카드리더 모듈(130)에서 상기 서버측 공개키로 암호화된 비밀키를 복호화함으로써(4110), 상기 카드정보를 복호화하기 위한 소정의 비밀키를 추출하고(4115), 상기 추출된 비밀키를 이용하여 상기 카드정보를 복호화함으로써(4120), 상기 카드리더 모듈(130)에서 상기 비밀키로 암호화된 상기 카드정보를 추출한다(4125).
여기서, 상기 복호화부(180)의 복호화 기능을 D(Decryption)라고 하고, 상기 서버측 개인키를 k2(key), 상기 서버측 공개키로 암호화된 비밀키를 C(Ciphertext), 및 상기 서버측 개인키로 복호화되는 비밀키를 r(random secret key)라고 하면, 상기 복호화부(180)가 상기 암호화된 비밀키를 복호화하는 기능은 "Dk2=r, 또는 Dk2(Ek1(r))=r"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 복호화부(180)가 상기 서버측 개인키를 통해 상기 카드리더 모듈(130)에서 서버측 공개키로 암호화된 비밀키를 복호화하는 알고리즘은, RSA(Ron Rivest, Adi Shamir, Len Adleman), DSA(Digital Signature Algorithm), DH(Diffie, Hellman), ECC(Elliptic Curve Cryptosystem), KCDSA, ECDSA, ECDH 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 복호화 알고리즘이 이용될 수 있으나, 상기 복호화 알고리즘은 상기 카드리더 모듈(130)에서 사용된 암호화 알고리즘과 매칭되는 것을 특징으로 하며, 특정 복호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
예를들어, 상기 공개키 기반 복호화 알고리즘 중 RSA 복호화 알고리즘을 통해 상기 비밀키를 복호화하는 경우, 복호화 과정에서 이용되는 공개된 법(Modulus)을 n, 상기 n의 서로 다른 소인수로 공개되지 않은 소수를 a와 b, 공개된 지수(예컨대, 3 또는 216+)를 e, 공개되지 않은 지수를 d라고 하면, 상기 n은 "n=a*b"를 만족하고, 상기 d는 " de=1 mod (a-1)(b-1)"를 만족하는데, 이 때 상기 복호화부(180)의 복호화 기능은 "P=Dk2=Cd mod n"와 같이 표현할 수 있다.
또한, 여기서, 상기 복호화부(180)의 복호화 기능을 D(Decryption)라고 하고, 상기 비밀키를 r(random Secret key), 상기 비밀키로 암호화된 카드정보를 C(Ciphertext), 및 상기 복호화되는 카드정보를 P(Plaintext)라고 하면, 상기 복호화부(180)가 상기 암호화된 카드정보를 복호화하는 기능은 "Dr=P, 또는 Dr(Er(P))=P"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 복호화부(180)가 상기 비밀키를 통해 상기 암호화된 카드정보를 복호화하는 알고리즘은, SEED, DES(Data Encryption Standard), Triple-DES, Skipjack, IDEA(International Data Encryption Algorithm) 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 복호화 알고리즘이 이용될 수 있으나, 상기 복호화 알고리즘은 상기 카드리더 모듈(130)에서 사용된 암호화 알고리즘과 매칭되는 것을 특징으로 하며, 특정 복호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
상기와 같이 카드정보가 복호화되면, 상기 복호화부(180)는 상기 복호화된 카드정보를 상기 결제 처리부(190)로 제공하는데(4130), 상기 결제 처리부(190)는 상기 복호화된 카드정보와 적어도 하나 이상의 결제처리 정보를 통해 상기 결제승인요청 전문을 통해 요청된 결제처리 절차를 수행한다.
도면42a와 도면42b는 본 발명의 실시 방법에 따라 호스트에서 암호화되어 수신된 카드정보를 키교환 방식으로 복호화하는 방법을 도시한 도면이다.
보다 상세하게 본 도면42a와 도면42b는은 상기 도면18 및/또는 도면23 및/또는 도면28과 같은 암호화 기능이 구비된 카드리더 모듈(130)로부터 암호화된 카드정보를 포함하는 결제수단 정보를 수신한 호스트에서 상기 결제수단 정보를 키교환 방식으로 복호화하는 실시 방법에 대한 것으로서, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 지라면, 본 도면42를 참조 및/또는 변형하여 상기 카드리더 모듈(130)에서 상기 키교환 방식으로 암호화된 결제수단 정보를 같은 키교환 방식으로 복호 화하는 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 실시 방법을 모두 포함하며, 본 도면42에 도시된 실시 방법으로 한정되지 아니한다.
본 발명의 실시 방법을 따르는 본 도면42에서 상기 결제수단 정보를 키교환 방식으로 복호화하기 위한 서버측 개인키와 카드리더 모듈(130)측 공개키는 상기 호스트에 구비된 상기 DBMS로부터 독출되는 소정의 OTP 생성 정보와 상기 결제처리 정보에 포함된 전문생성 시간 정보(및/또는 결제승인요청 전문 수신 시간)를 기반으로 동적 생성되는 OTP 코드를 포함하여 이루어지는 것이 바람직하며, 이에 의해 본 발명이 한정되지 아니한다.
도면42a와 도면42b를 참조하면, 상기 호스트의 정보 추출부(170)는 상기 전문 수신부(165)를 통해 수신된 결제승인요청 전문으로부터 상기 암호화된 카드정보를 포함하는 결제수단 정보를 추출하고(4200), 상기 결제수단 정보를 상기 복호화부(180)로 제공하는데(4205), 상기 결제수단 정보는 상기 비밀키로 암호화된 상기 카드정보와 상기 카드리더 모듈(130)측 개인키로 암호화된 상기 메시지 다이제스트와 상기 카드리더 모듈(130)측 공개키를 포함하는 인증서 사본과, 상기 서버측 공개키로 암호화된 상기 비밀키를 포함하여 이루어지는 것이 바람직하다.
이후, 상기 복호화부(180)는 상기 서버측 공개키로 암호화된 비밀키를 복호화하기 위해 호스트에 구비된 상기 DBMS로부터 상기 결제수단 정보에 포함된 암호화된 비 밀키를 복호화하기 위한 서버측 개인키를 생성하고(4210), 상기 서버측 개인키를 통해 상기 비밀키를 복호화함으로써(4215), 상기 카드정보와 상기 카드리더 모듈(130)측 개인키로 암호화된 상기 메시지 다이제스트와 상기 카드리더 모듈(130)측 공개키를 포함하는 인증서 사본을 복호화하기 위한 상기 비밀키를 추출한다(4220).
여기서, 상기 복호화부(180)의 복호화 기능을 D(Decryption)라고 하고, 상기 서버측 개인키를 s2(server side key), 상기 서버측 공개키로 암호화된 비밀키를 C(Ciphertext), 및 상기 서버측 개인키로 복호화되는 비밀키를 r(random secret key)라고 하면, 상기 복호화부(180)가 상기 암호화된 비밀키를 복호화하는 기능은 "Ds2=r, 또는 Ds2(Es1(r))=r"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 복호화부(180)가 상기 서버측 개인키를 통해 상기 카드리더 모듈(130)에서 서버측 공개키로 암호화된 비밀키를 복호화하는 알고리즘은, RSA(Ron Rivest, Adi Shamir, Len Adleman), DSA(Digital Signature Algorithm), DH(Diffie, Hellman), ECC(Elliptic Curve Cryptosystem), KCDSA, ECDSA, ECDH 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 복호화 알고리즘이 이용될 수 있으나, 상기 복호화 알고리즘은 상기 카드리더 모듈(130)에서 사용된 암호화 알고리즘과 매칭되는 것을 특징으로 하며, 특정 복호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
예를들어, 상기 공개키 기반 복호화 알고리즘 중 RSA 복호화 알고리즘을 통해 상기 비밀키를 복호화하는 경우, 복호화 과정에서 이용되는 공개된 법(Modulus)을 n, 상기 n의 서로 다른 소인수로 공개되지 않은 소수를 a와 b, 공개된 지수(예컨대, 3 또는 216+)를 e, 공개되지 않은 지수를 d라고 하면, 상기 n은 "n=a*b"를 만족하고, 상기 d는 " de=1 mod (a-1)(b-1)"를 만족하는데, 이 때 상기 복호화부(180)의 복호화 기능은 "P=Ds2=Cd mod n"와 같이 표현할 수 있다.
상기와 같이 비밀키가 추출되면, 상기 복호화부(180)는 상기 추출된 비밀키를 이용하여 상기 카드정보와 상기 카드리더 모듈(130)측 개인키로 암호화된 상기 메시지 다이제스트와 상기 카드리더 모듈(130)측 공개키를 포함하는 인증서 사본을 복호화함으로써(4225), 상기 비밀키로 암호화된 상기 카드정보와 상기 카드리더 모듈(130)측 개인키로 암호화된 상기 메시지 다이제스트와 상기 카드리더 모듈(130)측 공개키를 포함하는 인증서 사본을 추출한다.
여기서, 상기 복호화부(180)의 복호화 기능을 D(Decryption)라고 하고, 상기 비밀키를 r(random secret key), 상기 비밀키로 암호화된 카드정보와 상기 카드리더 모듈(130)측 개인키로 암호화된 상기 메시지 다이제스트와 상기 카드리더 모듈(130)측 공개키를 포함하는 인증서 사본을 C(Ciphertext), 및 상기 복호화되는 카드정보와 상기 카드리더 모듈(130)측 개인키로 암호화된 상기 메시지 다이제스트와 상기 카드리더 모듈(130)측 공개키를 포함하는 인증서 사본을 P(Plaintext)라고 하면, 상기 복호화부(180)가 상기 암호화된 카드정보와 상기 카드리더 모듈(130)측 개인키로 암호화된 상기 메시지 다이제스트와 상기 카드리더 모듈(130)측 공개키를 포함하는 인증서 사본을 복호화하는 기능은 "Dr=P, 또는 Dr(Er(P))=P"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 복호화부(180)가 상기 비밀키를 통해 상기 암호화된 카드정보와 상기 카드리더 모듈(130)측 개인키로 암호화된 상기 메시지 다이제스트와 상기 카드리더 모듈(130)측 공개키를 포함하는 인증서 사본을 복호화하는 알고리즘은, SEED, DES(Data Encryption Standard), Triple-DES, Skipjack, IDEA(International Data Encryption Algorithm) 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 복호화 알고리즘이 이용될 수 있으나, 상기 복호화 알고리즘은 상기 카드리더 모듈(130)에서 사용된 암호화 알고리즘과 매칭되는 것을 특징으로 하며, 특정 복호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
또한, 상기 복호화부(180)는 상기 카드리더 모듈(130)측 개인키로 암호화된 상기 메시지 다이제스트를 상기 카드리더 모듈(130)측 공개키를 통해 복호화함으로써(4230), 상기 카드리더 모듈(130)에서 상기 카드정보로부터 생성하여 전송한 메시지 다이제스트를 추출한다(4235).
여기서, 상기 복호화부(180)의 복호화 기능을 D(Decryption)라고 하고, 상기 카드리더 모듈(130)측 공개키를 t2(terminal side key), 상기 카드리더 모듈(130)측 개인키로 암호화된 메시지 다이제스트를 C(Ciphertext), 및 상기 카드리더 모듈(130)측 공개키로 복호화되는 메시지 다이제스트를 m(Message Digest)라고 하면, 상기 복호화부(180)가 상기 암호화된 메시지 다이제스트를 복호화하는 기능은 "Dt2=m, 또는 Dt2(Es1(r))=m"와 같은 수식으로 표현할 수 있다.
본 발명의 실시 방법에 따르면, 상기 복호화부(180)가 상기 카드리더 모듈(130)측 공개키를 통해 상기 카드리더 모듈(130)에서 카드리더 모듈(130)측 개인키로 암호화된 메시지 다이제스트를 복호화하는 알고리즘은, RSA(Ron Rivest, Adi Shamir, Len Adleman), DSA(Digital Signature Algorithm), DH(Diffie, Hellman), ECC(Elliptic Curve Cryptosystem), KCDSA, ECDSA, ECDH 중 적어도 하나 이상을 포함하여 이루어지는 것이 바람직하며, 이외에도 다양한 형태의 복호화 알고리즘이 이용될 수 있으나, 상기 복호화 알고리즘은 상기 카드리더 모듈(130)에서 사용된 암호화 알고리즘과 매칭되는 것을 특징으로 하며, 특정 복호화 알고리즘에 의해 본 발명이 한정되지 아니한다.
예를들어, 상기 공개키 기반 복호화 알고리즘 중 RSA 복호화 알고리즘을 통해 상기 메시지 다이제스트를 복호화하는 경우, 복호화 과정에서 이용되는 공개된 법(Modulus)을 n, 상기 n의 서로 다른 소인수로 공개되지 않은 소수를 a와 b, 공개된 지수(예컨대, 3 또는 216+)를 e, 공개되지 않은 지수를 d라고 하면, 상기 n은 "n=a*b"를 만족하고, 상기 d는 " de=1 mod (a-1)(b-1)"를 만족하는데, 이 때 상기 복호화부(180)의 복호화 기능은 "P=Dt2=Cd mod n"와 같이 표현할 수 있다.
이후, 상기 복호화부(180)는 상기 수신된 카드정보를 상기 카드리더 모듈(130)와 동일한 일방향 해시함수를 통해 소정의 메시지 다이제스트를 생성한 후(4240), 상기 생성된 메시지 다이제스트와 상기 복호화된 메시지 다이제스트를 비교함으로써(4245), 상기 수신된 카드정보에 대한 유효성을 확인한다.
만약 상기 생성된 메시지 다이제스트와 상기 복호화된 메시지 다이제스트가 일치한다면(4250), 상기 복호화부(180)는 상기 카드정보를 상기 결제 처리부(190)로 제공하는데(4255), 상기 결제 처리부(190)는 상기 복호화된 카드정보와 적어도 하나 이상의 결제처리 정보를 통해 상기 결제승인요청 전문을 통해 요청된 결제처리 절차를 수행한다.
도면43는 본 발명의 실시 방법에 따른 암호화된 카드정보를 이용한 전자결제 기능을 수행하는 호스트 동작 과정을 도시한 도면이다.
보다 상세하게 본 도면43은 상기 도면2에 도시된 POS 단말(100)의 카드리더 모 듈(130)에서 소정의 고객 카드로부터 리딩한 카드정보를 암호화하고, 상기 POS 단말(100)에서 도면33과 같은 과정을 통해 상기 암호화된 카드정보(및/또는 결제수단 정보)를 포함하는 결제승인요청 전문을 생성하여 전송하면, 상기 호스트에서 상기 결제승인요청 전문을 기반으로 소정의 전자결제 기능을 수행하는 바람직한 동작 과정에 대한 것으로서, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면, 본 도43을 참조 및/또는 변형하여 상기 카드리더 모듈(130)에서 암호화된 카드정보를 이용한 다양한 전자결제 과정을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 모든 실시 방법을 포함하며, 본 도면33에 도시된 실시 방법으로 한정되지 아니한다.
도면43을 참조하면, 상기 호스트는 소정의 결제 네트워크를 통해 상기 도면2에 도시된 POS 단말(100)로부터 적어도 하나 이사의 결제승인요청 전문이 수신되는지 주기적으로 확인하는데(4300), 만약 상기 도면2에 도시된 POS 단말(100)의 카드리더 모듈(130)에서 소정의 고객 카드로부터 리딩한 카드정보를 암호화하고, 상기 POS 단말(100)로부터 도면33과 같은 과정을 통해 상기 암호화된 카드정보(및/또는 결제수단 정보)를 포함하는 결제승인요청 전문이 수신된 것이 확인되면(4305), 상기 호스트는 상기 결제승인요청 전문으로부터 상기 암호화된 카드정보(및/또는 결제수단 정보)와 결제금액 정보, POS 단말(100) 정보, 전문생성 시간 정보 등을 포함하는 결제처리 정보를 추출한다(4310).
이후, 상기 호스트는 상기 결제승인요청 전문으로부터 추출된 상기 암호화된 카드정보(및/또는 결제수단 정보)에 대한 복호화 처리를 기능을 수행하는데(4315), 여기서 암호화된 카드정보(및/또는 결제수단 정보)를 복호화하는 과정은 상기 도시된 실시예 중 적어도 하나 이상을 포함하여 이루어지며, 본 도면43은 상기 암호화된 카드정보(및/또는 결제수단 정보)의 복호화 과정에 대한 상세한 설명을 편의상 생략한다.
만약 상기 암호화된 카드정보(및/또는 결제수단 정보)에 대한 복호화가 완료되면(4320), 상기 호스트는 상기 복호화 카드정보와 결제금액 정보, POS 단말(100) 정보, 전문생성 시간 정보 등을 포함하는 결제처리 정보를 통해 상기 결제승인요청 전문을 통해 요청된 결제처리 절차를 수행한다(4325).
본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면, 상기 호스트에서 상기 결제처리 정보를 이용하여 상기 카드정보에 대응하는 결제처리 절차를 수행하는 상세한 과정을 기 숙지하고 있을 것이므로, 이에 대한 상세한 설명은 편의상 생략한다.
만약 상기 결제처리 과정이 완료되면(4330), 상기 호스는 상기 결제처리 결과(예컨대, 결제승인 내역, 또는 결제오류 내역)를 포함하는 소정의 결제처리 내역을 생성하고(4335), 상기 생성된 결제처리 내역을 포함하는 소정의 결제승인 전문을 생성 하여 상기 결제 네트워크를 통해 상기 POS 단말(100)로 전송한다(4340).
이후, 상기 POS 단말(100)은 상기 도면33에 도시된 바와 같은 결제승인 전문 처리 절차를 수행함으로써, 상기 카드리더 모듈(130)을 통해 암호화된 카드정보(및/또는 결제수단 정보)를 통한 결제처리 과정을 완료한다.
본 발명에 따르면, 상기 POS 단말에 구비되는 소정의 카드리더 모듈에 상기 고객 카드로부터 리딩되는 카드정보를 암호화하는 기능을 구비함으로써, 상기 POS 단말에서 상기 고객 카드로부터 리딩된 카드정보를 악용하지 못하도록 방지하는 이점이 있다.
본 발명에 따르면, 상기 POS 단말에서 상기 카드리더 모듈을 통해 암호화된 카드정보를 포함하는 결제승인요청 전문을 생성하여 호스트로 전송하고, 상기 호스트에서 상기 암호화된 카드정보를 복호화하도록 처리함으로써, 상기 결제승인요청 전문 송수신 과정에서 발생하는 보안상 문제점을 해결하는 이점이 있다.

Claims (3)

  1. 고객 카드로부터 결제수단 정보를 리딩하여 호스트에서 복호화될 암호화 키를 통해 암호화하는 카드리더 모듈;
    상기 카드리더 모듈에서 암호화된 결제수단 정보를 포함하는 결제승인요청 전문을 생성하여 호스트로 전송하는 단말;
    상기 암호화된 결제수단 정보를 포함하는 결제승인요청 전문을 수신하고, 상기 결제승인요청 전문에 포함된 상기 암호화된 결제수단 정보를 복호화 하는 호스트 서버;를 구비하여 이루어지는 것을 특징으로 하는 결제 시스템.
  2. 제 1항에 있어서, 상기 카드리더 모듈은,
    상기 고객 카드로부터 결제수단 정보를 리딩하여 검증한 후, 상기 검증된 결제수단 정보를 암호화하는 것을 특징으로 하는 결제 시스템.
  3. 제 1항에 있어서, 상기 카드리더 모듈은,
    복수의 암호화 키를 키 인덱스 별로 분류하여 구비하고, 상기 복수의 암호화 키 중 어느 하나의 암호화 키를 통해 상기 결제수단 정보를 암호화하고, 상기 암호화된 결제수단 정보와 키 인덱스를 상기 단말로 제공하는 것을 특징으로 하는 결제 시스템.
KR1020080005225A 2008-01-17 2008-01-17 결제 시스템 KR20080009777A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080005225A KR20080009777A (ko) 2008-01-17 2008-01-17 결제 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080005225A KR20080009777A (ko) 2008-01-17 2008-01-17 결제 시스템

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020060063687A Division KR20070117420A (ko) 2006-06-08 2006-07-07 결제방법 및 시스템과 이를 위한 프로그램 기록매체

Publications (1)

Publication Number Publication Date
KR20080009777A true KR20080009777A (ko) 2008-01-29

Family

ID=39222020

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080005225A KR20080009777A (ko) 2008-01-17 2008-01-17 결제 시스템

Country Status (1)

Country Link
KR (1) KR20080009777A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015047020A1 (ko) * 2013-09-30 2015-04-02 정혜진 스마트 기기를 이용하여 카드 결제 서비스를 제공하기 위한 시스템 및 그 방법
KR101517914B1 (ko) * 2014-03-31 2015-05-19 한국정보통신주식회사 Pos 시스템 및 그것의 공개키 관리 방법

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015047020A1 (ko) * 2013-09-30 2015-04-02 정혜진 스마트 기기를 이용하여 카드 결제 서비스를 제공하기 위한 시스템 및 그 방법
KR20150036946A (ko) * 2013-09-30 2015-04-08 정혜진 스마트 기기를 이용하여 카드 결제 서비스를 제공하기 위한 시스템 및 그 방법
KR101517914B1 (ko) * 2014-03-31 2015-05-19 한국정보통신주식회사 Pos 시스템 및 그것의 공개키 관리 방법

Similar Documents

Publication Publication Date Title
EP2241051B1 (en) Key delivery system and method
JP2018522353A (ja) サーバベースド支払のための認証システム及び方法
KR20070107990A (ko) 결제처리 방법 및 시스템과 이를 위한 프로그램 기록매체
KR101677803B1 (ko) 카드 리더, 단말기, 중계 서버 및 그를 이용한 결제 정보 처리 방법
KR20070117420A (ko) 결제방법 및 시스템과 이를 위한 프로그램 기록매체
WO2020091722A1 (en) Efficient authentic communication system and method
KR20170004339A (ko) 결제 시스템, 카드 리더기, 결제 단말 장치 및 그를 이용한 카드 정보 처리 방법
KR100840894B1 (ko) 단말장치와 프로그램 기록매체
KR100876091B1 (ko) 근거리 무선 통신을 이용한 분산형 결제용 트랜잭션 포인트 단말장치
EP3766227B1 (en) Techniques for secure channel communications
KR101250387B1 (ko) 결제단말을 이용한 포인트 사용방법과 결제단말
KR20080009777A (ko) 결제 시스템
KR100834582B1 (ko) 결제처리 시스템
KR101168076B1 (ko) 모바일 카드 서비스 방법 및 그 방법을 수행하기 위한 이동 단말기
KR100791269B1 (ko) 정보처리 방법 및 시스템과 이를 위한 프로그램 기록매체
KR20080026140A (ko) 단말장치
KR100832783B1 (ko) 전화기를 이용한 결제처리 시스템
KR100791270B1 (ko) 가맹점 카드단말 관리방법 및 시스템과 가맹점 카드단말관리서버와 카드 단말장치와 기록매체
KR100834583B1 (ko) 결제 대행 처리방법과 이를 위한 프로그램 기록매체
KR101052791B1 (ko) 정보 보안용 포스 단말
KR20070117512A (ko) 전문 처리 방법
KR20090104162A (ko) 브이오아이피 단말을 이용한 홈쇼핑 결제 전문 처리 방법및 시스템과 이를 위한 기록매체
KR20080096639A (ko) 트랜잭션 포인트 단말을 이용한 분산형 결제 방법
KR20090037421A (ko) 디지털 서명 처리방법
KR20090046771A (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