(58)【調査した分野】(Int.Cl.,DB名)
前記支払口座識別子は、口座管理システムによって生成され、前記モバイル通信デバイスに送信され、前記口座管理システムは、前記モバイル通信デバイスに関連付けられたユーザのクレジットカード口座、デビット口座、ストアードバリュー口座、ギフトカード口座、および銀行口座のうちの少なくとも1つに対する情報を含む口座を維持する、請求項1に記載のコンピュータ実装方法。
前記支払口座識別子は、クレジットカード口座、デビット口座、ストアードバリュー口座、ギフトカード口座、および銀行口座番号のうちの1つを含む、請求項1に記載のコンピュータ実装方法。
前記モバイル通信デバイスによって、支払口座識別子検証のため前記支払口座識別子を口座管理システムに通信することであって、前記口座管理システムへの前記通信は、前記モバイル通信デバイスによって販売時点管理リーダーに送信された前記支払口座情報の前記要求に対する前記応答を含む、通信することをさらに含む、請求項1に記載のコンピュータ実装方法。
前記モバイル通信デバイスの前記非セキュアメモリプロセッサは、支払要求の処理中に、口座管理システムによって複製される可能性があるスキームを使用して支払口座番号を生成する、請求項1に記載のコンピュータ実装方法。
前記モバイル通信デバイスは、販売時点管理システムリーダーから受信された支払口座情報の前記要求を、前記非セキュアメモリプロセッサが理解できる要求を含むバイトに変換する、請求項1に記載のコンピュータ実装方法。
コンピュータによって実行されたとき、前記コンピュータにセキュアメモリにアクセスすることなく支払取引を処理させるコンピュータ可読プログラム命令を有するコンピュータプログラムであって、前記コンピュータ可読プログラム命令は、
モバイル通信デバイスによって商業システム計算機から、支払取引を処理するために支払口座情報の要求を受信するためのコンピュータ可読プログラム命令と、
前記モバイル通信デバイスによって、前記要求を受信することに応答して、前記支払口座情報の前記要求を非セキュアメモリプロセッサが理解できる要求に変換することによって、前記支払口座情報の前記要求を処理するためのコンピュータ可読プログラム命令であって、前記非セキュアメモリプロセッサは、複数の支払プロバイダのいずれかの金融口座情報を使用する前記支払取引の処理を許可する、処理するためのコンピュータ可読プログラム命令と、
前記モバイル通信デバイスの前記非セキュアメモリプロセッサによって、前記支払口座情報の前記要求に対する支払口座識別子を含む応答を生成するためのコンピュータ可読プログラム命令と、
前記モバイル通信デバイスによって、前記支払口座情報の前記要求に対する前記応答を前記商業システム計算機に送信するためのコンピュータ可読プログラム命令と
を含む、コンピュータプログラム。
前記支払口座識別子は、口座管理システムによって生成され、前記モバイル通信デバイスに送信され、前記口座管理システムは、前記モバイル通信デバイスに関連付けられたユーザのクレジットカード口座、デビット口座、ストアードバリュー口座、ギフトカード口座、および銀行口座番号のうちの1つに対する情報を含む口座を維持する、請求項12に記載のコンピュータプログラム。
前記モバイル通信デバイスの前記非セキュアメモリプロセッサは、前記モバイル通信デバイスに、支払要求の処理中に、口座管理システムによって複製される可能性があるスキームを使用して支払口座番号を生成させる、前記非セキュアメモリ記憶装置内に格納されたコンピュータ実行可能命令を実行するようにさらに構成される、請求項17に記載のモバイル通信デバイス。
前記支払口座識別子は、口座管理システムによって生成され、前記モバイル通信デバイスに送信され、前記口座管理システムは、前記モバイル通信デバイスに関連付けられたユーザのクレジットカード口座、デビット口座、ストアードバリュー口座、ギフトカード口座、および銀行口座のうちの少なくとも1つに対する情報を含む口座を維持する、請求項17に記載のモバイル通信デバイス。
前記支払口座識別子は、クレジットカード口座、デビット口座、ストアードバリュー口座、ギフトカード口座、および銀行口座番号のうちの1つを含む、請求項17に記載のモバイル通信デバイス。
前記モバイル通信デバイスの前記非セキュアメモリプロセッサは、前記モバイル通信デバイスに、支払口座識別子検証のため前記支払口座識別子を口座管理システムに通信することであって、前記口座管理システムへの前記通信は、前記モバイル通信デバイスによって前記商業システム計算機に送信された前記支払口座情報の前記要求に対する前記応答を含む、通信することを行わせる、前記非セキュアメモリ記憶装置内に格納されたコンピュータ実行可能命令を実行するようにさらに構成される、請求項17に記載のモバイル通信デバイス。
前記モバイル通信デバイスの前記非セキュアメモリプロセッサは、支払要求の処理中に、口座管理システムによって複製される可能性があるスキームを使用して支払口座番号を生成する、請求項17に記載のモバイル通信デバイス。
前記非セキュアメモリプロセッサは、前記モバイル通信デバイスがセキュアメモリプロセッサの制御をある支払プロバイダから異なる支払プロバイダに移すことなく前記支払取引を処理することを可能にすることによって、複数の支払プロバイダのいずれかの金融口座情報を使用する前記支払取引の処理を許可する、請求項17に記載のモバイル通信デバイス。
【発明を実施するための形態】
【0008】
概要
本明細書に記載された例示的な実施形態は、ユーザデバイスのセキュア要素にアクセスすることなく支払取引の処理を可能にする方法およびシステムを提供する。例示的な実施形態において、ユーザは、ユーザデバイスから端末リーダーに支払情報を送信することにより商業システムと無線支払取引を行っている。ユーザデバイスに常駐するセキュア要素は、製造の時点でTSMに密接に結合されることがあり、それによって、ユーザがセキュア要素に提供されていない支払口座に対する支払命令を提供することを防止する。例示的な実施形態において、ユーザデバイスは、セキュア要素にアクセスすることなく支払情報を送信する能力を有するアプリケーションホストプロセッサを備える。
【0009】
ユーザは、端末リーダーの無線周波数フィールドでユーザデバイスをタップする。端末リーダーおよびユーザデバイスは、通信チャネルを確立し、端末リーダーは、支払処理応答の要求を含む信号を送信する。この信号は、ユーザデバイスによって受信され、コントローラによってアプリケーションホストプロセッサが理解できる要求に変換される。コントローラは、この要求をアプリケーションホストプロセッサに送信し、アプリケーションホストプロセッサでこの要求は処理され、応答が生成される。アプリケーションホストプロセッサによって生成された応答は、商業システムによって支払応答として区別でき、セキュア要素によって生成された応答と区別できない。この応答は、アプリケーションホストプロセッサによってコントローラに送信され、コントローラで端末リーダーへの送信のための信号に変換される。この信号は、この信号が受信され、商業システムに送信される端末リーダーに送信される。商業システムに常駐するアプリケーションは、この信号を処理し、商業システムが理解できる応答に変換する。商業システムは、ユーザデバイスが支払取引を進めることができる肯定的な指示を含む応答を読む。
【0010】
商業システムは、支払情報の要求を生成し、この要求を端末リーダーに送信する。端末リーダーは、端末リーダーとユーザデバイスとの間に確立された通信チャネルを介して送信できる信号の形で要求を送信する。信号は、ユーザデバイスによって受信され、コントローラによってアプリケーションホストプロセッサが理解できる要求に変換される。コントローラは、要求をアプリケーションホストプロセッサに送信し、アプリケーションホストプロセッサでこの要求は処理され、応答が生成される。この応答は、取引のため用いるために支払口座番号を含んでもよい。支払口座番号は、ユーザに関連付けられた金融口座、例えば、クレジット口座番号、デビット口座番号、ストアードバリュー口座番号、ギフトカード口座番号、クーポン、特約口座番号、報酬口座番号、または銀行口座番号に関連付けられた番号を含んでもよい。応答は、口座管理システムまたはアプリケーションホストプロセッサによって生成された代行口座番号を、上記に加えて、あるいは上記に代えて含んでもよい。代行口座番号は、支払取引をユーザの実際の金融口座情報が取り出される可能性がある口座管理システムにルーティングさせる情報を含む。代行口座番号は、時間的、地理的および/または金額的制限があることがある。代行口座番号は、これらが使用される回数に制限があることもある。
【0011】
支払口座情報を含む応答は、アプリケーションホストプロセッサによってコントローラに送信され、このコントローラで、端末リーダーへの送信のための信号に変換される。この信号は、この信号が受信され、そして、商業システムに送信される端末リーダーに送信される。商業システムに常駐するアプリケーションは、信号を処理し、商業システムが理解できる応答に変換する。商業システムは、支払口座情報を読み、支払を処理する。
【0012】
発明の新規な機能性は、プログラムフローを例示する図と併せて読むと、以下の記載においてより詳細に説明されるであろう。
【0013】
システムアーキテクチャの例
以下、例示的な実施形態が詳述された図面を参照し、これら図面にわたり、同様の符号が類似する(必ずしも同一ではない)要素を指す。
【0014】
図1は、特定の例示的な実施形態に係る支払処理システムを図示するブロック図である。
図1に示すように、動作環境例100は、1つ以上のネットワーク130を介して互いに通信するように構成されている商業システム105と、ユーザデバイスシステム120と、口座管理システム140と、アクワイアラシステム150と、カードネットワークシステム160と、イシュアシステム170とを備える。一部の例示的な実施形態では、これらのシステム(システム105,120,140,150,160,170を含む)のうちの2つ以上が同じシステムに統合される。
【0015】
各ネットワーク130は、有線または無線通信手段を含み、これを用いてネットワークシステム(システム105,120,140,150,160,170を含む)が通信し、データを交換できる。例えば、各ネットワーク130は、ストレージエリアネットワーク(SAN)、パーソナルエリアネットワーク(PAN)、メトロポリタンエリアネットワーク(MAN),ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、無線ローカルエリアネットワーク(WLAN)、仮想プライベートネットワーク(VPN)、イントラネット、インターネット、移動電話ネットワーク、カードネットワーク、Bluetooth(登録商標)、近距離通信ネットワーク(NFC)、いずれかの形式の標準化された無線周波数、もしくは、これらのいずれかの組み合わせ、または、信号、データ、および/またはメッセージ(概して、データと称される)の通信を実現し易くするその他の適切なアーキテクチャもしくはシステムとして実装される可能性があり、または、これらの一部でもよい。本明細書の全体を通じて、「データ」および「情報」との用語は、本願において、コンピュータベースの環境に存在する可能性があるテキスト、画像、オーディオ、ビデオ、または、その他の形の情報に言及するために、互換的に使用されることが理解されるべきである。
【0016】
例示的な実施形態では、NFC通信プロトコルは、ISO/IEC 14443タイプAおよび/またはB技術(以下、ISO 14443)、MIFARE技術(以下、MIFARE)、および/またはISO/IEC 18092技術(以下、ISO 18092)を含むが、これらに限定されることがない。ISO 14443は、リーダーに極めて接近して動作するユーザデバイスのための通信プロトコルである。ISO 14443通信プロトコルは、限定するものではないが、クレジットカード支払、デビットカード支払、およびその他の形の金融カード支払などの安全なカード支払のため利用される。MIFAREは、ISO 14443に基づく周辺デバイス規格に準拠するユーザデバイスのための通信プロトコルである。MIFAREプロトコルは、ギフトカード、輸送カード、チケット、アクセスカード、特約カード、およびその他の形のストアードバリューカード取引を含むが、これらに限定されないストアード機能取引のため利用される。MIFRAEプロトコルは、限定された付加価値サービスのためにも使用されることがある。ISO 18092は、より高いビットレートで動作するユーザデバイスのための通信プロトコルであり、デバイス間のより充実した通信を可能にさせる。ISO 18092通信プロトコルは、ピアツーピア通信、(クーポン、特約カード、チェックイン、メンバーシップカード、ギフトカード、およびその他の形の付加価値サービスを含むが、これらに限定されない)付加価値サービス、およびその他の形のより充実した通信のため利用される。適当なNFC通信プロトコルが本明細書に記載された方法および機能性を実装するためにユーザデバイス120と端末リーダー115との間のNFC通信のため使用される可能性がある。
【0017】
例示的な実施形態では、(システム105,120,140,150,160,170を含む)各ネットワークシステムは、ネットワーク130全体にデータを送受信する能力を備える通信モジュールを有するデバイスを備える。例えば、(システム105,120,140,150,160,170を含む)各ネットワークシステムは、サーバ、パーソナルコンピュータ、モバイルデバイス(例えば、ノートブックコンピュータ、タブレットコンピュータ、ネットブックコンピュータ、個人情報端末(PDA)、ビデオゲーム機、GPSロケータデバイス、セルラ電話機、スマートフォン、またはその他のモバイルデバイス)、1以上のプロセッサ内蔵型および/または結合型テレビ、または、ネットワーク130を介する通信のためのウェブブラウザもしくは他のアプリケーションを含むか、あるいは、これに結合されたその他の適当な技術を備えることがある。
図1に図示された例示的な実施形態において、(システム105,120,140,150,160,170を含む)ネットワークシステムは、商業者、ユーザまたは消費者、口座管理システム運営者、アクワイアラシステム運営者、カードネットワークシステム運営者、およびイシュアラシステム運営者によってそれぞれ運営される。
【0018】
商業システム105は、ユーザによって開始された購入取引を処理する能力を有する少なくとも1台の販売時点管理(POS)端末110を備える。例示的な実施形態において、商業者は、オンライン店舗を運営し、ユーザは、ウェブサイト上のリンクまたは精算ボタンをクリックすることにより購入を行うために要望を指示する。一部の例示的な実施形態において、ユーザデバイス120は、POS端末110の機能を実行するために構成されている。本実施例では、ユーザは、POS端末110と相互作用することなくユーザデバイス120を介して取引をスキャンする、および/または、取引の代金を支払う。商業システム例105は、アプリケーション118を介してユーザデバイスシステム120およびマーチャントPOS端末110と通信する能力を有する少なくとも1台の端末リーダー115を備える。アプリケーション118は、一部の例示的な実施形態に従って、POS端末110または商業システム105の統合された部分(
図1に図示せず)、端末リーダー115の統合された部分(図示されている)、または独立型のハードウェアデバイス(図示せず)であることがある。
【0019】
例示的な実施形態において、端末リーダー115は、NFC通信方法を使用してユーザデバイス120と通信できる能力を有する。別の例示的な実施形態において、端末リーダー115は、Bluetooth(登録商標)通信方法を使用してユーザデバイス120と通信する能力を有する。さらに別の実施形態において、端末リーダー115は、Wi−Fi通信方法を使用してユーザデバイス120と通信できる能力を有する。一部の例示的な実施形態において、ユーザは、QRコード(登録商標)もしくはバーコードをスキャンするか、または、ユーザデバイス120上のURLリンクをクリックし、このことがユーザデバイス120をオンライン商業システム105に一時的に関連付ける。POS端末110は、ユーザおよび/またはユーザデバイス120にリンクするためにオンライン商業システム105に問い合わせる。例示的な実施形態において、端末リーダー115は、限定されることなく、QRコード(登録商標)、統一商品コード(UPC)、国際取引商品番号(GTIN)、在庫管理単位(SKU)、日本商品番号(JAN)、世界製品コード(WPC)、国際標準図書番号(ISBN)、欧州商品番号(EAN)などを含むいくつものバーコードフォーマットを読み取るように構成されることがある。その他の例示的な実施形態によれば、端末リーダー115は、CPU付きの電子場発生装置、レーザースキャナ、電荷結合デバイス(CCD)リーダー、カメラベースのリーダー、全方向バーコードスキャナ、カメラ、RFIDリーダー、または、商業システム105における製品識別子情報を読み取る能力を有するその他のデバイスでもよい。
【0020】
例示的な実施形態において、ユーザデバイス120は、パーソナルコンピュータ、モバイルデバイス(例えば、ノートブック、コンピュータ、タブレットコンピュータ、ネットブックコンピュータ、個人情報端末(PDA)、ビデオゲーム機、GPSロケータデバイス、セルラ電話機、スマートフォンまたはその他のモバイルデバイス)、1個以上のプロセッサ内蔵型および/または結合型テレビ、または、デバイス120と、端末リーダー115などの別のデバイスとの間で電子、磁気、または無線周波数フィールドを介して通信することができる適当な技術でもよい。例示的な実施形態において、ユーザデバイス120は、記憶容量/メモリと特有の機能を実行できる1個以上のアプリケーション(図示せず)となどの処理能力を有する。例示的な実施形態において、ユーザデバイス120は、オペレーティングシステム(図示せず)およびユーザインターフェース121を収容する。一部の例示的な実施形態において、ユーザデバイス120は、ユーザインターフェース121なしで、オーディオポートまたは補助データポートを介して通信するオペレーティングシステム(図示せず)を備える。
【0021】
ユーザデバイス120は、コントローラ125をさらに備える。例示的な実施形態において、コントローラデバイス125は、NFCコントローラである。一部の例示的な実施形態において、コントローラ125は、Bluetooth(登録商標)リンクコントローラである。Bluetooth(登録商標)リンクコントローラは、データを送受信する、認証および暗号化機能を実行する、そして、ユーザデバイス120が端末リーダー115からの伝送情報を待ち受ける方法またはユーザデバイス120をBluetooth(登録商標)指定の手続に応じて様々な省電力モードに構成する方法を命令する能力を有する。別の例示的な実施形態において、コントローラ125は、類似した機能を実行する能力を有するWi−FiコントローラまたはNFCコントローラである。
【0022】
ユーザデバイス120は、アンテナ127を介して端末リーダー115と通信する。例示的な実施形態では、ユーザデバイスアプリケーションが作動され、優先順位を付けられると、コントローラ125は、取引のためのユーザデバイス120の準備の状態を通知される。コントローラ125は、アンテナ127を介して無線信号を出力するか、または、デバイスリーダー115からの無線信号を待ち受ける。ユーザデバイス120と端末リーダー115との間にセキュア通信チャネルが確立されると、リーダー115は、ユーザデバイス120からの支払処理応答を要求する。
【0023】
コントローラの例125は、アンテナ127を介して送信された端末リーダー115から電波通信信号を受信する。コントローラ125は、信号を可読バイトに変換する。例示的な実施形態において、バイトは、支払処理応答の要求または支払カード情報の要求などのデジタル情報を含む。コントローラ125は、この要求をアプリケーションホストプロセッサ123に送信する。
【0024】
ユーザデバイスの例120は、セキュア要素またはセキュアメモリ(図示せず)を備えることがあり、これは、着脱式スマートチップもしくはセキュアデジタル(SD)カード内部に存在する可能性があり、または、これは、デバイス120上の固定チップ内部に埋め込まれる可能性がある。特定の例示的な実施形態において、加入者識別モジュール(SIM)カードは、セキュア要素、例えば、NFC SIMカードを収容する能力を有することがある。セキュア要素(図示せず)は、ユーザデバイス120に常駐し、デバイスユーザがアクセスできるソフトウェアアプリケーションがセキュア要素(図示せず)内部に記憶された情報を保護したままセキュア要素内部の特定の機能と安全に相互作用することを可能にさせる。例示的な実施形態において、セキュア要素(図示せず)は、スマートカードに代表的な構成要素、例えば、暗号プロセッサおよび乱数生成器を備える。例示的な実施形態において、セキュア要素(図示せず)は、Java(登録商標)カードオープンプラットフォーム(JCOP)オペレーティングシステムなどのスマートカードオペレーティングシステムによって制御されたチップ上の高度セキュアシステム内にスマートMXタイプNFCコントローラを備える。別の例示的な実施形態において、セキュア要素(図示せず)は、自由選択の実装として、非EMVタイプ非接触スマートカードを含むように構成されている。セキュア要素(図示せず)は、ユーザデバイス120内のアプリケーションと通信する。例示的な実施形態において、セキュア要素(図示せず)は、暗号化されたユーザ情報を記憶し、信頼できるアプリケーションのみが記憶された情報にアクセスすることを可能にさせる能力を有する。例示的な実施形態において、コントローラ125は、暗号解読およびセキュア要素内のインストレーションのためセキュア鍵で暗号化されたアプリケーションと相互作用する。
【0025】
ユーザデバイスの例120において、支払要求は、セキュア要素(図示せず)ではなく、アプリケーションホストプロセッサ123によって処理される。アプリケーションホストプロセッサ例123は、着脱式スマートチップもしくはセキュアデジタル(SD)カードの内部に存在する可能性があり、または、デバイス120上の固定チップ内部に埋め込まれる可能性がある。アプリケーションホストプロセッサは、このプロセッサ上で動き、本明細書に記載された機能性を実行するアプリケーション(図示せず)を含むことがある。例示的な実施形態において、ユーザデバイス120は、ユーザの実際の口座情報を送信することなく、代行または仮想口座識別子の形で、支払口座情報を商業システム105に通信する。ユーザの実際の口座情報は、ユーザデバイス120に常駐するセキュア要素(図示せず)の内部ではなく、口座管理システム140によって維持される。
【0026】
商業システム例105およびユーザデバイス120は、口座管理システム140と通信する。口座管理システム140は、ユーザの1つ以上の支払口座の記憶ができるようにする。例示的な実施形態において、ユーザは、1つ以上の支払口座、例えば、クレジットカード口座、デビット口座、銀行口座、ギフトカード口座、クーポン、ストアードバリュー口座、特約口座、報酬口座、および、購入を行う能力を有するその他の形の支払口座を口座管理システム140に登録する。例えば、ユーザは、口座管理システム140を使ってデジタルウォレット口座を作成することがある。支払口座は、口座管理システム140によって維持されたユーザのデジタルウォレット口座に関連付けられることがある。ユーザは、支払口座を追加、変更または削除するために、いつでもデジタルウォレット口座にアクセスすることがある。例示的な実施形態において、ユーザのデジタルウォレット情報は、ユーザのユーザデバイス120に送信され、口座管理システム140にアクセスすることなくユーザの支払口座の使用を有効にする。一部の例示的な実施形態において、口座管理システム140は、制限付き使用代行口座情報をユーザデバイス120に送信し、支払処理中に口座管理システム140にルーティングされた支払取引の間に支払口座の使用を有効にする。例えば、代行口座番号は、支払承諾要求を代行口座のためのイシュアシステム170としての役目を果たす口座管理システム140にルーティングすることがある。別の例示的な実施形態において、ユーザデバイス120は、支払取引が口座管理システム140にルーティングされることを可能にする制限付き使用代行口座番号を生成するアプリケーション(図示せず)を含むことがある。一部の例示的な実施形態において、アプリケーションホストプロセッサ123は、この機能を実行する。
【0027】
口座管理システムの例140は、口座管理システム140によってアクセスできるデータ記憶ユニット145を備える。データ記憶ユニット145は、ユーザの支払口座情報を記憶する能力を有する1個以上の有形のコンピュータ可読記憶装置を含む可能性がある。ユーザは、商業システム105からの購入を要求することがある。例示的な実施形態では、購入は、端末リーダー115とのユーザデバイス120のワイヤレス「タップ」によって開始される。商業システム105は、支払を処理するために、アクワイアラシステム150(例えば、Chase、PaymentTech、またはその他の第三者支払処理会社)、カードネットワークシステム160(例えば、ビザ、マスターカード、アメリカンエクスプレス、ディスカバー、またはその他のカード処理ネットワーク)、およびイシュアシステム170(例えば、シティバンク、キャピタルワン、バンクオブアメリカ、および支払を許可するためのその他の金融機関)と相互作用する。一部の例示的な実施形態において、ユーザデバイス120によって端末リーダー115に送信された支払カード情報は、支払取引を口座管理システム140によって維持されたユーザ口座にリンクする代行口座番号またはトークン口座番号である。支払取引は、ユーザの正しい支払カード情報の識別のため口座管理システム140にルーティングされる。
【0028】
動作環境の例100の構成要素は、
図2〜5に例示された方法例に関連して後述される。
図2〜5の方法例は、その他のシステムと共に、および、その他の環境においてさらに実行されることがある。
【0029】
システムプロセスの例
図2は、例示的な実施形態に係る、セキュア要素にアクセスすることなく支払を処理する方法を図示するブロックフロー図である。方法200は、
図1に例示された構成要素を参照して説明される。
【0030】
ブロック205において、ユーザは、端末リーダー115の近くでユーザデバイス120をタップする。例示的な実施形態において、端末リーダー115は、ユーザデバイス120の存在をポーリングする無線周波数(RF)またはその他の場を生成し、ユーザは、端末リーダー115の場の内部にデバイス120を置くことによりユーザデバイス120を「タップ」する。一部の例示的な実施形態において、商業者は、端末リーダー115上でアプリケーション118を使用してユーザデバイス120の存在をポーリングするためにRFフィールドまたはその他のフィールドを活性化させる。特定の例示的な実施形態において、本願中で
図2〜5に記載されたシステムおよび方法は、ユーザデバイス120がタップされている間に実行される。
【0031】
ブロック210において、ユーザデバイス120および端末リーダー115は、通信チャネルを確立する。例示的な実施形態において、通信チャネルは、NFC通信チャネルである。一部の例示的な実施形態において、通信チャネルは、Bluetooth通信チャネルである。さらに別の例示的な実施形態において、通信チャネルは、Wi−Fi通信チャネルである。その結果、支払取引は、ユーザデバイス120と端末リーダー115との間の無線または非接触通信を介して実施される可能性がある。
【0032】
例示的な実施形態において、端末リーダー115は、通信チャネルを確立するためにユーザデバイス120からのプロトコルおよび特性を要求する。例えば、端末リーダー115は、通信プロトコル(例えば、ISO/IEC 14443、MIFARE、および/またはISO/IEC 18092)の識別情報、利用可能なアプリケーションのリスト、およびユーザデバイス120からのセキュリティプロトコルを要求することがある。
【0033】
ブロック215において、端末リーダー115は、支払処理応答を要求する信号をユーザデバイス120に送信する。例示的な実施形態において、支払プロセス応答は、金融支払取引を進めるための要求である。例示的な実施形態において、支払プロセス応答は、ユーザデバイス120が金融取引を実行する能力を有することを端末リーダー115に指示する。セキュア要素を必要とする典型的な無線支払取引において、ユーザデバイス120は、セキュア要素によって作成されたメッセージを使って端末リーダー115の要求に応答する。このメッセージは、支払プロセス応答を構成するために端末リーダー115が理解できる。例示的な実施形態において、支払プロセス応答は、セキュア要素ではなく、ユーザデバイス120内に常駐するアプリケーションホストプロセッサ123によって作成される。支払プロセス応答は、セキュア要素によって作成された応答として、同様に端末リーダー115が理解できる。
【0034】
ブロック220において、ユーザデバイス120は、端末リーダー115によって送信された信号を受信する。例示的な実施形態において、信号は、アンテナ127によって受信され、コントローラ125に送信される。例示的な実施形態において、タップは、NFCタップであり、コントローラ125は、NFCコントローラである。
【0035】
ブロック225において、コントローラ125は、信号を支払処理応答の可読要求に変換する。例示的な実施形態において、信号は、支払処理応答の可読要求を含むバイトに変換される。
【0036】
ブロック230において、コントローラ125は、支払処理応答の要求をアプリケーションホストプロセッサ123に送信する。例示的な実施形態において、アプリケーションホストプロセッサ123は、支払取引中にセキュア要素と同様の方法で機能する。
【0037】
ブロック235において、支払処理応答の要求が処理される。支払処理応答の要求を処理する方法は、
図3に記載された方法を参照してより詳細に後述される。
【0038】
図3は、
図2のブロック235において参照されたように、例示的な実施形態に係る、支払処理応答を処理する方法を図示するブロックフロー図である。この方法235は、
図1に例示された構成要素を参照して説明される。
【0039】
ブロック310において、アプリケーションホストプロセッサ123は、支払処理応答の要求を受信する。例示的な実施形態において、要求は、アプリケーションホストプロセッサ123によって受信される前に一連の接続を介して送信される。一部の例示的な実施形態において、要求は、コントローラ125からアプリケーションホストプロセッサ123へ直接的に送信される。
【0040】
ブロック320において、アプリケーションホストプロセッサ123は、支払処理応答を生成する。例示的な実施形態において、支払処理応答は、端末リーダー115によって理解でき、ユーザデバイス120が支払取引を履行する能力を有することを示す言語を含む。例示的な実施形態において、支払処理応答は、従来とおりのセキュア要素またはセキュアメモリによって生成された支払処理応答と同じ言語および/または情報を含む。例示的な実施形態において、支払処理応答は、ユーザが区別できるデータ、個人識別子、口座識別子、支払ネットワーク構成データ、商業者固有データ、および/またはセキュリティデータを含み、これらはいずれもユーザの口座で実行される一連の取引を有効にするために使用されることがある。
【0041】
ブロック330において、アプリケーションホストプロセッサ123は、支払処理応答をコントローラ125に送信する。例示的な実施形態において、支払処理応答は、コントローラ125によって受信される前に一連の接続を介して送信される。一部の例示的な実施形態において、支払処理応答は、コントローラ125へ直接的に送信される。
【0042】
ブロック340において、コントローラ125は、支払処理応答を受信する。例示的な実施形態において、支払処理応答は、コントローラ125によって送信可能な信号に変換されることになるバイトを含む。
【0043】
ブロック350において、コントローラ125は、支払処理応答を端末リーダー115に送信する。例示的な実施形態において、支払処理応答は、アンテナ127によって端末リーダー115に送信された信号である。
【0044】
ブロック360において、端末リーダー115は、支払処理応答を受信する。例示的な実施形態において、端末リーダー115は、ユーザデバイスによって送信された信号を受信する。
【0045】
ブロック370において、端末リーダーは、支払処理応答を商業システム105に送信する。例示的な実施形態において、支払処理応答は、商業システム105内に常駐するPOS端末110に送信される。
【0046】
ブロック380において、商業システム105は、支払処理応答を受信する。例示的な実施形態において、商業システムに常駐するアプリケーション118は、信号を商業システム105が理解できる言語に変換する。例示的な実施形態において、商業システム105は、ユーザデバイス120が支払取引を行う能力を有する旨の肯定的な応答を構成するために支払処理応答を理解する。
【0047】
方法235は、その後、
図2のブロック240に進む。
【0048】
図2に戻ると、ブロック240において、支払口座情報の要求が処理される。支払口座情報を処理する方法は、
図4に記載された方法を参照してより詳細に後述される。
【0049】
図4は、
図2のブロック240において参照されたように、本例示的な実施形態に係る、支払情報の要求を処理する方法を図示するブロックフロー図である。方法240は、
図1に例示された構成要素を参照して説明される。
【0050】
ブロック410において、商業システム105は、支払口座情報の要求を生成し、端末リーダー115に送信する。例示的な実施形態において、支払処理応答の要求は、支払口座情報の要求を含み、ブロック410〜490、およびブロック240〜265で説明された方法は必要とされない。
【0051】
ブロック420において、端末リーダー115は、商業システム105によって送信された支払口座情報の要求を受信する。例示的な実施形態において、商業システム105に常駐するアプリケーション118は、支払処理応答を読み取り、呼応して支払口座情報の要求を生成する。例示的な実施形態において、要求は、通信チャネルを介してユーザデバイス120に送信されることができる信号に変換され、アプリケーションホストプロセッサ123が理解できるバイトに変換される。
【0052】
ブロック430において、端末リーダー115は、支払口座情報の要求を含む信号をユーザデバイス120に送信する。例示的な実施形態において、支払口座情報の要求は、口座番号、期日、およびセキュリティコードなどの支払取引を履行するための情報の要求を含む。
【0053】
ブロック440において、ユーザデバイス120は、端末リーダー115によって送信された信号を受信する。例示的な実施形態において、信号は、アンテナ127によって受信され、コントローラ125に送信される。
【0054】
ブロック450において、コントローラ125は、信号を支払口座情報の可読要求に変換する。例示的な実施形態において、信号は、支払口座情報の可読要求を含むバイトに変換される。
【0055】
ブロック460において、コントローラ125は、支払口座情報の要求をアプリケーションホストプロセッサ123に送信する。例示的な実施形態において、アプリケーションホストプロセッサ123は、支払取引中にセキュア要素と同様の方法で機能する。
【0056】
ブロック470において、アプリケーションホストプロセッサ123は、支払口座情報の要求を受信する。例示的な実施形態において、要求は、アプリケーションホストプロセッサ123によって受信される前に一連の接続を介して送信される。一部の例示的な実施形態において、要求は、コントローラ125からアプリケーションホストプロセッサ123へ直接的に送信される。
【0057】
ブロック480において、アプリケーションホストプロセッサ123は、支払取引のため使用される支払口座情報を生成する。例示的な実施形態において、ユーザは、1個以上の支払口座、例えば、クレジットカード口座、デビット口座、銀行口座、ギフトカード口座、クーポン、ストアードバリュー口座、特約口座、報酬口座、および購入を行う能力を有するその他の形の支払口座を口座管理システム140に登録する。例えば、ユーザは、口座管理システム140を使って、支払口座をユーザおよび/またはユーザのユーザデバイス120に関連付けるデジタルウォレット口座を作成することがある。デジタルウォレット口座情報は、口座管理システム140に記憶される可能性があり、ユーザのユーザデバイス120に局所的に記憶されることもある。
【0058】
例示的な実施形態において、ユーザのデジタルウォレット情報がユーザのユーザデバイス120に送信され、アプリケーションホストプロセッサ123は、ユーザのデジタルウォレット口座に保存されたユーザの支払口座にアクセスすることにより支払口座情報を生成する。本実施形態において、アプリケーションホストプロセッサ123は、支払取引で使用するために特有の支払口座を選択する可能性がある。
【0059】
一部の例示的な実施形態において、口座管理システム140は、1個以上の制限付き使用代行口座番号をユーザデバイス120に送信する。アプリケーションホストプロセッサ123は、送信された制限付き使用代行口座番号にアクセスし、取引のため使用するために特有の代行口座番号を選択することにより支払口座情報を生成する。例示的な実施形態において、口座管理システム140は、制限付き使用代行口座番号を定期的に生成し、現在の番号を使ってユーザのユーザデバイス120を更新することがある。一部の例示的な実施形態において、ユーザのユーザデバイス120は、制限付き使用代行口座番号の要求を口座管理システム140に通信する可能性があり、口座管理システム140は、呼応して、制限付き使用代行口座番号を支払取引で使用するためユーザのユーザデバイス120に通信する可能性がある。さらに別の例示的な実施形態において、アプリケーションホストプロセッサ123は、代行口座番号を局所的に生成する。アプリケーションホストプロセッサ123は、口座管理システム140が商業システム105から支払要求を受信したとき、生成された制限付き使用代行口座番号を口座管理システム140による検証のため口座管理システム140に通信する可能性がある。一部の例示的な実施形態において、アプリケーションホストプロセッサは、口座管理システム140が商業システム105から支払要求を受信したとき、口座管理システム140が生成された制限付き使用代行口座番号を検証することを可能にさせるために、口座管理システム140によって複製される可能性があるスキームを使用して制限付き使用代行口座番号を生成する可能性がある。
【0060】
代行口座番号は、時間的または地理的制限を有することがある。例えば、代行口座番号は、制限付き期間に限り有効であることがあり、または、具体的な地理的場所に限り有効であることがある。制限付き使用代行口座番号は、時間基準、時間間隔、ユーザデバイス120の地理的位置、および/またはユーザデバイス120の地理的位置に基づく地理的領域を使ってスタンプが押され、これらの中に符号化され、または、他の方法で、これらを格納する可能性がある。これらの特徴機能は、制限付き使用代行口座番号が指定された期間後に、または、指定された地理的場所の外側で使用されたときに失効することを可能にすることができる。代行口座番号は、これらが使用される回数に制限を有することもある。例えば、各代行口座番号は、1回の使用に限り有効であることがある。
【0061】
ブロック490において、アプリケーションホストプロセッサ123は、支払口座情報をコントローラ125に送信する。例示的な実施形態において、支払口座情報は、コントローラ125によって受信される前に一連の接続を介して送信される。一部の例示的な実施形態において、支払処理応答は、コントローラ125へ直接的に送信される。
【0062】
方法240は、その後、
図2のブロック245へ進む。
【0063】
図2に戻ると、ブロック250において、コントローラ125は、支払口座情報を受信する。例示的な実施形態において、支払口座情報は、コントローラ125によって送信可能な信号に変換されることになるバイトを含む。
【0064】
ブロック250において、コントローラ125は、支払口座情報を端末リーダー115に送信する。例示的な実施形態において、支払口座情報は、アンテナ127によって端末リーダー115に送信される信号である。
【0065】
ブロック255において、端末リーダー115は、支払口座情報を受信する。例示的な実施形態において、端末リーダー115は、ユーザデバイス120によって送信された信号を受信する。
【0066】
ブロック260において、端末リーダーは、支払処理応答を商業システム105に送信する。例示的な実施形態において、支払処理応答は、商業システム105内に常駐するPOS端末110に送信される。
【0067】
ブロック265において、商業システム105は、支払口座情報を受信する。例示的な実施形態において、商業システム105に常駐するアプリケーション118は、信号を商業システム105が理解できる言語に変換する。例示的な実施形態において、ユーザは、個人識別番号(PIN)を商業システム105に入力するように促されることがある。
【0068】
ブロック270において、支払が処理される。支払を処理する方法は、
図5に記載された方法を参照してより詳細に後述される。
【0069】
図5は、
図2のブロック270において参照されたように、例示的な実施形態に係る、支払を処理する方法を図示するブロックフロー図である。方法270は、
図1に例示された構成要素を参照して説明される。
【0070】
ブロック505において、商業システム105は、ユーザデバイス120によって提供された支払口座情報を使用して支払を要求するために支払要求メッセージを生成し、支払要求をアクワイアラシステム150に提示する。例示的な実施形態において、商業者のPOS端末110は、ネットワーク130を介してこの要求をアクワイアラシステム150に提示する。
【0071】
ブロック510において、アクワイアラシステム150は、支払要求を受信し、これをカードネットワークシステム160に提示する。
【0072】
ブロック515において、カードネットワークシステム160は、取引の代金を支払うために使用された支払口座情報が標準的な口座番号であるか否かを決定する。例示的な実施形態において、カードネットワークシステム160は、支払口座情報中の一連の番号またはルーティング情報を使用してこの決定を自動的に行う。一部の例示的な実施形態において、カードネットワークシステム160は、口座管理システム140によってカードネットワークシステム160に提供された、保存された口座識別情報のリストをレビューする。
【0073】
口座番号が標準的な口座番号である場合、支払は、ブロック520において、従来の支払処理方法に従って処理される。例示的な実施形態において、口座番号は、口座管理システム140によって処理することなく、イシュアシステムにルーティングさせることができる場合(例えば、ユーザデバイス120がユーザの実際のクレジットカード口座番号、デビットカード口座番号、ストアードバリュー口座番号、ギフトカード口座番号、または銀行口座番号を商業システム105に送信した場合)、標準的な支払口座である。
【0074】
ブロック515に戻ると、口座番号が標準的な口座番号ではない場合(例えば、代行口座情報が取引のため使用された場合)、イシュアシステム170は、口座管理システム140である。カードネットワークシステム160は、その後、ブロック525において、支払要求を口座管理システム140に転送する。
【0075】
一部の例示的な実施形態において、支払口座情報は、イシュアシステム170または口座管理システム140を識別する口座番号もしくはその他の印のブロックなどの保存された口座識別情報のリストに対応する識別子を含む可能性がある。この識別子に基づいて、支払は、識別子が従来とおりのイシュアシステム170に対応する場合、ブロック520において、従来の支払処理方法に従って処理され、または、支払は、識別子が口座管理システム140に対応する場合、ブロック525において、口座管理システム140に転送される。
【0076】
一部の例示的な実施形態において、ブロック515および525に関連して説明された方法は、カードネットワークシステム160の代わりに、アクワイアラシステム150またはイシュアシステム170によって実行されることがある。
【0077】
ブロック530において、口座管理システム140は、カードネットワークシステム160から支払要求を受信する。
【0078】
ブロック535において、口座管理システム140は、代行口座情報に関連付けられたユーザを識別する。例示的な実施形態において、口座管理システム140は、ユーザ毎に生成された代行口座情報のリストを格納し、この情報をユーザのデジタルウォレット口座にマッピングする可能性がある。一部の例示的な実施形態、ハッシュ関数などの一方向アルゴリズムは、ユーザのデジタルウォレット口座を識別するか、または、代行口座情報に関連付けるために使用される可能性がある。さらに別の例示的な実施形態において、ハードウェアセキュリティモジュール(HSM)は、ユーザ毎に生成された代行口座情報のリストなどの保護されたデータを記憶するために使用される可能性がある。HSMは、ユーザ毎に生成された代行口座情報のリストをユーザのデジタルウォレット口座にマッピングするために、セキュアネットワークを介して口座管理システム140によって連絡が取られる可能性がある。
【0079】
例示的な実施形態において、口座管理システム140は、代行口座情報の制限規則が侵害されなかったか否かを検証する。例えば、口座管理システム140は、代行番号が時間的/地理的制限または使用回数についての制限を侵害していないことを確認する。
【0080】
ブロック540において、口座管理システム140は、ユーザの保存された支払口座情報を識別する。例示的な実施形態において、ユーザのデジタルウォレット口座は、ユーザによって定義された規則(またはユーザが初期設定規則を修正していない場合、初期設定規則)を格納している。ユーザが支払規則を定義した場合、口座管理システム140は、支払口座を取引に適用する順序を決定するためにユーザ定義規則を最初に適用する。例示的な実施形態において、口座管理システム140は、ユーザ定義規則を最初に適用する。
【0081】
ブロック545において、口座管理システム140は、新しい支払要求を生成し、カードネットワークシステム160を介して、選択された支払口座のイシュアシステム170に送信する。一部の例示的な実施形態において、口座管理システム140は、支払口座のイシュアシステム170である。本実施形態において、口座管理システム140は、取引のため十分な資金が利用可能であるか否かを決定し、相応して取引を承認/否認するものである。
【0082】
ブロック550において、イシュア170は、口座管理システム140から新しい支払要求を受信する。
【0083】
ブロック555において、イシュア170は、取引を承認または拒否する。取引が拒否された場合、ブロック557において、口座管理システム140は、拒否された取引が通知される。口座管理システム140は、商業システム105に拒否された取引を通知する。
【0084】
取引が承認された場合、イシュアシステム170は、ブロック560において、カードネットワークシステム160を介して許可メッセージを口座管理システム140に送信する。口座管理システム140が支払口座のイシュアシステム170である場合(ブロック515を参照のこと)、口座管理システム140は、取引の許可に気付く。
【0085】
ブロック565において、口座管理システム140は、許可メッセージを受信し、元の支払要求の承認をカードネットワークシステム160に送信する。
【0086】
ブロック570において、許可メッセージは、アクワイアラシステム150を介して商業システム105に送信される。
【0087】
例示的な実施形態において、端末リーダー115とユーザデバイス120との間の通信チャネルは、その後に停止される。例示的な実施形態において、元の通信チャネルは、端末リーダー115とユーザデバイス120との間の通信チャネルを停止するための要求が通信されたときに、または、その後の適当な時点で停止される可能性がある。
【0088】
その他の例示的な実施形態
図6は、ある特定の例示的な実施形態に係る計算機2000およびモジュール2050を図示する。計算機2000は、本明細書において提示された様々なコンピュータ、サーバ、モバイルデバイス、組み込みシステム、または計算システムのいずれかに対応することがある。モジュール2050は、本明細書に提示された様々な方法および処理機能を実行する際に計算機2000を実現し易くするために1個以上のハードウェアまたはソフトウェア要素を備えることがある。計算機2000は、プロセッサ2010、システムバス2020、システムメモリ2030、記憶媒体2040、入出力インターフェース2060、およびネットワーク2080と通信するネットワークインターフェース2070などの様々な内蔵もしくは外付け部品を備えてもよい。
【0089】
計算機2000は、従来とおりのコンピュータシステム、組み込みコントローラ、ラップトップ、サーバ、モバイルデバイス、スマートフォン、セットトップボックス、キオスク、車両情報システム、テレビに関連付けられたもう1個のプロセッサ、カスタマイズされた機械、その他のハードウェアプラットフォーム、またはこれらの任意の組み合わせもしくは多重化として実装されることがある。計算機2000は、データネットワークまたはバスシステムを介して相互接続された複数の計算機を使用して機能するように構成された分散型システムでもよい。
【0090】
プロセッサ2010は、本明細書に記載された動作および機能性を行うためにコードまたは命令を実行し、要求フローおよびアドレスマッピングを管理し、計算を行い、コマンドを生成するように構成されることがある。プロセッサ2010は、計算機2000内の部品の動作を監視および制御するように構成されることがある。プロセッサ2010は、汎用プロセッサ、プロセッサコア、マルチプロセッサ、再構成可能なプロセッサ、マイクロコントローラ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、グラフィックス処理ユニット(GPU)、フィールドプログラマブルゲートアレイ(FPGA)、プログラマブル論理デバイス(PLD)、コントローラ、状態マシン、ゲート制御論理、ディスクリートハードウェア部品、その他の処理ユニット、またはこれらの任意の組み合わせもしくは多重化でもよい。プロセッサ2010は、単一の処理ユニット、複数の処理ユニット、単一の処理コア、複数の処理コア、専用処理コア、コプロセッサ、またはこれらの任意の組み合わせでもよい。特定の実施形態によれば、計算機2000の他の部品と共にプロセッサ2010は、1個以上の他の計算機内部で実行する仮想化計算機でもよい。
【0091】
システムメモリ2030は、リードオンリーメモリ(ROM)、プログラマブルリードオンリーメモリ(PROM)、消去可能プログラマブルリードオンリーメモリ(EPROM)、フラッシュメモリ、または電力印加の有無を問わずにプログラム命令もしくはデータを記憶するその他のデバイスなどの不揮発性メモリを備えてもよい。システムメモリ2030は、ランダムアクセスメモリ(RAM)、スタティックランダムアクセスメモリ(SRAM)、ダイナミックランダムアクセスメモリ(DRAM)、および同期ダイナミックランダムアクセスメモリ(SDRAM)などの揮発性メモリをさらに備えてもよい。その他のタイプのRAMもシステムメモリ2030を実装するために使用されることがある。システムメモリ2030は、単一のメモリモジュールまたは複数のメモリモジュールを使用して実装されることがある。システムメモリ2030は、計算機2000の一部であるとして図示されているが、当業者は、システムメモリ2030が対象となる技術の範囲から逸脱することなく計算機2000から分離していてもよいことを認めるであろう。システムメモリ2030は、記憶媒体2040などの不揮発性記憶装置を含む、または、不揮発性記憶装置と併せて動作することがある、とさらに認められるべきである。
【0092】
記憶媒体2040は、ハードディスク、フレキシブルディスク、コンパクトディスクリードオンリーメモリ(CD−ROM)、デジタル多用途ディスク(DVD)、ブルーレイディスク、磁気テープ、フラッシュメモリ、その他の不揮発性メモリデバイス、ソリッドステートドライブ(SSD)、任意の磁気記憶装置、任意の光学記憶装置、任意の電気記憶装置、任意の半導体記憶装置、任意の物理ベース記憶装置、任意のその他のデータ記憶装置、またはこれらの任意の組み合わせもしくは多重化を備えてもよい。記憶媒体2040は、1個以上のオペレーティングシステム、アプリケーションプログラムおよびモジュール2050などのプログラムモジュール、データ、または任意のその他の情報を記憶することがある。記憶媒体2040は、計算機2000の一部でもよく、またはこの計算機に接続されてもよい。記憶媒体2040は、サーバ、データベースサーバ、クラウドストレージ、ネットワークアタッチドストレージなどのような計算機2000と通信している1個以上のその他の計算機の一部でもよい。
【0093】
モジュール2050は、本明細書に提示された様々な方法および処理機能を実行する計算機2000を実現し易くするように構成された1個以上のハードウェアまたはソフトウェア要素を備えることがある。モジュール2050は、システムメモリ2030、記憶媒体2040、または両方と関連してソフトウェアまたはファームウェアとして記憶された命令の1つ以上の系列を備えてもよい。記憶媒体2040は、その結果、プロセッサ2010による実行のための命令またはコードが記憶された機械またはコンピュータ可読媒体の実施例を表現することがある。機械またはコンピュータ可読媒体は、概して、命令をプロセッサ2010に提供するため使用される任意の媒体または媒体群を指すことがある。モジュール2050に関連付けられたこのような機械またはコンピュータ可読媒体は、コンピュータソフトウェア製品を備えることがある。モジュール2050を備えるコンピュータソフトウェア製品は、ネットワーク2080、任意の信号担持媒体、またはその他の通信もしくは配信技術を介してモジュール2050を計算機2000に配信する1個以上のプロセスまたは方法に関連付けられることもあることが認められるべきである。モジュール2050は、ハードウェア回路、または、FPGAもしくは他のPLD用のマイクロコードもしくは構成情報などのハードウェア回路を構成する情報をさらに含むことがある。
【0094】
入出力(I/O)インターフェース2060は、1台以上の外付けデバイスを結合し、1台以上の外付けデバイスからデータを受信し、1台以上の外付けデバイスにデータを送信するように構成されることがある。このような外付けデバイスは、様々な内蔵デバイスと共に、周辺デバイスとしても知られていることがある。I/Oインターフェース2060は、様々な周辺デバイスを計算機2000またはプロセッサ2010に動作的に結合するため電気的接続および物理的接続を両方共に備えてもよい。I/Oインターフェース2060は、周辺デバイスと、計算機2000、またはプロセッサ2010との間でデータ、アドレス、および制御信号を通信するように構成されることがある。I/Oインターフェース2060は、スモールコンピュータシステムインターフェース(SCSI)、シリアルアタッチドSCSI(SAS)、ファイバチャネル、ペリフェラルコンポーネントインターコネクト(PCI)、PCIエクスプレス(PCIe)、シリアルバス、パラレルバス、アドバンスドテクノロジーアタッチド(ATA)、シリアルATA(SATA)、ユニバーサルシリアルバス(USB)、サンダーボルト、ファイヤーワイヤー、様々なビデオバスなどのような標準インターフェースを実装するように構成されることがある。I/Oインターフェース2060は、1つのインターフェースまたはバス技術のみを実装するように構成されることがある。代替的に、I/Oインターフェース2060は、複数のインターフェースまたはバス技術を実装するように構成されることがある。I/Oインターフェース2060は、システムバス2020の一部として、全部として、または、システムバス2020と併せて動作するように構成されることがある。I/Oインターフェース2060は、1台以上の外付けデバイス、内蔵デバイス、計算機2000、またはプロセッサ2010の間での伝送情報を一時的に蓄える1個以上のバッファを備えてもよい。
【0095】
I/Oインターフェース2060は、計算機2000を、マウス、タッチスクリーン、スキャナ、バイオメトリックリーダー、電子デジタイザ、センサ、レシーバ、タッチパッド、トラックボール、カメラ、マイクロホン、キーボード、その他のポインティングデバイス、またはこれらの組み合わせを含む様々な入力デバイスに結合することがある。I/Oインターフェース2060は、計算機2000を、ビデオディスプレイ、スピーカー、プリンタ、プロジェクタ、触覚フィードバックデバイス、自動制御器、ロボット部品、アクチュエータ、モータ、ファン、ソレノイド、バルブ、ポンプ、トランスミッタ、信号エミッタ、照明などを含む様々な出力デバイスに結合することがある。
【0096】
計算機2000は、ネットワーク2080にわたる1つ以上の他のシステムまたは計算機へのネットワークインターフェース2070を介して論理接続を使用してネットワーク化環境で動作することがある。ネットワーク2080は、ワイドエリアネットワーク(WAN)、ローカルエリアネットワーク(LAN)、インターネット、イントラネット、無線アクセスネットワーク、有線ネットワーク、モバイルネットワーク、電話網、光ネットワーク、またはこれらの組み合わせを備えてもよい。ネットワーク2080は、パケット交換式、回路スイッチ式、または任意のトポロジーでもよく、任意の通信プロトコルを使用することがある。ネットワーク2080内部の通信リンクは、光ファイバケーブル、自由空間光学系、導波路、導電体、無線リンク、アンテナ、無線周波数通信などのような様々なデジタルまたはアナログ通信媒体を必要とすることがある。
【0097】
プロセッサ2010は、システムバス2020を介して、計算機2000の他の要素または本明細書中で検討された様々な周辺デバイスに接続されることがある。システムバス2020は、プロセッサ2010の内部、プロセッサ2010の外部、または両方にあってもよいことが認められるべきである。一部の実施形態によれば、プロセッサ2010のいずれか、計算機2000の他の要素、または本明細書において検討された様々な周辺デバイスは、システムオンチップ(SOC)、システムオンパッケージ(SOP)、またはASIC装置などの単一のデバイスに統合されることがある。
【0098】
ここで検討されたシステムがユーザに関する個人情報を収集する、または、個人情報を利用するかもしれない状況において、ユーザは、プログラムもしくは特徴機能がユーザ情報(例えば、ユーザのソーシャルネットワーク、社会的行為もしくは活動、職業、ユーザの嗜好、またはユーザの現在位置)を収集するか否かを制御する、または、ユーザにより関連性のあるコンテンツをコンテンツサーバから受信するか否か、および/または、その方法を制御する機会が与えられることがある。その上、特定のデータは、これが記憶または使用される前に、個人識別可能な情報が削除されるように、1つ以上の方法で扱われることがある。例えば、ユーザの身分は、個人識別可能な情報がこのユーザに対して決定できないように扱われることがあり、または、ユーザの地理的位置は、ユーザの特有の位置が決定できないように、位置情報が取得される場合に(例えば、都市、郵便番号、または州レベルに)一般化されることがある。このようにして、ユーザは、どのようにしてユーザに関する情報が収集され、コンテンツサーバによって使用されるかを制御することがある。
【0099】
実施形態は、本明細書において記載され、例示された機能を具現化するコンピュータプログラムを備えることがあり、このコンピュータプログラムは、機械可読媒体に記憶された命令とこれらの命令を実行するプロセッサとを備えるコンピュータシステムに実装される。しかし、実施形態を実装する多くの異なる方法がコンピュータプログラミングにおいて存在し得ることが認められるべきであり、実施形態は、コンピュータプログラム命令のいずれか1つの組に限定されるものとして解釈されるべきではない。さらに、当業者は、添付されたフローチャートおよび明細書本文中の関連する記載に基づいて開示された実施形態のうちの実施形態を実装するためにこのようなコンピュータプログラムを記述できるであろう。その結果、プログラムコード命令の特有の組の開示内容は、どのように実施形態を作り上げ、使用するかについての適切な理解のため欠くことができない、とは考えられない。さらに、当業者は、本明細書に記載された実施形態の1つ以上の態様が、1以上のコンピューティングシステムにおいて具現化されることがあるように、ハードウェア、ソフトウェア、またはこれらの組み合わせによって行われることがあることを認めるであろう。その上、コンピュータによって行われている行為への言及は、2台以上のコンピュータがこの行為を行うことがあるので、1台のコンピュータによって行われているものとして解釈されるべきではない。
【0100】
本明細書に記載された例示的な実施形態は、本明細書に記載された方法および処理機能を行うコンピュータハードウェアおよびソフトウェアと共に使用される可能性がある。本明細書に記載されたシステム、方法、および手順は、プログラマブルコンピュータ、コンピュータ実行可能なソフトウェア、またはデジタル回路において具現化される可能性がある。ソフトウェアは、コンピュータ可読媒体に記憶される可能性がある。例えば、コンピュータ可読媒体は、フレキシブルディスク、RAM、ROM、ハードディスク、着脱式媒体、フラッシュメモリ、メモリスティック、光学媒体、磁気光学媒体、CD−ROMなどを含む可能性がある。デジタル回路は、集積回路、ゲートアレイ、ビルディングブロック論理、フィールドプログラミングゲートアレイ(FPGA)などを含む可能性がある。
【0101】
上に記載した実施形態におけるシステム、方法、および行為の例は、例示的であり、代替的な実施形態では、特定の行為は、異なる順序で、互いに並列に、完全に省かれて、および/または異なる例示的な実施形態の間で組み合わされて行われる可能性があり、および/または、特定の付加的な行為は、様々な実施形態の範囲および趣旨から逸脱することなく、行われる可能性がある。その結果、このような代替的な実施形態は、本願において特許請求の範囲に記載された発明に含まれる。
【0102】
具体的な実施形態が詳細に前述されているが、この記載は、単なる例示の目的である。従って、前述の多くの態様は、特段の記載のない限り、必須または不可欠な要素として意図されていないことが認められるべきである。例示的な実施形態の開示された態様についての変更、均等な構成要素、または、対応する行為は、前述の態様に加えて、本開示の利点を有し、特許請求の範囲に記載された実施形態の趣旨および範囲から逸脱することなく、当業者によって行うことができ、この範囲は、このような変形例および均等な構造を網羅するように最も広い解釈が与えられるべきである