Movatterモバイル変換


[0]ホーム

URL:


KR20160135799A - Secure offline payment system - Google Patents

Secure offline payment system
Download PDF

Info

Publication number
KR20160135799A
KR20160135799AKR1020167029240AKR20167029240AKR20160135799AKR 20160135799 AKR20160135799 AKR 20160135799AKR 1020167029240 AKR1020167029240 AKR 1020167029240AKR 20167029240 AKR20167029240 AKR 20167029240AKR 20160135799 AKR20160135799 AKR 20160135799A
Authority
KR
South Korea
Prior art keywords
communication device
mobile communication
user
management system
funds
Prior art date
Legal status (The legal status 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 status listed.)
Withdrawn
Application number
KR1020167029240A
Other languages
Korean (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
Priority claimed from US14/226,785external-prioritypatent/US20150278795A1/en
Priority claimed from US14/226,798external-prioritypatent/US20150278796A1/en
Application filed by 구글 인코포레이티드filedCritical구글 인코포레이티드
Publication of KR20160135799ApublicationCriticalpatent/KR20160135799A/en
Withdrawnlegal-statusCriticalCurrent

Links

Images

Classifications

Landscapes

Abstract

Translated fromKorean

보안 오프라인 지불들을 제공하는 방법은 서명된 잔액 증명서를 사용자 디바이스에 전달하는 계정 시스템을 포함한다. 상기 시스템은 사용자의 계정에 액세스하고, 이용가능한 언록킹 펀드들을 결정하고, 잔액 증명서를 생성하고 잔액 증명서에 서명하고, 그리고 서명된 잔액 증명서를 사용자 디바이스에 전송한다. 오프라인 지불 거래를 완료하기 위해 사용자 디바이스 및 머천트 디바이스는 통신 채널을 확립한다. 머천트 디바이스는 지불 요청을 사용자 디바이스에 전송한다. 서명된 인출 레코드 및 서명된 잔액 증명서는 검증 및 오프라인 지불 거래의 완료를 위해 머천트 디바이스로 전송된다. 머천트 디바이스는 인출 레코드를 서명하고, 서명된 인출 레코드를 사용자 디바이스에 전송하고, 그리고 머천트 디바이스가 네트워크 액세스를 가지고 이를 시스템에 전송할 수 있을 때까지 이를 저장한다. 시스템은 인출 레코드를 검증하고 상기 인출 레코드를 사용자의 계정에 기록한다.A method for providing secure offline payments includes an accounting system for delivering a signed balance certificate to a user device. The system accesses the user's account, determines the unlocking funds available, generates a balance certificate, signs the balance certificate, and sends the signed balance certificate to the user device. To complete the offline payment transaction, the user device and the merchant device establish a communication channel. The merchant device sends the payment request to the user device. The signed withdrawal record and the signed balance certificate are sent to the merchant device for verification and completion of the offline payment transaction. The merchant device signs the fetch record, sends the signed fetch record to the user device, and stores it until the merchant device has network access and can transmit it to the system. The system verifies the withdrawal record and records the withdrawal record in the user's account.

Figure P1020167029240
Figure P1020167029240

Description

Translated fromKorean
보안 오프라인 지불 시스템{SECURE OFFLINE PAYMENT SYSTEM}SECURE OFFLINE PAYMENT SYSTEM [0002]

[관련 출원][Related Application]

본 출원은 2014년 3월 26일자로 출원된 발명의 명칭이 "보안 오프라인 지불 시스템"인 미국 출원 제14/226,785호와 2014년 3월 26일자로 출원된 발명의 명칭이 "보안 오프라인 지불 시스템에서 동시 발생하는 지불들에 대해 계정 잔액을 준비"인 미국 출원 제14/226,798호의 우선권을 주장한다. 상기 출원들의 전체 내용은 본 명세서에 참조로서 포함된다.This application claims priority from U.S. Serial No. 14 / 226,785, entitled " Secure Off-Line Payment System, " filed March 26, 2014, entitled "Secure Offline Payments System, " filed March 26, Claim 14 / 226,798, entitled " PREPARE AN ACCOUNT BALANCE FOR SIMULTANEOUS PAYMENTS ". The entire contents of which are incorporated herein by reference.

[기술 분야][TECHNICAL FIELD]

본 발명은 일반적으로 지불 시스템에 관한 것으로, 더 구체적으로는 사용자들로 하여금 네트워크 액세스(access) 없이 지불 거래들을 수행하도록 하는 방법들 및 시스템들에 관한 것이다.FIELD OF THE INVENTION The present invention relates generally to payment systems and, more particularly, to methods and systems for enabling users to perform payment transactions without network access.

근접 통신 기술은 1미터 이하의 제한된 범위를 가지며, 머천트 디바이스 지불 기술들을 인에이블(enable)할 수 있다. 짧은 통신 거리는 근접 통신으로 인에이블 되는 디바이스들 사이에서 커스터머(customer)의 식별 및 보안 통신을 인에이블 한다. 이러한 근접 통신 기술들은 근거리 무선 통신(NFC), 무선 인식(RFID) 또는 저전력 블루투스(BLE)를 포함한다. NFC 거래의 동작에서, 사용자는 NFC-인에이블 모바일 폰 또는 NFC-인에이블 스마트 카드와 같은 디바이스를 리더기(reader)에 탭(tap)한다. 리더기는 디바이스가 리더기의 범위 내로 이동된 때 NFC-인에이블 디바이스를 인식하고, 상기 디바이스와의 보안 통신 채널을 확립하고, 그리고 리더기와 디바이스 사이의 지불 거래를 개시한다. BLE 거래의 동작에서, 사용자는 BLE-인에이블 모바일 폰과 같은 디바이스를 다른 BLE-인에이블 모바일 폰과 같은 다른 BLE-인에이블 디바이스의 바로 옆에 가져온다. BLE 디바이스들은 그들이 서로 근처에 있음을 검출하고, 지불 거래를 개시하기 위해 보안 통신 채널을 확립할 수 있다.The proximity communication technology has a limited range of less than one meter and may enable merchant device payment techniques. A short communication distance enables identification of the customer and secure communication between devices enabled by proximity communication. Such proximity communication technologies include Near Field Communication (NFC), Radio Frequency Identification (RFID), or Low Power Bluetooth (BLE). In the operation of an NFC transaction, a user taps a device such as an NFC-enabled mobile phone or an NFC-enabled smart card to a reader. The reader recognizes the NFC-enabled device when the device is moved into the range of the reader, establishes a secure communication channel with the device, and initiates a payment transaction between the reader and the device. In the operation of a BLE transaction, the user brings a device such as a BLE-enabled mobile phone right next to another BLE-enabled device, such as another BLE-enabled mobile phone. BLE devices can establish a secure communication channel to detect that they are close to each other and initiate a payment transaction.

모바일 통신 디바이스들은 데이터 또는 정보의 교환을 수반하는 거래, 예를 들면, 금융 거래들에서 활용될 수 있다. 전통적으로, 금융 거래에서 사용되는 모바일 통신 디바이스는 금융 계정으로 링크되거나 금융 계정 정보를 포함한다. 결과적으로, 모바일 통신 디바이스가 사용되는 경우, 리더기는 온라인 거래를 프로세스 하기 위해 네트워크 액세스를 요구하며, 금융 계정 정보를 수신하고 금융 계정으로부터 차변 거래(debit transaction)를 수행한다. 이러한 종래의 모바일 통신 디바이스에 의해 인에이블 되는 금융 거래들은 네트워크 또는 네트워크 상의 특정 컴퓨터들에 액세스가 이용가능하지 않는 경우, 동작할 수 없다.Mobile communication devices may be utilized in transactions involving the exchange of data or information, for example financial transactions. Traditionally, mobile communication devices used in financial transactions are linked to financial accounts or include financial account information. As a result, when a mobile communication device is used, the reader requests network access to process the online transaction, receives the financial account information and performs a debit transaction from the financial account. Financial transactions enabled by these conventional mobile communication devices can not operate if access to certain computers on the network or network is not available.

본 명세서에 기술된 특정 예시적인 양태들에서, 보안 오프라인 지불들을 제공하는 방법은 펀드들의 디포짓(deposit)을 계정 관리 시스템에 의해 유지되는 사용자 계정에 요청하거나 그리고/또는 최근 잔액 증명서(up-to-date balance certificate)를 요청하는 사용자 디바이스를 포함한다. 상기 요청은 이중 사용(double spending)을 방지하고자 사용자의 계정 내 특정 펀드들을 록킹(locking)하기 위한 요청을 포함할 수 있다. 또한, 상기 사용자 디바이스 요청은 펀드들이 록킹되는 지속시간(duration) 그리고/또는 특정 펀드들이 오직 특정 위치에서 이용가능한 요청을 포함할 수 있다. 상기 록킹은 이후 언록킹(unlocking) 된 펀드들이 사용되는 때, 잔액 증명서가 만료한 때, 그리고/또는 사용자가 록킹 해제를 요청한 때, 해제된다. 계정 관리 시스템은 사용자의 계정 관리 시스템 계정에 액세스하고, 이용가능한 언록킹 펀드들을 결정하고, 잔액 증명서를 생성 및 이에 서명하고, 그리고 서명된 잔액 증명서를 사용자 디바이스에 전송한다.In certain exemplary aspects described herein, a method of providing secure off-line payments includes requesting a deposit of funds to a user account maintained by an account management system and / or requesting a recent up-to- -date balance certificate. < / RTI > The request may include a request to lock certain funds in the user's account to prevent double spending. In addition, the user device request may include a duration that the funds are locked and / or a request that certain funds may only make available at a particular location. The locking is then released when unlocked funds are used, when the balance certificate expires, and / or when the user requests unlocking. The account management system accesses the user's account management system account, determines the unlocking funds available, generates and signs the balance certificate, and sends the signed balance certificate to the user device.

오프라인 지불 거래를 완료하기 위해, 사용자 디바이스 및 머천트 디바이스는 통신 채널을 확립한다. 머천트 디바이스는 지불 요청을 사용자 디바이스에 전송하고, 사용자 디바이스는 지불 금액에 대해 서명된 인출 레코드(signed withdrawal record)를 생성한다. 서명된 인출 레코드 및 서명된 잔액 증명서는 머천트 디바이스로 전송되고, 상기 머천트 디바이스는 사용자 디바이스의 신원을 확인하기 위해 서명된 인출 레코드를 검증하고 오프라인 지불 거래를 완료하고자 펀드들의 이용가능성을 확인하기 위해 서명된 잔액을 검증한다. 머천트 디바이스는 인출 레코드에 서명하고, 서명된 인출 레코드를 사용자 디바이스로 전송하고, 그리고 머천트 디바이스가 네트워크 액세스를 가질 때까지 이를 저장한다. 머천트 디바이스가 네트워크 액세스를 가진 경우, 머천트 디바이스는 서명된 인출 레코드를 계정 관리 시스템에 전송한다. 계정 관리 시스템은 인출 레코드를 검증하고 사용자의 계정 관리 시스템 계정에 상기 인출 레코드를 기록한다. 사용자 디바이스가 새로운 잔액 증명서를 요청한 경우, 사용자 디바이스는 서명된 인출 레코드를 계정 관리 시스템에 전송하고, 그리고 계정 관리 시스템은 상기 계정 잔액을 검증하고 새로운 잔액 증명서를 생성한다.To complete the offline payment transaction, the user device and the merchant device establish a communication channel. The merchant device sends a payment request to the user device, and the user device generates a signed withdrawal record for the payment amount. A signed withdrawal record and a signed balance certificate are sent to the merchant device and the merchant device verifies the signed withdrawal record to verify the identity of the user device and a signature to verify the availability of the funds to complete the off- Verified balance. The merchant device signs the withdrawal record, sends the signed withdrawal record to the user device, and stores it until the merchant device has network access. If the merchant device has network access, the merchant device sends the signed withdrawal record to the account management system. The account management system verifies the withdrawal record and records the withdrawal record in the user's account management system account. When the user device requests a new balance certificate, the user device sends a signed withdrawal record to the account management system, and the account management system verifies the account balance and generates a new balance certificate.

본 명세서에 기술된 특정 다른 예시적인 양태들에서, 보안 오프라인 지불들을 제공하는 컴퓨터 프로그램 물 및 시스템이 제공된다.In certain other exemplary aspects described herein, a computer program product and system for providing secure off-line payments are provided.

예시적인 실시예들의 이들 및 다른 양태들, 목적들, 구성들 및 이점들은 도시된 예시적인 실시예들의 다음의 상세한 설명의 고려하에서 통상의 기술자에게 분명해질 것이다.These and other aspects, objects, configurations, and advantages of the exemplary embodiments will become apparent to those of ordinary skill in the art in view of the following detailed description of the illustrated exemplary embodiments.

도 1은 특정 예시적인 실시예들에 따른, 오프라인 지불 시스템을 도시하는 블록 다이어그램이다.
도 2는 특정 예시적인 실시예들에 따른, 오프라인 지불 거래를 프로세싱 하는 방법을 도시하는 블록 흐름도이다.
도 3은 특정 예시적인 실시예들에 따른, 계정 관리 시스템으로부터 최근 잔액 증명서를 수신하는 방법을 도시하는 블록 흐름도이다.
도 4는 특정 예시적인 실시예들에 따른, 서명된 잔액 증명서를 사용자 디바이스에 제공하는 방법을 도시하는 블록 흐름도이다.
도 5는 특정 예시적인 실시예들에 따른, 사용자 계정 내 이용가능한 펀드들의 잔액을 계산하는 방법을 도시하는 블록 흐름도이다.
도 6은 특정 예시적인 실시예들에 따른, 머천트 디바이스로부터 수신된 지불 요청을 프로세싱 하는 방법을 도시하는 블록 흐름도이다.
도 7은 특정 예시적인 실시예들에 따른, 지불 요청에 대한 사용자 디바이스 응답을 검증하는 방법을 도시하는 블록 흐름도이다.
도 8은 특정 예시적인 실시예들에 따른, 인출 레코드를 검증하는 방법을 도시하는 블록 흐름도이다.
도 9는 특정 예시적인 실시예들에 따른, 컴퓨터 머신 및 모듈을 도시하는 블록 다이어그램이다.
1 is a block diagram illustrating an off-line payment system, in accordance with certain exemplary embodiments.
2 is a block flow diagram illustrating a method for processing an off-line payment transaction, in accordance with certain illustrative embodiments.
3 is a block flow diagram illustrating a method for receiving a recent balance certificate from an account management system, in accordance with certain exemplary embodiments.
4 is a block flow diagram illustrating a method for providing a signed balance certificate to a user device, in accordance with certain illustrative embodiments.
5 is a block flow diagram illustrating a method for calculating the balance of available funds within a user account, in accordance with certain illustrative embodiments.
6 is a block flow diagram illustrating a method for processing a payment request received from a merchant device, in accordance with certain exemplary embodiments.
7 is a block flow diagram illustrating a method for verifying a user device response to a payment request, in accordance with certain illustrative embodiments.
8 is a block flow diagram illustrating a method for verifying a fetch record, in accordance with certain illustrative embodiments.
9 is a block diagram illustrating a computer machine and a module, in accordance with certain illustrative embodiments.

개요summary

본 명세서에 기술된 예시적인 실시예들은 오프라인 지불을 보안적으로 프로세싱 하는 컴퓨터로 구현되는 기법들을 제공한다. 예시적인 실시예에서, 사용자는 오프라인 지불 거래를 수행하기 위한 요청을 계정 관리 시스템에 전달하기 위해 어플리케이션을 인에이블 하고, 사용자 디바이스를 허가한다. 예시적인 실시예에서, 사용자 디바이스는 계정 관리 시스템과의 통신 채널을 확립하고 펀드들을 계정 관리 시스템에 의해 유지되는 사용자 계정에 디포짓 하기 위한 요청 및/또는 최근 잔액 증명서를 요청한다. 계정 관리 시스템은 사용자의 계정 관리 시스템 계정에 액세스 하고, 잔액 증명서를 생성한다. 예시적인 실시예에서, 잔액 증명서는 시간에 제한되거나(예를 들면, 상기 잔액 증명서는 미리 정의된 시간이 경과한 후 만료한다), 상기 잔액 증명서가 사용될 수 있는 지불 거래들의 수에 제한되거나(예를 들면, 상기 잔액 증명서는 오프라인 제불 거래에서 사용되고 난 후 만료한다), 하나의 오프라인 지불 거래를 위해 이용가능한 펀드들의 금액에 의해 제한되거나(예를 들면, 상기 잔액 증명서는 X 달러 아래의 오프라인 지불 거래를 위해 사용될 수 있다), 그리고/또는 위치에 의해 제한된다(예를 들면, 상기 잔액 증명서는 오직 레스토랑에서의 또는 오직 위치 Z에서의 오프라인 지불 거래를 위해 사용될 수 있다). 계정 관리 시스템은 잔액 증명서 개인 키를 통해 잔액 증명서에 서명하고, 상기 잔액 증명서를 사용자 디바이스에 전송한다.The exemplary embodiments described herein provide computer implemented techniques for securely processing off-line payments. In an exemplary embodiment, the user enables the application to authorize the user device to deliver a request to the account management system to perform an offline payment transaction. In an exemplary embodiment, the user device establishes a communication channel with the account management system and requests a request for a deposit and / or a recent balance certificate to deposit the funds in a user account maintained by the account management system. The account management system accesses the user's account management system account and generates a balance certificate. In an exemplary embodiment, the balance certificate may be time limited (e.g., the balance certificate expires after a predefined time period has elapsed), the balance certificate may be limited to the number of payment transactions that can be used (For example, the balance certificate is expired after being used in an offline debiting transaction), limited by the amount of funds available for one off-line payment transaction (E.g., the balance certificate may only be used for an offline payment transaction at a restaurant or only at location Z). The account management system signs the balance certificate via the balance certificate private key and transmits the balance certificate to the user device.

예시적인 실시예에서, 사용자의 계정 관리 시스템 계정에서 오직 선택된 펀드들의 부분만이 각 오프라인 지불 거래를 위해 이용가능하고, 남아 있는 펀드들은 이중 사용을 방지하고자 록킹된다. 예시적인 실시예에서, 사용자는 록킹 펀드들의 금액 및 지속시간을 결정한다. 예를 들면, 사용자는 잔액 증명서에 대한 요청에서 특정 펀드들을 록킹 하기 위한 요청을 제출한다. 다른 예시적인 실시예에서, 계정 관리 시스템은 록킹 펀드들의 금액 및 지속시간을 결정한다. 또 다른 예시에서, 계정 관리 시스템 및 사용자는 록킹 펀드들의 금액 및 지속시간을 결정한다. 예시적인 실시예에서, 사용자는 특정 펀드들이 오직 특정 위치에서 이용가능할 것을 요청한다(예를 들면, 사용자는 오직 대량 수송 수단(mass transit)을 위해, 레스토랑들에서, 또는 도시 X에서 펀드들을 사용하기 원한다). 예시적인 실시예에서, 요청된 록킹은 언록킹 펀드들이 사용된 경우, 잔액 증명서가 만료한 경우, 그리고/또는 사용자가 록킹이 해제되는 것을 요청한 경우 해제된다.In the exemplary embodiment, only a portion of the selected funds in the user's account management system account is available for each offline payment transaction, and the remaining funds are locked to avoid double use. In an exemplary embodiment, the user determines the amount and duration of the locking funds. For example, the user submits a request to lock certain funds in a request for a balance certificate. In another exemplary embodiment, the account management system determines the amount and duration of the locking funds. In another example, the account management system and the user determine the amount and duration of the locking funds. In an exemplary embodiment, the user requests that certain funds be available only at a particular location (e.g., the user may only use funds for mass transit, at restaurants, want). In an exemplary embodiment, the requested locking is released when unlocking funds are used, when the balance certificate has expired, and / or when the user has requested that the locking be released.

사용자는 머천트 또는 다른 거래 상대방과의 오프라인 지불 거래를 완료하고자 하는 소망(desire)을 나타낸다. 예시적인 실시예에서, 사용자는 머천트 디바이스의 미리 정의된 반경 내의 사용자 디바이스를 "탭"하고, 상기 디바이스들은 통신 채널을 확립한다. 예를 들면, 상기 디바이스들은 근거리 무선 통신(NFC), 블루투스, 또는 단거리 통신 채널을 통해 통신한다. 머천트 디바이스는 지불 요청을 사용자 디바이스에 전송하고, 사용자 디바이스는 머천트 디바이스로부터 수신된 지불 요청 상에 표시된 금액에 대한 인출 레코드를 생성한다. 예시적인 실시예에서, 사용자 디바이스는 계정 인증서 개인 키를 통해 인출 레코드에 서명하고, 서명된 잔액 증명서와 함께 상기 서명된 인출 레코드를 머천트 디바이스에 전송한다.The user represents a desire to complete an offline payment transaction with a merchant or other trading partner. In an exemplary embodiment, the user "taps" a user device within a predefined radius of the merchant device, and the devices establish a communication channel. For example, the devices communicate over a short-range wireless communication (NFC), Bluetooth, or short-range communication channel. The merchant device sends a payment request to the user device, and the user device generates a withdrawal record for the amount indicated on the payment request received from the merchant device. In an exemplary embodiment, the user device signs the withdrawal record via the account certificate private key and sends the signed withdrawal record to the merchant device along with the signed balance certificate.

머천트 디바이스는 사용자 디바이스의 신원을 확인하기 위해 계정 인증서 공개 키를 사용하여 서명된 인출 레코드를 검증한다. 또한 머천트 디바이스는 상기 잔액 증명서가 만료되지 않았음을 확인하고 오프라인 지불 거래를 완료하기 위한 펀드들의 이용가능성을 확인하기 위해 잔액 인증서 공개 키를 사용하여 서명된 잔액 증명서를 검증한다. 예시적인 실시예에서, 머천트 디바이스는 머천트 디바이스 서명 인증서(merchant device signing certificate)를 사용하여 인출 레코드에 서명하고, 서명된 인출 레코드를 사용자 디바이스에 전송하고, 머천트 디바이스가 네트워크 액세스를 가질 때까지 이를 저장한다. 다른 예시적인 실시예에서, 머천트 디바이스는 상기 거래가 성공적임을 표시하는 상태 코드(status code) 또는 메시지를 사용자 디바이스로 전송한다. 머천트 디바이스가 네트워크 액세스를 가지는 경우, 상기 머천트 디바이스는 서명된 인출 레코드를 계정 관리 시스템에 전송한다. 예시적인 실시예에서, 계정 관리 시스템은 머천트 디바이스 서명 인증서 공개 키를 사용하여 상기 인출 레코드를 검증하고, 상기 인출 레코드를 사용자의 계정 관리 시스템 계정에 저장한다. 사용자 디바이스가 새로운 잔액 증명서를 요청하는 경우, 사용자 디바이스는 서명된 인출 레코드를 계정 관리 시스템에 전송하고, 계정 관리 시스템은 계정 잔액을 검증하고, 새로운 잔액 증명서를 생성한다.The merchant device verifies the signed withdrawal record using an account certificate public key to verify the identity of the user device. The merchant device also verifies the signed balance certificate using the balance certificate public key to confirm that the balance certificate has not expired and to confirm the availability of the funds to complete the offline payment transaction. In an exemplary embodiment, the merchant device uses a merchant device signing certificate to sign the fetch record, send the signed fetch record to the user device, store it until the merchant device has network access do. In another exemplary embodiment, the merchant device sends a status code or message to the user device indicating that the transaction is successful. If the merchant device has network access, the merchant device sends a signed withdrawal record to the account management system. In an exemplary embodiment, the account management system uses the merchant device signature certificate public key to verify the fetch record and stores the fetch record in the user's account management system account. When the user device requests a new balance certificate, the user device sends a signed withdrawal record to the account management system, the account management system verifies the account balance, and generates a new balance certificate.

다양한 예시적인 실시예들이 후술하는 기술들에서 더 자세히 설명되고, 프로그램 플로우(program flow)를 도시하는 도면들과 함께 읽혀질 것이다.Various exemplary embodiments will be described in further detail in the following description, and will be read in conjunction with the drawings, which illustrate the program flow.

예시적인 시스템An exemplary system아키텍쳐들Architectures

도면들 전체에서 동일한 번호들은 동일한 엘리먼트들을 가리키는(그러나 반드시 동일하지는 않음) 도면들로 이제 돌아가면, 예시적 실시예들이 상세히 기술된다.Turning now to the drawings in which like numbers refer to like elements throughout the drawings (but not necessarily the same), the exemplary embodiments are described in detail.

도 1은 특정 예시적인 실시예들에 따른, 오프라인 지불 시스템(100)을 도시하는 블록 다이어그램이다. 도 1에 도시된 바와 같이, 예시적인 운영 환경(100)은 머천트 컴퓨팅 디바이스(120), 사용자 컴퓨팅 디바이스(110) 및 하나 이상의 네트워크들(140)을 통해 다른 것과 통신하도록 구성된 계정 관리 컴퓨팅 시스템(130)을 포함한다. 일부 실시예들에서, 디바이스와 관련된 사용자는 본 명세서에 기술된 기법들의 이점들을 얻기 위해 어플리케이션을 설치해야 하고, 그리고/또는 구성 선택을 하여야 한다.1 is a block diagram illustrating an off-line payment system 100, in accordance with certain illustrative embodiments. 1, anexemplary operating environment 100 includes an account management computing system 130 (e. G., ≪ / RTI > configured to communicate with one another via merchant computing device 120, user computing device 110 and one or more networks 140) ). In some embodiments, the user associated with the device must install the application and / or make a configuration selection to obtain the benefits of the techniques described herein.

