KR102134774B1 - 교통카드 및 교통카드의 트랜잭션 처리 방법 - Google Patents

교통카드 및 교통카드의 트랜잭션 처리 방법 Download PDF

Info

Publication number
KR102134774B1
KR102134774B1 KR1020180114169A KR20180114169A KR102134774B1 KR 102134774 B1 KR102134774 B1 KR 102134774B1 KR 1020180114169 A KR1020180114169 A KR 1020180114169A KR 20180114169 A KR20180114169 A KR 20180114169A KR 102134774 B1 KR102134774 B1 KR 102134774B1
Authority
KR
South Korea
Prior art keywords
transaction data
bit string
card
traffic card
traffic
Prior art date
Application number
KR1020180114169A
Other languages
English (en)
Other versions
KR20200034414A (ko
Inventor
김태진
차성열
박현정
김동진
김현우
조진우
이경철
Original Assignee
주식회사 브랜덤
한국철도공사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 브랜덤, 한국철도공사 filed Critical 주식회사 브랜덤
Priority to KR1020180114169A priority Critical patent/KR102134774B1/ko
Publication of KR20200034414A publication Critical patent/KR20200034414A/ko
Application granted granted Critical
Publication of KR102134774B1 publication Critical patent/KR102134774B1/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/38Payment protocols; Details thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/341Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/356Aspects of software for card payments
    • G06Q50/30
    • 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
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/40Business processes related to the transportation industry

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Finance (AREA)
  • Tourism & Hospitality (AREA)
  • Operations Research (AREA)
  • Health & Medical Sciences (AREA)
  • Economics (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Devices For Checking Fares Or Tickets At Control Points (AREA)

Abstract

교통카드 및 교통카드의 트랜잭션 처리 방법이 개시된다. 개시된 교통카드의 트랜잭션 처리 방법은 교통 단말기로부터 수신한 제1 트랜잭션 데이터의 타입을 식별하고, 제1 트랜잭션 데이터의 타입에 대응하는 비트열 연산 방법으로 제1 트랜잭션 데이터를 정규화 된 제2 트랜잭션 데이터로 변환할 수 있다. 교통카드는 변환된 제2 트랜잭션 데이터에 기초하여 교통카드에 저장된 정보를 관리할 수 있다.

Description

교통카드 및 교통카드의 트랜잭션 처리 방법{A TRAFFIC CARD AND PROCESSING METHOD OF TRANSACTION FOR THE TRAFFIC CARD}
교통카드 및 교통카드의 트랜잭션 처리 방법에 관한 것이다.
전자화폐는 결제 수단으로서의 가치 정보를 플레이트 카드나 휴대용 단말, PC 등에 디지털 데이터 형태로 저장하고 상품이나 서비스의 구매 결제에 사용할 수 있는 지급 수단이다. 정보화 사회에서 전자 화폐는 현금을 대신할 수 있는 새로운 개념의 화폐 수단으로 이용되고 있다.
이중에서, 선불형 전자화폐(선불카드)는 현재 교통카드 분야에 가장 활발하게 적용되고 있다. 교통카드는 버스나 지하철 등과 같은 대중교통을 이용할 때 편리하게 요금을 지불할 수 있도록 해주는 수단으로서 제안된 것이며, 최근에는 톨게이트나 고속도로 휴게소 등에서도 광범위한 활용이 가능하여 실질적인 전자화폐로서 기능하고 있다. 선불카드는 그 충전된 금액의 한도 내에서만 지불이 가능하므로 각지에 설치되어 있는 전자화폐 충전소에서 미리 현금이나 신용카드를 통해 금액을 충전해 두어야 한다.
전자 화폐의 활용 분야 중 대표적인 예로 대중 교통 사용 요금을 결제하기 위한 교통카드가 있다. 교통카드의 결제 방식으로는 신용을 기반으로 한 후불 방식과, 미리 사용 한도 금액을 충전한 후 한도 금액 안에서 사용하는 선불 방식이 있다.
교통카드는 교통 단말기와의 인터랙션을 통해 트랜잭션 데이터를 송수신 한다. 그런데, 교통 단말기가 송신하는 트랜잭션 데이터의 타입이 통일되어 있지 않아 교통카드가 트랜잭션 데이터를 해석하지 못하는 경우가 발생할 수 있다.
적어도 하나의 실시예에 따르면, 거래 지역이나 거래 대상 등에 관계없이 트랜잭션 데이터의 정보를 유효하게 추출할 수 있는 교통카드 및 교통카드의 트랜잭션 처리 방법이 개시된다.
적어도 하나의 실시예에 따르면, 추출한 트랜잭션 데이터의 정보에 기반하여 내부에 저장된 정보를 적절하게 갱신할 수 있는 교통카드 및 교통카드의 트랜잭션 처리 방법이 개시된다.
일 측면에 따르면, 교통카드의 트랜잭션 처리 방법이 제공된다.
트랜잭션 처리 방법은 교통 단말기와의 인터랙션에 의해 상기 교통 단말기로부터 제1 트랜잭션 데이터를 수신하는 단계; 상기 제1 트랜잭션 데이터의 타입을 식별하는 단계; 미리 정해진 복수의 비트열 연산 방법 가운데 상기 제1 트랜잭션 데이터의 타입에 대응하는 비트열 연산 방법을 결정하는 단계; 상기 결정된 비트열 연산 방법을 이용하여 상기 제1 트랜잭션 데이터를 정규화 된 제2 트랜잭션 데이터로 변환하는 단계; 및 상기 제2 트랜잭션 데이터에 기초하여 상기 교통카드에 저장된 정보를 관리하는 단계;를 포함한다.
상기 제2 트랜잭션 데이터는 상기 인터랙션이 발생한 시점에 관한 정보를 포함하고, 상기 교통카드에 내장된 정보는 상기 교통카드의 한도 금액 정보를 포함하며, 상기 교통카드에 내장된 정보를 관리하는 단계는, 상기 제2 트랜잭션 데이터로부터 획득된 상기 인터랙션의 발생 시점 정보에 기초하여 상기 한도 금액의 추가 여부를 판단할 수 있다.
상기 인터랙션이 발생하기 전에 마지막으로 발생한 인터랙션의 발생 시점과, 상기 인터랙션의 발생 시점을 비교하고, 비교 결과에 기초하여 상기 한도 금액의 추가 여부를 판단할 수 있다.
상기 결정된 비트열 연산 방법은, 상기 제1 트랜잭션 데이터의 비트열과 미리 정해진 제1 비트열 사이의 AND 연산 및 상기 제1 트랜잭션 데이터의 비트열과 미리 정해진 제2 비트열 사이의 AND 연산 중 적어도 하나의 연산을 포함할 수 있다.
상기 결정된 비트열 연산 방법은, 오른쪽 쉬프트 연산, 왼쪽 쉬프트 연산, OR 연산 및 덧셈과 곱셈을 포함하는 이항연산자 세트 중 적어도 하나의 연산을 포함할 수 있다.
상기 제1 비트열의 크기 및 상기 제2 비트열의 크기는 상기 제1 트랜잭션 데이터의 비트열의 크기보다 작을 수 있다.
다른 측면에 있어서, 트랜잭션의 처리를 수행하는 교통카드가 제공된다.
교통카드는 교통 단말기와의 통신을 수행하는 통신부; 프로세서; 및 상기 프로세서를 통해 실행되는 적어도 하나의 명령이 저장된 메모리를 포함하며, 상기 적어도 하나의 명령은, 상기 교통 단말기와의 인터랙션에 의해 상기 교통 단말기로부터 제1 트랜잭션 데이터를 수신하고, 상기 제1 트랜잭션 데이터의 타입을 식별하고, 미리 정해진 복수의 비트열 연산 방법 가운데 상기 제1 트랜잭션 데이터의 타입에 대응하는 비트열 연산 방법을 결정하고, 상기 결정된 비트열 연산 방법을 이용하여 상기 제1 트랜잭션 데이터를 정규화 된 제2 트랜잭션 데이터로 변환하고, 상기 제2 트랜잭션 데이터에 기초하여 상기 교통카드에 저장된 정보를 관리하도록 수행될 수 있다.
상기 제2 트랜잭션 데이터는 상기 인터랙션이 발생한 시점에 관한 정보를 포함하고, 상기 교통카드에 내장된 정보는 상기 교통카드의 한도 금액 정보를 포함하며, 상기 적어도 하나의 명령은, 상기 제2 트랜잭션 데이터로부터 획득된 상기 인터랙션의 발생 시점 정보에 기초하여 상기 한도 금액의 추가 여부를 판단하도록 수행될 수 있다.
상기 적어도 하나의 명령은, 상기 인터랙션이 발생하기 전에 마지막으로 발생한 인터랙션의 발생 시점과, 상기 발생 시점을 비교하고, 비교 결과에 기초하여 상기 한도 금액의 추가 여부를 판단하도록 수행될 수 있다.
상기 결정된 비트열 연산 방법은, 상기 제1 트랜잭션 데이터의 비트열과 미리 정해진 제1 비트열 사이의 AND 연산 및 상기 제1 트랜잭션 데이터의 비트열과 미리 정해진 제2 비트열 사이의 AND 연산 중 적어도 하나의 연산을 포함할 수 있다.
상기 결정된 비트열 연산 방법은, 오른쪽 쉬프트 연산, 왼쪽 쉬프트 연산, OR 연산 및 덧셈과 곱셈을 포함하는 이항연산자 세트 중 적어도 하나의 연산을 포함할 수 있다.
상기 제1 비트열의 크기 및 상기 제2 비트열의 크기는 상기 제1 트랜잭션 데이터의 비트열의 크기보다 작을 수 있다.
또 다른 측면에 있어서, 상기 교통카드의 트랜잭션 처리 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체가 제공된다.
개시된 실시예들에 따르면, 교통카드가 교통 단말기로부터 수신한 트랜잭션 데이터를 정규화 된 트랜잭션 데이터로 변환할 수 있다. 이를 통해 교통카드가 트랜잭션 데이터로부터 필요한 정보를 교통 단말기가 제공하는 트랜잭션 데이터의 타입에 관계없이 트랜잭션 데이터에 포함된 정보를 추출할 수 있다. 또한 교통카드가 정규화 된 트랜잭션 데이터로부터 추출한 인터랙션 발생 시점 정보에 기초하여 한도 금액 정보를 갱신함으로써, 사용자가 직접 한도 금액을 충전해야 하는 불편함을 해소할 수 있다.
도 1은 예시적인 실시예에 따른 대중 교통 시스템을 나타낸 개념도이다.
도 2는 대중 교통 시스템에서 교통카드의 발급 과정을 나타낸 흐름도이다.
도 3은 대중 교통 시스템에서 이용 요금의 정산 과정을 나타낸 흐름도이다.
도 4는 교통카드 및 교통 단말기를 나타낸 개념도이다.
도 5는 도 4에서 나타낸 교통카드의 프로세서에 의해 수행되는 기능들을 블록 단위로 나타낸 개념도이다.
도 6은 예시적인 실시예에 따른 교통카드의 트랜잭션 처리 방법을 나타낸 흐름도이다.
도 7은 교통카드가 비트열 연산 방법을 결정하고, 결정된 비트열 연산 방법을 이용하여 정규화된 제1 트랜잭션 데이터를 제2 트랜잭션 데이터로 변환하여 특정 정보를 추출하는 것을 예시적으로 나타낸 개념도이다.
도 8은 교통카드가 인터랙션 발생 시점 정보에 기초하여 한도 금액 정보의 갱신 여부를 판단하는 것을 예시적으로 나타낸 개념도이다.
도 9는 교통카드가 인터랙션 발생 시점 정보에 기초하여 한도 금액 정보의 갱신 여부를 판단하는 것을 예시적으로 나타낸 개념도이다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 설명되는 실시 예들을 참조하면 명확해질 것이다. 그러나 본 발명은 아래에서 제시되는 실시 예들로 한정되는 것이 아니라, 서로 다른 다양한 형태로 구현될 수 있고, 본 발명의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 아래에 제시되는 실시 예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
본 출원에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다. 제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
도 1은 예시적인 실시예에 따른 대중 교통 시스템을 나타낸 개념도이다.
도 1을 참조하면, 대중 교통 시스템은 교통카드(100), 교통 단말기(200), 교통 서비스 제공사 서버(400), 교통카드 발행사 서버(500) 및 제휴 금융사 서버(600)를 포함할 수 있다. 교통 단말기(200), 교통 서비스 제공사 서버(400), 교통카드 발행사 서버(500) 및 제휴 금융사 서버(600)는 네트워크(300)를 통해 서로 정보를 송수신 할 수 있다.
교통카드(100)는 IC칩이 내장된 IC 카드, RF 메모리 카드 등으로 구현될 수 있다. 교통카드(100)는 접촉 방식 또는 비접촉 방식에 의해 교통 단말기(200)와 인터랙션할 수 있다. 다른 예로 교통카드(100)는 접촉 및 비접촉 방식이 혼합된 콤비 방식이나 하이브리드 방식에 의해 교통 단말기(200)와 인터랙션할 수 있다. 교통카드(100)는 인터랙션에 의해 교통 단말기(200)와 트랜잭션 데이터를 주고 받을 수 있다. 교통카드(100)에는 사용자가 대중 교통을 이용하는 과정에 필요한 전자 거래 기능을 수행할 수 있는 애플릿이 탑재되어 있을 수 있다.
교통 단말기(200)는 버스, 택시와 같은 대중 교통 수단이나 지하철역, 기차역 등에 구비된 장치일 수 있다. 교통 단말기(200) 내부에는 지급보안응용모듈(Secure Application Module; SAM)이 내장되어 있을 수 있다. 교통 단말기(200)에 내장된 지급보안응용듈은 교통카드의 유효성을 검증하고, 교통카드와의 통신 보안을 유지하는 기능을 수행할 수 있다.
교통 단말기(200)는 접촉 방식, 비접촉 방식, 콤비 방식 및 하이브리드 방식 중 적어도 하나에 의해 교통카드(100)와 인터랙션할 수 있다. 교통 단말기(200)는 인터랙션 과정에서 트랜잭션 데이터를 획득할 수 있다. 교통 단말기(200)는 획득한 트랜잭션 데이터로부터 필요한 정보를 추출하고, 교통 서비스 제공사 서버(400)와 서로 데이터를 송수신할 수 있다. 교통 단말기(200)는 네트워크(300)를 통해 교통 서비스 제공사 서버(400)와 통신할 수 있다.
네트워크(300)는 서버들(400, 500, 600)과 교통 단말기(200)를 연결하는 망(Network)으로서 유선 네트워크, 무선 네트워크 등을 포함한다. 네트워크(300)는 LAN(Local Area Network), WAN(Wide Area Network)등의 폐쇄형 네트워크 또는 인터넷(Internet)과 같은 개방형 네트워크일 수 있다. 인터넷은 TCP/IP 프로토콜 및 그 상위계층에 존재하는 여러 서비스, 즉 HTTP(HyperText Transfer Protocol), Telnet, FTP(File Transfer Protocol), DNS(Domain Name System), SMTP(Simple Mail Transfer Protocol), SNMP(Simple Network Management Protocol), NFS(Network File Service), NIS(Network Information Service)를 제공하는 전 세계적인 개방형 컴퓨터 네트워크 구조를 의미한다.
교통 서비스 제공사 서버(400)는 대중 교통 서비스를 제공하는 회사 또는 기업이 운영하는 서버일 수 있다. 교통 서비스 제공사 서버(400)는 교통카드 발행사 서버(500)와의 통신에 의해 교통카드(100)를 사용하는 사용자 리스트에 대한 정보를 저장 및 관리할 수 있다. 교통 서비스 제공사 서버(400)는 교통 단말기(200)로부터 획득한 정보에 기초해 교통카드(100)의 사용자에 대한 과금 정보를 산출하고, 교통카드 발행사 서버(500)에게 이용 요금을 청구할 수 있다.
교통카드 발행사 서버(500)는 교통카드(100)의 발급 결과에 따른 업데이트 정보를 교통 서비스 제공사 서버(400)에게 전송할 수 있다. 교통카드 발행사 서버(500)는 교통 서비스 제공사 서버(400)로부터 수신한 이용 요금 청구에 대응하여 이용 요금 지불에 필요한 작업을 수행할 수 있다. 교통카드 발행사 서버(500)는 제휴 금융사 서버(600)에게 교통카드 발행사가 지불한 이용 요금에 대한 지불 청구를 할 수 있다.
제휴 금융사 서버(600)는 교통카드 발행사 서버(500)로부터 이용 요금에 대한 지불 청구를 수신하고, 이용 요금 지급에 필요한 작업을 수행할 수 있다. 제휴 금융사 서버(600)는 이용 요금 지급 처리 결과를 저장하고, 저장된 처리 결과에 기초하여 교통카드(100)의 사용자에게 비용 청구를 하기 위해 필요한 작업을 수행할 수 있다.
도 2는 대중 교통 시스템에서 교통카드(100)의 발급 과정을 나타낸 흐름도이다.
도 2를 참조하면, S110 단계에서 제휴 금융사 서버(600)는 교통카드 발행사 서버(500)로부터 교통카드 발행사가 제공하는 애플릿을 다운로드 할 수 있다. 애플릿은 교통카드(100)에 의해 실행되는 응용 소프트웨어를 포함할 수 있다. 제휴 금융사 서버(600)는 다운로드 한 애플릿을 발급 예정인 교통카드(100)에 탑재할 수 있다. 교통카드(100)는 애플릿을 구동함으로써 후술하는 트랜잭션 처리에 필요한 연산 및 교통 단말기(200)와의 통신을 수행할 수 있다.
S120단계에서, 교통카드 발행사 서버(500)는 카드전문과 인증키(발급 SAM)를 전송할 수 있다. 제휴 금융사 서버(600)는 교통카드 발행사 서버(500)로부터 카드전문 및 인증키를 획득할 수 있다.
S130단계에서, 제휴 금융사 서버(600)는 카드전문 및 인증키를 이용하여 교통카드(100)를 발급할 수 있다. 제휴 금융사 서버(600)는 카드전문에 기초하여 교통카드(100)의 식별정보 등을 생성하고 교통카드(100)에 저장할 수 있다. 제휴 금융사 서버(600)는 인증키를 이용하여 교통카드(100)의 유효성을 검증하기 위한 정보 및 교통카드(100)의 데이터 암호화에 필요한 정보를 생성할 수 있다. 제휴 금융사 서버(600)는 발급하려는 교통카드(100)의 식별 정보를 사용자의 신용카드 또는 체크카드의 식별 정보에 매핑하여 관리할 수 있다.
S140단계에서, 제휴 금융사 서버(600)는 교통카드(100)의 발급 정보를 교통카드 발행사 서버(500)에게 전송할 수 있다.
S150단계에서, 교통카드 발행사 서버(500)는 교통카드(100)의 발급 정보를 확인하고, 발급된 교통카드(100)가 이용 가능 하도록 교통 서비스 제공사 서버(400)에게 PL(Positive List) 정보를 전송할 수 있다. PL정보는 신규 발급된 교통카드(100)의 식별 정보, 교통카드(100)의 유효성 검증을 위한 정보, 교통카드(100)가 전송하는 암호화된 데이터를 복호화 하기 위한 정보 등을 포함할 수 있다.
도 2를 참조하여 설명한 실시예는 예시적인 것에 불과할 뿐 본 발명의 실시예를 제한하는 것은 아니다. 예를 들어, 교통카드(100)의 발급 과정에서 도 2에 표시하지 않은 과정이 더 포함되거나 도 2에 표시한 과정들 중 일부가 생략되거나 변경될 수 있다.
도 3은 대중 교통 시스템에서 이용 요금의 정산 과정을 나타낸 흐름도이다.
도 3을 참조하면, S210단계에서, 교통 서비스 제공사 서버(400)는 사용자가 교통카드(100)를 이용함에 따라 발생한 이용 요금 내역을 저장하고, 이용 요금을 교통카드 발행사 서버(500)에게 청구할 수 있다.
S220단계에서, 교통카드 발행사 서버(500)는 이용 요금의 청구를 수신하고, 교통 서비스 제공사에게 이용 요금을 지불하기 위한 작업을 수행할 수 있다.
S230단계에서, 교통카드 발행사 서버(500)는 교통카드 발행사 서버(500)가 지불한 이용 요금을 제휴 금융사 서버(600)에 청구할 수 있다.
S240단계에서, 제휴 금융사 서버(600)는 이용 요금의 청구를 수신하고, 교통카드 발행사에게 이용 요금을 지불하기 위한 작업을 수행할 수 있다.
도 3을 참조하여 설명한 실시예는 예시적인 것에 불과할 뿐 본 발명의 실시예를 제한하는 것은 아니다. 예를 들어, 이용 요금의 청구 및 지불 과정에서 도 3에 표시하지 않은 과정이 더 포함되거나 도 3에 표시한 과정들 중 일부가 생략되거나 변경될 수 있다.
도 4는 교통카드(100) 및 교통 단말기(200)를 나타낸 개념도이다.
도 4를 참조하면, 교통카드(100)는 메모리(120), 프로세서(110) 및 통신부(130)를 포함할 수 있다.
프로세서(110)는 메모리(120)에 저장된 프로그램 명령(program command)을 실행할 수 있다. 프로세서(110)는 중앙 처리 장치(central processing unit; CPU), 또는 본 발명의 실시예에 따른 방법들이 수행되는 전용의 프로세서를 의미할 수 있다. 메모리(120)는 저장 매체 및/또는 비휘발성 저장 매체로 구성될 수 있다. 예를 들어, 메모리(120)는 EEPROMElectrically Erasable Programmable Read-Only Memory) 및/또는 RAM(random access memory)으로 구성될 수 있다. 통신부(130)는 NFC(Near Field communication)칩 또는 RF(Radio frequency) 코일 등을 포함할 수 있다. 통신부(130)는 프로세서(110)의 제어에 의해 교통 단말기(200)와 근거리 무선 통신을 수행할 수 있다.
도 4를 참조하여 설명한 내용은 예시적인 실시예에 불과할 뿐 이에 제한되는 것은 아니다. 예를 들어, 교통카드(100)는 물리적으로 또는 논리적으로 분리된 복수 개의 프로세서들을 포함할 수 있다. 또한, 메모리(120)도 물리적으로 또는 논리적으로 분리된 복수 개의 구성들을 포함할 수 있다. 또한, 교통카드(100)는 소형 배터리, 별도의 보안 요소와 같은 구성을 더 포함할 수도 있다.
도 5는 도 4에서 나타낸 교통카드(100)의 프로세서(110)에 의해 수행되는 기능들을 블록 단위로 나타낸 개념도이다.
도 5에서 나타낸 프로세서(110)의 구성은 프로세서(110)에 의해 수행되는 기능들을 블록 단위로 나타낸 것이며, 블록들은 물리적으로나 논리적으로 서로 엄격히 구분되지 않을 수 있다.
도 5를 참조하면, 제어부(119)는 애플릿 구동을 위해 필요한 작업들을 수행할 수 있다. 제어부(119)는 애플릿 구동 과정에서 다른 구성 요소들에게 필요한 명령 및 정보를 전달할 수 있다. 제어부(119)는 교통카드(100)의 상태 정보 및 교통카드(100)의 유효기간 정보 등을 관리할 수 있다.
거래부(118)는 교통카드(100)와 교통 단말기(200) 사이의 인터랙션에 의해 발생하는 거래 정보를 관리할 수 있다. 거래부(118)는 사용자의 승차 정보, 환승 정보, 하차 정보 등을 관리할 수 있다. 거래부(118)는 교통카드(100)와 교통 단말기(200)가 인터랙션 하는 과정에서 교통 단말기(200)에 대해 교통카드(100)를 인증하기 위한 정보 및 거래에 의한 금액 차감 정보를 생성하고 관리할 수 있다. 거래부(118)는 통신부(130)를 통해 교통 단말기(200)가 전송하는 트랜잭션 데이터를 수신할 수 있다. 거래부(118)는 통신부(130)를 통해 교통카드(100)의 트랜잭션 데이터를 교통 단말기(200)에게 전송할 수 있다.
트랜잭션 데이터 변환부(114)는 거래부(118)로부터 교통 단말기(200)의 제1 트랜잭션 데이터를 수신할 수 있다. 트랜잭션 데이터 변환부(114)는 제1 트랜잭션 데이터의 타입을 결정할 수 있다. 트랜잭션 데이터 변환부(114)는 확인된 제1 트랜잭션 데이터의 타입에 대응하는 연산 방법을 결정하고, 결정된 연산 방법으로 제1 트랜잭션 데이터를 정규화 된 제2 트랜잭션 데이터로 변환할 수 있다. 예를 들어, 사용자가 대중 교통 서비스를 이용하는 지역 별로 교통 단말기(200)의 제1 트랜잭션 데이터 타입이 다르더라도 트랜잭션 데이터 변환부(114)는 제1 트랜잭션 데이터를 정규화 된 제2 트랜잭션 데이터로 변환할 수 있다. 트랜잭션 데이터 변환부(114)는 정규화 된 제2 트랜잭션 데이터를 이용하여 제2 트랜잭션 데이터에 포함된 정보를 추출할 수 있다. 예를 들어, 트랜잭션 데이터 변환부(114)는 제2 트랜잭션 데이터로부터 인터랙션이 발생한 시점에 관한 정보를 추출할 수 있다. 인터랙션이 발생한 시점에 관한 정보는 인터랙션이 발생한 연, 월, 일에 대한 정보를 포함할 수 있다.
잔액 관리부(116)는 교통카드(100)의 한도 금액 정보를 관리할 수 있다. 잔액 관리부(116)는 한도 금액이 미리 정해진 기준 액수보다 떨어지면 한도 금액 생성부(112)에게 한도 금액의 재설정을 요청할 수 있다.
한도 금액 생성부(112)는 한도 금액의 재설정 여부를 판단하고, 재설정이 필요한 경우, 재설정에 필요한 작업을 수행할 수 있다. 한도 금액 생성부(112)는 잔액 관리부(116)가 한도 금액 재설정을 요청한 경우 한도 금액을 재설정할 수 있다. 한도 금액 생성부(112)는 트랜잭션 데이터 변환부(114)가 추출한 인터랙션의 발생 시점 정보에 기초하여 한도 금액의 재설정 여부를 판단할 수도 있다. 한도 금액 생성부(112)는 인터랙션이 발생한 날짜와, 과거에 마지막으로 인터랙션이 발생한 날짜를 비교하여 두 날짜의 월(month)이 같은 지 여부 또는 두 날짜의 일(day)이 같은 지 여부에 따라 한도 금액의 재설정 여부를 판단할 수 있다. 다른 예로, 한도 금액 생성부(112)는 인터랙션이 발생한 날짜와 같은 달에 한도 금액의 재설정이 있었는지 여부 또는 인터랙션이 발생한 날짜와 같은 일에 한도 금액의 재설정이 있었는지 여부에 따라 한도 금액의 재설정 여부를 판단할 수 있다. 상술한 예에서는 월과 일을 고려 대상으로 하는 것을 설명했지만, 실시예가 이에 제한되는 것은 아니다. 예를 들어, 인터랙션이 발생한 날짜의 연도(year)도 한도 금액 재설정 여부를 판단하기 위한 고려 대상이 될 수도 있다.
도 6은 예시적인 실시예에 따른 교통카드(100)의 트랜잭션 처리 방법을 나타낸 흐름도이다.
도 6을 참조하면, 교통카드(100)의 트랜잭션 처리 방법은 교통 단말기(200)와의 인터랙션에 의해 교통 단말기(200)로부터 제1 트랜잭션 데이터를 수신하는 단계(S310), 제1 트랜잭션 데이터의 타입을 식별하는 단계(S320), 미리 정해진 복수의 비트열 연산 방법 가운데 제1 트랜잭션 데이터의 타입에 대응하는 비트열 연산 방법을 결정하는 단계(S330), 결정된 비트열 연산 방법을 이용하여 상기 제1 트랜잭션 데이터를 정규화 된 제2 트랜잭션 데이터로 변환하는 단계(S340) 및 제2 트랜잭션 데이터에 기초하여 교통카드(100)에 저장된 정보를 관리하는 단계(S350)를 포함할 수 있다.
S310단계에서, 교통카드(100)는 접촉 방식 또는 비접촉 방식에 의해 교통 단말기(200)와 인터랙션 할 수 있다. 인터랙션 과정에서 교통카드(100)는 교통 단말기(200)와 트랜잭션 데이터를 주고 받을 수 있다. 교통카드(100)는 교통 단말기(200)로부터 제1 트랜잭션 데이터를 수신할 수 있다. 제1 트랜잭션 데이터는 인터랙션의 발생 시점, 사용자의 승차, 환승, 하차, 운임 요금 등에 관한 정보를 포함할 수 있다. 제1 트랜잭션 데이터는 사용자가 이용하는 대중 교통의 종류, 대중 교통 서비스를 제공하는 회사의 정보, 거래의 승인 여부에 관한 정보 등을 더 포함할 수도 있다.
제1 트랜잭션 데이터의 타입은 교통 단말기(200)의 기기 종류, 교통 단말기(200)가 운용되는 지역, 교통 단말기(200)를 관리하는 회사 등에 따라 다를 수 있다.
S320 단계에서, 교통카드(100)의 프로세서(110)는 제1 트랜잭션 데이터의 타입을 식별할 수 있다. 교통카드(100)는 제1 트랜잭션 데이터의 타입을 식별할 수 있다. 예를 들어, 교통카드(100)는 제1 트랜잭션 데이터에 포함된 교통 단말기(200)의 기기 정보, 교통 단말기(200)가 운용되는 지역 정보 및 교통 단말기(200)를 관리하는 회사 정보 중 적어도 하나에 기초하여 제1 트랜잭션 데이터의 타입을 식별할 수 있다. 다른 예로, 교통카드(100)는 제1 트랜잭션 데이터의 포맷에 기초하여 제1 트랜잭션 데이터의 타입을 식별할 수 있다. 교통카드(100)는 제1 트랜잭션 데이터의 비트열 크기 및 제1 트랜잭션 데이터의 비트열에서 특정 정보가 추출되는 위치 중 적어도 하나에 기초하여 제1 트랜잭션 데이터의 타입을 식별할 수 있다. 제1 트랜잭션 데이터의 타입은 BCD 타입, 티머니(Tmoney) 타입, 마이비 타입 중 어느 하나일 수 있다. 상술한 예는 예시적인 것에 불과할 뿐 실시예를 제한하는 것은 아니다.
S330 단계에서, 교통카드(100)는 식별된 타입에 대응하는 비트열 연산 방법을 결정할 수 있다. 교통카드(100)는 미리 정해진 복수 개의 비트열 연산 방법들 중 어느 하나를 선택할 수 있다. 교통카드(100)는 결정된 비트열 연산 방법으로 제1 트랜잭션 데이터의 비트열로부터 특정 정보를 추출할 수 있다. 특정 정보는 인터랙션이 발생한 시점 정보를 포함할 수 있다. 특정 정보는 승차, 환승, 하차 정보와 이용 요금 정보 등을 더 포함할 수도 있다.
특정 경우에 S330 단계는 생략될 수도 있다. 예를 들어, 승차 처리가 된 후 하차 처리 과정에서 인터랙션이 발생한 경우 교통카드(100)는 하차 처리 과정의 인터랙션에 대해서는 트랜잭션 데이터의 타입을 확인하지 않고 승차 처리에서 확인된 타입 정보를 이용하여 비트열 연산 방법을 결정할 수 있다.
S340 단계에서, 교통카드(100)는 결정된 비트열 연산 방법을 이용하여 제1 트랜잭션 데이터를 정규화 된 제2 트랜잭션 데이터로 변환할 수 있다. 변환 과정을 통해 교통카드(100)는 제1 트랜잭션 데이터의 타입에 관계없이 필요한 정보를 추출할 수 있다. 교통카드(100)는 정규화 된 제2 트랜잭션 데이터로부터 인터랙션 발생 날짜의 연, 월, 일 정보, 사용자의 승차, 하차, 환승 정보 및 이용 요금 정보 중 적어도 하나를 추출할 수 있다.
도 7은 교통카드(100)가 비트열 연산 방법을 결정하고, 결정된 비트열 연산 방법을 이용하여 정규화된 제1 트랜잭션 데이터를 제2 트랜잭션 데이터로 변환하여 특정 정보를 추출하는 것을 예시적으로 나타낸 개념도이다.
도 7을 참조하면, 제1 트랜잭션 데이터의 타입에 따라 서로 다른 비트열 연산 방법이 이용될 수 있다. 예를 들어, 제1 트랜잭션 데이터의 타입이 제1 타입인 경우, 제1 비트열 연산 방법이 이용될 수 있다. 제1 타입은 BCD 타입일 수 있다.
제1 비트열 연산 방법은 제1 트랜잭션 데이터의 비트열과 미리 정해진 제1 비트열 사이의 AND 연산 과정 및 제1 트랜잭션 데이터의 비트열과 미리 정해진 제2 비트열 사이의 AND 연산 과정을 포함할 수 있다. 제1 비트열 및 제2 비트열은 제1 트랜잭션 데이터의 비트열보다 작을 수 있다. 따라서, 교통카드(100)는 AND 연산에 의해 제1 트랜잭션 데이터의 비트열에서 특정 정보(ex. 인터랙션 발생 날짜의 연, 월, 일 정보 등)가 포함된 구간을 선택적으로 추출할 수 있다.
제1 비트열 연산 방법은 제1 트랜잭션 데이터의 비트열과 제2 비트열 사이의 AND 연산 결과에 대한 오른쪽 쉬프트 연산 과정을 포함할 수 있다. 오른쪽 쉬프트 연산에 의해 AND 연산 결과의 비트열 크기가 줄어들 수 있다. 제1 비트열 연산 방법은 상술한 오른쪽 쉬프트 연산 결과에 대해 미리 정해진 수를 곱하고 곱한 결과를 제1 트랜잭션 데이터의 비트열과 제1 비트열의 AND 연산 결과와 더하는 연산 과정을 포함할 수 있다. 덧셈 연산에 의해 인터랙션 발생 날짜의 연, 월, 일 중 어느 하나에 대한 정보가 결정될 수 있다.
제1 비트열 연산 방법은 제1 트랜잭션 데이터가 저장된 메모리 주소에 미리 정해진 값을 더한 메모리 주소에 저장된 비트열을 추출하고 추출된 비트열과 제1 비트열 사이의 AND 연산을 하는 과정을 포함할 수 있다. 제1 비트열 연산 방법은 제1 트랜잭션 데이터가 저장된 메모리 주소에 미리 정해진 값을 더한 메모리 주소에 저장된 비트열을 추출하고 추출된 비트열과 제2 비트열 사이의 AND 연산을 하는 과정을 포함할 수 있다.
제1 비트열 연산 방법은 추출된 비트열과 제2 비트열 사이의 AND 연산 결과에 대한 오른쪽 쉬프트 연산 과정을 포함할 수 있다. 오른쪽 쉬프트 연산에 의해 AND 연산 결과의 비트열 크기가 줄어들 수 있다. 제1 비트열 연산 방법은 상술한 오른쪽 쉬프트 연산 결과에 대해 미리 정해진 수를 곱하고 곱한 결과를 추출된 비트열과 제1 비트열의 AND 연산 결과와 더하는 연산 과정을 포함할 수 있다. 덧셈 연산에 의해 인터랙션 발생 날짜의 연, 월, 일 중 어느 하나에 대한 정보가 결정될 수 있다.
제1 트랜잭션 데이터의 타입이 제2 타입인 경우, 제2 비트열 연산 방법이 이용될 수 있다. 제2 타입은 티머니 타입일 수 있다.
제2 비트열 연산 방법은 제1 트랜잭션 데이터의 비트열에 대한 오른쪽 쉬프트 연산 과정을 포함할 수 있다. 오른쪽 쉬프트 연산에 의해 비트열의 크기가 줄어들고 비트열에서 특정 구간의 정보가 추출될 수 있다. 오른쪽 쉬프트 연산에 의해 인터랙션 발생 날짜의 연, 월, 일 중 어느 하나에 대한 정보가 결정될 수 있다.
제2 비트열 연산 방법은 제1 트랜잭션 데이터의 비트열과 미리 정해진 제3 비트열 사이의 AND 연산 과정을 포함할 수 있다. 제2 비트열 연산 방법은 제1 트랜잭션 데이터의 비트열과 제3 비트열 사이의 AND 연산 결과에 대해 왼쪽 쉬프트 연산 과정을 포함할 수 있다. 왼쪽 쉬프트 연산에 의해 비트열의 크기가 증가되어 비트열에서 특정 정보를 추출하는 것이 용이해질 수 있다.
제2 비트열 연산 방법은 제1 트랜잭션 데이터가 저장된 주소에 미리 정해진 값을 더한 메모리 주소에 저장된 비트열을 추출하고 추출된 비트열과 미리 정해진 제4 비트열 사이의 AND 연산을 하는 과정을 포함할 수 있다. 제2 비트열 연산 방법은 추출된 비트열과 제4 비트열 사이의 AND 연산 결과에 대한 오른쪽 쉬프트 연산 과정을 더 포함할 수 있다.
제2 비트열 연산 방법은 제1 트랜잭션 데이터의 비트열과 제3 비트열 사이의 AND 연산 결과에 대한 왼쪽 쉬프트 연산 결과 및 추출된 비트열과 제4 비트열 사이의 AND 연산 결과에 대한 오른쪽 쉬프트 연산 결과 사이의 OR 연산 과정을 더 포함할 수 있다. OR 연산에 의해 인터랙션 발생 날짜의 연, 월, 일 중 어느 하나에 대한 정보가 결정될 수 있다.
상술한 제3 비트열의 크기 및 제4 비트열의 크기는 제1 트랜잭션 데이터의 비트열의 크기보다 작을 수 있다.
제1 트랜잭션 데이터의 타입이 제3 타입인 경우, 제3 비트열 연산 방법이 이용될 수 있다. 제3 타입은 마이비 타입일 수 있다.
제3 비트열 연산 방법은 제1 트랜잭션 데이터의 비트열에 대한 오른쪽 쉬프트 연산 및 오른쪽 쉬프트 연산 결과와 미리 정해진 제5 비트열 사이의 AND 연산 과정을 더 포함할 수 있다. 또한, AND 연산 결과를 미리 정해진 상수와 더하는 연산 과정을 포함할 수 있다. 덧셈 연산에 의해 인터랙션 발생 날짜의 연, 월, 일 중 어느 하나에 대한 정보가 추출될 수 있다.
제3 비트열 연산 방법은 제1 트랜잭션 데이터의 비트열과 미리 정해진 제6 비트열 사이의 AND 연산 과정을 포함할 수 있다. AND 연산 결과에 의해 인터랙션 발생 날짜의 연, 월, 일 중 어느 하나에 대한 정보가 추출될 수 있다. 상술한 제5 비트열의 크기 및 제6 비트열의 크기는 제1 트랜잭션 데이터의 비트열의 크기보다 작을 수 있다.
도 7에서는 제1 트랜잭션 데이터의 타입이 세 가지인 경우를 예시적으로 설명했지만, 실시예가 이에 제한되는 것은 아니다. 예를 들어, 제1 트랜잭션 데이터의 타입은 두 개이거나 네 개 이상일 수도 있다. 도 7을 참조하여 설명한 제1 내지 제3 비트열 연산 방법 또한 예시적인 것에 불과할 뿐이며, 연산 방법에서 특정 과정이 생략되거나 추가, 변경될 수도 있다. 그리고 도 7을 참조하여서는 인터랙션 발생 날짜의 연, 월, 일 정보를 추출하는 것을 예시적으로 설명했으나 다른 정보가 추출될 수도 있다. 예를 들어, 사용자의 승차, 하차, 환승 정보 및 이용 요금 정보 등이 추출될 수도 있다.
다시 도 6을 참조하면, S350 단계에서, 교통카드(100)는 교통카드(100)에 저장된 정보를 관리할 수 있다. 예를 들어, 인터랙션에 의해 거래가 승인된 경우, 교통카드(100)는 이용 요금만큼 한도 금액을 차감하여 한도 금액 정보를 갱신할 수 있다. 교통카드(100)는 차감된 한도 금액이 미리 정해진 기준 액수보다 작은 경우, 한도 금액을 재설정할 수 있다. 예를 들어, 교통카드(100)는 한도 금액이 기준 액수보다 작아지면, 한도 금액에 미리 정해진 금액을 더 충전하여 한도 금액 정보를 갱신할 수 있다. 다른 예로, 교통카드(100)는 한도 금액이 미리 정해진 기준에 도달하도록 필요한 금액을 더 충전하여 한도 금액 정보를 갱신할 수도 있다.
교통카드(100)는 제2 트랜잭션 데이터에서 추출된 정보에 기초하여 한도 금액 정보의 갱신 여부를 판단할 수도 있다. 예를 들어, 교통카드(100)는 제2 트랜잭션 데이터로부터 인터랙션 발생 시점 정보를 추출하고, 인터랙션 발생 시점 정보에 기초하여 한도 금액 정보의 갱신 여부를 판단할 수 있다. 인터랙션 발생 시점 정보는 인터랙션이 발생한 날짜의 연, 월, 일 정보 등을 포함할 수 있다.
도 8은 교통카드(100)가 인터랙션 발생 시점 정보에 기초하여 한도 금액 정보의 갱신 여부를 판단하는 것을 예시적으로 나타낸 개념도이다.
도 8을 참조하면, 교통카드(100)는 인터랙션의 발생 시점과, 인터랙션이 발생하기 전에 마지막으로 발생한 인터랙션의 발생 시점을 비교할 수 있다. 교통카드(100)는 인터랙션의 발생마다 교통 단말기(200)로부터 수신한 트랜잭션 데이터를 정규화 된 트랜잭션 데이터로 변환하고 정규화 된 트랜잭션 데이터를 이용하여 해당 인터랙션의 발생 시점 정보를 추출할 수 있다. 교통카드(100)는 마지막으로 발생한 인터랙션의 발생 시점 정보를 저장할 수 있다. 다른 예로, 교통카드(100)는 소정 개수의 인터랙션들의 발생 시점 정보를 저장할 수 있다.
새로운 인터랙션이 발생하면, 교통카드(100)는 새로운 인터랙션의 발생 시점과 새로운 인터랙션 발생 전에 마지막으로 발생한 인터랙션의 발생 시점을 비교할 수 있다. 교통카드(100)는 두 시점들의 연, 월, 일을 비교할 수 있다. 예를 들어, 교통카드(100)는 두 시점들 각각의 월이 서로 상이하면 한도 금액 정보를 갱신하기로 결정할 수 있다. 다른 예로 교통카드(100)는 두 시점들 각각의 일이 서로 상이하면 한도 금액 정보를 갱신하기로 결정할 수 있다. 교통카드(100)는 한도 금액 정보를 갱신하기로 결정하면 한도 금액에 미리 정해진 금액을 더 충전하여 한도 금액 정보를 갱신할 수 있다. 다른 예로, 교통카드(100)는 한도 금액이 미리 정해진 기준에 도달하도록 필요한 금액을 더 충전하여 한도 금액 정보를 갱신할 수도 있다.
도 9는 교통카드(100)가 인터랙션 발생 시점 정보에 기초하여 한도 금액 정보의 갱신 여부를 판단하는 것을 예시적으로 나타낸 개념도이다.
도 9를 참조하면, 교통카드(100)는 한도 금액의 충전 내역에 대한 정보를 저장할 수 있다. 교통카드(100)는 마지막 충전 내역에 대한 정보를 저장할 수 있다. 다른 예로 교통카드(100)는 소정의 개수의 충전 내역들에 대한 정보를 저장할 수도 있다. 한도 금액의 충전 내역 정보는 충전이 실시된 시점에 대한 정보를 포함할 수 있다. 충전이 실시된 시점은 날짜 단위로 표현될 수 있다.
교통카드(100)는 인터랙션 발생 시점과 마지막으로 충전이 실시된 시점을 비교하고, 비교 결과에 기초하여 한도 금액 정보의 갱신 여부를 결정할 수 있다. 예를 들어, 예를 들어, 교통카드(100)는 두 시점들 각각의 월이 서로 상이하면 한도 금액 정보를 갱신하기로 결정할 수 있다. 다른 예로 교통카드(100)는 두 시점들 각각의 일이 서로 상이하면 한도 금액 정보를 갱신하기로 결정할 수 있다. 교통카드(100)는 한도 금액 정보를 갱신하기로 결정하면 한도 금액에 미리 정해진 금액을 더 충전하여 한도 금액 정보를 갱신할 수 있다. 다른 예로, 교통카드(100)는 한도 금액이 미리 정해진 기준에 도달하도록 필요한 금액을 더 충전하여 한도 금액 정보를 갱신할 수도 있다.
이상 도 1 내지 도 9를 참조하여 예시적인 실시예들에 따른 교통카드 및 교통카드의 트랜잭션 처리 방법에 관하여 설명하였다. 상술한 실시예들에 따르면, 교통카드가 교통 단말기로부터 수신한 트랜잭션 데이터를 정규화 된 트랜잭션 데이터로 변환할 수 있다. 이를 통해 교통카드가 트랜잭션 데이터로부터 필요한 정보를 교통 단말기가 제공하는 트랜잭션 데이터의 타입에 관계없이 트랜잭션 데이터에 포함된 정보를 추출할 수 있다. 또한 교통카드가 정규화 된 트랜잭션 데이터로부터 추출한 인터랙션 발생 시점 정보에 기초하여 한도 금액 정보를 갱신함으로써, 사용자가 직접 한도 금액을 충전해야 하는 불편함을 해소할 수 있다.
본 발명에 따른 방법들은 다양한 컴퓨터 수단을 통해 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 컴퓨터 판독 가능 매체에 기록되는 프로그램 명령은 본 발명을 위해 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다.
컴퓨터 판독 가능 매체의 예에는 롬, 램, 플래시 메모리(flash memory) 등과 같이 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러(compiler)에 1의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터(interpreter) 등을 사용해서 컴퓨터에 의해 실행될 수 있는 고급 언어 코드를 포함한다. 상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 적어도 하나의 소프트웨어 모듈로 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
100 : 교통카드
110 : 프로세서
120 : 메모리
130 : 통신부
400 : 교통 서비스 제공사 서버
500 : 교통카드 발행사 서버
600 : 제휴 금융사 서버

Claims (13)

  1. 교통카드의 트랜잭션 처리 방법에 있어서,
    상기 교통카드가, 교통 단말기와의 인터랙션에 의해 상기 교통 단말기로부터 제1 트랜잭션 데이터를 수신하는 단계;
    상기 교통카드가, 상기 제1 트랜잭션 데이터의 타입을 식별하는 단계;
    상기 교통카드가, 미리 정해진 복수의 비트열 연산 방법 가운데 상기 제1 트랜잭션 데이터의 타입에 대응하는 비트열 연산 방법을 결정하는 단계;
    상기 교통카드가, 상기 결정된 비트열 연산 방법을 이용하여 상기 제1 트랜잭션 데이터를 정규화 된 제2 트랜잭션 데이터로 변환하는 단계; 및
    상기 교통카드가, 상기 제2 트랜잭션 데이터에 기초하여 상기 교통카드에 저장된 정보를 관리하는 단계;를 포함하는 교통카드의 트랜잭션 처리 방법.
  2. 제 1 항에 있어서,
    상기 제2 트랜잭션 데이터는 상기 인터랙션이 발생한 시점에 관한 정보를 포함하고, 상기 교통카드에 내장된 정보는 상기 교통카드의 한도 금액 정보를 포함하며,
    상기 교통카드는 상기 교통카드에 내장된 정보를 관리하는 단계에서,
    상기 제2 트랜잭션 데이터로부터 획득된 상기 인터랙션의 발생 시점 정보에 기초하여 상기 한도 금액의 추가 여부를 판단하는 교통카드의 트랜잭션 처리 방법.
  3. 제 2 항에 있어서,
    상기 교통카드는 상기 인터랙션이 발생하기 전에 마지막으로 발생한 인터랙션의 발생 시점과, 상기 인터랙션의 발생 시점을 비교하고, 비교 결과에 기초하여 상기 한도 금액의 추가 여부를 판단하는 교통카드의 트랜잭션 처리 방법.
  4. 제 1 항에 있어서,
    상기 결정된 비트열 연산 방법은,
    상기 제1 트랜잭션 데이터의 비트열과 미리 정해진 제1 비트열 사이의 AND 연산 및 상기 제1 트랜잭션 데이터의 비트열과 미리 정해진 제2 비트열 사이의 AND 연산 중 적어도 하나의 연산을 포함하는 교통카드의 트랜잭션 처리 방법.
  5. 제 4 항에 있어서,
    상기 결정된 비트열 연산 방법은,
    오른쪽 쉬프트 연산, 왼쪽 쉬프트 연산, OR 연산 및 덧셈과 곱셈을 포함하는 이항연산자 세트 중 적어도 하나의 연산을 포함하는 교통카드의 트랜잭션 처리 방법.
  6. 제 4 항에 있어서,
    상기 제1 비트열의 크기 및 상기 제2 비트열의 크기는 상기 제1 트랜잭션 데이터의 비트열의 크기보다 작은 교통카드의 트랜잭션 처리 방법.
  7. 트랜잭션의 처리를 수행하는 교통카드에 있어서,
    상기 교통카드는 교통 단말기와의 통신을 수행하는 통신부; 프로세서; 및 상기 프로세서를 통해 실행되는 적어도 하나의 명령이 저장된 메모리를 포함하며,
    상기 프로세서에 의해 실행되는 상기 적어도 하나의 명령은,
    상기 교통 단말기와의 인터랙션에 의해 상기 교통 단말기로부터 제1 트랜잭션 데이터를 수신하고, 상기 제1 트랜잭션 데이터의 타입을 식별하고, 미리 정해진 복수의 비트열 연산 방법 가운데 상기 제1 트랜잭션 데이터의 타입에 대응하는 비트열 연산 방법을 결정하고, 상기 결정된 비트열 연산 방법을 이용하여 상기 제1 트랜잭션 데이터를 정규화 된 제2 트랜잭션 데이터로 변환하고, 상기 제2 트랜잭션 데이터에 기초하여 상기 교통카드에 저장된 정보를 관리하도록 수행되는 교통카드.
  8. 제 7 항에 있어서,
    상기 제2 트랜잭션 데이터는 상기 인터랙션이 발생한 시점에 관한 정보를 포함하고, 상기 교통카드에 내장된 정보는 상기 교통카드의 한도 금액 정보를 포함하며,
    상기 적어도 하나의 명령은,
    상기 제2 트랜잭션 데이터로부터 획득된 상기 인터랙션의 발생 시점 정보에 기초하여 상기 한도 금액의 추가 여부를 판단하도록 수행되는 교통카드.
  9. 제 8 항에 있어서,
    상기 적어도 하나의 명령은,
    상기 인터랙션이 발생하기 전에 마지막으로 발생한 인터랙션의 발생 시점과, 상기 발생 시점을 비교하고, 비교 결과에 기초하여 상기 한도 금액의 추가 여부를 판단하도록 수행되는 교통카드.
  10. 제 7 항에 있어서,
    상기 결정된 비트열 연산 방법은,
    상기 제1 트랜잭션 데이터의 비트열과 미리 정해진 제1 비트열 사이의 AND 연산 및 상기 제1 트랜잭션 데이터의 비트열과 미리 정해진 제2 비트열 사이의 AND 연산 중 적어도 하나의 연산을 포함하는 교통카드.
  11. 제 10 항에 있어서,
    상기 결정된 비트열 연산 방법은,
    오른쪽 쉬프트 연산, 왼쪽 쉬프트 연산, OR 연산 및 덧셈과 곱셈을 포함하는 이항연산자 세트 중 적어도 하나의 연산을 포함하는 교통카드.
  12. 제 10 항에 있어서,
    상기 제1 비트열의 크기 및 상기 제2 비트열의 크기는 상기 제1 트랜잭션 데이터의 비트열의 크기보다 작은 교통카드.
  13. 제 1 항의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
KR1020180114169A 2018-09-21 2018-09-21 교통카드 및 교통카드의 트랜잭션 처리 방법 KR102134774B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180114169A KR102134774B1 (ko) 2018-09-21 2018-09-21 교통카드 및 교통카드의 트랜잭션 처리 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180114169A KR102134774B1 (ko) 2018-09-21 2018-09-21 교통카드 및 교통카드의 트랜잭션 처리 방법

Publications (2)

Publication Number Publication Date
KR20200034414A KR20200034414A (ko) 2020-03-31
KR102134774B1 true KR102134774B1 (ko) 2020-07-16

Family

ID=70002354

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180114169A KR102134774B1 (ko) 2018-09-21 2018-09-21 교통카드 및 교통카드의 트랜잭션 처리 방법

Country Status (1)

Country Link
KR (1) KR102134774B1 (ko)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8733645B2 (en) * 2011-10-28 2014-05-27 Lg Cns Co., Ltd. Unified transportation payment system
KR101566018B1 (ko) * 2014-04-15 2015-11-05 주식회사 스마비스 비호환 멀티인프라에서 충전 가능한 통합선불형 전자화폐 카드 시스템

Also Published As

Publication number Publication date
KR20200034414A (ko) 2020-03-31

Similar Documents

Publication Publication Date Title
CN105844471B (zh) 一种业务处理方法、装置及***
BRPI0721200A2 (pt) Método, e, meio legível por computador
CN111242603B (zh) 基于区块链的乘车结算方法及装置
JP6043709B2 (ja) 情報処理装置、情報処理方法、及びプログラム
CN105359192B (zh) 用于移动票务的方法和装置
US20190172043A1 (en) Methods and systems for immediate fare notification in account-based ticketing
KR20190134900A (ko) 차량 번호 인식을 이용한 차량 서비스 결제 시스템 및 방법
KR102134774B1 (ko) 교통카드 및 교통카드의 트랜잭션 처리 방법
KR101852455B1 (ko) 즉시충전 선불교통카드 및 이를 포함하는 교통 카드 결제 시스템
KR101049557B1 (ko) 가상계좌를 이용한 교통요금 자동 충전 방법 및 시스템과이를 위한 기록매체
KR102439371B1 (ko) 정보 중계 장치, 요금 수수기, 미디어, 차량 탑재 기기, 및 노측기
JP2008112359A (ja) クレジット処理システム
CN111415148A (zh) 无感支付的方法、装置、电子设备和存储介质
JP2005218029A (ja) カードアプリケーション間のデータ交換を行うセキュアデバイス及び携帯端末
KR102204807B1 (ko) 2 모드로 작동하는 교통 카드 및 교통 카드의 트랜잭션 처리 방법
KR20210056293A (ko) 교통카드 및 교통카드의 트랜잭션 처리 방법
KR100963925B1 (ko) 교통요금 선 지급처리 방법 및 시스템과 이를 위한기록매체
JP7351747B2 (ja) 情報中継装置、情報中継方法、及びプログラム
KR101918753B1 (ko) 모바일 앱 기반의 후불형 선불카드의 한도복원방법
JP6761533B2 (ja) 運賃決済システムおよび運賃決済方法
KR102282344B1 (ko) 전자 결제 시스템, 장치 및 방법
JP2006236197A (ja) 記録媒体を使用する料金処理システム及び料金処理方法
CN116029722A (zh) 钱包充值方法、装置、***、设备及存储介质
JP2004151818A (ja) 自動料金支払いシステムに於ける管理サーバ、発券・チャージ機、路側アンテナ、プリペイドカード及び車載器
TWM603541U (zh) 行動化停車場繳費系統

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right