KR102344481B1 - 로열티 포인트 분배를 위한 시스템 및 방법 - Google Patents

로열티 포인트 분배를 위한 시스템 및 방법 Download PDF

Info

Publication number
KR102344481B1
KR102344481B1 KR1020207009730A KR20207009730A KR102344481B1 KR 102344481 B1 KR102344481 B1 KR 102344481B1 KR 1020207009730 A KR1020207009730 A KR 1020207009730A KR 20207009730 A KR20207009730 A KR 20207009730A KR 102344481 B1 KR102344481 B1 KR 102344481B1
Authority
KR
South Korea
Prior art keywords
loyalty
request
blockchain
computing device
host computing
Prior art date
Application number
KR1020207009730A
Other languages
English (en)
Other versions
KR20200060723A (ko
Inventor
사스트리 두르바술라
안드라스 페렌치
해리쉬 나이크
비쉬누바자할라 수브라마냠
Original Assignee
아메리칸 익스프레스 트레블 릴레이티드 서비스즈 컴퍼니, 아이엔씨.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 아메리칸 익스프레스 트레블 릴레이티드 서비스즈 컴퍼니, 아이엔씨. filed Critical 아메리칸 익스프레스 트레블 릴레이티드 서비스즈 컴퍼니, 아이엔씨.
Priority to KR1020217041652A priority Critical patent/KR102493513B1/ko
Publication of KR20200060723A publication Critical patent/KR20200060723A/ko
Application granted granted Critical
Publication of KR102344481B1 publication Critical patent/KR102344481B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0207Discounts or incentives, e.g. coupons or rebates
    • G06Q30/0226Incentive systems for frequent usage, e.g. frequent flyer miles programs or point systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/04Payment circuits
    • G06Q20/06Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
    • G06Q20/065Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/10Payment architectures specially adapted for electronic funds transfer [EFT] systems; specially adapted for home banking systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/36Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3829Payment protocols; Details thereof insuring higher security of transaction involving key management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/387Payment using discounts or coupons
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3297Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving time stamps, e.g. generation of time stamps
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q2220/00Business processing using cryptography
    • H04L2209/38
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/56Financial cryptography, e.g. electronic payment or e-cash

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Strategic Management (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Game Theory and Decision Science (AREA)
  • Marketing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

블록체인-기반 로열티 포인트 시스템은 로열티 포인트들의 금액을 제1 고객 계정으로부터 제2 고객 계정으로 이체하기 위한 요청을 수신하는 블록체인 API 호스트를 포함할 수 있다. 시스템은 제1 고객 계정과 연관되는 공개 키를 사용하여 요청 상에서의 암호화 동작을 수행함으로써 요청을 검증할 수 있다. 시스템은 또한 블록체인에 기록하기 위해 제안을 컨센서스 참가자들에게 전파할 수 있으며, 여기서, 제안은 제1 고객 계정, 제2 고객 계정, 및 로열티 포인트들의 금액을 포함한다. 시스템은 또한 제2 고객 계정과 연관되는 로열티 지갑으로부터의 교환 요청을 수신하고, 공개 키를 사용하여 교환 요청 상에서의 암호화 동작을 수행함으로써 교환 요청을 검증하고, 블록체인에 기록하기 위해 교환 제안을 컨센서스 참가자들에게 전파할 수 있다.

Description

로열티 포인트 분배를 위한 시스템 및 방법
관련 출원에 대한 교차 참조
본 출원은 발명의 명칭이 "SYSTEMS AND METHODS FOR LOYALTY POINT DISTRIBUTION"이고 2017년 10월 9일자로 출원된 미국 특허 출원 번호 제15/728,086에 대한 우선권, 및 그 이익을 주장한다.
본 개시는 일반적으로 로열티 포인트들에 관한 것으로서, 보다 구체적으로는, 구매들에 기초한 분산형 데이터베이스를 사용하여 로열티 포인트 분배를 위한 시스템들 및 방법들에 관한 것이다.
결제 네트워크들은 전형적으로 가맹점들(merchants)과 고객들 사이의 트랜잭션들(transactions)을 처리하기 위해 다양한 시스템들을 구현한다. 가맹점들은 결제 네트워크의 멤버들이고 가맹점들은 고객 계정들(accounts)에 청구할 권한이 있다. 고객들은 결제 네트워크와 트랜잭션 계정을 갖는다. 트랜잭션를 완료하기 위해, 가맹점은 전형적으로 트랜잭션 상세들 및 카드 멤버의 계정 정보와 함께 결제 요청(또는 결산)을 결제 네트워크에 전송한다. 로열티 포인트들을 사용하는 결제 네트워크들의 경우, 포인트들을 사용하기 위한 옵션들은 종종 일부 가맹점들에 제한된다. 결제 네트워크들은 전형적으로 전통적인 결제 모델과 연관되는 증가된 비용들 및 제한들에 직면한다. 결제 네트워크는 결제 요청들을 처리하기 위한 보안 프로토콜들을 구현하고, 네트워크 인프라스트럭처와 함께 그러한 보안 프로토콜들은 개발 및 유지하기 위해 많은 비용이 든다. 높은 네트워크 비용들은 또한 결제 네트워크를 사용하는 가맹점들에게 청구되는 높은 수수료들(fees)을 야기한다. 로열티 포인트들과 같은 결제 네트워크에 의해 지원되는 추가 프로그램들은, 예를 들어, 보안 및 인프라스트럭처와 연관되는 비용들을 추가로 증가시킨다.
로열티 포인트들에 기초하여 결제 네트워크를 동작시키기 위한 시스템, 방법, 및 컴퓨터 판독가능 매체(집합적으로, "시스템")가 개시된다. 시스템은 로얄티 포인트들의 금액(amount)을 제1 고객 계정으로부터 제2 고객 계정으로 이체하기 위한 요청을 수신하는 블록체인 API 호스트를 포함할 수 있다. 로열티 포인트 이체들에 더하여, 블록체인-기반 시스템은 지출에 대한 응답으로 로열티 포인트들을 고객들에게 수여하고, 상품들 및 서비스들에 대해 로열티 포인트들을 상환하고, 로열티 포인트들을 피아트 통화(fiat currency)로 교환하고, 다른 로열티 포인트 트랜잭션들을 실행할 수 있다. 시스템은 제1 고객 계정과 연관되는 공개 키를 사용하여 요청 상에서의 암호화 동작을 수행함으로써 요청을 검증할 수 있다. 시스템은 또한 제안을 블록체인에 기록하기 위한 컨센서스(consensus) 참가자들에게 전파할 수 있으며, 여기서, 제안은 제1 고객 계정, 제2 고객 계정, 및 로열티 포인트들의 금액을 포함한다.
다양한 실시예들에서, 로열티 지갑은 컴퓨팅 디바이스에서 실행되고 API 호출을 사용하여 요청을 블록체인 API 호스트에 전송할 수 있다. 컨센서스 참가자들(consensus participants)은 작업 증명(proof of work), 지분 증명(proof of stake), 실질적 비잔틴 장애 허용(practical byzantine fault tolerance), 또는 위임 지분 증명(delegated proof of stake), 또는 임의의 적합한 컨센서스 알고리즘 중 적어도 하나를 사용하여 제안에 대한 컨센서스를 달성할 수 있다. 시스템은 또한 공개 키를 포함하는 고객 계정에 대한 등록 요청을 수신하는 동작, 공개 키를 사용하여 등록 요청의 적어도 일부 상에서의 암호화 동작을 수행함으로써 등록 요청을 검증하는 동작, 블록체인 API 호스트에 의해, 등록 제안을 블록체인에 기록하기 위해 컨센서스 참가자들에게 전파하는 동작을 포함하는 동작들을 수행할 수 있다. 로열티 지갑은 공개 키에 대응하는 개인 키를 암호화하고/하거나 저장할 수 있다.
다양한 실시예들에서, 시스템은 또한 로열티 파트너 사이트에 대한 등록 요청을 수신하고, 로열티 파트너 사이트와 연관되는 공개 키를 사용하여 등록 요청의 적어도 일부 상에서 암호화 동작을 수행함으로써 등록 요청을 검증하고, 등록 제안을 블록체인에 기록하기 위해 컨센서스 참가자들에게 전파할 수 있다. 시스템은 또한 연관되는 로열티 지갑으로부터 결제 요청을 수신하고, 결제 요청 상에서의 암호화 동작을 수행함으로써 결제 요청을 검증하고, 결제 제안을 블록 체인에 기록하기 위한 컨센서스 참가자들에게 전파할 수 있다. 결제 제안은 가맹점 계정, 결제 금액, 및 고객 계정을 포함할 수 있다. 시스템은 또한 제2 고객 계정과 연관되는 로열티 지갑으로부터 교환 요청을 수신하고, 공개 키를 사용하여 교환 요청 상에서의 암호화 동작을 수행함으로써 교환 요청을 검증하고, 교환 제안을 블록 체인에 기록하기 위한 컨센서스 참가자들에게 전파할 수 있다.
상기 특징들 및 요소들은, 본원에 달리 명백하게 표시되지 않는 한, 독점 없이 다양한 조합들로 결합될 수 있다. 이들 특징들 및 요소들 뿐만 아니라 개시된 실시예들의 동작은 다음의 설명 및 첨부 도면을 고려하여 보다 명백하게 될 것이다.
본 개시의 발명 대상은 명세서의 결론 부분에서 특히 지적되고 명확하게 청구된다. 그러나, 본 개시의 보다 완전한 이해는 유사한 번호들이 유사한 요소들을 나타내는, 도면 특징들과 함께 고려될 때 상세한 설명 및 청구범위를 참조함으로써 획득될 수 있다.
도 1은 다양한 실시예들에 따라, 블록체인 상에 유지되는 공개, 개인, 또는 반-개인 원장(leger) 상에도 동작하도록 구성되는 로열티 포인트 또는 디지털 통화 시스템을 예시한다.
도 2는 다양한 실시예들에 따라, 블록체인-기반 원장을 사용하여 로열티 포인트들을 위한 결제 네트워크에 사용자들을 등록하는 프로세스를 예시한다.
도 3은 다양한 실시예들에 따라, 결제로서 로열티 포인트들을 수락하는 가맹점에 의해 호스팅되는 웹사이트 상에서 로열티 포인트 구매들에 대해 쇼핑하는 프로세스를 예시한다.
도 4는 다양한 실시예들에 따라, 블록체인-기반 원장 상에서 로열티 포인트 잔액을 확인하는 프로세스를 예시한다.
도 5는 다양한 실시예들에 따라, 사용자가 그들의 로열티 포인트들을 소비하는 프로세스를 예시한다.
도 6은 다양한 실시예들에 따라, 블록체인-기반 원장을 사용하는 피어 투 피어 로열티 포인트 이체(transfer)을 위한 프로세스를 예시한다.
도 7은 다양한 실시예들에 따라, 로열티 연합 멤버를 블록체인-기반 로열티 포인트 시스템에 추가하는 프로세스를 예시한다.
도 8은 다양한 실시예들에 따라, 환전(currency exchange)을 블록체인-기반 로열티 포인트 시스템에 추가하는 프로세스를 예시한다.
도 9는 다양한 실시예들에 따라, 피아트 통화에 대해 로열티 포인트들을 교환하기 위한 예시적 프로세스를 예시한다.
다양한 실시예들의 상세 설명은 도면들을 참조하며, 이는 예시로서 다양한 실시예들을 도시한다. 이들 다양한 실시예들이 당업자가 본 개시를 실시할 수 있게 하도록 충분한 상세로 설명되지만, 다른 실시예들이 실현될 수 있고 논리적 및 기계적 변경들이 본 개시의 사상 및 범위로부터 벗어나는 것 없이 이루어질 수 있다는 것이 이해되어야 한다. 따라서, 상세한 설명은 제한의 목적들이 아닌 단지 예시의 목적들을 위해 제공된다. 예를 들어, 방법 또는 프로세스 설명들 중 임의의 것에 인용되는 단계들은 임의의 순서로 실행될 수 있고 제시되는 순서에 제한되지 않는다. 또한, 기능들 또는 단계들 중 임의의 것은 하나 이상의 제3자들에게 아웃소싱되거나 이들에 의해 수행될 수 있다. 더욱이, 단수에 대한 임의의 참조는 복수의 실시예들을 포함하고, 하나보다 많은 구성요소에 대한 임의의 참조는 단일(singular) 실시예를 포함할 수 있다.
피어 투 피어 결제들에 기초한 결제 네트워크는 전통적인 카드 결제 네트워크들의 대부분의 기능들을 용이하게 하고 추가적인 서비스들 및 기능을 가능하게 하기 위해 사용될 수 있다. 예를 들어, 블록체인 구동 피어 투 피어 결제 네트워크는 거의-즉각적인 트랜잭션 인가 및 결산(settlement)를 가능하게 한다. 그러한 네트워크 상에서의 결제, 인가, 및/또는 결산은 결제 네트워크를 구현하기 위해 사용되는 인프라스트럭처에 따라 1시간, 10분, 1분 또는 그 이하에서 환전 소유(hands)를 야기한다. 블록체인-기반 피어 투 피어 결제 네트워크의 경우, 정부 조직 또는 컨소시엄은 은행 이체 서비스들에 대한 액세스를 제어할 수 있다. 누구나 결제 네트워크에 참여할 수 있지만, 다양한 실시예들에서, 관리 조직(들)에 등록한 사용자들만이 은행 계정들에 대한 무선 이체들(wire transfers)을 통해 적립된 크레딧들(earned credits)을 피아트 통화로 이체할 수 있다. 블록체인은 본원에 더 상세히 설명되는 바와 같은 결제 처리와 연관되는 워크플로우들을 자체적으로 관리할 수 있다.
결제 네트워크들은 블록체인을 기반으로 할 수 있는 분산 원장(distributed ledger)을 사용하고, 결제 네트워크들은 컨센서스-기반 트랜잭션 검증을 갖는다. 그러한 결제 네트워크들은 또한 분산적 방식으로 비즈니스 워크플로우들을 시행하고 계정 잔액들을 추적하는 디지털 통화 스마트 계약들(digital currency smart contracts)을 가능하게 할 수 있다. 결제 네트워크들은 또한 네트워크의 일부로서 신뢰할 수 있는 엔티티들의 디렉토리로서 작용하는 평판 기반 스마트 계약들을 가능하게 할 수 있다. 디지털 통화 발행자는 결제 네트워크에 포함될 수 있고 전자 자금 이체(electronic funds transfer; EFT) 시스템들을 통해 외부 은행들과 디지털 통화 기반 지갑들 사이에서 잔액들을 이체하도록 구성될 수 있다. 디지털 통화 발행자는 또한 대출 한도들(lines of credit)을 디지털 통화들로 전환하기 위해 고객들을 대출기관들과 연결시킬 수 있다. 결제 네트워크는 또한 사용자 디바이스들, 예컨대, 예를 들어, 컴퓨터들, 태블릿들, 스마트폰들, 사물 인터넷 디바이스들(Internet of Things devices; IoT devices)등 상에 전개되는 디지털 지갑(digital wallet) 서비스들을 포함할 수 있다. 디지털 지갑은 결제 네트워크를 뒷받침하는 스마트 계약들 및 블록체인과 상호작용함으로써 결제들을 가능하게 할 수 있다.
도 1은 다양한 실시예들에 따라, 블록체인(102) 상에서 동작하는 로열티 포인트 네트워크(100)를 도시한다. 블록체인(102)은 레코드들을 판독가능 방식으로 유지하고 템퍼링(tampering)에 대해 저항하는 분산형 데이터베이스일 수 있다. 블록체인은 이전 블록을 참조하여 상호연결되는 데이터를 포함하는 블록들의 시스템을 포함할 수 있다. 블록들은 파일 전송 데이터, 스마트 계약 데이터, 및/또는 원하는 바와 같은 다른 정보를 보유할 수 있다. 각각의 블록은 이전 블록에 링크될 수 있고 타임스탬프를 포함할 수 있다. 로열티 결제 네트워크(100)의 지원으로 구현될 때, 블록체인은 로열티 포인트 트랜잭션들 및 등록들을 위한 불변 로그의 역할을 할 수 있다. 블록체인은 개인, 컨소시엄 및/또는 사실상 공공인 피어 투 피어 네트워크일 수 있다(예를 들어, 이더리움, 비트코인 등). 컨소시엄 및 개인 네트워크들은 블록체인의 콘텐츠에 대해 향상된 제어를 제공할 수 있고 공공 네트워크들은 보안을 향상시키기 위해 네트워크의 누적 연산력(computing power)을 활용할 수 있다. 그와 관련하여, 블록체인(102)은 기술들, 예컨대, 예를 들어, 이더리움 GETH, 에스-라이트월렛(eth-lightwallet), 또는 다른 적합하거나 장래의 블록체인 인터페이스 기술들을 사용하여 구현될 수 있다.
다양한 실시예들에서, 블록체인(102)은 블록체인의 블록들을 검증하도록 구성되는 컴퓨팅 디바이스들의 형태로 컨센서스 참가자들(103)에 의해 유지될 수 있다. 로열티 포인트 네트워크(100)는 블록체인(102)으로부터의 판독 및 이에 대한 기록을 추구하는 다양한 다른 컴퓨팅 디바이스들 및 시스템들로부터의 API 호출을 수신하는 것에 응답하여 블록체인(102)과 통신하는 복수의 블록체인 API 호스트들(104)을 포함한다. 본원에 설명되는 블록체인 API 호스트들(104) 및 다른 컴퓨팅 디바이스들은 컴퓨터 또는 프로세서, 또는 한 세트의 컴퓨터들/프로세서들의 형태를 취할 수 있지만, 다른 유형들의 컴퓨팅 유닛들 또는 시스템들이 사용될 수 있다. 예시적인 컴퓨팅 디바이스들은 서버들, 풀링된 서버들, 랩탑들, 노트북들, 핸드 헬드 컴퓨터들, 개인 휴대 정보 단말기들, 셀룰러 폰들, 스마트 폰들(예를 들어, iPhone®, BlackBerry®, Android® 등), 태블릿들, 웨어러블들(예를 들어, 스마트 시계들 및 스마트 안경들), 사물 인터넷(Internet of things; IOT) 디바이스들 또는 네트워크를 통해 데이터를 수신할 수 있는 임의의 다른 디바이스들을 포함한다. 각각의 컴퓨팅 디바이스는 블록체인(110)과 상호작용하고, 다른 디바이스들과 통신하고, 암호화 동작들을 수행하고, 로열티 포인트 네트워크(100) 내에서 달리 동작하는 애플리케이션들을 실행시킬 수 있다. 컴퓨팅 디바이스들은 신 클라이언트(웹) 기반, 하이브리드(즉 웹 및 네이티브, 예컨대 iOS 및 Android), 또는 블록체인 API 호스트(104)에 대한 호출을 형성하고 블록체인(102)과 상호작용하는 네이티브 애플리케이션일 수 있는 클라이언트 애플리케이션을 실행시킬 수 있다.
다양한 실시예들에서, 블록체인 API 호스트들(104)은 네트워크, 예컨대, 예를 들어, LAN, WAN, 및/또는 인터넷을 통한 통신에 의해 액세스가능한 외향(outward facing) API(108)를 호스팅할 수 있다. 본원에 사용되는 바와 같이, 용어 "네트워크"는 하드웨어 및/또는 소프트웨어 구성요소들을 통합하는 임의의 클라우드, 클라우드 컴퓨팅 시스템 또는 전자 통신 시스템 또는 방법을 포함한다. 당사자들 사이의 통신은 임의의 적합한 통신 채널들, 예컨대, 예를 들어, 전화 네트워크, 엑스트라넷, 인트라넷, 인터넷, 상호작용 시점(point of interaction) 디바이스(매장 디바이스, 개인 휴대 정보 단말기, 셀룰러 폰, 키오스크, 태블릿 등), 온라인 통신들, 위성 통신들, 오프 라인 통신들, 무선 통신들, 트랜스폰더 통신들, 근거리 통신망(local area network; LAN), 광역 통신망(wide area network; WAN), 가상 사설망(virtual private network; VPN), 네트워크화된 또는 링크된 디바이스들, 키보드, 마우스 및/또는 임의의 적합한 통신 또는 데이터 입력 방식(modality)을 통해 달성될 수 있다. 또한, 시스템이 TCP/IP 통신들 프로토콜들로 구현되는 것으로서 본원에 종종 설명되지만, 시스템은 또한 IPX, Appletalk, IP-6, NetBIOS, OSI, 임의의 터널링 프로토콜(예를 들어 IPsec, SSH), 또는 임의의 수의 기존 또는 미래의 프로토콜들을 사용하여 구현될 수 있다. 네트워크가 인터넷과 같은 공용 네트워크의 특성인 경우, 네트워크는 안전하지 않고 도청자들에게 개방되어 있다고 가정하는 것이 유리할 수 있다. 인터넷과 관련하여 이용되는 프로토콜들, 표준들, 및 애플리케이션 소프트웨어와 관련되는 특정 정보는 일반적으로 당업자에게 공지되어 있고, 그러므로, 본원에서 상세히 설명될 필요가 없다. 예를 들어, DILIP NAIK, INTERNET STANDARDS AND PROTOCOLS(1998); JAVA 2 COMPLETE, 다양한 저자, (Sybex 1999); DEBORAH RAY AND ERIC RAY, MASTERING HTML 4.0(1997); 및 LOSHIN, TCP/IP CLEARLY EXPLAINED(1997) 및 DAVID GOURLEY AND BRIAN TOTTY, HTTP, THE DEFINITIVE GUIDE(2002)를 참조하며, 이 내용들은 이로써 참조로 통합된다.
네트워크는 비보안일 수 있다. 따라서, 네트워크를 통한 통신은 데이터 암호화를 이용할 수 있다. 암호화는 기술 분야에서 현재 이용 가능하거나 이용 가능하게 될 수 있는 임의의 기술들(예를 들어, Twofish, RSA, El Gamal, Schorr 서명, DSA, PGP, PKI, GnuPG, 및 다른 대칭 또는 비대칭 암호시스템들)에 의해 수행될 수 있다. 비대칭 암호화는 특히 블록체인 암호화 동작들을 위한 서명들(signatures)을 서명하고 검증하는 데 사용될 수 있다.
다양한 실시예들에서, API(108)는 로열티 포인트 네트워크(100)의 애플리케이션들 및 컴퓨팅 디바이스들에 의해 액세스 가능한 블록체인 인터페이스의 역할을 할 수 있다. API(108)는 기술들 예컨대, 예를 들어, Ethereum GETH, eth-lightwallet, 또는 다른 적합한 블록체인 인터페이스 기술들을 사용하여 구현될 수 있다. 로열티 지갑들(105)은 API(108)를 사용하여 블록체인 API 호스트(104)와 통신할 수 있다. 로열티 지갑(105)은 로열티 포인트 잔액들을 체크하거나, 로열티 포인트 잔액들을 조정하거나, 로열티 포인트들을 이체하거나, 사용자 또는 디바이스들을 등록하거나, 로열티 포인트 네트워크(100)에 의해 허용되는 바와 같이 로열티 포인트들을 달리 조작할 수 있다. 로열티 지갑(105A)은 예를 들어, 고객(109)이 블록체인(102) 및 그 또는 그녀의 로열티 포인트들과 상호작용 할 수 있게 하기 위해 모바일 디바이스 상에서 실행될 수 있다.
다양한 실시예들에서, 결제의 형태로서 로열티 포인트 네트워크(100)로부터 로열티 포인트들을 수락하는 가맹점들은 컴퓨팅 디바이스들 상에 로열티 파트너 사이트들(106)을 호스팅할 수 있다. 고객(109)은 전형적인 전자상거래 사이트사이트들과 유사한 방식으로 아이템들에 대해 로열티 파트너 사이트(106)를 브라우징하거나 검색할 수 있다. 고객(109)이 구매를 위한 아이템들을 선택하였으면, 고객(109)은 로열티 포인트들을 사용하여 아이템들을 구매할 수 있다. 따라서, 로열티 파트너 사이트들(106)은 로열티 포인트들을 사용한 구매 트랜잭션들을 완료하기 위해 API(108)를 사용하여 블록체인 API 호스트(104)를 통해 블록체인(102)과 통신할 수 있다.
다양한 실시예들에서, 환전 사이트들(107)은 고객(109)으로부터의 로열티 포인트들을 피아트 통화로 교환할 수 있다. 환전 사이트들은 고객(109)으로부터 멀리 떨어진 컴퓨팅 디바이스들 및/또는 환전 스토어들과 같은 소매(brick and mortar) 위치들 상에 호스팅되는 웹 사이트들을 포함할 수 있다. 환전 사이트들(107)은 API(108)를 사용하여 블록체인 API 호스트(104)를 통해 블록체인(102)과 통신할 수 있다.
다양한 실시예들에서, 로열티 포인트 네트워크(100)는 등록된 로열티 파트너 사이트들(106) 및/또는 환전 사이트들(107)에 대한 액세스를 제한하는 위한 제어들을 포함한다. 인증 기관(112)은 참가자들이 로열티 포인트 네트워크(100)에 가입하는 것을 허용할 수 있거나 장래의(would-be) 참가자들이 로열티 포인트 네트워크(100)에 가입하는 것을 불허할 수 있다. 인증 기관은 API(108)를 사용하여 블록체인(102)의 컨센서스 참가자들(103)을 통해 블록체인(102)과 통신할 수 있다. 인증 기관(112)은 환전 후보 스태프(113)에 의한 새로운 환전 사이트들의 검토를 위한 웹 인터페이스를 포함할 수 있다. 유사하게, 인증 기관(112)은 로열티 연합(coalition) 후보 스태프(111)에 의한 새로운 로열티 파트너 사이트들의 검토를 위한 웹 인터페이스를 포함할 수 있다. 따라서, 스태프 멤버들은 로열티 포인트 네트워크(100)에 가입하기 위한 후보들을 승인하거나 거부할 수 있다. 검증은 예를 들어, 전화번호, 고용주 id, SSN, 또는 각각의 엔티티의 고용인들에 의해 공지되는 임의의 민감한 정보와 같은 신원 증명(proof of identity)을 검증하는 것을 포함할 수 있다.
도 2를 참조하면, 다양한 실시예들에 따라, 로열티 포인트 네트워크(100)에 대한 예시적 등록 프로세스(200)가 도시된다. 고객(109)은 로열티 지갑(105)을 그 또는 그녀의 모바일 디바이스 상에 다운로드 및 설치할 수 있다(단계 201). 로열티 지갑(105)은 네트워크를 통해 블록체인 API 호스트(104)와 전자 통신할 수 있다. 로열티 지갑(105)은 공개 키와 쌍을 이루는 개인 키를 포함하는 비대칭 암호화 키 쌍을 생성하고/하거나 수신할 수 있다(단계 202). 로열티 지갑(105)은 니모닉 시드(mnemonic seed) 및 패스워드 선택 스크린을 고객(109)에게 디스플레이할 수 있고, 그것은 공개 키들(예를 들어, 블록체인 어드레스들) 및 개인 키들을 생성하기 위해 BIP32, BIP39, BIP44, 또는 다른 키 생성 기술을 사용할 수 있으며, 이는 고객의 컴퓨팅 디바이스 상에 로컬로 암호화 및 저장될 수 있다.
다양한 실시예들에서, 로열티 지갑(105)은 개인 키를 암호화하고 나중 사용을 위해 개인 키를 안전하게 저장할 수 있다. 로열티 지갑(105)은 또한 고객(109)으로부터 개인 정보를 수집할 수 있다(단계 203). 등록 양식은 예를 들어, 고객(109)이 사용자 성명을 입력하고 패스워드를 입력하기 위한 필드들을 포함할 수 있다. 고객(109)은 사용자 ID, 패스워드, 및 로열티 지갑(105)의 동록 양식으로 입력되는 임의의 다른 정보를 포함하는 사용자 크리덴셜들(credentials)을 입력할 수 있다.
다양한 실시예들에서, 로열티 지갑(105)은 블록체인 API 호스트(104)로 전송하기 위한 등록 요청을 준비 및 서명할 수 있다(단계 204). 등록 요청은 고객(109)의 (단계(203)에서 수집된) 개인 정보, (단계(202)에서 생성된) 공개 키, 애플리케이션 ID, 디바이스 ID, 계정 번호, 또는 등록과 관련이 있는 다른 정보를 포함할 수 있다. 그와 관련하여, 블록체인 어드레스는 고객의 로열티 포인트 계정과 연관될 수 있다. 서명(signature)은 (단계(202)에서 생성된) 비대칭 키 쌍으로부터 개인키로 수행되는 암호화 동작일 수 있다. 로열티 지갑(105)은 등록 요청을 블록체인 API 호스트(104)로 전송할 수 있다(단계 205). 로열티 지갑(105)은 등록 요청을 전송하기 위해 API 호출을 할 수 있다.
다양한 실시예들에서, 블록체인 API 호스트(104)는 서명을 검증하고 고객(109)을 등록하기 위한 제안을 준비할 수 있다(단계 206). 블록체인 API 호스트(104)는 개인 키를 사용하여 서명된 데이터에 공개 키를 사용하는 암호화 동작을 수행함으로써 서명을 검증할 수 있다. 블록체인 API 호스트(104)는 등록 제안을 컨센서스 참가자들(103)에게 전파할 수 있다(단계 207). 블록체인 API 호스트(104)는 제안을 블록체인에 기록함으로써 또는 그렇지 않으면 제안을 컨센서스 참가자들(103)에게 전송함으로써 등록 제안을 전파할 수 있다. 컨센서스 참가자들(103)은 컨센서스를 달성하고 고객(109)에 대한 새로운 원장(ledger)을 블록체인(102)에 추가할 수 있다(단계 208). 컨센서스 참가자들(103) 작업 증명, 지분 증명, 프랙티컬 비잔틴 장애 허용, 위임 지분 증명, 또는 다른 적합한 컨센서스 알고리즘들에 기초하여 참가자들 사이에 컨센서스를 설정함으로써 블록체인(102) 상의 등록들, 로열티 포인트 트랜잭션들, 및 임의의 다른 활동을 검증할 수 있다. 컨센서스 참가자들(103)은 확인을 전송함으로써, 또는 블록체인(102) 상에 기록되는 등록을 로케이딩하는 로열티 지갑에 의해 로열티 지갑(105)에게 성공적인 등록을 통지할 수 있다(단계 209).
도 3을 참조하면, 다양한 실시예들에 따라, 로열티 포인트 네트워크(100) 상에서 쇼핑하기 위한 프로세스(300)가 도시된다. 고객(109)은 로열티 파트너 사이트(106)를 브라우징함으로써 로열티 파트너와 쇼핑한다(단계 301). 로열티 파트너 사이트(106)는 체크아웃에서 대응하는 로열티 계정에 대해 고객 및/또는 로열티 지갑(105)에게 프롬프트할 수 있다(단계 302). 로열티 계정은 예를 들어, 보편적 고유 식별자(universally unique identifier; UUID)에 의해 식별 가능할 수 있다. 고객(109)은 로열티 계정을 입력함으로써 및/또는 로열티 계정을 전송하는 로열티 지갑(105)에 의해 프롬프트(prompt)에 응답하여 로열티 계정을 제공할 수 있다(단계 303).
다양한 실시예들에서, 로열티 파트너 사이트(106)는 API 호출을 사용하여 포인트 조정 요청을 블록체인 API 호스트(104)에 전송할 수 있다(단계 304). 블록체인 API 호스트(104)는 포인트 잔액을 조정하기 위한 API 요청을 수신하는 것에 응답하여 스마트 계약을 실행시킬 수 있다(단계 305). 블록체인 API 호스트(104)는 또한 조정 요청을 컨센서스 참가자들(103)의 네트워크에 송신할 수 있다(단계 306). 컨센서스 참가자들(103)은 컨센서스 및 따라서 블록체인(102)에 대한 새로운 엔트리를 달성할 수 있다(단계 307). 컨센서스 참가자들(103)은 로열티 파트너 사이트(106)에게 완료된 잔액 조정을 통지할 수 있다(단계 308). 컨센서스 참가자들(103)은 또한 고객(109)에게 완료된 잔액 조정을 통지할 수 있다(단계 309).
도 4를 참조하면, 다양한 실시예들에 따라, 로열티 포인트 네트워크(100)에서 로열티 포인트 잔액을 확인하기 위한 프로세스(400)가 도시된다. 고객(109)은 로열티 지갑(105)에서 그 또는 그녀의 로열티 포인트 잔액을 요청한다(단계 401). 로열티 지갑(105)은 요청을 준비 및/또는 서명할 수 있다(단계 402). 로열티 지갑(105)은 상술한 바와 같은 비대칭 암호화 키 쌍으로부터의 개인 키로 암호화 동작을 수행함으로써 요청에 서명할 수 있다. 로열티 지갑(105)은 서명된 요청을 블록체인 API 호스트(104)에 전송할 수 있다(단계 403).
다양한 실시예들에서, 블록체인 API 호스트(104)는 서명을 검증하고 포인트 잔액을 조회하기 위한 제안을 준비할 수 있다(단계 404). 블록체인 API 호스트(104)는 대응하는 개인 키를 사용하여 로열티 지갑(105)에 의해 암호화된 것을 데이터 상의 공개 키를 사용하여 암호화 동작을 수행함으로써 서명을 검증할 수 있다. 블록체인 API 호스트(104)는 예를 들어, 고객의 식별자(예를 들어, 공개 키 또는 블록체인 어드레스), 트랜잭션(예를 들어, 잔액 조회), 요청 당사자, 타임스탬프, 또는 블록체인에 포함하기 위한 임의의 다른 데이터를 포함하는 블록체인의 블록에 기록하기 위한 데이터를 준비함으로써 제안을 준비할 수 있다.
다양한 실시예들에서, 블록체인 API 호스트(104)는 블록체인(102)에 제안을 전송하고/하거나 제안을 기록함으로써 제안을 컨센서스 참가자들(103)에게 전파할 수 있다(단계 405). 컨센서스 참가자들(103)은 컨센서스를 달성하고 제안을 블록체인(102)에 추가할 수 있다(단계 406). 컨센서스 참가자들(103) 및/또는 블록체인 API 호스트(104)는 블록체인(102)에 기록하고/하거나 확인 및/또는 잔액을 로열티 지갑(105)에 전송함으로써 고객(109)에게 통지할 수 있다(단계 407).
이제 도 5를 참조하면, 다양한 실시예들에 따라, 로열티 포인트 네트워크(100)의 로열티 파트너 사이트(106)를 이용하여 로열티 포인트들을 소비하는 프로세스(500)가 도시된다. 고객(109)은 웹사이트 또는 네이티브 애플리케이션을 사용하여 로열티 파트너 사이트(106) 상에서 쇼핑할 수 있다(단계 501). 로열티 파트너 사이트(106)는 체크아웃 페이지를 호스팅할 수 있다(단계 502). 체크아웃 페이지는 예를 들어, 신용거래(credit), ACH, 기프트 카드들, 및 로열티 포인트들과 같은 다양한 결제 방법들을 제공할 수 있다. 고객(109)은 로열티 파트너 사이트(106) 상에서 결제 방법으로서 로열티 포인트들을 선택할 수 있다(단계 503).
결제 방법으로서 로열티 포인트들의 선택에 응답하여, 컴퓨팅 디바이스는 딥 링크에 의해 컴퓨팅 디바이스 상에 설치되는 로열티 지갑(105)을 오픈할 수 있다(단계 504). 딥 링크는 컴퓨팅 디바이스 상에서 실행되는 제1 애플리케이션이 컴퓨팅 디바이스 상에 설치되는 제2 애플리케이션을 론칭하고/하거나 데이터를 제1 애플리케이션으로부터 제2 애플리케이션으로 전달하는 것을 허용한다. 예를 들어, 모바일 디바이스들 상에서 실행되는 웹 브라우저들은 종종 모바일 디바이스 상에 특정 애플리케이션의 설치를 용이하게 하기 위해 애플리케이션 스토어(store)를 론칭시킨다. 여기서, 결제 방법으로서 포인트들을 선택함으로써 유발되는 딥 링크는 로열티 지갑(105)을 론칭시키고 파라미터들로서 가맹점 블록체인 계정(예를 들어, 가맹점의 공개 키) 및 구매 금액을 송신할 수 있다.
다양한 실시예들에서, 컴퓨팅 디바이스는 로열티 지갑(105)에 액세스하기 위해 보안 패스워드에 대해 프롬프트할 수 있고(단계 505), 컴퓨팅 디바이스는 고객(109)으로부터 패스워드를 수신하고/하거나 인증할 수 있다(단계 506). 패스워드는 핀, 패스코드, 패스워드, 생체인식 식별자, 1회용 패스워드, 또는 고객(109)을 인증하기에 적합한 다른 데이터의 형태일 수 있다. 로열티 지갑(105)은 컴퓨팅 디바이스 상에 저장되는 개인 키를 해독하고 로열티 포인트들을 사용하여 로열티 파트너 사이트(106)에 지불하기 위한 요청에 서명할 수 있다(단계 507). 요청은 로열티 지갑(105)을 론칭하는 로열티 파트너 사이트(106)에 응답하여 딥 링크에 의해 로열티 지갑(105)으로 전달되는 데이터를 포함할 수 있다. 예를 들어, 요청은 가맹점의 블록체인 어드레스 및 구매 금액을 포함할 수 있다.
다양한 실시예들에서, 로열티 지갑(105)은 결제 요청을 블록체인 API 호스트(104)에 송신할 수 있다(단계 508). 블록체인 API 호스트(104)는 대응하는 개인 키를 사용하여 로열티 지갑(105)에 의해 암호화된 데이터 상의 공개 키를 사용하여 암호화 동작을 수행함으로써 요청을 수신하는 것에 응답하여 서명을 검증할 수 있다. 블록체인 API 호스트(104)는 예를 들어, 고객의 블록체인 어드레스(예를 들어, 공개 키), 트랜잭션(예를 들어, 결제), 트랜잭션 금액, 가맹점의 블록체인 어드레스, 타임스탬프, 또는 블록체인에 포함하기 위한 임의의 다른 데이터를 포함하는 블록체인의 블록에 기입하기 위한 데이터를 준비함으로써 제안을 준비할 수 있다.
다양한 실시예들에서, 블록체인 API 호스트(104)는 블록체인(102)에 제안을 송신하고/하거나 제안을 기록함으로써 제안을 컨센서스 참가자들(103)에게 전파시킬 수 있다(단계 510). 컨센서스 참가자들(103)은 컨센서스를 달성하고 제안을 블록체인(102)에 추가할 수 있다(단계 511). 따라서, 컨센서스 참가자들(103) 및/또는 블록체인 API 호스트(104)는 제안으로부터의 데이터를 블록체인(102)에 기록하고/하거나 확인을 로열티 지갑(105)에 전송함으로써 고객(109)에게 통지할 수 있다(단계 512). 블록체인에 기록되면, 제안으로부터의 데이터는 로열티 파트너 사이트(106)를 이용하여 소비되는 로열티 포인트들의 금액을 제거함으로써 고객(109)에 대한 계정 잔액을 갱신한다.
도 6을 참조하면, 다양한 실시예들에 따라, 로열티 포인트 네트워크(100)에서 로열티 포인트들의 피어 투 피어 이체를 위한 프로세스(600)가 도시된다. 고객(109)은 피어들(peers)의 계정을 요청할 수 있다(단계 601). 계정은 예를 들어, 메시지 또는 이메일 통해 고객에게 송신될 수 있고, 피어의 공개 키, UUID, 및/또는 블록체인 어드레스의 형태로 올 수 있다. 로열티 지갑(105)은 피어의 어드레스를 인출할 수 있다(단계 602). 예를 들어, 로열티 지갑(105)은 계정을 식별하기 위해 통신 채널을 스캔할 수 있거나, 고객(109)이 계정을 입력하는 것을 허용할 수 있거나, 계정을 수신하기 위해 피어에 속하는 로열티 지갑과 통신할 수 있다.
다양한 실시예들에서, 고객의 컴퓨팅 디바이스 상에서 실행되는 로열티 지갑(105)은 보안 패스워드에 대해 고객(109)에게 프롬프트할 수 있고(단계 603), 컴퓨팅 디바이스는 고객(109)으로부터의 패스워드를 수신 및/또는 인증할 수 있다(단계 604). 패스워드는 핀, 패스코드, 패스워드, 생체인식 식별자, 1회용 패스워드, 또는 고객(109)을 인증하기에 적합한 다른 데이터의 형태일 수 있다. 로열티 지갑(105)은 컴퓨팅 디바이스 상에 저장되는 개인 키를 해독하고 로열티 포인트들을 피어의 계정으로 이체하기 위한 요청에 서명할 수 있다(단계 605). 요청은 예를 들어, 피어로의 이체를 위한 피어의 계정 및 포인트들의 금액을 포함할 수 있다.
다양한 실시예들에서, 로열티 지갑(105)은 이체 요청을 블록체인 API 호스트(104)에 송신할 수 있다(단계 606). 블록체인 API 호스트(104)는 서명을 검증하고 요청을 수신하는 것에 응답하여 제안을 준비할 수 있다(단계 607). 블록체인 API 호스트(104)는 대응하는 개인 키를 사용하여 로열티 지갑(105)에 의해 암호화된 데이터 상의 공개 키를 사용하여 암호화 동작을 수행함으로써 서명을 검증할 수 있다. 블록체인 API 호스트(104)는 또한 예를 들어, 고객의 블록체인 어드레스(예를 들어, 공개 키), 트랜잭션(예를 들어, 이체), 피어의 계정(예를 들어, 블록체인 어드레스), 타임스탬프, 이체 금액, 또는 블록체인에 포함하기 위한 임의의 다른 데이터를 포함하는 데이터로 블록체인의 블록에 기입하기 위한 데이터를 준비함으로써 이체 제안을 준비할 수 있다.
다양한 실시예들에서, 블록체인 API 호스트(104)는 블록체인(102)에 제안을 전송하고/하거나 제안을 기록함으로써 제안을 컨센서스 참가자들(103)에게 전파할 수 있다(단계 608). 컨센서스 참가자들(103)은 컨센서스를 달성하고 제안을 블록체인(102)에 추가할 수 있다(단계 609). 따라서, 컨센서스 참가자들(103) 및/또는 블록체인 API 호스트(104)는 제안으로부터의 데이터를 블록체인(102)에 기록하고/하거나 확인을 로열티 지갑(105)에 송신함으로써 고객(109)에게 통지할 수 있다(단계 610). 일단 블록체인에 기록되면, 제안으로부터의 데이터는 로열티 포인트들의 요청된 금액을 고객의 계정으로부터 피어의 계정으로 이체함으로써 고객(109) 및 피어에 대한 계정 잔액을 갱신한다.
도 7을 참조하면, 다양한 실시예들에 따라, 로열티 연합 멤버를 예컨대 새로운 로열티 파트너로서 추가하기 위한 프로세스(700)가 도시된다. 후보 스태프(111)는 엔티티를 인증 기관(112)에 등록할 수 있다(단계 701). 인증 기관(112)은 인증서들 및/또는 개인 키들을 로열티 연합 후보 스태프(111)에게 제공함으로써 응답할 수 있다(단계 702). 로열티 연합 후보 스태프는 엔티티를 새로운 연합 멤버로서 추가하고, 요청에 서명하고, 요청을 블록체인 API 호스트(104)에 송신하기 위한 요청을 준비할 수 있다(단계 703). 요청은 인증 기관(112)으로부터 수신되는 개인 키를 사용하여 요청의 전부 또는 일부 상에서 암호화 동작을 수행함으로써 서명될 수 있다.
다양한 실시예들에서, 블록체인 API 호스트(104)는 엔티티의 개인 키에 대응하는 공개 키를 사용하여 서명된 데이터 상에서의 암호화 동작을 수행함으로써 서명을 검증할 수 있다(단계 704). 블록체인 API 호스트(104)는 또한 엔티티를 로열티 포인트 네트워크(100)에 추가하는 제안을 준비할 수 있다. 블록체인 API 호스트(104)는 블록체인(102)에 제안을 전송하고/하거나 제안을 기록함으로써 제안을 컨센서스 참가자들(103)에게 전파할 수 있다(단계 705). 컨센서스 참가자들(103)은 컨센서스를 달성하고 제안을 블록체인(102)에 추가할 수 있다(단계 706). 따라서, 컨센서스 참가자들(103) 및/또는 블록체인 API 호스트(104)는 제안으로부터의 데이터를 블록체인(102)에 기록하고/하거나 확인을 로열티 지갑(105)에 전송함으로써 로열티 연합 후보 스태프(111)에게 통지할 수 있다(단계 707). 일단 블록체인에 기록되면, 제안으로부터의 데이터는 엔티티를 네트워크(100)의 로열티 결제 네트워크에 추가한다.
도 8을 참조하면, 다양한 실시예들에 따라, 환전을 로열티 결제 네트워크(100)에 추가하기 위한 프로세스(800)가 도시된다. 등록 엔티티를 대신하여 작업하는 후보 스태프(113)는 엔티티를 인증 기관(112)에 등록할 수 있다(단계 801). 인증 기관(112)은 인증서들 및/또는 개인 키들을 환전 후보 스태프(113)에게 제공함으로써 응답할 수 있다(단계 802). 환전 후보 스태프(113)는 환전으로서 엔티티를 추가하고, 요청에 서명하고, 요청을 블록체인 API 호스트(104)에 전송하기 위한 요청을 준비할 수 있다(단계 803). 요청은 인증 기관(112)으로부터 수신되는 개인 키를 사용하여 요청의 전부 또는 일부 상에서의 암호화 동작을 수행함으로써 서명될 수 있다.
다양한 실시예들에서, 블록체인 API 호스트(104)는 엔티티의 개인 키에 대응하는 공개 키를 사용하여 서명된 데이터 상에서의 암호화 동작을 수행함으로써 서명을 검증할 수 있다(단계 804). 블록체인 API 호스트(104)는 또한 환전으로서 엔티티를 로열티 포인트 네트워크(100)에 추가하기 위한 제안을 준비할 수 있다. 블록체인 API 호스트(104)는 블록체인(102)에 제안을 전송하고/하거나 제안을 기록함으로써 제안을 컨센서스 참가자들(103)에게 전파할 수 있다(단계 805). 컨센서스 참가자들(103)은 컨센서스를 달성하고 제안을 블록체인(102)에 추가할 수 있다(단계 806). 따라서, 컨센서스 참가자들(103) 및/또는 블록체인 API 호스트(104)는 제안으로부터의 데이터를 블록체인(102)에 기록하고/하거나 확인을 로열티 지갑(105)에 전송함으로써 환전 후보 스태프(113)에게 통지할 수 있다(단계 807). 일단 블록체인에 기록되면, 제안으로부터의 데이터는 환전으로서 엔티티를 네트워크(100)의 로열티 결제 네트워크에 추가한다.
이제 도 9를 참조하면, 다양한 실시예들에 따라, 로열티 결제 네트워크(100)에서 피아트 통화에 대해 로열티 포인트들을 교환하기 위한 프로세스(900)가 도시된다. 고객(109)은 통화 환율을 요청하기 위해 웹사이트 또는 네이티브 애플리케이션을 사용하여 환전 사이트(107) 상에 액세스한다(단계 901). 환전 사이트(107)는 로열티 포인트들로부터 하나 이상의 피아트 통화들로 및/또는 피아트 통화들로부터 로열티 포인트들로의 환율을 제공할 수 있다(단계 902). 고객(109)은 환전을 요청 시 환전 사이트(107)에게 교환 정보를 제공할 수 있다(단계 903). 교환 정보는 피아트 통화, ACH 상세들, 통화 유형, 통화 금액, 또는 다른 데이터에 대한 목적지 계정을 포함할 수 있다.
환전에 대한 요청에 응답하여, 컴퓨팅 디바이스는 딥 링크에 의해 컴퓨팅 디바이스 상에 설치되는 로열티 지갑(105)을 오픈할 수 있다(단계 904). 포인트들로부터 피아트 통화로의 환전을 요청함으로써 유발되는 딥 링크는 로열티 지갑(105)을 론칭시키고 파리미터들로서 요청된 피아트 통화 유형, 요청된 피아트 통화 금액, 교환할 로열티 포인트들의 금액, 및/또는 환전 계정(예를 들어, 교환의 공개 키, UUID)을 송신할 수 있다.
다양한 실시예들에서, 컴퓨팅 디바이스는 로열티 지갑(105)에 액세스하기 위해 보안 패스워드를 프롬프트할 수 있고(단계 905), 컴퓨팅 디바이스는 고객(109)으로부터 패스워드를 수신하고/하거나 인증할 수 있다(단계 906). 패스워드는 핀, 패스코드, 패스워드, 생체인식 식별자, 1회용 패스워드, 또는 고객(109)을 인증하기에 적합한 다른 데이터의 형태일 수 있다. 로열티 지갑(105)은 컴퓨팅 디바이스 상에 저장되는 개인 키를 해독하고 환전 사이트(107)와 통화를 교환하기 위한 요청에 서명할 수 있다(단계 907). 요청은 로열티 지갑(105)을 론칭하는 환전 사이트(107)에 응답하여 딥 링크에 의해 로열티 지갑(105)으로 전달되는 데이터를 포함할 수 있다. 예를 들어, 요청은 교환 계정, 교환할 로열티 포인트들의 금액, 및 피아트 통화 유형을 포함할 수 있다.
다양한 실시예들에서, 로열티 지갑(105)은 교환 요청을 블록체인 API 호스트(104)에 송신할 수 있다(단계 908). 블록체인 API 호스트(104)는 대응하는 개인 키를 사용하여 로열티 지갑(105)에 의해 암호화된 데이터 상의 공개 키를 사용하여 암호화 동작을 수행함으로써 요청을 수신하는 것에 응답하여 서명을 검증할 수 있다(단계 909). 블록체인 API 호스트(104)는 예를 들어, 고객의 블록체인 어드레스(예를 들어, 공개 키), 트랜잭션(예를 들어, 환전), 교환 금액, 가맹점의 블록체인 어드레스, 타임스탬프, 또는 블록체인에 포함하기 위한 임의의 다른 데이터를 포함하는 블록 체인의 블록에 기록하기 위한 데이터를 준비함으로써 제안을 준비할 수 있다.
다양한 실시예들에서, 블록체인 API 호스트(104)는 블록체인(102)에 제안을 전송하고/하거나 제안을 기록함으로써 제안을 컨센서스 참가자들(103)에게 전파할 수 있다(단계 910). 컨센서스 참가자들(103)은 컨센서스를 달성하고 제안을 블록체인(102)에 추가할 수 있다(단계 911). 따라서, 컨센서스 참가자들(103) 및/또는 블록체인 API 호스트(104)는 제안으로부터의 데이터를 블록체인(102)에 기록하고/하거나 확인을 환전 사이트(107)에 전송함으로써 환전을 통지할 수 있다(단계 912). 일단 블록체인에 기록되면, 제안으로부터의 데이터는 환전 사이트(107)와 교환되는 로열티 포인트들의 금액을 제거함으로써 고객(109)에 대한 계정 잔액을 갱신한다. 환전은 피아트 통화 금액으로 환전 사이트(107)에 식별되는 은행 계정을 신용할 수 있다(단계 913). 환전은 계정을 갖는 고객(109)을 신용하고 고객(109)에 의해 입력되는 정보를 이체하기 위해 ACH 이체를 사용할 수 있다(단계 903). 환전 사이트(107)는 교환의 완료에 응답하여 로열티 지갑(105)에 통지할 수 있다(단계 914). 통지는 예를 들어, 텍스트 메시지, 이메일, 또는 푸시 통지의 형태를 취할 수 있다.
본원에 설명되는 프로세스들은 로열티 포인트 데이터를 신속하고 불면으로 전파함으로써 컴퓨터의 기능을 향상시킨다. 예를 들어, 사용자가 데이터를 수동으로 입력하는 것과 대조적으로 저장된 블록체인 키들 및 계정 번호들을 사용하여 트랜잭션을 단순하게 요청할 수 있는 것에 의해, 사용자는 더 적은 컴퓨터 기능들을 수행하고 더 적은 입력을 제공하며, 이는 처리 속도를 높이는 데이터 스토리지 및 메모리를 절약한다. 추가적으로, 본원에 설명되는 프로세스들을 사용하여 데이터를 전송, 저장, 및 액세스함으로써, 데이터의 보안이 향상되며, 이는 컴퓨터 또는 네트워크가 손상되는 위험을 감소시킨다. 블록체인(108)의 사용은 상호작용 당사자들 중 누구도 원장의 상태를 유지하기 위해 특정 엔티티에 의존할 필요가 없는 그러한 방식으로 무결성 및 불변성을 보증한다. 블록체인(108)의 사용은 또한 완전한 투명성을 가능하게 한다. 모든 참가자들이 하나의 원장을 사실상 유지하므로, 일관성이 다양한 블록체인 노드들 사이에 유지될 수 있다. 시스템(100)의 복잡성은 또한 다수의 시스템들을 동기로 유지시키기 위해 전형적으로 사용되는 오프라인 및/또는 배치(batch) 프로세스들의 사용을 완화시킴으로써 감소된다.
시스템들, 방법들 및 컴퓨터 프로그램 제품들이 제공된다. 본원의 상세 설명에서, "다양한 실시예들", " 하나의 실시예", "일 실시예", "예시적 실시예"등에 대한 참조들은 설명되는 실시예가 특정 특징, 구조, 또는 특성을 포함할 수 있지만, 모든 실시예가 특정 특징, 구조, 또는 특성을 반드시 포함할 필요가 없을 수 있다는 것을 나타낸다. 더욱이, 그러한 구어들은 동일한 실시예를 반드시 지칭할 필요가 없다. 또한, 특정 특징, 구조, 또는 특성이 실시예와 함께 설명될 때, 명시적으로 설명되는지 여부에 관계없이 다른 실시예들에 관하여 그러한 특징, 구조. 또는 특성에 영향을 미치는 것은 당업자의 지식 내에 있는 것으로 제출된다. 설명을 판독한 후, 본 개시를 대안적인 실시예들로 구현하는 방법은 당업자에게 명백할 것이다.
본원에 사용되는 바와 같이, "만족시키다", "충족시키다", "일치시키다", "~와 연관된" 또는 유사한 어구들(phrases)은 동일한 일치, 부분 일치, 특정 기준 충족, 데이터의 서브세트 일치, 상관, 특정 기준 만족, 대응, 연관, 알고리즘적 관계 및/또는 유사한 것을 포함할 수 있다. 유사하게, 본원에 사용되는 바와 같이, "인증하다" 또는 유사한 용어들은 정확한 인증, 부분 인증, 데이터의 서브세트 인증, 대응, 특정 기준 만족, 연관, 알고리즘적 관계 및/또는 유사한 것을 포함할 수 있다.
"연관시키다" 및/또는 "연관된"과 유사한 용어들 및 어구들은 태깅(tagging), 플래깅(flagging), 상관(correlating), 룩업 테이블 사용 또는 요소들, 예컨대, 예를 들어, (i) 트랜잭션 계정 및 (ii) 아이템(예를 들어, 제공, 보상, 할인) 및/또는 디지털 채널 사이의 관계를 나타내거나 생성하기 위한 임의의 다른 방법 또는 시스템을 포함할 수 있다. 더욱이, 연관(associating)은 임의의 적합한 액션, 이벤트, 또는 기간에 응답하여, 임의의 지점에서 발생할 수 있다. 연관은 미리 결정된 간격들로, 주기적으로, 무작위로, 한 번, 한 번 이상, 또는 적합한 요청 또는 액션에 응답하여 발생할 수 있다. 임의의 정보는 소프트웨어 가능(enabled) 링크를 통해 분배되고/되거나 액세스 될 수 있으며, 여기서, 링크는 이메일, 텍스트, 우편, 소셜 네트워크 입력 및/또는 기술 분야에 공지된 임의의 다른 방법을 통해 송신될 수 있다.
본원에 사용되는 바와 같이, "전송"은 네트워크 연결을 통해 전자 데이터를 하나의 시스템 구성요소로부터 다른 것으로 송신하는 것을 포함할 수 있다. 추가적으로, 본원에 사용되는 바와 같이, "데이터"는 디지털 또는 임의의 다른 형태로 명령들, 질의들, 파일들, 저장 용 데이터 등과 같은 정보를 망라하는 것을 포함할 수 있다.
본원에 사용되는 바와 같은 "계정", "계정 번호", "계정 코드" 또는 "사용자 계정"과 유사한 어구들 및 용어들은 사용자가 시스템에 액세스하거나 이와 상호작용하거나 이와 통신하는 것을 허용하도록 적합하게 구성되는 임의의 디바이스, 코드(예를 들어, 인가/액세스 코드, 개인 식별 번호("핀"), 인터넷 코드, 다른 식별 코드, 및/또는 유사한 것 중 하나 이상), 숫자, 문자, 심볼, 디지털 인증서, 스마트 칩, 디지털 신호, 아날로그 신호, 생체인식 또는 다른 식별자/표시를 포함할 수 있다. 계정 번호는 선택적으로 보상 계정, 청구 계정, 신용 계정, 직불 계정, 선불 계정, 전화 카드, 엠보싱 카드, 스마트 카드, 마그네틱 스트라이프 카드, 바 코드 카드, 트랜스폰더, 라디오 주파수 카드 또는 연관 계정 상에 위치되거나 이와 연관될 수 있다.
어구들 소비자, 고객, 사용자, 계정 보유자, 계정 제휴사, 카드멤버 등등은 임의의 개인, 엔티티, 사업자, 정부 기관, 사업체, 소프트웨어, 하드웨어, 트랜잭션 계정와 연관되는 기계를 포함할 것이며, 실제 카드가 계정와 연관되는지 관계없이, 계정를 사용하는 하나 이상의 가명점들 및/또는 계정 상에서 트랜잭션들을 수행하도록 법적으로 지정되는 사람에 의해 제공되는 가명점 제공물들(offerings)을 구매할 것이다. 예를 들어, 카드멤버는 트랜잭션 계정 소유자, 트랜잭션 계정 사용자, 계정 제휴사, 자녀 계정 사용자, 보조 계정 사용자, 계정의 수혜자, 계정의 관리인, 및/또는 트랜잭션 계정과 제휴되거나 연관되는 임의의 다른 개인 또는 엔티티를 포함할 수 있다.
본원에 논의되는 임의의 통신, 전송 및/또는 채널은 콘텐츠(예를 들어 데이터, 정보, 메타데이터 등), 및/또는 콘텐츠 자체를 전달하기 위한 임의의 시스템 또는 방법을 포함할 수 있다. 콘텐츠는 임의의 형태 또는 매체로 제공될 수 있고, 다양한 실시예들에서, 콘텐츠는 전자적으로 전달되고/되거나 전자적으로 제공되는 것이 가능할 수 있다. 예를 들어, 채널은 웹사이트 또는 디바이스(예를 들어, Facebook, YOUTUBE®, APPLE®TV®, PANDORA®, XBOX®, SONY® PLAYSTATION®), 유니폼 리소스 로케이터("URL"), 문서(예를 들어, 마이크로SOFT® Word® document, a 마이크로SOFT® Excel® document, an ADOBE®.pdf document 등), "전자책", "전자잡지", 애플리케이션 또는 마이크로애플리케이션(본원에 설명된 바와 같음), SMS 또는 다른 유형의 텍스트 메시지, 이메일, 페이스북, 트위터, MMS 및/또는 다른 유형의 통신 기술을 포함할 수 있다. 다양한 실시예들에서, 채널은 데이터 파트너에 의해 호스팅되거나 제공될 수 있다. 다양한 실시예들에서, 분배 채널은 가맹점 웹사이트, 소셜 미디어 웹사이트, 제휴사 또는 파트너 웹사이트들, 외부 벤더(vendor), 모바일 디바이스 통신, 소셜 미디어 네트워크 및/또는 위치 기반 서비스 중 적어도 하나를 포함할 수 있다. 분배 채널들은 가맹점 웹사이트, 소셜 미디어 사이트, 제휴사 또는 파트너 웹사이트들, 외부 벤더, 및 모바일 디바이스 통신 중 적어도 하나를 포함할 수 있다. 소셜 미디어 사이트들의 예들은 FACEBOOK®, FOURSQUARE®, TWITTER®, MYSPACE®, LINKEDIN® 등을 포함한다. 제휴사 또는 파트너 웹사이트들의 예들은 AMERICAN EXPRESS®, GROUPON®, LIVINGSOCIAL® 등을 포함한다. 더욱이, 모바일 디바이스 통신들의 예들은 텍스팅, 이메일, 및 스마트폰들 용 모바일 애플리케이션들을 포함한다.
"소비자 프로파일" 또는 "소비자 프로파일 데이터"는 소비자와 연관되는 속성(예를 들어, 선호도, 관심사, 인구 통계학적 정보, 개인 식별 정보 등)을 설명하는 소비자에 대한 임의의 정보 또는 데이터를 포함할 수 있다.
다양한 실시예들에서, 본원에 설명되는 방법들은 본원에 설명되는 특정 머신들을 사용하여 구현된다. 본원에 설명되는 방법들은 아래의 특정 머신들, 및 당업자에 의해 즉시 이해되는 바와 같은, 임의의 적합한 조합으로, 이하에 개발되는 것들을 사용하여 구현될 수 있다. 또한, 본 개시로부터 분명한 바와 같이, 본원에서 설명되는 방법들은 특정 물품들의 다양한 변형들을 야기할 수 있다.
간략화를 위해, 종래의 데이터 네트워킹, 애플리케이션 개발 및 시스템(그리고 시스템들의 개별 동작 구성요소들의 구성요소들)의 다른 기능적 양태들은 본원에서 상세히 설명되지 않을 수 있다. 더욱이, 본원에 포함되는 다양한 도면들에 도시된 연결 라인들은 다양한 요소들 사이의 예시적인 기능 관계들 및/또는 물리적인 결합을 나타내도록 의도된다. 많은 대안 또는 추가적 기능 관계들 또는 물리적 연결들이 실제 시스템에 제공될 수 있다는 점이 주목되어야 한다.
본원에 논의되는 다양한 시스템 구성요소들은 다음 중 하나 이상을 포함할 수 있다: 디지털 데이터를 처리하기 위한 프로세서를 포함하는 호스트 서버 또는 다른 컴퓨팅 시스템들; 디지털 데이터를 저장하기 위해 프로세서에 결합되는 메모리; 디지털 데이터를 입력하기 위해 프로세서에 결합되는 입력용 디지타이저; 메모리에 저장되고 프로세서에 의해 디지털 데이터의 처리를 지시하기 위한 프로세서에 의해 액세스가능한 애플리케이션 프로그램; 프로세서에 의해 처리되는 디지털 데이터로부터 유도되는 정보를 디스플레이하기 위해 프로세서 및 메모리에 결합되는 디스플레이 디바이스; 및 복수의 데이터베이스들. 본원에 사용되는 다양한 데이터베이스들은 다음을 포함할 수 있다: 클라이언트 데이터; 가맹점 데이터; 금융 기관 데이터; 및/또는 시스템의 동작에 유용한 유사 데이터. 당업자가 이해하는 바와 같이, 사용자 컴퓨터는 운영 체제(예를 들어, 윈도우S®, OS2, UNIX®, LINUX®, SOLARIS®, MacOS 등) 뿐만 아니라 전형적으로 컴퓨터들과 연관되는 다양한 종래의 지원 소프트웨어 및 드라이버들을 포함할 수 있다.
본 시스템 또는 그 임의의 부분(들) 또는 기능(들)은 하드웨어, 소프트웨어 또는 그 조합을 사용하여 구현될 수 있고 하나 이상의 컴퓨터 시스템들 또는 다른 처리 시스템들로 구현될 수 있다. 그러나, 실시예들에 의해 수행되는 조작들은 종종 인간 조작자에 의해 수행되는 정신 동작들과 통상적으로 연관되는, 일치(matching) 또는 선택과 같은, 용어들로 지칭되었다. 인간 조작자의 그러한 능력은 본원에서 설명되는 동작들 중 임의의 동작에서, 필요하지 않거나, 대부분의 경우들에서 바람직하지 않다. 오히려, 동작들은 머신 동작들일 수 있다. 다양한 실시예들을 수행하기 위한 유용한 머신들은 범용 디지털 컴퓨터들 또는 유사한 디바이스들을 포함한다.
실제로, 다양한 실시예들에서, 실시예들은 본원에 설명되는 기능을 수행할 수 있는 하나 이상의 컴퓨터 시스템들에 관한 것이다. 컴퓨터 시스템은 하나 이상의 프로세서들, 예컨대 프로세서를 포함한다. 프로세서는 통신 인프라스트럭처(예를 들어, 통신 버스, 크로스-오버 바, 또는 네트워크)에 연결된다. 다양한 소프트웨어 실시예들은 이 예시적 컴퓨터 시스템의 관점에서 설명된다. 이 설명을 판독한 후, 다른 컴퓨터 시스템들 및/또는 아키텍처들을 사용하여 다양한 실시예들을 구현하는 방법이 관련 기술(들)의 숙련자에게 명백하게 될 것이다. 컴퓨터 시스템은 통신 인프라스트럭처로부터(또는 도시되지 않은 프레임 버퍼로부터)의 그래픽, 텍스트, 및 다른 데이터를 디스플레이를 위해 디스플레이 유닛 상에 포워딩하는 디스플레이 인터페이스를 포함할 수 있다.
컴퓨터 시스템은 또한 메인 메모리, 예컨대 예를 들어 랜덤 액세스 메모리(random access memory; RAM)를 포함하고, 또한 보조 메모리를 포함할 수 있다. 보조 메모리는 예를 들어, 하드 디스크 드라이브 및/또는 플로피 디스크 드라이브, 자기 테이프 드라이브, 광학 디스크 드라이브 등을 나타내는 이동식 저장 드라이브를 포함할 수 있다. 이동식 저장 드라이브는 잘 알려진 방식으로 이동식 저장 유닛으로부터 판독하고/하거나 이에 기록한다. 이동식 저장 유닛은 이동식 저장 드라이브에 의해 판독 및 기록되는 플로피 디스크, 자기 테이프, 광학 디스크 등을 나타낸다. 이해되는 바와 같이, 이동식 저장 유닛은 그 내에 컴퓨터 소프트웨어 및/또는 데이터를 저장한 컴퓨터 사용가능 저장 매체를 포함한다.
다양한 실시예들에서, 보조 메모리는 컴퓨터 프로그램들 또는 다른 명령어들이 컴퓨터 시스템으로 로딩되는 것을 허용하기 위한 다른 유사한 디바이스들을 포함할 수 있다. 그러한 디바이스들은 예를 들어, 이동식 저장 유닛 및 인터페이스를 포함할 수 있다. 그러한 예들은 프로그램 카트리지 및 카트리지 인터페이스(예컨대 비디오 게임 디바이드들에서 발견되는 것), 이동식 메모리 칩(예컨대 EPROM(erasable programmable read only memory), 또는 PROM(programmable read only memory)) 및 연관된 소켓, 그리고 다른 이동식 저장 유닛들 및 인터페이스들을 포함할 수 있으며, 이는 소프트웨어 및 데이터가 이동식 저장 유닛으로부터 컴퓨터 시스템으로 전송되는 것을 허용한다.
컴퓨터 시스템은 또한 통신 인터페이스를 포함할 수 있다. 통신 인터페이스는 소프트웨어 및 데이터가 컴퓨터 시스템과 외부 디바이스들 사이에서 전송되는 것을 허용한다. 통신 인터페이스의 예들은 모뎀, 네트워크 인터페이스(예컨대 이더넷 카드), 통신 포트, PCMCIA(Personal Computer Memory Card International Association) 슬롯 및 카드 등을 포함할 수 있다. 통신 인터페이스를 통해 전송되는 소프트웨어 및 데이터는 통신 인터페이스에 의해 수신될 수 있는 전자, 전자기, 광학 또는 다른 신호들의 형태이다. 이들 신호들은 통신 경로(예를 들어, 채널)를 통해 통신 인터페이스에 제공된다. 이 채널은 신호들을 운반하고 유선, 케이블, 광섬유, 전화선, 셀룰러 링크, 라디오 주파수(radio frequency; RF) 링크, 무선 및 다른 통신 채널들을 사용하여 구현될 수 있다.
용어들 "컴퓨터 프로그램 매체" 및 "컴퓨터 사용가능 매체" 및 "컴퓨터 판독가능 매체"는 일반적으로 이동식 저장 드라이브 및 하드 디스크 드라이브에 설치되는 하드 디스크와 같은 매체를 일반적으로 지칭하기 위해 사용된다. 이들 컴퓨터 프로그램 제품들은 소프트웨어를 컴퓨터 시스템에 제공한다.
컴퓨터 프로그램들(또한 컴퓨터 제어 로직으로서 지칭됨)은 메인 메모리 및/또는 보조 메모리에 저장된다. 컴퓨터 프로그램들은 또한 통신 인터페이스를 통해 수신될 수 있다. 그러한 컴퓨터 프로그램들은, 실행될 때, 컴퓨터 시스템이 본원에 설명되는 바와 같은 특징들을 수행할 수 있게 한다. 특히, 컴퓨터 프로그램들은, 실행될 때, 프로세서가 다양한 실시예들의 특징을 수행할 수 있게 한다. 따라서, 그러한 컴퓨터 프로그램들은 컴퓨터 시스템의 컨트롤러들을 나타낸다.
다양한 실시예들에서, 소프트웨어는 컴퓨터 프로그램 제품에 저장되고 이동식 저장 드라이브, 하드 디스크 드라이브 또는 통신 인터페이스를 사용하여 컴퓨터 시스템으로 로딩될 수 있다. 제어 로직(소프트웨어)은, 프로세서에 의해 실행될 때, 프로세서가 본원에 설명되는 바와 같은 다양한 실시예들의 기능을 수행하게 한다. 다양한 실시예들에서, 주문형 집적회로들(application specific integrated circuits; ASICs)와 같은 하드웨어 구성요소들이 있다. 본원에 설명되는 기능들을 수행하기 위한 하드웨어 상태 머신의 구현은 관련 기술(들)의 숙련자들에게 명백할 것이다.
다양한 실시예들에서, 서버는 애플리케이션 서버들(예를 들어 WEB SPHERE, WEB LOGIC, JBOSS, EDB® Postgres Plus Advanced Server®(PPAS) 등)을 포함할 수 있다. 다양한 실시예들에서, 서버는 웹 서버들(예를 들어, APACHE, IIS, GWS, SUN JAVA® SYSTEM WEB SERVER, LINUX 또는 WINDOWS 상에서 실행되는 JAVA Virtual Machine)을 포함할 수 있다.
웹 클라이언트는 예를 들어 본원에 논의된 것들과 같은, 임의의 네트워크를 통해 통신하는 임의의 디바이스(예를 들어, 퍼스널 컴퓨터)를 포함한다. 그러한 브라우저 애플리케이션들은 온라인 트랜잭션들 및/또는 통신들을 수행하기 위해 컴퓨팅 유닛 또는 시스템 내에 설치되는 인터넷 브라우징 소프트웨어를 포함한다. 이들 컴퓨팅 유닛들 또는 시스템들은 컴퓨터 또는 컴퓨터들의 세트의 형태를 취할 수 있지만, 다른 유형들의 컴퓨팅 유닛들 또는 시스템들이 사용될 수 있으며, 이들은 랩탑들, 노트북들, 태블릿들, 핸드 헬드 컴퓨터들, 개인 휴대 정보 단말기들, 셋톱 박스들, 워크스테이션들, 컴퓨터-서버들, 메인 프레임 컴퓨터들, 미니-컴퓨터들, PC 서버들, 편재형(pervasive) 컴퓨터들, 컴퓨터들의 네트워크 세트들, 퍼스널 컴퓨터들, 예컨대 IPADS®, IMACS®, 및 MACBOOKS®, 키오스크들, 단말기들, 매장(point of sale; POS) 디바이스들 및/또는 단말기들, 텔레비전들, 또는 네트워크를 통해 데이터를 수신할 수 있는 임의의 다른 디바이스를 포함한다. 웹-클라이언트는 MICROSOFT® INTERNET EXPLORER®, MOZILLA® FIREFOX®, GOOGLE® CHROME®, APPLE® Safari, 또는 인터넷을 브라우징하기 위해 이용가능한 임의의 다른 무수한 소프트웨어 패키지들을 실행시킬 수 있다.
실무자들(Practitioner)은 웹 클라이언트가 애플리케이션 서버와 직접 접촉할 수 있거나 그렇지 않을 수 있다는 것을 이해할 것이다. 예를 들어, 웹 클라이언트는 다른 서버 및/또는 하드웨어 구성요소를 통해 애플리케이션 서버의 서비스들을 액세스할 수 있으며, 이는 인터넷 서버에 직접 또는 간접 연결을 가질 수 있다. 예를 들어, 웹 클라이언트는 로드 밸런서(load balancer)를 통해 애플리케이션 서버와 통신할 수 있다. 다양한 실시예들에서, 액세스는 상업적으로 이용가능한 웹-브라우저 소프트웨어 패키지를 통한 네트워크 또는 인터넷을 통해서 이루어진다.
당업자들이 이해하는 바와 같이, 웹 클라이언트는 운영 체제(예를 들어, 윈도우S®/CE/Mobile, OS2, UNIX®, LINUX®, SOLARIS®, MacOS 등) 뿐만 아니라 전형적으로 컴퓨터들과 연관되는 다양한 기존의 지원 소프트웨어 및 드라이버들을 포함한다. 웹 클라이언트는 임의의 적합한 퍼스널 컴퓨터, 네트워크 컴퓨터, 워크스테이션, 개인 휴대 정보 단말기, 셀룰러 폰, 스마트 폰, 미니컴퓨터, 메인프레임 등등을 포함할 수 있다. 웹 클라이언트는 네트워크에 대한 액세스를 갖는 가정 또는 비즈니스 환경에 있을 수 있다. 다양한 실시예들에서, 액세스는 상업적으로 이용가능한 웹-브라우저 소프트웨어 패키지를 통한 네트워크 또는 인터넷을 통해서 이루어진다. 웹 클라이언트는 SSL(Secure Sockets Layer) 및 TLS(Transport Layer Security)와 같은 보안 프로토콜들을 구현할 수 있다. 웹 클라이언트는 http, https, ftp, 및 sftp를 포함하는 수개의 애플리케이션 계층 프로토콜들을 구현할 수 있다.
다양한 실시예들에서, 시스템(100)의 구성요소들, 모듈들, 및/또는 엔진들은 마이크로-애플리케이션들 또는 마이크로-앱들로서 구현될 수 있다. 마이크로-앱들은 전형적으로 예를 들어, WINDOWS® 모바일 운영 체제, ANDROID® 운영 체제, APPLE® IOS®, BLACKBERRY® 운영 체제 등을 포함하는 모바일 운영 체제의 맥락에서 전개된다. 마이크로-앱은 다양한 운영 체제들 및 하드웨어 자원들의 동작들을 지배하는 일련의 미리 결정된 규칙들을 통해 더 큰 운영 체제 및 연관된 하드웨어의 자원들을 활용하도록 구성될 수 있다. 예를 들어, 마이크로-앱이 모바일 디바이스 또는 모바일 운영 체제 이외의 디바이스 또는 네트워크와 통신하기를 원하는 경우, 마이크로-앱은 모바일 운영 체제의 미리 결정된 규칙들 하에서 운영 체제 및 연관된 디바이스 하드웨어의 통신 프로토콜을 활용할 수 있다. 또한, 마이크로-앱이 사용자로부터의 입력을 원하는 경우, 마이크로-앱은 다양한 하드웨어 구성요소들을 모니터링하고 그 다음 검출된 입력을 하드웨어로부터 마이크로-앱으로 통신하는 운영 체제로부터의 응답을 요청할 수 있다.
본원에 사용되는 바와 같이, "식별자"는 아이템을 고유하게 식별하는 임의의 적합한 식별자일 수 있다. 예를 들어, 식별자는 전역 고유 식별자(globally unique identifier; "GUID")일 수 있으며, 이는 또한 보편적 고유 식별자(universally unique identifier; "UUID")로서 지칭될 수 있다. GUID는 보편적 고유 식별자 표준 하에서 생성되고/되거나 구현되는 식별자일 수 있다. 또한, GUID는 32개의 16진법 숫자들로 디스플레이될 수 있는 28-비트 값으로서 저장될 수 있다. 식별자는 또한 주 번호(major number), 및 부 번호(minor number)를 포함할 수 있다. 주 번호 및 부 번호는 각각 16 비트 정수일 수 있다.
다양한 시스템 구성요소들은 예를 들어, 전형적으로 표준 모뎀 통신, 케이블 모뎀, Dish Networks®, ISDN, DSL(Digital 가입자 Line), 또는 다양한 무선 통신 방법들과 연결하기 위해 사용되는 바와 같은 로컬 루프를 통해 ISP(Internet Service Provider)에 대한 연결을 포함하는 데이터 링크들을 통해 네트워크에 독립적으로, 개별적으로 또는 집합적으로 적절하게 결합될 수 있으며, 예를 들어, GILBERT HELD, UNDERSTANDING DATA COMMUNICATIONS(1996)를 참고하며, 이는 이로써 참조로 통합된다. 네트워크는 다른 유형들의 네트워크들, 예컨대 대화형 텔레비젼(interactive television; ITV) 네트워크로서 구현될 수 있다는 점이 주목된다. 또한, 시스템은 본원에 설명되는 유사한 기능을 갖는 임의의 네트워크를 통해 임의의 상품들, 서비스들 또는 정보의 사용, 판매 또는 분배를 고려한다.
"클라우드" 또는 "클라우드 컴퓨팅"은 최소 관리 노력 또는 서비스 프로바이더 상호작용으로 신속하게 프로비저닝 및 릴리스될 수 있는 구성가능한 컴퓨팅 자원들(예를 들어, 네트워크들, 서버들, 스토리지, 애플리케이션들, 및 서비스들)의 공유 풀에 대한 편리한, 주문형(on-demand) 네트워크 액세스를 가능하게 하기 위한 모델을 포함한다. 클라우드 컴퓨팅은 위치-독립적 컴퓨팅을 포함할 수 있으며, 그것에 의해 공유 서버들은 요구만 있으면 자원들, 소프트웨어, 및 데이터를 컴퓨터들 및 다른 디바이스들에 제공한다. 클라우드 컴퓨팅에 관한 더 많은 정보의 경우, http://csrc.nist.gov/publications/nistpubs/800-145/SP800-145.pdf(최종 2012년 6월 방문)에서 클라우드 컴퓨팅의 NIST(National Institute of Standards and Technology)의 정의를 참고하며, 이는 이로써 그 전체가 참조로 통합된다.
시스템 또는 임의의 구성요소들은 예를 들어, AMAZON에 의해 개발된 ALEXA 시스템과 같은 시스템 통합 기술과 통합될 수 있다. Alexa는 과제들, 엔터테인먼트, 일반 정보 및 그 이상으로 당신을 도울 수 있는 클라우드-기반 음성 서비스이다. 모든 Amazon Alexa 디바이스들, 예컨대 Amazon Echo, Amazon Dot, Amazon Tap 및 Amazon Fire TV는 Alexa Voice Service에 대한 액세스를 갖는다. 시스템은 그것의 음성 활성 기술을 통해 음성 명령들을 수신하고/하거나, 다른 기능들을 활성화하고/하거나, 스마트 디바이스들을 제어하고/하거나 정보를 수집할 수 있다. 예를 들어, 음악, 이메일들, 텍스트들, 통화(calling), 질문에 대한 답변, 홈 개선 정보, 스마트 홈 통신/활성화, 게임들, 쇼핑, 해야 할 목록들 작성, 알람들 설정, 팟캐스트들 스트리밍, 오디오북들 재생, 및 날씨, 교통, 및 다른 실시간 정보, 예컨대 뉴스를 제공하는 것이다. 시스템은 사용자가 모든 Alexa-가능 디바이스들에 걸쳐 온라인 계정에 링크되는 적격의 계정들에 대한 정보에 액세스하는 것을 허용할 수 있다.
시스템은 웹 서비스들, 유틸리티 컴퓨팅, 편재적 및 개별화된 컴퓨팅, 보안 및 아이덴티티 솔루션들, 자율 컴퓨팅, 클라우드 컴퓨팅, 상품 컴퓨팅, 이동 및 무선 솔루션들, 오픈 소스, 생체인식, 그리드 컴퓨팅 및/또는 메쉬 컴퓨팅과 연관하여 사용들을 고려한다.
본원에 논의되는 임의의 데이터베이스들은 관계, 계층, 그래픽, 블록체인, 객체 지향 구조 및/또는 임의의 다른 데이터베이스 구성들을 포함할 수 있다. 데이터베이스들을 구현하기 위해 사용될 수 있는 공통 데이터베이스 제품들은 IBM®(Armonk, N.Y.)의 DB2(Armonk, N.Y.), ORACLE® Corporation(Redwood Shores, Calif.)로부터 이용가능한 다양한 데이터베이스 제품들, MICROSOFT® Corporation(Redmond, Wash.)에 의한 MICROSOFT® Access® 또는 MICROSOFT® SQL Server®, MySQL AB(Uppsala, Sweden)에 의한 MySQL, MongoDB®, Redis®, Apache Cassandra®, 또는 임의의 다른 적합한 데이터베이스 제품을 포함한다. 또한, 데이터베이스들은 임의의 적합한 방식으로, 예를 들어, 데이터 테이블들 또는 룩업 테이블들로서 구조화될 수 있다. 각각의 레코드는 단일 파일, 일련의 파일들, 링크된 일련의 데이터 파일들 또는 임의의 다른 데이터 구조일 수 있다.
블록체인 구조는 데이터 레코드들의 증가하는 목록을 유지하는 분산형 데이터베이스를 포함한다. 블록체인은 각각의 블록이 개별 트랜잭션들을 보유하고 임의의 블록체인의 결과들이 실행가능하기 때문에 향상된 보안을 제공할 수 있다. 각각의 블록은 타임스탬프 및 이전 블록에 대한 링크를 포함할 수 있다. 블록들은 각각의 블록이 블록체인에서 이전 블록의 해시를 포함할 수 있기 때문에 링크될 수 있다. 링크된 블록들은 체인을 형성하며, 하나의 후임 블록만이 단일 체인을 위해 하나의 다른 전임 블록에 링크되는 것이 허용된다. 포크들(Forks)은 분기 체인들이 이전의 균일한 블록체인으로부터 설정되는 경우 가능할 수 있다. 블록체인-기반 결제 네트워크들에 대한 더 많은 정보의 경우, 2016년 5월 15일자로 출원된 발명의 명칭이 SYSTEMS AND METHODS FOR BLOCKCHAIN BASED PAYMENT NETWORKS인 미국 출원 일련 번호 제15/266,350호를 참고하며, 그 내용들은 그 전체에서 참조로 통합된다.
특정 데이터의 연관은 기술 분야에 공지되거나 실시되는 것들과 같은 임의의 원하는 데이터 연관 기술을 통해 달성될 수 있다. 예를 들어, 연관은 수동으로 또는 자동으로 달성될 수 있다. 자동 연관 기술들은 예를 들어, 데이터베이스 검색, 데이터베이스 병합, GREP, AGREP, SQL, 검색들의 속도를 높이기 위해 테이블의 키 필드 사용, 모든 테이블들 및 파일들을 통한 순차 검색들, 룩업을 단순화하기 위해 공지된 순서에 따라 파일의 레코드들을 소팅, 및/또는 유사한 것을 포함할 수 있다. 연관 단계는 예를 들어, 미리 선택된 데이터베이스들 또는 데이터 섹터들에서 "키 필드"를 사용하는 데이터베이스 병합 기능에 의해 달성될 수 있다. 다양한 데이터베이스 튜닝 단계들은 데이터베이스 성능을 최적화하기 위해 고려된다. 예를 들어, 인덱스들과 같은 자주 사용된 파일들은 In/Out("I/O") 병목현상들을 감소시키기 위해 별도의 파일 시스템들 상에 배치될 수 있다.
당업자들은 또한 보안상의 이유들로 인해, 시스템의 임의의 데이터베이스들, 시스템들, 디바이스들, 서버들 또는 다른 구성요소들이 단일 위치에서 또는 다수의 위치들에서 그 임의의 조합으로 구성될 수 있으며, 여기서, 각각의 데이터베이스 또는 시스템이 다양한 적합한 보안 특징들, 예컨대 방화벽들, 액세스 코드들, 암호화, 해독화, 압축, 압축해제, 및/또는 유사한 것 중 임의의 것을 포함한다는 것을 이해할 것이다.
웹 클라이언트의 컴퓨팅 유닛은 표준 다이얼-업(dial-up), 케이블, DSL 또는 기술분야에 공지된 임의의 다른 인터넷 프로토콜을 사용하여 인터넷 또는 인트라넷에 연결되는 인터넷 브라우저를 더 장착할 수 있다. 웹 클라이언트에서 비롯되는 트랜잭션들은 다른 네트워크들의 사용자들로부터의 비인가된 액세스를 방지하기 위해 방화벽을 통과할 수 있다. 또한, 추가 방화벽들은 보안을 더 강화하기 위해 CMS의 다양한 구성요소들 사이에 전개될 수 있다.
본원에 논의되는 컴퓨터들은 사용자들에 의해 액세스가능한 적합한 웹사이트 또는 다른 인터넷-기반 그래픽 사용자 인터페이스를 제공할 수 있다. 일 실시예에서, MICROSOFT® INTERNET INFORMATION SERVICES®(IIS), MICROSOFT® Transaction Server(MTS), 및 MICROSOFT® SQL Server는 MICROSOFT® 운영 체제, MICROSOFT® NT 웹 서버 소프트웨어, MICROSOFT® SQL Server 데이터베이스 시스템, 및 MICROSOFT® Commerce Server와 함께 사용된다. 추가적으로, Access 또는 MICROSOFT® SQL Server, ORACLE®, Sybase, Informix MySQL, Interbase 등과 같은 구성요소들은 ADO(Active Data Object) 호환 데이터베이스 관리 시스템을 제공하기 위해 사용될 수 있다. 일 실시예에서, Apache 웹 서버는 Linux 운영 체제, MySQL 데이터베이스, 및 Perl, PHP, Ruby, 및/또는 Python 프로그래밍 언어들과 함께 사용된다.
본원에 논의되는 통신들, 입력들, 스토리지, 데이터베이스들 또는 디스플레이들 중 임의의 것은 웹 페이지들을 갖는 웹사이트를 통해 용이하게 될 수 있다. 본원에 사용된 바와 같은 용어 "웹 페이지"는 사용자와 상호작용하기 위해 사용될 수도 있는 문서들 및 애플리케이션들의 유형을 제한하는 것으로 의미되지 않는다. 예를 들어, 전형적인 웹사이트는 표준 HTML 문서들에 더하여, 다양한 형식들, JAVA® applets, JAVASCRIPT, ASP(active server pages), CGI(common gateway interface scripts), XML(extensible markup language), 동적 HTML, CSS(cascading style sheets), AJAX(Asynchronous JAVASCRIPT And XML), 헬퍼(helper) 애플리케이션들, 플러그-인들 등을 포함할 수도 있다. 서버는 웹 서버로부터 요청을 수신하는 웹 서비스를 포함할 수 있으며, 요청은 URL 및 IP 어드레스(123.56.789.234)를 포함한다. 웹 서버는 적절한 웹 페이지들을 검색하고 웹 페이지들에 대한 데이터 또는 애플리케이션들을 IP 어드레스에 송신한다. 웹 서비스들은 통신 수단들, 예컨대 인터넷을 통해 다른 애플리케이션들과 상호작용할 수 있는 애플리케이션들이다. 웹 서비스들은 전형적으로 표준들 또는 프로토콜들 예컨대 XML, SOAP, AJAX, WSDL 및 UDDI에 기초할 수 있다. 웹 서비스 방법들은 기술 분야에 잘 공지되어 있고, 많은 표준 텍스트들로 커버된다. 예를 들어, ALEX NGHIEM, IT WEB SERVICES: A ROADMAP FOR THE ENTERPRISE (2003)를 참고하며, 이로써 참조로 통합된다. 예를 들어, REST(representational state transfer), 또는 RESTful, 웹 서비스들은 애플리케이션들 사이의 상호운용성(interoperability)을 가능하게 하는 하나의 방법을 제공할 수 있다.
각각의 참가자는 시스템과 상호작용하고 상거래들(commerce transactions)을 용이하게 하기 위해 컴퓨팅 디바이스를 구비한다. 고객은 퍼스널 컴퓨터의 형태로 컴퓨팅 유닛을 갖지만, 랩탑들, 노트북들, 핸드 헬드 컴퓨터들, 셋톱 박스들, 셀룰러 전화들, 터치-톤(touch-tone) 전화들 등을 포함하는 다른 유형들의 컴퓨팅 유닛들이 사용될 수 있다. 가맹점은 컴퓨터-서버의 형태로 구현되는 컴퓨팅 유닛을 갖지만, 다른 구현들이 시스템에 의해 구현된다. 은행은 메인 프레임 컴퓨터로서 도시되는 컴퓨팅 센터를 갖는다. 그러나, 은행 컴퓨팅 센터는 다른 형태들, 예컨대 미니-컴퓨터, PC 서버, 상이한 지리적 위치들 중 동일한 위치에 위치되는 컴퓨터들의 네트워크 등등으로 구현될 수 있다. 또한, 시스템은 본원에 설명되는 유사한 기능을 갖는 임의의 네트워크를 통해 임의의 상품들, 서비스들 또는 정보의 사용, 판매 또는 분배를 고려한다.
시스템 및 방법은 기능 블록 구성요소들, 스크린 샷들, 옵션 선택들 및 다양한 처리 단계들의 관점에서 본원에 설명될 수 있다. 그러한 기능 블록들은 특정 기능을 수행하도록 구성되는 임의의 수의 하드웨어 및/또는 소프트웨어 구성요소들에 의해 실현될 수 있다는 것이 이해되어야 한다. 예를 들어, 시스템은 다양한 집적 회로 구성요소들, 예를 들어, 메모리 요소들, 처리 요소들, 논리 요소들, 룩업 테이블들 등을 이용할 수 있으며, 이는 하나 이상의 마이크로프로세서들 또는 다른 제어 디바이스들의 제어 하에서 다양한 기능들을 수행할 수 있다. 유사하게, 시스템의 소프트웨어 요소들은 임의의 프로그래밍 또는 스크립팅 언어 예컨대 C, C++, C#, JAVA®, JAVASCRIPT, JSON(JAVASCRIPT Object Notation), VBScript, Macromedia Cold Fusion, COBOL, MICROSOFT® Active Server Pages, 어셈블리, PERL, PHP, awk, Python, Visual Basic, SQL Stored Procedures, PL/SQL, 및 임의의 UNIX 쉘 스크립트, 및 데이터 구조들, 오브젝트들, 프로세스들, 루틴들 또는 다른 프로그래밍 요소들의 임의의 조합으로 구현되는 다양한 알고리즘들을 갖는 XML(extensible markup language)로 구현될 수 있다. 또한, 시스템은 데이터 전송, 시그널링, 데이터 처리, 네트워크 제어 등을 위한 임의의 수의 종래의 기술들을 이용할 수 있다는 점이 주목되어야 한다. 더 추가적으로, 시스템은 클라이언트 측 스크립팅 언어, 예컨대 JAVASCRIPT, VBScript 등등으로 보안 문제들을 검출하거나 이를 방지하기 위해 사용될 수 있을 것이다. 암호화 및 네트워크 보안의 기본 소개의 경우, 다음의 참조들 중 임의의 것을 참고하며: (1) John Wiley & Sons에 의해 출판된(제2 판, 1995), Bruce Schneier에 의한 "Applied Cryptography: Protocols, Algorithms, And Source Code In C"; (2) O'Reilly & Associates에 의해 출판된(1998), Jonathan Knudson에 의한 "JAVA® Cryptography"; (3) Prentice Hall에 의해 출판된, William Stallings에 의한 "Cryptography & Network Security: Principles & Practice"; 이 모두는 이로써 참조로 통합된다.
블록도들 및 흐름도들의 각각의 기능 블록, 및 블록도들 및 흐름도들의 기능 블록들의 조합들 각각은 컴퓨터 프로그램 명령어들에 의해 구현될 수 있다는 것이 이해될 것이다. 도시된 프로세스 흐름들은 단지 실시예들이고 본 개시의 범위를 제한하도록 의도되지 않는다. 예를 들어, 방법 또는 프로세스 설명들 중 임의의 것에서 언급되는 단계들은 임의의 순서로 실행될 수 있고 제시되는 순서에 제한되지 않는다.
이들 컴퓨터 프로그램 명령어들은 머신을 생산하기 위해 범용 컴퓨터, 특수 목적 컴퓨터, 또는 다른 프로그래밍가능 데이터 처리 장치들 상으로 로딩될 수 있음으로써, 컴퓨터 또는 다른 프로그래밍가능 데이터 처리 장치들 상에서 실행되는 명령어들은 흐름도 블록 또는 블록들에서 특정되는 기능들을 구현하기 위한 수단들을 생성한다. 이들 컴퓨터 프로그램 명령어들은 또한 컴퓨터 또는 다른 프로그래밍가능 데이터 처리 장치들이 특정 방식으로 기능하도록 지시할 수 있는 컴퓨터-판독가능 메모리에 저장될 수 있음으로써, 컴퓨터-판독가능 메모리에 저장되는 명령어들은 흐름도 블록 또는 블록들에 특정된 기능을 구현하는 명령 수단들을 포함하는 제조 물품을 생산한다. 컴퓨터 프로그램 명령어들은 또한 컴퓨터 또는 다른 프로그래밍가능 장치 상에서 실행되는 명령어들이 흐름도 블록 또는 블록들에 특정되는 기능들을 구현하기 위한 단계들을 제공하도록 일련의 동작 단계들이 컴퓨터-구현 프로세스를 생산하기 위해 컴퓨터 또는 다른 프로그래밍가능 장치 상에서 수행되도록 하기 위해 컴퓨터 또는 다른 프로그래밍가능 데이터 처리 장치들 상으로 로딩될 수 있다.
따라서, 블록도들 및 흐름도들의 기능 블록들은 특정 기능들을 수행하기 위한 수단들의 조합들, 특정 기능들을 수행하기 위한 단계들의 조합들, 및 특정 기능들을 수행하기 위한 프로그램 명령 수단들을 지원한다. 또한, 블록도들 및 흐름도들의 각각의 기능 블록, 및 블록도들 및 흐름도들의 기능 블록들의 조합들은 특정 기능들 또는 단계들을 수행하는 특수 목적 하드웨어-기반 컴퓨터 시스템들, 또는 특수 목적 하드웨어 및 컴퓨터 명령어들의 적합한 조합들에 의해 구현될 수 있다는 것이 이해될 것이다. 또한, 프로세스 흐름들의 예시들 및 그 설명들은 사용자 WINDOWS®, 웹페이지들, 웹사이트들, 웹 형식들, 프롬프트들 등을 참조할 수 있다. 실무자들은 본원에 설명되는 예시된 단계들이 WINDOWS®, 웹페이지들, 웹 형식들, 팝업 WINDOWS®, 프롬프트들 등의 사용을 포함하는 임의의 수의 구성들을 포함할 수 있다는 것을 이해할 것이다. 예시되고 설명되는 바와 같은 다수의 단계들이 단일 웹페이지들 및/또는 WINDOWS®로 결합될 수 있지만 단순화를 위해 확장되었다는 것이 더 이해되어야 한다. 다른 경우들에서, 단일 프로세스 단계들로서 예시되고 설명되는 단계들은 다수의 웹페이지 및/또는 WINDOWS®로 분리될 수 있지만 단순화를 위해 결합되었다.
다양한 실시예들에서, 시스템의 소프트웨어 요소들은 또한 Node.js®을 사용하여 구현될 수 있다. Node.js®은 다양한 핵심 기능들을 처리하기 위해 수개의 모듈들을 구현할 수 있다. 예를 들어, npm®과 같은 패키지 관리 모듈은 제3자 Node.js® 프로그램들의 설치 및 관리를 조직화하는 것을 보조하기 위해 오픈 소스 라이브러리로서 구현될 수 있다. Node.js®는 또한 프로세스 매니저, 예컨대, 예를 들어, 병렬 멀티스레드 머신(Parallel Multithreaded Machine; "PM2"); 자원 및 성능 모니터링 도구, 예컨대, 예를 들어, 노드 애플리케이션 메트릭들(Node Application Metrics; "appmetrics"); 사용자 인터페이스들을 구축하기 위한 라이브러리 모듈, 예컨대 예를 들어 ReachJS®; 및/또는 임의의 다른 적합한 및/또는 원하는 모듈을 구현할 수 있다.
본 개시 및 청구범위는 로열티 포인트 네트워크를 동작시키는 특정 결과만을 설명하지 않고, 본 개시 및 청구범위는 로열티 포인트 네트워크를 동작시키는 결과를 구현하고 정보를 특정 포맷으로 렌더링하여 그 다음, 그것이 로열티 포인트 네트워크를 동작시키는 원하는 결과를 생성하기 위해 사용 및 적용되는 특정 규칙들을 포함하며, McRO, Inc. v. Bandai Namco Games America Inc.(Fed. Cir. case number 15-1080, Sep. 13, 2016)에 진술된 바와 같다. 다시 말해서, 로열티 포인트 네트워크를 동작시키는 결과는 많은 상이한 유형들의 규칙들 및 규칙들의 조합들에 의해 수행될 수 있고, 이 개시는 특정 규칙들을 갖는 다양한 실시예들을 포함한다. 완전한 선점(preemption)의 부재가 청구범위가 적격이라는 것을 보장하지 않을 수 있지만, 본 개시는 전혀 로열티 포인트 네트워크를 동작시키는 분야를 충분히 선점하지 않는다. 본 개시는 로열티 포인트 네트워크를 단지 동작시키는 일반적인 추상 아이디어를 커버하지 않도록 본 개시를 좁히고, 한정하고, 달리 구속하는 역할을 한다. 중요하게, 로열티 포인트 네트워크를 동작시키기 위한 다른 시스템들 및 방법들이 존재하므로, 청구된 발명이 로열티 포인트 네트워크를 동작시키는 분야를 선점하거나 그 기본 도구들을 독점한다고 주장하는 것은 적합하지 않다. 다시 말해서, 본 개시는 다른 시스템들이 이미 청구된 발명과 다른 방식들로 기능을 수행하고 있기 때문에, 다른 것들이 로열티 포인트 네트워크를 동작시키는 것을 방지하지 않을 것이다. 또한, 청구된 발명은 Bascom v. AT& T Mobility, 2015-1763(Fed. Cir. 2016)에 따라, 공지된, 종래의 피스들의 비종래적 및 비일반적 배열에서 발견될 수 있는 발명적 개념을 포함한다. 본 개시 및 청구범위는 시스템들의 상호 작용 및 시너지가 독립적으로 동작하는 시스템들 중 임의의 하나에 의해 제공되지 않는 추가적인 기능을 초래한다는 점에서 시스템들 중 임의의 하나의 임의의 종래성을 넘어선다. 본 개시 및 청구범위는 또한 다수의 상이한 시스템들 사이의 상호작용을 포함할 수 있어서, 본 개시는 일반적인 컴퓨터의 구현으로 간주될 수 없거나, 단지 추상 프로세스에 "적용"할 수 없다. 본 개시 및 청구범위는 또한 소프트웨어 분야들의 문제에 대한 솔루션의 특정 구현을 갖는 소프트웨어에 대한 개선에 관한 것일 수 있다.
다양한 실시예들에서, 시스템 및 방법은 그들의 컴퓨터가 오프라인일 때 가입자에게 경고하는 단계를 포함할 수 있다. 시스템은 맞춤형 정보를 생성하고 원격 가입자에게 정보가 그들의 컴퓨터로부터 액세스될 수 있다는 것을 경고하는 단계를 포함할 수 있다. 경고들은 수신된 정보를 필터링하고, 정보 경보들을 구축하고 경고들을 가입자 선호도 정보에 기초하여 데이터 블록들로 포맷함으로써 생성된다. 데이터 블록들은 가입자의 무선 디바이스로 전송되며 이는, 컴퓨터에 연결되어 있을 때, 컴퓨터가 정보 경고를 디스플레이하는 애플리케이션을 자동-론칭하게 하고 정보 경고에 관한 보다 상세한 정보에 대한 액세스를 제공하게 한다. 보다 구체적으로, 방법은 원격 가입자 컴퓨터 상의 설치를 위해 뷰어 애플리케이션을 가입자에게 제공하는 단계; 인터넷을 통해 데이터 소스로부터 송신되는 전송 서버에서의 정보를 수신하는 단계 - 전송 서버는 마이크로프로세서 및 정보 포맷, 목적지 어드레스, 특정 정보, 및 전송 스케줄에 대한 원격 가입자의 선호도들을 저장하는 메모리를 포함하며, 마이크로프로세서는 수신된 정보를 특정 정보와 비교함으로써 수신된 정보를 필터링함 -; 성명, 가격 및 데이터 소스의 위치를 특정하는 URL(universal resource locator)을 포함하는 필터링된 정보로부터 정보 경보를 생성하는 단계; 상기 정보 포맷에 따라 경보 정보를 데이터 블록들로 포맷하는 단계; 및 목적지 어드레스 및 전송 스케줄에 기초하여 무선 통신 채널을 통해 포맷된 정보 경보를 가입자와 연관되는 무선 디바이스에 전송하는 단계를 포함할 수 있으며, 여기서, 경보는 무선 디바이스가 원격 가입자 컴퓨터에 로컬로 연결되고 원격 가입자 컴퓨터가 온라인 상태로 된 경우 정보 경보가 원격 가입자 컴퓨터 상에 디스플레이되게 하고 인터넷을 통해 데이터 소스에 URL을 통한 연결을 가능하게 하기 위해 애플리케이션을 활성화시킨다.
다양한 실시예들에서, 시스템 및 방법은 사용자에게 자동으로 보여질 수 있도록 기본(underlying) 윈도우의 가려진 텍스트 정보를 동적으로 재배치/재스케일링하기 위한 그래픽 사용자 인터페이스를 포함할 수 있다. 텍스트 정보가 오버랩 조건에 기초하여 동적으로 재배치되는 것을 허용함으로써, 정보를 디스플레이하는 컴퓨터의 능력은 향상된다. 보다 구체적으로, 그래픽 사용자 인터페이스에 디스플레이되는 기본 윈도우 내의 텍스트 정보를 동적으로 재위치시키기 위한 방법은 컴퓨터 스크린 상에 그래픽 사용자 인터페이스 내에 제1 포맷으로 텍스트 정보를 포함하는 제1 윈도우를 디스플레이하는 단계; 그래픽 사용자 인터페이스 내에 제2 윈도우를 디스플레이하는 단계; 제1 윈도우의 텍스트 정보가 사용자의 뷰로부터 가려지도록 제2 윈도우가 제1 윈도우을 오버랩하는 경우 오버랩 상태를 검출하기 위해 제1 윈도우 및 제2 윈도우의 경계들을 연속적으로 모니터링하는 단계; 텍스트 정보가 제1 윈도우의 방해받지 않은 부분으로 재배치되는 경우 완전히 볼 수 없는 것으로 결정하는 단계; 제1 윈도우의 면적의 제1 측정치 및 제1 윈도우의 방해받지 않은 부분의 면적의 제2 측정치를 계산하는 단계; 제1 측정치와 제2 측정치 사이의 차이에 비례하는 스케일링 팩터(scaling factor)를 계산하는 단계; 스케일링 팩터에 기초하여 텍스트 정보를 스케일링하는 단계; 프로세서에 의해, 전체 스케일링된 텍스트 정보가 사용자에 의해 컴퓨터 스크린 상에서 볼 수 있도록 오버랩 상태 동안 제2 포맷으로 스케일링된 텍스트 정보를 제1 윈도우의 가려지지 않은 부분으로 자동적으로 재배치하는 단계; 및 프로세서에 의해, 오버랩 상태가 더 이상 존재하지 않을 때 재배치된 스케일링된 텍스트 정보를 제1 윈도우 내의 제1 포맷으로 자동적으로 리턴시키는 단계를 포함할 수 있다.
다양한 실시예들에서, 시스템은 또한 컴퓨터가 예를 들어 컴퓨터 바이러스로 감염됨으로써 손상되는 것을 방지하기 위해 전자 메시지들(예를 들어, 이메일)로부터 악성 코드를 격리 및 제거하는 단계를 포함할 수 있다. 시스템은 악성 컴퓨터 코드에 대한 전자 통신을 스캔하고 그것이 악성 동작들을 개시할 수 있기 전에 전자 통신을 정리할 수 있다. 시스템은 컴퓨터 메모리의 "격리(quarantine)" 섹터에 수신된 전자 통신을 물리적으로 격리시킴으로써 동작한다. 격리 섹터는 그 섹터에 저장되는 파일들이 그 섹터 외부의 파일들에 작용하는 것이 허용되지 않도록 컴퓨터의 운영 체제에 의해 생성되는 메모리 섹터이다. 악성 코드를 포함하는 통신이 격리 섹터에 저장되는 경우, 통신 내에 포함되는 데이터는 서명 데이터베이스 내에 저장되는 악성 코드-표시 패턴들과 비교된다. 특정 악성 코드-표시 패턴의 존재는 악성 코드의 특성(nature)을 나타낸다. 서명 데이터베이스는 악성 코드의 시점 및 종점을 나타내는 코드 마커들을 더 포함한다. 그 다음, 악성 코드는 악성 코드-포함 통신으로부터 추출된다. 추출 루틴은 처리 유닛의 파일 파싱(parsing) 구성요소에 의해 실행된다. 파일 파싱 루틴은 다음의 동작들을 수행한다: 식별된 시작 악성 코드 마커에 대해 통신을 스캔하는 동작; 시작 마커와 연속 종료 악성 코드 마커 사이에 각각의 스캐닝된 바이트를 플래그하는 동작; 더 이상 시작 악성 코드 마커가 발견되지 않을 때까지 계속해서 스캐닝하는 동작; 및 모든 비-플래그된 데이터 바이트들을 새로운 파일로 순차적으로 복사함으로써 새로운 데이터 파일을 생성하는 동작으로서, 따라서, 이는 검열된(sanitized) 통신 파일을 생성하는 동작. 새로운, 검열된 통신은 컴퓨터 메모리의 비-격리 섹터로 전송된다. 후속으로, 격리 섹터 상의 모든 데이터는 지워진다. 보다 구체적으로, 시스템은 부트 섹터, 격리 섹터 및 비-격리 섹터를 갖는 메모리를 구비하는 컴퓨터에서 악성 코드를 포함하는 전자 통신을 수용함으로써 악성 코드를 포함하는 전자 통신으로부터 컴퓨터를 보호하는 단계; 컴퓨터의 메모리의 격리 섹터에 통신을 저장하는 단계 - 격리 섹터는 컴퓨터 메모리에서 부트 및 비-격리 섹터로부터 격리되며, 격리 섹터의 코드는 다른 메모리 섹터들 상에 기록 동작들을 수행하는 것으로부터 방지됨 -; 파일 파싱을 통해, 검열된 전자 통신을 생성하기 위해 전자 통신으로부터 악성 코드를 추출하는 단계 - 추출 단계는 식별된 시작 악성 코드 마커에 대한 통신을 스캐닝하는 단계, 시작 마커와 연속 종료 악성 코드 마커 사이에 각각의 스캐닝된 바이트를 플래깅하는 단계, 더 이상 시작 악성 코드 마커가 발견되지 않을 때까지 스캐닝을 계속하는 단계, 및 모든 비-플래그된 데이터 바이트들을 검열된 통신 파일을 생성하는 새로운 파일로 순차적으로 복사함으로써 새로운 데이터 파일을 생성하는 단계를 포함함 -; 검열된 전자 통신을 메모리의 비-격리 섹터로 전송하는 단계; 및 격리 섹터에 잔류하는 모든 데이터를 삭제하는 단계를 위한 방법을 포함한다.
다양한 실시예들에서, 시스템은 또한 광고 가맹점의 웹 페이지의 제품-관련 콘텐츠 정보를 갖는 호스트 웹 페이지의 "룩 앤드 필"을 공동 마케팅하기 위한 시스템을 사용하여, 제휴사 구매 트랜잭션들 동안 고객들에 대한 제어를 유지하는 문제를 해결할 수 있다. 시스템은 다수의 호스트들과 가맹점들 사이의 브로커로서의 역할을 하는, 제3자 아웃소스 프로바이더에 의해 동작될 수 있다. 구현 전에, 호스트는 호스트의 웹 페이지 상에 가맹점의 웹페이지에 대한 링크들을 배치한다. 링크들은 가맹점의 웹 페이지 상의 제품-관련 콘텐츠와 연관된다. 추가적으로, 아웃소스 프로바이더 시스템은 컴퓨터 서버에 결합되는, 컴퓨터 데이터 스토어에 각각의 호스트의 웹 페이지들로부터의 "룩 앤드 필" 정보를 저장한다. "룩 앤드 필" 정보는 시각적으로 인식가능한 요소들 예컨대 로고들, 색상들, 페이지 레이아웃, 내비게이션 시스템, 프레임들, 마우스-오버 효과들 또는 각각의 호스트의 각각의 웹 페이지들 중 일부 또는 전부를 통해 일정한 다른 요소들을 포함한다. 광고 링크를 클릭하는 고객은 호스트 웹 페이지로부터 가맹점의 웹 페이지로 전송되지 않지만, 그 대신 선택된 아이템과 연관되는 제품 정보 및 호스트 웹 페이지의 시각적으로 인식가능한 요소들을 조합하는 복합 웹 페이지로 재지향된다. 아웃소스 프로바이더의 서버는 링크가 선택된 호스트 웹 페이지를 먼저 식별하고 대응하는 저장된 "룩 앤드 필" 정보를 검색함으로써 응답한다. 서버는 호스트 웹 페이지의 검색된 "룩 앤드 필" 정보를 사용하여 복합 웹 페이지를 구성하며, 제품-관련 콘텐츠가 그 내에 내장됨으로써, 복합 웹 페이지는 호스트 웹 페이지와 연관되는 바와 같이 고객에 의해 시각적으로 인식된다. 그 다음, 서버는 고객이 제3자 가맹점 제휴사로 재지향되는 것 없이 아이템을 구매하기 위해 호스트 웹 페이지에 효과적으로 잔류하도록 이 복합 웹 페이지를 고객에게 전송 및 제시한다. 그러한 복합 페이지들이 호스트 웹 페이지와 연관되는 것으로서 고객에 의해 시각적으로 인식되기 때문에, 그들은 고객이 호스트에 의해 서빙되는 페이지들을 보고 있는 있다는 인상을 고객에게 제공한다. 또한, 고객은 제3자 가맹점 제휴사로 재지향되는 것 없이 아이템을 구매할 수 있으며, 따라서 호스트가 고객에 대한 제어를 유지하는 것을 허용한다. 이 시스템은 호스트가 이전과 같은 그러나 방문자 트래픽 및 잠재적인 고객들의 손실 없이 동일한 광고 수입원들(revenue streams)을 수신할 수 있게 한다. 보다 구체적으로, 시스템은 상업적 기회들을 제공하는 웹 페이지들을 서빙하는 아웃소스 프로바이더에게 유용할 수 있다. 데이터를 포함하는 컴퓨터 스토어는, 복수의 제1 웹 페이지들 각각에 대해, 시각적으로 인식가능한 요소들이 복수의 제1 웹 페이지들에 대응하는, 복수의 시각적으로 인식가능한 요소들을 정의하며; 제1 웹 페이지들 각각은 복수의 웹 페이지 소유자들 중 하나에 속하고; 제1 웹 페이지들 각각은 복수의 가맹점들 중 선택된 하나의 구매 기회와 연관되는 상거래 객체와 연관되는 적어도 하나의 활성 링크를 디스플레이하고; 연관된 링크를 디스플레이하는 제1 웹 페이지의 선택된 가맹점, 아웃소스 프로바이더, 및 소유자는 서로에 대해 각각 제3자이며; 아웃소스 프로바이더에서의 컴퓨터 서버로서, 이 컴퓨터 서버는 컴퓨터 스토어에 결합되고 하기를 행하도록 프로그래밍된다: 제1 웹 페이지들 중 하나에 의해 디스플레이되는 링크들 중 하나의 활성을 나타내는 신호를 컴퓨터 사용자의 웹 브라우저로부터 수신하고; 링크가 활성화된 제1 웹 페이지들 중 하나를 소스 페이지로서 자동으로 식별하고; 소스 페이지의 식별에 응답하여, 소스 페이지에 응답하는 저장된 데이터를 자동으로 검색하고; 검색된 데이터를 사용하여, 하기: 즉, 활성화된 링크와 연관되는 상거래 객체와 연관되는 정보, 및 시각적으로 소스 페이지에 대응하는 복수의 시각적으로 인식가능한 요소들을 디스플레이하는 제2 웹 페이지를 자동으로 생성하고 이를 웹 브라우저로 송신하는 것.
용어 "비-일시적"은 청구 범위로부터 그 자체로 전파하는 일시적인 신호들 만을 제거하는 것으로 이해되어야 하고 그 자체로 전파하는 일시적인 신호들만이 아닌 모든 표준 컴퓨터-판독가능 매체에 대한 권리를 포기하지 않는다. 달리 말하면, 용어 "비-일시적 컴퓨터-판독가능 매체" 및 "비-일시적 컴퓨터-판독가능 저장 매체"의 의미는 35 U.S.C. § 101 하에서 특허가능한 발명 대상의 범위를 벗어나는 In Re Nuitjten에서 발견된 그들 유형들의 일시적인 컴퓨터-판독가능 매체만을 배제하는 것으로 해석되어야 한다.
이점들, 다른 장점들, 및 문제들에 대한 솔루션들은 특정 실시예들과 관련하여 본원에 설명되었다. 그러나, 이점들, 다른 장점들, 및 문제들에 대한 솔루션들, 및 임의의 이점, 장점, 또는 솔루션이 발생하게 하거나 보다 확연하게 되도록 할 수 있는 임의의 요소들은 본 개시의 대단히 중요한, 필수적인, 또는 본질적인 특징들 또는 요소들로서 해석되지 않아야 한다. 따라서, 본 개시의 범위는 첨부된 청구범위 이외의 다른 것에 의해 제한되지 않으며, 여기서, 단수의 요소에 대한 언급은 명시적으로 그렇게 진술되지 않는 한 "하나 및 하나만"을 의미하도록 의도되기 보다는, "하나 이상"을 의미하도록 의도된다. 더욱이, 'A, B, 및 C 중 적어도 하나' 또는 'A, B, 또는 C 중 적어도 하나'와 유사한 어구가 청구범위 및 명세서에 사용되는 경우, 어구는 A 단독이 실시예에 존재할 수 있거나, B 단독이 실시예에 존재할 수 있거나, C 단독이 실시예에 존재할 수 있거나, 요소들 A, B 및 C의 임의의 조합; 예를 들어, A 및 B, A 및 C, B 및 C, 또는 A 및 B 및 C가 단일 실시예에 존재할 수 있다는 것을 의미하도록 해석되어야 한다고 의도된다. 본 개시는 방법을 포함하지만, 그것은 유형의 컴퓨터-판독가능 캐리어, 예컨대 자기 또는 광학 메모리 또는 자기 또는 광학 디스크 상에 컴퓨터 프로그램 명령어들로서 구현될 수 있다는 것이 고려된다. 당업자들에게 공지된 상술된 다양한 실시예들의 요소들에 대한 모든 구조적, 화학적, 및 기능적 등가물들은 참조로 본원에 명백히 통합되고 본 청구범위에 의해 망라되도록 의도된다. 또한, 디바이스 또는 방법은 그것이 본 청구범위에 의해 망라되기 때문에, 본 개시에 의해 해결되도록 추구되는 각각의 그리고 모든 문제를 해결하기 위해 필요한 것은 아니다. 더욱이, 본 개시의 요소, 구성요소, 또는 방법 단계는 요소, 구성요소, 또는 방법 단계가 청구범위에 명시적으로 언급되는지 여부에 관계없이, 대중에게 전용되도록 의도되지 않는다. 클레임 요소는 요소가 어구 "~을 위한 수단"을 사용하여 명시적으로 언급되지 않는 한 35 U.S.C. 112(f)를 적용하도록 의도되지 않는다. 본원에 사용되는 바와 같이, 용어들 "포함하다", "포함하는", 또는 그것의 임의의 다른 변형은 비-배타적 포함을 커버하도록 의도됨으로써, 요소들의 목록을 포함하는 프로세스, 방법, 물품, 또는 장치는 그들 요소들만을 포함하는 것이 아니고 그러한 프로세스, 방법, 물품, 또는 장치에 명시적으로 열거되거나 고유하지 않은 다른 요소들을 포함할 수 있다.

Claims (20)

  1. 방법에 있어서,
    블록체인 API를 제공하는 호스트 컴퓨팅 디바이스가, 로열티 포인트 네트워크에 접근을 위한 클라이언트 디바이스 상에서 실행된 로열티 지갑 으로부터 제1 고객 계정에 대한 고객 등록 요청을 수신하는 단계, 상기 고객 등록 요청은 공개 키를 포함하고, 상기 로열티 포인트 네트워크는 복수의 승인된 클라이언트 디바이스들에 대한 블록체인에 대한 접근을 제한하고, 상기 로열티 포인트 네트워크는 복수의 등록된 로열티 파트너 웹 사이트들이 각 트랜잭션에 대해 상기 복수의 승인된 클라이언트 디바이스들 중 하나로부터 복수의 로열티 포인트들을 수락하도록 허용하고, 상기 블록 체인은 상기 복수의 승인된 클라이언트 디바이스들에 대한 복수의 트랜잭션들을 저장하고 처리하도록 동작함;
    상기 호스트 컴퓨팅 디바이스가, 상기 로열티 지갑으로부터 상기 고객 등록 요청을 수신함에 응답하여, 로열티 포인트 네트워크로의 접근을 위한 상기 고객 등록 요청을 검증하는 단계, 상기 검증하는 단계는 상기 공개 키를 사용하여 상기 고객 등록 요청의 적어도 일부 상에서의 암호화 동작을 수행함으로써 상기 고객 등록 요청을 검증하는 단계를 포함함;
    상기 호스트 컴퓨팅 디바이스가, 블록체인에 기록하기 위해 고객 등록 제안을 컨센서스 참가자들에게 전파하는 단계, 상기 고객 등록 제안은 상기 고객 등록 요청을 검증하는 것에 응답하여 전파되고, 상기 클라이언트 디바이스는 상기 블록체인에 기록될 상기 고객 등록 제안에 응답하여 상기 로열티 포인트 네트워크에 접근할 권한이 있음;
    상기 호스트 컴퓨팅 디바이스가, 로열티 포인트들의 금액을 상기 로열티 포인트 네트워크 상에서, 상기 클라이언트 디바이스와 연관된 상기 제1 고객 계정으로부터 제2 고객 계정으로 이체시키기 위한 요청을 수신하는 단계;
    상기 호스트 컴퓨팅 디바이스가, 상기 제1 고객 계정과 연관되는 상기 공개 키를 사용하여 상기 요청의 적어도 일부 상에서의 암호화 동작을 수행함으로써 상기 요청을 검증하는 단계; 및
    상기 호스트 컴퓨팅 디바이스가, 블록체인에 기록하기 위해 제안 - 상기 제안은 상기 제1 고객 계정에 대한 제1 블록체인 주소, 상기 제2 고객 계정에 대한 제2 블록체인 주소, 및 상기 로열티 포인트들의 금액을 포함함 -을 컨센서스 참가자들에게 전파하는 단계를 포함하고,
    상기 컨센서스 참가자들에게 상기 제안을 전파하는 단계는 상기 로열티 포인트 네트워크에서, 상기 제1 고객 계정의 계정 잔액을 업데이트하는 상기 제안을 상기 블록체인에 기록하는 단계를 포함하는 방법.
  2. 제1항에 있어서,
    상기 로열티 지갑은 API 호출을 사용하여 상기 요청을 전송하는, 방법.
  3. 제1항에 있어서,
    상기 컨센서스 참가자들은 작업 증명, 지분 증명, 프랙티컬 비잔틴 장애 허용, 또는 위임 지분 증명 중 적어도 하나를 사용하여 상기 제안에 대한 컨센서스를 달성하는, 방법.
  4. 제1항에 있어서,
    상기 로열티 지갑은 상기 공개 키에 대응하는 개인 키를 암호화하고 저장하는, 방법.
  5. 제1항에 있어서,
    상기 호스트 컴퓨팅 디바이스가, 로열티 파트너 사이트에 대한 파트너_등록 요청을 수신하는 단계;
    상기 호스트 컴퓨팅 디바이스가, 상기 로열티 파트너 사이트와 연관되는 파트너 공개 키를 사용하여 상기 파트너 등록 요청의 적어도 일부 상에서의 상기 암호화 동작을 수행함으로써 상기 파트너 등록 요청을 검증하는 단계; 및
    상기 호스트 컴퓨팅 디바이스가, 상기 블록체인에 기록하기 위해 상기 파트너 등록 제안을 상기 컨센서스 참가자들에게 전파하는 단계를 더 포함하는, 방법.
  6. 제5항에 있어서,
    상기 호스트 컴퓨팅 디바이스가, 상기 제2 고객 계정과 연관되는 로열티 지갑으로부터 결제 요청 - 상기 결제 요청은 가맹점 계정 및 결제 금액을 포함함 -을 수신하는 단계;
    상기 호스트 컴퓨팅 디바이스가, 상기 제2 고객 계정과 연관되는 제2 공개 키를 사용하여 상기 결제 요청의 적어도 일부 상에서의 상기 암호화 동작을 수행함으로써 상기 결제 요청을 검증하는 단계; 및
    상기 호스트 컴퓨팅 디바이스가, 상기 블록체인에 기록하기 위해 결제 제안 - 상기 결제 제안은 상기 가맹점 계정, 상기 결제 금액, 및 상기 제2 고객 계정을 포함함 -을 상기 컨센서스 참가자들에게 전파하는 단계를 더 포함하는, 방법.
  7. 제1항에 있어서,
    상기 호스트 컴퓨팅 디바이스가, 상기 제2 고객 계정과 연관되는 로열티 지갑으로부터의 교환 요청 - 상기 교환 요청은 환전 계정, 피아트 통화 유형, 환율, 및 로열티 포인트 금액을 포함함 -을 수신하는 단계;
    상기 호스트 컴퓨팅 디바이스가, 상기 제2 고객 계정과 연관되는 제2 공개 키를 사용하여 상기 교환 요청의 적어도 일부 상에서의 상기 암호화 동작을 수행함으로써 상기 교환 요청을 검증하는 단계; 및
    상기 호스트 컴퓨팅 디바이스가, 상기 블록체인에 기재하기 위해 교환 제안 - 상기 교환 제안은 상기 환전 계정, 상기 피아트 통화 유형, 상기 환율, 및 상기 로열티 포인트 금액을 포함함 -을 상기 컨센서스 참가자들에게 전파하는 단계를 더 포함하는, 방법.
  8. 로열티 포인트 네트워크에 있어서,
    프로세서;
    상기 프로세서와 통신하도록 구성되는 유형의, 비-일시적 메모리를 포함하며,
    상기 유형의, 비-일시적 메모리는 그 상에 저장되는 명령어들을 가지되, 상기 명령어들은, 상기 프로세서에 의한 실행에 응답하여, 호스트 컴퓨팅 디바이스가 동작들: 즉,
    상기 호스트 컴퓨팅 디바이스가, 로열티 지갑으로부터 로열티 파트너 사이트에 대한 파트너 등록 요청을 수신하는 동작, 상기 파트너 등록 요청은 블록체인과 연관된 로열티 포인트 네트워크에 접근하기 위한 것이고, 상기 로열티 포인트 네트워크는 상기 로열티 파트너 사이트가 각 트랜잭션에 대해 클라이언트 디바이스로부터 복수의 로열티 포인트들을 수락하도록 허용함;
    상기 호스트 컴퓨팅 디바이스가, 상기 파트너 등록 요청을 수신함에 응답하여 상기 로열티 포인트 네트워크에 접근하기 위한 요청을 검증하는 동작, 상기 검증하는 동작은 상기 로열티 파트너 사이트와 연관되는 파트너 공개 키를 사용하여 상기 파트너 등록 요청의 적어도 일부 상에서의 상기 암호화 동작을 수행함으로써 상기 파트너 등록 요청을 검증하는 동작을 포함함;
    상기 호스트 컴퓨팅 디바이스가, 상기 블록체인에 기록하기 위해 파트너 등록 제안을 컨센서스 참가자들에게 전파하는 동작, 상기 파트너 등록 제안은 상기 파트너 등록 요청을 검증하는 것에 응답하여 전파되고, 상기 로열티 파트너 사이트는 상기 블록체인에 기록될 상기 파트너 등록 제안에 응답하여, 상기 로열티 포인트 네트워크를 위한 상기 복수의 로열티 포인트들을 수락하도록 허여됨;
    상기 호스트 컴퓨팅 디바이스가, 로열티 포인트들의 금액을 상기 로열티 포인트 네트워크 상에서, 상기 클라이언트 디바이스와 연관된 제1 고객 계정으로부터 제2 고객 계정으로 이체시키기 위한 요청을 수신하는 동작;
    상기 호스트 컴퓨팅 디바이스가, 상기 제1 고객 계정과 연관되는 공개 키를 사용하여 상기 요청의 적어도 일부 상에서의 상기 암호화 동작을 수행함으로써 상기 요청을 검증하는 동작; 및
    상기 호스트 컴퓨팅 디바이스가, 블록체인에 기록하기 위해 제안 - 상기 제안은 상기 제1 고객 계정에 대한 제1 블록체인 주소, 상기 제2 고객 계정에 대한 제2 블록체인 주소, 및 상기 로열티 포인트들의 금액을 포함함 -을 컨센서스 참가자들에게 전파하는 동작을 포함하고,
    상기 컨센서스 참가자들에게 상기 제안을 전파하는 동작은 상기 로열티 포인트 네트워크에서, 상기 제1 고객 계정의 계정 잔액을 업데이트하는 상기 제안을 상기 블록체인에 기록하는 동작을 포함하는
    로열티 포인트 네트워크.
  9. 제8항에 있어서,
    상기 클라이언트 디바이스 상에서 실행되는 상기 로열티 지갑은 API 호출을 사용하여 상기 요청을 전송하는, 로열티 포인트 네트워크.
  10. 제8항에 있어서,
    상기 컨센서스 참가자들은 작업 증명, 지분 증명, 프랙티컬 비잔틴 장애 허용, 또는 위임 지분 증명 중 적어도 하나를 사용하여 상기 제안에 대한 컨센서스를 달성하는, 로열티 포인트 네트워크.
  11. 제8항에 있어서,
    상기 호스트 컴퓨팅 디바이스가 그리고 로열티 지갑으로부터, 상기 공개 키를 포함하는 상기 제1 고객 계정에 대한 고객 등록 요청을 수신하는 동작;
    상기 호스트 컴퓨팅 디바이스가, 상기 공개 키를 사용하여 상기 고객 등록 요청의 적어도 일부 상에서 상기 암호화 동작을 수행함으로써 상기 고객 등록 요청을 검증하는 동작; 및
    상기 호스트 컴퓨팅 디바이스가, 상기 블록체인에 기록하기 위해 상기 고객 등록 제안을 상기 컨센서스 참가자들에게 전파하는 동작을 더 포함하는, 로열티 포인트 네트워크.
  12. 제8항에 있어서,
    상기 로열티 지갑은 상기 공개 키에 대응하는 개인 키를 암호화하고 저장하는, 로열티 포인트 네트워크.
  13. 제8항에 있어서,
    상기 호스트 컴퓨팅 디바이스가, 상기 제2 고객 계정과 연관되는 로열티 지갑으로부터 결제 요청 - 상기 결제 요청은 가맹점 계정 및 결제 금액을 포함함 -을 수신하는 동작;
    상기 호스트 컴퓨팅 디바이스가, 상기 제2 고객 계정과 연관되는 제2 공개 키를 사용하여 상기 결제 요청의 적어도 일부 상에서의 상기 암호화 동작을 수행함으로써 상기 결제 요청을 검증하는 동작; 및
    상기 호스트 컴퓨팅 디바이스가, 상기 블록체인에 기록하기 위해 결제 제안 - 상기 결제 제안은 상기 가맹점 계정, 상기 결제 금액, 및 상기 제2 고객 계정을 포함함 -을 상기 컨센서스 참가자들에게 전파하는 동작을 더 포함하는, 로열티 포인트 네트워크.
  14. 제8항에 있어서,
    상기 호스트 컴퓨팅 디바이스가해, 상기 제2 고객 계정과 연관되는 로열티 지갑으로부터 교환 요청 - 상기 교환 요청은 환전 계정, 피아트 통화 유형, 환율, 및 로열티 포인트 금액을 포함함 -을 수신하는 동작;
    상기 호스트 컴퓨팅 디바이스가, 상기 제2 고객 계정과 연관되는 공개 키를 사용하여 상기 교환 요청의 적어도 일부 상에서의 상기 암호화 동작을 수행함으로써 상기 교환 요청을 검증하는 동작; 및
    상기 호스트 컴퓨팅 디바이스가, 상기 블록체인에 기재하기 위해 교환 제안 - 상기 교환 제안은 상기 환전 계정, 상기 피아트 통화 유형, 상기 환율, 및 상기 로열티 포인트 금액을 포함함 -을 상기 컨센서스 참가자들에게 전파하는 동작을 더 포함하는, 로열티 포인트 네트워크.
  15. 명령어들을 그 상에 저장하는 비-일시적, 유형의 컴퓨터 판독가능 저장 매체를 포함하는 제조 물품에 있어서, 상기 명령어들은, 호스트 컴퓨팅 디바이스에 의한 실행에 응답하여, 상기 호스트 컴퓨팅 디바이스가 동작들: 즉,
    블록체인 API를 제공하는 상기 호스트 컴퓨팅 디바이스가, 로열티 포인트 네트워크에 접근을 위한 클라이언트 디바이스 상에서 실행된 로열티 지갑으로부터 제1 고객 계정에 대한 고객 등록 요청을 수신하는 동작, 상기 고객 등록 요청은 공개 키를 포함하고, 상기 로열티 포인트 네트워크는 복수의 승인된 클라이언트 디바이스들에 대한 블록체인에 대한 접근을 제한하고, 상기 로열티 포인트 네트워크는 복수의 등록된 로열티 파트너 웹 사이트들이 각 트랜잭션에 대해 상기 복수의 승인된 클라이언트 디바이스들 중 하나로부터 복수의 로열티 포인트들을 수락하도록 허용하고, 상기 블록 체인은 상기 복수의 승인된 클라이언트 디바이스들에 대한 복수의 트랜잭션들을 저장하고 처리하도록 동작함;
    상기 호스트 컴퓨팅 디바이스가, 상기 로열티 지갑으로부터 상기 고객 등록 요청을 수신함에 응답하여, 로열티 포인트 네트워크로의 접근을 위한 상기 고객 등록 요청을 검증하는 동작, 상기 검증하는 동작은 상기 공개 키를 사용하여 상기 고객 등록 요청의 적어도 일부 상에서의 암호화 동작을 수행함으로써 상기 고객 등록 요청을 검증하는 동작을 포함함;
    상기 호스트 컴퓨팅 디바이스가, 블록체인에 기록하기 위해 고객 등록 제안을 컨센서스 참가자들에게 전파하는 동작, 상기 고객 등록 제안은 상기 고객 등록 요청을 검증하는 것에 응답하여 전파되고, 상기 클라이언트 디바이스는 상기 블록체인에 기록될 상기 고객 등록 제안에 응답하여 상기 로열티 포인트 네트워크에 접근할 권한이 있음;
    상기 호스트 컴퓨팅 디바이스가, 로열티 포인트들의 금액을 상기 로열티 포인트 네트워크 상에서, 상기 클라이언트 디바이스와 연관된 제1 고객 계정으로부터 제2 고객 계정으로 이체시키기 위한 요청을 수신하는 동작;
    상기 호스트 컴퓨팅 디바이스가, 상기 제1 고객 계정과 연관되는 상기 공개 키를 사용하여 상기 요청의 적어도 일부 상에서의 상기 암호화 동작을 수행함으로써 상기 요청을 검증하는 동작; 및
    상기 호스트 컴퓨팅 디바이스가, 블록체인에 기록하기 위해 제안 - 상기 제안은 상기 제1 고객 계정에 대한 제1 블록체인 주소, 상기 제2 고객 계정에 대한 제2 블록체인 주소, 및 상기 로열티 포인트들의 금액을 포함함 -을 컨센서스 참가자들에게 전파하는 동작을 포함하고,
    상기 컨센서스 참가자들에게 상기 제안을 전파하는 단계는 상기 로열티 포인트 네트워크에서, 상기 제1 고객 계정의 계정 잔액을 업데이트하는 상기 제안을 상기 블록체인에 기록하는 동작을 포함하는
    물품.
  16. 제15항에 있어서,
    상기 로열티 지갑은 API 호출을 사용하여 상기 요청을 전송하는, 물품.
  17. 제15항에 있어서,
    상기 컨센서스 참가자들은 작업 증명, 지분 증명, 프랙티컬 비잔틴 장애 허용, 또는 위임 지분 증명 중 적어도 하나를 사용하여 상기 제안에 대한 컨센서스를 달성하는, 물품.
  18. 제15항에 있어서,
    상기 동작들은:
    상기 호스트 컴퓨팅 디바이스가, 상기 제2 고객 계정과 연관되는 로열티 지갑으로부터 결제 요청 - 상기 결제 요청은 가맹점 계정 및 결제 금액을 포함함 -을 수신하는 동작;
    상기 호스트 컴퓨팅 디바이스가, 상기 제2 고객 계정과 연관되는 제2 공개 키를 사용하여 상기 결제 요청의 적어도 일부 상에서의 상기 암호화 동작을 수행함으로써 상기 결제 요청을 검증하는 동작; 및
    상기 호스트 컴퓨팅 디바이스가, 상기 블록체인에 기록하기 위해 결제 제안 - 상기 결제 제안은 상기 가맹점 계정, 상기 결제 금액, 및 상기 제2 고객 계정을 포함함 -을 상기 컨센서스 참가자들에게 전파하는 동작을 더 포함하는, 물품.
  19. 제15항에 있어서,
    상기 호스트 컴퓨팅 디바이스가, 로열티 파트너 사이트에 대한 파트너 등록 요청을 수신하는 동작;
    상기 호스트 컴퓨팅 디바이스가, 상기 로열와티 파트너 사이트 연관되는 공개 키를 사용하여 상기 파트너 등록 요청의 적어도 일부 상에서의 상기 암호화 동작을 수행함으로써 상기 파트너 등록 요청을 검증하는 동작; 및
    상기 호스트 컴퓨팅 디바이스가, 상기 블록체인에 기록하기 위해 파트너 등록 제안을 상기 컨센서스 참가자들에게 전파하는 동작을 더 포함하는, 물품.
  20. 제15항에 있어서,
    상기 로열티 지갑은 상기 공개 키에 대응하는 개인 키를 암호화 및 저장하도록 구성되는, 물품.
KR1020207009730A 2017-10-09 2018-08-23 로열티 포인트 분배를 위한 시스템 및 방법 KR102344481B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020217041652A KR102493513B1 (ko) 2017-10-09 2018-08-23 로열티 포인트 분배를 위한 시스템 및 방법

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/728,086 2017-10-09
US15/728,086 US11449887B2 (en) 2017-10-09 2017-10-09 Systems and methods for loyalty point distribution
PCT/US2018/047640 WO2019074582A1 (en) 2017-10-09 2018-08-23 SYSTEMS AND METHODS FOR DISTRIBUTING LOYALTY POINTS

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020217041652A Division KR102493513B1 (ko) 2017-10-09 2018-08-23 로열티 포인트 분배를 위한 시스템 및 방법

Publications (2)

Publication Number Publication Date
KR20200060723A KR20200060723A (ko) 2020-06-01
KR102344481B1 true KR102344481B1 (ko) 2021-12-29

Family

ID=65994011

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020217041652A KR102493513B1 (ko) 2017-10-09 2018-08-23 로열티 포인트 분배를 위한 시스템 및 방법
KR1020207009730A KR102344481B1 (ko) 2017-10-09 2018-08-23 로열티 포인트 분배를 위한 시스템 및 방법

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020217041652A KR102493513B1 (ko) 2017-10-09 2018-08-23 로열티 포인트 분배를 위한 시스템 및 방법

Country Status (7)

Country Link
US (2) US11449887B2 (ko)
EP (1) EP3695314A4 (ko)
JP (1) JP2020537229A (ko)
KR (2) KR102493513B1 (ko)
CN (1) CN111201515B (ko)
SG (1) SG11202002592RA (ko)
WO (1) WO2019074582A1 (ko)

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10068228B1 (en) * 2013-06-28 2018-09-04 Winklevoss Ip, Llc Systems and methods for storing digital math-based assets using a secure portal
US11720890B2 (en) * 2016-04-22 2023-08-08 Micro Focus Llc Authorization of use of cryptographic keys
US11587050B2 (en) * 2017-09-12 2023-02-21 Northwestern University Blockchain distribution network
US11397962B2 (en) * 2017-10-09 2022-07-26 American Express Travel Related Services Company, Inc. Loyalty point distributions using a decentralized loyalty ID
US11238551B2 (en) * 2017-11-28 2022-02-01 International Business Machines Corporation Point-based license sharing
US10642967B2 (en) * 2017-11-28 2020-05-05 American Express Travel Related Services Company, Inc. Single sign-on solution using blockchain
US11132660B2 (en) * 2017-12-12 2021-09-28 Mastercard International Incorporated Systems and methods for distributed peer to peer analytics
US11288740B2 (en) * 2017-12-29 2022-03-29 Intel Corporation Securing distributed electronic wallet shares
US11386420B2 (en) 2017-12-29 2022-07-12 Intel Corporation Contextual authentication of an electronic wallet
US20190228429A1 (en) * 2018-01-25 2019-07-25 Vizsafe, Inc. Safety index for the calculation of a rating based on user generated reports or actions and rewards system therefor
US11315138B1 (en) * 2018-03-12 2022-04-26 Worldpay, Llc Decentralized computer systems and methods for loyalty points payments using distributed ledgers
JP7195650B2 (ja) * 2018-03-26 2022-12-26 チャールズ チャン デジタル通貨による企業のロイヤルティ及びインセンティブプログラム報酬の統合のための方法及びシステム-ユニバーサル無料デジタル通貨(UCDC:Universal Complimentary Digital Currency)システム
US11531975B2 (en) * 2018-04-13 2022-12-20 International Business Machines Corporation Network node management on a blockchain
US20190333030A1 (en) * 2018-04-30 2019-10-31 Bank Of America Corporation Blockchain-based digital token utilization
US11038676B2 (en) * 2018-05-25 2021-06-15 Incertrust Technologies Corporation Cryptographic systems and methods using distributed ledgers
US11875418B2 (en) 2018-06-07 2024-01-16 American Express Travel Related Services Company, Inc. Automated remote payments between a vehicle and a refueling station
US11416784B2 (en) 2018-06-14 2022-08-16 American Express Travel Related Services Company, Inc. Automated remote transactions between a vehicle and a lodging system
US10977626B2 (en) * 2018-06-14 2021-04-13 Capital One Services, Llc Semi-private blockchain virtual currency exchange systems
US11374738B2 (en) * 2018-06-18 2022-06-28 Make Great Sales Limited Methods and systems for generating, recording and retrieving digital transaction records
GB201811263D0 (en) * 2018-07-10 2018-08-29 Netmaster Solutions Ltd A method and system for managing digital using a blockchain
US11763335B2 (en) * 2018-08-27 2023-09-19 Gemini Ip, Llc Real-time distribution of cryptocurrency rewards for a loyalty program
JP7206698B2 (ja) * 2018-08-28 2023-01-18 セイコーエプソン株式会社 提供装置、処理システム及び通信方法
CA3058039A1 (en) * 2018-10-09 2020-04-09 Royal Bank Of Canada System and method for software application extensions
US10902433B2 (en) 2019-01-14 2021-01-26 American Express Travel Related Services Company, Inc. Motion-enabled transaction system using air sign symbols
CN110046496B (zh) * 2019-04-25 2023-05-30 深圳市元征科技股份有限公司 一种软件开发方法、系统及区块链节点设备和存储介质
CN110097404A (zh) * 2019-05-08 2019-08-06 宜人恒业科技发展(北京)有限公司 一种基于区块链的积分系统
US11182819B2 (en) * 2019-06-25 2021-11-23 Alef Edge, Inc. System and method for a digital coin exchange
JP2023508814A (ja) * 2019-10-18 2023-03-06 デフィニティ スティフトゥング 分散ネットワークにおけるリソースの使用に対する課金
CN111047348A (zh) * 2019-11-08 2020-04-21 北京比特时刻图像科技有限公司 一种新型区块链共识算法及基于该算法的区块链网络系统
US11784799B2 (en) 2019-12-16 2023-10-10 The Toronto-Dominion Bank Secure distribution and management of cryptographic keys within a computing environment using distributed ledgers
US11456869B2 (en) * 2019-12-16 2022-09-27 The Toronto-Dominion Bank Secure management of transfers of digital assets between computing devices using permissioned distributed ledgers
US11336440B2 (en) * 2019-12-16 2022-05-17 The Toronto-Dominion Bank Secure management and regeneration of cryptographic keys within a computing environment using permissioned distributed ledgers
US11809403B2 (en) * 2019-12-16 2023-11-07 The Toronto-Dominion Bank Secure distribution of digital assets within a computing environment using permissioned distributed ledgers
JP6940212B1 (ja) * 2019-12-26 2021-09-22 シビラ株式会社 アプリケーション連携方法、コンピュータプログラム及びアプリケーション連携システム
CN112348580B (zh) * 2020-11-02 2023-09-01 中国联合网络通信集团有限公司 一种基于区块链的广告推送方法及系统
CN112702200B (zh) * 2020-12-21 2022-08-05 杭州趣链科技有限公司 联盟链节点管理系统、方法、装置、电子设备和存储介质
CN112799676B (zh) * 2021-02-01 2023-08-15 长沙市到家悠享网络科技有限公司 一种数据反馈方法及装置、设备、介质
US11978085B2 (en) 2021-07-09 2024-05-07 The Toronto-Dominion Bank System and method for providing personalized notifications in mobile applications
US11775964B2 (en) 2021-07-09 2023-10-03 The Toronto-Dominion Bank System and method for managing loyalty program accounts

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101591244B1 (ko) * 2014-11-06 2016-02-05 주식회사 코인플러그 멤버십 포인트 또는 사이버머니를 블록체인을 갖는 디지털 가상통화로 전환하여 주는 장치

Family Cites Families (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7216110B1 (en) * 1999-10-18 2007-05-08 Stamps.Com Cryptographic module for secure processing of value-bearing items
US7467096B2 (en) 2001-03-29 2008-12-16 American Express Travel Related Services Company, Inc. System and method for the real-time transfer of loyalty points between accounts
US20030014373A1 (en) 2001-07-13 2003-01-16 Damir Perge System and method for matching business partners
CA2830260C (en) 2012-10-17 2021-10-12 Royal Bank Of Canada Virtualization and secure processing of data
US10546315B2 (en) * 2013-07-13 2020-01-28 Bruce Mitchell Systems and methods to enable offer and rewards marketing, and customer relationship management (CRM) network platform
US20180096175A1 (en) 2016-10-01 2018-04-05 James L. Schmeling Blockchain Enabled Packaging
US9824408B2 (en) * 2014-03-31 2017-11-21 Monticello Enterprises LLC Browser payment request API
US10497037B2 (en) 2014-03-31 2019-12-03 Monticello Enterprises LLC System and method for managing cryptocurrency payments via the payment request API
KR20160050876A (ko) 2014-10-31 2016-05-11 코나아이 (주) 스마트 카드에 저장된 공개키와 개인키를 이용한 비트코인 거래방법
CN104392354B (zh) * 2014-11-05 2017-10-03 中国科学院合肥物质科学研究院 一种公钥地址与用户账号的关联和检索方法及其系统
US11354651B2 (en) 2015-01-19 2022-06-07 Royal Bank Of Canada System and method for location-based token transaction processing
KR101660627B1 (ko) 2015-02-03 2016-09-28 한양대학교 에리카산학협력단 암호화 화폐의 거래를 보호하는 방법 및 장치
KR101673073B1 (ko) 2015-02-25 2016-11-04 이진희 블록체인 구조를 사용하는 암호화화폐 거래방법
PL3073670T4 (pl) 2015-03-27 2021-08-23 Black Gold Coin, Inc. System i sposób osobistej identyfikacji i weryfikacji
US11200564B2 (en) 2015-03-31 2021-12-14 Nasdaq, Inc. Systems and methods of blockchain transaction recordation
US9785912B2 (en) 2015-04-23 2017-10-10 Kiosgo Llc Automated retail machine
KR20160132307A (ko) 2015-05-09 2016-11-17 김성일 암호화폐를 송금에 이용하는 방법 및 저장매체
US20160342977A1 (en) 2015-05-20 2016-11-24 Vennd.io Pty Ltd Device, method and system for virtual asset transactions
US20170011460A1 (en) * 2015-07-09 2017-01-12 Ouisa, LLC Systems and methods for trading, clearing and settling securities transactions using blockchain technology
US20170017936A1 (en) 2015-07-14 2017-01-19 Fmr Llc Point-to-Point Transaction Guidance Apparatuses, Methods and Systems
WO2017069874A1 (en) * 2015-10-21 2017-04-27 Manifold Technology, Inc. Event synchronization systems and methods
US20170140408A1 (en) * 2015-11-16 2017-05-18 Bank Of America Corporation Transparent self-managing rewards program using blockchain and smart contracts
AU2016363670A1 (en) * 2015-12-04 2018-07-12 Prezzee Pty Ltd System for managing secure transferrable credit
US10719498B2 (en) * 2015-12-10 2020-07-21 Microsoft Technology Licensing, Llc Enhanced management capabilities for collectable data structures
US10423993B2 (en) * 2015-12-28 2019-09-24 Raise Marketplace, Llc Authenticating an exchange item in an exchange item marketplace network
US9849364B2 (en) 2016-02-02 2017-12-26 Bao Tran Smart device
EP4254220A3 (en) * 2016-02-12 2023-11-29 Royal Bank Of Canada Methods and systems for digital reward processing
US20170236143A1 (en) * 2016-02-15 2017-08-17 Shannon Code System and process for electronic tokenization of product brand loyalty and incentives
CA3013182A1 (en) * 2016-02-23 2017-08-31 nChain Holdings Limited Universal tokenisation system for blockchain-based cryptocurrencies
US20170243239A1 (en) * 2016-02-24 2017-08-24 Dany El-Eid Incentivized navigation
US20210279762A1 (en) * 2016-03-18 2021-09-09 Resynct LLC Method and apparatus for converting data for reward systems
US10346406B2 (en) 2016-03-28 2019-07-09 International Business Machines Corporation Decentralized autonomous edge compute coordinated by smart contract on a blockchain
US20170286951A1 (en) 2016-04-04 2017-10-05 Moving Media GmbH Dynamic Delivery Authorization for Cryptographic Payments
US9833408B1 (en) 2016-07-28 2017-12-05 Allen Greenspoon Orally administrable formulation
US10445709B2 (en) 2016-09-28 2019-10-15 The Toronto-Dominion Bank Real time virtual draft system and method
WO2018112946A1 (zh) 2016-12-23 2018-06-28 深圳前海达闼云端智能科技有限公司 注册及授权方法、装置及系统
CN107070644B (zh) 2016-12-26 2020-02-28 北京科技大学 一种基于信任网络的去中心化公钥管理方法和管理系统
US11954697B2 (en) * 2017-02-27 2024-04-09 Ncr Corporation Blockchain consumer ledger
WO2018223127A1 (en) 2017-06-02 2018-12-06 Bluefin Payment Systems Llc Systems and methods for online payment processing using secure inline frames
US11397962B2 (en) 2017-10-09 2022-07-26 American Express Travel Related Services Company, Inc. Loyalty point distributions using a decentralized loyalty ID

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101591244B1 (ko) * 2014-11-06 2016-02-05 주식회사 코인플러그 멤버십 포인트 또는 사이버머니를 블록체인을 갖는 디지털 가상통화로 전환하여 주는 장치

Also Published As

Publication number Publication date
CN111201515B (zh) 2024-04-02
US11449887B2 (en) 2022-09-20
KR20200060723A (ko) 2020-06-01
US20220398620A1 (en) 2022-12-15
KR102493513B1 (ko) 2023-01-31
SG11202002592RA (en) 2020-04-29
EP3695314A1 (en) 2020-08-19
WO2019074582A1 (en) 2019-04-18
JP2020537229A (ja) 2020-12-17
CN111201515A (zh) 2020-05-26
KR20210157917A (ko) 2021-12-29
US20190108542A1 (en) 2019-04-11
EP3695314A4 (en) 2021-06-23

Similar Documents

Publication Publication Date Title
KR102344481B1 (ko) 로열티 포인트 분배를 위한 시스템 및 방법
US11941627B2 (en) Transaction authorization process using blockchain
US20220351232A1 (en) Loyalty point distributions using a decentralized loyalty id
US11699166B2 (en) Multi-merchant loyalty point partnership
US20230401555A1 (en) System and method for transaction account based micro-payments
US20190303920A1 (en) Transaction process using blockchain token smart contracts
US10783545B2 (en) Reward point redemption for cryptocurrency
US11861605B2 (en) Secured account provisioning and payments for NFC-enabled devices
US11657380B2 (en) Charge splitting across multiple payment systems
US20190303942A1 (en) Fraud management using a distributed database
US10812275B2 (en) Decoupling and updating pinned certificates on a mobile device
AU2017248999A1 (en) Systems and methods for reducing fraud risk for a primary transaction account
US20190147182A1 (en) Data Access System
US20230115996A1 (en) System and method for closing pre-authorization amounts on a virtual token account
US11233781B1 (en) Presenting a personalized value added offer during an advanced verification process
WO2019135851A1 (en) Secure real-time access to incentive database

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
A107 Divisional application of patent