예시적인 실시예에서, 사용자 디바이스(110) 및 머천트 디바이스(120)는 네트워크(140) 연결 없이 직접 통신하고 정보를 교환하도록 구성된다. 예시적인 실시예에서, 디바이스들(디바이스(120 및 110)를 포함한다)은 근접 통신 기술을 통해 통신한다. 예를 들면, 근거리 무선 통신 채널, 블루투스 통신, 저전력 블루투스(BLE) 통신, 표준 무선 주파수 형태, 적외선, 음향(예를 들면, 가청 음향들, 멜로디 및 초음파), 다른 단거리 통신 채널, 또는 신호들, 데이터, 및/또는 메시지들(일반적으로 데이터로서 지칭된다)의 통신을 지원(facilitate)하는 시스템을 통해. 본 명세서를 통해, 용어 "데이터" 및 "정보"는 본 명세서의 텍스트, 이미지들, 오디오, 비디오 또는 컴퓨터-기반 환경에서 존재할 수 있는 정보의 임의의 다른 형태를 지칭하기 위해 상호교환적으로 사용됨이 이해되어야 한다.In an exemplary embodiment, user device 110 and merchant device 120 are configured to communicate directly and exchange information withoutnetwork 140 connection. In the exemplary embodiment, the devices (including devices 120 and 110) communicate via a proximity communication technique. (E. G., Audible sounds, melody and ultrasound), other short-range communication channels, or signals, such as, for example, a short range wireless communication channel, Bluetooth communication, low power Bluetooth Via a system that facilitates communication of data, and / or messages (generally referred to as data). Throughout this specification, the terms "data" and "information" are used interchangeably to refer to text, images, audio, video, or any other form of information that may be present in a computer- Should be understood.

다른 예시적인 실시예에서, 이러한 시스템들/디바이스들(시스템들/디바이스들(110, 120 및 130)을 포함한다) 중 2 이상은 동일한 시스템 또는 디바이스 내에 통합될 수 있다. 일부 실시예들에서, 디바이스와 관련된 사용자는 본 명세서에 기술된 기법들의 이점들을 얻기 위해 어플리케이션을 설치해야 하고, 그리고/또는 구성 선택을 하여야 한다.In another exemplary embodiment, two or more of these systems / devices (including systems / devices 110, 120, and 130) may be integrated within the same system or device. In some embodiments, the user associated with the device must install the application and / or make a configuration selection to obtain the benefits of the techniques described herein.

각 네트워크(140)는 유선 또는 무선 통신 수단들을 포함하고, 상기 유선 또는 무선 통신 수단들에 의해 네트워크 디바이스들(디바이스들(110, 120 및 130)을 포함하는)이 통신하고 데이터를 교환할 수 있다. 예를 들면, 각 네트워크(140)는 스토리지 영역 네트워크(SAN), 개인 영역 네트워크(PAN), 대도시 통신망(MAN), 근거리 통신망(LAN), 광역 네트워크(WAN), 무선 근거리 통신망(WLAN), 가상 사설망(VPN), 인트라넷, 인터넷, 모바일 텔레폰 네트워크, 카드 네트워크, 또는 이들의 임의의 조합, 또는 임의의 다른 적합한 아키텍쳐로서 구현될 수 있거나, 이들의 일부일 수 있다.Eachnetwork 140 includes wired or wireless communication means and network devices (including devices 110, 120, and 130) can communicate and exchange data by the wired or wireless communication means . For example, eachnetwork 140 may be a storage area network (SAN), a personal area network (PAN), a metropolitan area network (MAN), a local area network (LAN), a wide area network (WAN), a wireless local area network May be implemented as part of, or be part of, a private network (VPN), an intranet, the Internet, a mobile telephone network, a card network, or any combination thereof, or any other suitable architecture.

예시적인 실시예에서, 각 네트워크 컴퓨팅 시스템(110, 120, 130)은 네트워크(140)를 통해 데이터를 전송하고 수신할 수 있는 통신 모듈을 갖는 디바이스를 포함한다. 예를 들면, 각 네트워크 시스템들/디바이스들(시스템들/디바이스들(110, 120 및 130)을 포함한다)은 서버, 개인용 컴퓨터, 모바일 디바이스(예를 들면, 노트북 컴퓨터, 태블릿 컴퓨터, 넷북 컴퓨터, 개인용 정보 단말기(PDA), 비디오 게임 디바이스, GPS 위치 디바이스, 셀룰러 텔레폰, 스마트폰 또는 다른 모바일 디바이스), 텔레비전 내에 내장된 그리고/또는 텔레비전에 결합된 하나 이상의 프로세서를 가진 텔레비전, 또는 웹 브라우저 또는 네트워크(140)를 통해 통신하는 다른 어플리케이션을 포함하거나 이들에 결합된 다른 적절한 기술을 포함할 수 있다. 도 1에 도시된 예시적인 실시예에서, 네트워크 시스템들/디바이스들(시스템들/디바이스들(110, 120 및 130)을 포함한다)은 각각 머천트들, 사용자들 및 계정 관리 시스템에 의해 운영된다.In an exemplary embodiment, each network computing system 110, 120, 130 includes a device having a communication module that is capable of transmitting and receiving data over thenetwork 140. For example, each network system / devices (including systems / devices 110, 120 and 130) may be a server, a personal computer, a mobile device (e.g., a notebook computer, a tablet computer, a netbook computer, Such as a personal digital assistant (PDA), a video game device, a GPS location device, a cellular telephone, a smart phone or other mobile device), a television with one or more processors embedded in and / Other suitable applications that include or are coupled to other applications that communicate via the Internet. 1, network systems / devices (including systems / devices 110, 120, and 130) are each operated by merchants, users, and an account management system.

예시적인 실시예에서, 머천트 디바이스(120)는 전자, 자기 또는 무선 주파수 필드를 통해 디바이스(120)와 예컨데, 사용자 디바이스(110)와 같은 다른 디바이스 사이를 통신할 수 있는 스마트 통신 디바이스로 지칭될 수 있다. 예시적인 실시예에서, 머천트 디바이스(120)는 예컨데, 저장 용량/메모리 및 특정 기능을 수행할 수 있는 하나 이상의 어플리케이션들(125)과 같은 프로세싱 능력들을 갖는다. 예시적인 실시예에서, 머천트 디바이스(120)는 운영 체계(미도시) 및 사용자 인터페이스(121)를 포함한다. 예시적인 머천트 디바이스들(120)은 각 경우에 프로세싱 및 사용자 인터페이스 기능을 갖는 스마트 폰들, 모바일 폰들, 개인용 정보 단말기들(PDAs), 모바일 컴퓨팅 디바이스들(예를 들면, 넷북들, 태블릿들 및 아이패드들), 랩탑들, 웨어러블 컴퓨팅 디바이스들(wearable computing devices)(예를 들면, 시계들, 반지들 또는 안경들) 및 다른 디바이스들일 수 있다.In an exemplary embodiment, the merchant device 120 may be referred to as a smart communication device capable of communicating between the device 120 and other devices, such as the user device 110, via electronic, magnetic, or radio frequency fields. have. In an exemplary embodiment, the merchant device 120 has processing capabilities such as, for example, storage capacity / memory and one or more applications 125 capable of performing a particular function. In an exemplary embodiment, the merchant device 120 includes an operating system (not shown) and a user interface 121. Exemplary merchant devices 120 may include, but are not limited to, smart phones, mobile phones, personal digital assistants (PDAs), mobile computing devices (e.g., netbooks, ), Laptops, wearable computing devices (e.g., watches, rings or glasses), and other devices.

예시적인 실시예에서, 컨트롤러(126)는 블루투스 링크 컨트롤러이다. 블루투스 링크 컨트롤러(126)는 데이터를 보내고 수신하고, 사용자 디바이스(110)를 식별하고, 인증 및 암호화 기능들을 수행하고, 그리고 머천트 디바이스(120)가 사용자 디바이스(110)로부터 전송들을 리슨(listen)하는 방법 또는 블루투스가 지정한 절차들에 따라 다양한 파워-세이브 모드들(power-save modes)에 머천트 디바이스(120)를 구성하는 방법을 지시할 수 있다. 다른 예시적인 실시예에서, 컨트롤러(126)는 Wi-Fi 컨트롤러 또는 유사한 기능들을 수행할 수 있는 NFC 컨트롤러이다.In an exemplary embodiment, thecontroller 126 is a Bluetooth link controller. TheBluetooth link controller 126 is configured to send and receive data, identify the user device 110, perform authentication and encryption functions, and allow the merchant device 120 to listen for transmissions from the user device 110 Method or Bluetooth may instruct the method of configuring the merchant device 120 in various power-save modes according to specified procedures. In another exemplary embodiment,controller 126 is a Wi-Fi controller or an NFC controller capable of performing similar functions.

어플리케이션(125)은 프로그램, 함수, 루틴(routine), 애플릿(applet) 또는 머천트 디바이스(120) 상에 존재하고 머천트 디바이스(120) 상에서 동작들을 수행하는 유사한 엔티티(entity)이다. 예를 들면, 어플리케이션(125)은 오프라인 지불 어플리케이션, 디지털 월렛 어플리케이션, 쿠폰 어플리케이션, 로열티 카드 어플리케이션, 다른 부가가치 어플리케이션, 사용자 인터페이스 어플리케이션 또는 머천트 디바이스(120) 상에서 동작하는 다른 적절한 어플리케이션 중 하나 이상일 수 있다. 추가적으로, 머천트 디바이스(120)는 보안 요소(미도시)를 포함할 수 있고, 상기 보안 요소는 제거가능한 스마트 칩 또는 시큐어 디지털(secure digital)(SD) 카드 내에 존재할 수 있거나 디바이스(120) 상의 고정된 칩 내에 내장될 수 있다. 특정 예시적인 실시예들에서, 가입자 식별 모듈(Subscribed Identity Module)(SIM) 카드들은 보안 요소, 예를 들어, NFC SIM 카드를 호스팅 할 수 있다. 상기 보안 요소는 보안 요소 내에 저장된 정보를 보호하는 동안, 디바이스(120) 상에 있고 디바이스 사용자에 의해 액세스 가능한 소프트웨어 어플리케이션으로 하여금 보안 요소 내의 특정 기능들과 보안적으로 인터렉트(interact)하도록 한다. 상기 보안 요소는 본 명세서에 기술된 기능을 수행하는 보안 요소 상에서 동작하는 하나 이상의 어플리케이션들(125)을 포함한다.Application 125 is a similar entity that resides on a program, function, routine, applet, or merchant device 120 and performs operations on merchant device 120. For example, application 125 may be one or more of an offline payment application, a digital wallet application, a coupon application, a loyalty card application, another value-added application, a user interface application, or other suitable application operating on merchant device 120. Additionally, the merchant device 120 may include a security element (not shown), which may be in a removable smart chip or a secure digital (SD) card, Chip. In certain exemplary embodiments, the Subscriber Identity Module (SIM) cards may host a security element, for example, an NFC SIM card. The secure element allows a software application on the device 120 and accessible by the device user to securely interact with certain functions within the secure element while protecting information stored in the secure element. The security element includes one or more applications 125 that operate on a security element that performs the functions described herein.

예시적인 머천트 디바이스(120)는 하나 이상의 키들(keys) 및/또는 인증서들을 포함한다. 예시적인 실시예에서, 머천트 디바이스(120)는 지불 요청에 응답하여 사용자 디바이스(110)로부터 수신된 인출 레코드(withdrawal record)를 검증한다. 사용자 디바이스(110)는 계정 인증서(account certificate)(112)를 사용하여 인출 레코드에 서명(sign)하고, 머천트 디바이스는 사용자 디바이스(110)의 신원을 확인하기 위해 계정 인증서 공개 키(account certificate public key)(112a)를 사용하여 레코드를 검증한다. 다른 예시적인 실시예에서, 머천트 디바이스(110)는 지불 요청에 응답하여 사용자 디바이스(110)로부터 수신된 잔액 증명서(113)를 검증한다. 머천트 디바이스(120)는 오프라인 지불 거래를 완료하고자 잔액 증명서(113a)가 만료되지 않음을 확인하고 펀드들의 유효성을 확인하기 위해 잔액 증명서 공개 키(113a)를 사용하여 잔액 증명서(113)를 검증한다. 예시적인 실시예에서, 머천트 디바이스(120)는 머천트 디바이스 서명 인증서(124)를 사용하여 인출 레코드에 서명하고, 서명된 인출 레코드를 사용자 디바이스(110)로 전송한다. 디바이스들(110 및 120) 모두 서명된 인출 레코드를 저장하고, 디바이스들(110 및 120)은 네트워크(140) 액세스를 가지며 상기 레코드를 계정 관리 시스템(130)에 전송할 수 있다.Exemplary merchant device 120 includes one or more keys and / or certificates. In an exemplary embodiment, the merchant device 120 verifies the withdrawal record received from the user device 110 in response to the payment request. The user device 110 signs the withdrawal record using an account certificate 112 and the merchant device sends an account certificate public key to verify the identity of the user device 110 ) 112a to verify the record. In another exemplary embodiment, the merchant device 110 verifies thebalance certificate 113 received from the user device 110 in response to the payment request. The merchant device 120 verifies that the balance certificate 113a has not expired to complete the offline payment transaction and verifies thebalance certificate 113 using the balance certificate public key 113a to confirm the validity of the funds. In an exemplary embodiment, the merchant device 120 uses the merchantdevice signing certificate 124 to sign the fetch record and sends the signed fetch record to the user device 110. Both devices 110 and 120 store signed outgoing records and devices 110 and 120 can havenetwork 140 access and transfer the records to account management system 130.

예시적인 실시예에서, 데이터 저장 유닛(129)은 머천트 디바이스(120) 상의 보안 요소 또는 다른 보안 메모리(미도시) 내에서 구현되거나, 머천트 디바이스(120) 상에 있는 분리된 메모리 유닛일 수 있다. 예시적인 데이터 저장 유닛(129)은 머천트 디바이스(120)가 네트워크(140) 액세스를 가지고 서명된 인출 레코드들을 계정 관리 시스템(130)으로 전달할 수 있을 때까지, 서명된 인출 레코드들의 저장을 인에이블 한다. 예시적인 실시예에서, 데이터 저장 유닛(129)은 정보를 저장하는데 적합한 머천트 디바이스(120)에 액세스할 수 있는 임의의 로컬 또는 원격 데이터 저장 구조를 포함할 수 있다. 예시적인 실시예에서, 데이터 저장 유닛(129)은 HTML5 로컬 스토리지(HTML5 local storage)와 같은 암호화 된 정보를 저장한다.In an exemplary embodiment, the data storage unit 129 may be implemented within a security element or other secure memory (not shown) on the merchant device 120, or it may be a separate memory unit on the merchant device 120. The exemplary data storage unit 129 enables storage of signed withdrawal records until the merchant device 120 hasnetwork 140 access and can deliver signed withdrawal records to the account management system 130 . In an exemplary embodiment, the data storage unit 129 may include any local or remote data storage structure that is capable of accessing the merchant device 120 suitable for storing information. In an exemplary embodiment, the data storage unit 129 stores encrypted information, such as HTML5 local storage.

예시적인 실시예에 따르면, 머천트 디바이스(120)는 유선 연결을 통해 네트워크(140)에 접속한다. 예를 들면, 상기 연결은 범용 직렬 버스(USB) 또는 이더넷 연결일 수 있다. 다른 예시적인 실시예에서, 머천트 디바이스(120)는 무선 연결을 통해 네트워크에 접속한다. 예를 들면, 상기 연결은 유선/무선 인터넷 연결(예를 들면, MiFi) 또는 신호들을 네트워크(140)에 전달하기 적합한 임의의 다른 유선 또는 무선 연결을 가진 핫스팟(hotspot)에 대한 Wi-Fi- 또는 블루투스 연결일 수 있다. 다른 예시적인 실시예에서, 상기 연결은 셀룰러 네트워크 연결일 수 있다.According to an exemplary embodiment, the merchant device 120 connects to thenetwork 140 via a wired connection. For example, the connection may be a universal serial bus (USB) or an Ethernet connection. In another exemplary embodiment, the merchant device 120 connects to the network via a wireless connection. For example, the connection may be a wired / wireless Internet connection (e.g., MiFi) or a Wi-Fi-to-Wi-Fi connection to a hotspot having any other wired or wireless connection suitable for delivering signals to thenetwork 140 Bluetooth connection. In another exemplary embodiment, the connection may be a cellular network connection.

예시적인 실시예에서, 머천트 디바이스(120)는 판매시점 관리(point of sale)(POS) 단말기로서 기능하고, 사용자 디바이스(110)의 사용자에 의해 개시된 구매 거래를 프로세싱 할 수 있다. 예시적인 실시예에서, 사용자는 머천트 디바이스(120)로부터 구매를 요청한다. 머천트 디바이스(120)는 사용자 디바이스(110)로부터 지불 계정 정보를 수신하거나 판독한다. 예시적인 실시예에서, 구매는 머천트 디바이스(120)에 대해 사용자 디바이스(110)의 무선 "탭"으로서 개시(initiate)된다.In an exemplary embodiment, the merchant device 120 may function as a point of sale (POS) terminal and may process purchase transactions initiated by a user of the user device 110. In an exemplary embodiment, the user requests a purchase from the merchant device 120. The merchant device 120 receives or reads payment account information from the user device 110. In an exemplary embodiment, the purchase is initiated as a wireless "tap" of the user device 110 to the merchant device 120.

