KR20150016369A - 보안 요소들 상에서 애플리케이션들을 안전하게 하며 관리하기 위한 시스템들, 방법들, 및 컴퓨터 프로그램 제품들 - Google Patents

보안 요소들 상에서 애플리케이션들을 안전하게 하며 관리하기 위한 시스템들, 방법들, 및 컴퓨터 프로그램 제품들 Download PDF

Info

Publication number
KR20150016369A
KR20150016369A KR1020147036486A KR20147036486A KR20150016369A KR 20150016369 A KR20150016369 A KR 20150016369A KR 1020147036486 A KR1020147036486 A KR 1020147036486A KR 20147036486 A KR20147036486 A KR 20147036486A KR 20150016369 A KR20150016369 A KR 20150016369A
Authority
KR
South Korea
Prior art keywords
wcap
instruction
mobile wallet
authentication
data
Prior art date
Application number
KR1020147036486A
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 제이브이엘 벤쳐스, 엘엘씨
Publication of KR20150016369A publication Critical patent/KR20150016369A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/77Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in smart cards
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/32Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
    • G06Q20/322Aspects of commerce using mobile devices [M-devices]
    • G06Q20/3227Aspects of commerce using mobile devices [M-devices] using secure elements embedded in M-devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/20Point-of-sale [POS] network systems
    • G06Q20/204Point-of-sale [POS] network systems comprising interface for record bearing medium or carrier for electronic funds transfer or payment credit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/32Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
    • G06Q20/322Aspects of commerce using mobile devices [M-devices]
    • G06Q20/3226Use of secure elements separate from M-devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/32Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
    • G06Q20/322Aspects of commerce using mobile devices [M-devices]
    • G06Q20/3229Use of the SIM of a M-device as secure element
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/32Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
    • G06Q20/325Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices using wireless networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/32Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
    • G06Q20/327Short range or proximity payments by means of M-devices
    • G06Q20/3278RFID or NFC payments by means of M-devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/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/355Personalisation of cards for use
    • G06Q20/3552Downloading or loading of personalisation data
    • 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/357Cards having a plurality of specified features
    • G06Q20/3574Multiple applications on card
    • 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/36Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
    • 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
    • G06Q20/4012Verifying personal identification numbers [PIN]
    • 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/42Confirmation, e.g. check or permission by the legal debtor of payment
    • G06Q20/425Confirmation, e.g. check or permission by the legal debtor of payment using two different networks, one for transaction and one for security confirmation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • H04W12/068Authentication using credential vaults, e.g. password manager applications or one time password [OTP] applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Finance (AREA)
  • Computer Security & Cryptography (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Signal Processing (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Telephone Function (AREA)
  • Storage Device Security (AREA)
  • Stored Programmes (AREA)

Abstract

시스템들, 방법들, 및 컴퓨터 프로그램 제품들이 보안 요소 상에서의 애플리케이션들을 안전하게 하며 관리하기 위해 제공된다. 모바일 지갑 데이터는 적어도 하나의 메모리에 저장된다. 인증 데이터는 모바일 지갑으로부터 수신된다. 인증 데이터 및 모바일 지갑 데이터의 비교에 기초하여, 인증 데이터가 유효한지에 대한 결정이 이루어진다. 인증 데이터가 유효하다면, 하나 이상의 명령어들의 프로세싱이 가능해진다. 제 1 명령어는 모바일 지갑으로부터 수신된다. 제 1 명령어의 프로세싱이 가능한지 여부에 대한 결정이 이루어지며, 제 1 명령어가 가능하다면, 제 1 명령어가 프로세싱된다.

Description

보안 요소들 상에서 애플리케이션들을 안전하게 하며 관리하기 위한 시스템들, 방법들, 및 컴퓨터 프로그램 제품들{SYSTEMS, METHODS, AND COMPUTER PROGRAM PRODUCTS FOR SECURING AND MANAGING APPLICATIONS ON SECURE ELEMENTS}
본 발명은 일반적으로 모바일 상거래에서의 사용을 위한 모바일 디바이스들(mobile devices)에서의 지갑 동반 애플릿들(applets) 및 모바일 지갑들에 관한 것이며, 보다 구체적으로 보안 요소들 상에서 애플리케이션들을 안전하게 하며 관리하기 위한 시스템들, 방법들, 및 컴퓨터 프로그램 제품들에 관한 것이다.
지불 및 상거래 애플리케이션들은 물리적 현금, 체크들(checks), 신용 카드들 등에 대한 요구 없이 모바일 디바이스를 사용하여 트랜잭션들(transactions)을 행하기 위해 모바일 상거래 환경에서 사용된다. 이들 트랜잭션들은 금융(예컨대, 지불들) 또는 비-금융(예컨대, 장소 허가들)일 수 있다. 모바일 상거래 환경에서, 서비스 제공자들(SPs; service providers)은 배치(deployment)를 위한 이러한 모바일 애플리케이션들을 고객의 모바일 디바이스들에 제공한다. 서비스 제공자들은 고객들에게 서비스들을 제공하는 은행들, 판매자들, 카드 협회들, 마케팅(marketing) 회사들, 교통국들 등과 같은, 회사들, 조직들 또는 엔티티들(entities)이다.
서비스는 지불 서비스, 신용, 직불, 체킹(checking), 기프트(gift), 오퍼(offer) 또는 로열티(loyalty) 서비스, 교통 패스(pass) 서비스 등과 같은 서비스 제공자에 의해 허용되거나 또는 제공되는 활동, 능력, 기능, 일, 또는 사용일 수 있다. 서비스들은 SP에 의해 발행된 계좌들(예컨대, 체킹, 직불, 신용)에 연계된다. 각각의 계좌는 금융 정보, 개인 고객 정보, 트랜잭션 이력 등과 같은 많은 양의 데이터를 포함하며, 이것은 모바일 상거래 환경에서 트랜잭션들을 실행 또는 로깅(logging)하기 위해 사용될 수 있다.
적절히 구성되며 활성화될 때, 모바일 지불 애플리케이션들은 모바일 디바이스 상으로 배치되며 서비스 및 SP-발행 계좌에 연계된다. 고객은 그 후 근거리 무선 통신(NFC; near field communication) 가능 판독기 모듈 등을 구비한 판매 시점 관리(PoS; point-of-sale)에서, 무접촉 지불과 같은, 트랜잭션을 행하기 위해 모바일 디바이스를 사용할 수 있다.
무접촉 트랜잭션 동안, 고객은 판독기 모듈의 바로 인접한 곳에 하나 이상의 지불 애플리케이션들을 구비한 모바일 디바이스를 위치시키며, 이것은 무접촉 트랜잭션을 행하도록 지불 애플리케이션을 활성화시키기 위한 요청을 모바일 디바이스에 송신한다. 통상적인 지불 애플리케이션들은 각각의 애플리케이션이 무접촉 트랜잭션을 독립적으로 허가하고 활성화시키도록 허용하는, 소위 "자기(self)-활성화" 특권을 사용한다. 자기-활성화는 각각의 애플리케이션이 그 자신의 활성화 및/또는 허가를 독립적으로 제어 및 관리한다는 것을 의미한다. 자기-활성화 특권 구성에서, 이러한 허가는 일반적으로 개인 식별 번호(PIN; personal identification number) 검증을 사용하여 승인된다. 각각의 지불 애플리케이션은 모바일 디바이스의 메모리에 대응하는 PIN을 저장한다. 무접촉 트랜잭션 동안, 고객은 예를 들면, 모바일 디바이스의 사용자 인터페이스(interface)를 통해 PIN을 입력함으로써, 지불 애플리케이션의 활성화를 허가한다. 이것은, 결과적으로, 모바일 디바이스에서의 또 다른 애플리케이션 또는 하드웨어(hardware)로 하여금 매칭(matching)을 위해 저장된 PIN과 고객에 의해 입력된 PIN을 비교하게 한다.
지불 애플리케이션들은 또한 이러한 자기-활성화 특권 없이 배치되거나 또는 구성될 수 있다. 이러한 구성에서, 판독기 모듈들은 임의의 허가 또는 검증 없이 이러한 지불 애플리케이션들과 통신하며 이들을 액세스(access)한다.
하나의 기술적 도전은 지불 애플리케이션들을 보다 안전하게 만드는 것을 수반한다. 무접촉 트랜잭션 동안 모바일 디바이스 상에서 애플리케이션들을 액세스함으로써, 판독기 모듈이 원치 않는 또는 부정(fraudulent) 트랜잭션들, 자금의 손실, 손상된 금융 및 고객 데이터, 아이덴티티(identity) 절도, 모바일 디바이스 및 애플리케이션들에 대한 위험 등을 수행하기 위해 사용될 수 있는 위험이 존재한다.
또 다른 기술적 도전은 SP들(SP 시스템들을 포함한) 및 그것들의 대응하는 지불 애플리케이션들을 보다 안전하게 및 효율적이게 만드는 것을 수반한다. 통상적인 SP들은 다양한 모바일 디바이스들에 지불 애플리케이션들을 배치하는 것, 및 각각의 지불 애플리케이션이 그 자신의 PIN 및 액세스 가능성을 안전하게, 효율적으로, 및 효과적으로 관리하도록 구성되는 것을 보장하면서, 동일한 모바일 디바이스 상에 다른 지불 애플케이션들을 갖고 동시에 기능하는 태스크(task)에 직면하게 된다. 별개의 및 보다 안전한 시스템과 대조적으로, 모바일 디바이스의 비-휘발성 메모리 상에 PIN들을 저장 및 관리하는 것은 지불 애플리케이션들의 및 모바일 디바이스의 보안을 위태롭게 한다.
각각의 모바일 디바이스는 각각의 SP에 대한 다수의 지불 애플리케이션들을 가질 수 있으며, 각각의 지불 애플리케이션은 그 자신의 PIN을 가진다. 그 결과, 고객들은 다수의 PIN들을 기억하며, 대응하는 무접촉 트랜잭션을 허가하기 위해 각각의 PIN을 입력하는 비효율적이고, 복잡하며, 잠재적으로 안전하지 않은 부담에 직면하게 된다.
또한, 판독기 모듈들은 잠재적으로 많은 수의 지불 애플리케이션들과 통신하는 태스크에 직면하게 된다. 하나의 기술적 도전은, 무접촉 트랜잭션을 허가하기 위해 전달할 적절한 지불 애플리케이션을 결정하는 것과 관련되어, 신뢰성 및 효율성을 증가시키면서, 프로세싱(processing) 전력을 감소시키는 것을 수반한다.
SP의 관점으로부터 중요한 것은 지불 애플리케이션이 모바일 디바이스들에 배치되며, 그것들의 지불 애플리케이션이 액세스되며 트랜잭션들을 안전하게 행하기 위해 사용될 수 있다는 것이다. 고객의 관점으로부터, 중요한 것은 그들이 최소의 작업 또는 디바이스 상호작용을 갖고, 및 그것들의 모바일 디바이스들의 보안 또는 개인 정보를 손상시키지 않고 트랜잭션들을 안전하게 행할 수 있다는 것이다. 판독기 모듈의 관점으로부터, 중요한 것은 각각의 판독기가 효율적으로 및 정확하게, 및 가능한 한 최소 프로세싱 시간 및 리소스들(resources)을 갖고 모든 트랜잭션을 관리할 수 있다는 것이다.
본 발명은 보안 요소들 상에서 애플리케이션들을 안전하게 하며 관리하기 위한 시스템들, 방법들, 및 컴퓨터 프로그램 제품들을 제공한다.
일 실시예에서, 애플리케이션들을 안전하게 하며 관리하기 위한 시스템은 프로세서(processor)에 결합된 적어도 하나의 메모리(memory)를 포함한다. 모바일 지갑 데이터는 상기 적어도 하나의 메모리에 저장된다. 인증 데이터는 모바일 지갑으로부터 수신된다. 상기 인증 데이터 및 상기 모바일 지갑 데이터의 비교에 기초하여, 상기 인증 데이터가 유효한지에 대한 결정이 이루어진다. 상기 인증 데이터가 유효하다면, 하나 이상의 명령어들의 프로세싱이 가능해진다. 제 1 명령어는 상기 모바일 지갑으로부터 수신된다. 상기 제 1 명령어의 프로세싱이 가능한지 여부에 대한 결정이 이루어지며, 상기 제 1 명령어가 가능하다면, 상기 제 1 명령어가 프로세싱된다.
또 다른 실시예에서, 애플리케이션들을 안전하게 하며 관리하기 위한 방법은: 모바일 지갑으로부터, 인증 데이터를 수신하는 단계; 적어도 하나의 메모리에 저장된 모바일 지갑 데이터 및 상기 인증 데이터의 비교에 기초하여 상기 인증 데이터가 유효한지를 결정하는 단계; 상기 인증 데이터가 유효하다면 하나 이상의 명령어들의 프로세싱을 가능하게 하는 단계; 상기 모바일 지갑으로부터 제 1 명령어를 수신하는 단계; 상기 제 1 명령어의 프로세싱이 가능한지를 결정하는 단계; 및 상기 제 1 명령어의 프로세싱이 가능하다면 상기 제 1 명령어를 프로세싱하는 단계를 포함한다.
또 다른 실시예에서, 비-일시적 컴퓨터-판독 가능한 매체는 지시들의 시퀀스들(sequences)을 저장하며, 상기 지시들의 시퀀스들은 하나 이상의 프로세서들로 하여금: 모바일 지갑으로부터, 인증 데이터를 수신하게 하고; 적어도 하나의 메모리에 저장된 모바일 지갑 데이터 및 상기 인증 데이터의 비교에 기초하여 상기 인증 데이터가 유효한지를 결정하게 하고; 상기 인증 데이터가 유효하다면 하나 이상의 명령어들의 프로세싱을 가능하게 하고; 상기 모바일 지갑으로부터 제 1 명령어를 수신하게 하고; 상기 제 1 명령어가 가능한지를 결정하게 하며; 상기 제 1 명령어의 프로세싱이 가능하다면 상기 제 1 명령어를 프로세싱하게 하기 위한 것이다.
본 발명의 특징들 및 이점들은 다음의 도면들과 함께 취해질 때 이하에 제시된 상세한 설명으로부터 보다 명백해질 것이다.
도 1은 대표적인 실시예에 따라 보안 요소 상에서의 애플리케이션들을 안전하게 하며 관리하기 위한 시스템의 다이어그램(diagram)이다.
도 2는 대표적인 실시예에 따른 WCAp의 수명 주기를 예시한 다이어그램이다.
도 3은 대표적인 실시예에 따른 WCAp 보안 상태들의 수명 주기를 예시한 다이어그램이다.
도 4는 대표적인 실시예에 따라 패스코드(passcode)를 검증하기 위한 프로세스를 예시한 흐름도이다.
도 5는 대표적인 실시예에 따른 CRS 미러(Mirror)의 다이어그램이다.
도 6은 대표적인 실시예에 따라 1차 지불 애플리케이션을 선택 및 활성화하기 위한 프로세스를 예시한 시퀀스 다이어그램이다.
도 7은 대표적인 실시예에 따라 무접촉 트랜잭션을 관리하기 위한 프로세스를 예시한 시퀀스 다이어그램이다.
도 8은 대표적인 실시예에 따라 모바일 지갑 및 서버 사이에서의 상호 인증 프로세스를 예시한 시퀀스 다이어그램이다.
도 9는 본 발명을 구현하기에 유용한 대표적인 시스템의 블록 다이어그램이다.
I. 개요
본 명세서에 제공된 본 발명의 예시적인 실시예들은 애플리케이션들을 안전하게 하며 관리하기 위한 시스템들, 방법들, 및 컴퓨터 프로그램 제품들에 관한 것이며, 이것들은 이제 본 명세서에서 모바일 상거래 환경에서의 예시적인 시스템에 대하여 설명된다. 이것은 단지 편리함을 위한 것이며, 본 발명의 적용을 제한하도록 의도되지 않는다. 사실상, 다음의 설명을 판독한 후, 모바일 마케팅, 광고, 티켓팅(ticketing), 정보 서비스들, 브라우징(browsing) 등과 같은 대안적인 환경들에서 다음의 발명을 구현하는 방법이 관련 기술(들)에서의 숙련자에게 명백해질 것이다.
용어들 "애플리케이션", "애플릿", "위젯(widget)" 및/또는 복수 형태의 이들 용어들은 하나 이상의 프로세서들(예컨대, 모바일 디바이스, 카드 판독기, 단말기, 판매 시점 관리(POS) 시스템, 또는 서버(server) 내의)에 의해 실행될 때, 프로세서(들)로 하여금 특정 태스크들을 수행하게 하는 애플리케이션(독립적으로 또는 다른 애플리케이션들과 함께 기능하는) 또는 세트(set) 또는 서브세트(subset)의 지시들 또는 코드(code)를 나타내기 위해 본 명세서에 상호 교환 가능하게 사용된다. 예를 들면, 지갑 애플리케이션은 금융, 로열티, 오퍼(offer), 멤버쉽(membership), 또는 계좌 데이터를 저장, 프로세싱, 액세스 또는 송신하는 것과 같은 트랜잭션- 또는 인터페이스-관련 기능들을 행하기 위해 사용될 수 있다. 지갑 애플리케이션은 또한, 아메리칸 익스프레스(American Express)®로부터의 익스프레스페이(ExpressPay), 디스커버(Discover)® 네트워크 집(Network Zip)SM, 마스터카드(MasterCard)® 패이패스(PayPass)TM 및 비자(Visa) 페이웨이브(payWave)TM 지불 애플릿들과 같은, 하나 이상의 지불 애플리케이션들을 통합하거나 또는 그것과 상호작용할 수 있다.
용어들 "PIN", "패스코드" 및/또는 복수 형태의 이들 용어들은 시스템, 사용자, 엔티티 등을 인증하기 위해 사용된 고유 식별자를 나타내기 위해 본 명세서에서 상호 교환 가능하게 사용된다.
일반적으로, 메커니즘(mechanism)은 보안 요소(SE; secure element)에서의 애플리케이션들을 안전하게 하며 관리하기 위해 제공된다. 특히, 지갑 동반 애플릿(WCAp; wallet companion applet)은 로열티, 오퍼, 멤버쉽 또는 계좌 데이터를 프로세싱하는 것과 연관된 태스크들을 수행하기 위한 금융 트랜잭션들 또는 상거래 애플리케이션들을 만들기 위한 지불 애플리케이션들과 같은, 모바일 지갑과 연관된 특정한 유형들의 애플리케이션들을 모니터링(monitoring)하고, 관리하며, 및/또는 안전하게 한다.
WCAp은 모바일 디바이스 상에서 구동하는 애플리케이션일 수 있으며, 모바일 지갑 데이터를 안전하게 저장하는 것, 패리티(parity) 검사들 및 패스코드 검증들과 같은 인증을 수행하는 것, 명령어들을 프로세싱하는 것, 레지스트리(registry)에 지갑 애플리케이션 데이터를 유지하는 것, 애플리케이션들을 관리하는 것(예컨대, 활성화시키며 비활성화시키는), 서버를 인증하는 것, 및 무접촉 트랜잭션들의 프로세싱에 참여하는 것과 같은 기능들을 수행한다. WCAp는 또한 이들 기능들을 수행하도록 구성된, 독립형(stand-alone)(, 독립적(independent)) 시스템일 수 있다.
대표적인 실시예에서, WCAp의 상태는 그것의 기능(예컨대, WCAp가 프로세싱할 명령어들의 유형들)을 표시한다. WCAp는 예를 들면 보안 요소의 제조 동안, 보안 요소 상으로 로딩된다. 결과적으로, WCAp는 보안 요소 상에 설치될 수 있다. 설치될 때, WCAp의 기능은 예를 들면, WCAp를 선택 가능하게 하는, "선택(Select)" 명령어와 같은 특정한 명령어들을 프로세싱하는 것에 제한될 수 있다. 선택 가능할 때, WCAp의 기능은 부가적인 및/또는 상이한 명령어들을 프로세싱하기 위해 수정된다. 선택 가능할 때, WCAp는 또한 비-개인화된 또는 개인화된 상태에 있을 수 있다. 비-개인화된 상태에서, WCAp는 트랜잭션들을 행하기 위해 필요한 정보가 부족하다. WCAp는 식별자들 및 패스코드들과 같은 정보를 수신 및/또는 저장함으로써 개인화될 수 있다. 일 실시예에서, WCAp는 개인화된 상태에 위치된다. 즉, 개인화된 상태에서, WCAp는 활성이며 모바일 지갑 데이터와 같은 정보를 안전하게 저장한다.
대안의 대표적인 실시예에서, WCAp는 여러 개의 보안 상태들 중 하나에 있을 수 있다. 특정한 보안 상태는 WCAp가 모바일 지갑으로부터 수신하는 명령어들에 기초하여 결정된다. 이들 명령어들은 WCAp를 선택하기 위해 명령어들을 포함하고, 패리티 검사 및/또는 패스코드 검증을 수행한다. 일 실시예에서, WCAp 보안 상태들은 "비-선택(Non-Selected)", "선택된 비-인증(Selected Non-Authenticated)", 및 "인증(Authenticated)"이다. 비-선택 상태에서, WCAp은 콘텍스트(context) 외에 있으며 단지 특정한 명령어들을 수신 및 프로세싱할 자격만 있다. 선택된 비-인증 상태에서, WCAp가 선택되었으며(예컨대, "선택" 명령어를 프로세싱함으로써), 그것은 콘텍스트 내에 있고 그것에 인증되도록 요구하지 않는 명령어들을 프로세싱할 수 있다. 인증 상태에서, WCAp는 인증되며(예컨대, 패리티 검사 또는 패스코드 검증을 성공적으로 수행함으로써), WCAp이 인증되도록 요구하는 명령어들을 프로세싱할 수 있다. 모바일 지갑의 인증은 그 동안 WCAp가 모바일 디바이스로부터 수신된 데이터를 WCAp 상에 또는 그것과 관련되어 저장된 데이터에 비교하는, 패리티 검사 또는 패스코드 검증을 수행함으로써 달성될 수 있다.
상기 주지된 바와 같이, WCAp는 특정한 애플리케이션들을 모니터링하며 안전하게 한다. 이것은 애플리케이션 상태, 에러들(erros), 및/또는 애플리케이션이 선택되었는지 여부와 같은, 지불 애플리케이션들에 대한 정보를 포함한 레지스트리를 유지함으로써 달성된다. 이러한 정보는, 예를 들면, 애플리케이션 또는 보안 요소 환경으로부터 수신될 수 있으며, 결과적으로 애플리케이션들에 관련된 업데이트들을 추적하기 위해 사용된다. 레지스트리를 사용하여, WCAp는 무접촉 트랜잭션들 동안 사용하기 위한 지불 애플리케이션들의 활성화를 관리한다(예컨대, 허용/부인).
상기 논의된 특징들은 도 1 내지 도 9를 참조하여, 이하에 추가로 상세히 설명된다.
II. 시스템
도 1은 대표적인 실시예에 따라 보안 요소 상에서의 애플리케이션들을 안전하게 하며 관리하기 위한 시스템(100)의 다이어그램이다. 도 1에 도시된 바와 같이, 시스템(100)은 모바일 디바이스(101), 보안 요소(102), 모바일 지갑(103), WCAp(104), 모바일 지갑 서버(본 명세서에서 "서버"로서 불리우는)(105), 중앙 신뢰 서비스 관리기(TSM; central trusted service manager)(106), 및 무접촉 판독기(107)를 포함한다.
모바일 디바이스(101)는 예를 들면, 셀룰러(cellular) 전화기 등일 수 있으며, 프로세서(101a), 메모리(101b), 무접촉 프론트엔드(CLF; contactless frontend)(101c), 기저대역 모뎀(baseband modem)(101d), 및 디스플레이(display)와 같은 사용자 인터페이스를 포함한다. 기저대역 모뎀(101d)은 모바일 네트워크 통신들을 위해 사용되는 디지털 모뎀이다. CLF(101c)는 NFC 통신들의 아날로그(analogue) 부분 및 무접촉 송신 링크(link)의 통신 프로토콜 계층들을 핸들링(handling)하는 회로이다. 게다가, CLF(101c)는 예를 들면, 무접촉 트랜잭션들을 실행하기 위해, 보안 요소(102) 및 무접촉 판독기(107) 사이에서 데이터를 교환하기 위해 사용된다.
모바일 디바이스(101)는 또한 보안 요소(102)를 포함하며, 이것은 범용 집적 회로 카드(UICC; Universal Integrated Circuit Card), 내장된 SE 카드, 안전한 마이크로 보안 디지털(microSD; micro secure digital) 카드 등으로서 구현될 수 있다. 보안 요소(102)는 일반적으로 그것이 전용 메모리를 포함한, 독립형 시스템이기 때문에 안전한 것으로 고려되며, 독립적인 검사에 의해 검증되는 하드웨어 및 소프트웨어 경화 기술들에 의해 보호된다.
보안 요소(102)는 보안 요소 상의 애플리케이션들에 애플리케이션 프로그래밍 인터페이스를 제공하는 전역적 플랫폼(GlobalPlatform)TM 환경(이하에서 "개방(Open)"으로서 불리우는)과 같은 운영 시스템, 및 명령어 디스패치(dispatch), 애플리케이션 선택, 논리 채널 관리, 및 컨텐트(content) 관리와 같은 다른 서비스들을 포함할 수 있다. 이러한 환경에서, 보안 요소(102)는 또한 무접촉 레지스트리 서비스(CRS; Contactless Registry Service), CRS 애플리케이션(또한 이하에서 "CRS 애플릿"으로서 불리우는), 및/또는 무접촉 레지스트리 이벤트 청취기(CREL; Contactless Registry Event Listener) 애플리케이션을 포함할 수 있다. CRS는 액세스를 관리하며 이를 지불 애플리케이션들과 같은 애플리케이션들에 제공하도록 구성된다. CRS 애플리케이션은 CRS의 관리를 포함한, 애플리케이션 관리를 최종 사용자에게 제공하도록 구성된다. CREL 애플리케이션은 애플리케이션들에 대한 변화들 및/또는 업데이트들(updates)에 관한 통지들을 수신하도록 구성된 애플리케이션이다. 이러한 환경은 "전역적 플랫폼 카드 - 무접촉 서비스들, 카드 규격 v2.2 보정 C, 버전 1.0.1.8"에 보다 상세히 설명된다. 이러한 전역적 플랫폼TM 구성의 하나의 단점은 보안 요소 상에 세트 또는 서브세트의 애플리케이션들을 독립적으로 관리하며, 단일 패스코드를 사용하여 이들 애플리케이션들에 대한 액세스를 제공하고 및/또는 제한하는 CREL 애플리케이션에 대한 요구이다.
보안 요소(102)는 WCAp(104)(도 2 내지 도 5를 참조하여 이하에 추가로 상세히 설명되는) 및 하나 이상의 지불 애플리케이션들을 포함한다(예컨대, 그것 상에 저장한다). 각각의 지불 애플리케이션은 SP에 의해 발행된 계좌 및 서비스에 연계된다. WCAp(104) 및 지불 애플리케이션들은, 예를 들면, 보안 요소의 제조 및/또는 구성 동안, 보안 요소(102) 상으로 로딩(loading)될 수 있다. WCAp(104) 및 지불 애플리케이션들은 그것들의 사용이 트랜잭션들을 행할 수 있게 하기 위해 개인화될 수 있다. WCPa(104)의 개인화는 표 1을 참조하여 이하에 추가로 상세히 설명된다.
일 실시예에서, WCAp(104)는 중앙 TSM(106)과 같은 TSM에 의해 개인화된다. 통상적으로, 중앙 TSM은 보안 요소들로 및 그로부터의 통신들을 관리하며, 예를 들면, 보안 요소들 상으로 데이터를 로딩하기 위해 사용될 수 있다. 본 명세서에 그 전체가 참조로서 통합되는, "다중 서비스 제공자 신뢰 서비스 관리기들 및 보안 요소들을 인터페이싱하기 위한 시스템들, 방법들, 및 컴퓨터 프로그램 제품들"이라는 제목의, 미국 특허 출원 번호 제13/653,160호는 보안 요소들과의 통신들을 관리하기 위한 중앙 TSM을 설명한다.
모바일 지갑(103)(, 모바일 지갑 클라이언트(client))은 모바일 디바이스(101)에 저장된 애플리케이션일 수 있다. 모바일 지갑(103)은 모바일 디바이스(101)의 프로세서에 의해 실행될 때, 모바일 디바이스(101)로 하여금 예를 들면, 무접촉 지불들과 같은 트랜잭션들을 프로세싱하기 위한 수단으로서 동작하게 하는 지시들을 포함한다. 모바일 지갑(103)은 이러한 트랜잭션들을 실행하기 위해 WCAp(104)와 통신한다. 특히, 모바일 지갑(103)은 국제 표준 기구(ISO; International Standards Organization) 7816 명령어들을 사용하여 보안 요소(102) 및/또는 WCAp(104)와 통신한다. 디바이스들 사이에서의 이들 및 다른 통신들은 다른 중재 시스템들, 하드웨어, 및/또는 소프트웨어와의 또는 그것을 통한 통신들을 포함할 수 있다는 것이 이해되어야 한다.
WCAp(104)와 통신하기 위해, 모바일 지갑(103)은 성공적인 PIN 검증 또는 패리티 검사를 통해 그 자체를 인증해야 하며, 이것은 도 4, 및 표 1 및 표 2를 참조하여 이하에 추가로 상세히 설명된다.
WCAp(104)는 또한 근접 지불 시스템 환경(PPSE; proximity payment system environment)을 포함한다. PPSE는 보안 요소 상에 지불 애플리케이션들의 리스트(list)를 유지하기 위해 사용된 애플리케이션이며, 그것들을 시스템들 또는 디바이스들에 가시적이거나 또는 가시적이지 않게(, 액세스 가능하게) 만듦으로써 각각의 지불 애플리케이션에 대한 액세스 가능성을 제공한다.
일 실시예에서, 고객은 근접 결합 디바이스(PCD; proximity coupling device) 또는 NFC-가능 판독기와 같은, 무접촉 판독기(107)를 구비한 POS에서 무접촉 트랜잭션을 행하기 위해 모바일 디바이스(101)를 사용할 수 있다. 고객은 NFC ISO 14443 프로토콜들을 사용하여 모바일 디바이스(101)의 CLF(101c)와 통신하는, 무접촉 판독기(107)에 미리 결정된 요구된 근접성 내에 모바일 디바이스(101)를 위치시킨다. 무접촉 판독기(107)는 또한 무접촉 트랜잭션들을 실행하기 위해 모바일 디바이스(102) 상에 모바일 지갑(103), WCAp(104), 및/또는 지불 애플리케이션들과 통신한다.
WCAp(104)는 또한 모바일 지갑(103) 및 서버(105) 사이에서 상호 인증을 제공하기 위해 사용된다. 모바일 지갑(103) 및 서버(105)는 예를 들면, 모바일 지갑의 활성화, 모바일 지갑 상의 서비스 계좌 또는 지불 애플리케이션의 설정, 또는 모바일 지갑 PIN의 수정 동안 통신한다. 특히, WCAp(104)는 티켓들(예컨대, 크리덴셜들(credentials))을 생성 및 검증함으로써 이러한 통신들을 인증한다. 이러한 상호 인증은 도 8을 참조하여 이하에 추가로 상세히 설명된다.
III. 프로세스
A. WCAp를 개인화하는 것
도 2는 대표적인 실시예에 따른, WCAp(예컨대, 도 1, WCAp(104))의 수명 주기(200)를 예시한 다이어그램이다. 블록(201)("WCAp 로딩")에서, WCAp(104)는 예를 들면, 보안 요소(102)의 제조 동안, 보안 요소(예컨대, 도 1, 보안 요소(102)) 상으로 로딩된다. 일 실시예에서, WCAp(104)를 로딩하는 것은 WCAp(104)의 모든 클래스들(classes) 및 인터페이스들을 포함한 자바(Java) 변환 애플릿(CAP; converted applet) 파일을 포함한 패키지(package)를 보안 요소(102) 상으로 로딩하는 것을 포함한다. 블록(201)에서, WCAp(104)는 기능적이지 않다(, 트랜잭션들을 행하기 위해 사용될 수 없다).
블록(202)("WCAp 설치")에서, WCAp(104)가 보안 요소(102)에 설치된다. 특히, WCAp(104)의 설치는 로드 파일(load file)을 언패킹(unpacking)하는 것, 실행 가능한 코드를 연계하는 것, 및 보안 요소(102)에 메모리를 할당하는 것을 포함한다.
블록(203)("WCAp 선택 가능")에서, WCAp(104)는 예를 들면, 모바일 지갑(103) 또는 중앙 TSM(예컨대, 도 1, 중앙 TSM(106))에 의해, 선택 가능해진다. 게다가, 선택 가능한 것 외에, WCAp(104)는 각각 블록들(203A 및 203B)에 의해 예시된 바와 같이, 개인화된(즉, 활성) 또는 개인화되지 않은(, 비활성) 상태에 있다.
디폴트(default)로, WCAp(104)는 일단 그것이 설치됨에서 선택 가능으로 변한다면 비-개인화 상태에 위치된다.
결과적으로, WCAp(104)는 모바일 지갑 데이터와 같은, 정보를 저장하기 위해 명령어들을 사용하여 중앙 TSM(106)에 의해 개인화(예컨대, 활성화)될 수 있다. 일단 개인화된다면, WCAp(104)는 업데이트된 정보(예컨대, 업데이트된 모바일 지갑 데이터)를 저장하기 위해 중앙 TSM(106)에 의해 업데이트될 수 있다. WCAp(104)를 개인화하는 프로세스는 예를 들면, 모바일 지갑(103)으로부터 정보를 수신하는 것, 및 WCAp(104) 내에 및/또는 그것과 연관된 상기 정보의 적어도 일 부분을 저장하는 것을 포함한다. WCAp(104)는 모바일 지갑 데이터와 같은, 데이터의 2차 보안 저장 장치로서 작용하며, 이것은 트랜잭션들을 프로세싱하기 위해 모바일 지갑(103)에 의해 사용된다. 이하의, 표 1은 요소들 및 대응하는 설명들을 포함하여, WCAp(104)에 저장된 데이터의 예들을 예시한다.
WCAp에 저장된 데이터의 예들
요소 디스크립션
SIM ID SIM 카드(예컨대, ICCID)의 고유 식별자
디바이스 ID(Device ID) 모바일 디바이스의 고유 식별자(예컨대, IMEI, MEID, MAC 어드레스)
지갑 ID(Wallet ID) 모바일 지갑의 고유 식별자
지갑 패스코드(Wallet Passcode) 모바일 지갑의 사용 또는 사용자를 인증하기 위해 사용된 패스코드
지갑 서버 키(Wallet Server Key) 서버에 대한 모바일 지갑 또는 WCAp를 인증하기 위해 사용된 키
지갑 서버 키 검증 코드(Wallet Server Key Verification Code) 지갑 서버 키를 증명하기 위해 사용된 코드
위젯 인증 블랍(Widget Authentication Blob) 위젯에 대응하는 고유 데이터
지갑 고유 코드(Wallet Unique Code) WCAp에 의해 모바일 지갑에 대해 생성되고 저장된 고유 코드
표 1을 참조하면, 지갑 패스코드(이하에서 "패스코드"로서 불리우는)는 WCAp(104)의 개인화 동안 중앙 TSM(106)에 의해 처음에 할당된 4 문자 코드이다. 그러나, 패스코드는 그 뒤에 변경될 수 있다. 패스코드들은 도 3 및 도 4를 참조하여 이하에 추가로 상세히 설명된다. 서버 인증 키 및 서버 인증 키 검증 코드는 도 3 및 도 8을 참조하여 이하에 추가로 상세히 설명된다.
위젯 인증 블랍은 위젯에 대응하는 데이터를 포함한다. 위젯은 다른 애플리케이션들과 함께 기능할 수 있는 애플리케이션의 유형이다. 위젯 인증 블랍은 위젯 ID(Widget ID), 위젯 서명(Widget Signature), 및 위젯 버전(Widget Version)과 같은 데이터를 포함한다. 위젯 ID는 위젯의 고유 식별자이다. 위젯 서명은 각각의 위젯을 위해 모바일 지갑에 의해 계산된 해시(hash) 값이다. 위젯 버전은 각각의 위젯의 버전 번호 및/또는 식별자이다.
WCAp(104)는 위젯 데이터를 검증하기 위한 수단을 저장하고 제공한다. 특히, 위젯 인증 블랍은 위젯의 아이덴티티를 검증하기 위해 WCAp에 의해 사용된다. 이러한 검증은 위젯 검증 명령어를 사용하여 달성될 수 있으며, 여기에서 위젯 데이터는 WCAp(104)에 저장된 위젯 인증 블랍 데이터와 비교되도록 모바일 지갑(103)에 의해 WCAp(104)에 전송된다. 명령어에 전송된 위젯 데이터가 위젯 인증 블랍 데이터와 일치한다면, WCAp(104)는 위젯이 검증되었음을 표시한 응답을 모바일 지갑에 송신한다.
게다가, WCAp(104)의 개인화 동안, 중앙 TSM(106)은 CREL 애플리케이션으로서 WCAp(104)를 등록한다. 일반적으로, CREL 애플리케이션은 CRS 및/또는 CRS 애플리케이션을 사용하여 다수의 애플리케이션들을 추적 및/또는 관리하기 위해 사용되는 애플리케이션이다. CRS는 보안 요소 상에서의 애플리케이션들의 레지스트리이다.
CREL 애플리케이션으로서 등록되는 WCAp(104)은 모바일 지갑(103)과 연관된 애플리케이션들을 추적 및/또는 관리하기 위해 CRS의 미러(, 복사 또는 사본)(이하에서 "CRS 미러"로서 불리우는)를 포함한다. 즉, WCAp(104)의 CRS 미러는 CRS에서의 애플리케이션들, 특히 중앙 TSM(106)에 의해 설치되고 및/또는 공급된 이들 애플리케이션들의 모두 또는 서브세트를 추적 및/또는 관리한다. 애플리케이션들을 추적 및/또는 관리하는 것은 이들 애플리케이션들의 사용, 액세스, 허가, 활성화, 및 또는 정보 업데이트에 관련된 임의의 기능들 및 프로세스들을 포함한다.
CREL로서, WCAp(104)는 애플리케이션의 상태 변화와 같은, CRS 미러에 의해 추적된 애플리케이션들에 관련된 이벤트들(events)의 통지들을 수신한다. CREL들 및 CRS들은 도 5 내지 도 7을 참조하여 이하에 추가로 상세히 논의된다. 블록(204)("WCAp 중단")에서, WCAp(104)는 중단되며, 그 동안 그것의 기능은 잠금된다. 도 2에 예시되지 않지만, WCAp(104)는 종료될 수 있다. 종료될 때, WCAp(104)는 중앙 TSM(106)에 의해 보안 요소(102)로부터 삭제된다.
B. WCAp를 인증하는 것
도 3은 대표적인 실시예에 따라, WCAp 보안 상태들(예컨대, 비-선택, 선택된 비-인증, 인증)의 수명 주기(300)를 예시한 다이어그램이다. WCAp는 WCAp의 보안 상태에 따라 특정한 애플리케이션 프로토콜 데이터 유닛(APDU; application protocol data unit) 명령어들(본 명세서에서 "명령어들"로서 불리우는)을 프로세싱할 것이다.
블록(301)("비-선택 상태")에서, WCAp(예컨대, 도 1, WCAp(104))는 비-선택 상태에 있다. 비-선택 상태에서, WCAp(104)는 콘텍스트 외에 있으며 단지 특정한 명령어들을 수신 및 프로세싱할 자격이 있다. 이하의 표 2는 그것이 비-선택 상태에 있을 때를 포함하여, 그것이 특정한 보안 상태에 있을 때 WCAp(104)에 의해 프로세싱될 수 있는 명령어들의 예들을 예시한다.
WCAp 보안 상태들 동안 수용 가능한 명령어들의 예들
명령어 비-선택 선택된 비-인증 인증
선택
데이터 저장 아니오 이용 가능하지 않음 이용 가능하지 않음
데이터 획득 아니오 이용 가능하지 않음 이용 가능하지 않음
WCAp 상태 인출 아니오
패리티 검사 아니오
패스코드 검증 아니오
위젯 검증 아니오 아니오
WS 티켓 생성 아니오 아니오
WS 검증 아니오 아니오
지불 설정들 두기 아니오 아니오
버전 리턴 아니오
결과적으로, WCAp(104)는 선택 명령어를 수신함으로써 선택될 수 있다(예컨대, 도 2, 블록(203), "WCAp 선택 가능").
블록(302)("선택된 비-인증 상태")에서, WCAp(104)는, 선택 명령어를 수신함으로써 선택된 후, 선택된 비-인증 상태에 있다. 선택된 비-인증 상태에서, WCAp(104)는, 표 2를 참조하여 상기 설명된 바와 같이, 콘텍스트 내에 있으며 인증 상태에 있도록 그것에 요구하지 않는 명령어들을 프로세싱할 수 있다.
결과적으로, WCAp(104)는 패리티 검사 또는 패스코드 검증을 사용하여 인증될 수 있으며, 그에 의해 블록(303)("인증 상태")에서, 인증 상태에 WCAp(104)를 위치시킬 수 있다. 패리티 검사들 및 패스코드 검증들은 이하에 설명된 바와 같이 수행된다.
블록(303)("인증 상태")에서, WCAp(104)는 패리티 검사 및/또는 패스코드 검증을 성공적으로 수행한 후("성공적인 패스코드 검증" 또는 "성공적인 패리티 검사"), 인증 상태에 있다. 인증 상태에서, WCAp(104)는, 표 2를 참조하여 상기 설명된 바와 같이, 명령어들을 프로세싱할 수 있다.
도 3에 추가로 예시되는 바와 같이, WCAp(104)가 인증 상태에 있을 때, 그것은 그것의 콘텍스트를 잃을 수 있으며("콘텍스트 손실") 비-선택 상태(, 블록(301))에 위치될 수 있다. 게다가, WCAp(104)는 선택될 수 있으며("WCAp 선택") 따라서 선택된 비-인증 상태에 위치될 수 있다.
1. 패스코드를 검증하는 것
표 1를 참조하여 보다 상세히 상기에 논의된 바와 같이, WCAp(104)는 모바일 지갑(예컨대, 도 1, 모바일 지갑(103))과 연관된 패스코드를 저장한다. 패스코드는 WCAp(104)를 인증 상태에 위치시키고 및/또는 지불 애플리케이션을 활성화하기 위해 사용될 수 있다. 패스코드는 온(ON) 또는 오프(OFF) 상태(, 패스코드가 인증을 위해 요구되는지 여부를 표시하는)에 위치될 수 있으며, 상기 상태는 WCAp(104)의 외부에 저장된다.
패스코드는 처음에 WCAp(104)의 개인화 동안 설정되며, 이것은 도 2 및 표 1을 참조하여 상기 설명된다. 특히, 패스코드의 설정 동안, 모바일 지갑(103)은 처음에 예를 들면, 모바일 디바이스(101)의 사용자 인터페이스를 통해, 모바일 디바이스(예컨대, 도 1, 모바일 디바이스(101)) 또는 사용자로부터 활성화 데이터(예컨대, 패스코드, 지갑 ID, 디바이스 ID, SE ID)를 검색 및/또는 수신한다. 결과적으로, 모바일 지갑(103)은 활성화 데이터에서의 SE ID에 대응하는 WCAp(104)를 활성화시키기 위한 요청을 서버(예컨대, 도 1, 서버(105))에 송신한다. 서버(105)는 그 후 WCAp(104)를 활성화시키기 위해, 활성화 데이터를 포함한, 요청을 중앙 TSM(예컨대, 도 1, 중앙 TSM(106))에 송신한다. 중앙 TSM(106)은 패스코드를 포함한, 수신된 활성화 데이터의 적어도 일 부분을, WCAp(104)에 저장한다.
WCAp(104)는 패스코드 검증 시도가 실패할 때(, 제안된 패스코드가 WCAp에 저장된 설정된 패스코드와 일치하지 않음) 증분되는 "재시도 카운터(retry counter)"로서 불리우는 카운터를 포함한다. WCAp(104) 및/또는 패스코드는 재시도 카운터가 미리 결정된 한계를 초과할 때 잠기게 될 수 있다. 재시도 카운터는 패스코드 검증 시도가 성공할 때마다(, 제안된 패스코드가 WCAp에 저장된 설정된 패스코드와 일치함) 0으로 리셋(reset)된다.
도 4는 대표적인 실시예에 따라, 패스코드를 검증하기 위한 프로세스(400)를 예시한 흐름도이다. 블록(401)("패스코드 검증 명령어 수신")에서, WCAp(104)는 패스코드를 포함한, 패스코드 검증 명령어를 모바일 지갑(103)으로부터 수신한다.
블록(402)("WCAp 잠김?")에서, WCAp(104)는 그것이 잠기었는지(, 도 2, 블록(204), "WCAp 중단")를 결정한다. WCAp(104) 및/또는 패스코드는 예를 들면, 재시도 카운터가 미리 결정된 한계를 초과한다면, 잠기게 될 수 있다. 잠길 때, WCAp(104)는 패스코드 검증 명령어를 프로세싱하지 않는다. WCAp(104)가 잠겼다는 결정이 이루어진다면, WCAp(104)는, 블록(403)("에러: WCAp 잠김")에서, WCAp(104) 및/또는 패스코드가 잠겼다고 표시하는 에러 응답을 모바일 지갑(103)에 송신한다.
대안적으로, 블록(402)에서 WCAp(104)가 잠기지 않았다는 결정이 이루어진다면, WCAp(104)는, 블록(404)("수신된 패스코드 = 저장된 패스코드?")에서, 패스코드 검증 명령어에서 수신된 패스코드가 WCAp(104)에 저장된 패스코드와 일치하는지를 결정한다. 블록(404)에서 수신된 패스코드가 저장된 패스코드와 일치하지 않는다는 결정이 이루어진다면, WCAp(104)는 블록(405)("카운터 증분")에서 재시도 카운터를 증분시킨다.
결과적으로, WCAp(104)는, 블록(406)("WCAp 잠김?")에서, WCAp(104) 및/또는 패스코드가 잠기었는지를 결정한다. WCAp(104) 및/또는 패스코드가 잠기었다는 결정이 이루어진다면, WCAp(104)는 블록(403)("에러: WCAp 잠김")에서, WCAp 및/또는 패스코드가 잠기었음을 표시하는 에러 응답을 모바일 지갑(103)에 송신한다.
블록(406)에서 WCAp(104) 및/또는 패스코드가 잠기지 않았다는 결정이 이루어진다면, WCAp(104)는 블록(407)("에러: 패스코드 검증 실패")에서, 패스코드 검증 명령어가 실패하였음(, 패스코드가 성공적으로 검증되지 않았다)을 표시하는 에러 응답을 모바일 지갑(103)에 송신한다. 블록(407)에서 송신된 에러 응답은 또한 재시도 카운터가 미리 결정된 한계를 초과하기 전에 남아있는 패스코드 검증 시도들의 수를 표시하는 정보를 포함할 수 있다.
블록(404)에서 수신된 패스코드가 저장된 패스코드와 일치한다는 결정이 이루어진다면, WCAp(104)는 블록(408)("WCAp 상태을 인증으로 설정")에서, 그것의 보안 상태를 인증으로 설정한다. WCAp(104)는 그 후, 표 2를 참조하여 상기 설명된 바와 같이, 명령어들을 프로세싱할 수 있다.
블록(409)("고유 코드 = 고유 코드 백업?")에서, WCAp(104)는 지갑 고유 코드가 지갑 고유 코드 백업과 일치하는지를 결정하며, 양자 모두는 WCAp(104)에 저장된다. WCAp(104)가 지갑 고유 코드가 지갑 고유 코드 백업과 일치한다고 결정한다면, WCAp(104)는 블록(410)("응답 송신: 패스코드 검증")에서, 패스코드가 성공적으로 검증되었음을 표시하는, 모바일 고유 코드를 포함한 응답을 모바일 지갑(103)에 송신한다.
블록(409)에서 지갑 고유 코드가 지갑 고유 코드 백업과 일치하지 않는다는 결정이 이루어진다면, WCAp(104)는, 블록(411)("새로운 고유 코드 생성?")에서, 새로운 지갑 고유 코드를 생성하기 위한 지시들에 포함된 패스코드 검증 명령어가 블록(401)에서 수신되었는지를 결정한다. 그렇다면, WCAp(104)는 블록(412)("고유 코드 및 백업 생성")에서, 새로운 지갑 고유 코드 및 지갑 고유 코드 백업을 생성 및 저장하며, 블록(410)에서, 패스코드가 성공적으로 검증되었음을 표시하는 새로운 지갑 고유 코드를 모바일 지갑(103)에 송신한다.
대안적으로, 블록(411)에서 블록(401)에서 수신된 패스코드 검증 명령어가 새로운 지갑 고유 코드를 생성하기 위한 지시들을 포함하지 않는다는 결정이 이루어진다면, WCAp(104)는 블록(413)("에러: 고유 코드 검증 실패")에서, 지갑 고유 코드의 검증이 실패하였음을 표시하는 에러 응답을 모바일 지갑(103)에 송신한다.
2. 패리티 검사를 수행하는 것
표 1를 참조하여 보다 상세히 상기에서 논의된 바와 같이, WCAp(104)는 데이터를 저장하며, 이것은 디바이스 ID, SIM ID, 및/또는 지갑 ID를 포함할 수 있다. WCAp(104)는 이러한 데이터의 적어도 일 부분을 사용하여 패리티 검사를 수행한다.
특히, 모바일 지갑(103)은 디바이스 ID, SIM ID, 및/또는 지갑 ID를 포함한 패리티 검사 명령어를 WCAp(104)에 송신한다. 패리티 검사 명령어에 수신된 데이터 요소들의 적어도 하나는 WCAp(104)에 저장된 동일한 유형의 데이터 요소와 비교된다.
일 실시예에서, 패리티 검사 명령어에 수신된 디바이스 ID 및 지갑 ID는 WCAp(104)에 저장된 디바이스 ID 및 지갑 ID와 비교된다. 수신된 디바이스 ID 및 지갑 ID가 WCAp(104)에 저장된 디바이스 ID 및 지갑 ID와 일치한다는(, 그것과 동일한 값들을 가진다) 결정이 이루어진다면, WCAp(104)는 패리티 검사가 성공적이었음을 나타내는 응답을 모바일 지갑(103)에 송신한다.
대안적으로, 수신된 디바이스 ID 및 지갑 ID가 WCAp(104)에 저장된 디바이스 ID 및 지갑 ID와 일치하지 않는다는 결정이 이루어진다면, WCAp(104)는 패리티 검사가 실패하였음을 표시하는 응답을 모바일 지갑(103)에 송신한다. WCAp(104)는 또한 모바일 지갑(103)에 응답하여, 패리티 검사의 실패에 대한 이유를 표시하는 정보(예컨대, 명령어에 수신된 부정확한 값들, 명령어에서 손실된 정보, 요소 검증 실패 등)를 송신할 수 있다.
C. 지불 애플리케이션들의 WCAp 관리
도 1을 참조하여 추가로 상세히 상기 설명된 바와 같이, WCAp(예컨대, 도 1, WCAp(104))는 모바일 지갑(103)과 연관된 지불 애플리케이션들(, 중앙 TSM(예컨대, 도 1, 중앙 TSM(106))에 의해 설치되거나 또는 인스턴스화된 애플리케이션들)을 위한 CREL 애플리케이션으로서 등록된다.
도 5는 대표적인 실시예에 따른 CRS 미러(500)의 다이어그램이다. CRS 미러(500)는 보안 요소(예컨대, 도 1, 보안 요소(102)) 상의 CRS의 복사 또는 사본이며, CRS의 애플리케이션 정보의 모두 또는 일 부분을 포함한다.
CREL로서, WCAp(104)는 CRS 미러(500)를 사용하여 지불 애플리케이션들을 추적 및/또는 관리하며, 이것은 지불 애플리케이션들을 추적 및/또는 관리하기 위해 사용된 정보를 포함한다. 도 5에 예시된 바와 같이, CRS 미러(500)는 특정한 유형들의 애플리케이션들, 예를 들면, 중앙 TSM(106)에 의해 설치되거나 또는 인스턴스화된 애플리케이션들에 관련된 정보를 포함한다. 각각의 지불 애플리케이션은 고유 대응 애플리케이션 식별자(AID; application identifier)를 사용하여 CRS 미러(500)에 의해 추적되고 및/또는 관리된다. 도 5는 AID-1 내지 AID-6으로서 식별된 6개의 애플리케이션들을 추적하기 위해 사용된 정보를 포함한다.
게다가, CREL 애플리케이션으로서, WCAp(104)는 또한 CRS 미러(500)에 의해 추적되는 애플리케이션들(, AID-1 내지 AID-6)에 관련된 CRS에서의 변화들 및/또는 업데이트들에 관한 통지들을 수신한다. 이들 통지들은 예를 들면, 지불 애플리케이션의 활성화에 관련될 수 있다. 이러한 통지들을 수신할 때, WCAp(104)는 그것의 정보가 CRS에서의 정보와 일치하도록 CRS 미러(500)를 업데이트한다.
CRS 미러(500)는 또한: CRS 상태(, 활성화 또는 비활성화); 모바일 지갑-선택(즉, 지불 애플리케이션이, 예를 들면, 선택 명령어를 통해 선택되었는지 여부에 대한 표시); 상태(즉, 에러, 에러 없음, 교착 상태(Deadlock)); 및/또는 속도 카운터(Velocity Counter)와 같은 각각의 지불 애플리케이션(, 각각의 AID에 대응하는)에 대한 정보를 포함한다. 도 5는 이들 유형들의 정보의 각각에 대응하는 컬럼(column)을 포함한다.
CRS 상태는, CRS에 표시된 바와 같이, 지불 애플리케이션이 활성화되었는지 또는 비활성화되었는지를 표시한다.
지불 애플리케이션은 모바일 지갑이 WCAp에 선택 명령어를 송신하고 그것이 성공적으로 프로세싱될 때 "모바일 지갑-선택"이며, 애플리케이션은 예를 들면, 미리 결정된 양의 시간의 만료로 인해 그것의 선택 상태를 잃지 않는다.
CRS 미러(500)에 예시된 지불 애플리케이션의 상태는 CRS 상태 필드 및 모바일 지갑-선택 필드 사이에서의 불일치가 있는지를 표시한다. 예를 들면, 지불 애플리케이션의 CRS 상태가 활성화인 것으로 나열되며(, 애플리케이션이 CRS에 활성화된 것으로 나열된다), 모바일 지갑-선택 필드가 "예"이면, 상태는 "에러 없음"으로 설정된다. 대안적으로, 지불 애플리케이션의 CRS 상태가 비활성화인 것으로 나열되며 모바일-지갑 선택 필드가 "예"이면, 지불 애플리케이션의 상태는 CRS 및 CRS 미러가 불일치를 갖는다는 것을 표시하는 "에러"로 나열된다. 지불 애플리케이션의 상태는 또한, 악의적인 애플리케이션이 지불 애플리케이션을 사용하려고 시도하는 경우에, 또는 지불 애플리케이션이 처음에 부정확하게 활성화되었다면, "교착 상태"일 수 있다.
속도 카운터는 모바일 디바이스 상의 모바일 지갑과 통신하기 위한 요구 없이 실행되고 및/또는 프로세싱될 수 있는 트랜잭션들의 수를 제한하는 보안 메커니즘이다.
1. 지불 애플리케이션을 선택 및 활성화하는 것
각각의 지불 애플리케이션은 지불 수단(예컨대, 신용 카드)에 연계될 수 있는, 계좌(예컨대, 신용 계좌)에 대응하고 및/또는 그것에 연계된다. 도 6은 대표적인 실시예에 따라, 1차(, 디폴트) 지불 애플리케이션(, 모바일 지갑에 의해 트랜잭션들을 위해 사용될 1차 계좌 및/또는 지불 수단에 연계된 애플리케이션)을 선택 및 활성화시키기 위한 프로세스(600)를 예시한 시퀀스 다이어그램이다. 도 6에서의 단계들(650 내지 660)은 1차 지불 애플리케이션을 선택하기 위한 프로세스를 예시한다.
단계(650)("선택")에서, 모바일 지갑(601)(예컨대, 도 1, 모바일 지갑(103))은 CRS 미러(602a)(예컨대, 도 5, CRS 미러(500))를 포함하는 선택 명령어를 WCAp(602)(예컨대, 도 1, WCAp(104))에 송신한다. 선택 명령어는 선택될 지불 애플리케이션의 AID를 포함한다. WCAp(602)는 선택 명령어가 성공적으로 프로세싱되었는지 또는 에러가 발생하였는지(예컨대, WCAp 잠김, 애플리케이션이 발견되지 않음, 애플리케이션에 연계된 계좌가 중단됨, 부정확한 AID) 여부를 표시하는 응답을 모바일 지갑(601)에 송신할 수 있다.
결과적으로, 단계(652)("상태 인출")에서, 모바일 지갑(601)은 WCAp(602) 및 WCAp(602)가 설치되는 보안 요소에 대한 정보를 획득하기 위해, 상태 인출 명령어를 WCAp(602)에 송신한다. 특히, WCAp(602)는 상태 인출 명령어를 수신하며, 결과적으로, WCAp(602)에 관련된 보안 요소 및 보안 요소 상의 다른 지불 애플리케이션들로부터 정보를 검색한다. 이러한 정보는 예를 들면, 보안 요소 상에서의 애플리케이션들의 상태 및/또는 설정들을 포함한다. WCAp(602)는 검색된 정보의 일부 또는 모두를 포함한 응답을 모바일 지갑(601)에 송신할 수 있다.
단계(654)("패리티 검사/패스코드 검증")에서, 모바일 지갑(601)은 도 3 및 도 4를 참조하여 상기 보다 상세히 논의되는 바와 같이, WCAp(602)를 인증하기 위해(, WCAp(602)를 인증 상태에 위치시키기 위해), 패스코드 검증 또는 패리티 검사 명령어를 WCAp(602)에 송신한다. WCAp(602)는 패리티 검사 및/또는 패스코드 검증이 성공적이었는지 여부를 표시하는 응답을 모바일 지갑(601)에 송신할 수 있다. 즉, 특히, 이러한 응답은 명령어가 성공적으로 프로세싱되었는지, 명령어 데이터에 부정확한 값들이 있었는지, WCAp가 비활성이거나 또는 아직 개인화되지 않았는지, 또는 패스코드 검증 또는 패리티 검사가 실패하였는지를 표시하는 정보를 포함할 수 있다.
패스코드 검증 및/또는 패리티 검사 명령어들이 성공적으로 프로세싱되었다면(, WCAp(602)가 인증 상태에 있다), 모바일 지갑(601)은, 결과적으로, 단계(656)("지불 설정들 두기 (1차 선택)")에서, 지불 설정들 두기 명령어를 WCAp(602)에 송신한다. 지불 설정들 두기 명령어는 트랜잭션들을 가능하게 하며 가능하지 않게 하고, 지불 오버라이드(override)를 턴 온 및 턴 오프하며, 1차 지불 애플리케이션을 선택하기 위해 사용될 수 있다. 게다가, 지불 설정들 두기 명령어는 WCAp(602)가 인증 상태에 있을 때 프로세싱된다.
단계(656)에서 송신된 지불 설정들 두기 명령어는 1차 애플리케이션으로서 명령어에 포함된 AID에 대응하는 애플리케이션을 선택하기 위한 지시들을 포함한다.
대안적인 실시예에서, 1차 지불 애플리케이션을 선택하기 위한 지불 설정들 두기 명령어는 예를 들면, 1차 애플리케이션들로서 다수의 지불 애플리케이션들을 선택하기 위해 다수의 AID들을 포함할 수 있다.
단계(658)("PPSE 파라미터들 설정")에서, WCAp(602)는 PPSE 파라미터들 설정 명령어를 PPSE(603)에 송신한다. PPSE 파라미터들은: 1차 지불 AID(, 1차 지불 애플리케이션의 AID), 트랜잭션 가능/불능(, 트랜잭션들이 프로세싱될 수 있는지 여부에 대한 표시자), 및/또는 지불 오버라이드(, 모바일 디바이스가 트랜잭션들을 위해 사용될 자격이 있는지 여부에 대한 표시자)를 포함한다. 특히, 단계(658)에서, PPSE 파라미터들 설정 명령어는 1차 지불 애플리케이션으로서 상기 AID에 대응하는 애플리케이션을 설정하기 위한 지시들 및 AID를 포함한다.
결과적으로, 단계(660)("PPSE 응답 설정")에서, PPSE(603)는 PPSE 응답 설정 명령어를 프로세싱한다. PPSE 응답은 에러, 널(null) 응답, 또는 정상 응답일 수 있다. 에러는 패스코드가 잠겼고, 1차 애플리케이션이 선택되지 않았고, 및/또는 지불들이 불능(, 가능하지 않은)인지를 표시한다. 널 응답은 지불 오버라이드가 온임을 표시한다. 정상 응답은 1차 응답이 선택되고, 지불 오버라이드가 오프이고, 패스코드가 잠기지 않았으며, 지불들이 가능함을 표시한다. 정상 응답은 또한 어떤 애플리케이션들이 트랜잭션을 행하기 위해 선택될 수 있는지를 표시하는 하나 이상의 지불 애플리케이션들에 대응하는 정보(예컨대, AID, 라벨(label), 우선순위 표시자)를 포함한다. PPSE(603)는 예를 들면, 무접촉 트랜잭션에 사용된 무접촉 판독기를 포함하는 다른 시스템들에 PPSE 응답을 송신할 수 있다.
도 6의 시퀀스 다이어그램은 단계들(662 내지 670)에 의해 예시된 바와 같이, 지불 애플리케이션을 활성화시키기 위한 프로세스를 추가로 예시한다.
일단 1차 지불 애플리케이션이 선택된다면(, 단계들(650 내지 660)), 모바일 지갑(601)은 단계(662)("선택")에서, 선택 명령어를 CRS 애플릿(604)에 송신한다. CRS 애플릿(604)은 CRS를 포함하며 보안 요소 상에서의 지불 애플리케이션들을 관리하기 위해 사용된다. CRS 애플릿(604)은 또한 개방(605)에 대한 인터페이스로서 기능하며, 이것은 도 1을 참조하여 상기 설명된 바와 같이, 보안 요소의 플랫폼 및/또는 환경이다.
단계(662)에서 송신된 선택 명령어는 선택될 지불 애플리케이션의 AID를 포함한다. CRS 애플릿(604)은 선택 명령어가 성공적으로 프로세싱되었는지 또는 에러가 발생하였는지를 표시하는 응답을 모바일 지갑(601)에 송신할 수 있다.
결과적으로, 단계(664)("상태 설정(AID 활성화)")에서, 모바일 지갑(601)은, AID에 대응하는 지불 애플리케이션의 상태를 활성화로 설정하기 위한 지시들, 상태(예컨대, 활성화, 비활성화) 및 AID를 포함하는, 상태 설정 명령어를 CRS 애플릿(604)에 송신한다. 결과적으로, 단계(666)("CRS 업데이트")에서, CRS 애플릿(604)은 AID에 대응하는 지불 애플리케이션이 활성화되었음을 반영하기 위해 CR를 업데이트하기 위한 데이터(예컨대, AID, 상태)를 포함하는, CRS 업데이트 명령어를 개방(605)에 송신한다.
단계(668)("CREL 피드백 활성화")에서, 개방(605)은 CRS 미러(602a)에서 추적된 지불 애플리케이션에 대한 업데이트가 발생하였음을 표시하는 CREL 피드백(Feedback)을 WCAp(602)에 송신한다. CREL 피드백은 또한 CRS에 일치시키기 위해 CRS 미러(602a)를 업데이트하기 위한 정보(예컨대, AID, 상태)를 포함한다.
결과적으로, WCAp(602)는 단계(670)("활성화 허용?")에서, 지불 애플리케이션의 활성화를 허용할지를 결정한다. 예를 들면, WCAp(602)는, 도 5를 참조하여 상기 설명된 바와 같이, CREL 피드백에서의 AID의 상태가 CRS 미러(602a)에서의 모바일-지갑 선택 필드와 일치하는지를 결정한다. 불일치가 존재하지 않는다면, WCAp(602)는 지불 애플리케이션의 활성화를 허용하며 CRS 미러(602a)에서의 대응하는 AID의 CRS 상태를 활성화로 설정한다. 대안적으로, 불일치가 존재한다면, WCAp(602)는 지불 애플리케이션의 활성화를 거절할 것이며 CRS 미러(602a)에서 지불 애플리케이션을 비활성화로 리셋할 것이다.
대안적인 실시예에서, 지불 애플리케이션은 다수의 계좌들(예컨대, 신용 계좌, 체킹 계좌)에 연계(, 그것과 연관)될 수 있다. 이러한 경우에, 각각의 계좌는 지불 애플리케이션에 대응하는 고유 AID에 연계된다. 그 결과, 1차 애플리케이션을 선택하는 것은 1차 AID를 선택하는 것을 포함하며, 이것은 계좌 및 지불 애플리케이션에 대응한다.
2. 무접촉 트랜잭션 및 지불 애플리케이션들을 관리하는 것
도 7은 대표적인 실시예에 따라 무접촉 트랜잭션(700)을 관리하기 위한 프로세스를 예시한 시퀀스 다이어그램이다.
무접촉 트랜잭션(예컨대, 지불)은, 모바일 디바이스(예컨대, 도 1, 모바일 디바이스(101)) 상에 설치된 모바일 지갑에 연계되는, 지불 애플리케이션(704)과 같은, 애플리케이션을 사용하여 수행된다. 지불 애플리케이션은 또한 계좌(예컨대, 체킹 계좌)에 연계된다.
무접촉 트랜잭션(700)과 같은, 트랜잭션은 PoS에서의 무접촉 판독기(701)에 미리 결정된 근접성 내에 CLF(702)를 구비한 모바일 디바이스를 위치시킴으로써 개시된다. 단계(750)("14443 통신 Est.")에서, ISO 14443 통신(, NFC ISO 14443 프로토콜들을 사용한)은 모바일 디바이스에서의 CLF(702) 및 PoS에서의 무접촉 판독기(701) 사이에 수립된다. 결과적으로, 단계(752)("라디오 주파수 온")에서, CLF(702)는 WCAp(706)의 라디오 주파수 연결성을 온 상태로 바꾼다.
단계(754)("PPSE 선택")에서, 무접촉 판독기(701)는 PPSE(705)를 선택하기 위해, PPSE 선택 명령어를 개방(703)에 송신한다. PPSE 선택 명령어는 PPSE(705)의 AID를 포함한다. 개방(703)은, 결과적으로, 단계(756)("AID 활성화")에서, 명령어에서 수신된 AID(, PPSE(705)의 AID)의 상태를 활성화로 설정함으로써 PPSE(705)를 활성화시킨다. AID의 상태를 활성화로 설정하는 것은 AID의 상태를 갖고 CRS를 업데이트하는 것을 포함한다.
PPSE(705)가 성공적으로 활성화되지 않았다면, 개방(703)은 단계(758)("에러(AID가 활성화되지 않은 경우)")에서, 에러 메시지를 무접촉 판독기(701)에 송신한다. 대안적으로, 단계(760)("PPSE 선택(AID가 활성화된 경우)")에서, 개방(703)은 PPSE(705)의 AID를 포함한, 선택 명령어를 PPSE(705)에 송신한다. 결과적으로, 단계(762)("평가")에서, PPSE(705)는 보안 요소 상의 지불 애플리케이션들의 상태(, 1차 지불 애플리케이션이 선택되었는지, 지불 오버라이드가 온인지 오프인지, 패스코드가 잠겼는지 또는 잠기지 않았는지, 및/또는 지불들이 가능인지 또는 불능인지 여부)를 결정하기 위해 평가를 수행한다.
단계(764)("PPSE 응답")에서, PPSE(705)는 단계(762)에서 수행된 평가에 기초하여, 응답을 무접촉 판독기(701)에 송신한다. 응답은 에러, 널 응답, 또는 정상 응답일 수 있다. 에러는 패스코드가 잠겼고, 1차 애플리케이션이 선택되지 않았고, 및/또는 지불들이 불능(, 가능하지 않은)임을 표시한다. 널 응답은 지불 오버라이드가 온임을 표시한다. 정상 응답은 1차 응답이 선택되고, 지불 오버라이드가 오프이고, 패스코드가 잠기지 않았으며, 지불들이 가능함을 표시한다. 정상 응답은 또한 어떤 애플리케이션들이 트랜잭션을 행하기 위해 선택될 수 있는지를 표시하는, 하나 이상의 지불 애플리케이션들에 대응하는 정보(예컨대, AID, 라벨, 우선순위 표시자)를 포함한다.
무접촉 판독기(701)는, 단계(766)("지불 애플리케이션 선택")에서, 트랜잭션에서 사용하기 위한 지불 애플리케이션(, 지불 애플리케이션(704))의 AID를 포함한, 선택 명령어를 개방(703)에 송신한다. 결과적으로, 단계(768)("AID 활성화")에서, 개방(703)은 단계(766)에서 송신된 AID에 대응하는 상태를 활성화로 설정함으로써, 지불 애플리케이션을 활성화시킨다. 이것은, 예를 들면, CRS에서의 AID의 상태를 변경함으로써, 행해질 수 있다.
지불 애플리케이션이 성공적으로 활성화되지 않았다면, 개방(703)은 단계(770)("에러(AID가 활성화되지 않은 경우)")에서, 무접촉 판독기(701)에 에러 메시지를 송신한다. 대안적으로, 단계(772)("지불 애플리케이션 선택(AID가 활성화된 경우)")에서, 개방(703)은 단계(766)에서 송신된 선택 명령어에 포함된 AID에 대응하는, 선택 명령어를 지불 애플리케이션(704)에 송신한다.
단계(774)("지불 명령어들")에서, 지불 명령어들은 무접촉 트랜잭션을 수행하기 위해 무접촉 판독기(701) 및 지불 애플리케이션(704) 사이에서 송신될 수 있다. 지불 명령어들은 지불 트랜잭션을 완료하기 위해, EMV(, 유로페이, 마스터카드®, 비자®), ISO 7816, 또는 ISO 144443 표준들에 따라 송신된 APDU 명령어들일 수 있다. 이들 명령어들은, 예를 들면, 프로세싱 옵션들 획득(Get Processing Options), 외부 인증(External Authenticate), 기록 판독(Read Record), 암호 계산(Compute Cryptogram) 등을 포함한다.
단계(776)("트랜잭션 이벤트")에서, 지불 애플리케이션(704)은 트랜잭션 이벤트를 CLF(702)에 송신한다. 트랜잭션 이벤트는 무접촉 지불과 같은 트랜잭션이 완료되었음을 표시하는 정보를 모바일 지갑에 제공한다.
결과적으로, 단계(778)("트랜잭션 이벤트")에서, CLF(702)는 모바일 디바이스에 구비된 모바일 지갑(707)에 트랜잭션 이벤트를 송신한다. 그 결과, 모바일 지갑(707)은 트랜잭션이 완료되었음을 표시하는, 지불 애플리케이션(704)에 의해 발생된 정보를 수신한다.
D. 모바일 지갑 및 서버 사이에서의 상호 인증
도 8은 WCAp(802)(예컨대, 도 1, WCAp(104))를 포함한, 모바일 지갑(801) (예컨대, 도 1, 모바일 지갑(103)), 및 서버(805)(예컨대, 도 1, 서버(105)) 사이에서의 상호 인증 프로세스(800)를 예시한 시퀀스 다이어그램이다.
단계(850)("WS 티켓 생성 명령어")에서, 모바일 지갑(801)은 WS 티켓 생성 명령어를 WCAp(802)에 송신한다. 표 2를 참조하여 상기 논의된 바와 같이, WS 티켓 생성 명령어는 WCAp가 인증 상태에 있을 때 WCAp에 의해 프로세싱된다.
결과적으로, WCAp(802)는 단계(852)("티켓 ID 및 티켓 토큰 생성")에서 티켓 ID 및 티켓 토큰을 생성한다. 티켓 ID(Ticket ID)는 WCAp(802)에 의해 유지된 8-바이트 영구 카운터이다. 티켓 토큰(Ticket Token)은 WCAp(802)와 연관된 보안 요소에 의해 생성된 1회 8-바이트 랜덤(random) 식별자이며, 각각의 WS 티켓 생성 명령어를 위해 고유하게 생성된다. 단계(854)("티켓 계산")에서, WCAp(802)는 예를 들면, WCAp(802)에 저장된 지갑 서버 키(표 1을 참조하여 상기 추가로 상세히 설명된) 및 암호-블록 체이닝 모드(cipher-block chaining mode)에서의 3중 데이터 암호화 알고리즘(TDEA; Triple Data Encryption Algorithm)(, 데이터 암호화 표준(DES; Data Encryption Standard) 암호 알고리즘을 각각의 데이터 블록에 3회 적용하는 것)을 사용하여, 티켓 ID 및 티켓 토큰을 암호화함으로써 티켓을 계산한다.
WCAp(802)는 단계(856)("티켓 응답")에서, 단계들(852 및 854)에서 생성된 티켓 ID, 티켓 토큰, 및 티켓을 포함한 티켓 응답을 모바일 지갑(801)에 송신한다. 대안적으로, 티켓 응답은 보안 상태들이 만족스럽지 못하고, 지갑 서버 키가 로딩되지 않았고 및/또는 발견되지 않았으며, 및/또는 WCAp가 활성이 아니고 및/또는 개인화되지 않았음을 표시하는, 에러를 포함할 수 있다.
단계(858)("티켓 ID, 티켓 토큰, 티켓, 지갑 ID 송신")에서, 모바일 지갑(801)은 지갑 ID와 함께, 티켓 ID, 티켓 토큰, 및 티켓을 서버(803)에 송신한다. 결과적으로, 단계(860)("서버 인증 키 획득")에서, 서버(803)는 지갑 ID를 포함하여, 요청을, 단계(854)에서 티켓을 암호화하기 위해 사용된 지갑 서버 키와 일치해야 하는, 서버 인증 키를 획득하기 위해 아이덴티티 관리(IDM; Identity Management) 시스템(804)에 송신한다. IDM(804)은 서버(803)에 포함되거나 또는 그것에 결합된 시스템 및/또는 애플리케이션이며, 시스템들 내에서 또는 그것에 걸쳐 인증, 허가, 및/또는 특권들을 관리하기 위해 사용된다.
이에 응답하여, 단계(862)("서버 인증 키 생성")에서, IDM(804)은 수신된 지갑 ID를 위한 서버 인증 키를 생성하며, 단계(864)("서버 인증 키 송신")에서, 그것을 서버(803)에 송신한다.
결과적으로, 단계(866)("티켓 복호화")에서, 서버(803)는 단계(858)에서 수신된 티켓을 복호화한다. 일단 복호화되면, 티켓을 암호화하기 위해 사용된 티켓 ID 및 티켓 토큰은 단계(868)("티켓 ID 및 티켓 토큰 검증")에서, 서버(803)에 의해 검증된다. 서버(803)는 그 후 단계(870)("세션 토큰 생성")에서, 세션 토큰을 생성한다.
단계(872)("인증 리턴")에서, 서버(803)는 암호-블록 체이닝 모드에서의 TDEA를 사용하여 티켓 토큰 및 세션 토큰을 암호화함으로써 인증 리턴을 생성한다. 결과적으로, 단계(874)("세션 토큰 송신 및 인증 리턴")에서, 서버(803)는 세션 토큰 및 인증 리턴을 모바일 지갑(801)에 송신한다.
모바일 지갑(801)은 단계(876)("WS 명령어 검증")에서, WS 검증 명령어(표 2를 참조하여 상기 추가로 상세히 설명된)를 WCAp(802)에 송신한다. 통상적으로, WS 검증 명령어는 모바일 지갑이 의도된 서버와 연결을 수립하였는지를 검증하기 위해 사용된다. WS 검증 명령어는 WCAp가 인증 상태에 있을 때 WCAp에 의해 프로세싱된다. WS 검증 명령어는 세션 토큰 및 인증 리턴을 포함한다. WCAp(802)는 단계(878)("인증 리턴 복호화")에서 인증 리턴을 복호화한다. 일단 복호화되면, 인증 리턴을 암호화하기 위해 사용된 세션 토큰 및 티켓 토큰이 단계(880)("세션 토큰 및 티켓 토큰 검증")에서 WCAp(802)에 의해 검증된다.(발명자: 인증 리턴에 대한 이러한 검증이 어떻게 달성되는지를 설명해주세요.)
단계(882)("응답")에서, WCAp(802)는 응답을 모바일 지갑(801)에 송신한다. 응답은 서버가 검증되었는지(, 인증이 성공적이었는지), 또는 에러가 발생하였는지 여부를 표시하는 정보를 포함한다. 에러는 보안 상태가 만족스럽지 않았고, 명령어가 순서와 다르게 시도되었고, WCAp가 개인화되지 않았고 및/또는 비활성이고, 명령어가 부정확한 데이터를 포함하였으며, 및/또는 서버의 인증이 실패하였음을 표시한다.
G. 부가적인 예시적 구현들
본 발명(예컨대, 시스템(100), 수명 주기들(200 내지 300), 다이어그램(500), 프로세스들(600 내지 800), 또는 그것의 임의의 부분(들) 또는 기능(들))은 하드웨어, 소프트웨어, 또는 그것의 조합을 사용하여 구현될 수 있으며, 하나 이상의 모바일 디바이스 또는 다른 프로세싱 시스템들에서 구현될 수 있다. 본 발명에 의해 수행되는 조작들은 인간 동작에 대하여 참조되는 정도로, 인간 운영자의 어떤 그러한 능력도 대부분의 경우들에서, 본 발명의 일부를 형성하는 본 명세서에 설명된 동작들 중 임의의 것에서 필요하거나 또는 바람직하지 않다. 오히려, 본 명세서에 설명된 동작들은 기계 동작들이다. 본 발명의 동작들을 수행하기 위한 유용한 기계들은 모바일 전화기들, 스마트폰들(smartphones), 개인용 디지털 보조기들(PDAs; personal digital assistants) 또는 유사한 디바이스들을 포함한다.
일 실시예에서, 본 발명은 본 명세서에 설명된 기능을 실행할 수 있는 하나 이상의 시스템들로 향해진다. 시스템(900)의 일 예는 도 9에 도시된다.
시스템(900)은 프로세서(901)와 같은, 하나 이상의 프로세서들을 포함한다. 프로세서(901)는 통신 기반 시설(902)(예컨대, 통신 버스(bus), 네트워크)에 연결된다. 다양한 실시예들이 이러한 대표적인 시스템에 대하여 설명된다. 본 설명을 판독한 후, 다른 시스템들 및/또는 아키텍처들(architectures)을 사용하여 본 발명을 구현하는 방법이 관련 기술(들)에서의 숙련자에게 보다 명백해질 것이다.
시스템(900)은 또한 비-휘발성 메모리 등일 수 있는, 메인 메모리(903)를 포함한다.
시스템(900)은 또한 명령어들과 같은 데이터를 수신하기 위한 수신 모듈(904)을 포함한다. 요청들을 수신하는 것은 도 3 내지 도 8을 참조하여 상기에 추가로 상세히 논의된다.
시스템(900)은 또한 도 3 내지 도 8을 참조하여 상기 추가로 상세히 논의되는 바와 같이, 데이터를 검증, 인증, 및/또는 비교하기 위한 결정 모듈(905)을 포함한다.
시스템(900)은 또한 도 3 내지 도 8을 참조하여 상기에 추가로 상세히 논의된 바와 같이 명령어들 또는 동작들을 가능하게 하기 위한 인에이블링 모듈(enabling module)(906)을 포함한다.
시스템(900)은 또한 도 3 내지 도 8을 참조하여 상기에 추가로 상세히 논의된 바와 같이 명령어들을 프로세싱하기 위한 프로세싱 모듈(907)을 포함한다.
모듈들(904 내지 907)의 각각은 하드웨어, 소프트웨어, 또는 둘의 조합을 사용하여 구현될 수 있다.
예를 들면, 도 1 내지 도 8에 도시되며 그것과 관련되어 논의된 시스템들 및 절차들, 또는 그것의 임의의 부분 또는 기능과 같은, 상기 설명된 예시적인 실시예들은 하드웨어, 소프트웨어, 또는 둘의 조합을 사용함으로써 구현될 수 있다. 구현은 하나 이상의 컴퓨터들 또는 다른 프로세싱 시스템들에 있을 수 있다. 이들 예시적인 실시예들에 의해 수행된 조작들은 흔히 인간 운영자에 의해 수행된 정신적 동작들과 연관된 용어들로 참조되었지만, 어떤 인간 운영자도 본 명세서에 설명된 동작들 중 임의의 것을 수행하도록 요구되지 않는다. 다시 말해서, 동작들은 기계 동작들을 갖고 완전히 구현될 수 있다. 본 명세서에 제공된 예시적인 실시예들의 동작을 수행하기 위한 유용한 기계들은 범용 디지털 컴퓨터들 또는 유사한 디바이스들을 포함한다.
본 발명의 예시적인 실시예들의 부분들은 컴퓨터 기술들에서의 숙련자들에게 명백한 바와 같이, 종래의 범용 컴퓨터, 특수화된 디지털 컴퓨터 및/또는 본 발명의 교시들에 따라 프로그램된 마이크로프로세서(microprocessor)를 사용함으로써 편리하게 구현될 수 있다. 적절한 소프트웨어 코딩은 본 발명의 교시들에 기초하여 숙련된 프로그래머들에 의해 쉽게 준비될 수 있다.
몇몇 실시예들은 또한 애플리케이션-특정 집적 회로들, 필드 프로그램 가능한 게이트 어레이들(field programmable gate arrays)의 준비에 의해, 또는 종래의 구성요소 회로들의 적절한 네트워크를 상호 연결함으로써 구현될 수 있다.
몇몇 실시예들은 컴퓨터 프로그램 제품을 포함한다. 컴퓨터 프로그램 제품은 본 발명의 예시적인 실시예들의 절차들 중 임의의 것을 제어하거나 또는 컴퓨터로 하여금 그것들을 수행하게 하기 위해 사용될 수 있는 그것 상에 또는 그것 안에 저장된 지시들을 갖는 비-일시적 저장 매체 또는 미디어(media)일 수 있다. 저장 매체는 제한 없이 플로피 디스크(floppy disk), 미니 디스크(mini disk), 광 디스크, 블루-레이 디스크(Blu-ray Disc), DVD, CD 또는 CD-ROM, 마이크로-드라이브(micro-drive), 자기-광학 디스크(magneto-optical disk), ROM, RAM, EPROM, EEPROM, DRAM, VRAM, 플래시 메모리(flash memory), 플래시 카드(flash card), 자기 카드, 광학 카드, 나노시스템들(nanosystems), 분자 메모리 집적 회로, RAID, 원격 데이터 저장 장치/아카이브(archive)/웨어하우징(warehousing), 및/또는 지시들 및/또는 데이터를 저장하기에 적합한 임의의 다른 유형의 디바이스를 포함할 수 있다.
비-일시적 컴퓨터 판독 가능한 매체 또는 미디어 중 임의의 하나 상에 저장되면, 몇몇 구현들은 일반 및/또는 특수 컴퓨터 또는 마이크로프로세서의 하드웨어 양자 모두를 제어하기 위한, 및 컴퓨터 또는 마이크로프로세서로 하여금 본 발명의 예시적인 실시예들의 결과들을 이용하는 인간 사용자 또는 다른 메커니즘(mechanism)과 상호 작용할 수 있게 하기 위한 소프트웨어를 포함한다. 이러한 소프트웨어는 제한 없이 디바이스 드라이버들, 운영 시스템들, 및 사용자 애플리케이션들을 포함할 수 있다. 궁극적으로, 이러한 컴퓨터 판독 가능한 미디어는 상기 설명된 바와 같이, 본 발명의 예시적인 양상들을 수행하기 위한 소프트웨어를 더 포함한다.
상기 설명된 절차들을 구현하기 위한 소프트웨어 모듈들이 일반 및/또는 특수 목적 컴퓨터 또는 마이크로프로세서의 프로그래밍 및/또는 소프트웨어에 포함된다.
시스템(900)에서의 디바이스들 사이에서의 통신들은 매개 시스템들, 하드웨어, 및/또는 소프트웨어와의 또는 그것을 통한 통신들을 포함할 수 있다는 것이 이해되어야 한다.
본 발명의 다양한 예시적인 실시예들이 상기 설명되었지만, 그것들은 제한이 아닌, 예로서 제공된다는 것이 이해되어야 한다. 형태 및 세부사항에서의 다양한 변화들이 그 안에서 이루어질 수 있다는 것이 관련 기술(들)에서의 숙련자들에게 명백하다. 따라서, 본 발명은 상기 설명된 예시적인 실시예들 중 임의의 것에 의해 제한되지 않아야 하지만, 단지 다음의 청구항들 및 그것의 등가물들에 따라서만 정의되어야 한다.
또한, 도면들이 단지 예시적인 목적들을 위해서만 제공된다는 것이 이해되어야 한다. 본 명세서에 제공된 예시적인 실시예들의 아키텍처는 충분히 유연하며 구성 가능하고, 따라서 그것은 첨부한 도면들에 도시된 것이 아닌 다른 방식들로 이용되며 내비게이션(navigation)될 수 있다.
뿐만 아니라, 요약의 목적은 미국 특허 상표국 및 일반적으로 대중, 및 특히 특허 또는 법적 용어들 또는 어법에 친숙하지 않은 과학자들, 엔지니어들 및 전문가들이 출원의 기술적 개시의 특징 및 본질을 피상적인 검사로부터 빠르게 결정할 수 있게 하는 것이다. 요약은 임의의 방식으로 본 명세서에 제공된 예시적인 실시예들의 범위에 대하여 제한적인 것으로 의도되지 않는다. 청구항들에 나열된 절차들은 제공된 순서로 수행될 필요가 없다는 것이 또한 이해될 것이다.

Claims (21)

  1. 애플리케이션들(applications)을 안전하게 하며 관리하기 위한 시스템(system)에 있어서, 상기 시스템은:
    모바일 지갑 데이터(mobile wallet date)를 저장하도록 동작 가능한 적어도 하나의 메모리(memory); 및
    상기 적어도 하나의 메모리에 결합된 프로세서(processor)로서, 상기 프로세서는:
    모바일 지갑으로부터, 인증 데이터를 수신하고;
    상기 인증 데이터 및 상기 모바일 지갑 데이터의 비교에 기초하여 상기 인증 데이터가 유효한지를 결정하고;
    상기 인증 데이터가 유효하다면 하나 이상의 명령어들의 프로세싱을 가능하게 하고;
    상기 모바일 지갑으로부터 제 1 명령어를 수신하고;
    상기 제 1 명령어의 프로세싱이 가능한지를 결정하며;
    상기 제 1 명령어의 프로세싱이 가능하다면 상기 제 1 명령어를 프로세싱하도록 동작 가능한, 상기 프로세서를 포함하는 애플리케이션들을 안전하게 하며 관리하기 위한 시스템.
  2. 청구항 1에 있어서,
    상기 적어도 하나의 메모리는 또한 보안 상태를 저장하도록 동작 가능하며,
    상기 보안 상태는 상기 인증 데이터가 유효한지에 대한 상기 결정에 기초하며,
    상기 하나 이상의 명령어들의 상기 프로세싱은 또한 상기 보안 상태에 기초하여 가능해지는, 애플리케이션들을 안전하게 하며 관리하기 위한 시스템.
  3. 청구항 2에 있어서,
    상기 보안 상태는 (1) 비-선택(Non-Selected), (2) 선택된 비-인증(Selected Non-Authenticated), 또는 (3) 인증(Authenticated) 중 하나인, 애플리케이션들을 안전하게 하며 관리하기 위한 시스템.
  4. 청구항 1에 있어서,
    상기 모바일 지갑 데이터는 (1) 가입자 아이덴티티 모듈 식별자(ID), (2) 디바이스 ID, (3) 클라이언트(client) ID, (4) 패스코드(passcode), (5) 서버 키(server key), (6) 서버 키 검증 코드, 또는 (7) 위젯(widget) 인증 정보 중 적어도 하나를 포함하는, 애플리케이션들을 안전하게 하며 관리하기 위한 시스템.
  5. 청구항 1에 있어서,
    각각이 대응하는 상태를 갖는 하나 이상의 애플리케이션 식별자들을 포함한 애플리케이션 레지스트리(registry)를 더 포함하는, 애플리케이션들을 안전하게 하며 관리하기 위한 시스템.
  6. 청구항 5에 있어서,
    상기 적어도 하나의 메모리는 또한 상기 하나 이상의 애플리케이션 식별자들의 각각에 대응하는 애플리케이션을 저장하도록 동작 가능하며, 상기 제 1 명령어는 상기 하나 이상의 애플리케이션들의 설정들을 변경하기 위한 명령어인, 애플리케이션들을 안전하게 하며 관리하기 위한 시스템.
  7. 청구항 5에 있어서,
    상기 프로세서는 또한 상기 하나 이상의 애플리케이션 식별자들에 대응하는 업데이트 정보를 수신하도록 동작 가능한, 애플리케이션들을 안전하게 하며 관리하기 위한 시스템.
  8. 애플리케이션들을 안전하게 하며 관리하기 위한 방법에 있어서, 상기 방법은:
    모바일 지갑으로부터, 인증 데이터를 수신하는 단계;
    적어도 하나의 메모리에 저장된 모바일 지갑 데이터 및 상기 인증 데이터의 비교에 기초하여 상기 인증 데이터가 유효한지를 결정하는 단계;
    상기 인증 데이터가 유효하다면 하나 이상의 명령어들의 프로세싱을 가능하게 하는 단계;
    상기 모바일 지갑으로부터 제 1 명령어를 수신하는 단계;
    상기 제 1 명령어의 프로세싱이 가능한지를 결정하는 단계; 및
    상기 제 1 명령어의 프로세싱이 가능하다면 상기 제 1 명령어를 프로세싱하는 단계를 포함하는, 애플리케이션들을 안전하게 하며 관리하기 위한 방법.
  9. 청구항 8에 있어서,
    상기 적어도 하나의 메모리에 저장된 보안 상태는 상기 인증 데이터가 유효한지를 결정하는 단계에 기초하며, 상기 하나 이상의 명령어들의 프로세싱은 또한 상기 보안 상태에 기초하여 가능해지는, 애플리케이션들을 안전하게 하며 관리하기 위한 방법.
  10. 청구항 9에 있어서,
    상기 보안 상태는 (1) 비-선택, (2) 선택된 비-인증, 또는 (3) 인증 중 하나인, 애플리케이션들을 안전하게 하며 관리하기 위한 방법.
  11. 청구항 8에 있어서,
    상기 모바일 지갑 데이터는 (1) 가입자 아이덴티티 모듈 식별자(ID), (2) 디바이스 ID, (3) 클라이언트 ID, (4) 패스코드, (5) 서버 키, (6) 서버 키 검증 코드, 또는 (7) 위젯 인증 정보 중 적어도 하나를 포함하는, 애플리케이션들을 안전하게 하며 관리하기 위한 방법.
  12. 청구항 8에 있어서,
    상기 적어도 하나의 메모리는 각각이 대응하는 상태를 갖는 하나 이상의 애플리케이션 식별자들을 포함한 애플리케이션 레지스트리를 포함하는, 애플리케이션들을 안전하게 하며 관리하기 위한 방법.
  13. 청구항 12에 있어서,
    상기 제 1 명령어는 상기 하나 이상의 애플리케이션 식별자들에 대응하는 상기 적어도 하나의 메모리에 저장된 하나 이상의 애플리케이션들의 설정들을 수정하기 위한 명령어인, 애플리케이션들을 안전하게 하며 관리하기 위한 방법.
  14. 청구항 12에 있어서,
    상기 하나 이상의 애플리케이션 식별자들에 대응하는 업데이트(update) 정보를 수신하는 단계를 더 포함하는, 애플리케이션들을 안전하게 하며 관리하기 위한 방법.
  15. 지시들의 시퀀스들(sequences)을 저장한 비-일시적 컴퓨터-판독 가능한 매체에 있어서, 상기 지시들의 시퀀스들은 하나 이상의 프로세서들로 하여금:
    모바일 지갑으로부터, 인증 데이터를 수신하게 하고;
    적어도 하나의 메모리에 저장된 모바일 지갑 데이터 및 상기 인증 데이터의 비교에 기초하여 상기 인증 데이터가 유효한지를 결정하게 하고;
    상기 인증 데이터가 유효하다면 하나 이상의 명령어들의 프로세싱을 가능하게 하고;
    상기 모바일 지갑으로부터 제 1 명령어를 수신하게 하고;
    상기 제 1 명령어의 프로세싱이 가능한지를 결정하게 하며;
    상기 제 1 명령어의 프로세싱이 가능하다면 상기 제 1 명령어를 프로세싱하게 하기 위한 것인, 비-일시적 컴퓨터-판독 가능한 매체.
  16. 청구항 15에 있어서,
    상기 적어도 하나의 메모리에 저장된 보안 상태는 상기 인증 데이터가 유효한지에 대한 상기 결정에 기초하며, 상기 하나 이상의 명령어들의 프로세싱은 또한 상기 보안 상태에 기초하여 가능해지는, 비-일시적 컴퓨터-판독 가능한 매체.
  17. 청구항 16에 있어서,
    상기 보안 상태는 (1) 비-선택, (2) 선택된 비-인증, 또는 (3) 인증 중 하나인, 비-일시적 컴퓨터-판독 가능한 매체.
  18. 청구항 15에 있어서,
    상기 모바일 지갑 데이터는 (1) 가입자 아이덴티티 모듈 식별자(ID), (2) 디바이스 ID, (3) 클라이언트 ID, (4) 패스코드, (5) 서버 키, (6) 서버 키 검증 코드, 또는 (7) 위젯 인증 정보 중 적어도 하나를 포함하는, 비-일시적 컴퓨터-판독 가능한 매체.
  19. 청구항 15에 있어서,
    상기 적어도 하나의 메모리는 각각이 대응하는 상태를 갖는 하나 이상의 애플리케이션 식별자들을 포함한 애플리케이션 레지스트리를 포함하는, 비-일시적 컴퓨터-판독 가능한 매체.
  20. 청구항 19에 있어서,
    상기 제 1 명령어는 상기 하나 이상의 애플리케이션 식별자들에 대응하는 상기 적어도 하나의 메모리에 저장된 하나 이상의 지불 애플리케이션들의 설정들을 수정하기 위한 명령어인, 비-일시적 컴퓨터-판독 가능한 매체.
  21. 청구항 19에 있어서,
    상기 지시들의 시퀀스는 또한 상기 하나 이상의 프로세서들로 하여금 상기 하나 이상의 애플리케이션 식별자들에 대응하는 업데이트 정보를 수신하게 하는, 비-일시적 컴퓨터-판독 가능한 매체.
KR1020147036486A 2012-08-24 2013-04-05 보안 요소들 상에서 애플리케이션들을 안전하게 하며 관리하기 위한 시스템들, 방법들, 및 컴퓨터 프로그램 제품들 KR20150016369A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201261693089P 2012-08-24 2012-08-24
US61/693,089 2012-08-24
PCT/US2013/035406 WO2014031183A1 (en) 2012-08-24 2013-04-05 Systems, methods, and computer program products for securing and managing applications on secure elements

Publications (1)

Publication Number Publication Date
KR20150016369A true KR20150016369A (ko) 2015-02-11

Family

ID=48143387

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020147036486A KR20150016369A (ko) 2012-08-24 2013-04-05 보안 요소들 상에서 애플리케이션들을 안전하게 하며 관리하기 위한 시스템들, 방법들, 및 컴퓨터 프로그램 제품들

Country Status (9)

Country Link
US (1) US20140058937A1 (ko)
EP (1) EP2852926B1 (ko)
JP (2) JP6046248B2 (ko)
KR (1) KR20150016369A (ko)
CN (1) CN104412285A (ko)
AU (2) AU2013306399B2 (ko)
CA (1) CA2874603C (ko)
MX (1) MX355593B (ko)
WO (1) WO2014031183A1 (ko)

Families Citing this family (64)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9171302B2 (en) * 2012-04-18 2015-10-27 Google Inc. Processing payment transactions without a secure element
MX2014014331A (es) 2012-05-24 2015-09-23 Google Inc Sistemas, metodos y productos de programas informaticos para proporcionar un protocolo sin contacto.
US10057400B1 (en) 2012-11-02 2018-08-21 Majen Tech, LLC Lock screen interface for a mobile device apparatus
US11431834B1 (en) 2013-01-10 2022-08-30 Majen Tech, LLC Screen interface for a mobile device apparatus
US10051103B1 (en) 2013-01-10 2018-08-14 Majen Tech, LLC Screen interface for a mobile device apparatus
CN105143996A (zh) 2013-03-15 2015-12-09 苹果公司 使用无线设备来促进与用户账户的交易
WO2014160715A1 (en) * 2013-03-26 2014-10-02 Jvl Ventures, Llc Systems, methods, and computer program products for managing access control
US9646302B2 (en) 2013-03-26 2017-05-09 Google Inc. Systems, methods, and computer program products for managing wallet activation
FR3004884B1 (fr) * 2013-04-17 2016-09-09 Oberthur Technologies Element securise pour terminal de telecommunications
GB201310084D0 (en) 2013-06-06 2013-07-17 Mastercard International Inc Improvements to electronic authentication systems
US9317704B2 (en) * 2013-06-12 2016-04-19 Sequent Software, Inc. System and method for initially establishing and periodically confirming trust in a software application
US20150019418A1 (en) * 2013-07-12 2015-01-15 Jvl Ventures, Llc Systems, methods, and computer program products for enabling instrument credentials
CN105981027A (zh) 2013-08-12 2016-09-28 哥莱菲特软件公司 安全认证并切换至加密域
CA2921223C (en) 2013-08-13 2023-05-09 Blackhawk Network, Inc. Open payment network
EP3036696A4 (en) * 2013-08-21 2016-08-24 Visa Int Service Ass METHODS AND SYSTEMS FOR TRANSFERRING ELECTRONIC MONEY
US11044248B2 (en) * 2013-09-13 2021-06-22 Symbol Technologies, Llc Method and device for facilitating mutual authentication between a server and a user using haptic feedback
WO2015074150A1 (en) 2013-11-21 2015-05-28 Graphite Software Corporation Managed domains for remote content and configuration control on mobile information devices
FR3018972B1 (fr) * 2014-03-18 2016-04-15 Proton World Int Nv Secure nfc routing
US10511580B2 (en) 2014-03-31 2019-12-17 Monticello Enterprises LLC System and method for providing a social media shopping experience
US11080777B2 (en) 2014-03-31 2021-08-03 Monticello Enterprises LLC System and method for providing a social media shopping experience
US10726472B2 (en) 2014-03-31 2020-07-28 Monticello Enterprises LLC System and method for providing simplified in-store, product-based and rental payment processes
US11282131B2 (en) 2014-03-31 2022-03-22 Monticello Enterprises LLC User device enabling access to payment information in response to user input
JP6029613B2 (ja) * 2014-04-22 2016-11-24 ソフトバンク株式会社 通信端末装置及び決済システム
AU2015259162B2 (en) * 2014-05-13 2020-08-13 Visa International Service Association Master applet for secure remote payment processing
US9424568B2 (en) 2014-05-29 2016-08-23 Apple Inc. Financial-transaction notifications
US9299072B2 (en) 2014-05-29 2016-03-29 Apple Inc. Apparatuses and methods for operating a portable electronic device to conduct mobile payment transactions
US11017384B2 (en) 2014-05-29 2021-05-25 Apple Inc. Apparatuses and methods for using a primary user device to provision credentials onto a secondary user device
US9400977B2 (en) 2014-05-29 2016-07-26 Apple Inc. User device enabling access to payment information in response to mechanical input detection
US10242356B2 (en) * 2014-08-25 2019-03-26 Google Llc Host-formatted select proximity payment system environment response
JP6305284B2 (ja) 2014-09-10 2018-04-04 株式会社東芝 携帯可能電子装置
CN105631664A (zh) * 2014-11-26 2016-06-01 华为终端(东莞)有限公司 一种非接触支付方法、装置及系统
EP3040922A1 (en) * 2014-12-30 2016-07-06 Telefonica Digital España, S.L.U. Method and system for providing authentication, integrity and confidentiality for transactions performed by mobile device users
WO2016144904A1 (en) * 2015-03-06 2016-09-15 Mastercard International Incorporated Secure mobile remote payments
JP6520741B2 (ja) * 2015-03-31 2019-05-29 ブラザー工業株式会社 情報入力システム
WO2016158136A1 (ja) * 2015-03-31 2016-10-06 ブラザー工業株式会社 情報入力装置およびプログラム
EP3086256A1 (en) * 2015-04-23 2016-10-26 Gemalto Sa Method of managing a secure element in a nfc device
US20170103396A1 (en) * 2015-10-13 2017-04-13 Mastercard International Incorporated Adaptable messaging
GB2549245A (en) * 2015-11-22 2017-10-18 Facebanx Ltd Out of band pre-authentication of a transaction
EP3176695A1 (en) * 2015-12-04 2017-06-07 Gemalto Sa Method for managing a package in a secure element
US10523441B2 (en) 2015-12-15 2019-12-31 Visa International Service Association Authentication of access request of a device and protecting confidential information
US10546289B1 (en) 2015-12-30 2020-01-28 Wells Fargo Bank, N.A. Mobile wallets with automatic element selection
EP3208717A1 (en) * 2016-02-17 2017-08-23 Gemalto Sa Method for managing objects in a secure element
EP3236405B1 (en) * 2016-04-21 2022-11-02 IDEMIA France Selecting an application on a card
US10902405B1 (en) 2016-05-11 2021-01-26 Wells Fargo Bank, N.A. Transient mobile wallets
US20180012037A1 (en) * 2016-07-05 2018-01-11 Nxp B.V. Secure operation apparatuses and methods therefor
US10057061B1 (en) 2016-09-13 2018-08-21 Wells Fargo Bank, N.A. Secure digital communications
US10075300B1 (en) 2016-09-13 2018-09-11 Wells Fargo Bank, N.A. Secure digital communications
US11074582B2 (en) * 2016-09-23 2021-07-27 Apple Inc. Secure element having multiple users
US10679201B2 (en) 2016-11-04 2020-06-09 Nxp B.V. Personal point of sale (pPOS) device that provides for card present E-commerce transaction
US10853798B1 (en) 2016-11-28 2020-12-01 Wells Fargo Bank, N.A. Secure wallet-to-wallet transactions
US10057225B1 (en) 2016-12-29 2018-08-21 Wells Fargo Bank, N.A. Wireless peer to peer mobile wallet connections
US11620639B2 (en) * 2017-03-01 2023-04-04 Jpmorgan Chase Bank, N.A. Systems and methods for dynamic inclusion of enhanced data in transactions
US11514418B2 (en) * 2017-03-19 2022-11-29 Nxp B.V. Personal point of sale (pPOS) device with a local and/or remote payment kernel that provides for card present e-commerce transaction
CN109214814A (zh) * 2017-06-29 2019-01-15 国民技术股份有限公司 一种安全元件、工作方法及计算机可读存储介质
US10567156B2 (en) * 2017-11-30 2020-02-18 Bank Of America Corporation Blockchain-based unexpected data detection
US11748743B1 (en) * 2017-12-04 2023-09-05 Wells Fargo Bank, N.A. Trust-based application to application connectivity
US11775672B1 (en) 2017-12-04 2023-10-03 Wells Fargo Bank, N.A. Trust-based application to application connectivity
US11620623B2 (en) * 2018-05-31 2023-04-04 Nxp B.V. Merchant transaction mirroring for personal point of sale (pPOS) for card present e-commerce and in vehicle transaction
EP3668037A1 (en) * 2018-12-11 2020-06-17 Thales Dis France SA Method to manage multiple virtual documents in a contactless secure element
US11061754B2 (en) * 2019-08-06 2021-07-13 Alteryx, Inc. Error handling during asynchronous processing of sequential data blocks
WO2021055665A1 (en) * 2019-09-19 2021-03-25 Mastercard International Incorporated Application management for simulated contactless payment cards
US20210406869A1 (en) * 2020-06-25 2021-12-30 Mastercard International Incorporated Methods, systems and computer program products for modifying contactless payment card configurations
CN115167952B (zh) * 2022-08-25 2023-01-20 深圳市汇顶科技股份有限公司 一种安全元件、应用程序管理方法及电子设备、存储介质
US11930043B1 (en) * 2023-02-28 2024-03-12 Blockaid Ltd Techniques for digital wallet integration and for scanning transactions using integrated modules

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002135407A (ja) * 2000-10-30 2002-05-10 Toshiba Corp 通信端末装置および同通信端末装置における認証方法
JP2003323598A (ja) * 2002-05-08 2003-11-14 Dainippon Printing Co Ltd 更新機能を有するicカード
EP1622098A1 (en) * 2004-07-30 2006-02-01 ST Incard S.r.l. IC card secure personalization method
US7628322B2 (en) * 2005-03-07 2009-12-08 Nokia Corporation Methods, system and mobile device capable of enabling credit card personalization using a wireless network
JP4685567B2 (ja) * 2005-09-15 2011-05-18 株式会社日立製作所 情報処理装置によるサービス提供システム
CN101755291B (zh) * 2007-07-24 2012-05-30 Nxp股份有限公司 用于向移动电话安全地发送应用程序的方法、系统和可信任服务管理器
JP5304193B2 (ja) * 2008-11-18 2013-10-02 富士電機株式会社 Icカード決済端末、その制御装置、プログラム
CN101866463A (zh) * 2009-04-14 2010-10-20 中兴通讯股份有限公司 一种eNFC终端、eNFC智能卡及其通信方法
GB2497900A (en) * 2010-09-28 2013-06-26 Barclays Bank Plc Mobile payment system
US8352749B2 (en) * 2010-12-17 2013-01-08 Google Inc. Local trusted services manager for a contactless smart card
US8807440B1 (en) * 2010-12-17 2014-08-19 Google Inc. Routing secure element payment requests to an alternate application
US9589266B2 (en) * 2011-04-01 2017-03-07 Visa International Service Association Restricted-use account payment administration apparatuses, methods and systems

Also Published As

Publication number Publication date
AU2016201188A1 (en) 2016-03-17
EP2852926B1 (en) 2020-07-08
WO2014031183A1 (en) 2014-02-27
US20140058937A1 (en) 2014-02-27
CN104412285A (zh) 2015-03-11
JP2017076407A (ja) 2017-04-20
EP2852926A1 (en) 2015-04-01
CA2874603C (en) 2017-07-18
AU2013306399B2 (en) 2015-12-03
JP6046248B2 (ja) 2016-12-14
CA2874603A1 (en) 2014-02-27
MX2014015516A (es) 2015-03-06
AU2013306399A1 (en) 2014-12-11
AU2016201188B2 (en) 2017-08-03
JP2015529876A (ja) 2015-10-08
MX355593B (es) 2018-04-24

Similar Documents

Publication Publication Date Title
AU2016201188B2 (en) Systems, methods, and computer program products for securing and managing applications on secure elements
US11601273B2 (en) Systems, methods, and computer program products for interfacing multiple service provider trusted service managers and secure elements
US10114976B2 (en) Systems, methods, and computer program products for interfacing multiple service provider trusted service managers and secure elements
US20240112172A1 (en) Digital transaction apparatus, system, and method with a virtual companion card
EP3438812B1 (en) System and method for providing secure data communication permissions to trusted applications on a portable communication device
US10929832B2 (en) Method and system for electronic wallet access
JP6037583B2 (ja) データの再インストールを管理するためのシステム、方法、およびコンピュータプログラム製品
EP3053081B1 (en) Systems, methods, and computer program products for securely managing data on a secure element

Legal Events

Date Code Title Description
A201 Request for examination
N231 Notification of change of applicant
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
J201 Request for trial against refusal decision
J301 Trial decision

Free format text: TRIAL NUMBER: 2016101004293; TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE REFUSAL REQUESTED 20160721

Effective date: 20180720