








[관련 출원][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-
예시적인 실시예에서, 사용자 디바이스(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 without
다른 예시적인 실시예에서, 이러한 시스템들/디바이스들(시스템들/디바이스들(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), 인트라넷, 인터넷, 모바일 텔레폰 네트워크, 카드 네트워크, 또는 이들의 임의의 조합, 또는 임의의 다른 적합한 아키텍쳐로서 구현될 수 있거나, 이들의 일부일 수 있다.Each
예시적인 실시예에서, 각 네트워크 컴퓨팅 시스템(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 the
예시적인 실시예에서, 머천트 디바이스(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, the
어플리케이션(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 the
예시적인 실시예에서, 데이터 저장 유닛(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 has
예시적인 실시예에 따르면, 머천트 디바이스(120)는 유선 연결을 통해 네트워크(140)에 접속한다. 예를 들면, 상기 연결은 범용 직렬 버스(USB) 또는 이더넷 연결일 수 있다. 다른 예시적인 실시예에서, 머천트 디바이스(120)는 무선 연결을 통해 네트워크에 접속한다. 예를 들면, 상기 연결은 유선/무선 인터넷 연결(예를 들면, MiFi) 또는 신호들을 네트워크(140)에 전달하기 적합한 임의의 다른 유선 또는 무선 연결을 가진 핫스팟(hotspot)에 대한 Wi-Fi- 또는 블루투스 연결일 수 있다. 다른 예시적인 실시예에서, 상기 연결은 셀룰러 네트워크 연결일 수 있다.According to an exemplary embodiment, the merchant device 120 connects to the
예시적인 실시예에서, 머천트 디바이스(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 the
예시적인 사용자 디바이스(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 using
사용자는 사용자 인터페이스(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 the
예시적인 실시예에서, 데이터 저장 유닛(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 has
예시적인 실시예에 따르면, 사용자 디바이스(110)는 유선 연결을 통해 네트워크(140)에 접속한다. 예를 들면, 상기 연결은 범용 직렬 버스(USB) 또는 이더넷 연결일 수 있다. 다른 예시적인 실시예에서, 사용자 디바이스(110)는 무선 연결을 통해 네트워크에 접속한다. 예를 들면, 상기 연결은 유선/무선 인터넷 연결(예를 들면, MiFi) 또는 신호들을 네트워크(140)에 전달하기 적합한 임의의 다른 유선 또는 무선 연결을 가진 핫스팟에 대한 Wi-Fi- 또는 블루투스 연결일 수 있다. 다른 예시적인 실시예에서, 상기 연결은 셀룰러 네트워크 연결일 수 있다.According to an exemplary embodiment, the user device 110 connects to the
예시적인 사용자 디바이스(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 an
예시적인 실시예에서, 계정 관리 시스템(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 the
예시적인 계정 관리 시스템(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 a
예시적인 실시예에서, 계정 관리 시스템(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 the
예시적인 운영 환경(100)의 컴포넌트들은 도 2 내지 8에 도시된 예시적인 방법들을 참조하여, 이후 기술된다. 또한, 도 2 내지 8의 예시적인 방법들은 다른 시스템들과 함께 그리고 다른 환경들 내에서 수행될 수 있다.The components of the
예시적인 프로세스들Exemplary Processes
도 2는 특정 예시적인 실시예들에 따른, 오프라인 지불 거래를 프로세싱 하는 방법(200)을 도시하는 블록 흐름도이다. 방법(200)은 도 1에 도시된 컴포넌트들을 참조하여 기술된다.2 is a block flow diagram illustrating a
블록(210)에서, 사용자는 사용자 디바이스(110) 상의 어플리케이션(115)을 인에이블 하고 그리고/또는 오프라인 금융 거래를 수행하려는 요청을 나타낸다. 예시적인 실시예에서, 사용자는 사용자 디바이스(110)로 하여금 계정 관리 시스템(130)과 통신하고 머천트 디바이스(120)에 대한 오프라인 지불 구매를 수행하도록 하기 위해, 어플리케이션(115)을 인에이블 한다.At
블록(220)에서, 사용자 디바이스(110)는 계정 관리 시스템(130)으로부터 최근 잔액 증명서를 수신한다. 계정 관리 시스템(130)으로부터 최근 잔액 증명서를 수신하는 방법(220)은 도 3에 도시된 방법들을 참조하여 이후 더 자세히 기술된다.At
도 3은 블록(220)에서 참조된 바와 같은, 특정 예시적인 실시예들에 따른, 계정 관리 시스템(130)으로부터 최근 잔액 증명서를 수신하는 방법(220)을 도시하는 블록 흐름도이다. 방법(220)은 도 1에 도시된 컴포넌트들을 참조하여 기술된다.3 is a block flow diagram illustrating a
블록(310)에서, 사용자 디바이스(110)는 계정 관리 시스템(130)으로부터 최근 잔액 증명서(113)를 요청한다. 예시적인 실시예에서, 상기 요청은 사용자의 계정 관리 시스템(130) 계정으로의 펀드의 디포짓에 대한 허가를 포함한다. 예시적인 실시예에서, 사용자는 금융 계정에서부터 사용자의 계정 관리 시스템(130) 계정으로 펀드들의 전송을 허가함으로써, 디포짓을 허가한다. 다른 예시적인 실시예에서, 사용자 디바이스(110)는 이용가능한 펀드들의 록킹을 요청한다. 또 다른 예시적인 실시예에서, 사용자 디바이스(110)는 이용가능한 펀드들의 언록킹을 요청한다. 예시적인 실시예에서, 최근 잔액 증명서(113)는 사용자 디바이스(110)와 계정 관리 시스템(130)사이의 임의의 통신 중에 요청된다.At
블록(320)에서, 사용자 디바이스(120)는 요청을 수신하고, 사용자 디바이스(120)가 네트워크(140) 액세스를 가졌는지 여부를 결정한다. 예시적인 실시예에서, 네트워크(140) 액세스는 계정 관리 시스템(130)과 통신하도록 요구된다. 예시적인 실시예에서, 사용자 디바이스(120)는 계정 관리 시스템(130)과의 통신 채널 확립을 시도함으로써, 네트워크(140) 액세스가 있는지 여부를 결정한다.At
만일 사용자 디바이스(120)가 네트워크(140) 액세스를 가지지 않았다면, 방법(220)은 블록(325)로 진행한다. 블록(325)에서, 사용자 디바이스(120)는 상기 디바이스(120)가 네트워크(140) 액세스를 가진 경우, 계정 관리 시스템(130)과의 통신 채널 확립을 재시도 한다.If the user device 120 did not have
도 3의 블록(320)으로 돌아가면, 만일 사용자 디바이스(120)가 네트워크(140) 액세스를 가지면, 방법(220)은 블록(330)으로 진행한다. 블록(330)에서, 사용자 디바이스(120)는 계정 관리 시스템(130)과의 통신 채널을 확립한다. 예시적인 실시예에서, 통신 채널은 네트워크(140)를 통해 확립된다.Returning to block 320 of FIG. 3, if user device 120 has
블록(340)에서, 계정 관리 시스템(130)은 사용자가 계정 관리 시스템(130)에 의해 유지되거나 또는 계정 관리 시스템(130)에 액세스 가능한 계정을 가졌는지 여부를 결정한다. 예시적인 실시예에서, 계정 관리 시스템(130)은 사용자가 사용자 디바이스들(110) 상의 어플리케이션(115)를 인에이블 하였고, 사용자가 계정 관리 시스템(130) 계정을 가졌는지 여부를 결정하였다는 통지를 수신한다. 예시적인 실시예에서, 어플리케이션(115)이 인에이블 된 경우, 사용자는 계정 관리 시스템(130) 계정에 로그(log)하거나 계정 관리 시스템(130) 계정을 만들기 위해 프롬프트(prompt)된다. 다른 예시적인 실시예에서, 사용자는 이전에 계정 관리 시스템(130) 계정에 로그 하였거나, 자동으로 계정에 로그 하였다. 또 다른 예시적인 실시예에서, 사용자의 로그인 크리덴셜들(login credentials)은 다른 계정들(예를 들면, 소셜 네트워킹 웹사이트들 및 사용자 디바이스(120) 계정들)을 통해 공유되고, 사용자는 공유된 로그인 크리덴셜들을 사용하여 자동으로 계정 관리 시스템(130) 계정에 로그된다.At
만일 사용자가 계정 관리 시스템(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, the
다른 예시적인 실시예에서, 사용자가 계정 관리 시스템(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)에 의해 만들어진 인출 레코드에 서명하기 위해 기능한다.At
예시적인 실시예에서, 계정 인증서(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 certificate
블록(355)에서, 계정 관리 시스템(130)은 계정 인증서(112)를 사용자 디바이스(110)로 전송한다. 예시적인 실시예에서, 사용자 디바이스(110)와 계정 관리 시스템(130) 사이의 임의의 통신은 계정 인증서(112)에 의해 서명된다. 본 실시예에서, 계정 관리 시스템(130)은 서명(signature)을 판독함으로써 사용자의 계정 관리 시스템(130)을 식별한다.At
블록(360)에서, 사용자 디바이스(110)는 계정 인증서(112)를 수신한다.At
블록(370)에서, 계정 관리 시스템(130)은 최근 잔액 증명서(113)에 대한 요청이 사용자의 계정 관리 시스템(130) 계정으로의 펀드의 디포짓에 대한 허가를 포함하였는지 여부를 결정한다. 예시적인 실시예에서, 사용자는 금융 계정에서부터 사용자의 계정 관리 시스템(130) 계정으로 펀드들의 전송을 허가함으로써, 디포짓을 허가한다. 예시적인 실시예에서, 사용자는 사용자 디바이스(110)를 사용하여 허가를 수행한다. 예를 들면, 사용자는 펀드들의 디포짓을 요청하기 위해 어플리케이션(115)에 액세스한다. 다른 예시적인 실시예에서, 사용자는 계정 관리 시스템(130)과 통신할 수 있는 다른 컴퓨팅 디바이스 또는 서드 파티 시스템을 사용하여 허가를 수행한다. 본 예시적인 실시예에서, 사용자 디바이스(120)는 디바이스(120)가 네트워크 액세스를 가지는 때, 최근 잔액 증명서를 요청할 것이다.At
만일 최근 잔액 증명서(113)에 대한 요청이 펀드들을 디포짓 하기 위한 요청을 포함한다면, 방법(220)은 도 3의 블록(380)으로 진행한다. 블록(380)에서, 계정 관리 시스템(130)은 펀드들의 디포짓을 사용자의 계정으로 프로세스한다. 예시적인 실시예에서, 펀드들은 금융 계정에서부터 사용자의 계정 관리 시스템(130) 계정으로 전자적으로 전송된다.If the request for
그 후 방법(220)은 도 3의 블록(390)으로 진행한다.The
도 3의 블록(370)으로 돌아가면, 만일 최근 잔액 증명서(113)에 대한 요청이 펀드들을 디포짓 하기 위한 요청을 포함하지 않는다면, 방법(220)은 도 3의 블록(390)으로 진행한다. 블록(390)에서, 계정 관리 시스템(130)은 서명된 잔액 증명서(113)를 사용자 디바이스(110)에 제공한다. 서명된 잔액 증명서(113)를 사용자 디바이스(110)에 제공하는 방법(390)은 도 4에 기술된 방법들을 참조하여 이 후 더 자세히 기술된다.Returning to block 370 of FIG. 3, if the request for
도 4는 블록(390)에서 참조된 바와 같은, 특정 예시적인 실시예들에 따른, 서명된 잔액 증명서(113)를 사용자 디바이스(110)에 제공하는 방법(390)을 도시하는 블록 흐름도이다. 방법(390)은 도 1에 도시된 컴포넌트들을 참조하여 기술된다.4 is a block flow diagram illustrating a
블록(410)에서, 계정 관리 시스템(130)은 최근 잔액 증명서(113)에 대한 요청이 인출 레코드를 포함하였는지 여부를 결정한다. 예시적인 실시예에서, 사용자 디바이스(110)는 최근 잔액 증명서(113)에 대한 요청과 함께 하나 이상의 인출 레코드들을 계정 관리 시스템(130)에 전송한다. 예시적인 실시예에서, 사용자 디바이스(110)는 모든 인출 레코드들을 계정 관리 시스템에 전송한다. 본 실시예에서, 사용자 디바이스(110)는 어떠한 인출 레코드가 아직 보내지지 않았는지 결정하고, 이러한 레코드들을 계정 관리 시스템(130)에 전송한다. 예시적인 실시예에서, 각 인출 레코드는 머천트 디바이스(120)를 차지하는 오프라인 지불 거래의 식별을 포함한다. 계정 관리 시스템(130)은 사용자의 계정 관리 시스템(130) 계정 내 각 인출 레코드를 저장하고, 이용가능한 펀드들의 잔액을 결정하기 위해 상기 레코드들을 사용한다.At
만일 최근 잔액 증명서(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, the
만일 인출 레코드가 검증되지 않았다면, 방법(390)은 도 4의 블록(430)으로 진행한다. 블록(430)에서, 거래는 거절되고 계정 관리 시스템(130)은 알림을 사용자 디바이스(120)에 전송한다.If the fetch record has not been verified, the
도 4의 블록(420)으로 돌아가면, 만일 인출 레코드가 검증되었다면, 방법(390)은 도 4의 블록(440)으로 진행한다. 블록(440)에서, 계정 관리 시스템(130)은 사용자의 계정 관리 시스템(130)에 인출 레코드를 기록한다. 예시적인 실시예에서, 계정 관리 시스템(130)은 오프라인 지불 거래를 노트(note)하기 위해 사용자의 계정을 업데이트 한다.Returning to block 420 of FIG. 4, if the fetch record has been verified, the
그 후 방법(390)은 도 4의 블록(450)으로 진행한다.The
도 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, the
도 5는 블록(450)에서 참조된 바와 같은, 특정 예시적인 실시예들에 따른, 사용자의 계정 관리 시스템(130) 계정 내 이용가능한 펀드들의 잔액을 계산하는 방법(450)을 도시하는 블록 흐름도이다. 방법(450)은 도 1에 도시된 컴포넌트들을 참조하여 기술된다.5 is a block flow diagram illustrating a
블록(510)에서, 계정 관리 시스템(130)은 사용자의 계정 관리 시스템(130) 계정 내 펀드들의 잔액을 계산한다. 예시적인 실시예에서, 계정 관리 시스템(130)은 디포짓들의 총 금액과 인출 레코드들의 총 금액 사이의 차이를 계산한다. 다른 예시적인 실시예에서, 계정 관리 시스템(130)은 사용자의 계정 내 펀드들의 잔액의 누계(running total)를 유지한다.At
블록(520)에서, 계정 관리 시스템(130)은 펀드들의 잔액의 일부분이 록킹되었는지 여부를 결정한다. 예시적인 실시예에서, 사용자는 최근 잔액 증명서(113)에 대한 요청과 함께 펀드들의 잔액의 일부를 록킹 하기 위한 요청을 전송한다. 다른 예시적인 실시예에서, 계정 관리 시스템(130)은 록킹 펀드들의 금액을 결정하는 사람의 개입(human intervention) 없이 이해되는 규칙 또는 로직을 유지한다. 또 다른 예시적인 실시예에서, 사용자는 록킹 펀드들의 금액을 결정하는 규칙들을 정의한다. 예를 들면, 규칙은 사용자의 계정 관리 시스템(130) 계정 내에서 유지되는 최소 잔액 $25를 요구할 수 있다. 본 예시에서, 계정 관리 시스템(130)은 이러한 최소 금액이 오프라인 지불에 대해 이용가능 하게 되는 것을 막기 위해 $25를 록킹할 것이다. 다른 예시에서, 규칙은 사용자의 계정 관리 시스템(130) 계정 내 이용가능한 펀드들의 5%가 록킹되는 것을 요구할 수 있다. 본 예시에서, 만일 사용자가 사용자의 계정 내 $100를 가졌다면, 계정 관리 시스템(130)은 이러한 최소 금액이 오프라인 지불에 대해 이용가능 하게 되는 것을 막기 위해 $5를 록킹할 것이다.At
만일 펀드들의 잔액의 부분이 록킹되지 않았다면, 방법(450)은 도 4의 블록(450)으로 진행한다.If the portion of the balance of the funds has not been locked, the
블록(520)으로 돌아가면, 만일 펀드들의 잔액의 일부분이 록킹되었다면, 방법(450)은 도 5의 블록(530)으로 진행한다. 블록(530)에서, 계정 관리 시스템(130)은 펀드들의 잔액의 일부를 록킹하거나 언록킹하는 규칙들을 결정한다. 예시적인 실시예에서, 규칙들은 사용자, 계정 관리 시스템, 서드 파티, 또는 이들의 임의의 조합에 의해 정의된다. 예시적인 실시예에서, 규칙들은 사용자의 계정 관리 시스템(130) 계정이 확립되었을 때 정의된다. 다른 예시적인 실시예에서, 규칙들이 확립되고, 확립된 이후 언제든지 변경된다. 또 다른 예시적인 실시예에서, 최근 잔액 증명서(113)에 대한 사용자의 요청은 펀드들을 록킹 또는 언록킹하는 하나 이상의 규칙들을 포함한다.Returning to block 520, if a portion of the balances of the funds have been locked, the
예시적인 실시예에서, 사용자의 계정 관리 시스템(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)를 요청하도록 요구된다.At
다른 예시에서, 이용가능한 펀드들의 일부분은 일정 시간 동안 록킹될 수 있다. 예를 들면, 펀드들의 잔액의 일부분은 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 a
만일 계정 관리 시스템(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, the
그 후 방법(450)은 도 5의 블록(560)으로 진행한다.The
도 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, the
만일 계정 관리 시스템(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, the
그 후 방법(450)은 도 5의 블록(580)으로 진행한다.The
도 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, the
그 후 방법(450)은 도 4의 블록(460)으로 진행한다.The
도 4로 돌아가면, 블록(460)에서, 계정 관리 시스템(130)은 사용자 디바이스(110)에 대한 최근 잔액 증명서(113)를 생성한다. 예시적인 실시예에서, 상기 최근 잔액 증명서(113)는 오프라인 지불 거래에 대한 이용가능한 펀드들의 금액을 포함한다. 예시적인 실시예에서, 잔액 증명서(113)는 시간에 제한된다. 본 예시적인 실시예에서, 잔액 증명서(113)는 미리-정의된 시간이 경과한 후 만료한다. 다른 예시적인 실시예에서, 잔액 증명서(113)는 오프라인 구매 거래들의 수에 제한된다. 본 예시적인 실시예에서, 잔액 증명서(113)는 오프라인 구매 거래들의 미리-정의된 수가 완료되고 난 후 만료한다. 다른 예시적인 실시예에서, 잔액 증명서(113)는 시간, 거래들의 수, 지리적 위치, 머천트의 타입, 또는 계정 관리 시스템(130) 또는 사용자에 의해 확립된 임의의 다른 제한 규칙에 의해 제한된다. 예시적인 실시예에서, 잔액 증명서는 지불 거래에 대해 이용가능한 펀드들의 금액을 제한하는 하나 이상의 규칙들을 포함한다.Returning to Figure 4, at
블록(470)에서, 계정 관리 시스템(130)은 잔액 증명서(113)에 서명한다. 예시적인 실시예에서, 머천트 디바이스(120)는 서명된 잔액 증명서(113)의 진위를 검증하기 위해, 잔액 증명서 공개 키(113a)를 사용하여 서명된 잔액 증명서(113)를 판독할 수 있다.At
블록(480)에서, 계정 관리 시스템(130)은 서명된 잔액 증명서(113)를 사용자 디바이스(110)에 전송한다. 예시적인 실시예에서, 서명된 잔액 증명서(113)는 네트워크(140) 연결을 통해 사용자 디바이스(110)로 전송된다.At
블록(490)에서, 사용자 디바이스(110)는 서명된 잔액 증명서(113)를 수신한다.At
그 후 방법(390)은 도 2의 블록(230)으로 진행한다.The
도 2로 돌아가면, 블록(230)에서, 사용자 디바이스(110) 및 머천트 디바이스(120)는 통신 채널을 확립한다. 예시적인 실시예에서, 사용자는 머천트와 오프라인 지불 거래를 완료하고자 하는 소망을 나타낸다. 예시적인 실시예에서, 오프라인 지불 거래를 수행하기 위해 사용자는 사용자 디바이스(110)를 인에이블 하는 사용자 디바이스(110) 상의 어플리케이션(115)에 액세스한다. 예시적인 실시예에서, 사용자는 머천트 디바이스(120)와 무선으로 통신하기 위해 사용자 디바이스(110)를 인에이블 하는 어플리케이션(115)에 액세스한다. 본 실시예에서, 상기 디바이스들(디바이스들(110 및 120)을 포함한다)은 보안 통신 채널(예를 들어, 근거리 무선 통신들, 블루투스, Wi-Fi, 또는 무선 통신 채널의 다른 형태)을 통해 통신한다.Returning to Figure 2, at
블록(240)에서, 머천트 디바이스(120)는 지불 요청을 사용자 디바이스(110)에 전송한다. 예시적인 실시예에서, 머천트는 지불 요청 금액을 머천트 디바이스(120) 상의 어플리케이션(125)에 입력한다. 본 실시예에서, 상기 지불 요청은 머천트 디바이스(120)의 신원, 지불 요청 금액, 및/또는 타임스탬프(timestamp)를 포함한다. 예시적인 실시예에서, 상기 지불 요청은 보안 통신 채널을 통해 전송된다.At
블록(250)에서, 사용자 디바이스(110)는 머천트 디바이스(120)로부터 수신된 지불 요청을 프로세스한다. 머천트 디바이스(120)로부터 수신된 지불 요청을 프로세스 하는 방법(250)은 도 6에 기술된 방법들을 참조하여 이후 더 자세히 기술된다.At
도 6은 블록(250)에서 참조된 바와 같은, 특정 예시적인 실시예들에 따른, 머천트 디바이스(120)로부터 수신된 지불 요청을 프로세싱 하는 방법(250)을 도시하는 블록 흐름도이다. 방법(250)은 도 1에 도시된 컴포넌트들을 참조하여 기술된다.FIG. 6 is a block flow diagram illustrating a
블록(610)에서, 사용자 디바이스(110)는 머천트 디바이스(120)로부터 지불 요청을 수신한다.At
블록(620)에서, 사용자 디바이스(110)는 머천트 디바이스(120)로부터 수신된 지불 요청 상에 표시된 금액에 대한 인출 레코드를 생성한다. 예시적인 실시예에서, 인출 레코드는 지불 요청 내에 수신된 정보(예를 들면, 머천트 또는 머천트 디바이스(120)에 대한 신원, 지불 요청 금액 및 타임스탬프)를 포함한다. 다른 예시적인 실시예에서, 인출 레코드는 사용자 디바이스(110)의 신원, 사용자의 신원, 및/또는 사용자의 계정 관리 시스템(130) 계정의 신원을 포함한다. 다른 예시적인 실시예에서, 사용자는 인출 레코드가 만들어지기 전에 또는 만들어지는 동안, 어플리케이션(115)을 사용하여 지불 요청 금액을 변경할 수 있다.At
블록(630)에서, 사용자 디바이스(110)는 인출 레코드에 서명한다. 예시적인 실시예에서, 계정 인증서(112) 개인 키를 통해 인출 레코드가 서명된다. 예시적인 실시예에서, 인출 레코드는 머천트 디바이스(120)로 하여금 계정 정보(예를 들면, 계정 관리 시스템(130) 계정)가 사용자에게 속하고 상기 계정 정보가 오프라인 지불 거래에서 사용되기 위해 인증됨을 검증하도록 하기 위해, 사용자 디바이스(110) 또는 어플리케이션(115)에 의해 서명된다.At
블록(640)에서, 사용자 디바이스(110)는 계정 관리 시스템(130)에 의해 서명된 최근 잔액 증명서(113)를 검색한다. 예시적인 실시예에서, 잔액 증명서(113)는 머천트 디바이스(120)로부터 지불 요청이 수신된 이후 언제든지 검색된다. 예시적인 실시예에서, 사용자 디바이스(120)는 잔액 증명서(113)에 의해 개시된 오프라인 지불 거래를 위해 이용가능한 펀드들의 금액과 지불 요청 금액을 상호-참조함으로써, 오프라인 지불 거래에 대한 펀드들의 이용가능성을 확인한다. 다른 예시적인 실시예에서, 사용자 디바이스(110)는 오프라인 지불 거래를 위해 이용가능한 펀드들의 금액에 배치된 임의의 규칙들 또는 제한들을 검토하였고, 지불 거래가 이러한 규칙들을 만족하는지 결정한다.At
블록(650)에서, 사용자 디바이스(110)는 지불 요청에 대한 응답을 머천트 디바이스(120)에 전송한다. 예시적인 실시예에서, 상기 응답은 서명된 인출 레코드 및 서명된 잔액 증명서(113)를 포함한다. 예시적인 실시예에서, 지불 요청에 대한 응답은 사용자 디바이스(110)와 머천트 디바이스(120) 사이의 보안 통신 채널을 통해 전송된다.At
그 후 방법(250)은 도 2의 블록(260)으로 진행한다.The
도 2로 돌아가면, 블록(260)에서, 머천트 디바이스(120)는 사용자 디바이스(110)로부터 수신된 지불 요청에 대한 응답을 검증한다. 사용자 디바이스(110)로부터 수신된 지불 요청에 대한 응답을 검증하는 방법(260)은 도 7에 기술된 방법들을 참조하여 이 후 더 자세히 기술된다.Returning to Figure 2, at
도 7은 블록(260)에서 참조된 바와 같은, 특정 예시적인 실시예들에 따른, 사용자 디바이스(110)로부터 수신된 지불 요청에 대한 응답을 검증하는 방법(260)을 도시하는 블록 흐름도이다. 방법(260)은 도 1에 도시된 컴포넌트들을 참조하여 기술된다.FIG. 7 is a block flow diagram illustrating a
블록(710)에서, 머천트 디바이스(120)는 사용자 디바이스(110)로부터 지불 요청에 대한 응답을 수신한다. 예시적인 실시예에서, 상기 응답은 서명된 인출 레코드 및 서명된 잔액 증명서(113)를 포함한다.At
블록(720)에서, 머천트 디바이스(120)는 인출 레코드를 검증한다. 예시적인 실시예에서, 머천트 디바이스(120)는 계정 인증서 공개 키(112a)를 사용하여 서명된 인출 레코드를 검증한다. 본 실시예에서, 머천트 디바이스(120)로 전송 이전에, 인출 레코드는 사용자 디바이스(110) 상의 계정 인증서(112)에 의해 서명된다. 머천트 디바이스(120)는 사용자 디바이스(110), 사용자, 및/또는 사용자의 계정 관리 시스템(130) 계정의 신원을 확인하기 위해 인출 레코드 상의 시그니쳐를 검증한다.At
만일 인출 레코드가 검증되지 않았다면, 방법(260)은 도 7의 블록(730)으로 진행한다. 블록(730)에서, 오프라인 지불 거래는 거절된다. 예시적인 실시예에서, 머천트 디바이스(120)는 거절된 거래의 통지를 사용자 디바이스(110)로 전송한다.If the fetch record has not been verified, the
도 7의 블록(720)으로 돌아가면, 만일 인출 레코드가 검증되면, 방법(260)은 도 7의 블록(740)으로 진행한다. 블록(740)에서, 머천트 디바이스(120)는 잔액 증명서(113)를 검증한다. 예시적인 실시예에서, 머천트 디바이스(120)는 잔액 증명서 공개 키(113a)를 사용하여 서명된 잔액 증명서(113)를 검증한다.Returning to block 720 of FIG. 7, if the fetch record is verified, the
본 실시예에서, 사용자 디바이스(110)로 전송 이전에, 잔액 증명서(113)는 계정 관리 시스템(130)에 의해 서명된다. 서명된 잔액 증명서(113)는 지불 요청에 응답하여 인출 레코드와 함께 머천트 디바이스(120)에 전송된다. 머천트 디바이스(120)는 오프라인 지불 거래를 완료하기 위한 펀드들의 이용가능성을 확인하기 위해 잔액 증명서(113) 상의 시그니쳐를 검증한다. 예시적인 실시예에서, 머천트 디바이스(120)는 잔액 증명서(113)가 만료되지 않음 그리고/또는 잔액 증명서 상에 배치된 임의의 다른 제한들(예를 들면, 지리적 제한들, 머천트 제한들, 또는 다른 기능적인 제한들)이 만족되었음을 검증한다.In this embodiment, prior to transmission to the user device 110, the
만일 잔액 증명서(113)가 검증되지 않았다면, 방법(260)은 도 7의 블록(750)으로 진행한다. 블록(750)에서, 오프라인 지불 거래는 거절된다. 예시적인 실시예에서, 머천트 디바이스(120)는 거절된 거래의 통지를 사용자 디바이스(110)로 전송한다.If the
도 7의 블록(740)으로 돌아가서, 만일 잔액 증명서(113)가 검증되었다면, 방법(260)은 도 7의 블록(760)으로 진행한다. 블록(760)에서, 머천트 디바이스(120)는 오프라인 지불 거래를 완료하기 위해 펀드들의 이용가능성을 검증한다. 예시적인 실시예에서, 머천트 디바이스(120)는 잔액 증명서(113)로부터 이용가능한 펀드들을 판독한다. 예시적인 실시예에서, 머천트 디바이스(120)는 이용가능한 펀드들 상에 위치한 임의의 규칙들을 통해 오프라인 지불 거래 컴파일들(offline payment transaction complies)을 검증한다.Returning to block 740 of FIG. 7, if the
만일 오프라인 지불 거래를 위한 충분한 펀드들이 이용가능 하지 않는다면, 방법(260)은 도 7의 블록(770)으로 진행한다. 블록(770)에서, 머천트 디바이스(120) 및/또는 사용자 디바이스(110)는 펀드들의 잔액의 일부분이 록킹되었는지 여부 또는 오프라인 지불 거래 동안 사용하기 위해 이용할 수 없는지 여부를 결정한다. 예시적인 실시예에서, 잔액 증명서(113)는 펀드들의 일부분이 록킹되었다는 표시를 포함한다.If not enough funds are available for an offline payment transaction, the
만일 펀드들의 잔액의 일부분이 록킹되지 않았다면, 방법(260)은 도 7의 블록(775)로 진행한다. 블록(775)에서, 오프라인 지불 거래를 거절된다. 예시적인 실시예에서, 머천트 디바이스(120)는 거절된 거래의 통지를 사용자 디바이스(110)로 전송한다.If a portion of the remaining funds of the funds has not been locked, the
도 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, the
그 후 방법(260)은 도 3의 블록(310)으로 진행하고, 사용자 디바이스(110)는 언록킹 펀드들을 가진 새로운 잔액 증명서(113)를 요청한다.The
도 7의 블록(760)으로 돌아가서, 만일 오프라인 지불 거래를 위한 충분한 펀드들이 이용가능하다면, 방법(260)은 도 7의 블록(790)으로 진행한다. 블록(790)에서, 머천트 디바이스(120)는 오프라인 지불 거래를 허가한다.Returning to block 760 of FIG. 7, if sufficient funds are available for an offline payment transaction, the
그 후 방법(260)은 도 2의 블록(270)으로 진행한다.The
도 2로 돌아가면, 블록(270)에서, 계정 관리 시스템(130)은 인출 레코드를 검증한다. 인출 레코드를 검증하는 방법(270)은 도 8에 기술된 방법들을 참조하여 이후 더 자세히 기술된다.Returning to FIG. 2, at
도 8은 블록(270)에서 참조된 바와 같은, 특정 예시적인 실시예들에 따른, 인출 레코드를 검증하는 방법(270)을 도시하는 블록 흐름도이다. 방법(270)은 도 1에 도시된 컴포넌트들을 참조하여 기술된다.FIG. 8 is a block flow diagram illustrating a
블록(810)에서, 머천트 디바이스(120)는 머천트 디바이스 서명 인증서(124)를 통해 인출 레코드에 서명한다. 예시적인 실시예에서, 머천트 디바이스(120)는 인출 레코드를 검증 한 이후 오프라인 지불 거래를 허가하였고, 잔액 증명서(113)를 검증하였고, 그리고 오프라인 지불 거래를 위한 충분한 펀드들이 있음을 결정하였다. 본 실시예에서, 머천트 디바이스(120)는 거래를 허가하기 위해 인출 레코드에 서명한다. 다른 예시적인 실시예에서, 머천트 디바이스(120)는 또는 사용자 디바이스(110)에게 거래가 성공적임을 표시하는 상태 코드 또는 메시지를 생성한다.At
블록(815)에서, 머천트 디바이스(120)는 서명된 인출 레코드를 사용자 디바이스(110)에 전송한다. 예시적인 실시예에서, 서명된 인출 레코드는 사용자 디바이스(110)와 머천트 디바이스(120) 사이의 보안 통신 채널을 통해 전송된다. 예시적인 실시예에서, 사용자 디바이스(110)로의 서명된 인출 레코드의 전송은 오프라인 지불 거래를 완료시킨다. 다른 예시적인 실시예에서, 머천트 디바이스(120)는 사용자 디바이스(110)에게 거래가 성공적임을 표시하는 상태 코드 또는 메시지를 전송한다.At
블록(820)에서, 머천트 디바이스는 네트워크(140) 액세스를 가졌는지 여부를 결정한다. 예시적인 실시예에서, 머천트 디바이스(120)는 계정 관리 시스템(130)과 통신하기 위해 네트워크(140) 액세스를 요구한다.At
만일 머천트 디바이스(120)가 네트워크(140) 액세스를 가지지 않았다면, 방법(270)은 도 8의 블록(830)으로 진행한다. 블록(830)에서, 머천트 디바이스(120)는 네트워크(140) 액세스를 가질 때까지 인출 레코드를 저장한다.If the merchant device 120 did not have
도 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 the
블록(850)에서, 계정 관리 시스템(130)은 머천트 디바이스(120)로부터 인출 레코드를 수신한다.At
블록(860)에서, 계정 관리 시스템(130)은 인출 레코드를 검증한다. 예시적인 실시예에서, 계정 관리 시스템(130)은 머천트 디바이스 서명 인증서 공개 키(124a)를 사용하여 인출 레코드를 검증한다. 본 실시예에서, 계정 관리 시스템(130)은 인출 레코드 및/또는 머천트 디바이스(120)의 신원 또는 유효성을 검증한다. 다른 예시적인 실시예에서, 머천트 디바이스(120)는 인출 레코드와 함께 식별자 또는 메시지를 전송한다. 본 실시예에서, 계정 관리 시스템(130)은 머천트 디바이스(120)의 신원을 확인함으로써 인출 레코드를 검증한다. 다른 예시적인 실시예에서, 계정 관리 시스템(130)은 사용자 또는 사용자 디바이스(110)의 신원을 검증함으로써 인출 레코드를 검증한다.At
만일 인출 레코드 검증이 실패하면, 방법(270)은 도 8의 블록(870)으로 진행한다. 블록(870)에서, 오프라인 거래를 거절된다. 예시적인 실시예에서, 계정 관리 시스템(130)은 거절된 거래의 통지를 머천트 디바이스(120)에 전송한다.If the fetch record verification fails, the
도 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, the
예시적인 실시예에서, 사용자 디바이스(110)는 머천트 디바이스(120)가 인출 레코드를 계정 관리 시스템(130)에 전송하기 이전 또는 이후에 새로운 잔액 증명서(113)를 요청한다. 본 실시예에서, 사용자 디바이스(110)는 서명된 인출 레코드를 계정 관리 시스템(130)에 전송한다. 계정 관리 시스템(130)은 사용자의 계정 관리 시스템(130) 계정 내에 동일한 오프라인 지불 거래에 대해 수신된 2개의 인출 레코드들을 기록한다. 예시적인 실시예에서, 상기 2개의 인출 레코드들은 사용자의 계정 내 펀드들의 잔액의 유효성을 검증하기 위해 사용된다.In an exemplary embodiment, the user device 110 requests a
예시적인 시스템들Exemplary systems
도 9는 특정 예시적 실시예들에 따르는 컴퓨팅 머신(2000) 및 모듈(2050)을 도시한다. 컴퓨팅 머신(2000)은 본 명세서에 제시된 임의의 다양한 컴퓨터들, 서버들, 모바일 디바이스들, 임베디드 시스템들 또는 컴퓨팅 시스템들에 대응한다. 모듈(2050)은 본 명세서에 제시된 기능들을 프로세싱하고 다양한 방법들을 수행하는 것에서 컴퓨팅 머신(2000)을 지원하도록 구성된 하나 이상의 하드웨어 또는 소프트웨어 엘리먼트들을 포함한다. 컴퓨팅 머신(2000)은 프로세서(2010), 시스템 버스(2020), 시스템 메모리(2030), 저장 미디어(2040), 입력/출력 인터페이스(2060) 및 네트워크(2080)와 통신하기 위한 네트워크 인터페이스(2070)와 같은 다양한 내부적 또는 부착된 컴포넌트들을 포함한다.FIG. 9 illustrates a
컴퓨팅 머신(2000)은 통상적 컴퓨터 시스템, 임베디드 컨트롤러, 랩톱, 서버, 모바일 디바이스, 스마트폰, 셋톱 박스, 키오스크, 차량형 정보 시스템, 텔레비전과 관련된 하나 이상의 프로세서들, 커스터마이징된 기계, 임의의 기타 하드웨어 플랫폼 또는 그것들의 임의의 조합 또는 다수로서 구현된다. 컴퓨팅 머신(2000)은 데이터 네트워크 또는 버스 시스템을 통해 상호 연결된 다수의 컴퓨팅 머신들을 사용하여 기능하도록 구성된 분산 시스템이다.The
프로세서(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)는 하나 이상의 다른 컴퓨팅 머신들 내에서 실행하는 가상화된 컴퓨팅 머신이다.
시스템 메모리(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)와 같은 비-휘발성 저장 디바이스를 포함하거나, 그와 함께 동작한다는 것을 인식해야 한다.The
저장 미디어(2040)는 하드 디스크, 플로피 디스크, CD-ROM, DVD, 블루-레이 디스크, 자기 테이프, 플래시 메모리, 기타 비-휘발성 메모리 디바이스, SSD, 임의의 자기적 저장 디바이스, 임의의 광학적 저장 디바이스, 임의의 전기적 저장 디바이스, 임의의 반도체 저장 디바이스, 임의의 물리-기반 저장 디바이스, 임의의 기타 데이터 저장 디바이스 또는 그것들의 임의의 조합 또는 다수를 포함한다. 저장 미디어(2040)는 하나 이상의 운영 체제, 어플리케이션 프로그램들 및 모듈(2050)과 같은 프로그램 모듈들, 데이터 또는 임의의 기타 정보를 저장한다. 저장 미디어(2040)는 컴퓨팅 머신(2000)의 일부이거나 또는 그와 연결된다. 또한 저장 미디어(2040)는 서버들, 데이터베이스 서버들, 클라우드 스토리지, NAS(network attached storage) 등과 같은 컴퓨팅 머신(2000)과 통신하는 하나 이상의 다른 컴퓨팅 머신들의 일부이다.The
모듈(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 the
입력/출력(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)
I/O 인터페이스(2060)는 컴퓨팅 머신(2000)를 마우스들, 터치-스크린들, 스캐너들, 전자 디지타이저들, 센서들, 수신기들, 터치패드들, 트랙볼드, 카메라들, 마이크들, 키보드들, 임의의 기타 포인팅 디바이스들 또는 그것들의 임의의 조합을 포함하는 다양한 입력 디바이스들에 연결한다. I/O 인터페이스(2060)는 컴퓨팅 머신(2000)를 비디오 디스플레이들, 스피커들, 프린터들, 프로젝터들, 촉각적 피드백 디바이스들, 자동 제어, 로보틱 컴포넌트들, 액츄에이터들, 모터들, 팬들, 솔레노이드들, 밸브들, 펌프들, 전송기들, 신호 생략기들, 라이트들 등을 포함하는 다양한 출력 디바이스들에 연결한다.The I /
컴퓨팅 머신(2000)은 네트워크 인터페이스(2070)을 통해 하나 이상의 다른 시스템들 또는 네트워크(2080) 상의 컴퓨팅 머신들에게로 논리적 연결들을 사용하여 네트워크화된 환경에서 동작한다. 네트워크(2080)는 WAN들(wide area networks), LAN들(local area networks), 인트라넷들, 인터넷, 무선 엑세스 네트워크들, 유선 네트워크들, 모바일 네트워크들, 전화 네트워크들, 광학 네트워크들 또는 그것들의 조합들을 포함한다. 네트워크(2080)는 스위칭된 패킷, 스위칭된 회로 또는 임의의 토폴로지이고, 임의의 통신 프로토콜을 사용한다. 네트워크(2080) 내의 통신 링크들은 광섬유 케이블들, 프리-스페이스 옵틱들, 웨이브가이드들, 전기적 컨덕터들, 무선 링크들, 안테나들, 라디오-주파수 통신들 등과 같은 다양한 디지털 또는 아날로그 통신 매체를 수반한다.The
프로세서(2010)는 시스템 버스(2020)를 통해 본 명세서에서 논의된 컴퓨팅 머신(2000) 또는 다양한 주변장치들의 다른 엘리먼트들에 연결된다. 시스템 버스(2020)는 프로세서(2010) 내, 프로세서(2010) 외, 또는 둘 다에 있다는 것을 인식해야만 한다. 일부 실시예들에 따르면, 임의의 프로세서(2010), 컴퓨팅 머신(2000)의 다른 엘리먼트들 또는 본 명세서에서 논의되는 다양한 주변장치들은 시스템 온 칩(SOC), 시스템 온 패키지(SOP), 또는 ASIC 디바이스와 같은 단일의 디바이스에 통합된다.The
본 명세서에서 논의된 시스템들이 사용자들에 관한 개인 정보를 수집하거나 또는 개신 정보를 사용하는 경우들에 있어서, 사용자들에게 프로그램들 또는 구성들이 사용자 정보(예를 들면, 사용자의 소셜 네트워크, 소셜 액션들 또는 활동들, 직업, 사용자의 선호들 또는 사용자의 현재 위치에 관한 정보)를 수집할 것인지 여부를 제어할, 사용자와 더 관련된 컨텐츠 서버로부터의 컨텐츠를 수신할지 및/또는 어떻게 수신할지 제어할 기회 또는 옵션이 제공된다. 추가로, 특정 데이터는 그것이 저장되거나 사용되기 전에 하나 이상의 다양한 방식들로 취급되어, 개인적으로 식별가능한 정보는 제거된다. 예를 들면, 사용자의 아이덴티티는 사용자에 대한 개인적으로 식별가능한 정보가 결정될 수 없도록 취급되거나, 또는 사용자의 지리적 위치는 위치 정보가 획득된 곳에서 일반화되어(도시, 우편번호, 또는 주 레벨로와 같이), 사용자의 특정 위치가 결정될 수 없게 된다. 따라서, 사용자는 사용자에 관한 정보가 어떻게 수집되는지 그리고 컨텐츠 서버에 의해 사용되는지에 관한 제어를 가진다.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.
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US14/226,785US20150278795A1 (en) | 2014-03-26 | 2014-03-26 | Secure offline payment system |
| US14/226,785 | 2014-03-26 | ||
| US14/226,798US20150278796A1 (en) | 2014-03-26 | 2014-03-26 | Reserving account balance for concurrent payments in secure offline payment system |
| US14/226,798 | 2014-03-26 | ||
| PCT/US2015/022831WO2015148850A1 (en) | 2014-03-26 | 2015-03-26 | Secure offline payment system |
| Publication Number | Publication Date |
|---|---|
| KR20160135799Atrue KR20160135799A (en) | 2016-11-28 |
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1020167029240AWithdrawnKR20160135799A (en) | 2014-03-26 | 2015-03-26 | Secure offline payment system |
| Country | Link |
|---|---|
| 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) |
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20200003374A (en)* | 2017-08-22 | 2020-01-09 | 알리바바 그룹 홀딩 리미티드 | Method and apparatus for offline payment, service processing, and payment processing |
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20230196328A1 (en) | 2013-02-14 | 2023-06-22 | Advanced New Technologies Co., Ltd. | Data interaction method and device, and offline credit payment method and device |
| US10192214B2 (en) | 2013-03-11 | 2019-01-29 | Google Llc | Pending deposit for payment processing system |
| WO2017106472A1 (en)* | 2015-12-17 | 2017-06-22 | Mastercard International Incorporated | Method and system for distribution, use and validation of electronic entitlement certificates |
| US11049096B2 (en)* | 2015-12-31 | 2021-06-29 | Paypal, Inc. | Fault tolerant token based transaction systems |
| CN106997530B (en) | 2016-01-25 | 2022-10-14 | 创新先进技术有限公司 | Credit payment method and device based on mobile terminal card simulation |
| CN106997527A (en)* | 2016-01-25 | 2017-08-01 | 阿里巴巴集团控股有限公司 | Credit payment method and device based on mobile terminal P2P |
| CN114240421A (en) | 2016-01-25 | 2022-03-25 | 创新先进技术有限公司 | Credit payment method and device based on mobile terminal eSE |
| US11354658B2 (en)* | 2016-02-11 | 2022-06-07 | Mastercard International Incorporated | Method and system for offline blockchain exchanges |
| EP3293686A1 (en)* | 2016-09-07 | 2018-03-14 | Mastercard International, Inc. | Method and system for allowing offline peer-2-peer transactions using exchangeable provisioned tokens |
| CN110023980A (en)* | 2016-12-02 | 2019-07-16 | 谷歌有限责任公司 | Graphical user interface showing post-interaction animations |
| CN108205755A (en)* | 2016-12-19 | 2018-06-26 | 北京握奇智能科技有限公司 | A kind of electronic fare payment system and method |
| CN106790527A (en)* | 2016-12-20 | 2017-05-31 | 张峰 | Accounts information processing method, system and terminal |
| CN106875179B (en)* | 2017-02-03 | 2020-12-08 | 杭州小步科技有限公司 | Offline two-dimensional code payment method and system thereof |
| WO2018151953A1 (en)* | 2017-02-15 | 2018-08-23 | Mastercard International Incorporated | Offline transaction system and method |
| US20180260795A1 (en)* | 2017-03-13 | 2018-09-13 | Mastercard International Incorporated | Method and system for accessing locally stored digital funds |
| CN108460593B (en)* | 2017-11-01 | 2022-09-20 | 福建博思软件股份有限公司 | Offline two-dimensional code payment method and device |
| US11030610B2 (en) | 2018-10-02 | 2021-06-08 | International Business Machines Corporation | Preauthorization of mobile payments expected in a reduced-functionality state |
| US10834269B2 (en) | 2018-10-02 | 2020-11-10 | International Business Machines Corporation | Specialized secondary compartment in a mobile device |
| US11475440B2 (en)* | 2019-06-10 | 2022-10-18 | Visa International Service Association | System, method, and computer program product for exchanging transaction data |
| CN112241879A (en) | 2019-07-17 | 2021-01-19 | 天地融科技股份有限公司 | An offline transaction method and system based on electronic cash |
| CN110610367B (en)* | 2019-08-29 | 2023-09-05 | 深圳市元征科技股份有限公司 | Transaction data payment method and device, electronic equipment and server |
| JP6896813B2 (en) | 2019-08-30 | 2021-06-30 | 株式会社日立製作所 | Transaction execution method and system |
| JP7075917B2 (en)* | 2019-10-18 | 2022-05-26 | 真敬 森下 | Management device, management program, management method, terminal device, and management system |
| CN110880106A (en)* | 2019-10-30 | 2020-03-13 | 支付宝(杭州)信息技术有限公司 | Method and device for realizing double offline payment |
| SE1951426A1 (en)* | 2019-12-11 | 2021-06-12 | Trust Anchor Group Ipr Ab | Method for performing an offline transaction |
| ES3035237T3 (en)* | 2020-01-29 | 2025-09-01 | Crunchfish Digital Cash Ab | Method, 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-01 | 2022-04-07 | ExtoLabs, LLC | Leveraging tamper-resistant hardware to transfer digital currency between local devices |
| SE2150228A1 (en)* | 2021-02-12 | 2022-03-08 | Crunchfish Digital Cash Ab | Payment service provider interoperability for offline digital payments |
| EP4292037A4 (en)* | 2021-02-12 | 2024-12-18 | Crunchfish Digital Cash AB | PAYMENT SERVICE PROVIDER INTEROPERABILITY FOR DIGITAL PAYMENTS |
| WO2022216216A1 (en)* | 2021-04-08 | 2022-10-13 | Crunchfish Digital Cash Ab | Method and system for offline electronic card payments |
| WO2022231471A1 (en)* | 2021-04-28 | 2022-11-03 | Акционерное общество "Национальная система платежных карт" | System and method for a cashless transfer of gratuity merged with an order payment |
| JP7732780B2 (en)* | 2021-06-17 | 2025-09-02 | 株式会社日立製作所 | Payment System |
| CN119624443A (en)* | 2021-09-27 | 2025-03-14 | 支付宝(杭州)信息技术有限公司 | Offline payment authorization, offline payment, payment collection method and device |
| WO2023101596A1 (en)* | 2021-12-01 | 2023-06-08 | Crunchfish Digital Cash Ab | Computerized method and system for digital payments |
| FR3130055B1 (en)* | 2021-12-02 | 2025-01-03 | Banks And Acquirers Int Holding | Method of carrying out a transaction, corresponding devices and programs. |
| CN115564448A (en)* | 2022-10-08 | 2023-01-03 | 中国银行股份有限公司 | A blockchain-based payment method, device, equipment, medium and product |
| WO2025048687A1 (en)* | 2023-08-29 | 2025-03-06 | Telefonaktiebolaget Lm Ericsson (Publ) | Secure offline transactions using trusted payer |
| WO2025170595A1 (en)* | 2024-02-09 | 2025-08-14 | Visa International Service Association | Conditional offline system with offline reversal |
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5694471A (en)* | 1994-08-03 | 1997-12-02 | V-One Corporation | Counterfeit-proof identification card |
| JPH09185658A (en)* | 1995-12-27 | 1997-07-15 | N T T Data Tsushin Kk | Electronic cash dealing system |
| JP4338901B2 (en)* | 2001-01-15 | 2009-10-07 | 株式会社エヌ・ティ・ティ・データ | Mobile information transmission system and credit system |
| US20030125012A1 (en)* | 2001-12-28 | 2003-07-03 | Allen Lee S. | Micro-credit certificate for access to services on heterogeneous access networks |
| JP2004355486A (en)* | 2003-05-30 | 2004-12-16 | Bank Of Tokyo-Mitsubishi Ltd | Multi-functional ic card and ic card terminal |
| JP2004362332A (en)* | 2003-06-05 | 2004-12-24 | Bank Of Tokyo-Mitsubishi Ltd | Ic card payment system |
| JP4724119B2 (en)* | 2004-07-22 | 2011-07-13 | パナソニック株式会社 | Electronic value, electronic wallet device and its use system |
| US20070168260A1 (en)* | 2005-09-30 | 2007-07-19 | Mastercard International Incorporated | Payment apparatus and method |
| US8117453B2 (en)* | 2005-11-23 | 2012-02-14 | Proton World International N.V. | Customization of an electronic circuit |
| JP4923637B2 (en)* | 2006-03-08 | 2012-04-25 | 日本電気株式会社 | Electronic payment system, electronic payment method, electronic payment program, and recording medium |
| JP2010026811A (en)* | 2008-07-18 | 2010-02-04 | Fuji Electric Holdings Co Ltd | Ic card service system, and service management center, service terminal and program therefor |
| US8341084B2 (en)* | 2009-06-08 | 2012-12-25 | Mastercard International Incorporated | Method, apparatus, and computer program product for topping up prepaid payment cards for offline use |
| US9911154B2 (en)* | 2010-07-08 | 2018-03-06 | Mastercard International Incorporated | Apparatus and method for dynamic offline balance management for preauthorized smart cards |
| US20130103523A1 (en)* | 2011-10-24 | 2013-04-25 | Aneto Pablo Okonkwo | Transaction storage scheme for offline payment system |
| US20130185214A1 (en)* | 2012-01-12 | 2013-07-18 | Firethorn Mobile Inc. | System and Method For Secure Offline Payment Transactions Using A Portable Computing Device |
| US8898088B2 (en)* | 2012-02-29 | 2014-11-25 | Google Inc. | In-card access control and monotonic counters for offline payment processing system |
| JP2013186528A (en)* | 2012-03-06 | 2013-09-19 | Toppan Printing Co Ltd | Settlement card management system, settlement card management method |
| JP2013186529A (en)* | 2012-03-06 | 2013-09-19 | Toppan Printing Co Ltd | Settlement card management system and settlement card management method |
| US20140025581A1 (en)* | 2012-07-19 | 2014-01-23 | Bank Of America Corporation | Mobile transactions using authorized tokens |
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20200003374A (en)* | 2017-08-22 | 2020-01-09 | 알리바바 그룹 홀딩 리미티드 | Method and apparatus for offline payment, service processing, and payment processing |
| US11113697B2 (en) | 2017-08-22 | 2021-09-07 | Advanced New Technologies Co., Ltd. | Method and apparatus for offline payment, service processing, and payment processing |
| US11836732B2 (en) | 2017-08-22 | 2023-12-05 | Advanced New Technologies Co., Ltd. | Method and apparatus for offline payment, service processing, and payment processing |
| Publication number | Publication 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 |
| Publication | Publication Date | Title |
|---|---|---|
| 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 |
| Date | Code | Title | Description |
|---|---|---|---|
| A201 | Request for examination | ||
| PA0105 | International application | Patent event date:20161020 Patent event code:PA01051R01D Comment text:International Patent Application | |
| PA0201 | Request for examination | ||
| PG1501 | Laying open of application | ||
| E902 | Notification of reason for refusal | ||
| PE0902 | Notice of grounds for rejection | Comment text:Notification of reason for refusal Patent event date:20180419 Patent event code:PE09021S01D | |
| PC1202 | Submission 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 | |
| WITB | Written withdrawal of application |