머천트 디바이스(120)는 안테나(127)를 통해 사용자 디바이스(110)와 통신한다. 예시적인 실시예에서, 일단 머천트 디바이스 어플리케이션(125)가 활성화되고 우선순위 되면, 컨트롤러(126)는 거래에 대한 머천트 디바이스(120)의 준비 상태를 통지 받는다. 컨트롤러(126)는 안테나(127)를 통해 라디오 신호를 출력하거나 사용자 디바이스(110)로부터 라디오 신호들을 리슨한다. 머천트 디바이스(120)와 사용자 디바이스(110)사이의 보안 통신 채널을 확립하는 동안, 머천트 디바이스(120)는 사용자 디바이스(110)로부터 이용가능한 어플리케이션들(115)의 리스트를 요청한다. 디렉토리(directory)가 먼저 디스플레이 되고, 그 이후, 우선순위 설정 또는 사용자 디바이스(110)의 타입에 기초하여, 어플리케이션(115)이 선택되고 거래를 위해 개시된다.The merchant device 120 communicates with the user device 110 via theantenna 127. In an exemplary embodiment, once the merchant device application 125 is activated and prioritized, thecontroller 126 is notified of the ready state of the merchant device 120 for the transaction. Thecontroller 126 outputs a radio signal via theantenna 127 or listens to radio signals from the user device 110. The merchant device 120 requests a list of available applications 115 from the user device 110 while establishing a secure communication channel between the merchant device 120 and the user device 110. [ A directory is displayed first, and thereafter, based on the priority setting or type of the user device 110, the application 115 is selected and started for trading.

예시적인 사용자 디바이스(110)는 예컨데, 안테나(117)를 사용하는 머천트 디바이스(120)과 같이, 사용자 디바이스(110)와 다른 디바이스 사이의 전기, 자기 또는 무선 주파수 필드를 통해 통신할 수 있는 스마트 통신 디바이스로 지칭될 수 있다. 예시적인 실시예에서, 사용자 디바이스(110)는 예컨데, 특정 기능을 수행할 수 있는 저장 용량/메모리 및 하나 이상의 어플리케이션들(115)과 같은 프로세싱 능력을 갖는다. 예시적인 실시예에서, 사용자 디바이스(110)는 운영 체계(미도시) 및 사용자 인터페이스(111)를 포함한다. 예시적인 사용자 디바이스(110)는 각 경우에 프로세싱 및 사용자 인터페이스 기능을 갖는 스마트 폰들, 모바일 폰들, 개인용 정보 단말기들(PDAs), 모바일 컴퓨팅 디바이스들(예를 들면, 넷북들, 태블릿들 및 아이패드들), 랩탑들, 웨어러블 컴퓨팅 디바이스들(예를 들면, 시계들, 반지들 또는 안경들) 및 다른 디바이스들을 포함할 수 있다.Exemplary user device 110 may be a smart communication device capable of communicating over an electrical, magnetic, or radio frequency field between user device 110 and another device, such as merchant device 120 usingantenna 117, Device. ≪ / RTI > In an exemplary embodiment, the user device 110 has processing capabilities, such as, for example, storage capacity / memory and one or more applications 115 capable of performing certain functions. In an exemplary embodiment, the user device 110 includes an operating system (not shown) and a user interface 111. Exemplary user device 110 may in each case be a smartphone, a mobile phone, a personal digital assistant (PDAs), a mobile computing device (e.g., netbooks, tablets and iPads ), Laptops, wearable computing devices (e.g., watches, rings or glasses) and other devices.

사용자는 사용자 인터페이스(111) 및 어플리케이션(115)를 통해 오프라인 지불 거래를 수행하기 위해, 사용자 디바이스(110)를 사용한다. 어플리케이션(115)은 프로그램, 함수, 루틴, 애플릿 또는 사용자 디바이스(110) 상에 존재하고 사용자 디바이스(110) 상에서 동작들을 수행하는 유사한 엔티티(entity)이다. 예를 들면, 어플리케이션(115)은 쇼핑 어플리케이션, 머천트 디바이스(120) 어플리케이션, 지불 어플리케이션, 디지털 월렛 어플리케이션, 로열티 카드 어플리케이션, 다른 부가가치 어플리케이션, 사용자 인터페이스(111) 어플리케이션 또는 사용자 디바이스(110) 상에서 동작하는 다른 적절한 어플리케이션 중 하나 이상일 수 있다. 일부 실시예들에서, 사용자는 본 명세서에 기술된 기법들의 이점들을 얻기 위해 어플리케이션(115)을 설치해야 하고, 그리고/또는 사용자 디바이스(110) 상의 구성 선택을 하여야 한다. 추가적으로, 사용자 디바이스(110)는 보안 요소(미도시)를 포함할 수 있고, 상기 보안 요소는 제거가능한 스마트 칩 또는 시큐어 디지털(SD) 카드 내에 존재할 수 있거나 디바이스(110) 상의 고정된 칩 내에 내장될 수 있거나 또는 안정성이 강화된 운영 체계의 보안 컴파트먼트(secure compartment)로서 실현된다. 특정 예시적인 실시예들에서, 가입자 식별 모듈(SIM) 카드들은 보안 요소, 예를 들어, NFC SIM 카드를 호스팅 할 수 있다. 상기 보안 요소는 보안 요소 내에 저장된 정보를 보호하는 동안, 사용자 디바이스(110) 상에 있고 디바이스 사용자에 의해 액세스 가능한 소프트웨어 어플리케이션(115)으로 하여금 보안 요소 내의 특정 기능들과 보안적으로 인터렉트 하도록 한다. 상기 보안 요소는 본 명세서에 기술된 기능을 수행하는 보안 요소 상에서 동작하는 하나 이상의 어플리케이션들(115)을 포함한다.The user uses the user device 110 to perform an offline payment transaction through the user interface 111 and the application 115. [ Application 115 is a program, function, routine, applet, or similar entity that resides on user device 110 and performs operations on user device 110. For example, the application 115 may be a shopping application, a merchant device 120 application, a payment application, a digital wallet application, a loyalty card application, another value added application, a user interface 111 application, It can be one or more of the appropriate applications. In some embodiments, the user must install the application 115 and / or make configuration selections on the user device 110 to obtain the benefits of the techniques described herein. In addition, the user device 110 may include a security element (not shown), which may be in a removable smart chip or secure digital (SD) card or embedded within a fixed chip on the device 110 Or as a secure compartment of an operating system with enhanced security. In certain exemplary embodiments, the subscriber identity module (SIM) cards may host a security element, for example, an NFC SIM card. The secure element allows the software application 115 on the user device 110 and accessible by the device user to securely interact with certain functions within the secure element while protecting the information stored in the secure element. The secure element includes one or more applications 115 that operate on a secure element that performs the functions described herein.

예시적인 실시예에서, 컨트롤러(116)는 블루투스 링크 컨트롤러이다. 블루투스 링크 컨트롤러(116)는 데이터를 보내고 수신하고, 사용자 디바이스(120)를 식별하고, 인증 및 암호화 기능들을 수행하고, 그리고 사용자 디바이스(110)가 머천트 디바이스로부터 전송들을 리슨하는 방법 또는 블루투스가 지정한 절차들에 따라 다양한 파워-세이브 모드들에 사용자 디바이스(110)를 구성하는 방법을 지시할 수 있다. 다른 예시적인 실시예에서, 컨트롤러(116)는 Wi-Fi 컨트롤러 또는 유사한 기능들을 수행할 수 있는 NFC 컨트롤러이다.In the exemplary embodiment, the controller 116 is a Bluetooth link controller. The Bluetooth link controller 116 is configured to send and receive data, identify the user device 120, perform authentication and encryption functions, and determine how the user device 110 will listen to transmissions from the merchant device, May instruct the user device 110 to configure the various power-save modes according to the power-save mode. In another exemplary embodiment, the controller 116 is a Wi-Fi controller or an NFC controller capable of performing similar functions.

예시적인 사용자 디바이스(110)는 하나 이상의 키들 및/또는 인증서들을 포함한다. 예시적인 실시예에서, 사용자 디바이스(110)는 머천트 디바이스(120)로부터 수신된 지불 요청 상에 표시된 금액에 대한 인출 레코드를 생성한다. 사용자 디바이스(110)는 계정 인증서 개인 키(account certificate private key)(112)를 통해 인출 레코드에 서명하고, 잔액 증명서(113)와 함께 서명된 인출 레코드를 머천트 디바이스(120)에 전송한다.Exemplary user device 110 includes one or more keys and / or certificates. In an exemplary embodiment, the user device 110 generates a withdrawal record for the amount indicated on the payment request received from the merchant device 120. The user device 110 signs the withdrawal record via an account certificate private key 112 and sends the withdrawal record signed with thebalance certificate 113 to the merchant device 120. [

예시적인 실시예에서, 데이터 저장 유닛(119)은 사용자 디바이스(110) 상의 보안 요소 또는 다른 보안 메모리(미도시) 내에서 구현되거나, 사용자 디바이스(110) 상에 있는 분리된 메모리 유닛일 수 있다. 예시적인 데이터 저장 유닛(119)은 사용자 디바이스(110)가 네트워크(140) 액세스를 가지고 서명된 인출 레코드들을 계정 관리 시스템(130)으로 전달할 수 있을 때까지, 서명된 인출 레코드들의 저장을 인에이블 한다. 예시적인 실시예에서, 데이터 저장 유닛(119)은 정보를 저장하는데 적합한 사용자 디바이스(110)에 액세스할 수 있는 임의의 로컬 또는 원격 데이터 저장 구조를 포함할 수 있다. 예시적인 실시예에서, 데이터 저장 유닛(119)은 HTML5 로컬 스토리지와 같은 암호화 된 정보를 저장한다.In an exemplary embodiment, the data storage unit 119 may be implemented within a secure element or other secure memory (not shown) on the user device 110, or it may be a separate memory unit on the user device 110. Exemplary data storage unit 119 enables storage of signed fetch records until user device 110 hasnetwork 140 access and can pass signed fetch records to account management system 130 . In an exemplary embodiment, the data storage unit 119 may comprise any local or remote data storage structure capable of accessing the user device 110 suitable for storing information. In an exemplary embodiment, the data storage unit 119 stores encrypted information such as HTML5 local storage.

예시적인 실시예에 따르면, 사용자 디바이스(110)는 유선 연결을 통해 네트워크(140)에 접속한다. 예를 들면, 상기 연결은 범용 직렬 버스(USB) 또는 이더넷 연결일 수 있다. 다른 예시적인 실시예에서, 사용자 디바이스(110)는 무선 연결을 통해 네트워크에 접속한다. 예를 들면, 상기 연결은 유선/무선 인터넷 연결(예를 들면, MiFi) 또는 신호들을 네트워크(140)에 전달하기 적합한 임의의 다른 유선 또는 무선 연결을 가진 핫스팟에 대한 Wi-Fi- 또는 블루투스 연결일 수 있다. 다른 예시적인 실시예에서, 상기 연결은 셀룰러 네트워크 연결일 수 있다.According to an exemplary embodiment, the user device 110 connects to thenetwork 140 via a wired connection. For example, the connection may be a universal serial bus (USB) or an Ethernet connection. In another exemplary embodiment, the user device 110 connects to the network via a wireless connection. For example, the connection may be a Wi-Fi- or Bluetooth connection to a hotspot having a wired / wireless Internet connection (e.g., MiFi) or any other wired or wireless connection suitable for delivering signals to thenetwork 140 . In another exemplary embodiment, the connection may be a cellular network connection.

예시적인 사용자 디바이스(110) 및 머천트 디바이스(120)는 계정 관리 시스템(130)과 통신한다. 예시적인 계정 관리 시스템(130)은 계정 관리 모듈(131) 및 데이터 저장 유닛(137)을 포함한다. 예시적인 계정 관리 모듈(131)은 사용자에 대한 계정을 유지한다. 예시적인 실시예에서, 상기 계정은 하나 이상의 금융 기관들에 의해 유지되는 하나 이상의 금융 계정들에 대한 정보를 포함한다. 예시적인 실시예에서, 금융 계정 정보는 데이터 저장 유닛(137) 내에 저장된다.Exemplary user device 110 and merchant device 120 communicate with an account management system 130. The exemplary account management system 130 includes anaccount management module 131 and adata storage unit 137. The exemplaryaccount management module 131 maintains an account for the user. In an exemplary embodiment, the account includes information about one or more financial accounts maintained by one or more financial institutions. In an exemplary embodiment, the financial account information is stored in thedata storage unit 137.

예시적인 실시예에서, 계정 관리 시스템(130)은 사용자의 계정 관리 시스템(130) 계정을 사용하여 만들어진 사용자의 금융 거래들을 저장한다. 예를 들면, 데이터 저장 유닛(137) 내 각 계정에 대한 펀드들의 각 디포짓(deposit) 및 펀드들의 각 인출. 예시적인 실시예에서, 계정 관리 시스템(130)은 손실된 데이터 또는 가능한 오류들을 식별하기 위해 거래 히스토리를 분석한다.In an exemplary embodiment, the account management system 130 stores the user's financial transactions made using the user's account management system 130 account. For example, each deposit of funds for each account in thedata storage unit 137 and each withdrawal of the funds. In an exemplary embodiment, the account management system 130 analyzes the transaction history to identify lost data or possible errors.

예시적인 계정 관리 시스템(130)은 하나 이상의 키들 및/또는 인증서들을 포함한다. 예시적인 실시예에서, 계정 관리 시스템(130)은 계정 인증서 공개 키(112a)를 포함하고, 계정 인증서 공개 키(112a)를 사용하여 사용자 디바이스(110)의 신원 및/또는 사용자의 계정 관리 시스템(130) 계정을 검증할 수 있다. 예시적인 실시예에서, 계정 관리 시스템(130)은 사용자의 계정 관리 시스템(130) 계정에 액세스하고 잔액 증명서(113)를 생성한다. 계정 관리 시스템(130)은 잔액 증명서 개인 키(113)를 통해 잔액 증명서(113)에 서명하고, 상기 잔액 증명서(113)를 사용자 디바이스(110)로 전송한다. 예시적인 실시예에서, 머천트 디바이스(120)는 잔액 증명서 공개 키(113a)를 포함하고, 검증 프로세스의 일부로서 잔액 증명서(113)이 계정 관리 시스템(130)에 의해 서명됨을 확인한다. 예시적인 실시예에서, 또한 계정 관리 시스템(130)은 머천트 디바이스 서명 인증서 공개 키(124a)를 포함한다. 계정 관리 시스템(130)은 머천트 디바이스(120)의 신원을 확인하기 위해 머천트 디바이스 서명 인증서 공개 키(124a)를 사용하여 머천트 디바이스 서명 인증서(124)에 의해 서명된 인출 레코드를 검증한다.Exemplary account management system 130 includes one or more keys and / or certificates. In an exemplary embodiment, the account management system 130 includes an account certificate public key 112a and uses the account certificate public key 112a to identify the identity of the user device 110 and / 130) account can be verified. In an exemplary embodiment, the account management system 130 accesses the user's account management system 130 account and generates abalance certificate 113. [ The account management system 130 signs thebalance certificate 113 via the balance certificateprivate key 113 and transmits thebalance certificate 113 to the user device 110. [ In an exemplary embodiment, the merchant device 120 includes a balance certificate public key 113a and confirms that thebalance certificate 113 is signed by the account management system 130 as part of the verification process. In the exemplary embodiment, the account management system 130 also includes a merchant device signature certificate public key 124a. The account management system 130 verifies the withdrawal record signed by the merchantdevice signing certificate 124 using the merchant device signing certificate public key 124a to verify the identity of the merchant device 120. [

예시적인 실시예에서, 계정 관리 시스템(130)은 사용자의 계정 관리 시스템(130) 계정에 액세스하고 데이터 저장 유닛(137) 내에 서명된 인출 레코드들을 저장한다. 데이터 저장 유닛(137)은 정보를 저장하는데 적합한 계정 관리 시스템(130)에 액세스할 수 있는 임의의 로컬 또는 원격 데이터 저장 구조를 포함할 수 있다. 예시적인 실시예에서, 데이터 저장 유닛(137)은 HTML5 로컬 스토리지와 같은 암호화 된 정보를 저장한다.In an exemplary embodiment, the account management system 130 accesses the user's account management system 130 account and stores the signed withdrawal records in thedata storage unit 137. [ Thedata storage unit 137 may comprise any local or remote data storage structure capable of accessing an account management system 130 suitable for storing information. In an exemplary embodiment, thedata storage unit 137 stores encrypted information such as HTML5 local storage.

예시적인 운영 환경(100)의 컴포넌트들은 도 2 내지 8에 도시된 예시적인 방법들을 참조하여, 이후 기술된다. 또한, 도 2 내지 8의 예시적인 방법들은 다른 시스템들과 함께 그리고 다른 환경들 내에서 수행될 수 있다.The components of theexemplary operating environment 100 are described below with reference to the exemplary methods illustrated in FIGS. 2-8. In addition, the exemplary methods of FIGS. 2-8 may be performed with other systems and within other environments.

예시적인 프로세스들Exemplary Processes

도 2는 특정 예시적인 실시예들에 따른, 오프라인 지불 거래를 프로세싱 하는 방법(200)을 도시하는 블록 흐름도이다. 방법(200)은 도 1에 도시된 컴포넌트들을 참조하여 기술된다.2 is a block flow diagram illustrating amethod 200 for processing an off-line payment transaction, in accordance with certain exemplary embodiments. Themethod 200 is described with reference to the components shown in Fig.

블록(210)에서, 사용자는 사용자 디바이스(110) 상의 어플리케이션(115)을 인에이블 하고 그리고/또는 오프라인 금융 거래를 수행하려는 요청을 나타낸다. 예시적인 실시예에서, 사용자는 사용자 디바이스(110)로 하여금 계정 관리 시스템(130)과 통신하고 머천트 디바이스(120)에 대한 오프라인 지불 구매를 수행하도록 하기 위해, 어플리케이션(115)을 인에이블 한다.Atblock 210, the user indicates a request to enable the application 115 on the user device 110 and / or to perform an offline financial transaction. In an exemplary embodiment, the user enables the application 115 to allow the user device 110 to communicate with the account management system 130 and perform an offline payment purchase for the merchant device 120. [

블록(220)에서, 사용자 디바이스(110)는 계정 관리 시스템(130)으로부터 최근 잔액 증명서를 수신한다. 계정 관리 시스템(130)으로부터 최근 잔액 증명서를 수신하는 방법(220)은 도 3에 도시된 방법들을 참조하여 이후 더 자세히 기술된다.Atblock 220, the user device 110 receives a recent balance certificate from the account management system 130. Amethod 220 for receiving a recent balance certificate from the account management system 130 is described in more detail below with reference to the methods shown in FIG.

도 3은 블록(220)에서 참조된 바와 같은, 특정 예시적인 실시예들에 따른, 계정 관리 시스템(130)으로부터 최근 잔액 증명서를 수신하는 방법(220)을 도시하는 블록 흐름도이다. 방법(220)은 도 1에 도시된 컴포넌트들을 참조하여 기술된다.3 is a block flow diagram illustrating amethod 220 of receiving a recent balance certificate from the account management system 130, in accordance with certain exemplary embodiments, such as those referenced inblock 220. Themethod 220 is described with reference to the components shown in Fig.

블록(310)에서, 사용자 디바이스(110)는 계정 관리 시스템(130)으로부터 최근 잔액 증명서(113)를 요청한다. 예시적인 실시예에서, 상기 요청은 사용자의 계정 관리 시스템(130) 계정으로의 펀드의 디포짓에 대한 허가를 포함한다. 예시적인 실시예에서, 사용자는 금융 계정에서부터 사용자의 계정 관리 시스템(130) 계정으로 펀드들의 전송을 허가함으로써, 디포짓을 허가한다. 다른 예시적인 실시예에서, 사용자 디바이스(110)는 이용가능한 펀드들의 록킹을 요청한다. 또 다른 예시적인 실시예에서, 사용자 디바이스(110)는 이용가능한 펀드들의 언록킹을 요청한다. 예시적인 실시예에서, 최근 잔액 증명서(113)는 사용자 디바이스(110)와 계정 관리 시스템(130)사이의 임의의 통신 중에 요청된다.Atblock 310, the user device 110 requests arecent balance certificate 113 from the account management system 130. In an exemplary embodiment, the request includes an authorization for a deposit of a fund into the user's account management system 130 account. In an exemplary embodiment, the user grants the deposit by authorizing the transfer of funds from the financial account to the user's account management system 130 account. In another exemplary embodiment, user device 110 requests locking of available funds. In another exemplary embodiment, the user device 110 requests unlocking of the available funds. In an exemplary embodiment, therecent balance certificate 113 is requested during any communication between the user device 110 and the account management system 130.

블록(320)에서, 사용자 디바이스(120)는 요청을 수신하고, 사용자 디바이스(120)가 네트워크(140) 액세스를 가졌는지 여부를 결정한다. 예시적인 실시예에서, 네트워크(140) 액세스는 계정 관리 시스템(130)과 통신하도록 요구된다. 예시적인 실시예에서, 사용자 디바이스(120)는 계정 관리 시스템(130)과의 통신 채널 확립을 시도함으로써, 네트워크(140) 액세스가 있는지 여부를 결정한다.Atblock 320, the user device 120 receives the request and determines whether the user device 120 hasnetwork 140 access. In an exemplary embodiment,network 140 access is required to communicate with the account management system 130. In an exemplary embodiment, the user device 120 attempts to establish a communication channel with the account management system 130, thereby determining whether there isnetwork 140 access.

만일 사용자 디바이스(120)가 네트워크(140) 액세스를 가지지 않았다면, 방법(220)은 블록(325)로 진행한다. 블록(325)에서, 사용자 디바이스(120)는 상기 디바이스(120)가 네트워크(140) 액세스를 가진 경우, 계정 관리 시스템(130)과의 통신 채널 확립을 재시도 한다.If the user device 120 did not havenetwork 140 access, themethod 220 proceeds to block 325. [ Atblock 325, the user device 120 retries establishing a communication channel with the account management system 130 if the device 120 hasnetwork 140 access.

도 3의 블록(320)으로 돌아가면, 만일 사용자 디바이스(120)가 네트워크(140) 액세스를 가지면, 방법(220)은 블록(330)으로 진행한다. 블록(330)에서, 사용자 디바이스(120)는 계정 관리 시스템(130)과의 통신 채널을 확립한다. 예시적인 실시예에서, 통신 채널은 네트워크(140)를 통해 확립된다.Returning to block 320 of FIG. 3, if user device 120 hasnetwork 140 access,method 220 proceeds to block 330. Atblock 330, the user device 120 establishes a communication channel with the account management system 130. In an exemplary embodiment, the communication channel is established via thenetwork 140.

블록(340)에서, 계정 관리 시스템(130)은 사용자가 계정 관리 시스템(130)에 의해 유지되거나 또는 계정 관리 시스템(130)에 액세스 가능한 계정을 가졌는지 여부를 결정한다. 예시적인 실시예에서, 계정 관리 시스템(130)은 사용자가 사용자 디바이스들(110) 상의 어플리케이션(115)를 인에이블 하였고, 사용자가 계정 관리 시스템(130) 계정을 가졌는지 여부를 결정하였다는 통지를 수신한다. 예시적인 실시예에서, 어플리케이션(115)이 인에이블 된 경우, 사용자는 계정 관리 시스템(130) 계정에 로그(log)하거나 계정 관리 시스템(130) 계정을 만들기 위해 프롬프트(prompt)된다. 다른 예시적인 실시예에서, 사용자는 이전에 계정 관리 시스템(130) 계정에 로그 하였거나, 자동으로 계정에 로그 하였다. 또 다른 예시적인 실시예에서, 사용자의 로그인 크리덴셜들(login credentials)은 다른 계정들(예를 들면, 소셜 네트워킹 웹사이트들 및 사용자 디바이스(120) 계정들)을 통해 공유되고, 사용자는 공유된 로그인 크리덴셜들을 사용하여 자동으로 계정 관리 시스템(130) 계정에 로그된다.Atblock 340, the account management system 130 determines whether the user is maintained by the account management system 130 or has an account accessible to the account management system 130. [ In an exemplary embodiment, the account management system 130 receives a notification that the user has enabled the application 115 on the user devices 110 and has determined that the user has an account management system 130 account do. In an exemplary embodiment, if the application 115 is enabled, the user is prompted to log into the account management system 130 account or create an account management system 130 account. In another exemplary embodiment, the user previously logged into the account management system 130 account or automatically logged into the account. In another exemplary embodiment, the user's login credentials are shared through other accounts (e.g., social networking websites and user device 120 accounts) And are automatically logged into the account management system 130 account using login credentials.

만일 사용자가 계정 관리 시스템(130) 계정을 갖지 않는다면, 방법(220)은 도 3의 블록(345)로 진행한다. 블록(345)에서, 사용자는 계정 관리 시스템(130) 계정을 만들기 위해 프롬프트 된다. 예시적인 실시예에서, 사용자가 어플리케이션(115)을 인에이블 하는 때, 사용자는 계정 관리 시스템(130)에 등록하기 위해 프롬프트 된다. 다른 예시적인 실시예에서, 사용자는 어플리케이션(115)을 인에이블링 하기 전 또는 이후 언제든지 또는 어플리케이션(115)을 인에이블링 하는 동안 계정 관리 시스템(130) 계정을 만들 수 있다. 예시적인 실시예에서, 사용자는 어플리케이션(115) 및 네트워크(140)를 통해 계정 관리 시스템(130)에 액세스한다. 예시적인 실시예에서, 사용자는 계정 관리 시스템(130)에 이름, 주소, 전화 번호, 이메일 주소, 및 은행 계정 현금 카드들, 신용 카드들, 로열티 보상들 계정 카드, 또는 구매하는데 사용될 수 있는 계정의 다른 타입(예를 들면, 카드 타입, 카드 번호, 만료 기한, 보안 코드, 및 청구 주소)을 포함하는 하나 이상의 등록된 금융 카드 계정들에 대한 정보를 포함하는, 그러나, 이에 제한되지 않는, 등록 정보를 제출한다. 예시적인 실시예에서, 사용자의 계정 관리 시스템(130) 계정 정보는 데이터 저장 유닛(137)에 저장되고 계정 관리 모듈(131)에 액세스 가능하다. 예시적인 실시예에서, 계정 관리 시스템(130) 계정은 계정 관리 시스템(130) 또는 서드 파티 시스템(third party system)에 의해 유지되는 디지털 월렛 계정이다. 다른 예시적인 실시예에서, 사용자는 계정 관리 시스템(130)에 등록하기 위해 웹사이트를 사용할 수 있다.If the user does not have an account management system 130 account, themethod 220 proceeds to block 345 of FIG. Atblock 345, the user is prompted to create an account management system 130 account. In an exemplary embodiment, when the user enables the application 115, the user is prompted to register with the account management system 130. [ In another exemplary embodiment, the user may create an account management system 130 account at any time before or after enabling the application 115 or while enabling the application 115. In an exemplary embodiment, the user accesses the account management system 130 via the application 115 and thenetwork 140. [ In an exemplary embodiment, the user may enter a name, address, telephone number, email address, and bank account cash cards, credit cards, loyalty rewards account cards, or an account Including but not limited to information about one or more registered financial card accounts, including other types (e.g., card type, card number, expiration date, security code, and billing address) . In an exemplary embodiment, the account information of the user's account management system 130 is stored in thedata storage unit 137 and is accessible to theaccount management module 131. In an exemplary embodiment, the account management system 130 account is a digital wallet account maintained by the account management system 130 or a third party system. In another exemplary embodiment, the user may use the website to register with the account management system 130. [

다른 예시적인 실시예에서, 사용자가 계정 관리 시스템(130) 계정에 로그 하거나 등록하는 것이 요구되지 않는다. 본 실시예에서, 본 명세서에 기술된 방법들은 "게스트" 사용자를 위해 수행된다.In another exemplary embodiment, the user is not required to log into or register with the account management system 130 account. In this embodiment, the methods described herein are performed for a "guest" user.

블록(350)에서, 계정 관리 시스템(130)은 계정 인증서를 생성한다. 예시적인 실시예에서, 계정 인증서(112)는 사용자의 신원 및/또는 사용자의 계정 관리 시스템(130) 계정에 대응하는 사용자 디바이스(110)를 포함한다. 계정 인증서(112)는 사용자 디바이스(110) 및/또는 계정 관리 시스템(130)에 의해 유지된다. 예시적인 실시예에서, 계정 인증서(112)는 머천트 디바이스(120)로부터 수신된 오프라인 지불 요청에 응답하여, 사용자 디바이스(110)에 의해 만들어진 인출 레코드에 서명하기 위해 기능한다.Atblock 350, the account management system 130 creates an account certificate. In an exemplary embodiment, the account certificate 112 includes a user device 110 that corresponds to a user's identity and / or an account of the user's account management system 130. The account certificate 112 is maintained by the user device 110 and / or the account management system 130. In an exemplary embodiment, the account certificate 112 functions to sign a withdrawal record created by the user device 110, in response to an offline payment request received from the merchant device 120.

예시적인 실시예에서, 계정 인증서(112)는 계정 인증서 공개 키(112a)를 포함한다. 계정 인증서 공개 키(112a)는 계정 인증서(112)에 의해 서명된 인출 레코드의 진위(authenticity)를 검증하기 위해 기능한다. 예시적인 실시예에서, 계정 인증서 공개 키(112a)는 머천트 디바이스(120) 및/또는 계정 관리 시스템(130)에 의해 유지된다. 예시적인 실시예에서, 머천트 디바이스(120)가 등록된 때 또는 이후 언제든지, 계정 인증서 공개 키(112a)는 계정 관리 시스템(130)에 의해 머천트 디바이스(120)로 전송된다.In an exemplary embodiment, the account certificate 112 includes an account certificate public key 112a. The account certificatepublic key 112a functions to verify the authenticity of the withdrawal record signed by the account certificate 112. [ In an exemplary embodiment, the account certificate public key 112a is maintained by the merchant device 120 and / or the account management system 130. In an exemplary embodiment, the account certificate public key 112a is transmitted to the merchant device 120 by the account management system 130 either when the merchant device 120 is registered or at any time thereafter.

블록(355)에서, 계정 관리 시스템(130)은 계정 인증서(112)를 사용자 디바이스(110)로 전송한다. 예시적인 실시예에서, 사용자 디바이스(110)와 계정 관리 시스템(130) 사이의 임의의 통신은 계정 인증서(112)에 의해 서명된다. 본 실시예에서, 계정 관리 시스템(130)은 서명(signature)을 판독함으로써 사용자의 계정 관리 시스템(130)을 식별한다.Atblock 355, the account management system 130 sends the account certificate 112 to the user device 110. In the exemplary embodiment, any communication between the user device 110 and the account management system 130 is signed by the account certificate 112. [ In this embodiment, the account management system 130 identifies the user's account management system 130 by reading a signature.

블록(360)에서, 사용자 디바이스(110)는 계정 인증서(112)를 수신한다.Atblock 360, the user device 110 receives an account certificate 112.

블록(370)에서, 계정 관리 시스템(130)은 최근 잔액 증명서(113)에 대한 요청이 사용자의 계정 관리 시스템(130) 계정으로의 펀드의 디포짓에 대한 허가를 포함하였는지 여부를 결정한다. 예시적인 실시예에서, 사용자는 금융 계정에서부터 사용자의 계정 관리 시스템(130) 계정으로 펀드들의 전송을 허가함으로써, 디포짓을 허가한다. 예시적인 실시예에서, 사용자는 사용자 디바이스(110)를 사용하여 허가를 수행한다. 예를 들면, 사용자는 펀드들의 디포짓을 요청하기 위해 어플리케이션(115)에 액세스한다. 다른 예시적인 실시예에서, 사용자는 계정 관리 시스템(130)과 통신할 수 있는 다른 컴퓨팅 디바이스 또는 서드 파티 시스템을 사용하여 허가를 수행한다. 본 예시적인 실시예에서, 사용자 디바이스(120)는 디바이스(120)가 네트워크 액세스를 가지는 때, 최근 잔액 증명서를 요청할 것이다.Atblock 370, the account management system 130 determines whether the request for arecent balance certificate 113 included an authorization for the deposit of the fund to the user's account management system 130 account. In an exemplary embodiment, the user grants the deposit by authorizing the transfer of funds from the financial account to the user's account management system 130 account. In an exemplary embodiment, the user performs authorization using the user device 110. For example, the user accesses the application 115 to request a deposit of the funds. In another exemplary embodiment, the user performs the authorization using a third party system or other computing device capable of communicating with the account management system 130. In this exemplary embodiment, the user device 120 will request a recent balance certificate when the device 120 has network access.

만일 최근 잔액 증명서(113)에 대한 요청이 펀드들을 디포짓 하기 위한 요청을 포함한다면, 방법(220)은 도 3의 블록(380)으로 진행한다. 블록(380)에서, 계정 관리 시스템(130)은 펀드들의 디포짓을 사용자의 계정으로 프로세스한다. 예시적인 실시예에서, 펀드들은 금융 계정에서부터 사용자의 계정 관리 시스템(130) 계정으로 전자적으로 전송된다.If the request forrecent balance certificate 113 includes a request to de-fund the funds, themethod 220 proceeds to block 380 of FIG. Atblock 380, the account management system 130 processes the depots of the funds into the user's account. In an exemplary embodiment, the funds are electronically transferred from the financial account to the account of the user's account management system 130. [

그 후 방법(220)은 도 3의 블록(390)으로 진행한다.Themethod 220 then proceeds to block 390 of FIG.

도 3의 블록(370)으로 돌아가면, 만일 최근 잔액 증명서(113)에 대한 요청이 펀드들을 디포짓 하기 위한 요청을 포함하지 않는다면, 방법(220)은 도 3의 블록(390)으로 진행한다. 블록(390)에서, 계정 관리 시스템(130)은 서명된 잔액 증명서(113)를 사용자 디바이스(110)에 제공한다. 서명된 잔액 증명서(113)를 사용자 디바이스(110)에 제공하는 방법(390)은 도 4에 기술된 방법들을 참조하여 이 후 더 자세히 기술된다.Returning to block 370 of FIG. 3, if the request forrecent balance certificate 113 does not include a request to de-fund the funds, themethod 220 proceeds to block 390 of FIG. Atblock 390, the account management system 130 provides the signedbalance certificate 113 to the user device 110. Themethod 390 of providing the signedbalance certificate 113 to the user device 110 is described in more detail hereinafter with reference to the methods described in FIG.

도 4는 블록(390)에서 참조된 바와 같은, 특정 예시적인 실시예들에 따른, 서명된 잔액 증명서(113)를 사용자 디바이스(110)에 제공하는 방법(390)을 도시하는 블록 흐름도이다. 방법(390)은 도 1에 도시된 컴포넌트들을 참조하여 기술된다.4 is a block flow diagram illustrating amethod 390 of providing a signedbalance certificate 113 to a user device 110, in accordance with certain exemplary embodiments, as referenced inblock 390. [ Themethod 390 is described with reference to the components shown in Fig.

블록(410)에서, 계정 관리 시스템(130)은 최근 잔액 증명서(113)에 대한 요청이 인출 레코드를 포함하였는지 여부를 결정한다. 예시적인 실시예에서, 사용자 디바이스(110)는 최근 잔액 증명서(113)에 대한 요청과 함께 하나 이상의 인출 레코드들을 계정 관리 시스템(130)에 전송한다. 예시적인 실시예에서, 사용자 디바이스(110)는 모든 인출 레코드들을 계정 관리 시스템에 전송한다. 본 실시예에서, 사용자 디바이스(110)는 어떠한 인출 레코드가 아직 보내지지 않았는지 결정하고, 이러한 레코드들을 계정 관리 시스템(130)에 전송한다. 예시적인 실시예에서, 각 인출 레코드는 머천트 디바이스(120)를 차지하는 오프라인 지불 거래의 식별을 포함한다. 계정 관리 시스템(130)은 사용자의 계정 관리 시스템(130) 계정 내 각 인출 레코드를 저장하고, 이용가능한 펀드들의 잔액을 결정하기 위해 상기 레코드들을 사용한다.Atblock 410, the account management system 130 determines whether the request for the mostrecent balance certificate 113 included a withdrawal record. In an exemplary embodiment, the user device 110 sends one or more withdrawal records to the account management system 130 along with a request for arecent balance certificate 113. In an exemplary embodiment, the user device 110 sends all the retrieval records to the account management system. In this embodiment, the user device 110 determines which withdrawal records have not been sent yet, and sends these records to the account management system 130. In an exemplary embodiment, each withdrawal record includes an identification of an off-line payment transaction that occupies merchant device 120. The account management system 130 stores each withdrawal record in the user's account management system 130 account and uses the records to determine the balance of available funds.

만일 최근 잔액 증명서(1130)에 대한 요청이 인출 레코드를 포함하면, 방법(390)은 도 4의 블록(420)으로 진행한다. 블록(420)에서, 계정 관리 시스템(130)은 인출 레코드를 검증한다. 예시적인 실시예에서, 각 인출 레코드는 오프라인 지불 거래 동안, 머천트 디바이스(120)에 의해 서명된다. 예시적인 실시예에서, 머천트 디바이스(120)는 머천트 디바이스 서명 인증서(124)를 사용하여 인출 레코드에 서명한다. 예시적인 실시예에서, 레코드를 인증하기 위해 인출 레코드는 머천트 디바이스 서명 인증서(124)에 의해 서명된다. 본 실시예에서, 계정 관리 시스템(130)은 머천트 디바이스 서명 인증서 공개 키(124a)를 사용하여 인출 레코드를 검증할 수 있다. 예시적인 실시예에서, 서명된 인출 레코드는 사용자 디바이스(110)와 머천티 디바이스(120) 사이에 발생된 오프라인 지불 거래를 검증한다.If the request for recent balance certificate 1130 includes a fetch record, themethod 390 proceeds to block 420 of FIG. Atblock 420, the account management system 130 verifies the withdrawal record. In an exemplary embodiment, each withdrawal record is signed by the merchant device 120 during an offline payment transaction. In an exemplary embodiment, the merchant device 120 signs the withdrawal record using the merchantdevice signing certificate 124. In an exemplary embodiment, the retrieval record is signed by the merchantdevice signing certificate 124 to authenticate the record. In this embodiment, the account management system 130 may verify the withdrawal record using the merchant device signature certificate public key 124a. In an exemplary embodiment, the signed withdrawal record verifies the offline payment transaction generated between the user device 110 and the merchant device 120.

만일 인출 레코드가 검증되지 않았다면, 방법(390)은 도 4의 블록(430)으로 진행한다. 블록(430)에서, 거래는 거절되고 계정 관리 시스템(130)은 알림을 사용자 디바이스(120)에 전송한다.If the fetch record has not been verified, themethod 390 proceeds to block 430 of FIG. Atblock 430, the transaction is rejected and the account management system 130 sends a notification to the user device 120. [

도 4의 블록(420)으로 돌아가면, 만일 인출 레코드가 검증되었다면, 방법(390)은 도 4의 블록(440)으로 진행한다. 블록(440)에서, 계정 관리 시스템(130)은 사용자의 계정 관리 시스템(130)에 인출 레코드를 기록한다. 예시적인 실시예에서, 계정 관리 시스템(130)은 오프라인 지불 거래를 노트(note)하기 위해 사용자의 계정을 업데이트 한다.Returning to block 420 of FIG. 4, if the fetch record has been verified, themethod 390 proceeds to block 440 of FIG. Atblock 440, the account management system 130 records the withdrawal record in the user's account management system 130. In an exemplary embodiment, the account management system 130 updates the user's account to note off-line payment transactions.

그 후 방법(390)은 도 4의 블록(450)으로 진행한다.Themethod 390 then proceeds to block 450 of FIG.

도 4의 블록(410)으로 돌아가면, 만일 최근 잔액 증명서에 대한 요청이 인출 레코드를 포함하지 않는다면, 방법(390)은 도 4의 블록(450)으로 진행한다. 블록(450)에서, 계정 관리 시스템(130)은 사용자의 계정 관리 시스템(130) 계정 내 이용가능한 펀드들의 잔액을 계산한다. 사용자의 계정 관리 시스템(130) 계정 내 이용가능한 펀드들의 잔액을 계산하는 방법(450)은 도 5에 기술된 방법들을 참조하여 이후 더 자세히 기술된다.Returning to block 410 of FIG. 4, if the request for the most recent balance certificate does not include a fetch record, themethod 390 proceeds to block 450 of FIG. Atblock 450, the account management system 130 calculates the balance of funds available in the user's account management system 130 account. Amethod 450 for calculating the balance of available funds in the user's account management system 130 account is described in more detail below with reference to the methods described in FIG.

도 5는 블록(450)에서 참조된 바와 같은, 특정 예시적인 실시예들에 따른, 사용자의 계정 관리 시스템(130) 계정 내 이용가능한 펀드들의 잔액을 계산하는 방법(450)을 도시하는 블록 흐름도이다. 방법(450)은 도 1에 도시된 컴포넌트들을 참조하여 기술된다.5 is a block flow diagram illustrating amethod 450 for calculating the balance of available funds in a user's account management system 130 account, according to certain exemplary embodiments, as referenced inblock 450 . Themethod 450 is described with reference to the components shown in FIG.

블록(510)에서, 계정 관리 시스템(130)은 사용자의 계정 관리 시스템(130) 계정 내 펀드들의 잔액을 계산한다. 예시적인 실시예에서, 계정 관리 시스템(130)은 디포짓들의 총 금액과 인출 레코드들의 총 금액 사이의 차이를 계산한다. 다른 예시적인 실시예에서, 계정 관리 시스템(130)은 사용자의 계정 내 펀드들의 잔액의 누계(running total)를 유지한다.Atblock 510, the account management system 130 calculates the balance of the funds in the user's account management system 130 account. In an exemplary embodiment, the account management system 130 calculates the difference between the total amount of depots and the total amount of withdrawal records. In another exemplary embodiment, the account management system 130 maintains a running total of the balances of the funds in the user's account.

블록(520)에서, 계정 관리 시스템(130)은 펀드들의 잔액의 일부분이 록킹되었는지 여부를 결정한다. 예시적인 실시예에서, 사용자는 최근 잔액 증명서(113)에 대한 요청과 함께 펀드들의 잔액의 일부를 록킹 하기 위한 요청을 전송한다. 다른 예시적인 실시예에서, 계정 관리 시스템(130)은 록킹 펀드들의 금액을 결정하는 사람의 개입(human intervention) 없이 이해되는 규칙 또는 로직을 유지한다. 또 다른 예시적인 실시예에서, 사용자는 록킹 펀드들의 금액을 결정하는 규칙들을 정의한다. 예를 들면, 규칙은 사용자의 계정 관리 시스템(130) 계정 내에서 유지되는 최소 잔액 $25를 요구할 수 있다. 본 예시에서, 계정 관리 시스템(130)은 이러한 최소 금액이 오프라인 지불에 대해 이용가능 하게 되는 것을 막기 위해 $25를 록킹할 것이다. 다른 예시에서, 규칙은 사용자의 계정 관리 시스템(130) 계정 내 이용가능한 펀드들의 5%가 록킹되는 것을 요구할 수 있다. 본 예시에서, 만일 사용자가 사용자의 계정 내 $100를 가졌다면, 계정 관리 시스템(130)은 이러한 최소 금액이 오프라인 지불에 대해 이용가능 하게 되는 것을 막기 위해 $5를 록킹할 것이다.Atblock 520, the account management system 130 determines whether a portion of the funds' balance is locked. In an exemplary embodiment, the user sends a request to lock a portion of the funds balance with a request for arecent balance certificate 113. [ In another exemplary embodiment, the account management system 130 maintains a rule or logic that is understood without human intervention determining the amount of the locking funds. In another exemplary embodiment, the user defines rules that determine the amount of locking funds. For example, the rule may require a minimum balance of $ 25 maintained within the user's account management system 130 account. In this example, the account management system 130 will lock $ 25 to prevent this minimum amount from being made available for off-line payments. In another example, the rule may require that 5% of the funds available in the user's account management system 130 account be locked. In this example, if the user had $ 100 in the user's account, the account management system 130 would lock $ 5 to prevent this minimum amount from being made available for off-line payments.

만일 펀드들의 잔액의 부분이 록킹되지 않았다면, 방법(450)은 도 4의 블록(450)으로 진행한다.If the portion of the balance of the funds has not been locked, themethod 450 proceeds to block 450 of FIG.

블록(520)으로 돌아가면, 만일 펀드들의 잔액의 일부분이 록킹되었다면, 방법(450)은 도 5의 블록(530)으로 진행한다. 블록(530)에서, 계정 관리 시스템(130)은 펀드들의 잔액의 일부를 록킹하거나 언록킹하는 규칙들을 결정한다. 예시적인 실시예에서, 규칙들은 사용자, 계정 관리 시스템, 서드 파티, 또는 이들의 임의의 조합에 의해 정의된다. 예시적인 실시예에서, 규칙들은 사용자의 계정 관리 시스템(130) 계정이 확립되었을 때 정의된다. 다른 예시적인 실시예에서, 규칙들이 확립되고, 확립된 이후 언제든지 변경된다. 또 다른 예시적인 실시예에서, 최근 잔액 증명서(113)에 대한 사용자의 요청은 펀드들을 록킹 또는 언록킹하는 하나 이상의 규칙들을 포함한다.Returning to block 520, if a portion of the balances of the funds have been locked, themethod 450 proceeds to block 530 of FIG. Atblock 530, the account management system 130 determines the rules for locking or unlocking a portion of the funds' balance. In an exemplary embodiment, the rules are defined by a user, an account management system, a third party, or any combination thereof. In the exemplary embodiment, the rules are defined when the user's account management system 130 account is established. In another exemplary embodiment, rules are changed at any time after being established and established. In another exemplary embodiment, the user's request for arecent balance certificate 113 includes one or more rules for locking or unlocking the funds.

예시적인 실시예에서, 사용자의 계정 관리 시스템(130) 계정 내의 모든 펀드들은 록킹되고, 계정 관리 시스템(130)은 규칙들에 기초하여 펀드들의 잔액의 일부분이 언록킹되었는지 여부를 결정한다. 예를 들면, 계정 관리 시스템(130)은 하나 이상의 규칙들을 적용함으로써, 오프라인 지불 거래에 대해 펀드들의 잔액의 50%가 이용가능 할 수 있음을 결정한다.In the exemplary embodiment, all funds in the user's account management system 130 account are locked and the account management system 130 determines whether a portion of the funds' balance is unlocked based on the rules. For example, the account management system 130 may determine that 50% of the funds' balance for the offline payment transaction may be available by applying one or more rules.

블록(540)에서, 계정 관리 시스템(130)은 펀드들의 잔액의 일부분을 록킹하거나 언록킹하는 시간-기반 규칙(time-based rule)이 있는지 여부를 결정한다. 예시적인 실시예에서, 펀드들의 잔액의 일부분은 제한된 시간에 대해 이용가능하다. 예를 들면, 펀드들의 잔액의 일부분은 하나의 거래에 대해 언록킹될 수 있다. 본 예시에서, 잔액 증명서(113)는 단 하나의 거래 또는 단지 짧은 시간(예를 들면, 단 하나의 오프라인 거래를 완료하기에 충분한 시간)에 대해 유효하다. 하나의 오프라인 지불 거래가 완료된 이후, 또는 잔액 증명서(113)에 대해 이용가능한 시간의 만료 이후에, 사용자는 새로운 최근 잔액 증명서(113)를 요청하도록 요구된다.Atblock 540, the account management system 130 determines whether there is a time-based rule to lock or unlock a portion of the funds' balance. In an exemplary embodiment, a portion of the balance of the funds is available for a limited time. For example, a portion of the funds' balance can be unlocked for one transaction. In this example, thebalance certificate 113 is valid for only one transaction or only a short time (e.g., enough time to complete a single offline transaction). After the completion of one off-line payment transaction, or after the expiration of the time available for thebalance certificate 113, the user is required to request anew balance certificate 113.

다른 예시에서, 이용가능한 펀드들의 일부분은 일정 시간 동안 록킹될 수 있다. 예를 들면, 펀드들의 잔액의 일부분은 5분 동안 록킹된다. 본 예시에서, 록킹 금액까지의 이용가능한 펀드들의 금액으로 5분 동안 사용자는 오프라인 지불 거래를 완료할 수 있다. 거래가 완료된 이후, 록킹은 해제된다. 사용자는 새로운 잔액 증명서(113)를 요청함으로써, 5분 만료 전에 록킹 시간을 연장할 수 있다.In another example, a portion of the available funds may be locked for a period of time. For example, a portion of the funds' balance is locked for 5 minutes. In this example, the user can complete the offline payment transaction for five minutes with the amount of available funds up to the lockout amount. After the transaction is completed, the lock is released. By requesting anew balance certificate 113, the user can extend the locking time before expiration of 5 minutes.

만일 계정 관리 시스템(130)이 펀드들의 잔액의 일부분을 록킹하거나 언록킹하는 시간-기반 규칙이 있다고 판단하면, 방법(450)은 도 5의 블록(450)으로 진행한다. 블록(550)에서, 계정 관리 시스템(130)은 미리-정의된 일정 기간 동안 이용가능한 펀드들을 결정한다.If the account management system 130 determines that there is a time-based rule to lock or unlock a portion of the funds' balance, themethod 450 proceeds to block 450 of FIG. Atblock 550, the account management system 130 determines available funds for a predefined period of time.

그 후 방법(450)은 도 5의 블록(560)으로 진행한다.Themethod 450 then proceeds to block 560 of FIG.

도 5의 블록(540)으로 돌아가서, 만일 계정 관리 시스템(130)이 펀드들의 잔액의 일부분을 록킹하거나 언록킹하는 시간-기반 규칙이 없다고 판단하면, 방법(450)은 도 5의 블록(560)으로 진행한다. 블록(560)에서, 계정 관리 시스템(130)은 펀드들의 잔액의 일부분을 록킹하거나 언록킹하는 위치-기반 규칙(location-based rule)이 있는지 여부를 결정한다. 예시적인 실시예에서, 펀드들은 오직 지정된 위치에 대해 또는 머천트의 지정된 타입에 대한 오프라인 지불 거래에 대해 이용가능하다. 예를 들면, 사용자는 오직 대량 수송 수단을 위해, 레스토랑들에서, 또는 도시 X에서 펀드들을 사용하기 원한다. 다른 예시적인 실시예에서, 펀드들은 오직 제1 오프라인 지불 거래의 미리 정의된 근처 또는 다른 지리적 위치에서 이용가능하다. 예를 들면, 일단 사용자가 머천트 X와 오프라인 지불 거래를 개시하였다면, 사용자는 오직 머천트 X 위치의 반경 10피트 내에서 추가적인 거래들을 완료할 수 있다. 예시적인 실시예에서 각 사용자는 하나보다 많은 사용자 디바이스(110)를 가질 수 있다. 본 실시예에서, 각 사용자 디바이스(110)는 서로 다른 잔액 증명서를 가질 수 있다. 위치에 따른 펀드들의 잔액의 일부분을 록킹함으로써, 사용자는 사용자의 펀드들의 잔액을 과용(over spend)하기 위해 하나보다 많은 사용자 디바이스(110)를 사용할 수 없다.Returning to block 540 of FIG. 5, if the account management system 130 determines that there is no time-based rule for locking or unlocking a portion of the funds' funds, themethod 450 proceeds to block 560 of FIG. . Atblock 560, the account management system 130 determines whether there is a location-based rule that locks or unlocks a portion of the balance of the funds. In an exemplary embodiment, the funds are available only for a specified location or for an offline payment transaction for a specified type of merchant. For example, a user wants to use funds only in mass transit, in restaurants, or in city X. In another exemplary embodiment, the funds are only available in predefined neighborhoods or other geographic locations of the first off-line payment transaction. For example, once a user initiates an offline payment transaction with Merchant X, the user can complete additional transactions only within a radius of 10 feet of Merchant X location. In an exemplary embodiment, each user may have more than one user device 110. In this embodiment, each user device 110 may have a different balance certificate. By locking a portion of the balance of funds according to location, the user can not use more than one user device 110 to over spend the balance of the user's funds.

만일 계정 관리 시스템(130)이 펀드들의 잔액의 일부분을 록킹하거나 언록킹하는 위치-기반 규칙이 있다고 결정하면, 방법(450)은 도 5의 블록(570)으로 진행한다. 블록(570)에서, 계정 관리 시스템(130)은 미리-정의된 위치 또는 머천트 타입에 대해 이용가능한 펀드들을 결정한다.If the account management system 130 determines that there is a position-based rule to lock or unlock a portion of the funds' funds, themethod 450 proceeds to block 570 of FIG. Atblock 570, the account management system 130 determines the funds available for the pre-defined location or merchant type.

그 후 방법(450)은 도 5의 블록(580)으로 진행한다.Themethod 450 then proceeds to block 580 of FIG.

도 5의 블록(560)으로 돌아가서, 만일 계정 관리 시스템(130)이 펀드들의 잔액의 일부분을 록킹하거나 언록킹하는 위치-기반 규칙이 없다고 결정하면, 방법(450)은 도 5의 블록(580)으로 진행한다. 블록(580)에서, 계정 관리 시스템(130)은 펀드들을 록킹하는 하나 이상의 규칙들에 기초하여, 오프라인 지불 거래에 대해 이용가능하지 않은 록킹 펀드들의 금액 및 오프라인 지불 거래에 대해 이용가능한 펀드들의 금액을 결정한다. 예시적인 실시예에서, 이용가능한 펀드들의 금액은 디포짓들의 총 금액과, 임의의 록킹 펀드들을 뺀 인출 레코드들의 총 금액 사이의 차이를 포함한다.Returning to block 560 of FIG. 5, if the account management system 130 determines that there is no position-based rule to lock or unlock a portion of the funds, themethod 450 proceeds to block 580 of FIG. . Atblock 580, the account management system 130 determines, based on one or more rules that lock the funds, the amount of locking funds that are not available for off-line payment transactions and the amount of funds available for offline payment transactions . In an exemplary embodiment, the amount of funds available includes the difference between the total amount of depots and the total amount of withdrawal records minus any locking funds.

그 후 방법(450)은 도 4의 블록(460)으로 진행한다.Themethod 450 then proceeds to block 460 of FIG.

도 4로 돌아가면, 블록(460)에서, 계정 관리 시스템(130)은 사용자 디바이스(110)에 대한 최근 잔액 증명서(113)를 생성한다. 예시적인 실시예에서, 상기 최근 잔액 증명서(113)는 오프라인 지불 거래에 대한 이용가능한 펀드들의 금액을 포함한다. 예시적인 실시예에서, 잔액 증명서(113)는 시간에 제한된다. 본 예시적인 실시예에서, 잔액 증명서(113)는 미리-정의된 시간이 경과한 후 만료한다. 다른 예시적인 실시예에서, 잔액 증명서(113)는 오프라인 구매 거래들의 수에 제한된다. 본 예시적인 실시예에서, 잔액 증명서(113)는 오프라인 구매 거래들의 미리-정의된 수가 완료되고 난 후 만료한다. 다른 예시적인 실시예에서, 잔액 증명서(113)는 시간, 거래들의 수, 지리적 위치, 머천트의 타입, 또는 계정 관리 시스템(130) 또는 사용자에 의해 확립된 임의의 다른 제한 규칙에 의해 제한된다. 예시적인 실시예에서, 잔액 증명서는 지불 거래에 대해 이용가능한 펀드들의 금액을 제한하는 하나 이상의 규칙들을 포함한다.Returning to Figure 4, atblock 460, the account management system 130 generates arecent balance certificate 113 for the user device 110. [ In an exemplary embodiment, therecent balance certificate 113 includes the amount of available funds for an off-line payment transaction. In the exemplary embodiment, thebalance certificate 113 is time limited. In this exemplary embodiment,balance certificate 113 expires after a pre-defined time period has elapsed. In another exemplary embodiment, thebalance certificate 113 is limited to the number of offline purchase transactions. In this exemplary embodiment,balance certificate 113 expires after a pre-defined number of offline purchase transactions have been completed. In another exemplary embodiment,balance certificate 113 is limited by time, number of transactions, geographic location, type of merchant, or any other restriction rule established by account management system 130 or user. In an exemplary embodiment, the balance certificate includes one or more rules that limit the amount of funds available for a payment transaction.

블록(470)에서, 계정 관리 시스템(130)은 잔액 증명서(113)에 서명한다. 예시적인 실시예에서, 머천트 디바이스(120)는 서명된 잔액 증명서(113)의 진위를 검증하기 위해, 잔액 증명서 공개 키(113a)를 사용하여 서명된 잔액 증명서(113)를 판독할 수 있다.Atblock 470, the account management system 130 signs thebalance certificate 113. In an exemplary embodiment, the merchant device 120 may read the signedbalance certificate 113 using the balance certificate public key 113a to verify the authenticity of the signedbalance certificate 113. [

블록(480)에서, 계정 관리 시스템(130)은 서명된 잔액 증명서(113)를 사용자 디바이스(110)에 전송한다. 예시적인 실시예에서, 서명된 잔액 증명서(113)는 네트워크(140) 연결을 통해 사용자 디바이스(110)로 전송된다.Atblock 480, the account management system 130 sends the signedbalance certificate 113 to the user device 110. In an exemplary embodiment, the signedbalance certificate 113 is transmitted to the user device 110 via thenetwork 140 connection.

블록(490)에서, 사용자 디바이스(110)는 서명된 잔액 증명서(113)를 수신한다.Atblock 490, the user device 110 receives the signedbalance certificate 113.

그 후 방법(390)은 도 2의 블록(230)으로 진행한다.Themethod 390 then proceeds to block 230 of FIG.

도 2로 돌아가면, 블록(230)에서, 사용자 디바이스(110) 및 머천트 디바이스(120)는 통신 채널을 확립한다. 예시적인 실시예에서, 사용자는 머천트와 오프라인 지불 거래를 완료하고자 하는 소망을 나타낸다. 예시적인 실시예에서, 오프라인 지불 거래를 수행하기 위해 사용자는 사용자 디바이스(110)를 인에이블 하는 사용자 디바이스(110) 상의 어플리케이션(115)에 액세스한다. 예시적인 실시예에서, 사용자는 머천트 디바이스(120)와 무선으로 통신하기 위해 사용자 디바이스(110)를 인에이블 하는 어플리케이션(115)에 액세스한다. 본 실시예에서, 상기 디바이스들(디바이스들(110 및 120)을 포함한다)은 보안 통신 채널(예를 들어, 근거리 무선 통신들, 블루투스, Wi-Fi, 또는 무선 통신 채널의 다른 형태)을 통해 통신한다.Returning to Figure 2, atblock 230, the user device 110 and the merchant device 120 establish a communication channel. In an exemplary embodiment, the user represents a desire to complete a merchant and an offline payment transaction. In an exemplary embodiment, a user accesses an application 115 on the user device 110 that enables the user device 110 to perform an off-line payment transaction. In the exemplary embodiment, the user accesses the application 115 that enables the user device 110 to communicate wirelessly with the merchant device 120. In the present embodiment, the devices (including devices 110 and 120) may communicate via a secure communication channel (e.g., near field wireless communications, Bluetooth, Wi-Fi, or other form of wireless communication channel) Communication.

블록(240)에서, 머천트 디바이스(120)는 지불 요청을 사용자 디바이스(110)에 전송한다. 예시적인 실시예에서, 머천트는 지불 요청 금액을 머천트 디바이스(120) 상의 어플리케이션(125)에 입력한다. 본 실시예에서, 상기 지불 요청은 머천트 디바이스(120)의 신원, 지불 요청 금액, 및/또는 타임스탬프(timestamp)를 포함한다. 예시적인 실시예에서, 상기 지불 요청은 보안 통신 채널을 통해 전송된다.Atblock 240, the merchant device 120 sends a payment request to the user device 110. In an exemplary embodiment, the merchant enters the payment request amount into the application 125 on the merchant device 120. In this embodiment, the payment request includes the identity of the merchant device 120, the amount of payment requested, and / or a timestamp. In an exemplary embodiment, the payment request is transmitted over a secure communication channel.

블록(250)에서, 사용자 디바이스(110)는 머천트 디바이스(120)로부터 수신된 지불 요청을 프로세스한다. 머천트 디바이스(120)로부터 수신된 지불 요청을 프로세스 하는 방법(250)은 도 6에 기술된 방법들을 참조하여 이후 더 자세히 기술된다.Atblock 250, the user device 110 processes the payment request received from the merchant device 120. Themethod 250 for processing a payment request received from the merchant device 120 is described in more detail below with reference to the methods described in FIG.

도 6은 블록(250)에서 참조된 바와 같은, 특정 예시적인 실시예들에 따른, 머천트 디바이스(120)로부터 수신된 지불 요청을 프로세싱 하는 방법(250)을 도시하는 블록 흐름도이다. 방법(250)은 도 1에 도시된 컴포넌트들을 참조하여 기술된다.FIG. 6 is a block flow diagram illustrating amethod 250 of processing a payment request received from a merchant device 120, in accordance with certain exemplary embodiments, as referenced inblock 250. Themethod 250 is described with reference to the components shown in FIG.

블록(610)에서, 사용자 디바이스(110)는 머천트 디바이스(120)로부터 지불 요청을 수신한다.Atblock 610, the user device 110 receives a payment request from the merchant device 120.

블록(620)에서, 사용자 디바이스(110)는 머천트 디바이스(120)로부터 수신된 지불 요청 상에 표시된 금액에 대한 인출 레코드를 생성한다. 예시적인 실시예에서, 인출 레코드는 지불 요청 내에 수신된 정보(예를 들면, 머천트 또는 머천트 디바이스(120)에 대한 신원, 지불 요청 금액 및 타임스탬프)를 포함한다. 다른 예시적인 실시예에서, 인출 레코드는 사용자 디바이스(110)의 신원, 사용자의 신원, 및/또는 사용자의 계정 관리 시스템(130) 계정의 신원을 포함한다. 다른 예시적인 실시예에서, 사용자는 인출 레코드가 만들어지기 전에 또는 만들어지는 동안, 어플리케이션(115)을 사용하여 지불 요청 금액을 변경할 수 있다.Atblock 620, the user device 110 generates a withdrawal record for the amount indicated on the payment request received from the merchant device 120. [ In an exemplary embodiment, the retrieval record includes information received within the payment request (e.g., identity to the merchant or merchant device 120, payment request amount and timestamp). In another exemplary embodiment, the retrieval record includes the identity of the user device 110, the identity of the user, and / or the identity of the user's account management system 130 account. In another exemplary embodiment, the user may change the amount of the payment request using the application 115, before or while the withdrawal record is created.

블록(630)에서, 사용자 디바이스(110)는 인출 레코드에 서명한다. 예시적인 실시예에서, 계정 인증서(112) 개인 키를 통해 인출 레코드가 서명된다. 예시적인 실시예에서, 인출 레코드는 머천트 디바이스(120)로 하여금 계정 정보(예를 들면, 계정 관리 시스템(130) 계정)가 사용자에게 속하고 상기 계정 정보가 오프라인 지불 거래에서 사용되기 위해 인증됨을 검증하도록 하기 위해, 사용자 디바이스(110) 또는 어플리케이션(115)에 의해 서명된다.Atblock 630, the user device 110 signs the withdrawal record. In an exemplary embodiment, the withdrawal record is signed through the account certificate 112 private key. In an exemplary embodiment, the withdrawal record allows the merchant device 120 to verify that the account information (e.g., account management system 130 account) belongs to the user and that the account information is authenticated for use in an offline payment transaction Signed by the user device 110 or the application 115, for example.

블록(640)에서, 사용자 디바이스(110)는 계정 관리 시스템(130)에 의해 서명된 최근 잔액 증명서(113)를 검색한다. 예시적인 실시예에서, 잔액 증명서(113)는 머천트 디바이스(120)로부터 지불 요청이 수신된 이후 언제든지 검색된다. 예시적인 실시예에서, 사용자 디바이스(120)는 잔액 증명서(113)에 의해 개시된 오프라인 지불 거래를 위해 이용가능한 펀드들의 금액과 지불 요청 금액을 상호-참조함으로써, 오프라인 지불 거래에 대한 펀드들의 이용가능성을 확인한다. 다른 예시적인 실시예에서, 사용자 디바이스(110)는 오프라인 지불 거래를 위해 이용가능한 펀드들의 금액에 배치된 임의의 규칙들 또는 제한들을 검토하였고, 지불 거래가 이러한 규칙들을 만족하는지 결정한다.Atblock 640, the user device 110 retrieves the mostrecent balance certificate 113 signed by the account management system 130. In an exemplary embodiment,balance certificate 113 is retrieved any time after a payment request is received from merchant device 120. [ In an exemplary embodiment, the user device 120 correlates the availability of the funds for off-line payment transactions by cross-referencing the amount of funds available and the amount of money requested for an off-line payment transaction initiated by thebalance certificate 113 Check. In another exemplary embodiment, the user device 110 has reviewed any rules or restrictions placed on the amount of funds available for off-line payment transactions and determines whether the payment transaction satisfies these rules.

블록(650)에서, 사용자 디바이스(110)는 지불 요청에 대한 응답을 머천트 디바이스(120)에 전송한다. 예시적인 실시예에서, 상기 응답은 서명된 인출 레코드 및 서명된 잔액 증명서(113)를 포함한다. 예시적인 실시예에서, 지불 요청에 대한 응답은 사용자 디바이스(110)와 머천트 디바이스(120) 사이의 보안 통신 채널을 통해 전송된다.Atblock 650, the user device 110 sends a response to the payment request to the merchant device 120. In an exemplary embodiment, the response includes a signed withdrawal record and a signedbalance certificate 113. In an exemplary embodiment, the response to the payment request is sent over a secure communication channel between the user device 110 and the merchant device 120.

그 후 방법(250)은 도 2의 블록(260)으로 진행한다.Themethod 250 then proceeds to block 260 of FIG.

도 2로 돌아가면, 블록(260)에서, 머천트 디바이스(120)는 사용자 디바이스(110)로부터 수신된 지불 요청에 대한 응답을 검증한다. 사용자 디바이스(110)로부터 수신된 지불 요청에 대한 응답을 검증하는 방법(260)은 도 7에 기술된 방법들을 참조하여 이 후 더 자세히 기술된다.Returning to Figure 2, atblock 260, the merchant device 120 verifies the response to the payment request received from the user device 110. Amethod 260 for verifying a response to a payment request received from the user device 110 is described in further detail below with reference to the methods described in FIG.

도 7은 블록(260)에서 참조된 바와 같은, 특정 예시적인 실시예들에 따른, 사용자 디바이스(110)로부터 수신된 지불 요청에 대한 응답을 검증하는 방법(260)을 도시하는 블록 흐름도이다. 방법(260)은 도 1에 도시된 컴포넌트들을 참조하여 기술된다.FIG. 7 is a block flow diagram illustrating amethod 260 for verifying a response to a payment request received from a user device 110, according to certain illustrative embodiments, as referenced inblock 260. Themethod 260 is described with reference to the components shown in FIG.

블록(710)에서, 머천트 디바이스(120)는 사용자 디바이스(110)로부터 지불 요청에 대한 응답을 수신한다. 예시적인 실시예에서, 상기 응답은 서명된 인출 레코드 및 서명된 잔액 증명서(113)를 포함한다.Atblock 710, the merchant device 120 receives a response to the payment request from the user device 110. In an exemplary embodiment, the response includes a signed withdrawal record and a signedbalance certificate 113.

블록(720)에서, 머천트 디바이스(120)는 인출 레코드를 검증한다. 예시적인 실시예에서, 머천트 디바이스(120)는 계정 인증서 공개 키(112a)를 사용하여 서명된 인출 레코드를 검증한다. 본 실시예에서, 머천트 디바이스(120)로 전송 이전에, 인출 레코드는 사용자 디바이스(110) 상의 계정 인증서(112)에 의해 서명된다. 머천트 디바이스(120)는 사용자 디바이스(110), 사용자, 및/또는 사용자의 계정 관리 시스템(130) 계정의 신원을 확인하기 위해 인출 레코드 상의 시그니쳐를 검증한다.Atblock 720, the merchant device 120 verifies the fetch record. In an exemplary embodiment, the merchant device 120 verifies the signed withdrawal record using the account certificate public key 112a. In this embodiment, prior to transmission to the merchant device 120, the withdrawal record is signed by the account certificate 112 on the user device 110. The merchant device 120 verifies the signature on the retrieval record to verify the identity of the user device 110, the user, and / or the user's account management system 130 account.

만일 인출 레코드가 검증되지 않았다면, 방법(260)은 도 7의 블록(730)으로 진행한다. 블록(730)에서, 오프라인 지불 거래는 거절된다. 예시적인 실시예에서, 머천트 디바이스(120)는 거절된 거래의 통지를 사용자 디바이스(110)로 전송한다.If the fetch record has not been verified, themethod 260 proceeds to block 730 of FIG. Atblock 730, the offline payment transaction is rejected. In an exemplary embodiment, the merchant device 120 sends a notification of the rejected transaction to the user device 110.

도 7의 블록(720)으로 돌아가면, 만일 인출 레코드가 검증되면, 방법(260)은 도 7의 블록(740)으로 진행한다. 블록(740)에서, 머천트 디바이스(120)는 잔액 증명서(113)를 검증한다. 예시적인 실시예에서, 머천트 디바이스(120)는 잔액 증명서 공개 키(113a)를 사용하여 서명된 잔액 증명서(113)를 검증한다.Returning to block 720 of FIG. 7, if the fetch record is verified, themethod 260 proceeds to block 740 of FIG. Atblock 740, the merchant device 120 verifies thebalance certificate 113. In an exemplary embodiment, the merchant device 120 verifies the signedbalance certificate 113 using the balance certificate public key 113a.

본 실시예에서, 사용자 디바이스(110)로 전송 이전에, 잔액 증명서(113)는 계정 관리 시스템(130)에 의해 서명된다. 서명된 잔액 증명서(113)는 지불 요청에 응답하여 인출 레코드와 함께 머천트 디바이스(120)에 전송된다. 머천트 디바이스(120)는 오프라인 지불 거래를 완료하기 위한 펀드들의 이용가능성을 확인하기 위해 잔액 증명서(113) 상의 시그니쳐를 검증한다. 예시적인 실시예에서, 머천트 디바이스(120)는 잔액 증명서(113)가 만료되지 않음 그리고/또는 잔액 증명서 상에 배치된 임의의 다른 제한들(예를 들면, 지리적 제한들, 머천트 제한들, 또는 다른 기능적인 제한들)이 만족되었음을 검증한다.In this embodiment, prior to transmission to the user device 110, thebalance certificate 113 is signed by the account management system 130. The signedbalance certificate 113 is transmitted to the merchant device 120 together with the withdrawal record in response to the payment request. The merchant device 120 verifies the signature on thebalance certificate 113 to confirm availability of the funds to complete the offline payment transaction. In an exemplary embodiment, the merchant device 120 is configured to determine that thebalance certificate 113 has not expired and / or that has been placed on the balance certificate (e.g., geographic constraints, merchant constraints, Functional constraints) are satisfied.

만일 잔액 증명서(113)가 검증되지 않았다면, 방법(260)은 도 7의 블록(750)으로 진행한다. 블록(750)에서, 오프라인 지불 거래는 거절된다. 예시적인 실시예에서, 머천트 디바이스(120)는 거절된 거래의 통지를 사용자 디바이스(110)로 전송한다.If thebalance certificate 113 has not been verified, themethod 260 proceeds to block 750 of FIG. Atblock 750, the offline payment transaction is rejected. In an exemplary embodiment, the merchant device 120 sends a notification of the rejected transaction to the user device 110.

도 7의 블록(740)으로 돌아가서, 만일 잔액 증명서(113)가 검증되었다면, 방법(260)은 도 7의 블록(760)으로 진행한다. 블록(760)에서, 머천트 디바이스(120)는 오프라인 지불 거래를 완료하기 위해 펀드들의 이용가능성을 검증한다. 예시적인 실시예에서, 머천트 디바이스(120)는 잔액 증명서(113)로부터 이용가능한 펀드들을 판독한다. 예시적인 실시예에서, 머천트 디바이스(120)는 이용가능한 펀드들 상에 위치한 임의의 규칙들을 통해 오프라인 지불 거래 컴파일들(offline payment transaction complies)을 검증한다.Returning to block 740 of FIG. 7, if thebalance certificate 113 has been verified, themethod 260 proceeds to block 760 of FIG. Atblock 760, the merchant device 120 verifies the availability of the funds to complete the off-line payment transaction. In an exemplary embodiment, the merchant device 120 reads the available funds from thebalance certificate 113. [ In an exemplary embodiment, merchant device 120 verifies offline payment transaction complies via any rules located on available funds.

만일 오프라인 지불 거래를 위한 충분한 펀드들이 이용가능 하지 않는다면, 방법(260)은 도 7의 블록(770)으로 진행한다. 블록(770)에서, 머천트 디바이스(120) 및/또는 사용자 디바이스(110)는 펀드들의 잔액의 일부분이 록킹되었는지 여부 또는 오프라인 지불 거래 동안 사용하기 위해 이용할 수 없는지 여부를 결정한다. 예시적인 실시예에서, 잔액 증명서(113)는 펀드들의 일부분이 록킹되었다는 표시를 포함한다.If not enough funds are available for an offline payment transaction, themethod 260 proceeds to block 770 of FIG. Atblock 770, merchant device 120 and / or user device 110 determine whether a portion of the funds' balance is locked or unavailable for use during an offline payment transaction. In an exemplary embodiment, thebalance certificate 113 includes an indication that a portion of the funds is locked.

만일 펀드들의 잔액의 일부분이 록킹되지 않았다면, 방법(260)은 도 7의 블록(775)로 진행한다. 블록(775)에서, 오프라인 지불 거래를 거절된다. 예시적인 실시예에서, 머천트 디바이스(120)는 거절된 거래의 통지를 사용자 디바이스(110)로 전송한다.If a portion of the remaining funds of the funds has not been locked, themethod 260 proceeds to block 775 of FIG. Atblock 775, the offline payment transaction is rejected. In an exemplary embodiment, the merchant device 120 sends a notification of the rejected transaction to the user device 110.

도 7의 블록(770)으로 돌아가서, 만일 펀드들의 잔액의 일부분이 록킹되거나 오프라인 지불 거래 동안 사용하기 위해 이용할 수 없다면, 방법(260)은 도 7의 블록(780)으로 진행한다. 블록(780)에서, 사용자는 펀드들의 일부분을 언록킹하기 위해, 계정 관리 시스템(130)에 대한 요청을 허가한다. 예시적인 실시예에서, 언록킹 펀드들에 대한 요청은 오직 사용자 디바이스(110)가 네트워크(140) 연결을 가진 경우에만 계정 관리 시스템(130)에 전송된다. 본 실시예에서, 추가적인 펀드들이 언록킹될 때까지 거래는 거절된다.Returning to block 770 of FIG. 7, if a portion of the balances of the funds are locked or unavailable for use during an offline payment transaction, themethod 260 proceeds to block 780 of FIG. Atblock 780, the user grants a request to the account management system 130 to unlock a portion of the funds. In an exemplary embodiment, the request for unlocking funds is sent to the account management system 130 only if the user device 110 has anetwork 140 connection. In this embodiment, the transaction is refused until additional funds are unlocked.

그 후 방법(260)은 도 3의 블록(310)으로 진행하고, 사용자 디바이스(110)는 언록킹 펀드들을 가진 새로운 잔액 증명서(113)를 요청한다.Themethod 260 then proceeds to block 310 of Figure 3 and the user device 110 requests anew balance certificate 113 with unlocking funds.

도 7의 블록(760)으로 돌아가서, 만일 오프라인 지불 거래를 위한 충분한 펀드들이 이용가능하다면, 방법(260)은 도 7의 블록(790)으로 진행한다. 블록(790)에서, 머천트 디바이스(120)는 오프라인 지불 거래를 허가한다.Returning to block 760 of FIG. 7, if sufficient funds are available for an offline payment transaction, themethod 260 proceeds to block 790 of FIG. Atblock 790, the merchant device 120 authorizes an offline payment transaction.

그 후 방법(260)은 도 2의 블록(270)으로 진행한다.Themethod 260 then proceeds to block 270 of FIG.

도 2로 돌아가면, 블록(270)에서, 계정 관리 시스템(130)은 인출 레코드를 검증한다. 인출 레코드를 검증하는 방법(270)은 도 8에 기술된 방법들을 참조하여 이후 더 자세히 기술된다.Returning to FIG. 2, atblock 270, the account management system 130 verifies the withdrawal record. Themethod 270 of verifying the fetch record is described in more detail below with reference to the methods described in FIG.

도 8은 블록(270)에서 참조된 바와 같은, 특정 예시적인 실시예들에 따른, 인출 레코드를 검증하는 방법(270)을 도시하는 블록 흐름도이다. 방법(270)은 도 1에 도시된 컴포넌트들을 참조하여 기술된다.FIG. 8 is a block flow diagram illustrating amethod 270 for verifying a fetch record, according to certain exemplary embodiments, as referenced inblock 270. Themethod 270 is described with reference to the components shown in FIG.

블록(810)에서, 머천트 디바이스(120)는 머천트 디바이스 서명 인증서(124)를 통해 인출 레코드에 서명한다. 예시적인 실시예에서, 머천트 디바이스(120)는 인출 레코드를 검증 한 이후 오프라인 지불 거래를 허가하였고, 잔액 증명서(113)를 검증하였고, 그리고 오프라인 지불 거래를 위한 충분한 펀드들이 있음을 결정하였다. 본 실시예에서, 머천트 디바이스(120)는 거래를 허가하기 위해 인출 레코드에 서명한다. 다른 예시적인 실시예에서, 머천트 디바이스(120)는 또는 사용자 디바이스(110)에게 거래가 성공적임을 표시하는 상태 코드 또는 메시지를 생성한다.Atblock 810, the merchant device 120 signs the withdrawal record via the merchantdevice signing certificate 124. In an exemplary embodiment, merchant device 120 has authorized offline payment transactions after verifying the withdrawal record, verifiedbalance certificate 113, and determined that there are sufficient funds for offline payment transactions. In this embodiment, the merchant device 120 signs the withdrawal record to authorize the transaction. In another exemplary embodiment, the merchant device 120 generates a status code or message indicating to the user device 110 that the transaction is successful.

블록(815)에서, 머천트 디바이스(120)는 서명된 인출 레코드를 사용자 디바이스(110)에 전송한다. 예시적인 실시예에서, 서명된 인출 레코드는 사용자 디바이스(110)와 머천트 디바이스(120) 사이의 보안 통신 채널을 통해 전송된다. 예시적인 실시예에서, 사용자 디바이스(110)로의 서명된 인출 레코드의 전송은 오프라인 지불 거래를 완료시킨다. 다른 예시적인 실시예에서, 머천트 디바이스(120)는 사용자 디바이스(110)에게 거래가 성공적임을 표시하는 상태 코드 또는 메시지를 전송한다.Atblock 815, the merchant device 120 sends the signed fetch record to the user device 110. In an exemplary embodiment, the signed withdrawal record is transmitted over a secure communication channel between the user device 110 and the merchant device 120. In an exemplary embodiment, the transmission of the signed withdrawal record to the user device 110 completes the offline payment transaction. In another exemplary embodiment, the merchant device 120 sends a status code or message to the user device 110 indicating that the transaction is successful.

블록(820)에서, 머천트 디바이스는 네트워크(140) 액세스를 가졌는지 여부를 결정한다. 예시적인 실시예에서, 머천트 디바이스(120)는 계정 관리 시스템(130)과 통신하기 위해 네트워크(140) 액세스를 요구한다.Atblock 820, the merchant device determines whether it hasnetwork 140 access. In an exemplary embodiment, merchant device 120 requiresnetwork 140 access to communicate with account management system 130.

만일 머천트 디바이스(120)가 네트워크(140) 액세스를 가지지 않았다면, 방법(270)은 도 8의 블록(830)으로 진행한다. 블록(830)에서, 머천트 디바이스(120)는 네트워크(140) 액세스를 가질 때까지 인출 레코드를 저장한다.If the merchant device 120 did not havenetwork 140 access, themethod 270 proceeds to block 830 of FIG. Atblock 830, the merchant device 120 stores the fetch record until it hasnetwork 140 access.

도 8의 블록(820)으로 돌아가서, 만일 머천트 디바이스(120)가 네트워크(140) 액세스를 가지거나, 또는 일단 네트워크(140) 액세스가 이용가능하다면, 방법(270)은 도 8의 블록(840)으로 진행한다. 블록(840)에서, 머천트 디바이스(120)는 인출 레코드를 계정 관리 시스템(130)에 전송한다. 예시적인 실시예에서, 인출 레코드는 머천트 디바이스 서명 인증서(123)에 의해 서명된다. 다른 예시적인 실시예에서, 인출 레코드는 지불 요청에 응답하여 사용자 디바이스(110)로부터 수신된 동일한 인출 레코드이다.Returning to block 820 of FIG. 8, if the merchant device 120 has access to thenetwork 140, or once thenetwork 140 access is available, themethod 270 proceeds to block 840 of FIG. . Atblock 840, the merchant device 120 transfers the withdrawal record to the account management system 130. In the exemplary embodiment, the withdrawal record is signed by the merchant device signing certificate 123. In another exemplary embodiment, the retrieval record is the same retrieval record received from the user device 110 in response to the payment request.

블록(850)에서, 계정 관리 시스템(130)은 머천트 디바이스(120)로부터 인출 레코드를 수신한다.Atblock 850, the account management system 130 receives an outgoing record from the merchant device 120.

블록(860)에서, 계정 관리 시스템(130)은 인출 레코드를 검증한다. 예시적인 실시예에서, 계정 관리 시스템(130)은 머천트 디바이스 서명 인증서 공개 키(124a)를 사용하여 인출 레코드를 검증한다. 본 실시예에서, 계정 관리 시스템(130)은 인출 레코드 및/또는 머천트 디바이스(120)의 신원 또는 유효성을 검증한다. 다른 예시적인 실시예에서, 머천트 디바이스(120)는 인출 레코드와 함께 식별자 또는 메시지를 전송한다. 본 실시예에서, 계정 관리 시스템(130)은 머천트 디바이스(120)의 신원을 확인함으로써 인출 레코드를 검증한다. 다른 예시적인 실시예에서, 계정 관리 시스템(130)은 사용자 또는 사용자 디바이스(110)의 신원을 검증함으로써 인출 레코드를 검증한다.Atblock 860, the account management system 130 verifies the withdrawal record. In an exemplary embodiment, the account management system 130 uses the merchant device signature certificate public key 124a to verify the fetch record. In this embodiment, the account management system 130 verifies the identity or validity of the withdrawal record and / or merchant device 120. In another exemplary embodiment, the merchant device 120 transmits an identifier or message along with the retrieval record. In this embodiment, the account management system 130 verifies the withdrawal record by verifying the identity of the merchant device 120. In another exemplary embodiment, the account management system 130 verifies the fetch record by verifying the identity of the user or user device 110. [

만일 인출 레코드 검증이 실패하면, 방법(270)은 도 8의 블록(870)으로 진행한다. 블록(870)에서, 오프라인 거래를 거절된다. 예시적인 실시예에서, 계정 관리 시스템(130)은 거절된 거래의 통지를 머천트 디바이스(120)에 전송한다.If the fetch record verification fails, themethod 270 proceeds to block 870 of FIG. At block 870, the offline transaction is denied. In an exemplary embodiment, the account management system 130 sends a notification of the rejected transaction to the merchant device 120.

도 8의 블록(860)으로 돌아가서, 만일 인출 레코드 검증을 통과하였다면, 방법(270)은 도 8의 블록(880)으로 진행한다. 블록(880)에서, 계정 관리 시스템(130)은 사용자의 계정 관리 시스템(130) 계정 내 인출 레코드를 기록한다. 예시적인 실시예에서, 인출 레코드는 사용자, 사용자 디바이스(110) 및/또는 사용자의 계정 관리 시스템(130) 계정의 신원을 포함한다. 본 실시예에서, 계정 관리 시스템은 머천트 디바이스(120)로부터 수신된 인출 레코드를 통해 사용자의 계정을 업데이트 한다.Returning to block 860 of FIG. 8, if the export record verification has been passed, themethod 270 proceeds to block 880 of FIG. Atblock 880, the account management system 130 records the withdrawal record in the user's account management system 130 account. In the exemplary embodiment, the retrieval record includes the identity of the user, the user device 110 and / or the user's account management system 130 account. In this embodiment, the account management system updates the user's account via the withdrawal record received from the merchant device 120. [

예시적인 실시예에서, 사용자 디바이스(110)는 머천트 디바이스(120)가 인출 레코드를 계정 관리 시스템(130)에 전송하기 이전 또는 이후에 새로운 잔액 증명서(113)를 요청한다. 본 실시예에서, 사용자 디바이스(110)는 서명된 인출 레코드를 계정 관리 시스템(130)에 전송한다. 계정 관리 시스템(130)은 사용자의 계정 관리 시스템(130) 계정 내에 동일한 오프라인 지불 거래에 대해 수신된 2개의 인출 레코드들을 기록한다. 예시적인 실시예에서, 상기 2개의 인출 레코드들은 사용자의 계정 내 펀드들의 잔액의 유효성을 검증하기 위해 사용된다.In an exemplary embodiment, the user device 110 requests anew balance certificate 113 before or after the merchant device 120 sends the withdrawal record to the account management system 130. In this embodiment, the user device 110 sends a signed withdrawal record to the account management system 130. The account management system 130 records the two withdrawal records received for the same offline payment transaction within the user's account management system 130 account. In an exemplary embodiment, the two withdrawal records are used to validate the balance of the funds in the user's account.

예시적인 시스템들Exemplary systems

도 9는 특정 예시적 실시예들에 따르는 컴퓨팅 머신(2000) 및 모듈(2050)을 도시한다. 컴퓨팅 머신(2000)은 본 명세서에 제시된 임의의 다양한 컴퓨터들, 서버들, 모바일 디바이스들, 임베디드 시스템들 또는 컴퓨팅 시스템들에 대응한다. 모듈(2050)은 본 명세서에 제시된 기능들을 프로세싱하고 다양한 방법들을 수행하는 것에서 컴퓨팅 머신(2000)을 지원하도록 구성된 하나 이상의 하드웨어 또는 소프트웨어 엘리먼트들을 포함한다. 컴퓨팅 머신(2000)은 프로세서(2010), 시스템 버스(2020), 시스템 메모리(2030), 저장 미디어(2040), 입력/출력 인터페이스(2060) 및 네트워크(2080)와 통신하기 위한 네트워크 인터페이스(2070)와 같은 다양한 내부적 또는 부착된 컴포넌트들을 포함한다.FIG. 9 illustrates acomputing machine 2000 and a module 2050 in accordance with certain exemplary embodiments. Thecomputing machine 2000 corresponds to any of a variety of computers, servers, mobile devices, embedded systems, or computing systems described herein. The module 2050 includes one or more hardware or software elements configured to support thecomputing machine 2000 in processing the functions presented herein and performing various methods. Thecomputing machine 2000 includes a processor 2020, a system bus 2020, asystem memory 2030, astorage medium 2040, an input /output interface 2060 and anetwork interface 2070 for communicating with thenetwork 2080. [ , ≪ / RTI > and the like.

컴퓨팅 머신(2000)은 통상적 컴퓨터 시스템, 임베디드 컨트롤러, 랩톱, 서버, 모바일 디바이스, 스마트폰, 셋톱 박스, 키오스크, 차량형 정보 시스템, 텔레비전과 관련된 하나 이상의 프로세서들, 커스터마이징된 기계, 임의의 기타 하드웨어 플랫폼 또는 그것들의 임의의 조합 또는 다수로서 구현된다. 컴퓨팅 머신(2000)은 데이터 네트워크 또는 버스 시스템을 통해 상호 연결된 다수의 컴퓨팅 머신들을 사용하여 기능하도록 구성된 분산 시스템이다.Thecomputing machine 2000 may be a general purpose computer system, an embedded controller, a laptop, a server, a mobile device, a smartphone, a set top box, a kiosk, a vehicle type information system, one or more processors associated with a television, Or any combination or plurality of them. Thecomputing machine 2000 is a distributed system configured to function using a plurality of computing machines interconnected via a data network or bus system.

프로세서(2010)는 본 명세서에 기술된 동작들 및 기능을 수행하고, 요청 플로우 및 주소 맵핑들을 관리하고, 계산들을 수행하고 명령들을 생성하기 위해 코드 또는 명령들을 실행하도록 구성된다. 프로세서(2010)는 컴퓨팅 머신(2000)에서 컴포넌트들의 동작을 모니터링하고 제어하도록 구성된다. 프로세서(2010)는 범용 프로세서, 프로세서 코어, 멀티프로세서, 재설정가능한 프로세서, 마이크로컨트롤러, DSP(digital signal processor), ASIC(application specific integrated circuit), GPU(graphics processing unit), FPGA(field programmable gate array), PLD(programmable logic device), 컨트롤러, 스테이트 머신, 게이트 로직, 이산 하드웨어 컴포넌트들, 임의의 기타 프로세싱 유닛 또는 그것들의 임의의 조합 또는 다수이다. 프로세서(2010)는 단일의 프로세싱 유닛, 다수의 프로세싱 유닛들, 단일의 프로세싱 코어, 다수의 프로세싱 코어들, 전용 프로세싱 코어들, 공동-프로세서들, 또는 그것들의 임의의 조합이다. 특정 실시예들에 따르면, 컴퓨팅 머신(2000)의 다른 컴포넌트들과 함께 프로세서(2010)는 하나 이상의 다른 컴퓨팅 머신들 내에서 실행하는 가상화된 컴퓨팅 머신이다.Processor 2010 is configured to perform the operations and functions described herein, to manage request flow and address mappings, to perform calculations, and to execute code or instructions to generate instructions. Theprocessor 2010 is configured to monitor and control the operation of components in thecomputing machine 2000. Theprocessor 2010 may be a general purpose processor, a processor core, a multiprocessor, a reconfigurable processor, a microcontroller, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a graphics processing unit (GPU) , A PLD (programmable logic device), a controller, a state machine, a gate logic, discrete hardware components, any other processing unit, or any combination or plurality of them.Processor 2010 is a single processing unit, multiple processing units, a single processing core, multiple processing cores, dedicated processing cores, co-processors, or any combination thereof. According to certain embodiments,processor 2010 with other components ofcomputing machine 2000 is a virtualized computing machine executing within one or more other computing machines.

시스템 메모리(2030)는 ROM(read-only memory), PROM(programmable read-only memory), EPROM(erasable programmable read-only memory), 플래시 메모리 또는 인가된 전원으로 또는 전원 없이 프로그램 명령들 또는 데이터를 저장할 수 있는 임의의 기타 디바이스와 같은 비-휘발성 메모리들을 포함한다. 또한 시스템 메모리(2030)는 RAM(random access memory), SRAM(static random access memory), DRAM(dynamic random access memory) 및 SDRAM(synchronous dynamic random access memory)와 같은 휘발성 메모리들을 포함한다. 시스템 메모리(2030)는 단일의 메모리 모듈 또는 다수의 메모리 모듈들을 사용하여 구현된다. 시스템 메모리(2030)는 컴퓨팅 머신(2000)의 부분으로서 도시되었지만, 통상의 기술자는 시스템 메모리(2030)가 본 발명의 범위로부터 벗어남 없이 컴퓨팅 머신(2000)으로부터 분리될 수 있다는 것을 인식할 것이다. 또한, 시스템 메모리(2030)는 저장 미디어(2040)와 같은 비-휘발성 저장 디바이스를 포함하거나, 그와 함께 동작한다는 것을 인식해야 한다.Thesystem memory 2030 may store program instructions or data, such as in a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM) Non-volatile memories such as any other device that may be used. Thesystem memory 2030 also includes volatile memories such as random access memory (RAM), static random access memory (SRAM), dynamic random access memory (DRAM), and synchronous dynamic random access memory (SDRAM). Thesystem memory 2030 is implemented using a single memory module or a plurality of memory modules. Althoughsystem memory 2030 is shown as part ofcomputing machine 2000, one of ordinary skill in the art will recognize thatsystem memory 2030 can be isolated from computingmachine 2000 without departing from the scope of the present invention. It should also be appreciated that thesystem memory 2030 includes, or is operative with, non-volatile storage devices, such as thestorage medium 2040.

저장 미디어(2040)는 하드 디스크, 플로피 디스크, CD-ROM, DVD, 블루-레이 디스크, 자기 테이프, 플래시 메모리, 기타 비-휘발성 메모리 디바이스, SSD, 임의의 자기적 저장 디바이스, 임의의 광학적 저장 디바이스, 임의의 전기적 저장 디바이스, 임의의 반도체 저장 디바이스, 임의의 물리-기반 저장 디바이스, 임의의 기타 데이터 저장 디바이스 또는 그것들의 임의의 조합 또는 다수를 포함한다. 저장 미디어(2040)는 하나 이상의 운영 체제, 어플리케이션 프로그램들 및 모듈(2050)과 같은 프로그램 모듈들, 데이터 또는 임의의 기타 정보를 저장한다. 저장 미디어(2040)는 컴퓨팅 머신(2000)의 일부이거나 또는 그와 연결된다. 또한 저장 미디어(2040)는 서버들, 데이터베이스 서버들, 클라우드 스토리지, NAS(network attached storage) 등과 같은 컴퓨팅 머신(2000)과 통신하는 하나 이상의 다른 컴퓨팅 머신들의 일부이다.Thestorage medium 2040 may be any type of storage medium such as a hard disk, floppy disk, CD-ROM, DVD, Blu-ray disk, magnetic tape, flash memory, other non-volatile memory devices, SSD, , Any electrical storage device, any semiconductor storage device, any physical-based storage device, any other data storage device, or any combination or plurality of them.Storage medium 2040 stores one or more operating systems, application programs and program modules, such as module 2050, data or any other information. Thestorage media 2040 is part of or connected to thecomputing machine 2000. Thestorage media 2040 is also part of one or more other computing machines that communicate withcomputing machines 2000, such as servers, database servers, cloud storage, network attached storage (NAS)

모듈(2050)은 컴퓨팅 머신(2000)가 본 명세서에 제시된 기능들을 프로세싱하고 다양한 방법들을 수행하는 것을 지원하도록 구성된 하나 이상의 하드웨어 또는 소프트웨어 엘리먼트들을 포함한다. 모듈(2050)은 시스템 메모리(2030), 저장 미디어(2040) 또는 둘 다와 관련된 소프트웨어 또는 펌웨어로서 저장된 하나 이상의 명령들의 시퀀스들을 포함한다. 그러므로 저장 미디어(2040)는 명령들 또는 코드가 프로세서(2010)에 의한 실행을 위해 저장되는 기계 또는 컴퓨터 판독가능 매체의 예시들을 나타낸다. 기계 또는 컴퓨터 판독가능 매체는 일반적으로 프로세서(2010)에 명령들을 제공하는데 사용되는 임의의 매체 또는 매체들을 지칭한다. 모듈(2050)과 관련된 상기 기계 또는 컴퓨터 판독가능 매체는 컴퓨터 소프트웨어 제품을 포함한다. 또한, 모듈(2050)을 포함하는 컴퓨터 소프트웨어 제품은 모듈(2050)을 네트워크(2080), 임의의 신호-베어링 매체 또는 임의의 기타 통신 또는 전달 기술을 통해 컴퓨팅 머신(200)에 전달하기 위한 하나 이상의 프로세스들 또는 방법들과 관련된다는 것이 인식되어야 한다. 또한 모듈(2050)은 하드웨어 회로들 또는, 마이크로코드 또는 FPGA또는 기타 PLD에 대한 구성 정보와 같은 하드웨어 회로들을 구성하기 위한 정보를 포함한다.The module 2050 includes one or more hardware or software elements configured to support thecomputing machine 2000 to process the functions presented herein and perform various methods. Module 2050 includes sequences of one or more instructions stored as software or firmware associated withsystem memory 2030,storage media 2040, or both.Storage media 2040 therefore represents examples of machine or computer readable media in which instructions or code are stored for execution byprocessor 2010. [ A machine or computer readable medium generally refers to any medium or medium that is used to provide instructions to theprocessor 2010. The machine or computer readable medium associated with module 2050 includes a computer software product. A computer software product including the module 2050 may also include one or more modules for transferring the module 2050 to thecomputing machine 200 via thenetwork 2080, any signal-bearing media or any other communication or delivery technology. Processes or methods described herein. The module 2050 also includes information for configuring hardware circuits or hardware circuits such as microcode or configuration information for an FPGA or other PLD.

입력/출력(I/O) 인터페이스(2060)는 하나 이상의 외부 디바이스들로부터 데이터를 수신하고, 데이터를 하나 이상의 외부 디바이스들에 보내기 위해 하나 이상의 외부 디바이스들에 연결되도록 구성된다. 또한 다양한 내부 디바이스들과 함께 상기 외부 디바이스들은 주변장치들로도 알려져 있다. I/O 인터페이스(2060)는 다양한 주변 장치들을 컴퓨팅 머신(2000) 또는 프로세서(2010)에 동작적으로 연결하기 위한 전기적 및 물리적 연결들을 포함한다. I/O 인터페이스(2060)는 주변장치들, 컴퓨팅 머신(2000) 또는 프로세서(2010) 간 데이터, 주소들, 및 제어 신호들과 통신하도록 구성된다. I/O 인터페이스(2060)는 SCSI(small computer system interface), SAS(serial-attached SCSI), 섬유 채널, PCI(peripheral component interconnect), PCIe(PCI express), 직렬버스, 병렬버스, ATA(advanced technology attached), SATA(serial ATA), USB(universal serial bus), 썬더볼트, 파이어와이어, 다양한 비디오 버스들 및 그와 유사한 것들 과 같은 임의의 표준 인터페이스를 구현하도록 구성된다. I/O 인터페이스(2060)는 단지 하나의 인터페이스 또는 버스 기술을 구현하도록 구성된다. 대안적으로 I/O 인터페이스(2060)는 다수의 인터페이스들 또는 버스 기술들을 구현하도록 구성된다. I/O 인터페이스(2060)는 시스템 버스(2020)와 함께, 또는 그 일부로서, 또는 그 전부로서 구성된다. I/O 인터페이스(2060)는 하나 이상의 외부 디바이스들, 내부 디바이스들, 컴퓨팅 머신(2000) 또는 프로세서(2010) 사이의 전송들을 버퍼링하기 위한 하나 이상의 버퍼들을 포함한다.The input / output (I / O)interface 2060 is configured to connect to one or more external devices to receive data from one or more external devices and to send the data to one or more external devices. The external devices, along with the various internal devices, are also known as peripheral devices. I /O interface 2060 includes electrical and physical connections for operatively connecting various peripheral devices to computingmachine 2000 orprocessor 2010. The I /O interface 2060 is configured to communicate data, addresses, and control signals between the peripheral devices, thecomputing machine 2000, or theprocessor 2010. The I /O interface 2060 may be any of a variety of types, including, but not limited to, a small computer system interface (SCSI), a serial-attached SCSI (SAS), a fiber channel, a peripheral component interconnect (PCI), a PCI express, attached to a serial bus, a serial ATA (SATA), a universal serial bus (USB), Thunderbolt, FireWire, various video buses, and the like. The I /O interface 2060 is configured to implement only one interface or bus technology. Alternatively, I /O interface 2060 is configured to implement multiple interfaces or bus technologies. The I /O interface 2060 is configured as part of, or as part of, the system bus 2020. I /O interface 2060 includes one or more buffers for buffering transmissions between one or more external devices, internal devices,computing machine 2000, orprocessor 2010.

I/O 인터페이스(2060)는 컴퓨팅 머신(2000)를 마우스들, 터치-스크린들, 스캐너들, 전자 디지타이저들, 센서들, 수신기들, 터치패드들, 트랙볼드, 카메라들, 마이크들, 키보드들, 임의의 기타 포인팅 디바이스들 또는 그것들의 임의의 조합을 포함하는 다양한 입력 디바이스들에 연결한다. I/O 인터페이스(2060)는 컴퓨팅 머신(2000)를 비디오 디스플레이들, 스피커들, 프린터들, 프로젝터들, 촉각적 피드백 디바이스들, 자동 제어, 로보틱 컴포넌트들, 액츄에이터들, 모터들, 팬들, 솔레노이드들, 밸브들, 펌프들, 전송기들, 신호 생략기들, 라이트들 등을 포함하는 다양한 출력 디바이스들에 연결한다.The I /O interface 2060 may be used to interface thecomputing machine 2000 with other components of thecomputing device 2000 such as mice, touch-screens, scanners, electronic digitizers, sensors, receivers, touch pads, track bolds, , Any other pointing devices, or any combination thereof. I /O interface 2060 may be used to interfacecomputing machine 2000 to video displays, speakers, printers, projectors, tactile feedback devices, automatic controls, robotic components, actuators, motors, fans, solenoids Including, for example, sensors, valves, pumps, transmitters, signal skewers, lights, and the like.

컴퓨팅 머신(2000)은 네트워크 인터페이스(2070)을 통해 하나 이상의 다른 시스템들 또는 네트워크(2080) 상의 컴퓨팅 머신들에게로 논리적 연결들을 사용하여 네트워크화된 환경에서 동작한다. 네트워크(2080)는 WAN들(wide area networks), LAN들(local area networks), 인트라넷들, 인터넷, 무선 엑세스 네트워크들, 유선 네트워크들, 모바일 네트워크들, 전화 네트워크들, 광학 네트워크들 또는 그것들의 조합들을 포함한다. 네트워크(2080)는 스위칭된 패킷, 스위칭된 회로 또는 임의의 토폴로지이고, 임의의 통신 프로토콜을 사용한다. 네트워크(2080) 내의 통신 링크들은 광섬유 케이블들, 프리-스페이스 옵틱들, 웨이브가이드들, 전기적 컨덕터들, 무선 링크들, 안테나들, 라디오-주파수 통신들 등과 같은 다양한 디지털 또는 아날로그 통신 매체를 수반한다.Thecomputing machine 2000 operates in a networked environment using logical connections to one or more other systems or computing machines on thenetwork 2080 via anetwork interface 2070. [ Thenetwork 2080 may be a wide area networks (WANs), local area networks, intranets, the Internet, wireless access networks, wired networks, mobile networks, telephone networks, optical networks, .Network 2080 is a switched packet, switched circuit or any topology, and uses any communication protocol. Communication links withinnetwork 2080 involve various digital or analog communication media such as fiber optic cables, pre-space optics, waveguides, electrical conductors, wireless links, antennas, radio-frequency communications,

프로세서(2010)는 시스템 버스(2020)를 통해 본 명세서에서 논의된 컴퓨팅 머신(2000) 또는 다양한 주변장치들의 다른 엘리먼트들에 연결된다. 시스템 버스(2020)는 프로세서(2010) 내, 프로세서(2010) 외, 또는 둘 다에 있다는 것을 인식해야만 한다. 일부 실시예들에 따르면, 임의의 프로세서(2010), 컴퓨팅 머신(2000)의 다른 엘리먼트들 또는 본 명세서에서 논의되는 다양한 주변장치들은 시스템 온 칩(SOC), 시스템 온 패키지(SOP), 또는 ASIC 디바이스와 같은 단일의 디바이스에 통합된다.Theprocessor 2010 is connected to thecomputing machine 2000 discussed herein or other elements of various peripherals via the system bus 2020. [ It should be appreciated that the system bus 2020 is within theprocessor 2010, outside theprocessor 2010, or both. According to some embodiments, any of theprocessors 2010, other elements of thecomputing machine 2000, or various peripheral devices discussed herein may be implemented as a system-on-a-chip (SOC), a system- Lt; RTI ID = 0.0 > a < / RTI >

본 명세서에서 논의된 시스템들이 사용자들에 관한 개인 정보를 수집하거나 또는 개신 정보를 사용하는 경우들에 있어서, 사용자들에게 프로그램들 또는 구성들이 사용자 정보(예를 들면, 사용자의 소셜 네트워크, 소셜 액션들 또는 활동들, 직업, 사용자의 선호들 또는 사용자의 현재 위치에 관한 정보)를 수집할 것인지 여부를 제어할, 사용자와 더 관련된 컨텐츠 서버로부터의 컨텐츠를 수신할지 및/또는 어떻게 수신할지 제어할 기회 또는 옵션이 제공된다. 추가로, 특정 데이터는 그것이 저장되거나 사용되기 전에 하나 이상의 다양한 방식들로 취급되어, 개인적으로 식별가능한 정보는 제거된다. 예를 들면, 사용자의 아이덴티티는 사용자에 대한 개인적으로 식별가능한 정보가 결정될 수 없도록 취급되거나, 또는 사용자의 지리적 위치는 위치 정보가 획득된 곳에서 일반화되어(도시, 우편번호, 또는 주 레벨로와 같이), 사용자의 특정 위치가 결정될 수 없게 된다. 따라서, 사용자는 사용자에 관한 정보가 어떻게 수집되는지 그리고 컨텐츠 서버에 의해 사용되는지에 관한 제어를 가진다.In those instances where the systems discussed herein collect personal information about users or use personal information, it may be desirable for the users to have their programs or configurations configured with user information (e.g., a user's social network, Or information about the current location of the user) that will control whether to receive content and / or how to receive content from a content server that is more related to the user, Options are provided. In addition, the specific data may be treated in one or more various ways before it is stored or used, so that the personally identifiable information is removed. For example, the identity of the user may be treated such that the personally identifiable information for the user can not be determined, or the geographic location of the user may be generalized where the location information is obtained (such as by city, zip code, ), The specific position of the user can not be determined. Thus, the user has control over how information about the user is collected and used by the content server.

실시예들은 본 명세서에 기술되고 도시된 기능들을 수록한 컴퓨터 프로그램을 포함하며, 상기 컴퓨터 프로그램은 기계-판독가능 매체에 저장된 명령들 및 명령들을 실행하는 프로세서를 포함하는 컴퓨터 시스템에서 구현된다. 그러나, 컴퓨터 프로그래밍에서 실시예들을 구현하는 많은 서로 다른 방식들이 있으며, 실시예들은 컴퓨터 프로그램 명령들의 임의의 하나의 세트에 대한 제한으로서 여겨져서는 안된다는 것은 명백하다. 게다가, 숙련된 프로그래머는 첨부된 흐름도들 및 관련된 어플리케이션 텍스트 내의 기술에 기초하여 개시된 실시예들의 실시예를 구현하기 위해 그러한 컴퓨터 프로그램을 작성할 수 있다. 그러므로, 프로그램 코드 명령들의 특정 세트의 개시는 실시예들을 어떻게 만들고 사용할지에 관한 적절한 이해를 위해 필요하지 않다고 여겨진다. 추가로, 통상의 기술자들은 본 명세서에 기술된 실시예들의 하나 이상의 양태들은 하나 이상의 컴퓨팅 시스템들에 수록된 것과 같이, 하드웨어, 소프트웨어 또는 그것들의 조합에 의해 수행될 수 있다는 것을 인식할 것이다. 게다가, 컴퓨터에 의해 수행되는 동작에 대한 임의의 참조는 하나 이상의 컴퓨터가 동작을 수행할 수 있으므로, 단일의 컴퓨터에 의해 수행되는 것으로 여겨져서는 안된다.Embodiments include a computer program embodying the functions described and illustrated herein, which computer program is embodied in a computer system comprising a processor executing instructions and instructions stored in a machine-readable medium. However, there are many different ways of implementing embodiments in computer programming, and it is clear that embodiments should not be construed as limitations on any one set of computer program instructions. In addition, a skilled programmer may write such a computer program to implement embodiments of the disclosed embodiments based on the techniques in the accompanying flow charts and associated application texts. Therefore, it is believed that the initiation of a particular set of program code instructions is not necessary for a proper understanding of how to make and use embodiments. Additionally, one of ordinary skill in the art will recognize that one or more aspects of the embodiments described herein may be implemented in hardware, software, or a combination thereof, such as those embodied in one or more computing systems. In addition, any reference to an operation performed by a computer should not be considered to be performed by a single computer, as more than one computer may perform an operation.

본 명세서에 기술된 예시적 실시예들은 본 명세서에 기술된 방법들을 수행하고 기능들을 프로세싱하는 컴퓨터 하드웨어 및 소프트웨어와 함께 사용된다. 본 명세서에 기술된 시스템들, 방법들, 및 절차들은 프로그래머블 컴퓨터, 컴퓨터 실행가능 소프트웨어 또는 디지털 회로에 수록된다. 소프트웨어는 컴퓨터 저장 매체에 저장된다. 예를 들면, 컴퓨터 판독가능 매체는 플로피 디스크, RAM, ROM, 하드 디스크, 이동식 미디어, 플래시 메모리, 메모리 스틱, 광학 미디어, 자기-광학적 미디어, CD-ROM 등을 포함한다. 디지털 회로는 집적회로들, 게이트 어레이들, 빌딩 블록 로직, FPGA 등을 포함한다.The exemplary embodiments described herein are used in conjunction with computer hardware and software to perform the methods described herein and to process functions. The systems, methods, and procedures described herein are embodied in a programmable computer, computer executable software, or digital circuitry. The software is stored on a computer storage medium. For example, the computer-readable medium may include a floppy disk, RAM, ROM, hard disk, removable media, flash memory, memory stick, optical media, magneto-optical media, CD- Digital circuits include integrated circuits, gate arrays, building block logic, FPGAs, and the like.

이전에 제시된 실시예들에서 기술된 예시적 시스템들, 방법들 및 동작들은 도시적이며, 대안적인 실시예들에서, 특정 동작들은 다양한 실시예들의 범위와 정신으로부터 벗어남 없이, 다른 순서로, 다른 것과 병렬적으로, 전체적으로 생략되어, 및/또는 서로 다른 예시적 실시예들 사이에 조합되어 수행될 수 있고 및/또는 특정 추가적인 동작들이 수행될 수 있다. 따라서, 상기 대안적 실시예들도 본 명세서의 청구된 발명에 포함되고, 청구항들의 범위는 상기 대안적인 실시예들을 포함하도록 가장 넓은 해석이 적용된다.The exemplary systems, methods, and operations described in the previously disclosed embodiments are illustrative, and in alternative embodiments, the particular acts may be performed in a different order, without departing from the scope and spirit of the various embodiments, And / or may be performed in combination between different exemplary embodiments, and / or certain additional operations may be performed. Accordingly, the foregoing alternatives are also included in the claimed invention, and the scope of the claims is to be accorded the broadest interpretation so as to cover these alternative embodiments.

비록 구체적 실시예들이 상기에 상세히 기술되었지만, 상기 기술은 단지 도시적인 목적들이다. 그러므로 상기 기술된 많은 양태들은 명시적으로 다르게 언급되지 않는 한 필요적인 또는 기본적인 엘리먼트들로서 의도되지 않았다는 것을 인식해야 한다. 상기 기술된 것들에 더하여, 후속하는 청구항들에서 정의된 실시예들의 정신과 범위로부터 벗어남 없이, 본 발명의 이익을 가지는, 예시적 실시예들의 개시된 양태들의 변경들 및 그에 대응하는 균등한 컴포넌트들 또는 동작들이 통상의 기술자에 의해 만들어질 수 있고, 청구항들의 범위는 상기 변경들 및 균등한 구조들을 포함하도록 가장 넓은 해석이 적용된다.Although specific embodiments have been described in detail above, the above description is merely illustrative. It is therefore to be appreciated that many of the aspects described above are not intended to be essential or essential elements unless expressly stated otherwise. In addition to those described above, modifications to the disclosed aspects of the illustrative embodiments and corresponding equivalent components or acts having the benefit of the present invention, without departing from the spirit and scope of the embodiments defined in the following claims, And the scope of the claims is to be accorded the broadest interpretation so as to encompass all such modifications and equivalent structures.

Claims (40)

Translated fromKorean
컴퓨터로 구현되는, 보안 오프라인 지불들을 제공하는 방법으로서,
머천트 통신 디바이스에 의해, 네트워크 액세스(network access) 없이 오프라인 지불 거래를 완료하고자 하는 소망(desire)을 나타내는 사용자에 응답하여, 사용자 모바일 통신 디바이스와의 통신 채널을 확립(establish)하는 단계와;
상기 머천트 모바일 통신 디바이스에 의해, 네트워크 액세스 없이 상기 오프라인 지불 거래를 완료하기 위해 지불 요청을 상기 사용자 모바일 통신 디바이스에 전송하는 단계와;
상기 머천트 모바일 통신 디바이스에 의해, 상기 사용자 모바일 통신 디바이스로부터 인출 레코드(withdrawal record) 및 잔액 증명서(balance certificate)를 수신하는 단계와, 상기 잔액 증명서는 상기 사용자 모바일 통신 디바이스에 의한 요청에 응답하여 계정 관리 시스템(account management system)에 의해 생성되고, 그리고 상기 잔액 증명서는 상기 오프라인 지불 거래를 위해 이용가능한 펀드들의 금액(amount of funds)을 표시하며, 상기 인출 레코드는 계정 관리 시스템 계정 식별자 및 지불 금액을 포함하고, 상기 인출 레코드는 계정 관리 시스템 계정 인증서 개인 키(account management system account certificate private key)를 사용하여 상기 사용자 모바일 통신 디바이스에 의해 서명(sign)되며;
상기 머천트 모바일 통신 디바이스에 의해, 계정 관리 시스템 계정 인증서 공개 키(account management system account certificate public key)를 사용하여 상기 사용자 모바일 통신 디바이스의 사용자의 신원(identity)을 확인함으로써 상기 인출 레코드가 유효함을 결정함과 아울러 상기 잔액 증명서를 판독(read)함으로써 상기 오프라인 지불 거래를 위한 충분한 펀드들이 이용가능함을 결정하는 단계와;
상기 머천트 모바일 통신 디바이스에 의해, 상기 인출 레코드가 유효하고 충분한 펀드들이 이용가능함을 결정하는 것에 응답하여, 상기 오프라인 지불 거래를 허가(authorizing)하는 단계와; 그리고
상기 머천트 모바일 통신 디바이스에 의해, 상기 인출 레코드를 상기 계정 관리 시스템에 전송하는 단계를 포함하고, 상기 계정 관리 시스템은 상기 오프라인 지불 거래를 반영하기 위해 상기 계정 관리 시스템에 의해 유지되는 사용자 계정을 업데이트(update)하는 것을 특징으로 하는 보안 오프라인 지불들을 제공하는 방법.
CLAIMS What is claimed is: 1. A method for providing secure, offline payments,
Establishing a communication channel with a user mobile communication device by a merchant communication device in response to a user indicating a desire to complete an offline payment transaction without network access;
Sending, by the merchant mobile communication device, a payment request to the user mobile communication device to complete the offline payment transaction without network access;
Receiving, by the merchant mobile communication device, a withdrawal record and a balance certificate from the user mobile communication device; and in response to a request by the user mobile communication device, Wherein the balance certificate is generated by an account management system and the balance certificate indicates an amount of funds available for the offline payment transaction and the withdrawal record includes an account management system account identifier and a payment amount Wherein the retrieval record is signed by the user mobile communication device using an account management system account certificate private key;
Determining, by the merchant mobile communication device, that the withdrawing record is valid by checking the identity of the user of the user mobile communication device using an account management system account certificate public key; Determining that sufficient funds are available for the off-line payment transaction by reading the balance certificate;
Authorizing the offline payment transaction by the merchant mobile communication device in response to determining that the withdrawal record is valid and sufficient funds are available; And
And sending, by the merchant mobile communication device, the withdrawal record to the account management system, wherein the account management system updates the user account maintained by the account management system to reflect the offline payment transaction update of the secure offline payments.
청구항 1에 있어서,
상기 잔액 증명서는 잔액 증명서 개인 키를 사용하여 상기 계정 관리 시스템에 의해 서명되고, 그리고 상기 머천트 모바일 통신 디바이스는 잔액 증명서 공개 키를 사용하여 상기 잔액 증명서가 유효함을 결정하는 것을 특징으로 하는 보안 오프라인 지불들을 제공하는 방법.
The method according to claim 1,
Wherein the balance certificate is signed by the account management system using a balance certificate private key and the merchant mobile communication device determines that the balance certificate is valid using a balance certificate public key. Lt; / RTI >
청구항 1에 있어서,
상기 머천트 모바일 통신 디바이스에 의해, 상기 인출 레코드 또는 상태 코드(status code)를 상기 오프라인 지불 거래가 성공적임을 표시하는 상기 사용자 모바일 통신 디바이스에 전송하는 단계를 더 포함하는 것을 특징으로 하는 보안 오프라인 지불들을 제공하는 방법.
The method according to claim 1,
Further comprising, by the merchant mobile communication device, sending the fetch record or status code to the user mobile communication device indicating that the offline payment transaction is successful Way.
청구항 3에 있어서,
상기 사용자 모바일 통신 디바이스는 네트워크 액세스가 상기 사용자 모바일 통신 디바이스에 대해 이용가능한 때, 상기 인출 레코드 또는 상태 코드를 상기 계정 관리 시스템에 전송하는 것을 특징으로 하는 보안 오프라인 지불들을 제공하는 방법.
The method of claim 3,
Wherein the user mobile communication device sends the withdrawal record or status code to the account management system when a network access is available for the user mobile communication device.
청구항 4에 있어서,
새로운 잔액 증명서를 요청하는 동안, 상기 사용자 모바일 통신 디바이스는 상기 인출 레코드 또는 상태 코드를 상기 계정 관리 시스템에 전송하는 것을 특징으로 하는 보안 오프라인 지불들을 제공하는 방법.
The method of claim 4,
And upon request of a new balance certificate, the user mobile communication device sends the withdrawal record or status code to the account management system.
청구항 1에 있어서,
상기 머천트 모바일 통신 디바이스에 의해, 서명된 인출 레코드를 상기 사용자 디바이스에 전송하기 전에, 머천트 디바이스 서명 인증서 개인 키(merchant device signing certificate private key)를 사용하여 상기 인출 레코드에 서명하는 단계를 더 포함하는 것을 특징으로 하는 보안 오프라인 지불들을 제공하는 방법.
The method according to claim 1,
Signing the withdrawal record using the merchant device signing certificate private key prior to sending the signed withdrawal record to the user device by the merchant mobile communication device Characterized in that it provides secure offline payments.
청구항 6에 있어서,
상기 계정 관리 시스템은 머천트 디바이스 서명 인증서 공개 키를 사용하여 상기 머천트 모바일 통신 디바이스의 신원을 확인함으로써 상기 서명된 인출 레코드가 유효함을 결정하는 것을 특징으로 하는 보안 오프라인 지불들을 제공하는 방법.
The method of claim 6,
Wherein the account management system determines that the signed withdrawal record is valid by verifying the identity of the merchant mobile communication device using a merchant device signature certificate public key.
청구항 1에 있어서,
상기 사용자 모바일 통신 디바이스는 상기 계정 관리 시스템에 의해 유지되는 사용자 계정에 펀드들을 디포짓(deposit)하기 위한 요청에 응답하여 상기 계정 관리 시스템으로부터 상기 잔액 증명서를 수신하는 것을 특징으로 하는 보안 오프라인 지불들을 제공하는 방법.
The method according to claim 1,
Wherein the user mobile communication device receives the balance certificate from the account management system in response to a request to deposit funds in a user account maintained by the account management system. How to.
컴퓨터 프로그램 물로서,
상기 컴퓨터 프로그램 물은 컴퓨터에 의한 실행시 상기 컴퓨터로 하여금 보안 오프라인 지불들을 제공하게 하는 컴퓨터에 의해 판독가능한 프로그램 명령어들이 수록된 비-일시적인 컴퓨터 판독 가능한 매체를 포함하며, 상기 컴퓨터에 의해 판독가능한 프로그램 명령어들은:
네트워크 액세스 없이 오프라인 지불 거래를 완료하기 위해 지불 요청을 상기 사용자 모바일 통신 디바이스에 전송하는 컴퓨터에 의해 판독가능한 프로그램 명령어와;
상기 사용자 모바일 통신 디바이스로부터 인출 레코드 및 잔액 증명서를 수신하는 컴퓨터에 의해 판독가능한 프로그램 명령어와, 상기 잔액 증명서는 상기 사용자 모바일 통신 디바이스에 의한 요청에 응답하여 계정 관리 시스템에 의해 생성되고, 그리고 상기 잔액 증명서는 상기 오프라인 지불 거래를 위해 이용가능한 펀드들의 금액을 표시하며, 상기 인출 레코드는 계정 관리 시스템 계정 식별자 및 지불 금액을 포함하고, 상기 인출 레코드는 계정 관리 시스템 계정 인증서 개인 키를 사용하여 상기 사용자 모바일 통신 디바이스에 의해 서명되며;
상기 사용자 모바일 통신 디바이스의 사용자의 신원을 확인함으로써 상기 인출 레코드가 유효함을 결정함과 아울러 상기 잔액 증명서를 판독함으로써 상기 오프라인 지불 거래를 위한 충분한 펀드들이 이용가능함을 결정하는 컴퓨터에 의해 판독가능한 프로그램 명령어와;
상기 인출 레코드가 유효하고 충분한 펀드들이 이용가능함을 결정하는 것에 응답하여, 상기 오프라인 지불 거래를 허가하는 컴퓨터에 의해 판독가능한 프로그램 명령어와; 그리고
상기 인출 레코드를 상기 계정 관리 시스템에 전송하는 컴퓨터에 의해 판독가능한 프로그램 명령어를 포함하고, 상기 계정 관리 시스템은 상기 오프라인 지불 거래를 반영하기 위해 상기 계정 관리 시스템에 의해 유지되는 사용자 계정을 업데이트하는 것을 특징으로 하는 컴퓨터 프로그램 물.
As a computer program product,
Wherein the computer program product comprises non-transitory computer readable media containing computer readable program instructions that cause the computer to provide secure off-line payments upon execution by the computer, wherein the program instructions readable by the computer :
Readable program instructions for transferring a payment request to the user mobile communication device to complete an offline payment transaction without network access;
Program instructions readable by a computer for receiving an outgoing record and balance certificate from the user mobile communication device; and balance certificate generated by an account management system in response to a request by the user mobile communication device, Wherein the withdrawal record includes an account management system account identifier and a payment amount and the withdrawal record is indicative of an amount of funds available for the offline payment transaction, Signed by the device;
Readable program instructions for determining that sufficient funds for the offline payment transaction are available by determining that the withdrawal record is valid by checking the identity of the user of the user mobile communication device and reading the balance certificate, Wow;
Computer readable program instructions for authorizing the off-line payment transaction in response to determining that the withdrawal record is valid and sufficient funds are available; And
Wherein the account management system is operable to update a user account maintained by the account management system to reflect the off-line payment transaction, Computer program.
청구항 9에 있어서,
상기 잔액 증명서는 상기 계정 관리 시스템에 의해 서명되고, 그리고 상기 머천트 모바일 통신 디바이스는 공개 키를 사용하여 상기 잔액 증명서가 유효함을 결정하는 것을 특징으로 하는 컴퓨터 프로그램 물.
The method of claim 9,
Wherein the balance certificate is signed by the account management system and the merchant mobile communication device uses the public key to determine that the balance certificate is valid.
청구항 9에 있어서,
상기 인출 레코드 또는 상태 코드를 상기 오프라인 지불 거래가 성공적임을 표시하는 상기 사용자 모바일 통신 디바이스에 전송하는 컴퓨터에 의해 판독가능한 프로그램 명령어를 더 포함하는 것을 특징으로 하는 컴퓨터 프로그램 물.
The method of claim 9,
Further comprising computer readable program instructions for transferring the fetch record or status code to the user mobile communication device indicating that the off-line payment transaction is successful.
청구항 11에 있어서,
상기 사용자 모바일 통신 디바이스는 네트워크 액세스가 상기 사용자 모바일 통신 디바이스에 대해 이용가능한 때, 상기 인출 레코드 또는 상태 코드를 상기 계정 관리 시스템에 전송하는 것을 특징으로 하는 컴퓨터 프로그램 물.
The method of claim 11,
Wherein the user mobile communication device sends the retrieval record or status code to the account management system when network access is available for the user mobile communication device.
청구항 11에 있어서,
새로운 잔액 증명서를 요청하는 동안, 상기 사용자 모바일 통신 디바이스는 상기 인출 레코드 또는 상태 코드를 상기 계정 관리 시스템에 전송하는 것을 특징으로 하는 컴퓨터 프로그램 물.
The method of claim 11,
And the user mobile communication device sends the withdrawal record or status code to the account management system while requesting a new balance certificate.
청구항 9에 있어서,
서명된 인출 레코드를 상기 사용자 디바이스에 전송하기 전에, 상기 인출 레코드에 서명하는 컴퓨터에 의해 판독가능한 프로그램 명령어를 더 포함하고, 상기 계정 관리 시스템은 상기 인출 레코드에 서명했던 상기 머천트 모바일 통신 디바이스의 신원을 확인함으로써 상기 서명된 인출 레코드가 유효함을 결정하는 것을 특징으로 하는 컴퓨터 프로그램 물.
The method of claim 9,
Further comprising program instructions readable by a computer signing the withdrawal record prior to sending the signed withdrawal record to the user device, wherein the account management system is operable to identify an identity of the merchant mobile communication device that signed the withdrawal record And determines that the signed withdrawal record is valid by verification.
보안 오프라인 지불들을 제공하는 시스템으로서,
저장 디바이스; 그리고
상기 저장 디바이스에 통신적으로 연결되는 프로세서를 포함하며, 상기 프로세서는 상기 저장 디바이스에 저장된 어플리케이션 코드 명령어들을 실행하며, 상기 명령어들은 상기 시스템으로 하여금:
네트워크 액세스 없이 오프라인 지불 거래를 완료하기 위해 지불 요청을 상기 사용자 모바일 통신 디바이스에 전송하도록 하며;
상기 사용자 모바일 통신 디바이스로부터 인출 레코드 및 잔액 증명서를 수신하도록 하며, 상기 잔액 증명서는 상기 사용자 모바일 통신 디바이스에 의한 요청에 응답하여 계정 관리 시스템에 의해 생성되고, 그리고 상기 잔액 증명서는 상기 오프라인 지불 거래를 위해 이용가능한 펀드들의 금액을 표시하며, 상기 인출 레코드는 계정 관리 시스템 계정 식별자 및 지불 금액을 포함하고, 상기 인출 레코드는 계정 관리 시스템 계정 인증서 개인 키를 사용하여 상기 사용자 모바일 통신 디바이스에 의해 서명되며;
상기 사용자 모바일 통신 디바이스의 사용자의 신원을 확인함으로써 상기 인출 레코드가 유효함을 결정함과 아울러 상기 잔액 증명서를 판독함으로써 상기 오프라인 지불 거래를 위한 충분한 펀드들이 이용가능함을 결정하도록 하며; 그리고
상기 인출 레코드가 유효하고 충분한 펀드들이 이용가능함을 결정하는 것에 응답하여, 상기 오프라인 지불 거래를 허가하도록 하는 것을 특징으로 하는 시스템.
A system for providing secure off-line payments,
A storage device; And
A processor communicatively coupled to the storage device, the processor executing application code instructions stored in the storage device, the instructions instructing the system to:
Send a payment request to the user mobile communication device to complete an offline payment transaction without network access;
Wherein the balance certificate is generated by an account management system in response to a request by the user mobile communication device and the balance certificate is generated for the offline payment transaction Wherein the withdrawal record comprises an account management system account identifier and a payment amount, the withdrawal record being signed by the user mobile communication device using an account management system account certificate private key;
Determine that sufficient funds for the offline payment transaction are available by determining that the withdrawal record is valid by checking the identity of the user of the user mobile communication device and reading the balance certificate; And
In response to determining that the withdrawal record is valid and sufficient funds are available, permitting the offline payment transaction.
청구항 15에 있어서,
상기 프로세서는 상기 저장 디바이스에 저장된 컴퓨터에 의해 실행가능한 명령어들을 실행하도록 더 구성되며, 상기 명령어들은 상기 시스템으로 하여금 상기 인출 레코드를 상기 계정 관리 시스템에 전송하도록 하며, 상기 계정 관리 시스템은 상기 오프라인 지불 거래를 반영하기 위해 상기 계정 관리 시스템에 의해 유지되는 사용자 계정을 업데이트하는 것을 특징으로 하는 시스템.
16. The method of claim 15,
Wherein the processor is further configured to execute instructions executable by a computer stored in the storage device, wherein the instructions cause the system to transfer the withdrawal record to the account management system, To update the user account maintained by the account management system.
청구항 15에 있어서,
상기 잔액 증명서는 상기 계정 관리 시스템에 의해 서명되고, 그리고 상기 머천트 모바일 통신 디바이스는 공개 키를 사용하여 상기 잔액 증명서가 유효함을 결정하는 것을 특징으로 하는 시스템.
16. The method of claim 15,
Wherein the balance certificate is signed by the account management system and the merchant mobile communication device uses the public key to determine that the balance certificate is valid.
청구항 15에 있어서,
상기 프로세서는 상기 저장 디바이스에 저장된 컴퓨터에 의해 실행가능한 명령어들을 실행하도록 더 구성되며, 상기 명령어들은 상기 시스템으로 하여금 상기 인출 레코드 또는 상태 코드를 상기 사용자 모바일 통신 디바이스에 전송하도록 하는 것을 특징으로 하는 시스템.
16. The method of claim 15,
Wherein the processor is further configured to execute instructions executable by a computer stored in the storage device, wherein the instructions cause the system to transfer the retrieval record or status code to the user mobile communication device.
청구항 18에 있어서,
상기 사용자 모바일 통신 디바이스는 네트워크 액세스가 상기 사용자 모바일 통신 디바이스에 대해 이용가능한 때, 상기 인출 레코드 또는 상태 코드를 상기 계정 관리 시스템에 전송하는 것을 특징으로 하는 시스템.
19. The method of claim 18,
Wherein the user mobile communication device sends the retrieval record or status code to the account management system when network access is available for the user mobile communication device.
청구항 19에 있어서,
새로운 잔액 증명서를 요청하는 동안, 상기 사용자 모바일 통신 디바이스는 상기 인출 레코드 또는 상태 코드를 상기 계정 관리 시스템에 전송하는 것을 특징으로 하는 시스템.
The method of claim 19,
While requesting a new balance certificate, the user mobile communication device sends the withdrawal record or status code to the account management system.
보안 오프라인 지불들을 위해 이용가능한 펀드들을 록킹(locking)하는 컴퓨터로 구현되는 방법으로서,
하나 이상의 컴퓨팅 디바이스들에 의해 그리고 사용자 모바일 컴퓨팅 디바이스로부터, 네트워크 액세스 없이 완료될 오프라인 지불 거래에서의 사용을 위해 이용가능한 펀드들의 금액을 표시하는 잔액 증명서에 대한 요청을 수신하는 단계와, 상기 요청은 계정 관리 시스템 계정 식별자를 포함하며;
상기 하나 이상의 컴퓨팅 디바이스들에 의해, 오프라인 지불 거래 중의 사용에 대해 상기 이용가능한 펀드들의 일부분이 록킹됨을 결정하는 단계와;
상기 하나 이상의 컴퓨팅 디바이스들에 의해, 상기 잔액 증명서를 생성하는 단계와, 상기 잔액 증명서는 상기 오프라인 지불 거래에서의 사용을 위해 이용가능한 상기 펀드들의 금액에서 상기 오프라인 지불 거래 중의 사용에 대해 록킹된 상기 이용가능한 펀드들의 상기 일부분을 뺀 금액을 표시하며;
상기 하나 이상의 컴퓨팅 디바이스들에 의해, 상기 잔액 증명서를 상기 사용자 모바일 통신 디바이스에 전송하는 단계와;
상기 하나 이상의 컴퓨팅 디바이스들에 의해 그리고 머천트 모바일 통신 디바이스로부터, 상기 머천트 모바일 통신 디바이스와 상기 사용자 모바일 통신 디바이스 사이의 오프라인 지불 거래에 대한 인출 레코드를 수신하는 단계와, 상기 잔액 증명서는 상기 오프라인 지불 거래에 대한 지불 요청에 응답하여 상기 사용자 모바일 통신 디바이스에 의해 상기 머천트 모바일 통신 디바이스로 전송되며, 그리고 상기 머천트 모바일 통신 디바이스는 상기 잔액 증명서를 판독함으로써 상기 오프라인 지불 거래를 위한 충분한 펀드들이 이용가능함을 결정하며; 그리고
상기 하나 이상의 컴퓨팅 디바이스들에 의해, 제2 오프라인 지불 거래에서의 사용을 위해 이용가능한 상기 펀드들의 금액을 업데이트(update)하는 단계를 포함하는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
A computer-implemented method of locking available funds for security off-line payments,
Receiving, by one or more computing devices and from a user mobile computing device, a request for a balance certificate indicative of an amount of funds available for use in an off-line payment transaction to be completed without network access; Contains the management system account identifier;
Determining, by the one or more computing devices, that a portion of the available funds is locked for use during an off-line payment transaction;
Generating a balance certificate by the one or more computing devices; and issuing, by the one or more computing devices, the balance certificate, the balance certificate being available for use in the off-line payment transaction, The amount of funds available minus the portion above;
Sending, by the one or more computing devices, the balance certificate to the user mobile communication device;
Receiving, by the one or more computing devices and from a merchant mobile communication device, a withdrawal record for an offline payment transaction between the merchant mobile communication device and the user mobile communication device; The merchant mobile communication device determines that sufficient funds for the off-line payment transaction are available by reading the balance certificate; And
And updating, by the one or more computing devices, an amount of the funds available for use in a second off-line payment transaction.
청구항 21에 있어서,
상기 이용가능한 펀드들의 상기 일부분은 미리-정의된 일정 시간(pre-defined time period) 동안 오프라인 지불 거래 중의 사용에 대해 록킹되는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
23. The method of claim 21,
Wherein the portion of the available funds is locked for use during off-line payment transactions during a pre-defined time period.
청구항 21에 있어서,
상기 이용가능한 펀드들의 상기 일부분은 지정된 위치에 대하여 오프라인 지불 거래 중의 사용에 대해 록킹되는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
23. The method of claim 21,
Wherein the portion of the available funds is locked for use during off-line payment transactions for a designated location.
청구항 21에 있어서,
상기 이용가능한 펀드들의 상기 일부분은 머천트의 지정된 타입에 대하여 오프라인 지불 거래 중의 사용에 대해 록킹되는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
23. The method of claim 21,
Wherein the portion of the available funds is locked for use during off-line payment transactions for a specified type of merchant.
청구항 21에 있어서,
상기 이용가능한 펀드들의 상기 일부분은 상기 사용자 모바일 통신 디바이스를 수반하는 오프라인 지불 거래 중의 사용에 대해 록킹되나, 제2 사용자 모바일 통신 디바이스를 수반하는 오프라인 지불 거래 중의 사용을 위해 이용가능한 것을 특징으로 하는 컴퓨터로 구현되는 방법.
23. The method of claim 21,
Wherein said portion of said available funds is lockable for use during off-line payment transactions involving said user mobile communication device, but available for use during off-line payment transactions involving a second user mobile communication device. How it is implemented.
청구항 21에 있어서,
상기 이용가능한 펀드들의 상기 일부분은 상기 사용자 모바일 통신 디바이스의 사용자에 의해 확립된 하나 이상의 규칙들에 기초하여 오프라인 지불 거래 중의 사용에 대해 록킹되는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
23. The method of claim 21,
Wherein the portion of the available funds is locked for use during off-line payment transactions based on one or more rules established by a user of the user mobile communication device.
청구항 21에 있어서,
상기 이용가능한 펀드들의 상기 일부분은 상기 하나 이상의 컴퓨팅 디바이스들에 의해 확립된 하나 이상의 규칙들에 기초하여 오프라인 지불 거래 중의 사용에 대해 록킹됨을 특징으로 하는 컴퓨터로 구현되는 방법.
23. The method of claim 21,
Wherein the portion of the available funds is locked for use during off-line payment transactions based on one or more rules established by the one or more computing devices.
청구항 21에 있어서,
상기 하나 이상의 컴퓨팅 디바이스들에 의해 그리고 상기 사용자 모바일 컴퓨팅 디바이스로부터, 상기 록킹된 펀드들의 적어도 일부분을 언록킹(unlocking)하기 위한 요청을 수신하는 단계를 더 포함하는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
23. The method of claim 21,
Further comprising receiving a request to unlock at least a portion of the locked funds by the one or more computing devices and from the user mobile computing device.
청구항 21에 있어서,
상기 잔액 증명서는 잔액 증명서 개인 키를 사용하여 상기 계정 관리 시스템에 의해 서명되고, 그리고 상기 머천트 모바일 통신 디바이스는 잔액 증명서 공개 키를 사용하여 상기 잔액 증명서가 유효함을 결정하는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
23. The method of claim 21,
Wherein the balance certificate is signed by the account management system using a balance certificate private key and the merchant mobile communication device uses a balance certificate public key to determine that the balance certificate is valid. How to do it.
청구항 21에 있어서,
상기 머천트 모바일 통신 디바이스는 계정 관리 시스템 계정 인증서 공개 키를 사용하여 상기 사용자 모바일 통신 디바이스의 사용자의 신원을 확인함으로써 상기 인출 레코드가 유효함을 결정하는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
23. The method of claim 21,
Wherein the merchant mobile communication device uses the account management system account certificate public key to determine the identity of the user of the user mobile communication device by verifying the identity of the user.
컴퓨터 프로그램 물로서,
상기 컴퓨터 프로그램 물은 컴퓨터에 의한 실행시 상기 컴퓨터로 하여금 보안 오프라인 지불들을 위해 이용가능한 펀드들을 록킹하도록 하는 컴퓨터에 의해 판독가능한 프로그램 명령어들이 수록된 비-일시적인 컴퓨터 판독 가능한 매체를 포함하며, 상기 컴퓨터에 의해 판독가능한 프로그램 명령어들은:
사용자 모바일 컴퓨팅 디바이스로부터, 네트워크 액세스 없이 완료될 오프라인 지불 거래에서의 사용을 위해 이용가능한 펀드들의 금액을 표시하는 잔액 증명서에 대한 요청을 수신하는 컴퓨터에 의해 판독가능한 프로그램 명령어와;
상기 오프라인 지불 거래 중의 사용에 대해 상기 이용가능한 펀드들의 일부분이 록킹되는 것을 결정하는 컴퓨터에 의해 판독가능한 프로그램 명령어와;
상기 잔액 증명서를 생성하는 컴퓨터에 의해 판독가능한 프로그램 명령어와, 상기 잔액 증명서는 상기 오프라인 지불 거래에서의 사용을 위해 이용가능한 상기 펀드들의 금액에서 상기 오프라인 지불 거래 중의 사용에 대해 록킹된 상기 이용가능한 펀드들의 상기 일부분을 뺀 금액을 표시하며;
상기 잔액 증명서를 상기 사용자 모바일 통신 디바이스에 전송하는 컴퓨터에 의해 판독가능한 프로그램 명령어와;
머천트 모바일 통신 디바이스로부터, 상기 머천트 모바일 통신 디바이스와 상기 사용자 모바일 통신 디바이스 사이의 상기 오프라인 지불 거래에 대한 인출 레코드를 수신하는 컴퓨터에 의해 판독가능한 프로그램 명령어와, 상기 잔액 증명서는 상기 오프라인 지불 거래에 대한 지불 요청에 응답하여 상기 사용자 모바일 통신 디바이스에 의해 상기 머천트 모바일 통신 디바이스로 전송되며, 그리고 상기 머천트 모바일 통신 디바이스는 상기 잔액 증명서를 판독함으로써 상기 오프라인 지불 거래를 위한 충분한 펀드들이 이용가능함을 결정하며; 그리고
상기 하나 이상의 컴퓨팅 디바이스들에 의해, 제2 오프라인 지불 거래에서의 사용을 위해 이용가능한 상기 펀드들의 금액을 업데이트하는 컴퓨터에 의해 판독가능한 프로그램 명령어를 포함하는 것을 특징으로 하는 컴퓨터 프로그램 물.
As a computer program product,
The computer program product comprising a non-transitory computer readable medium containing computer readable program instructions for causing the computer to lock available funds for secure off-line payments upon execution by a computer, The readable program instructions are:
Computer readable program instructions for receiving from a user mobile computing device a request for a balance certificate indicative of an amount of funds available for use in an offline payment transaction to be completed without network access;
Computer readable program instructions for determining that a portion of the available funds is locked for use during the off-line payment transaction;
Program instructions readable by a computer for generating the balance certificate; and a balance certificate, wherein the balance certificate is indicative of the amount of funds available for use in the off-line payment transaction, Subtracting the fraction;
Program instructions readable by a computer for transmitting the balance certificate to the user mobile communication device;
Readable program instructions for receiving, from a merchant mobile communication device, a withdrawal record for the off-line payment transaction between the merchant mobile communication device and the user mobile communication device; and the balance certificate includes a payment for the offline payment transaction The merchant mobile communication device determines that sufficient funds for the offline payment transaction are available by reading the balance certificate; And
Readable program instructions for updating, by the one or more computing devices, an amount of the funds available for use in a second off-line payment transaction.
청구항 31에 있어서,
상기 이용가능한 펀드들의 상기 일부분은 미리-정의된 일정 시간 동안 상기 오프라인 지불 거래 중의 사용에 대해 록킹되는 것을 특징으로 하는 컴퓨터 프로그램 물.
32. The method of claim 31,
Said portion of said available funds being locked for use during said offline payment transaction for a pre-defined period of time.
청구항 31에 있어서,
상기 이용가능한 펀드들의 상기 일부분은 지정된 위치에 대하여 상기 오프라인 지불 거래 중의 사용에 대해 록킹되는 것을 특징으로 하는 컴퓨터 프로그램 물.
32. The method of claim 31,
The portion of the available funds being locked against use during the off-line payment transaction for a designated location.
청구항 31에 있어서,
상기 이용가능한 펀드들의 상기 일부분은 머천트의 지정된 타입에 대하여 오프라인 지불 거래 중의 사용에 대해 록킹되는 것을 특징으로 하는 컴퓨터 프로그램 물.
32. The method of claim 31,
Wherein the portion of the available funds is locked against use during off-line payment transactions for a specified type of merchant.
청구항 31에 있어서,
상기 이용가능한 펀드들의 상기 일부분은 상기 사용자 모바일 통신 디바이스를 수반하는 오프라인 지불 거래 중의 사용에 대해 록킹되나, 제2 사용자 모바일 통신 디바이스를 수반하는 오프라인 지불 거래 중의 사용을 위해 이용가능한 것을 특징으로 하는 컴퓨터 프로그램 물.
32. The method of claim 31,
Wherein said portion of said available funds is lockable for use during an off-line payment transaction involving said user mobile communication device, but available for use during an off-line payment transaction involving a second user mobile communication device. water.
청구항 31에 있어서,
상기 이용가능한 펀드들의 상기 일부분은 상기 사용자 모바일 통신 디바이스의 사용자에 의해 확립된 하나 이상의 규칙들에 기초하여 오프라인 지불 거래 중의 사용에 대해 록킹되는 것을 특징으로 하는 컴퓨터 프로그램 물.
32. The method of claim 31,
Wherein the portion of the available funds is locked for use during off-line payment transactions based on one or more rules established by a user of the user mobile communication device.
보안 오프라인 지불들을 제공하는 시스템으로서,
저장 디바이스; 그리고
상기 저장 디바이스에 통신적으로 연결되는 프로세서를 포함하며, 상기 프로세서는 상기 저장 디바이스에 저장된 어플리케이션 코드 명령어들을 실행하며, 상기 명령어들은 상기 시스템으로 하여금:
사용자 모바일 컴퓨팅 디바이스로부터, 네트워크 액세스 없이 완료될 오프라인 지불 거래에서의 사용을 위해 이용가능한 펀드들의 금액을 표시하는 잔액 증명서에 대한 요청을 수신하도록 하며;
상기 오프라인 지불 거래 중의 사용에 대해 상기 이용가능한 펀드들의 일부분이 록킹됨을 결정하도록 하며;
상기 오프라인 지불 거래에서의 사용을 위해 이용가능한 상기 펀드들의 금액에서 상기 오프라인 지불 거래 중의 사용에 대해 록킹된 상기 이용가능한 펀드들의 상기 일부분을 뺀 금액을 표시하는 상기 잔액 증명서를 생성하도록 하며;
상기 잔액 증명서를 상기 사용자 모바일 통신 디바이스에 전송하도록 하며;
머천트 모바일 통신 디바이스로부터, 상기 머천트 모바일 통신 디바이스와 상기 사용자 모바일 통신 디바이스 사이의 상기 오프라인 지불 거래에 대한 인출 레코드를 수신하도록 하며, 상기 잔액 증명서는 상기 오프라인 지불 거래에 대한 지불 요청에 응답하여 상기 사용자 모바일 통신 디바이스에 의해 상기 머천트 모바일 통신 디바이스로 전송되며, 그리고 상기 머천트 모바일 통신 디바이스는 상기 잔액 증명서를 판독함으로써 상기 오프라인 지불 거래를 위한 충분한 펀드들이 이용가능함을 결정하며; 그리고
상기 하나 이상의 컴퓨팅 디바이스들에 의해, 제2 오프라인 지불 거래에서의 사용을 위해 이용가능한 상기 펀드들의 금액을 업데이트하도록 하는 것을 특징으로 하는 시스템.
A system for providing secure off-line payments,
A storage device; And
A processor communicatively coupled to the storage device, the processor executing application code instructions stored in the storage device, the instructions instructing the system to:
Receive a request from a user mobile computing device for a balance certificate indicative of an amount of funds available for use in an offline payment transaction to be completed without network access;
Determine that a portion of the available funds is locked for use during the off-line payment transaction;
To generate the balance certificate indicative of the amount of the funds available for use in the off-line payment transaction minus the portion of the available funds locked for use in the off-line payment transaction;
Send the balance certificate to the user mobile communication device;
From a merchant mobile communication device, a withdrawal record for the off-line payment transaction between the merchant mobile communication device and the user mobile communication device, wherein the balance certificate is received by the user mobile The merchant mobile communication device determines that sufficient funds for the offline payment transaction are available by reading the balance certificate; And
And to cause the one or more computing devices to update an amount of the funds available for use in a second off-line payment transaction.
청구항 37에 있어서,
상기 이용가능한 펀드들의 상기 일부분은 미리-정의된 일정 시간 동안 오프라인 지불 거래 중의 사용에 대해 또는 지정된 위치에 대하여 상기 오프라인 지불 거래 중의 사용에 대해 록킹되는 것을 특징으로 하는 시스템.
37. The method of claim 37,
Wherein the portion of the available funds is locked for use during off-line payment transactions for a pre-defined period of time or against use during the off-line payment transaction for a specified location.
청구항 37에 있어서,
상기 이용가능한 펀드들의 상기 일부분은 상기 사용자 모바일 통신 디바이스를 수반하는 오프라인 지불 거래 중의 사용에 대해 록킹되나, 제2 사용자 모바일 통신 디바이스를 수반하는 오프라인 지불 거래 중의 사용을 위해 이용가능한 것을 특징으로 하는 시스템.
37. The method of claim 37,
Wherein the portion of the available funds is locked for use during an off-line payment transaction involving the user mobile communication device, but available for use during an off-line payment transaction involving a second user mobile communication device.
청구항 37에 있어서,
상기 이용가능한 펀드들의 상기 일부분은 상기 사용자 모바일 통신 디바이스의 사용자에 의해 확립된 하나 이상의 규칙들에 기초하여 오프라인 지불 거래 중의 사용에 대해 록킹되는 것을 특징으로 하는 시스템.
37. The method of claim 37,
Wherein the portion of the available funds is locked for use during off-line payment transactions based on one or more rules established by a user of the user mobile communication device.
KR1020167029240A2014-03-262015-03-26 Secure offline payment systemWithdrawnKR20160135799A (en)

Applications Claiming Priority (5)

Application NumberPriority DateFiling DateTitle
US14/226,785US20150278795A1 (en)2014-03-262014-03-26Secure offline payment system
US14/226,7852014-03-26
US14/226,798US20150278796A1 (en)2014-03-262014-03-26Reserving account balance for concurrent payments in secure offline payment system
US14/226,7982014-03-26
PCT/US2015/022831WO2015148850A1 (en)2014-03-262015-03-26Secure offline payment system

Publications (1)

Publication NumberPublication Date
KR20160135799Atrue KR20160135799A (en)2016-11-28

Family

ID=54196420

Family Applications (1)

Application NumberTitlePriority DateFiling Date
KR1020167029240AWithdrawnKR20160135799A (en)2014-03-262015-03-26 Secure offline payment system

Country Status (7)

CountryLink
EP (1)EP3123426A4 (en)
JP (1)JP2017513122A (en)
KR (1)KR20160135799A (en)
CN (1)CN106133769A (en)
AU (2)AU2015235940A1 (en)
CA (1)CA2943810A1 (en)
WO (1)WO2015148850A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
KR20200003374A (en)*2017-08-222020-01-09알리바바 그룹 홀딩 리미티드 Method and apparatus for offline payment, service processing, and payment processing

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US20230196328A1 (en)2013-02-142023-06-22Advanced New Technologies Co., Ltd.Data interaction method and device, and offline credit payment method and device
US10192214B2 (en)2013-03-112019-01-29Google LlcPending deposit for payment processing system
WO2017106472A1 (en)*2015-12-172017-06-22Mastercard International IncorporatedMethod and system for distribution, use and validation of electronic entitlement certificates
US11049096B2 (en)*2015-12-312021-06-29Paypal, Inc.Fault tolerant token based transaction systems
CN106997530B (en)2016-01-252022-10-14创新先进技术有限公司 Credit payment method and device based on mobile terminal card simulation
CN106997527A (en)*2016-01-252017-08-01阿里巴巴集团控股有限公司Credit payment method and device based on mobile terminal P2P
CN114240421A (en)2016-01-252022-03-25创新先进技术有限公司 Credit payment method and device based on mobile terminal eSE
US11354658B2 (en)*2016-02-112022-06-07Mastercard International IncorporatedMethod and system for offline blockchain exchanges
EP3293686A1 (en)*2016-09-072018-03-14Mastercard International, Inc.Method and system for allowing offline peer-2-peer transactions using exchangeable provisioned tokens
CN110023980A (en)*2016-12-022019-07-16谷歌有限责任公司 Graphical user interface showing post-interaction animations
CN108205755A (en)*2016-12-192018-06-26北京握奇智能科技有限公司A kind of electronic fare payment system and method
CN106790527A (en)*2016-12-202017-05-31张峰Accounts information processing method, system and terminal
CN106875179B (en)*2017-02-032020-12-08杭州小步科技有限公司Offline two-dimensional code payment method and system thereof
WO2018151953A1 (en)*2017-02-152018-08-23Mastercard International IncorporatedOffline transaction system and method
US20180260795A1 (en)*2017-03-132018-09-13Mastercard International IncorporatedMethod and system for accessing locally stored digital funds
CN108460593B (en)*2017-11-012022-09-20福建博思软件股份有限公司Offline two-dimensional code payment method and device
US11030610B2 (en)2018-10-022021-06-08International Business Machines CorporationPreauthorization of mobile payments expected in a reduced-functionality state
US10834269B2 (en)2018-10-022020-11-10International Business Machines CorporationSpecialized secondary compartment in a mobile device
US11475440B2 (en)*2019-06-102022-10-18Visa International Service AssociationSystem, method, and computer program product for exchanging transaction data
CN112241879A (en)2019-07-172021-01-19天地融科技股份有限公司 An offline transaction method and system based on electronic cash
CN110610367B (en)*2019-08-292023-09-05深圳市元征科技股份有限公司Transaction data payment method and device, electronic equipment and server
JP6896813B2 (en)2019-08-302021-06-30株式会社日立製作所 Transaction execution method and system
JP7075917B2 (en)*2019-10-182022-05-26真敬 森下 Management device, management program, management method, terminal device, and management system
CN110880106A (en)*2019-10-302020-03-13支付宝(杭州)信息技术有限公司Method and device for realizing double offline payment
SE1951426A1 (en)*2019-12-112021-06-12Trust Anchor Group Ipr AbMethod for performing an offline transaction
ES3035237T3 (en)*2020-01-292025-09-01Crunchfish Digital Cash AbMethod, system, devices and computer program products for handling digital payments between payers and payees being in physical proximity to each other
WO2022073026A1 (en)*2020-10-012022-04-07ExtoLabs, LLCLeveraging tamper-resistant hardware to transfer digital currency between local devices
SE2150228A1 (en)*2021-02-122022-03-08Crunchfish Digital Cash AbPayment service provider interoperability for offline digital payments
EP4292037A4 (en)*2021-02-122024-12-18Crunchfish Digital Cash AB PAYMENT SERVICE PROVIDER INTEROPERABILITY FOR DIGITAL PAYMENTS
WO2022216216A1 (en)*2021-04-082022-10-13Crunchfish Digital Cash AbMethod and system for offline electronic card payments
WO2022231471A1 (en)*2021-04-282022-11-03Акционерное общество "Национальная система платежных карт"System and method for a cashless transfer of gratuity merged with an order payment
JP7732780B2 (en)*2021-06-172025-09-02株式会社日立製作所 Payment System
CN119624443A (en)*2021-09-272025-03-14支付宝(杭州)信息技术有限公司 Offline payment authorization, offline payment, payment collection method and device
WO2023101596A1 (en)*2021-12-012023-06-08Crunchfish Digital Cash AbComputerized method and system for digital payments
FR3130055B1 (en)*2021-12-022025-01-03Banks And Acquirers Int Holding Method of carrying out a transaction, corresponding devices and programs.
CN115564448A (en)*2022-10-082023-01-03中国银行股份有限公司 A blockchain-based payment method, device, equipment, medium and product
WO2025048687A1 (en)*2023-08-292025-03-06Telefonaktiebolaget Lm Ericsson (Publ)Secure offline transactions using trusted payer
WO2025170595A1 (en)*2024-02-092025-08-14Visa International Service AssociationConditional offline system with offline reversal

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US5694471A (en)*1994-08-031997-12-02V-One CorporationCounterfeit-proof identification card
JPH09185658A (en)*1995-12-271997-07-15N T T Data Tsushin KkElectronic cash dealing system
JP4338901B2 (en)*2001-01-152009-10-07株式会社エヌ・ティ・ティ・データ Mobile information transmission system and credit system
US20030125012A1 (en)*2001-12-282003-07-03Allen Lee S.Micro-credit certificate for access to services on heterogeneous access networks
JP2004355486A (en)*2003-05-302004-12-16Bank Of Tokyo-Mitsubishi LtdMulti-functional ic card and ic card terminal
JP2004362332A (en)*2003-06-052004-12-24Bank Of Tokyo-Mitsubishi LtdIc card payment system
JP4724119B2 (en)*2004-07-222011-07-13パナソニック株式会社 Electronic value, electronic wallet device and its use system
US20070168260A1 (en)*2005-09-302007-07-19Mastercard International IncorporatedPayment apparatus and method
US8117453B2 (en)*2005-11-232012-02-14Proton World International N.V.Customization of an electronic circuit
JP4923637B2 (en)*2006-03-082012-04-25日本電気株式会社 Electronic payment system, electronic payment method, electronic payment program, and recording medium
JP2010026811A (en)*2008-07-182010-02-04Fuji Electric Holdings Co LtdIc card service system, and service management center, service terminal and program therefor
US8341084B2 (en)*2009-06-082012-12-25Mastercard International IncorporatedMethod, apparatus, and computer program product for topping up prepaid payment cards for offline use
US9911154B2 (en)*2010-07-082018-03-06Mastercard International IncorporatedApparatus and method for dynamic offline balance management for preauthorized smart cards
US20130103523A1 (en)*2011-10-242013-04-25Aneto Pablo OkonkwoTransaction storage scheme for offline payment system
US20130185214A1 (en)*2012-01-122013-07-18Firethorn Mobile Inc.System and Method For Secure Offline Payment Transactions Using A Portable Computing Device
US8898088B2 (en)*2012-02-292014-11-25Google Inc.In-card access control and monotonic counters for offline payment processing system
JP2013186528A (en)*2012-03-062013-09-19Toppan Printing Co LtdSettlement card management system, settlement card management method
JP2013186529A (en)*2012-03-062013-09-19Toppan Printing Co LtdSettlement card management system and settlement card management method
US20140025581A1 (en)*2012-07-192014-01-23Bank Of America CorporationMobile transactions using authorized tokens

Cited By (3)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
KR20200003374A (en)*2017-08-222020-01-09알리바바 그룹 홀딩 리미티드 Method and apparatus for offline payment, service processing, and payment processing
US11113697B2 (en)2017-08-222021-09-07Advanced New Technologies Co., Ltd.Method and apparatus for offline payment, service processing, and payment processing
US11836732B2 (en)2017-08-222023-12-05Advanced New Technologies Co., Ltd.Method and apparatus for offline payment, service processing, and payment processing

Also Published As

Publication numberPublication date
AU2018201795A1 (en)2018-04-05
CA2943810A1 (en)2015-10-01
WO2015148850A1 (en)2015-10-01
CN106133769A (en)2016-11-16
EP3123426A1 (en)2017-02-01
EP3123426A4 (en)2017-11-01
JP2017513122A (en)2017-05-25
AU2015235940A1 (en)2016-09-01

Similar Documents

PublicationPublication DateTitle
KR20160135799A (en) Secure offline payment system
US11374943B2 (en)Secure interface using non-secure element processors
US12373821B2 (en)Confirming physical possession of plastic NFC cards with a mobile digital wallet application
US20150278795A1 (en)Secure offline payment system
US11087297B1 (en)Systems and methods for financial operations performed at a contactless ATM
US20150278796A1 (en)Reserving account balance for concurrent payments in secure offline payment system
US10706400B1 (en)Systems and methods for financial operations performed at a contactless ATM
US10496982B2 (en)Secure contactless card emulation
US20190385160A1 (en)System and process for on-the-fly cardholder verification method selection
US10515359B2 (en)Systems and methods for processing mobile payments by provisioning credentials to mobile devices without secure elements
US20140258109A1 (en)Pending deposit for payment processing system
US20160371716A1 (en)Loyalty rewards in offline payment system
US20160012430A1 (en)Hands-free offline communications
US20170178137A1 (en)Parameter-mapped one-time passwords (otp) for authentication and authorization
US9516006B2 (en)Re-programmable secure cryptographic device
US20160005023A1 (en)Conducting financial transactions by telephone
KR102270331B1 (en)Method, system and recording medium for payment service

Legal Events

DateCodeTitleDescription
A201Request for examination
PA0105International application

Patent event date:20161020

Patent event code:PA01051R01D

Comment text:International Patent Application

PA0201Request for examination
PG1501Laying open of application
E902Notification of reason for refusal
PE0902Notice of grounds for rejection

Comment text:Notification of reason for refusal

Patent event date:20180419

Patent event code:PE09021S01D

PC1202Submission of document of withdrawal before decision of registration

Comment text:[Withdrawal of Procedure relating to Patent, etc.] Withdrawal (Abandonment)

Patent event code:PC12021R01D

Patent event date:20181227

WITBWritten withdrawal of application

[8]ページ先頭

©2009-2025 Movatter.jp