KR102655287B1 - 토큰 상태 동기화 - Google Patents

토큰 상태 동기화 Download PDF

Info

Publication number
KR102655287B1
KR102655287B1 KR1020217003023A KR20217003023A KR102655287B1 KR 102655287 B1 KR102655287 B1 KR 102655287B1 KR 1020217003023 A KR1020217003023 A KR 1020217003023A KR 20217003023 A KR20217003023 A KR 20217003023A KR 102655287 B1 KR102655287 B1 KR 102655287B1
Authority
KR
South Korea
Prior art keywords
token
application
computer
service provider
service
Prior art date
Application number
KR1020217003023A
Other languages
English (en)
Other versions
KR20210018505A (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 비자 인터네셔널 서비스 어소시에이션
Publication of KR20210018505A publication Critical patent/KR20210018505A/ko
Application granted granted Critical
Publication of KR102655287B1 publication Critical patent/KR102655287B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/36Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
    • G06Q20/367Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/321Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
    • H04L9/3213Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority using tickets or tokens, e.g. Kerberos
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/33User authentication using certificates
    • G06F21/335User authentication using certificates for accessing specific resources, e.g. using Kerberos tickets
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/629Protecting access to data via a platform, e.g. using keys or access control rules to features or functions of an application
    • 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/04Payment circuits
    • G06Q20/045Payment circuits using payment protocols involving tickets
    • G06Q20/0457Payment circuits using payment protocols involving tickets the tickets being sent electronically
    • 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/16Payments settled via telecommunication systems
    • 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
    • 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
    • G06Q20/363Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes with the personal data of a user
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3821Electronic credentials
    • G06Q20/38215Use of certificates or encrypted proofs of transaction rights
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3825Use of electronic signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3829Payment protocols; Details thereof insuring higher security of transaction involving key management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • 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
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/102Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying security measure for e-commerce

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Finance (AREA)
  • Software Systems (AREA)
  • Signal Processing (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Telephonic Communication Services (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Multi Processors (AREA)
  • Hardware Redundancy (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

애플리케이션 토큰을 관리하기 위한 기법은, 통신 장치 상의 제1 서비스 제공자 애플리케이션에 의해, 제1 애플리케이션 토큰에 대한 제1 요청을 제1 서비스 제공자 컴퓨터에 제공하는 단계, 상기 통신 장치 상의 계정 관리 애플리케이션에 의해, 상기 제1 서비스 제공자 컴퓨터와 통신하는 토큰 서비스 컴퓨터로부터 상기 제1 애플리케이션 토큰을 수신하는 단계, 및 상기 제1 애플리케이션 토큰을 계정 관리 애플리케이션의 토큰 용기에 저장하는 단계를 포함할 수 있다.

Description

토큰 상태 동기화
관련 출원에 대한 상호 참조
본 출원은 2018년 7월 3일자로 출원된 미국 가특허 출원 제62/693,631호에 대한 우선권을 주장하며, 전문은 본원에 참조로 포함된다.
리소스에 액세스하는 디지털 수단은 점점 더 인기가 높다. 스마트폰과 같은 통신 장치는 여행, 엔터테인먼트 및 구매와 같은 상호작용을 위해 다양한 응용프로그램으로 구성될 수 있다. 한 가지 예시는 하나 이상의 결제 기기와 연관된 결제 데이터를 저장할 수 있는 지갑 애플리케이션이다. 저장된 결제 데이터는, 트랜잭션을 수행하기 위해 지갑 애플리케이션을 통해 제시될 수 있다. 또 다른 예는 발권 애플리케이션이며, 이는 여행, 이벤트 등에 대한 티켓을 교환하기 위해 스캔할 수 있는 빠른 응답(QR) 코드를 저장할 수 있다.
이러한 애플리케이션의 양이 증가함에 따라, 애플리케이션의 통합이 점점 어려워진다. 예를 들어, 수천 개의 운송 및 엔터테인먼트 제공업체, 수백 개의 제3자 티켓 벤더, 및 수십 개의 지갑 애플리케이션 제공업체가 있을 수 있다. 사용자가 수백 또는 수천 개의 가능한 채널을 통해 티켓을 구입하기 위해 선택한 지갑 제공업체를 사용할 수 있도록, 수백 또는 수천 개의 제공업체 각각은 지갑 제공업체 각각과 통신할 수 있어야 한다.
많은 리소스 액세스 애플리케이션의 또 다른 단점은 QR 코드와 같은 바코드를 사용하는 것이며, 이는 일반적으로 사용자가 수동으로 선택해야 하고, 액세스 지점에서 판독기로 스캔하기 어려울 수 있다. 또한, 이러한 코드는 쉽게 전송되고 복사되어 공급자가 그들의 사용에 대한 통제권을 유지하기가 어렵다.
본 발명의 구현예는 이러한 문제점 및 기타 문제점을 개별적으로 또는 총괄적으로 해결한다.
일부 구현예에 따라, 애플리케이션 토큰을 관리하기 위한 프로세스는, 통신 장치 상의 제1 서비스 제공자 애플리케이션에 의해, 제1 애플리케이션 토큰에 대한 제1 요청을 제1 서비스 제공자 컴퓨터에 제공하는 단계, 상기 통신 장치 상의 계정 관리 애플리케이션에 의해, 상기 제1 서비스 제공자 컴퓨터와 통신하는 토큰 서비스 컴퓨터로부터 상기 제1 애플리케이션 토큰을 수신하는 단계, 및 상기 제1 애플리케이션 토큰을 계정 관리 애플리케이션의 토큰 용기에 저장하는 단계를 포함할 수 있다.
다른 구현예에 따라, 통신 장치는 메모리, 프로세서, 및 비일시적 컴퓨터 판독가능 매체를 포함할 수 있고, 상기 매체는 상기 프로세서에 의해 실행되는 경우에 다음 단계를 실행하는 명령어를 포함한다; 애플리케이션 토큰을 관리하기 위한 프로세스는, 통신 장치 상의 제1 서비스 제공자 애플리케이션에 의해, 제1 애플리케이션 토큰에 대한 제1 요청을 제1 서비스 제공자 컴퓨터에 제공하는 단계, 상기 통신 장치 상의 계정 관리 애플리케이션에 의해, 상기 제1 서비스 제공자 컴퓨터와 통신하는 토큰 서비스 컴퓨터로부터 상기 제1 애플리케이션 토큰을 수신하는 단계, 및 상기 제1 애플리케이션 토큰을 계정 관리 애플리케이션의 토큰 용기에 저장하는 단계.
다른 구현예에 따라, 방법은, 서비스 제공자 컴퓨터에 의해, 통신 장치 상의 서비스 제공자 애플리케이션으로부터 애플리케이션 토큰에 대한 요청을 수신하는 단계; 및 상기 서비스 제공자 컴퓨터에 의해, 상기 애플리케이션 토큰을 프로비저닝 하기 위해 토큰 서비스 컴퓨터로의 프로비저닝 요청을 상기 통신 장치 상의 계정 관리 애플리케이션의 토큰 용기에 전송하는 단계를 포함할 수 있다.
다른 구현예에 따라, 서비스 제공자 컴퓨터는 메모리, 프로세서, 및 비일시적 컴퓨터 판독가능 매체를 포함할 수 있고, 상기 매체는 상기 프로세서에 의해 실행되는 경우에 다음 단계를 실행하는 명령어를 포함한다; 통신 장치 상의 서비스 제공자 애플리케이션으로부터 애플리케이션 토큰에 대한 요청을 수신하는 단계, 및 상기 애플리케이션 토큰을 프로비저닝 하기 위해 토큰 서비스 컴퓨터로의 프로비저닝 요청을 상기 통신 장치 상의 계정 관리 애플리케이션의 토큰 용기에 전송하는 단계.
다른 구현예에 따라, 방법은, 토큰 서비스 컴퓨터에서, 통신 장치(상기 통신 장치는 또한, 서비스 제공자 컴퓨터와 연관된 서비스 제공자 애플리케이션을 포함함) 상의 계정 관리 애플리케이션의 토큰 용기에 애플리케이션 토큰을 프로비저닝하기 위한 프로비저닝 요청을 수신하는 단계, 및 상기 토큰 서비스 컴퓨터로부터 상기 통신 장치 상의 계정 관리 애플리케이션으로, 상기 통신 장치 상의 계정 관리 애플리케이션의 토큰 용기로의 애플리케이션 토큰을 전송하는 단계.
다른 구현예에 따라, 토큰 서비스 컴퓨터는 메모리, 프로세서, 및 비일시적 컴퓨터 판독가능 매체를 포함할 수 있고, 상기 매체는 상기 프로세서에 의해 실행되는 경우에 다음 단계를 실행하는 명령어를 포함한다; 통신 장치(상기 통신 장치는 또한, 서비스 제공자 컴퓨터와 연관된 서비스 제공자 애플리케이션을 포함함) 상의 계정 관리 애플리케이션의 토큰 용기에 애플리케이션 토큰을 프로비저닝하기 위한 프로비저닝 요청을 수신하는 단계, 및 상기 토큰 서비스 컴퓨터로부터 상기 통신 장치 상의 계정 관리 애플리케이션으로, 상기 통신 장치 상의 계정 관리 애플리케이션의 토큰 용기로의 애플리케이션 토큰을 전송하는 단계.
도 1은 일부 구현예에 따라, 서비스 제공자 컴퓨터와 계정 관리 서버 세트와 상호 작용하는 통신 장치를 나타낸다.
도 2a 및 2b는 일부 구현예에 따라, 서비스 제공자 컴퓨터 세트와 상호 작용하는 통신 장치를 나타낸다.
도 3은 일부 구현예에 따라, 애플리케이션 토큰 프로비저닝과 교환 프로세스 및 시스템을 나타낸다.
도 4a 및 도 4b는 일부 구현예에 따른 통신 장치의 블록도를 나타낸다.
도 5는 일부 구현예에 따른 서비스 제공자 컴퓨터의 블록도를 나타낸다.
도 6은 일부 구현예에 따른 토큰 서비스 컴퓨터의 블록도를 나타낸다.
도 7은 일부 구현예에 따른 애플리케이션 토큰 프로비저닝 프로세스를 나타낸다.
도 8은 일부 구현예에 따른 다른 애플리케이션 토큰 프로비저닝 프로세스를 나타낸다.
도 9는 일부 구현예에 따른 애플리케이션 토큰 교환 프로세스를 나타낸다.
도 10 및 도 11은 일부 구현예에 따른 로열티 데이터 업데이트 흐름을 나타낸다.
도 12는 일부 구현예에 따라, 애플리케이션 토큰 및 토큰 상태를 관리하기 위한 프로세스의 흐름도를 나타낸다.
애플리케이션 토큰을 관리하기 위한 기법이 설명되어 있다. 일부 구현예에서, 통신 장치 상의 제1 서비스 제공자 애플리케이션은, 제1 서비스 제공자 컴퓨터에, 제1 애플리케이션 토큰에 대한 제1 요청을 제공할 수 있다. 통신 장치의 계정 관리 애플리케이션은, 제1 서비스 제공자 컴퓨터와 통신하는 토큰 서비스 컴퓨터로부터, 제1 애플리케이션 토큰을 수신한다. 제1 애플리케이션 토큰은, 계정 관리 애플리케이션의 토큰 용기에 저장된다.
일부 구현예에서, 서비스 제공자는, 토큰 용기에 연결된 애플리케이션 특정 토큰을 발급하기 위해, 토큰 서비스 컴퓨터를 작동할 수 있다. 애플리케이션 특정 토큰은 자신의 토큰 상태를 가질 수 있고, 애플리케이션 토큰과 각각의 토큰 상태는 사용자의 통신 장치에 프로비저닝될 수 있다. 통신 장치에 저장된 애플리케이션 토큰이 사용되는 경우에, 토큰 상태는 업데이트될 수 있다. 이러한 방식으로 데이터 보안 및 편의성은 데이터, 예컨대 발권 정보(예, 운송 및 여행 정보), 로열티 정보 또는 기타 애플리케이션 특정 정보 또는 데이터와 연결되어 제공될 수 있다.
본 발명의 구현예를 설명하기 전에, 일부 용어의 설명은 본 발명의 구현예를 이해하는 데 도움이 될 수 있다.
"통신 장치"는, 다른 장치와 통신할 수 있는 하나 이상의 전자 부품(예, 집적된 칩)을 포함하는 장치일 수 있다. "휴대용 통신 장치"는, 사용자에 의해 운반되고 작동될 수 있는 통신 장치의 한 형태일 수 있다. 휴대용 통신 장치는, 네트워크에 원격 통신 기능을 제공할 수 있으며, 데이터 또는 통신을 다른 장치에 송신하고 이들로부터 수신하도록 구성될 수 있다. 휴대용 통신 장치는, 모바일 폰(예, 스마트 폰, 셀룰러 폰 등), 태블릿, 휴대용 미디어 플레이어, PDA(personal digital assistant), 웨어러블 컴퓨터 장치(예, 시계), 전자 판독기 장치 등과 같은 모바일 장치의 형태, 또는 카드(예, 스마트 카드) 또는 포브(fob) 등의 형태일 수도 있다. 휴대용 통신 장치의 예시는 또한, 휴대용 컴퓨터 장치(예, 랩톱, 넷북, 울트라북 등)를 포함할 수 있다. 휴대용 통신 장치는 또한, 통신 및/또는 네트워크 연결 능력을 구비한 차량(예, 소형차와 같은 자동차)의 형태일 수도 있다.
"서버 컴퓨터"는 강력한 컴퓨터 또는 컴퓨터들의 클러스터를 포함할 수 있다. 예를 들어, 서버 컴퓨터는, 큰 메인프레임, 미니컴퓨터 클러스터, 또는 한 유닛으로서 기능하는 서버의 그룹일 수 있다. 일례로, 서버 컴퓨터는 웹 서버에 연결된 데이터베이스 서버일 수 있다. 서버 컴퓨터는, 데이터베이스에 결합될 수 있고, 하나 이상의 클라이언트 컴퓨터로부터의 요청을 서비스하기 위한 임의의 하드웨어, 소프트웨어, 기타 로직, 또는 이들의 조합을 포함할 수 있다. 서버 컴퓨터는, 하나 이상의 연산 장치를 포함할 수도 있고, 하나 이상의 클라이언트 컴퓨터로부터의 요청을 서비스하기 위해 다양한 연산 구조, 배열, 및 편집 중 임의의 것을 사용할 수도 있다.
"애플리케이션"은, 특정한 목적을 위해 사용되는 컴퓨터 프로그램일 수 있다.
"시간 데이터 요소"는 임의의 적절한 시간과 관련된 데이터를 포함할 수 있다. 예를 들어, 시간 데이터 요소는 시간, 날짜, 월, 연도, 또는 위의 임의의 적합한 조합일 수 있다. 시간 데이터 요소는 또한 시간, 날짜, 월, 연도 또는 위의 임의의 적합한 조합으로부터 도출될 수 있다. 암호화된 시간 데이터 요소는, 암호화된 시간, 날짜, 월, 연도 및/또는 상기 조합의 적절한 조합을 포함할 수 있는, 데이터 요소일 수 있다.
"애플리케이션 토큰"은 리소스 또는 위치에 대한 액세스를 제어하기 위해 사용되는 식별자일 수 있다. 애플리케이션 토큰은, 예를 들어 전자 티켓일 수 있다. 다른 예로서, 애플리케이션 토큰은 로열티 프로그램(예, 로열티 크레딧)과 연관될 수 있다. 일부 구현예에서, 애플리케이션 토큰의 포맷은, 수신된 정보를 애플리케이션 토큰으로서 식별하도록 수신 실체에 의해 사용될 수 있는 일부 표시를 포함할 수 있다. 일부 구현예에서, 토큰의 포맷은 또한, 수신 실체가 애플리케이션 토큰과 연관된 발급자를 식별하도록 할 수 있다. 예를 들어, 토큰의 포맷은, 토큰 발급자를 식별하기 위해, 토큰 발급자 식별자를 포함할 수 있다.
"토큰 발급자", "토큰 제공자", "토큰 서비스 컴퓨터" 또는 "토큰 서비스 시스템"은 토큰을 서비스하는 시스템을 포함할 수 있다. 일부 구현예에서, 토큰 서비스 컴퓨터는 토큰을 요청, 결정(예, 생성) 및/또는 발급을 용이하게 할 수 있을 뿐만 아니라, 토큰을 저장소(예, 토큰 볼트)의 다른 데이터에 매핑 설정한 것을 유지하는 것을 용이하게 할 수 있다. 일부 구현예에서, 토큰 서비스 컴퓨터는, 토큰 바인딩의 신뢰 수준을 표시하기 위해 주어진 토큰에 대한 토큰 보증 레벨을 설정할 수 있다. 토큰 서비스 컴퓨터는, 생성된 토큰이 저장된 토큰 볼트를 포함하거나 이와 통신할 수 있다. 토큰 서비스 컴퓨터는, 토큰을 사용하여 제출된 트랜잭션의 토큰 프로세스를 지원할 수 있다. 일부 구현예에서, 토큰 서비스 시스템은 토큰화 컴퓨터를 단독으로, 또는 트랜잭션 프로세싱 네트워크 컴퓨터와 같은 다른 컴퓨터와 조합하여 포함할 수 있다. 토큰화 에코시스템의 다양한 실체는, 토큰 서비스 제공자의 역할을 가정할 수 있다. 예를 들어, 결제 네트워크 및 발급자 또는 그 대리인은, 본 발명의 구현예에 따른 토큰 서비스를 구현함으로써 토큰 서비스 제공자가 될 수 있다.
"액세스 장치"는, 판매자 컴퓨터 또는 트랜잭션 프로세싱 네트워크(예컨대, 지불 프로세싱 네트워크)와 통신하고 소비자 통신 장치와 상호 작용하기 위한 임의의 적절한 장치일 수 있다. 액세스 장치는 일반적으로 임의의 적합한 위치에, 예를 들어 가맹점 위치에 위치할 수 있다. 액세스 장치는 임의의 적절한 형태일 수 있다. 액세스 장치의 일부 예는, 입구, 판매 지점 장치(예, POS 단말기), 셀룰러폰, PDA, 퍼스널 컴퓨터(PC), 태블릿 PC, 휴대 전용 판독기, 셋톱 박스, 전자식 금전 등록기(ECR), 현금 자동 입출금기(ATM), 가상 현금 등록기(VCR), 키오스크, 보안 시스템, 액세스 시스템, 웹사이트 등을 포함한다. 액세스 장치는 소비자 통신 장치로부터 또는 이와 연관된 데이터를 송신 또는 수신하기 위해 임의의 적절한 접촉식 또는 비접촉식 작동 모드를 이용할 수 있다. 일부 구현예에서, 액세스 장치가 POS 단말기를 포함할 수 있는 경우, 임의의 적절한 POS 단말기가 이용될 수 있으며, 판독기, 프로세서, 및 컴퓨터 판독가능 매체를 포함할 수 있다. 판독기는, 임의의 적절한 접촉식 또는 비접촉식 작동 모드를 포함할 수 있다. 예를 들어, 예시적인 판독기는, 소비자 통신 장치와 상호 작용하도록 무선 주파수(RF) 안테나, 광학 스캐너, 바코드 판독기, 또는 자기 스트라이프 판독기를 포함할 수 있다.
"프로비저닝"은, 사용할 데이터를 제공하는 프로세스를 포함할 수 있다. 예를 들어, 프로비저닝은, 통신 장치에 토큰을 제공, 전달, 또는 활성화하는 것을 포함할 수 있다. 프로비저닝은 트랜잭션 시스템의 내부의 또는 외부의 모든 실체에 의해 완료될 수 있다. 예를 들어, 일부 구현예에서, 토큰은, 발급자 또는 트랜잭션 프로세싱 네트워크에 의해 모바일 장치 상으로 프로비저닝될 수 있다. 프로비저닝된 토큰은, 토큰 볼트 또는 토큰 레지스트리에 저장되고 유지되는 해당 토큰 데이터를 가질 수 있다. 일부 구현예에서, 토큰 볼트 또는 토큰 레지스트리는, 이어서 프로비저닝되거나 장치에 전달될 수 있는 토큰을 생성할 수 있다. 일부 구현예에서, 발급자는, 토큰 생성과 프로비저닝이 발생할 수 있는 토큰 범위를 특정할 수 있다. 또한, 일부 구현예에서, 발급자는, 토큰 값을 생성하여 토큰 볼트에 통지할 수 있고, 토큰 볼트에 저장하도록 토큰 레코드 정보(예, 토큰 속성)를 제공할 수 있다.
"사용자"는, 트랜잭션을 수행하도록 통신 장치를 작동하는 개인을 포함할 수 있다. 사용자는 또한 소비자 또는 계정 소유자로 지칭될 수 있다.
"키"는 입력 데이터를 다른 표현으로 변환하기 위해 암호 알고리즘에서 사용되는 정보의 조각을 지칭할 수도 있다. 암호 알고리즘은 원래의 데이터를 대체 표현으로 변환하는 암호화 알고리즘, 또는 암호화된 정보를 다시 원래의 데이터로 변환하는 해독 알고리즘일 수 있다. 암호 알고리즘의 예는 고급 암호화 표준(AES), 데이터 암호화 표준(DES), 삼중 데이터 암호화 표준/알고리즘(TDES/TDEA), 또는 적합한 알고리즘을 포함할 수 있다. 암호 알고리즘에 사용되는 키는 임의의 적합한 길이(예, 56 비트, 128 비트, 169 비트, 192 비트, 256 비트 등)일 수 있다. 일부 구현예에서, 키 길이가 길수록 해킹에 덜 취약한, 보다 안전한 암호화를 제공할 수 있다.
"디지털 서명" 또는 "암호화 서명"은 특히 복제하기 어려운 디지털 코드를 사용하여 문서를 암호화하는 전자 서명 유형을 포함할 수 있다. 디지털 서명은 전자 기록 또는 메시지의 근원 및 식별에 대한 보증 또는 증거를 제공하기 위해 사용되는 데이터를 포함할 수 있다. 디지털 서명은, 공개 키 암호화(즉, 비대칭 암호화)를 기초로 할 수 있다. 디지털 서명은, Rivest-Shamir-Adleman(RSA)과 같은 공개 키 알고리즘을 사용하여 생성될 수 있다. 디지털 서명을 생성하기 위해, 서명 소프트웨어를 사용하여, 서명 실체에 의해 서명되어야 하는 전자 데이터의 편도 해시를 생성할 수 있다. 그런 다음 서명 실체의 개인 키를 사용하여 해시를 암호화하고 디지털 서명을 형성한다. 다른 경우에, 대칭 키 쌍의 대칭 키를 사용하여 디지털 서명을 생성할 수 있다.
용어 "검증"은, 해당 정보가 합법적임을 검사하거나 확인하는 행위를 포함할 수 있다. 예를 들어, 전자 기록에 첨부된 디지털 서명이 실제로 합법적이고 디지털 서명의 생성을 주장하는 실체가 서명했음을 확인하는 행위가 될 수 있다. 일부 구현예에서, 디지털 서명은 서명 실체의 공개 키와 함께 검증 알고리즘에 따라 검증될 수 있다. 다른 경우에, 대칭 키 쌍의 대칭 키를 사용하여 기본 데이터를 서명하면, 해당 대칭 키를 사용하여 서명을 검증할 수 있다.
"인가 요청 메시지"는 트랜잭션과 같은 상호 작용을 위한 인가를 요청하는 전자 메시지일 수 있다. 일부 구현예에서, 인가 요청 메시지는 트랜잭션에 대한 인가를 요청하기 위해, 결제 프로세싱 네트워크 및/또는 티겟, 토큰, 결제 카드 등의 발급자에게 전송되는 메시지일 수 있다. 일부 구현예에 따른 인가 요청 메시지는, 결제 장치 또는 결제 계정을 사용하는 고객에 의해 행해지는 결제와 연관된 전자 트랜잭션 정보를 교환하는 시스템을 위한 표준인 ISO 8583을 준수할 수 있다. 인가 요청 메시지는, 결제 장치 또는 결제 계정에 연관될 수 있는 발급자 계정 식별자를 포함할 수 있다. 또한, 인가 요청 메시지는, 단지 예로서, 서비스 코드, CVV(카드 검증 값), dCVV(동적 카드 검증 값), 만료일 등을 포함하는 "식별 정보"에 대응하는 추가 데이터 요소들을 포함할 수도 있다. 또한, 인가 요청 메시지는, 트랜잭션 금액, 가맹점 식별자, 가맹점 위치 등의 현재 트랜잭션과 연관된 임의의 정보와 같은 "트랜잭션 정보" 및 트랜잭션을 식별 및/또는 인가할지 여부를 판정하는데 이용될 수 있는 다른 임의의 정보를 포함할 수도 있다.
"인가 응답 메시지"는 인가 요청 메시지에 응답하는 전자 메시지일 수 있다. 일부 구현예에서, 인가 응답 메시지는, 발급 금융 기관, 서비스 제공자 또는 지불 프로세싱 네트워크에 의해 생성될 수 있다. 인가 응답 메시지는, 예를 들어 다음의 상태 표시자 중 하나 이상을 포함할 수 있다: 승인 - 트랜잭션 승인되었음; 거부 - 트랜잭션 거부되었음; 또는 센터 호출 - 응답 대기 중 더 많은 정보 필요, 가맹점은 인가 관련 무료 전화 번호로 전화를 걸어야 함. 인가 응답 메시지는 인가 코드를 또한 포함할 수 있으며, 이것은 신용 카드 발급 은행이 전자 메시지로 인가 요청 메시지에 응답하여(직접적으로 또는 결제 프로세싱 컴퓨터를 통해), 트랜잭션의 승인을 표시하는 가맹점의 액세스 장치(예, POS 장비)에 리턴하는 코드일 수 있다. 코드는 인가 증명으로 기능할 수 있다. 전술한 바와 같이, 일부 구현예에서 결제 프로세싱 네트워크는 인가 응답 메시지를 생성하거나 가맹점에 포워딩할 수 있다.
"인가 프로세싱" 또는 "인가 작업"은 인가 요청 메시지 및/또는 인가 응답 메시지를 생성하고 보내는 단계를 적어도 포함할 수 있다. 인가 프로세싱은, 트랜잭션 인가 여부를 결정하는 단계를 추가로 포함할 수 있다.
"트랜잭션 프로세싱 시스템"은 트랜잭션 요청 메시지를 프로세싱하고 라우팅할 수 있는 하나 이상의 장치의 네트워크를 포함할 수 있다. 예시적인 트랜잭션 프로세싱 시스템은, 인가 서비스, 예외 파일 서비스, 트랜잭션 스코어링 서비스, 및 정산과 결제 서비스를 지원하고 전달하는 데 사용되는 데이터 프로세싱 서브시스템, 네트워크, 및 연산을 포함할 수 있다. 예시적인 트랜잭션 프로세싱 시스템은 VisaNetTM을 포함할 수 있다. VisaNetTM 같은 트랜잭션 프로세싱 시스템은, 신용 카드 트랜잭션, 직불 카드 트랜잭션, 및 기타 유형의 상업적 트랜잭션을 프로세싱할 수 있다. VisaNetTM은, 특히, 인가 요청을 프로세싱하는 VIP 시스템(비자 통합 결제 시스템) 및 정산과 결제 서비스를 수행하는 Base II 시스템을 포함할 수도 있다.
"프로세서"는 임의의 적합한 데이터 연산 장치(들)를 지칭할 수 있다. 프로세서는, 원하는 기능을 달성하도록 함께 동작하는 하나 이상의 마이크로프로세서를 포함할 수 있다. 프로세서는, 사용자 및/또는 시스템 생성 요청을 실행하기 위한 프로그램 구성요소를 실행하는 데 적절한 적어도 하나의 고속 데이터 프로세서를 포함한 CPU를 포함할 수 있다. CPU는, AMD의 Athlon, Duron 및/또는 Opteron; IBM 및/또는 Motorola의 PowerPC; IBM과 Sony의 Cell 프로세서; Intel의 Celeron, Itanium, Pentium, Xeon, 및/또는 XScale; 및/또는 기타 프로세서(들)의 마이크로프로세서일 수 있다.
"메모리"는, 전자 데이터를 저장할 수 있는 임의의 적합한 장치(들)일 수 있다. 적합한 메모리는, 원하는 방법을 구현하도록 프로세서에 의해 실행될 수 있는 명령어를 저장하는 비일시적 컴퓨터 판독가능 매체를 포함할 수 있다. 메모리의 예로는, 하나 이상의 메모리 칩, 디스크 드라이브 등을 포함할 수 있다. 이러한 메모리는, 임의의 적합한 전기 작동 모드, 광학 작동 모드, 및/또는 자기 작동 모드를 사용하여 작동할 수 있다.
도 1은 일부 구현예에 따라, 서비스 제공자 컴퓨터(112~116)와 계정 관리 서버(118) 세트와 통신하는 통신 장치(110)를 나타낸다. 도 1에 나타낸 서비스 제공자 컴퓨터는 서비스 제공자 컴퓨터 A(112), 서비스 제공자 컴퓨터 B(114), 및 서비스 제공자 컴퓨터 C(116)를 포함한다.
서비스 제공자 컴퓨터(112~116)는 상이한 서비스 제공자 또는 서비스 제공자 대리인에 해당할 수 있다. 예로서, 서비스 제공자는 위치 또는 이벤트에 대한 액세스를 용이하게 할 수 있다. 예시적인 서비스 제공자는 운송 기관(예, 철도 또는 버스 서비스 제공), 항공사 및 영화관을 포함한다. 서비스 제공자 대리인은 여러 다른 서비스 제공자를 대신하여 리소스 액세스를 용이하게 할 수 있다(예, 여러 항공사 간에 항공권을 판매하는 웹사이트 또는 티켓 대행사).
각 서비스 제공자 컴퓨터(112~116)는 각 서비스 제공자 애플리케이션(102~106)과 연결되어 있다. 서비스 제공자 A(112)는 서비스 제공자 애플리케이션 A(102)과 연관되어 있다. 서비스 제공자 컴퓨터 B(114)는 서비스 제공자 애플리케이션 B(104)와 연관되어 있다. 서비스 제공자 컴퓨터 C(116)는 서비스 제공자 애플리케이션 C(106)와 연관되어 있다. 서비스 제공자 애플리케이션(102~106)은 리소스에 대한 액세스를 관리하기 위해 사용될 수 있다. 예를 들어, 사용자는 서비스 제공자 애플리케이션과 상호 작용하여 여행 티켓을 구매할 수 있다.
도 1에 나타낸 바와 같이, 서비스 제공자 애플리케이션(102~106)은 계정 관리 애플리케이션(108)과 통신한다. 계정 관리 애플리케이션(108)은, 서비스 제공자 애플리케이션(102~106) 전체에 대해 리소스로의 액세스를 용이하게 하기 위해 데이터를 중앙에서 관리하는 데 사용될 수 있다. 예를 들어, 계정 관리 애플리케이션(108)은 디지털 지갑일 수 있고, 서비스 제공자 애플리케이션 세트를 통해 디지털 통화, 티켓 등을 저장할 수 있다.
각각의 서비스 제공자 애플리케이션(102~106)은 서로 다른 포맷, 데이터, 및 데이터 구조를 사용할 수 있다. 서비스 제공자 애플리케이션(102~106)이 계정 관리 애플리케이션(108)의 기능을 활용하기 위해, 각각의 서비스 제공자 애플리케이션은 계정 관리 애플리케이션(108)에 통합되어야 하며, 계정 관리 애플리케이션(108)은 각 서비스 제공자 애플리케이션(102~106)에 의해 제공된 데이터를 프로세싱할 수 있어야 한다.
도 2a로 돌아가면, 다수의 계정 관리 애플리케이션 제공업체가 존재한다. 다른 통신 장치/사용자는 다른 계정 관리 애플리케이션을 선택할 수 있다. 예를 들어, 상이한 통신 장치 제조업체는, 상이한 각각의 고유 계정 관리 애플리케이션과 호환할 수 있다. 다른 예로서, 사용자는 하나 이상의 바람직한 계정 관리 애플리케이션을 선택하여 통신 장치에 설치할 수 있다.
도 2a에 나타낸 바와 같이, 세 개의 상이한 통신 장치, 통신 장치 A(210), 통신 장치 B(220), 및 통신 장치 C(230)는 각각 상이한 개별 계정 관리 응용프로그램으로 구성된다. 통신 장치 A(210)는 계정 관리 애플리케이션 A(212)를 포함한다. 통신 장치 B(220)는 계정 관리 애플리케이션 B(222)를 포함한다. 통신 장치 C(230)는 계정 관리 애플리케이션 C(232)를 포함한다.
각 계정 관리 애플리케이션(계정 관리 애플리케이션 A(212), 계정 관리 애플리케이션 B(222) 및 계정 관리 애플리케이션 C(232))은 다양한 서비스 제공자와 연관된 데이터를 저장하도록 구성된다. 계정 관리 애플리케이션(212, 222, 232)은 서비스 제공자 컴퓨터A(240), 서비스 제공자 B(250), 서비스 제공자 C(260), 및 서비스 제공자 D(270)에 통신 가능하게 결합된다. 계정 관리 애플리케이션(212, 222, 232)은 서비스 제공을 용이하게 하도록 임의의 주어진 서비스 제공자 컴퓨터와 상호 작용해야 할 수 있다.
특정 예로서, 사용자는 특정 전자 지갑, 계정 관리 애플리케이션 A(212)으로 구성된, 통신 장치 A(210)를 작동한다. 사용자는 기차로 자주 이동하며 여러 서비스 제공업체를 통해 기차 티켓을 구매한다. 이들 모든 기차 티켓을 관리하기 위해 전자 지갑을 사용하도록, 계정 관리 애플리케이션 A는, 다양한 서비스 제공자 컴퓨터와 인터페이싱하도록 구성된 프로그래밍을 포함한다. 서비스 제공자 컴퓨터 A는 지역 레일 서비스에 의해 운영된다. 서비스 제공자 컴퓨터 B(250)는 도시간 레일 서비스에 의해 운영된다. 서비스 제공자 컴퓨터 C(260)은 여행사에 의해 운영된다. 서비스 제공자 컴퓨터 D(270)는 여행 집계기 서비스에 의해 운영되고, 이는 사용자로 하여금 상이한 제공자의 가격들을 비교시킨다. 사용자는 각기 다른 시간에 이들 각 제공자로부터 티켓을 구매한다. 따라서, 계정 관리 애플리케이션 A는 각 서비스 제공자 컴퓨터 A(240), B(250), C(260) 및 D(270)와 인터페이싱하도록 구성된 코드를 포함하여 각 서비스 제공자 컴퓨터에 의해 제공된 다양한 포맷의 티켓을 수락하고, 각 서비스 제공자 컴퓨터와 통신하여 티켓을 검증하고 교환할 수 있도록 한다. 마찬가지로, 서비스 제공자는 다양한 계정 관리 애플리케이션에 통합되어야 한다. 예를 들어, 통신 장치 B는 통신 장치 A와 다르게 설치된 지갑을 갖고(계정 관리 애플리케이션 B(222) vs. 계정 관리 애플리케이션 A(212)), 통신 장치 C는 또 다른 전자 지갑을 설치한다(계정 관리 애플리케이션 C(232)). 각 서비스 제공자 컴퓨터는, 이들 계정 관리 애플리케이션 각각과 인터페이싱하고 이들을 이해하는 기능이 포함되어야 한다.
도 2b는 구현예에 따라, 다중 계정 관리 애플리케이션 및 서비스 제공자 컴퓨터의 통합을 용이하게 하는, (예를 들어, 토큰 서비스 제공자에 의해 운영된) 토큰 서비스 컴퓨터(282)를 갖는 시스템(200B)을 나타낸다. 시스템(200B)은 통신 장치 A(216), 통신 장치 B(226), 통신 장치 C(236), 토큰 서비스 컴퓨터(282), 서비스 제공자 컴퓨터 A(242), 서비스 제공자 B(252), 서비스 제공자 C(262), 및 서비스 제공자 컴퓨터 D(272)를 포함한다.
각각의 통신 장치는 개별 계정 관리 애플리케이션을 포함한다. 통신 장치 A(216)는 계정 관리 애플리케이션 A(218)를 포함한다. 통신 장치 B(226)는 계정 관리 애플리케이션 B(228)를 포함한다. 통신 장치 C(236)는 계정 관리 애플리케이션 C(238)를 포함한다.
도 2a의 시스템과 대조적으로, 도 2b의 시스템에서, 토큰 서비스 컴퓨터(282)를 통해, 계정 관리 애플리케이션(218, 228, 238)은, 다양한 서비스 제공자 컴퓨터(242, 252, 262, 272)에 조정되기 보다는 오히려 하나의 인터페이스, 토큰 서비스 컴퓨터(282)와 통신할 수 있다. 유사하게, 서비스 제공자 컴퓨터(242, 252, 262, 272)는 토큰 서비스 컴퓨터(282)와 통신할 수 있다. 따라서, 토큰 서비스 컴퓨터의 사용은 당사자 간의 통신을 능률화한다.
도 3은 일부 구현예에 따라, 통신 장치(360), 토큰 서비스 컴퓨터(330), 서비스 제공자 웹사이트(320), 액세스 장치(350), 및 서비스 제공자 컴퓨터(340) 사이의 상호 작용의 개요를 나타낸다. 서비스 제공자 컴퓨터(340), 액세스 장치(350), 및 서비스 제공자 웹사이트(320)는 운송 제공자, 콘서트 장소, 여행사, 티켓 대행사 등과 같은 서비스 제공자와 연관될 수 있다. 예를 들어, 서비스 제공자 컴퓨터(340)는 철도, U.S.A. Railways와 연관된 서버 컴퓨터이다. 서비스 제공자 웹사이트(320)는 U.S.A. Railways의 공개 웹사이트이다. 액세스 장치(360)는, U.S.A. Railways에 의해 운영되는 기차역의 특정 플랫폼에 진입하기 위해 게이트에서의 액세스 단말기이다. 통신 장치(360)는, 예를 들어 근거리-현장-통신 가능 휴대 전화일 수 있다. 통신 장치(360)는, 서비스 제공자 애플리케이션 A(362)(U.S.A. Railways에 대응) 및 서비스 제공자 애플리케이션 B(364)(다른 서비스 제공자에 대응함)를 포함한다.
초기에, 사용자는 통신 장치(360)와 상호 작용하여 U.S.A. Railways의 운송 티켓을 구매한다. 사용자는, 서비스 제공자 애플리케이션 A(362) 및/또는 서비스 제공자 웹사이트(320)를 통해 운송 티켓을 구매할 수 있다.
단계(S1)에서, 통신 장치(360) 애플리케이션은 사용자가 애플리케이션(362)을 통해 티켓을 구매할 경우에, 서비스 제공자 웹사이트(320)에 티켓 구매 정보를 전송할 수 있다. 대안적으로, 사용자는, 통신 장치(360) 상의 브라우저를 통해 서비스 제공자 웹사이트(320)와 직접 상호 작용할 수 있다. 단계(S2)에서, 서비스 제공자 웹 사이트(320)는 티켓 구매 정보를 서비스 제공자 컴퓨터(340)로 전송한다.
단계(S4)에서, 서비스 제공자 컴퓨터(340)는 티켓 구매를 프로세싱하고, 이는 외부 트랜잭션 프로세싱 시스템 및/또는 발급자와 조율하여 구매 세부사항을 확인하고 계정을 출금하는 단계를 포함할 수 있다. 서비스 제공자 컴퓨터(340)는, 티켓을 나타내는 애플리케이션 토큰(366)을 발급하고 애플리케이션 토큰(366)의 기록을 유지할 수 있다.
단계(S5)에서, 서비스 제공자 컴퓨터(340)는 토큰 서비스 컴퓨터(330)를 통해 이행을 개시할 수 있다. 서비스 제공자 컴퓨터(340)는, 애플리케이션 토큰(366)에 대한 정보를 토큰 서비스 컴퓨터(330)에 전송할 수 있다.
단계(S6)에서, 토큰 서비스 컴퓨터(330)는 애플리케이션 토큰(366)과 연관된 토큰 용기(367)를 준비할 수 있다. 일부 구현예에서, 토큰 서비스 컴퓨터(330)는 통신 장치(360)에 프로비저닝하는 토큰 용기(367)를 생성한다. 토큰 서비스 컴퓨터(330)는, 서비스 제공자 컴퓨터(340)로부터 수신된 애플리케이션 토큰(366)을 검색할 수 있다. 토큰 서비스 컴퓨터(330)는 토큰 용기 내에 애플리케이션 토큰을 배치할 수 있다. 토큰 서비스 컴퓨터(330)는 토큰 용기(367)와 연관하여 용기 식별자(ID)(342)를 생성하고 저장할 수 있다. 용기 ID(342)는, 예를 들어 토큰 용기(367)를 특성화하는 16자리 숫자, 이름 등일 수 있다. 용기 ID(342)는 토큰 서비스 컴퓨터(330) 및/또는 서비스 제공자(340)에 저장될 수 있다. 토큰 서비스 컴퓨터(330)는 애플리케이션 토큰(366)과 연결된 토큰 상태(344)를 추가로 설정 및 저장할 수 있다. 토큰 상태(344)는 애플리케이션 토큰의 상태에 대응할 수 있다. 예시적인 토큰 상태(344)는 새로 생성되고 교환되며 부가가치가 부가된다.
단계(S7)에서, 토큰 서비스 컴퓨터(330)는 토큰 용기(367) 및/또는 애플리케이션 토큰(366)을 통신 장치(360)에 프로비저닝할 수 있다. 토큰 서비스 컴퓨터(330)는 임의의 적절한 형태의 무선 또는 유선 통신을 통해 토큰 용기(367) 및 애플리케이션 토큰(366)을 통신 장치(360)에 송신한다.
통신 장치(360)는 토큰 용기(367)를 저장하며, 이는 결국 애플리케이션 토큰(366)을 저장한다. 애플리케이션 토큰은 다른 위치 또는 리소스에 대한 액세스와 연관된다. 예를 들어, 1개의 애플리케이션 토큰은 2019년 7월 3일 California Airways 비행기에 대한 항공권에 대응하며, 또 다른 애플리케이션 토큰은 2019년 7월 4일 U.S.A. Railways에 대한 기차 티켓에 대응하며, 세 번째 애플리케이션 토큰은 특정 콘서트에 대한 콘서트 티켓에 대응한다. 상이한 서비스 제공자와 연관된 애플리케이션 토큰은, 동일한 토큰 용기(367)에 저장될 수 있다. 대안적으로, 다수의 토큰 용기가, 예를 들어, 서비스 제공자 또는 서비스 제공자 애플리케이션당 하나씩 프로비저닝될 수 있다.
단계(S8)에서, 통신 장치(360)는 액세스 장치(350)와 상호 작용하여 위치 또는 리소스에 대한 액세스를 획득한다. 이 특정 예에서, 사용자는 단파 통신 가능 휴대폰을 게이트에 태그하여 트레인 플랫폼에 액세스한다. 통신 장치(360)는 애플리케이션 토큰(366)을 액세스 장치(350)에 송신한다.
단계(S9)에서, 액세스 장치(350)는 애플리케이션 토큰(366)의 헤더를 체크하고, U.S.A. Railways에 대응하는 애플리케이션 토큰(366)을 식별한다. 액세스 장치(350)는 신호를 전송하고, 게이트를 열리게 하고 기차 플랫폼에 대한 사용자 액세스 권한을 부여한다. 액세스 장치(350)는 통신 장치(360)에 다시 확인을 전송할 수 있고, 통신 장치(360)는, 사용된 U.S.A. Railways 여정에 대한 애플리케이션 토큰(366)을 표시하도록 한다.
단계(S10)에서, 액세스 장치(350)는 정보를 서비스 제공자 컴퓨터(340)에 송신한다. 전송된 정보는, U.S.A. Railways 여정에 대한 애플리케이션 토큰이 표로 교환되었음을 지정한다.
단계(S11)에서, 서비스 제공자 컴퓨터(340)는 애플리케이션 토큰이 교환되었음을 나타내기 위해 데이터베이스에 기록을 업데이트한다. 기록을 업데이트하는 단계는, 교환된 애플리케이션 토큰(366)과 연관된 저장 토큰 상태(344)를 수정하는 단계를 포함할 수 있다.
도 4a는, 일부 구현예에 따른 통신 장치(401)의 블록도를 나타낸다. 통신 장치(401)는 메모리(402)에 결합된 장치 하드웨어(404)를 포함할 수 있다. 장치 하드웨어(404)는 프로세서(405), 통신 서브시스템(409), 사용자 인터페이스(406), 및 디스플레이(407)(사용자 인터페이스(406)의 일부일 수 있음)를 포함할 수 있다.
프로세서(405)는 하나 이상의 집적 회로(예, 하나 이상의 싱글 코어 또는 멀티코어 프로세서 및/또는 마이크로컨트롤러)로서 구현될 수 있고, 휴대용 통신 장치(401)의 작동을 제어하기 위해 사용된다. 프로세서(405)는, 메모리(402)에 저장된 프로그램 코드 또는 컴퓨터 판독가능 코드에 응답하여 다양한 프로그램을 실행할 수 있고, 동시에 실행되는 다수의 프로그램 또는 프로세스를 유지할 수 있다.
통신 서브시스템(409)은 하나 이상의 송수신기 및/또는 커넥터를 포함할 수 있고, 이는 다른 장치와 통신하고/통신하거나 인터넷과 같은 외부 네트워크와 접속하기 위해 통신 장치(401)에 의해 사용될 수 있다. 일부 구현예에서, 통신 서브시스템(409)은 비접촉식 요소를 추가로 포함할 수 있고, 이는, 연관된 무선 전달(예, 데이터 전달) 요소, 예컨대 안테나를 갖는 반도체 칩(또는 다른 데이터 저장 요소)의 형태로 구현될 수 있다. 비접촉식 요소는 (예를 들어, 내부에 내장되어) 통신 장치(401)에 결합될 수 있고, 셀룰러 네트워크를 통해 전송되는 데이터 또는 제어 명령은, 비접촉식 요소 인터페이스(미도시)에 의해 비접촉식 요소에 적용될 수 있다. 비접촉식 요소는, 단거리 무선 통신 기능을 사용하여 데이터를 전송하고 수신할 수 있다. 통신 서브시스템(409)은, (예를 들어, 데이터를 수신하는) 수신 장치 및 (예를 들어, 데이터를 전송하는) 송신 장치 모두인 구성 요소를 포함할 수 있다. 따라서, 통신 장치(401)는, 셀룰러 네트워크(또는 다른 임의의 적합한 무선 네트워크, 예컨대 인터넷 또는 다른 데이터 네트워크) 및 단거리 통신 모두를 통해 데이터 또는 제어 명령어를 통신 및 전달할 수 있다. 통신 장치(401)는 또한, 무선 데이터 전송(예, 데이터 전달)을 위한 안테나를 포함할 수 있다.
사용자 인터페이스(406)는, 사용자가 통신 장치(401)의 기능과 상호 작용하고 이러한 기능을 호출할 수 있게 하는 입력 요소와 출력 요소의 임의의 조합을 포함할 수 있다. 일부 구현예에서, 디스플레이(407)는 사용자 인터페이스(406)의 일부일 수 있다. 디스플레이(407)와 사용자 인터페이스(406)는 사용자가 정보와 메시지를 볼 수 있게 한다. 통신 장치는, 사용자가 장치 내에 정보를 입력할 수 있게 하는 입력 요소, 사용자가 음성 통신, 음악 등을 들을 수 있게 하는 스피커, 및 사용자가 자신의 음성을 통신 장치(401)를 통해 송신할 수 있게 하는 마이크를 추가로 포함할 수 있다.
메모리(402)는 임의의 수의 비휘발성 메모리(예, 플래시 메모리) 및 휘발성 메모리(예, DRAM, SRAM), 또는 임의의 다른 비일시적 저장 매체, 또는 이들 매체의 조합의 임의의 조합을 이용하여 구현될 수 있다. 메모리(402)는, 프로세서(405)에 의해 실행될 하나 이상의 애플리케이션이 상주하는 모바일 운영 체제(420)와 애플리케이션 환경(410)을 저장할 수 있다.
애플리케이션 환경(410)은, 애플리케이션 토큰을 관리하는 데 사용되는 애플리케이션을 포함할 수 있다. 일부 구현예에서, 애플리케이션은 서비스 제공자 애플리케이션 A(412), 서비스 제공자 애플리케이션 B(414), 및 계정 관리 애플리케이션(416)을 포함할 수 있다.
서비스 제공자 애플리케이션 A(412) 및 B(414)는 서비스 또는 다른 리소스에 대한 액세스를 제공하는 기능을 포함할 수 있다. 서비스 제공자 애플리케이션의 예시는, 발권 애플리케이션, 운송 애플리케이션 및 가맹점 애플리케이션이 있다다. 서비스 제공자 애플리케이션은, 티켓 판매 또는 교환 등의 백엔드 기능을 수행하기 위해 개별 서비스 제공자 컴퓨터에 통신 가능하게 결합될 수 있다.
계정 관리 애플리케이션(416)은 하나 이상의 계좌를 관리하기 위한 기능을 포함할 수 있다. 계정 관리 애플리케이션(416)의 예는, 모바일 또는 디지털 지갑 애플리케이션, 발급자 애플리케이션 및 뱅킹 애플리케이션을 포함한다. 계정 관리 애플리케이션(416)은 서비스 제공자 애플리케이션 A(412) 및 서비스 제공자 애플리케이션 B(414)와 연관된 기능을 저장 및 관리하는 단일 애플리케이션을 제공할 수 있다.
메모리(402)는 프로세서(405)에 의해 실행 가능한 코드를 포함하여 다음을 포함한 방법을 수행할 수 있고: 통신 장치 상의 제1 서비스 제공자 애플리케이션에 의해, 제1 애플리케이션 토큰에 대한 제1 요청을 제1 서비스 제공자 컴퓨터에 제공하는 단계; 상기 통신 장치 상의 계정 관리 애플리케이션에 의해, 상기 제1 서비스 제공자 컴퓨터와 통신하는 토큰 서비스 컴퓨터로부터 상기 제1 애플리케이션 토큰을 수신하는 단계; 및 상기 제1 애플리케이션 토큰을 계정 관리 애플리케이션의 토큰 용기에 저장하는 단계.
도 4b는 일부 구현예에 따른 계정 관리 애플리케이션(416)의 상세도를 나타낸다. 계정 관리 애플리케이션(416)은 애플리케이션 토큰(417-1 내지 417-n) 및 토큰 상태(418-1 내지 418-n)를 저장할 수 있다. 계정 관리 애플리케이션(416)은, 예를 들어 암호화 및/또는 보안 하드웨어 요소를 사용하여, 애플리케이션 토큰(417-1 내지 417-n) 및 토큰 상태(418-1 내지 418-n)를 안전하게 저장할 수 있다.
일부 구현예에서, 애플리케이션 토큰(417-1 내지 417-n)은 구매한 서비스 또는 상품과 연관된 디지털 티켓이다. 사용자가 서비스 제공자로부터 여러 서비스 또는 상품을 얻는 경우에, 서비스 또는 상품은 애플리케이션 특정 토큰에 추가로 연결될 수 있다. 예를 들어, 멀티 레그 운송 티켓을 얻는 경우에, 각 티켓은 디지털 티켓으로 발급될 수 있으며 애플리케이션 토큰으로 표시된다. 대안적으로 또는 추가적으로, 애플리케이션 토큰은 로열티 데이터(예, 빈번한 구매자에 대한 보상 포인트)를 나타낼 수 있다. 각각의 애플리케이션 토큰(417-1 내지 417-n)은 또한, 고유의 개별 토큰 상태(418-1 내지 418-n)를 가질 수 있다. 각각의 토큰 상태는 대응하는 애플리케이션 토큰의 하나 이상의 토큰 특성을 나타낼 수 있다. 상기 예시를 운송 시스템과 관련하여 계속하면, 각각의 토큰 상태는 트립 레그에 대한 티켓의 사용 여부와 같은 속성을 나타낼 수 있다.
통신 장치(401)는, 프로비저닝된 애플리케이션 토큰(417-1 내지 417-n) 및 연관된 토큰 상태(418-1 내지 418-n)를 계정 관리 애플리케이션(416)에 의해 액세스 가능한 디지털 용기에 저장할 수 있다. 프로비저닝된 애플리케이션 토큰(417-1 내지 417-n)은 연관된 서비스 제공자를 이용해 상품 또는 서비스에 액세스하기 위해 사용될 수 있다. 예를 들어, 프로비저닝된 애플리케이션 토큰은, 통신 장치(401)로부터 환승 게이트의 액세스 장치에 제공하여, 환승 시스템에 대한 액세스를 얻을 수 있다. 애플리케이션 토큰이 사용됨에 따라, 서비스 제공자는 통신 장치(401) 상의 애플리케이션 토큰의 토큰 상태를 업데이트할 수 있다. 예를 들어 티켓이 사용되는 경우에, 서비스 제공자는 미사용 상태에서 사용된 상태로 티켓을 나타내는 토큰의 토큰 상태를 수정할 수 있다. 일부 구현예에서, 서비스 제공자는 (예를 들어, 도 6에 도시된 바와 같이) 토큰 서비스 컴퓨터에 상태 업데이트 요청을 전송함으로써 통신 장치(401) 상의 토큰 상태를 업데이트할 수 있고, 토큰 서비스 컴퓨터는 자신의 토큰 상태를 업데이트하고 통신 장치(401)로의 업데이트를 동기화할 수 있다.
계정 관리 애플리케이션(416)은, 애플리케이션 토큰과 연관된 상호 작용이 언제 어디서 발생하는지에 대한 로그를 추가로 저장할 수 있다. 따라서 애플리케이션 토큰의 무결성은 교환시 검증될 수 있다.
도 5는 일부 구현예에 따른 서비스 제공자 컴퓨터(501)의 블록도를 나타낸다. 서비스 제공자 컴퓨터(501)는 네트워크 인터페이스(502), 프로세서(504), 메모리(506) 및 컴퓨터 판독가능 매체(508)를 포함한다.
프로세서(504)는, 하나 이상의 집적 회로(예, 하나 이상의 단일 코어 또는 멀티코어 마이크로프로세서 및/또는 마이크로컨트롤러)로서 구현될 수 있다. 프로세서(504)는 서비스 제공자 컴퓨터(501)의 작동을 제어하는 데 사용될 수 있다. 프로세서(504)는 메모리(506)에 저장된 프로그램 코드 또는 컴퓨터 판독가능 코드에 응답하여 다양한 프로그램을 실행할 수 있다. 프로세서(504)는, 동시에 실행되는 다수의 프로그램 또는 프로세스를 유지하기 위한 기능을 포함할 수 있다.
네트워크 인터페이스(502)는, 서비스 제공자 컴퓨터(501)가 리소스 제공자 컴퓨터, 전송 컴퓨터, 라우팅 관리 인터페이스 등과 같은 다른 실체와 통신할 수 있도록, 하나 이상의 통신 네트워크에 연결되도록 구성될 수 있다. 예를 들어, 전송 컴퓨터와의 통신은 직접, 간접 및/또는 API(애플리케이션 프로그래밍 인터페이스)를 경유할 수 있다.
메모리(506)는 임의의 수의 비휘발성 메모리(예, 플래시 메모리) 및 휘발성 메모리(예, DRAM, SRAM), 또는 임의의 다른 비일시적 저장 매체, 또는 이들 매체의 조합의 임의의 조합을 이용하여 구현될 수 있다.
컴퓨터 판독가능 매체(508)는 저장 및/또는 전송을 위한 하나 이상의 비일시적 매체를 포함할 수 있다. 적절한 매체는, 예시로서 랜덤 액세스 메모리(RAM), 읽기 전용 메모리(ROM), 하드 드라이브 또는 플로피 디스크와 같은 자기 매체, 또는 콤팩트 디스크(CD) 또는 DVD(디지털 다기능디스크)와 같은 광학 매체, 플래시 메모리 등을 포함할 수 있다. 컴퓨터 판독가능 매체(208)는 이러한 저장 장치 또는 전송 장치의 임의의 조합일 수 있다.
컴퓨터 판독가능 매체(508)는, 일련의 명령어 또는 명령으로 저장된 소프트웨어 코드를 포함할 수 있다. 컴퓨터 판독가능 매체(508)는, 본원에서 설명하는 방법을 구현하도록 프로세서(504)에 의해 실행 가능한 코드를 포함한다. 컴퓨터 판독가능 매체(508)는, 통신 모듈(510), 암호화 모듈(512), 발급 모듈(514), 및 검증 모듈(516)을 포함할 수 있다. 이들 모듈 각각은, 프로세서(504)와 함께 아래에 기술된 기능을 수행하도록 구성된 코드를 포함할 수 있다.
통신 모듈(510)은, 프로세서(504)가 메시지를 생성하거나, 메시지를 전달하고, 메시지를 재포맷하고/재포맷하거나 달리 다른 실체와 통신하는 코드를 포함할 수 있다.
암호화 모듈(512)은, 본 발명의 구현예에서의 데이터를 암호화하는 임의의 적합한 암호화 알고리즘을 포함할 수 있다. 적합한 데이터 암호화 알고리즘은, DES, 삼중 DES, AES 등을 포함할 수 있다. 암호화 모듈(512)은 또한, 이러한 암호화 알고리즘과 함께 사용될 수 있는 암호화 키를 저장할 수 있다. 대응하는 키 쌍의 다른 키는, 토큰 서비스 컴퓨터(601) 내의 암호화 모듈(612)에 저장될 수 있다. 암호화 모듈(512)은, 대칭 또는 비대칭 암호화 기술을 이용하여 데이터를 암호화 및/또는 검증할 수 있다. 토큰 서비스 컴퓨터와 서비스 제공자 컴퓨터(501)는 암호화 키 쌍의 개별 암호화 키를 가질(저장할) 수 있다.
발급 모듈(514)은, 프로세서(504)로 하여금 애플리케이션 토큰을 생성시키는 코드를 포함할 수 있다. 발급 모듈은, 여정, 이벤트 또는 항목 데이터와 같이 요청된 세부 사항을 수신할 수 있다. 발급 모듈은, 요청된 세부 사항에 대응하는 애플리케이션 토큰을 생성할 수 있다. 발급 모듈은, 애플리케이션 토큰을 구매(하나 이상의 외부 결제 프로세싱 네트워크 및/또는 은행과의 협력으로 행해질 수 있음)하기 위한 계정 정보를 프로세싱하기 위해, 결제 데이터를 프로세싱하기 위한 코드를 추가로 포함할 수 있다.
검증 모듈(516)은, 프로세서(504)로 하여금 애플리케이션 토큰을 검증시키는 코드를 포함할 수 있다. 애플리케이션 토큰을 검증하는 단계는, 저장된 애플리케이션 토큰 레코드를 검증하는 단계, 애플리케이션 토큰의 디지털 서명을 검증하는 단계, 및/또는 수신된 검증 데이터를 프로세싱하는 단계 중 하나 이상을 포함할 수 있다. 검증 모듈은, 프로세서(504)로 하여금 (예를 들어, 애플리케이션 토큰을 사용된 것으로, 만료된 것으로, 등등 표시함으로써) 애플리케이션과 연결된 토큰 상태를 업데이트시키는 코드를 추가로 포함할 수 있다.
도 6은 일부 구현예에 따른 토큰 서비스 컴퓨터(601)의 블록도를 나타낸다. 토큰 서비스 컴퓨터(601)는 네트워크 인터페이스(602), 프로세서(604), 메모리(606) 및 컴퓨터 판독가능 매체(608)를 포함한다.
프로세서(604)는, 하나 이상의 집적 회로(예, 하나 이상의 단일 코어 또는 멀티코어 마이크로프로세서 및/또는 마이크로컨트롤러)로서 구현될 수 있다. 프로세서(604)는 토큰 서비스 컴퓨터(601)의 작동을 제어하는 데 사용될 수 있다. 프로세서(604)는 메모리(606)에 저장된 프로그램 코드 또는 컴퓨터 판독가능 코드에 응답하여 다양한 프로그램을 실행할 수 있다. 프로세서(604)는, 동시에 실행되는 다수의 프로그램 또는 프로세스를 유지하기 위한 기능을 포함할 수 있다.
네트워크 인터페이스(602)는, 게이트웨이 서버(600)가 리소스 제공자 컴퓨터, 전송 컴퓨터, 라우팅 관리 인터페이스 등과 같은 다른 실체와 통신할 수 있도록, 하나 이상의 통신 네트워크에 연결되도록 구성될 수 있다. 예를 들어, 전송 컴퓨터와의 통신은 직접, 간접 및/또는 API를 경유할 수 있다.
메모리(606)는 임의의 수의 비휘발성 메모리(예, 플래시 메모리) 및 휘발성 메모리(예, DRAM, SRAM), 또는 임의의 다른 비일시적 저장 매체, 또는 이들 매체의 조합의 임의의 조합을 이용하여 구현될 수 있다.
컴퓨터 판독가능 매체(608)는 저장 및/또는 전송을 위한 하나 이상의 비일시적 매체를 포함할 수 있다. 적절한 매체는, 예시로서 랜덤 액세스 메모리(RAM), 읽기 전용 메모리(ROM), 하드 드라이브 또는 플로피 디스크와 같은 자기 매체, 또는 콤팩트 디스크(CD) 또는 DVD(디지털 다기능디스크)와 같은 광학 매체, 플래시 메모리 등을 포함할 수 있다. 컴퓨터 판독가능 매체(608)는 이러한 저장 장치 또는 전송 장치의 임의의 조합일 수 있다.
컴퓨터 판독가능 매체(608)는, 일련의 명령어 또는 명령으로 저장된 소프트웨어 코드를 포함할 수 있다. 컴퓨터 판독가능 매체(608)는, 본원에서 설명하는 방법을 구현하도록 프로세서(604)에 의해 실행 가능한 코드를 포함한다. 컴퓨터 판독가능 매체(608)는, 통신 모듈(610), 암호화 모듈(612), 프로비저닝 모듈(614), 및 업데이트 모듈(616)을 포함할 수 있다. 이들 모듈 각각은, 프로세서(604)와 함께 아래에 기술된 기능을 수행하도록 구성된 코드를 포함할 수 있다.
통신 모듈(610)은, 프로세서(504)가 메시지를 생성하거나, 메시지를 전달하고, 메시지를 재포맷하고/재포맷하거나 달리 다른 실체와 통신하는 코드를 포함할 수 있다.
암호화 모듈(612)은, 본 발명의 구현예에서의 데이터를 암호화하는 임의의 적합한 암호화 알고리즘을 포함할 수 있다. 적합한 데이터 암호화 알고리즘은, DES, 삼중 DES, AES 등을 포함할 수 있다. 암호화 모듈(612)은 또한, 이러한 암호화 알고리즘과 함께 사용될 수 있는 암호화 키를 저장할 수 있다. 대응하는 키 쌍의 다른 키는, 서비스 제공자 컴퓨터(501) 내의 암호화 모듈(512)에 저장될 수 있다. 암호화 모듈(612)은, 대칭 또는 비대칭 암호화 기술을 이용하여 데이터를 암호화 및/또는 검증할 수 있다. 토큰 서비스 컴퓨터(601)와 서비스 제공자 컴퓨터(501)는 암호화 키 쌍의 개별 암호화 키를 가질(저장할) 수 있다.
프로비저닝 모듈(614)은, 프로세서(604)로 하여금 애플리케이션 토큰 용기 생성시키는 코드를 포함할 수 있다. 프로비저닝 모듈은, 예를 들어 특정 통신 장치 및/또는 애플리케이션 토큰에 대한 토큰 용기를 생성하도록 구성된, 코드를 포함할 수 있다.
업데이트 모듈(616)은, 토큰 용기 및/또는 애플리케이션 토큰을 업데이트하기 위한, 코드를 포함할 수 있다. 업데이트 모듈은, 토큰 용기에 애플리케이션 토큰을 추가하도록 구성된, 코드를 포함할 수 있다. 업데이트 모듈(516)은 애플리케이션 토큰과 연관된 토큰 상태를 (예를 들어, 애플리케이션 토큰을 사용한 것으로 표시, 값을 추가, 여정에 레그 추가, 충성도 데이터를 업데이트함으로써, 등등) 업데이트하도록 구성된 코드를 포함할 수 있다.
일부 구현예에서, 토큰 서비스 컴퓨터는 토큰 볼트(미도시)를 포함할 수 있다. 예를 들어, 토큰 볼트는 애플리케이션 토큰을 저장할 수 있다. 각각의 애플리케이션 토큰은, 또한 (도 4에 관해 전술한 바와 같이) 이의 개별 토큰 상태와 연관되어 저장될 수 있다. 애플리케이션 토큰 및 대응하는 토큰 상태는, 토큰 볼트에 저장될 수 있고, (예를 들어, 도 4에 관해 나타내고 전술한 바와 같이) 통신 장치에 프로비저닝될 수 있다. 애플리케이션 토큰이 (예를 들어, 여행, 이벤트 액세스 등을 위해) 교환되는 경우에, 애플리케이션 토큰의 토큰 상태는 토큰 볼트에서 업데이트될 수 있다.
도 7은 일부 구현예에 따른 애플리케이션 토큰 프로비저닝 프로세스(700)를 나타낸다. 통신 장치(750)는, 모바일 지갑 애플리케이션과 같은 계정 관리 애플리케이션(754), 및 서비스 제공자 컴퓨터(760)와 연관된 가맹점 또는 운송 애플리케이션과 같은 서비스 제공자 애플리케이션(752)에 설치될 수 있다. 애플리케이션 토큰 프로비저닝 프로세스(700)는 통신 장치(750)에 애플리케이션 토큰을 프로비저닝하는 첫 번째 프로세스일 수 있다.
처음에, 사용자는 통신 장치(750)와 상호 작용하여 애플리케이션 토큰을 구매할 수 있다. 사용자는, 예를 들어 서비스 제공자 웹 사이트와 통신하는 웹 브라우저 및/또는 서비스 제공자 애플리케이션(752)을 통해, 구매용 애플리케이션 토큰을 선택할 수 있다. 다른 예로서, 사용자는 키오스크를 통해, 예를 들어 지하철역 또는 공항에서 애플리케이션 토큰을 구매할 수 있다. 서비스 제공자 애플리케이션(752)은, 애플리케이션 토큰 및/또는 토큰 용기가 통신 장치(750) 상에 존재하는지 여부를 결정할 수 있다. 서비스 제공자 애플리케이션(752)은, 예를 들어 계정 관리 애플리케이션(754)을 쿼리하여 애플리케이션 토큰이 이전에 프로비저닝되었는지 여부 및/또는 토큰 용기가 통신 장치(750) 상의 계정 관리 애플리케이션(754) 상에 또는 어느 곳에 현재 저장되어 있는지 유무를 결정할 수 있다. 대안적으로 또는 추가적으로, 서비스 제공자 애플리케이션(752)은 서비스 제공자 애플리케이션(752) 및/또는 서비스 제공자 컴퓨터(760) 내에 저장된 레코드를 검색할 수 있다.
단계(S702)에서, 서비스 제공자 애플리케이션(752)은 애플리케이션 토큰에 대한 요청을 서비스 제공자 컴퓨터(760)에 전송할 수 있다. 상기 요청은 애플리케이션 토큰에 관한 세부 정보(예, 암스테르담에서 뮌헨으로 철도 여행 티켓 1장)가 포함될 수 있다. 상기 요청은, 애플리케이션 토큰을 결제하기 위해 사용할 계정 번호와 같은, 결제 정보가 포함될 수 있다. 일부 구현예에서, 상기 요청은, 이것이 처음 애플리케이션 토큰 요청이라는, 표시를 추가로 포함할 수 있다. 상기 요청은 통신 장치(750)와 서비스 제공자 컴퓨터(760) 사이의 유선 또는 무선 연결을 통해 전송될 수도 있다. 서비스 제공자 컴퓨터(760)는, 서비스 제공자 애플리케이션(752)으로부터 애플리케이션 토큰에 대한 요청을 수신할 수 있다.
단계(S704)에서, 서비스 제공자 컴퓨터(760)는 사용자, 통신 장치(750) 및/또는 결제 정보를 검증하고, 애플리케이션 토큰을 생성할 수 있다. 애플리케이션 토큰은, 예를 들어 디지털 티켓의 형태로 생성될 수 있다. 애플리케이션 토큰은 권한 부여(예, 하나의 철도 여정, 특정 콘서트로의 액세스, 특정 건물로의 액세스 등)에 대한 정보를 포함할 수 있다. 애플리케이션 토큰은, 서비스 제공자를 특징화하는 정보를 포함할 수 있다(예를 들어, 애플리케이션 토큰은, 서비스 제공자가 Travel Corp이라는 것을 명시하는 헤더를 포함할 수 있음). 애플리케이션 토큰은, 서비스 제공자 특정 포맷 및/또는 크기일 수 있다. 예로서, 하나의 서비스 제공자는, 애플리케이션 토큰을 다른 서비스 제공자와 상이한 유형의 파일로 저장할 수 있고, 다른 서비스 제공자는 다른 유형의 정보를 저장하기 위해 상이한 필드를 설정할 수 있다(예를 들어, 한 서비스 제공자는 날짜, 시간, 서비스 제공자 ID를 처음 3개의 헤더 필드로 저장할 수 있고, 반면에 다른 서비스 제공자는 위치, 양, 토큰 ID를 처음 3개의 헤더 필드로 저장할 수 있음).
서비스 제공자 컴퓨터(760)는 암호화된 페이로드(예, Javascript Object Notation(JSON) 웹 암호화 페이로드)에 생성된 애플리케이션 토큰을 패키징할 수 있다. 일부 구현예에서, 서비스 제공자 컴퓨터(760)는 하나의 암호화 키(예, 순간 공공 타원형-곡선 암호화(ECC) 키)를 저장할 수 있고, 토큰 서비스 컴퓨터(770)는 다른 하나의 대응하는 암호화 키를 저장할 수 있다. 서비스 제공자 컴퓨터(760)는 애플리케이션 토큰을 암호화할 수 있다. 서비스 제공자 컴퓨터(760)는, 적어도 암호화된 애플리케이션 토큰을 포함하는, 암호화된 페이로드를 생성할 수 있다.
단계(S706)에서, 서비스 제공자 컴퓨터(760)는, 암호화된 페이로드를, 통신 장치(750)에 설치된 서비스 제공자 애플리케이션(752)에 전송한다. 서비스 제공자 애플리케이션(752)은 암호화된 페이로드를 수신한다.
단계(S708)에서, 서비스 제공자 애플리케이션(752)은 암호화된 페이로드를 계정 관리 애플리케이션(754)에 푸시한다. 계정 관리 애플리케이션은, 이 시점에서 암호화된 패킷의 콘텐츠를 해독하거나 볼 수 없다.
단계(S710)에서, 계정 관리 애플리케이션(254)은 프로비저닝 요청을 토큰 서비스 컴퓨터(770)로 전송할 수 있다. 계정 관리 애플리케이션(254)은 토큰 서비스 컴퓨터(770)로부터 사용자 및/또는 통신 장치에 대한 등록을 추가로 요청할 수 있다.
토큰 서비스 컴퓨터(770)는 수신 시 암호화된 페이로드를 해독할 수 있다. 토큰 서비스 컴퓨터(770)와 서비스 제공자 컴퓨터(760)는, 애플리케이션 토큰 또는 그 일부를 암호화하고 해독시킬 수 있는 대칭 암호화 키를 공유할 수 있다. 다른 구현예에서, 토큰 서비스 컴퓨터(770) 및 서비스 제공자 컴퓨터(760)는, 애플리케이션 토큰의 일부를 암호화하는 공개 키, 및 애플리케이션 토큰의 일부를 해독하는 개인 키를 각각 사용할 수 있다.
일부 구현예에서, 토큰 서비스 컴퓨터(770)는, 애플리케이션 토큰에 대해 토큰 용기를 생성해야 한다고 결정할 수 있다. 토큰 서비스 컴퓨터는, 서비스 제공자 애플리케이션(752) 및/또는 계정 관리 애플리케이션(754)에 의해 제공된 정보에 기초하여, 수신된 등록 및 프로비저닝 요청에 토큰 용기를 필요로 한다는 표시를 수신할 수 있다. 대안적으로 또는 추가적으로, 토큰 서비스 컴퓨터(770)는, 통신 장치(750) 및/또는 계정 관리 애플리케이션(754)과 연관된 저장 데이터를 검색하는 것에 기초하여 토큰 용기가 필요한지를 결정할 수 있다.
토큰 서비스 컴퓨터(770)는 토큰 서비스에 사용자 및/또는 통신 장치를 등록하기 위해 연산을 실행할 수 있다. 등록은, 예를 들어 암호화 키 또는 암호를 발급하는 것을 포함할 수 있다.
토큰 서비스 컴퓨터(770)는 토큰 용기를 생성한다. 토큰 서비스 컴퓨터는, 복수의 애플리케이션 토큰을 보유할 수 있는 토큰 용기를 생성할 수 있다. 일례로, 토큰 용기는 적어도 100개의 20 바이트 길이의 애플리케이션 토큰을 저장하는 능력을 포함할 수 있다. 애플리케이션 토큰의 길이는 다양한 서비스 제공자에게만 특정적일 수 있다. 토큰 용기는, 애플리케이션 토큰과 연관된 토큰 용기 레코드를 포함하도록 생성될 수 있다. 예를 들어, 토큰 컨테이너 레코드는 다음과 같은 포맷을 가질 수 있다: 후속 데이터 길이(1 바이트), 프로그램 식별자(4 바이트), 시간 간격(분)(2 바이트), 및 애플리케이션 토큰(1 내지 250 바이트). 토큰 용기는 식별자(예컨대, 토큰 용기에 고유한 16자리 숫자)와 연관될 수 있다. 토큰 용기는 또한, 서비스 제공자(750)에 대해 구체적으로 포맷될 수 있고, 다른 서비스 제공자를 위한 다른 토큰 용기는 동일하거나 다르게 포맷될 수 있다.
토큰 서비스 컴퓨터(770)는 애플리케이션 토큰을 수정하기 위한 작업을 추가로 실행할 수 있다. 토큰 서비스 컴퓨터(770)는 토큰 서비스 컴퓨터(770)의 키를 사용하여, 애플리케이션 토큰에 암호식으로 서명할 수 있다. 토큰 서비스 컴퓨터(770)는, 계정 관리 애플리케이션(754)이 애플리케이션 토큰을 사용할 수 있도록, 추가로 이를 수정할 수 있다. 토큰 서비스 컴퓨터(770)는, 예를 들어 애플리케이션 토큰을 제1 포맷에서 제2 포맷으로 변환할 수 있다. 대안적으로 또는 추가적으로, 토큰 서비스 컴퓨터(770)는 애플리케이션 토큰과 연관된 헤더 정보를 추가하거나 수정할 수 있다.
단계(S712)에서, 토큰 서비스 컴퓨터(770)는 애플리케이션 토큰을 계정 관리 애플리케이션(754)에 프로비저닝할 수 있다. 토큰 서비스 컴퓨터(770)는 애플리케이션 토큰을 계정 관리 애플리케이션으로 전송할 수 있다. 토큰 서비스 컴퓨터(770)는 토큰 용기를 애플리케이션 토큰으로 전송할 수 있다(예를 들어, 애플리케이션 토큰은 토큰 용기 내에 저장됨). 계정 관리 애플리케이션은, 계정 관리 애플리케이션의 토큰 용기에 애플리케이션 토큰을 수신하고 저장할 수 있다. 애플리케이션 토큰과 연관된 애플리케이션 토큰 또는 보조 데이터는, 애플리케이션 토큰을 저장할 토큰 용기를 식별할 수 있는, 컨테이너 식별자를 포함할 수 있다.
일부 구현예에서, 토큰 서비스 컴퓨터(770)는, 통신 장치(750)가 애플리케이션 토큰으로 프로비저닝 되었음을 표시하기 위해 서비스 제공자 컴퓨터(760)에 알림을 전송할 수 있다.
도 8은 일부 구현예에 따라, 예시적인 애플리케이션 토큰 프로비저닝 프로세스(800)의 다른 흐름도를 나타낸다. 통신 장치(850)는, 모바일 지갑 애플리케이션과 같은 계정 관리 애플리케이션(854) 내에 설치될 수 있다. 통신 장치(850)는, 서비스 제공자 애플리케이션 A(852)과 서비스 제공자 애플리케이션 B(856)를 추가로 포함한다. 애플리케이션 토큰 프로비저닝 프로세스(800)는, (예를 들어 도 7에 관해 전술한 바와 같이) 제1 프로비저닝 이후의 후속 프로비저닝 이벤트일 수 있다.
처음에, 사용자는 통신 장치(850)와 상호 작용하여 애플리케이션 토큰을 구매할 수 있다. 사용자는, 예를 들어 서비스 제공자 웹 사이트와 통신하는 웹 브라우저 및/또는 서비스 제공자 애플리케이션(852)을 통해, 구매용 애플리케이션 토큰을 선택할 수 있다. 서비스 제공자 애플리케이션 A는, 애플리케이션 토큰 및/또는 토큰 용기가 통신 장치(850) 상에 존재하는지 여부를 결정할 수 있다. 서비스 제공자 애플리케이션 A(852)은, 예를 들어 계정 관리 애플리케이션(854)을 쿼리하여 계정 토큰이 이전에 프로비저닝되었는지 여부 및/또는 토큰 용기가 계정 관리 애플리케이션(854) 상에 현재 저장되어 있는지 유무를 결정할 수 있다. 대안적으로 또는 추가적으로, 서비스 제공자 애플리케이션 A(852)는 서비스 제공자 애플리케이션 A(852) 및/또는 서비스 제공자 컴퓨터 A(860) 내에 저장된 레코드를 검색할 수 있다.
단계(S802)에서, 서비스 제공자 애플리케이션 A(852)는 애플리케이션 토큰에 대한 요청을 서비스 제공자 컴퓨터 A(860)에 전송할 수 있다. 상기 요청은 애플리케이션 토큰에 관한 정보(예, 뮌헨에서 프라하로 철도 여행 티켓 1장)가 포함될 수 있다. 상기 요청은, 애플리케이션 토큰을 결제하기 위해 사용할 계정 번호와 같은, 결제 정보가 포함될 수 있다. 일부 구현예에서, 상기 요청은, 이것이 후속 애플리케이션 토큰 요청이라는, 표시를 추가로 포함할 수 있다. 상기 요청은 통신 장치(850)와 서비스 제공자 컴퓨터 A(860) 사이의 유선 또는 무선 연결을 통해 전송될 수도 있다.
단계(S804)에서, 서비스 제공자 컴퓨터 A(860)는 사용자, 통신 장치(850) 및/또는 결제 정보를 검증하고, 애플리케이션 토큰을 생성할 수 있다. 애플리케이션 토큰 A는, 예를 들어 디지털 티켓의 형태로 생성될 수 있다. 애플리케이션 토큰 A는 권한 부여(예, 하나의 철도 여정, 특정 콘서트로의 액세스, 특정 건물로의 액세스 등)에 대한 정보를 포함할 수 있다. 애플리케이션 토큰 A는 서비스 제공자 A를 특징화하는 정보를 포함할 수 있다(예를 들어, 애플리케이션 토큰은, 서비스 제공자 A가 Portland Metropolitan Transit Authority라는 것을 명시하는 헤더를 포함할 수 있음). 애플리케이션 토큰 A는, 서비스 제공자 A에 특정한 포맷 및/또는 크기일 수 있다.
단계(S806)에서, 서비스 제공자 컴퓨터 A(860)는, 애플리케이션 토큰 정보를 토큰 서비스 컴퓨터(870)에 전송한다. 서비스 제공자 컴퓨터 A(860)는, 이렇게 특정한 애플리케이션 토큰(예, 특정 여정 또는 이벤트)에 대한 정보를 토큰 서비스 컴퓨터(870)에 전송할 수 있다. 서비스 제공자 컴퓨터 A(860)는, 이전에 프로비저닝된 토큰 용기에 대한 정보(예, 토큰 용기의 식별자)를 추가로 전송할 수 있다.
토큰 서비스 컴퓨터(870)는 애플리케이션 토큰 정보를 수신하고, 애플리케이션 토큰 정보를 준비하여 계정 관리 애플리케이션(854)에 전송한다. 일부 구현예에서, 토큰 서비스 컴퓨터(870)는, 계정 관리 애플리케이션(854)이 애플리케이션 토큰을 사용할 수 있도록 수정하기 위해 연산을 실행한다. 토큰 서비스 컴퓨터(870)는, 예를 들어 애플리케이션 토큰을 제1 포맷에서 제2 포맷으로 변환할 수 있다. 대안적으로 또는 추가적으로, 토큰 서비스 컴퓨터(870)는 애플리케이션 토큰과 연관된 헤더 정보를 추가하거나 수정할 수 있다. 토큰 서비스 컴퓨터(870)는 토큰 서비스 컴퓨터(870)의 키를 사용하여, 애플리케이션 토큰에 암호식으로 추가 서명할 수 있다.
단계(S808)에서, 토큰 서비스 컴퓨터(870)는 애플리케이션 토큰(애플리케이션 토큰 A)을 계정 관리 애플리케이션(854)에 전송한다. 토큰 서비스 컴퓨터(870)는, 애플리케이션 토큰 A가 특정 식별자(예, 123459789)를 갖는 토큰 용기에 저장되어야 함을 나타내는 정보와 함께 애플리케이션 토큰 A를 전송할 수 있다. 계정 관리 애플리케이션(854)은, 계정 관리 애플리케이션(854)의 토큰 용기에 애플리케이션 토큰 A를 수신하고 저장할 수 있다.
일부 구현예에서, 토큰 서비스 컴퓨터(870)는, 통신 장치(850)가 애플리케이션 토큰 A로 프로비저닝 되었음을 표시하기 위해 서비스 제공자 컴퓨터 A(860)에 알림을 전송할 수 있다.
후속하여, 사용자는 다른 서비스 제공자인 서비스 제공자 B와 연관된 애플리케이션과 상호 작용하여 제2 애플리케이션 토큰을 구매할 수 있다. 예를 들어, 애플리케이션 토큰 A는 제1 철도 제공자를 통해 구매된 철도 여정의 제1 레그용일 수 있고, 애플리케이션 토큰 B는 제2 철도 제공자를 통해 구매된 철도 여정의 제2 레그용일 수 있다. 또 다른 예로서, 애플리케이션 토큰 A는 Translyvanian Airlines 애플리케이션에서 구매한 Transylvanian Airlines의 항공권일 수 있다. 사용자는 후속해서 티켓 집계기 애플리케이션을 통해 다른 Translylvanian Airlines 항공권을 구매할 수 있다. 사용자는, 서비스 제공자 애플리케이션 B(856)를 통해 애플리케이션 토큰 B의 구매를 개시할 수 있다. 대안적으로 또는 추가적으로, 사용자는 서비스 제공자 웹 사이트를 통해(예, 통신 장치(850) 상의 웹 브라우저 애플리케이션을 통해) 애플리케이션 토큰의 구매를 개시할 수도 있다.
단계(S812)에서, 서비스 제공자 애플리케이션 B(856)는 애플리케이션 토큰에 대한 요청을 서비스 제공자 컴퓨터 B(880)에 전송할 수 있다. 상기 요청은, 애플리케이션 토큰과 관련된 정보를 포함할 수 있다. 상기 요청은, 애플리케이션 토큰을 결제하기 위해 사용할 계정 번호와 같은, 결제 정보가 포함될 수 있다. 일부 구현예에서, 상기 요청은, 이것이 후속 애플리케이션 토큰 요청이라는, 표시를 추가로 포함할 수 있다. 상기 요청은, 통신 장치(850)와 서비스 제공자 컴퓨터 B(880) 사이의 유선 또는 무선 연결을 통해 전송될 수도 있다.
단계(S804)에서, 서비스 제공자 컴퓨터 B(860)는 사용자, 통신 장치(850) 및/또는 결제 정보를 검증하고, 애플리케이션 토큰 B를 생성할 수 있다. 애플리케이션 토큰 B는, 예를 들어 디지털 티켓의 형태로 생성될 수 있다. 애플리케이션 토큰 B는 권한 부여(예, 하나의 철도 여정, 특정 콘서트로의 액세스, 특정 건물로의 액세스 등)에 대한 정보를 포함할 수 있다. 애플리케이션 토큰 B는, 서비스 제공자 B를 특징화하는 정보를 포함할 수 있다(예를 들어, 애플리케이션 토큰 B는, 서비스 제공자가 Travel Corp이라는 것을 명시하는 헤더를 포함할 수 있음). 애플리케이션 토큰 B는 서비스 제공자 B에 특정한 포맷 및/또는 크기일 수 있다. 일부 구현예에서, 애플리케이션 토큰을 발급 및/또는 검증하는 것은 다른 서비스 제공자와의 통신을 포함할 수 있다. 예를 들어, 서비스 공급자 B가 티켓 판매 애플리케이션이고 서비스 공급자 A가 콘서트 장소인 경우에, 서비스 공급자 B는, 애플리케이션 토큰 B를 발급하기 전에 콘서트 장소/서비스 제공자 A로부터 티켓의 구매를 조율할 수 있다.
단계(S816)에서, 서비스 제공자 컴퓨터 B(880)는, 애플리케이션 토큰 정보를 토큰 서비스 컴퓨터(870)에 전송한다. 서비스 제공자 컴퓨터 B(880)는, 이렇게 특정한 애플리케이션 토큰(예, 특정 여정 또는 이벤트)에 대한 정보를 토큰 서비스 컴퓨터(870)에 전송할 수 있다. 서비스 제공자 컴퓨터 B(880)는, 이전에 프로비저닝된 토큰 용기에 대한 정보(예, 토큰 용기의 식별자)를 추가로 전송할 수 있다.
토큰 서비스 컴퓨터(870)는 애플리케이션 토큰 정보를 수신하고, 애플리케이션 토큰 정보를 준비하여 계정 관리 애플리케이션(854)에 전송한다. 일부 구현예에서, 토큰 서비스 컴퓨터(870)는, 계정 관리 애플리케이션(854)이 애플리케이션 토큰을 사용할 수 있도록 수정하기 위해 연산을 실행한다. 토큰 서비스 컴퓨터(870)는, 예를 들어 애플리케이션 토큰을 제1 포맷에서 제2 포맷으로 변환할 수 있다. 대안적으로 또는 추가적으로, 토큰 서비스 컴퓨터(870)는 애플리케이션 토큰과 연관된 헤더 정보를 추가하거나 수정할 수 있다. 토큰 서비스 컴퓨터(870)는 토큰 서비스 컴퓨터(870)의 키를 사용하여, 애플리케이션 토큰에 암호식으로 추가 서명할 수 있다.
단계(S818)에서, 토큰 서비스 컴퓨터(870)는 애플리케이션 토큰(애플리케이션 토큰 B)을 계정 관리 애플리케이션(854)에 전송한다. 토큰 서비스 컴퓨터(870)는, 애플리케이션 토큰 B가 특정 식별자(예, 123459789)를 갖는 토큰 용기에 저장되어야 함을 나타내는 정보와 함께 애플리케이션 토큰 B를 전송할 수 있다. 계정 관리 애플리케이션(854)은, 계정 관리 애플리케이션의 토큰 용기에 애플리케이션 토큰을 수신하고 저장할 수 있다.
일부 구현예에서, 토큰 서비스 컴퓨터(870)는, 통신 장치(850)가 애플리케이션 토큰 B로 프로비저닝 되었음을 표시하기 위해 서비스 제공자 컴퓨터 B(880)에 알림을 전송할 수 있다.
도 9는 일부 구현예에 따른 애플리케이션 토큰 교환 프로세스를 나타낸다. 사용자는 통신 장치(950)를 사용하여 (도 7 및 도 8에 관해 전술한 바와 같이 프로비저닝된 대로) 애플리케이션 토큰을 교환할 수 있다. 통신 장치는 액세스 장치(960)와 상호 작용하여 애플리케이션 토큰을 교환할 수 있고, 액세스 장치(960)는 백엔드 상의 서비스 제공자 컴퓨터(970)와 통신할 수 있다. 액세스 장치(960)는, 예를 들어 운송업체 또는 이벤트 장소에서의 티켓 스캐너일 수 있다. 다른 예로서, 액세스 장치(960)는 POS 장치일 수 있다. 도 9에 나타낸 바와 같이, 애플리케이션 토큰을 교환하기 위해 계정 관리 애플리케이션(952)이 사용된다. 다른 구현예에서, 애플리케이션 토큰은 서비스 제공자 애플리케이션을 통해 교환될 수 있다.
단계(S901)에서, 계정 관리 애플리케이션(952)은 액세스 장치(960)와 상호 작용하여 애플리케이션 토큰을 교환한다. 상호 작용은, 예를 들어 사용자가 통신 장치(950)를 액세스 장치에 태핑하는 것을 포함할 수 있다. 계정 관리 애플리케이션(952)은 액세스 장치와 통신 세션을 개시할 수 있다. 통신 세션은 근거리 통신(예, EMV 비접촉식 사양을 사용)을 통할 수 있다. 대안적으로 또는 추가적으로, 계정 관리 애플리케이션(952)은, 임의의 적절한 유선 또는 무선 통신을 통해 액세스 장치(960)와 상호 작용할 수 있다. 상호 작용에 기초하여, 계정 관리 애플리케이션은 애플리케이션 토큰에 대한 인가 요청을 액세스 장치(960)에 전송할 수 있다.
계정 관리 애플리케이션(952)은, 저장된 애플리케이션 토큰의 전부 또는 일부를 액세스 장치(960)에 전송할 수 있다. 일부 구현예에서, 사용자는 초기에 적절한 애플리케이션 토큰을 (예를 들어, 계정 관리 애플리케이션(952)을 통해 디스플레이된 여러 티켓 중 하나를 선택함으로써) 선택할 수 있다. 그런 다음, 계정 관리 애플리케이션(952)은 선택된 애플리케이션 토큰을 액세스 장치(960)로 푸시할 수 있다. 대안적으로, 계정 관리 애플리케이션은, 액세스 장치(960)에 푸시하기 위해 하나 이상의 적절한 애플리케이션 토큰을 식별할 수 있다. 예를 들어, 액세스 장치는, 액세스 장치 식별자를 계정 관리 애플리케이션(952)에 송신한다. 액세스 장치 식별자는, 액세스 장치가 Super Tix에 의해 작동됨을 표시한다. 따라서, 계정 관리 애플리케이션(952)은 Super Tix와 연관된 것으로 식별되는 네 개의 애플리케이션 토큰을 식별하고, 상기 네 개의 식별된 애플리케이션 토큰을 액세스 장치에 송신한다. 다른 예로서, 계정 관리 애플리케이션(952)은, 전체 토큰 용기 및 그 안의 모든 애플리케이션 토큰을 액세스 장치(960)에 전송할 수 있다.
일부 구현예에서, 계정 관리 애플리케이션(952) 및/또는 액세스 장치는, 현재 및/또는 미래의 교환에 대한 검증에 사용하기 위해 이벤트 특정 및/또는 장치 특정 데이터를 추가로 프로세싱할 수 있다. 예를 들어, 액세스 장치(960)는 계정 관리 애플리케이션에, 타임스탬프, 프로그램 식별자, 위치 이름 및/또는 단말기 식별자 중 하나 이상을 제공할 수 있다. 계정 관리 애플리케이션(952)은, 수신된 타임스탬프와 비교하기 위한 타임스탬프를 추가로 생성할 수 있다.
일부 구현예에서, 계정 관리 애플리케이션(952)은 통신 장치(950) 상에 저장된 암호화 키(예, 개인 키)를 검색할 수 있고, 그런 다음에 상기 검색된 키를 사용하여 이벤트 특정 또는 장치 특정 데이터에 서명할 수 있다. 이는, 통신 장치(950)가 요청을 생성하였음을 검증하기 위해, 나중에 서비스 제공자 컴퓨터(970)에 의해 사용될 수 있다. 일부 구현예에서, 검증은, 이벤트 또는 장치 특정 데이터에 서명한 개인 키와 연관된 공개 키를 사용함으로써, 서비스 제공자 컴퓨터(970)에 의해 수행될 수 있다. 예를 들어, 일부 구현예에서, 이벤트 특정 데이터는 일시적인 것(nonce)일 수 있고, 일시적인 것은 통신 장치(950) 상의 보안 요소에 상주하는 개인 키에 의해 서명될 수 있다. 계정 관리 애플리케이션(952)은 일시적인 것을 생성할 수 있고, 통신 장치(950) 상의 보안 요소로부터 개인 키를 검색하여 여기에 서명할 수 있다. 이어서, 서명된 일시적인 것은 서비스 제공자 컴퓨터(970)에 단독으로 또는 일시적인 것과 함께 제공될 수 있다. 이는, 서비스 제공자 컴퓨터(970)로 하여금, 계정 관리 애플리케이션(952) 및 액세스 장치(960)가 통신 장치를 통해 상호 작용하였고 교환 요청이 정확한 계정 관리 애플리케이션으로부터 수신되는 것을 확인시킬 것이다.
단계(S902)에서, 액세스 장치(960)는 하나 이상의 애플리케이션 토큰을 수신하고 분석한다. 액세스 장치(960)가 여러 애플리케이션 토큰을 수신하는 경우에, 액세스 장치(960)는 교환용 애플리케이션 토큰을 식별할 수 있다. 액세스 장치(960)는, 액세스 장치와 연관된 매개 변수를 애플리케이션 토큰 데이터와 비교하는 것에 기초하여, 교환용 액세스 토큰을 식별할 수 있다. 예를 들어, 액세스 장치는 런던에 있을 수 있다. 수신된 계정 관리 애플리케이션(952)에 네 장의 기차 티켓이 있고, 기차 티켓 중 하나가 런던 출발과 연관되는 경우에, 액세스 장치(960)는 애플리케이션 토큰 상세정보를 사용하여 런던 출발과 연관된 애플리케이션 토큰을 교환용으로 식별하고 선택할 수 있다.
일부 구현예에서, 액세스 장치(960)는 애플리케이션 토큰을 오프라인으로 검증한다. 애플리케이션 토큰은, 애플리케이션 토큰을 발급했던 토큰 서비스 컴퓨터에 의해 암호화되어 있을 수도 있다. 액세스 장치(960)는, 애플리케이션 토큰을 발급했던 토큰 서비스 컴퓨터의 저장된 암호화 키를 가질 수 있다. 액세스 장치(960)는 저장된 암호화 키와 소정의 알고리즘을 사용하여, 토큰 서비스 컴퓨터의 암호화 서명을 검증함으로써, 다른 컴퓨터를 쿼리할 필요 없이 애플리케이션 토큰을 검증할 수 있다. 이는, 애플리케이션 토큰이 신속하게 검증되어야 하거나 인터넷 연결이 없는 경우에, 특히 유용하다. 예를 들어, 환승 운임 게이트에서 티켓을 신속하게 검증하여 사용자가 신속하게 진행할 수 있는 것이 바람직하다. 대안적으로 또는 추가적으로, 액세스 장치(960)는 단계(S906)에 관해 후술한 바와 같이, 장치 및/또는 이벤트 데이터를 사용하여 애플리케이션 토큰을 검증할 수 있다. 대안적으로 또는 추가적으로, 액세스 장치(960)는 서비스 제공자 컴퓨터(970)에 의해 검증될 요청을 전달할 수도 있다.
일부 구현예에서, 단계(S904)에서, 액세스 장치(960)는 애플리케이션 토큰 인가 요청을 서비스 제공자 컴퓨터(970)에 전달한다. 액세스 장치(960)는, 수신된 애플리케이션 토큰 인가 요청을 전달할 수 있다. 대안적으로, 액세스 장치(960)는, 서비스 제공자 컴퓨터(970)에 보내기 전에 (예를 들어, 수신된 애플리케이션 토큰 세트 중 하나를 선택하고 토큰 상태 등을 수정함으로써) 애플리케이션 토큰 인가 요청을 수정할 수 있다. 액세스 장치(906)가 애플리케이션 토큰 인가 요청을 이미 검증하였다면, 액세스 장치(906)는, 요청이 검증되었음을 나타내는 데이터를 포함할 수 있다.
단계(S906)에서, 서비스 제공자 컴퓨터(970)는 애플리케이션 토큰 인가 요청을 수신하고 프로세싱한다. 서비스 제공자 컴퓨터(970)는, 수신된 애플리케이션 토큰 인가 요청을 검증할 수 있다. 일부 구현예에서, 액세스 장치(960)는 애플리케이션 토큰 요청을 이미 검증했을 수 있고, 이 경우 서비스 제공자 컴퓨터(970)는 검증을 확인하거나 알릴 수 있다. 대안적으로, 서비스 제공자 컴퓨터(970)는 독립적으로 애플리케이션 토큰을 검증할 수 있다. 서비스 제공자 컴퓨터는, 예를 들어 애플리케이션 토큰의 디지털 서명을 검증할 수 있다. 다른 예로서, 서비스 제공자 컴퓨터(970)는, 수신된 애플리케이션 토큰을, 저장된 애플리케이션 토큰과 비교하여 검증을 수행할 수 있다. 애플리케이션 토큰을 검증할 시, 서비스 제공자 컴퓨터(970)는 저장된 토큰 상태를 수정하여, 애플리케이션 토큰을 교환한 것으로서 알릴 수 있다.
또한, 이전에 설명된 서명 장치 및/또는 이벤트 특정 데이터는, 서비스 제공자 컴퓨터(970)에 의해 또한 검증될 수 있다. 장치 및/또는 이벤트 특정 데이터는, 액세스 장치(960) 및/또는 통신 장치(950)로부터 얻어질 수 있다. 예를 들어, 일부 구현예에서, 상기 언급한 바와 같이, 장치 및/또는 이벤트 특정 데이터는 통신 장치(950)의 보안 요소 내의 암호화 키에 의해 서명될 수 있다. 최종 디지털 서명은, 대응하는 암호화 키(예, 공개 키)를 사용하여 서비스 제공자 컴퓨터(970)에 의해 검증될 수 있어서, 적확한 통신 장치(950)가 애플리케이션 토큰의 교환을 요청하는 것을 보증한다.
단계(S908)에서, 서비스 제공자 컴퓨터(970)는 액세스 장치(960)에 애플리케이션 토큰 인가 응답을 전송한다. 상기 응답은 애플리케이션 토큰이 유효한지 여부를 표시할 수 있다. 일부 구현예에서, 단계(S908)는 생략될 수 있다. 예를 들어, 액세스 장치가 애플리케이션 토큰을 오프라인으로 검증하는 경우에, 액세스 장치가 서비스 제공자 컴퓨터(970)로부터 추가 검증 정보를 수신할 필요가 없을 수도 있다.
단계(S910)에서, 액세스 장치(960)는 계정 관리 애플리케이션(952)으로 응답을 전송한다. 일부 구현예에서, 액세스 장치(960)는, 요청이 수신된 동일한 근거리 통신 세션 내에 응답을 전송할 수 있다. 응답은 요청이 검증되었는지(예, 위치 또는 리소스에 대한 액세스 권한이 부여되어야 함) 또는 검증되지 않았는지(예, 액세스 거부되어야 함) 여부를 표시할 수 있다. 요청/애플리케이션 토큰이 검증된 이벤트에서, 액세스 장치는 그러한 액세스 권한을 (예를 들어, 작동자(예, 장소 입국을 관리하는 사람)에 알림을 전송하거나 문을 개방함으로써) 부여할 수 있다. 단계(910)는, 액세스 장치가 오프라인 검증을 수행했던 경우에는, 단계(904 내지 908) 이전에 일어날 수 있다. 대안적으로, 액세스 장치(960)는, 서비스 제공자 컴퓨터(970)가 애플리케이션 토큰을 검증했던 경우에는, 단계(904 내지 908) 이후에 단계(910)를 수행할 수 있다.
단계(S912)에서, 계정 관리 애플리케이션(952)은 애플리케이션 토큰과 연관된 토큰 상태를 업데이트할 수 있다. 일부 구현예에서, 계정 관리 애플리케이션은, 단계(S901)에서 요청을 전송할 시, 애플리케이션 토큰을 "사용됨"으로 표시함으로써, 토큰 상태를 즉시 업데이트할 수 있다. 대안적으로 또는 추가적으로, 계정 관리 애플리케이션(952)은 단계(S910)에서 응답에 수신된 정보에 기초하여, 토큰 상태를 업데이트할 수 있다.
운송 환경
일부 구현예에 따라, 개선된 토큰화 시스템은 운송 환경에서 사용될 수 있다. 운송 환경은 도심 대량 운송 티켓(mass transit ticketing)과 도시간 운송(inter-city travel)을 포함할 수 있다. 도심 대량 운송 티켓은 티켓 가격이 달라지지 않는 특성을 가질 수 있고, 도보 고객을 서비스하고, 가는 곳만큼 계산된 요금을 갖고, 일반적으로 게이트-인/게이트-아웃 시설을 갖춘 도심 철도와 연관된다. 도심 대량 운송 티켓은 오프라인 데이터 인증을 사용할 수 있고, 비접촉식 카드와 모바일 지갑을 사용할 수 있어 거부감이 작고 및 고객 만족도가 높다. 도시간 운송의 경우, 고객은 보장된 좌석(예, 선불 예약)을 원할 수 있고, 운임은 변동할 수 있고(예, 조기 예약 시 요금 절감), 티켓은 도심 대량 운송 티켓에 비해 가격이 더 높을 수 있다. 운임 계산도 또한 복잡할 수 있고, 편도 또는 왕복, 시즌권, 단체 할인 등인지 여부를 고려할 수 있다. 철도역은 게이트가 또한 없을 수 있고 티켓 검사에 의존할 수 있다.
티켓 구매 및 디스플레이는, 서비스 또는 애플리케이션 제공자와 연결된 발권 애플리케이션에 의해 처리될 수 있습니다. 일부 구현예에서, 일부 선택 여정만이 디지털 티켓에 대해 적합할 수 있고 토큰화 시스템에 의해 프로세싱될 수 있다. 발권 애플리케이션은 어떤 여정이 적합한지 표시할 수 있다. 발권 애플리케이션은 프로비저닝에 의해 (하나가 이미 존재하지 않는 경우에) 디지털 티켓 용기(토큰 용기)를 생성할 수 있고, 트랜시트 백오피스에게 (예를 들어, 애플리케이션 토큰 및 토큰 상태의 형태로) 소비자의 통신 장치의 디지털 토큰 용기에 티켓을 푸시할 수 있다. 트랜시트 백오피스는 반복적인 재맞춤(예, 토큰 상태 업데이트)에 의해 토큰 용기에 티켓을 추가/업데이트할 수 있다. 발권 애플리케이션은 어떤 티켓을 사용하는지, 부분적으로 사용하는지 또는 사용하지 않는지 보여주는 트랜시트 백오피스에서 업데이트를 받을 수 있다. 일부 구현예에서, 토큰 용기로 푸시된 티켓은, 상이한 출처, 예컨대 웹 사이트를 통해 발권 애플리케이션, 대면 구매 또는 온라인 구매로부터 직접 구매와 같은 상이한 출처로부터 생길 수 있다.
일부 구현예에서, 소비자는, 환승 게이트에서 태핑하기 전에 디지털 티켓 용기를 가져 와서, 기본 결제 토큰이 여정에 부과되는 것을 방지한다. 소비자는, 소비자의 통신 장치에 있는 모바일 지갑 애플리케이션에서 디지털 티켓을 가져 와서, 환승 게이트에서 탭을 수행 할 수 있다. 환승 게이트는 토큰을 읽을 수 있고(예, 발급자 재량 데이터로서 전송될 수 있고), 통신 장치는 트랜잭션 로그에 환승 게이트 데이터를 쓸 수 있다. 게이트는 티켓을 검증할 수 있고, 소비자에게 환승 시스템에 대한 액세스를 제공하기 위해 개방할 수 있다. 환승 게이트는 트랜잭션 로그에 스테이션 ID를 기록할 수 있다(예, 스테이션 ID 및 타임 스탬프를 로그에 기록할 수 있음). 트랜잭션 로그는, 역통과 통제 및 온트레인 검증에 사용할 수 있다. 유효한 다중 티켓은 통신 장치의 디지털 토큰 용기 내에서 동시에 존재할 수 있음에 유의해야 한다. 일부 구현예에서, 모든 유효한 티켓은 탭하는 동안에 게이트로 전송될 수 있고(예, 단일 티켓 및 시즌권은 동시에 존재할 수 있음), 트랜시트 백오피스는 어떤 티켓을 사용한 것으로 표시할지 결정하기 위해 규칙을 적용할 수 있다. 디지털 티켓은 클리핑 될(예, 토큰 상태가 부분적으로 사용되거나 사용된 것으로 업데이트 될) 수 있지만, 디지털 토큰 용기에서 삭제될 필요는 없다. 일부 구현예에서, 인증된 판독기만 티켓을 클리핑(예, 디지털 토큰 용기를 읽기, 이에 쓰기, 이를 업데이트) 할 수 있다. 일부 구현예에서, 인증된 로그(예, 암호화된 로그)는 사기를 방지하고 프라이버시를 보호하기 위해 사용될 수 있지만, 시스템에 복잡성(예, 키 관리)을 추가할 수 있다.
본원에 설명된 바와 같이 디지털 발권 토큰화는, 탭하고 결제하는 티켓 처리 메커니즘으로서, 애플리케이션 토큰용 토큰 용기를 사용하는 개념을 포함한다. 토큰 용기는 티켓 상태를 안전하게 유지할 수 있고, 비접촉식 장치(예, 근거리 통신(NFC))를 사용하여 게이트 판독기와 통신하고, 티켓 발급 실체가 그 속성(예, 토큰 상태 업데이트)을 동적으로 맞춤화 할 수 있게 한다. 토큰 용기 및/또는 애플리케이션 토큰을 사용하는 탭은, 결제 거래를 초래하지 않을 수 있으며, 게이트 및 티켓 발급자(예, 운송 운영자) 사이의 비공개 통신만을 초래할 수 있다. 디지털 발권 토큰화는 즉각적인 티켓 발급을 가능하게 하고, 비접촉식 판독기 기술을 사용하여 전 세계적으로 상호 운용할 수 있고, 대체체(종이 티켓, QR 코드 등)보다 더 나은 고객 사용자 경험을 제공하며, 높은 부하 하에서도 확장 가능하고 안정적으로 운영되는 동시에 운영 비용을 낮출 수 있다.
로열티 환경
일부 구현예에 따라, 개선된 토큰화 시스템은 또한, 디지털 토큰 용기에 저장된 로열티 정보를 관리하기 위해 이용될 수 있다. 발급자가 제공한 로열티 정보는, 다음과 같이 가맹점으로 흐를 수 있다. 발급자는 토큰 활성화 요청(TAR) 응답의 일부로 로열티 정보를 선택적으로 제공할 수 있다. 토큰 서비스 컴퓨터는 프로비저닝 하는 동안에 토큰 상태에 로열티 데이터를 동적으로 주입할 수 있다. 디지털 지갑 애플리케이션은, 결제 트랜잭션의 일부로 단말기에 로열티 정보를 전송하는 책임을 가질 수 있다. 트랜잭션 중에 전송될 로열티 태그와 하위 태그에 관해 발급자 사이에 변화가 있을 수 있다. 각 발급자는 독점 태그를 사용할 수 있고, 사용된 태그 갯수 및 이들 태그가 갖는 콘텐츠에 차이가 있을 수 있다. 일부 구현예에서, 발급자 제공 로열티 데이터는, 파일 제어 정보(FCI) 또는 발급자 애플리케이션 데이터(IAD) 내의 발급자 재량 데이터에 제공될 수 있고, 이는 가변 길이를 가질 수 있다. 토큰 서비스 컴퓨터는 이 데이터를 사용 중에 (그리고 다시 사용하는 동안에) (예를 들어, 토큰 상태 업데이트) 배치할 수 있다. FCI 발급사 재량 데이터는, 단말기로부터 선택된 애플리케이션 식별자 명령에 응답하여 단말기에 제공될 수 있고, IAD 발급자 재량 데이터는, 단말기로부터의 프로세싱 처리 옵션에 응답하여 단말기에 제공될 수 있다.
도 10 및 도 11은 예시적인 로열티 연산을 나타낸다. 이들 예시에서, 발급자(예, 은행)는 로열티 데이터(예. 로열티 보상 관리)를 생성했다. 다른 예시에서 로열티 데이터는 가맹점, 운송 제공자 등과 같은 서비스 제공업체에 의해 생성될 수 있다.
도 10은 일부 구현예에 따른 로열티 데이터 흐름을 나타낸다. 일부 구현예에서, 발급자는 선택적으로, TAR 응답에서 로열티와 추가 발급자 데이터를 다시 전달할 수 있다. 제1 단계에서, 소비자는 지갑 애플리케이션에 대한 발급자의 이용 약관을 수락할 수 있다. 제2 단계에서, 지갑 애플리케이션은 토큰 서비스 컴퓨터에 대한 프로비저닝 토큰 호출을 트리거할 수 있다. 제3 단계에서, 토큰 서비스 컴퓨터는 토큰 활성화 요청(TAR)을 발급자에게 전송할 수 있다. 제4 단계에서 발급자는 TAR에 응답할 수 있고, 선택적으로 로열티와 추가 발급자 재량 데이터를 다시 전달할 수 있다. 제5 단계에서, 토큰 서비스 컴퓨터는 로열티 및 발급자 제공 추가 데이터를 토큰 사용(예, 토큰 상태)에 주입할 수 있고 토큰 사용을 지갑 애플리케이션에 돌려줄 수 있다. 제6 단계에서, 지갑 애플리케이션은 토큰(및 이의 토큰 상태)을 소비자 장치에 프로비저닝한다.
도 11은 일부 구현예에 따른 로열티 데이터 업데이트 흐름을 나타낸다. 발급사는, 로열티가 업데이트를 통해 변경(예, 교체/갱신)되는 곳에 로열티 (및 기타 발급사 재량 데이터)를 업데이트할 수 있다. 이는, 발급사가 개시한 재사용(예, 토큰 상태 업데이트)을 통해 수행될 수 있다. 제1 단계에서 발급사는 API 호출을 통해 업데이트된 로열티 정보를 푸시할 수 있다. 제2 단계에서, 토큰 서비스 컴퓨터는 이 정보를 토큰 사용에 주입할 수 있고, 재사용 호출(예, 토큰 상태 업데이트)을 지갑 애플리케이션으로 트리거한다. 지갑 애플리케이션은 토큰 서비스 컴퓨터에 연락하여 토큰에 대한 새로운 사용을 검색하고 지갑 애플리케이션에 저장된 사용(예, 토큰 상태)을 갱신할 수 있다.
도 12는 일부 구현예에 따른 토큰 및 토큰 상태를 관리하기 위한 공정(1200)의 흐름도를 나타낸다. 프로세스(1200)는, 예를 들어 토큰 서비스 컴퓨터와 연관된 서버 컴퓨터에 의해 수행될 수 있다. 프로세스(1200)는, 애플리케이션 토큰을 사용자의 통신 장치에 프로비저닝하기 위해, 애플리케이션 제공자(예, 발권 실체, 운송 운영자, 가맹점 등)로부터의 프로비저닝 요청을 수신함으로써, 블록(1202)에서 시작할 수 있다.
블록(1204)에서, 애플리케이션 토큰과 애플리케이션 토큰의 토큰 상태를, 토큰 볼트에서 사용자와 연결된 트랜잭션 토큰에 연결될 수 있다. 블록(1206)에서, 애플리케이션 토큰과 애플리케이션 토큰의 토큰 상태를 사용자의 통신 장치에 프로비저닝할 수 있다. 블록(1208)에서, 프로세스(1200)는 애플리케이션 토큰의 토큰 상태를 업데이트하기 위해, 애플리케이션 제공자로부터 상태 업데이트 요청을 수신할 수 있다.
블록(1210)에서, 프로세스(1200)는 애플리케이션 토큰의 토큰 상태를 업데이트할 수 있다. 애플리케이션 토큰의 토큰 상태는 토큰 볼트에 저장된다. 블록(1212)에서, 토큰 볼트에 저장되고 업데이트된 토큰 상태를 통신 장치에서의 토큰 상태와 동기화할 수 있다. 일부 구현예에서, 토큰 상태는 "사용"으로 지칭될 수 있고, 운송 정보 및/또는 로열티 정보와 같은 사용 정보를 포함할 수 있다.
이벤트 특정 데이터 및 장치 특정 데이터의 예시
통신 장치 및 액세스 장치는, 이벤트 특정 데이터 및/또는 장치 특정 데이터를 추적, 저장 및 분석할 수 있다. 이 데이터를 사용하여, 상호 작용을 검증하고 사기를 모니터링하고 방지할 수 있다. 또한, 운송 설정에서, 사용자가 액세스 장치 내부 및 외부로 언제 누를지(예를 들어, 애플리케이션 토큰이 일일 패스와 같은 기간을 기준으로 하는 경우) 추적하는 것이 중요할 수 있다. 다음 예시는 이벤트 특정 데이터 및 장치 특정 데이터의 유형을 나타낸고, 이를 통신 장치와 액세스 장치가 관리하기 위해 구성될 수 있다.
액세스 장치
액세스 장치는 계정 관리 애플리케이션에 다음 정보를 제공할 수 있다:
· 타임스탬프 - 정확한 타임스탬프(5 바이트)
· 타임스탬프 변환 계수 - 범용 시간으로 변환하는 요인(1 바이트)
· 프로그램 식별자 - 프로그램 식별자(4 바이트)
· 기간 번호 - 프로그램 할당된 기간(2 바이트)
· 위치 이름 - 고유한 프로그램 할당 위치(20 바이트)
· 단말기 식별자 - 프로그램의 특정 위치에 할당된 고유한 단말기(액세스 장치) 식별자(2 바이트)
상기 데이터를 정확하게 유지하는 것은 프로그램 운영자의 책임이다. 예를 들어, 전원 장애 또는 시스템 리셋의 경우에 타임스탬프를 동기화해야 하고, 기간이 만료될 때마다 시스템의 모든 액세스 장치에서 기간 횟수를 증분시켜야 한다.
액세스 장치는 또한, 계정 관리 애플리케이션에서 제공된 서명을 검증할 수 있어야 한다. 특정 애플리케이션 토큰을 기념하거나 사기를 결정하는 것에 관련된 액세스 장치의 논리는, 프로그램 특정적이다.
통신 장치
액세스 장치의 타임스탬프 보완으로서, 계정 관리 애플리케이션은 통신 장치 범용 타임스탬프(UTC)를 검색할 수 있다. 이는 여러 메커니즘을 통해 달성할 수 있다:
· 장치가 GPS 신호를 얻을 수 있는 경우, 앱이 GPS 신호의 시간에 액세스할 수 있다.
· 장치가 네트워크에 액세스하는 경우, 셀 네트워크 시간을 얻거나 데이터 서비스가 이용 가능하면 여러 서비스로부터 서명된 시간을 얻을 수 있다.
· 장치가 네트워크 또는 GPS 신호에 대한 액세스를 갖지 않는 경우에, 마지막 부팅 이후 정확한 시간에 액세스하도록 앱이 관리하는 한 여전히 수행할 수 있는 일이 있다. 장치는 마지막 부팅 이후의 시간을 추적하므로, 현재의 정확한 시간을 계산하기 위해 수신된 마지막 정확한 시간과 함께 이것을 사용할 수 있다.
계정 관리 애플리케이션은, 다음 기능을 갖는 로그를 포함할 수 있다:
· 최소 100개의 탭(40 바이트/탭 = 4000 바이트)을 로그하는 기능.
· 로그 레코드의 포맷은 다음과 같다(분리자가 없는 정의된 길이 값):
o 터미널(액세스 장치) 타임스탬프(5 바이트) - 단말기 출처
o 프로그램 식별자(4 바이트) - 단말기 출처
o 기간 번호(2 바이트) - 단말기 출처
o 위치 이름(20 바이트) - 단말기 출처
o 단말기 식별자(2 바이트) - 단말기 출처
o 애플리케이션 타임스탬프(5 바이트) -애플리케이션 출처
o 상태 워드(2 바이트) - 애플리케이션 출처
토큰 용기 사양 예시
계정 관리 애플리케이션은, 다음 기능을 갖는 토큰 용기를 포함할 수 있다:
· 최소 100개의 20 바이트 길이의 티켓(2500 바이트)을 저장할 수 있는 기능.
· 레코드의 최대 크기는 255 바이트 - 5 바이트의 헤더 및 250 바이트의 티켓 블롭(애플리케이션 토큰)이다.
애플리케이션 토큰의 실제 길이가 프로그램 특정이기 때문에, 용기에 저장/유지 관리될 수 있는 애플리케이션 토큰의 실제 갯수는 다르며, 용기가 최대 용량에 접근할 때마다 가비지 수집이 발생하는 것을 보증하는게 계정 관리 애플리케이션 및/또는 토큰 서비스 컴퓨터의 책임이다.
토큰 용기 레코드의 포맷은 다음과 같을 수 있다(길이/값 쌍):
· 후속 데이터 길이 (1 바이트)
· 프로그램 식별자 (4 바이트)
· 분 간격 (2 바이트)
· 티켓 블롭 (애플리케이션 토큰)(1 - 250 바이트)
본원에 설명된 기법은 다수의 이점을 갖는다. 토큰 서비스 컴퓨터를 통해, 각 개별 서비스 공급자 애플리케이션은 개별 계정 관리 애플리케이션 각각과 통합할 필요는 없다. 따라서, 토큰 서비스 컴퓨터에 의해 수행된 기능은 통합을 간소화하고 확장성을 향상시킨다.
또한, 본원에 설명된 암호화 기법은, 디지털 티켓과 같은 애플리케이션 토큰을 발급 및 교환하는 데 있어서 보안을 향상시킨다. 안전한 키를 사용하여 데이터에 서명하고 검증한다. 이들 암호화 작업은, 상호작용 특정 데이터를 추가로 활용할 수 있다. 따라서, 시스템은, 애플리케이션을 사용하여 위치 또는 리소스에 액세스하려고 시도하는 사용자/장치가 애플리케이션 토큰이 발급된 사용자 또는 장치임을 보증할 수 있다.
추가적인 이점은 오프라인 검증 기능을 포함한다. 액세스 장치는, 백엔드 서버와 통신할 필요 없이 애플리케이션 토큰이 유효한지 암호학적으로 검증할 수 있다. 따라서, 애플리케이션 토큰은, 메시지가 원격 서버로 전송했다 수신했다 하는 경우보다 훨씬 빨리 검증될 수 있다. 애플리케이션 토큰은, 인터넷 연결 없이 추가로 검증될 수 있다. 속도와 휴대성이 키일 경우에, 이들 개선은 운송 설정에 특히 유용하다.
본원에 설명된 실체 또는 구성 요소 중 어느 하나를 구현하기 위해 사용될 수 있는 컴퓨터 시스템이 이제 설명될 것이다. 컴퓨터 시스템의 서브시스템들은 시스템 버스를 통해 상호 접속된다. 추가 서브시스템들은, 프린터, 키보드, 고정형 디스크, 및 디스플레이 어댑터에 결합될 수 있는 모니터를 포함한다. I/O 제어기에 결합될 수 있는 주변 장치와 입력/출력(I/O) 장치는, 직렬 포트와 같은 당업계에 공지된 임의의 수의 수단에 의해 컴퓨터 시스템에 접속될 수 있다. 예를 들어, 직렬 포트 또는 외부 인터페이스는 인터넷, 마우스 입력 장치, 또는 스캐너 등의 광대역 네트워크에 컴퓨터 장치를 접속하는데 사용될 수 있다. 시스템 버스를 통한 상호 접속은, 중앙 프로세서가 각 서브시스템과 통신하고 시스템 메모리 또는 고정형 디스크로부터의 명령어 실행뿐만 아니라, 서브시스템들 간의 정보 교환을 제어할 수 있게 한다. 시스템 메모리 및/또는 고정형 디스크는 컴퓨터 판독가능 매체를 구현할 수도 있다.
본원에서 설명하는 소프트웨어 구성요소 또는 기능 중 임의의 것은, 예를 들어, 종래의 또는 객체 지향 기술들을 이용하여 예를 들어 Java, C++ 또는 Perl 등의 임의의 적합한 컴퓨터 언어를 사용하여 프로세서에 의해 실행되는 소프트웨어 코드로서 구현될 수도 있다. 소프트웨어 코드는, 일련의 명령어, 또는 RAM, ROM, 하드 드라이브, 또는 CD-ROM과 같은 광학 매체 등의 컴퓨터 판독 가능 매체 상의 커맨드로서 저장될 수도 있다. 이러한 임의의 컴퓨터 판독가능 매체는, 단일 연산 장치 상에 또는 단일 연산 장치 내에 상주할 수도 있으며, 시스템 또는 네트워크 내에서 서로 다른 연산 장치 상에 또는 단일 연산 장치 내에 존재할 수도 있다.
전술한 설명은 예시적이고 제한적이 아니다. 본 개시의 검토 시, 본 발명의 많은 변형은 당업자에게 명백해질 것이다. 따라서, 본 발명의 범주는 전술한 설명을 참조하지 않고 판단되어야 하나, 그 대신 계류 중인 청구범위를 그의 전체 범주 또는 균등물과 함께 참조하여 판단되어야 한다.
본 명세서에서 설명되는 방법 및 프로세스는 사실상 예시적인 것이며, 일부 구현예에 따른 방법 및 프로세스는 본 명세서에서 설명되는 것과는 다른 순서로 단계들 중 하나 이상을 수행할 수도 있고, 특별히 설명되지 않은 하나 이상의 추가 단계를 포함할 수도 있고, 하나 이상의 단계를 생략할 수도 있고, 하나 이상의 단계를 단일의 단계에 조합할 수도 있고, 하나 이상의 단계를 다수의 단계로 나눌 수도 있고, 및/또는 이들의 임의의 조합을 포함할 수도 있다.
임의의 구현예에서 하나 이상의 특징은 본 발명의 범주로부터 벗어나지 않으면 임의의 다른 구현예의 하나 이상의 특징과 조합될 수 있다.
단수("일", "하나", "특정한 하나")의 인용은 특정하게 반대로 나타내지 않는다면 "하나 이상"을 의미하는 것으로 의도된다.
모든 특허, 특허출원, 간행물, 및 상기한 설명은 모든 목적을 위해 그 전체내용이 참조로 본 명세서에 포함된다. 어느 것도 종래 기술인 것으로 인정되지는 않는다.

Claims (35)

  1. 통신 장치 상의 복수의 서비스 제공자 애플리케이션들 중 제1 서비스 제공자 애플리케이션에 의해, 제1 서비스 제공자 컴퓨터로 제1 애플리케이션 토큰에 대한 제1 요청을 제공하는 단계;
    상기 통신 장치의 상기 제1 서비스 제공자 애플리케이션에 의해, 상기 제1 서비스 제공자 컴퓨터로부터 상기 제1 애플리케이션 토큰에 대응하는 암호화된 애플리케이션 토큰을 수신하는 단계;
    상기 통신 장치의 계정 관리 애플리케이션에 의해, 상기 통신 장치의 상기 제1 서비스 제공자 애플리케이션으로부터 상기 암호화된 애플리케이션 토큰을 수신하는 단계;
    상기 통신 장치의 상기 계정 관리 애플리케이션에 의해, 상기 제1 서비스 제공자 컴퓨터와 통신하는 토큰 서비스 컴퓨터로 상기 암호화된 애플리케이션 토큰을 구비한 토큰 프로비저닝 요청을 전송하는 단계;
    상기 통신 장치의 상기 계정 관리 애플리케이션에 의해, 상기 제1 서비스 제공자 컴퓨터와 통신하는 상기 토큰 서비스 컴퓨터로부터 토큰 용기를 구비한 상기 제1 애플리케이션 토큰을 수신하는 단계로서, 상기 토큰 용기는 상기 제1 애플리케이션 토큰과 연관된 토큰 상태 및 용기 식별자와 연관되고, 상기 용기 식별자 및 토큰 상태는 상기 토큰 서비스 컴퓨터에 의해 유지되며, 상기 토큰 상태는 새로 생성된 토큰, 교환된 토큰, 또는 가치가 부가된 토큰 중 적어도 하나를 포함하는 것인, 단계; 및
    상기 계정 관리 애플리케이션의 상기 토큰 용기에 상기 제1 애플리케이션 토큰을 저장하는 단계를 포함하는 방법.
  2. 삭제
  3. 삭제
  4. 삭제
  5. 제1항에 있어서, 상기 토큰 서비스 컴퓨터와 상기 제1 서비스 제공자 컴퓨터는 암호화 키 쌍의 개별 암호화 키를 갖는, 방법.
  6. 제5항에 있어서, 상기 암호화 키 쌍은 대칭 키 쌍인, 방법.
  7. 제1항에 있어서,
    상기 통신 장치 상의 제2 서비스 제공자 애플리케이션에 의해, 제2 서비스 제공자 컴퓨터로 제2 애플리케이션 토큰에 대한 제2 요청을 제공하는 단계;
    상기 통신 장치의 상기 계정 관리 애플리케이션에 의해, 상기 제2 서비스 제공자 컴퓨터와 통신하는 상기 토큰 서비스 컴퓨터로부터 상기 제2 애플리케이션 토큰을 수신하는 단계; 및
    상기 계정 관리 애플리케이션의 상기 토큰 용기에 상기 제2 애플리케이션 토큰을 저장하는 단계를 추가로 포함하는 방법.
  8. 프로세서;
    명령어들을 포함하는 비일시적 컴퓨터 판독가능 매체를 포함하며,
    상기 명령어들은 상기 프로세서에 의해 실행될 때 단계들을 수행하며,
    상기 단계들은 :
    통신 장치 상의 복수의 서비스 제공자 애플리케이션들 중 제1 서비스 제공자 애플리케이션에 의해, 제1 서비스 제공자 컴퓨터로 제1 애플리케이션 토큰에 대한 제1 요청을 제공하는 단계;
    상기 통신 장치의 상기 제1 서비스 제공자 애플리케이션에 의해, 상기 제1 서비스 제공자 컴퓨터로부터 상기 제1 애플리케이션 토큰에 대응하는 암호화된 애플리케이션 토큰을 수신하는 단계;
    상기 통신 장치의 계정 관리 애플리케이션에 의해, 상기 통신 장치의 상기 제1 서비스 제공자 애플리케이션으로부터 상기 암호화된 애플리케이션 토큰을 수신하는 단계;
    상기 통신 장치의 상기 계정 관리 애플리케이션에 의해, 상기 제1 서비스 제공자 컴퓨터와 통신하는 토큰 서비스 컴퓨터로부터 토큰 용기를 구비한 상기 제1 애플리케이션 토큰을 수신하는 단계로서, 상기 토큰 용기는 상기 제1 애플리케이션 토큰과 연관된 토큰 상태 및 용기 식별자와 연관되고, 상기 용기 식별자 및 토큰 상태는 상기 토큰 서비스 컴퓨터에 의해 유지되며, 상기 토큰 상태는 새로 생성된 토큰, 교환된 토큰, 또는 가치가 부가된 토큰 중 적어도 하나를 포함하는 것인, 단계; 및
    상기 계정 관리 애플리케이션의 상기 토큰 용기에 상기 제1 애플리케이션 토큰을 저장하는 단계를 포함하는, 통신 장치.
  9. 삭제
  10. 삭제
  11. 삭제
  12. 제8항에 있어서, 상기 토큰 서비스 컴퓨터와 상기 제1 서비스 제공자 컴퓨터는 암호화 키 쌍의 개별 암호화 키를 갖는, 통신 장치.
  13. 제12항에 있어서, 상기 암호화 키 쌍은 대칭 키 쌍인, 통신 장치.
  14. 제8항에 있어서,
    상기 단계들은 :
    상기 통신 장치 상의 제2 서비스 제공자 애플리케이션에 의해, 제2 서비스 제공자 컴퓨터로 제2 애플리케이션 토큰에 대한 제2 요청을 제공하는 단계;
    상기 통신 장치의 상기 계정 관리 애플리케이션에 의해, 상기 제2 서비스 제공자 컴퓨터와 통신하는 상기 토큰 서비스 컴퓨터로부터 상기 제2 애플리케이션 토큰을 수신하는 단계; 및
    상기 계정 관리 애플리케이션의 상기 토큰 용기에 상기 제2 애플리케이션 토큰을 저장하는 단계를 추가로 포함하는, 통신 장치.
  15. 서비스 제공자 컴퓨터에 의해, 통신 장치의 서비스 제공자 애플리케이션으로부터 애플리케이션 토큰에 대한 요청을 수신하는 단계; 및
    상기 서비스 제공자 컴퓨터에 의해, 상기 통신 장치에 있는 계정 관리 애플리케이션의 토큰 용기로 상기 애플리케이션 토큰을 프로비저닝하기 위해, 토큰 서비스 컴퓨터로 프로비저닝 요청을 전송하는 단계를 포함하고,
    상기 프로비저닝 요청을 전송하는 단계는:
    상기 서비스 제공자 컴퓨터에 의해, 상기 서비스 제공자 애플리케이션으로 암호화된 애플리케이션 토큰을 전송하는 단계; 및
    상기 서비스 제공자 애플리케이션에 의해, 상기 토큰 서비스 컴퓨터로 상기 프로비저닝 요청 및 상기 암호화된 애플리케이션 토큰을 전송하는 단계로서, 상기 암호화된 애플리케이션 토큰은 상기 애플리케이션 토큰에 대응하고, 상기 토큰 용기는 상기 암호화된 애플리케이션 토큰과 연관된 토큰 상태 및 용기 식별자와 연관되고, 상기 용기 식별자 및 토큰 상태는 상기 토큰 서비스 컴퓨터에 의해 유지되고, 상기 토큰 상태는 새로 생성된 토큰, 교환된 토큰, 또는 가치가 부가된 토큰 중 적어도 하나를 포함하는, 단계를 포함하는, 방법.
  16. 삭제
  17. 삭제
  18. 제15항에 있어서, 상기 토큰 용기는, 상기 애플리케이션 토큰과 함께 상기 계정 관리 애플리케이션에 전송되는, 방법.
  19. 제15항에 있어서, 상기 서비스 제공자 컴퓨터는 상기 프로비저닝 요청을 상기 토큰 서비스 컴퓨터에 직접 전송하는, 방법.
  20. 제15항 또는 제19항에 있어서, 상기 토큰 용기는 상기 애플리케이션 토큰의 수신 이전에 상기 계정 관리 애플리케이션에 저장되는, 방법.
  21. 메모리;
    프로세서;
    명령어들을 포함하는 비일시적 컴퓨터 판독가능 매체를 포함하며,
    상기 명령어들은 상기 프로세서에 의해 실행될 때 단계들을 수행하며,
    상기 단계들은 :
    통신 장치의 서비스 제공자 애플리케이션으로부터 애플리케이션 토큰에 대한 요청을 수신하는 단계; 및
    상기 통신 장치의 계정 관리 애플리케이션의 토큰 용기에 상기 애플리케이션 토큰을 프로비저닝하기 위해, 토큰 서비스 컴퓨터로 프로비저닝 요청을 전송하는 단계를 포함하고,
    상기 프로비저닝 요청을 전송하는 단계는,
    상기 서비스 제공자 컴퓨터에 의해, 상기 서비스 제공자 애플리케이션으로 암호화된 애플리케이션 토큰을 전송하는 단계; 및
    상기 서비스 제공자 애플리케이션에 의해, 상기 토큰 서비스 컴퓨터로 상기 프로비저닝 요청 및 상기 암호화된 애플리케이션 토큰을 전송하는 단계로서, 상기 암호화된 애플리케이션 토큰은 상기 애플리케이션 토큰에 대응하고, 상기 토큰 용기는 상기 암호화된 애플리케이션 토큰과 연관된 토큰 상태 및 용기 식별자와 연관되고, 상기 용기 식별자 및 토큰 상태는 상기 토큰 서비스 컴퓨터에 의해 유지되고, 상기 토큰 상태는 새로 생성된 토큰, 교환된 토큰, 또는 가치가 부가된 토큰 중 적어도 하나를 포함하는, 단계를 포함하는, 서비스 제공자 컴퓨터.
  22. 삭제
  23. 삭제
  24. 제21항에 있어서, 상기 서비스 제공자 컴퓨터는 상기 프로비저닝 요청을 상기 토큰 서비스 컴퓨터에 직접 전송하는, 서비스 제공자 컴퓨터.
  25. 제21항 또는 제24항에 있어서, 상기 토큰 용기는 상기 애플리케이션 토큰의 수신 전에 상기 계정 관리 애플리케이션에 저장되는, 서비스 제공자 컴퓨터.
  26. 토큰 서비스 컴퓨터에서, 통신 장치의 계정 관리 애플리케이션의 토큰 용기로 애플리케이션 토큰을 프로비저닝하기 위한 프로비저닝 요청을 수신하는 단계로서, 상기 통신 장치는 또한 서비스 제공자 컴퓨터에 연관된 서비스 제공자 애플리케이션을 포함하는, 단계;
    상기 프로비저닝 요청을 해독하는 단계;
    상기 애플리케이션 토큰을 생성하는 단계; 및
    상기 토큰 서비스 컴퓨터로부터 상기 통신 장치의 상기 계정 관리 애플리케이션으로, 상기 통신 장치의 상기 계정 관리 애플리케이션의 토큰 용기로의 애플리케이션 토큰을 전송하는 단계로서, 상기 토큰 용기는 상기 애플리케이션 토큰과 연관된 토큰 상태 및 용기 식별자와 연관되고, 상기 용기 식별자 및 토큰 상태는 상기 토큰 서비스 컴퓨터에 의해 유지되고, 상기 토큰 상태는 새로 생성된 토큰, 교환된 토큰, 또는 가치가 부가된 토큰 중 적어도 하나를 포함하는, 단계를 포함하는, 방법.
  27. 제26항에 있어서, 상기 토큰 서비스 컴퓨터는, 상기 애플리케이션 토큰을 구비한 상기 토큰 용기를 전송하는, 방법.
  28. 삭제
  29. 제26항에 있어서, 상기 토큰 서비스 컴퓨터는, 상기 프로비저닝 요청을 수신하기 전에 상기 토큰 용기를 전송하는, 방법.
  30. 제26항 또는 제29항에 있어서, 상기 토큰 서비스 컴퓨터는 상기 서비스 제공자 컴퓨터로부터 상기 프로비저닝 요청을 수신하는, 방법.
  31. 토큰 서비스 컴퓨터로서,
    메모리;
    프로세서;
    명령어들을 포함하는 비일시적 컴퓨터 판독가능 매체를 포함하며,
    상기 명령어들은 상기 프로세서에 의해 실행될 때 단계들을 수행하며,
    상기 단계들은 :
    통신 장치의 계정 관리 애플리케이션의 토큰 용기로 애플리케이션 토큰을 프로비저닝하기 위한 프로비저닝 요청을 암호화된 형태로 수신하는 단계로서, 상기 통신 장치는 또한 서비스 제공자 컴퓨터에 연관된 서비스 제공자 애플리케이션을 포함하는, 단계;
    상기 프로비저닝 요청을 해독하는 단계;
    상기 애플리케이션 토큰을 생성하는 단계; 및
    상기 통신 장치의 상기 계정 관리 애플리케이션으로, 상기 통신 장치의 상기 계정 관리 애플리케이션의 토큰 용기로의 애플리케이션 토큰을 전송하는 단계로서, 상기 토큰 용기는 상기 애플리케이션 토큰과 연관된 토큰 상태 및 용기 식별자와 연관되고, 상기 용기 식별자 및 토큰 상태는 상기 토큰 서비스 컴퓨터에 의해 유지되고, 상기 토큰 상태는 새로 생성된 토큰, 교환된 토큰, 또는 가치가 부가된 토큰 중 적어도 하나를 포함하는, 단계를 포함하는, 토큰 서비스 컴퓨터.
  32. 제31항에 있어서, 상기 토큰 용기는, 상기 애플리케이션 토큰과 함께 상기 계정 관리 애플리케이션에 전송되는, 토큰 서비스 컴퓨터.
  33. 삭제
  34. 제31항에 있어서, 토큰 서비스 컴퓨터가, 상기 프로비저닝 요청을 수신하기 전에 상기 토큰 용기를 전송하는, 토큰 서비스 컴퓨터.
  35. 제31항 또는 제34항에 있어서, 토큰 서비스 컴퓨터가 상기 서비스 제공자 컴퓨터로부터 상기 프로비저닝 요청을 수신하는, 토큰 서비스 컴퓨터.
KR1020217003023A 2018-07-03 2019-07-03 토큰 상태 동기화 KR102655287B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201862693631P 2018-07-03 2018-07-03
US62/693,631 2018-07-03
PCT/US2019/040506 WO2020010203A1 (en) 2018-07-03 2019-07-03 Token state synchronization

Publications (2)

Publication Number Publication Date
KR20210018505A KR20210018505A (ko) 2021-02-17
KR102655287B1 true KR102655287B1 (ko) 2024-04-05

Family

ID=69060044

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020217003023A KR102655287B1 (ko) 2018-07-03 2019-07-03 토큰 상태 동기화

Country Status (9)

Country Link
US (3) US10984117B2 (ko)
EP (1) EP3818485A4 (ko)
JP (1) JP7499706B2 (ko)
KR (1) KR102655287B1 (ko)
CN (1) CN112368729B (ko)
CA (1) CA3105345A1 (ko)
MX (1) MX2021000057A (ko)
SG (1) SG11202013150VA (ko)
WO (1) WO2020010203A1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200311246A1 (en) * 2019-03-27 2020-10-01 Visa International Service Association Enhanced consumer device validation
US11743254B2 (en) * 2019-08-12 2023-08-29 Lenovo (Singapore) Pte. Ltd. Device authentication across unsecure network
US11641345B2 (en) * 2019-08-19 2023-05-02 Hall Labs Llc Discovery for token secured routing
US20220156393A1 (en) * 2020-11-19 2022-05-19 Tetrate.io Repeatable NGAC Policy Class Structure
US11641280B1 (en) 2022-06-21 2023-05-02 Northern Trust Corporation Computing technologies for enabling blockchain-based digital tokens with asset-specific attributes
CN117318947A (zh) * 2022-06-21 2023-12-29 中国移动通信有限公司研究院 报文校验方法、装置、相关设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160092696A1 (en) * 2014-09-26 2016-03-31 Abhishek Guglani Remote Server Encrypted Data Provisioning System and Methods
US20170373852A1 (en) * 2016-06-24 2017-12-28 Michael CASSIN Unique token authentication cryptogram

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2378780B (en) * 2001-08-14 2003-07-09 Elan Digital Systems Ltd Data integrity
JP2005025389A (ja) 2003-06-30 2005-01-27 Ricoh Co Ltd コンテンツ提供支援方法、コンテンツ提供支援プログラム及び管理コンピュータ
US20060235795A1 (en) * 2005-04-19 2006-10-19 Microsoft Corporation Secure network commercial transactions
JP4826449B2 (ja) 2006-11-28 2011-11-30 富士ゼロックス株式会社 情報処理システム、電子許可情報発行装置、権利発行装置
CN103765454B (zh) 2011-06-07 2018-02-27 维萨国际服务协会 支付隐私令牌化装置、方法和系统
CN109919586B (zh) 2011-10-12 2023-05-02 万事达移动交易方案公司 多层安全移动交易使能平台
US8555079B2 (en) * 2011-12-06 2013-10-08 Wwpass Corporation Token management
US9177169B2 (en) * 2012-02-13 2015-11-03 Wwpass Corporation Secure digital storage
WO2014007516A1 (ko) * 2012-07-02 2014-01-09 에스케이플래닛 주식회사 단일 인증 서비스 시스템 및 이의 운용 방법
GB2513602A (en) * 2013-05-01 2014-11-05 Barclays Bank Plc Authentication system for purchase delivery
JP6386567B2 (ja) 2013-10-11 2018-09-05 ビザ インターナショナル サービス アソシエーション ネットワーク・トークン・システム
US9942043B2 (en) * 2014-04-23 2018-04-10 Visa International Service Association Token security on a communication device
US10959093B2 (en) 2014-05-08 2021-03-23 Visa International Service Association Method and system for provisioning access data to mobile device
US11533297B2 (en) * 2014-10-24 2022-12-20 Netflix, Inc. Secure communication channel with token renewal mechanism
EP3917079A1 (en) 2016-02-12 2021-12-01 Visa International Service Association Authentication systems and methods using timestamp comparison
US10313321B2 (en) * 2016-04-07 2019-06-04 Visa International Service Association Tokenization of co-network accounts
CN105959267B (zh) * 2016-04-25 2019-03-01 北京九州云腾科技有限公司 单点登录技术中的主令牌获取方法、单点登录方法及系统
US10055578B1 (en) * 2016-05-17 2018-08-21 Sprint Communications Company L.P. Secure software containers
US10348718B2 (en) * 2016-09-14 2019-07-09 Oracle International Corporation Sharing credentials and other secret data in collaborative environment in a secure manner
CN110036386B (zh) * 2016-11-28 2023-08-22 维萨国际服务协会 供应到应用程序的访问标识符

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160092696A1 (en) * 2014-09-26 2016-03-31 Abhishek Guglani Remote Server Encrypted Data Provisioning System and Methods
US20170373852A1 (en) * 2016-06-24 2017-12-28 Michael CASSIN Unique token authentication cryptogram

Also Published As

Publication number Publication date
EP3818485A1 (en) 2021-05-12
WO2020010203A1 (en) 2020-01-09
JP7499706B2 (ja) 2024-06-14
CA3105345A1 (en) 2020-01-09
JP2021530053A (ja) 2021-11-04
US20200012798A1 (en) 2020-01-09
US11847233B2 (en) 2023-12-19
KR20210018505A (ko) 2021-02-17
MX2021000057A (es) 2021-03-25
CN112368729B (zh) 2024-06-04
US20240078325A1 (en) 2024-03-07
US20210192060A1 (en) 2021-06-24
EP3818485A4 (en) 2021-08-18
SG11202013150VA (en) 2021-01-28
CN112368729A (zh) 2021-02-12
US10984117B2 (en) 2021-04-20

Similar Documents

Publication Publication Date Title
KR102655287B1 (ko) 토큰 상태 동기화
US11995633B2 (en) Security system incorporating mobile device
US10460397B2 (en) Transaction-history driven counterfeit fraud risk management solution
RU2642821C2 (ru) Способ и система для защищенной передачи сообщений сервиса удаленных уведомлений в мобильные устройства без защищенных элементов
US20180121918A1 (en) Method and system for net settlement by use of cryptographic promissory notes issued on a blockchain
AU2013225742B2 (en) Systems and methods for mapping a mobile cloud account to a payment account
CN115907760A (zh) 用于具有完全密码可审核性的交易处理的方法和系统
RU2741321C2 (ru) Криптографическая аутентификация и токенизированные транзакции
US20150012434A1 (en) Online authentication in access transactions
US20170250810A1 (en) Dynamic multiple-application systematic framework for integrated circuit card and information processing methods based on the framework
US20230281289A1 (en) Credential management for mobile devices
WO2017184840A1 (en) Method and system for contactless transactions without user credentials
US20130103523A1 (en) Transaction storage scheme for offline payment system
EP4191942A1 (en) Token processing system and method
KR102659649B1 (ko) 이질적인 데이터 메시지용 민감한 데이터를 안전하게 통신하기 위한 기법
US11748738B2 (en) Portable device loading mechanism for account access
RU2792695C2 (ru) Синхронизация состояния маркера
US20230153800A1 (en) Token processing for access interactions
US20230336349A1 (en) Comprehensive storage application provisioning using a provisioning software development kit (sdk)
US20230325820A1 (en) System and method for tokenization

Legal Events

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