(57)【要約】本開示は、概して、ＴＣＰ／ＩＰプロトコルを用いた決済端末との通信に関する。特定の実施形態において、ネットワーク技術及び新規なプロセスを使用して、本システム及び方法は、ローカルネットワークの発見及びブラウザを介した決済端末と電子キャッシュレジスタ（electronic cash register : ECR）との通信を可能にする。例えば、特定の実施形態では、本システム及び方法は、ＴＣＰ／ＩＰネットワーク技術を活用して、ブラウザ環境で実行されているＳａａＳ ＥＣＲソフトウェアと１つまたは複数の決済端末との間のセキュアな通信を可能にする。
2020522933.tif 000002
【特許請求の範囲】
【請求項１】
決済端末とマーチャント・コンピューティングシステムとの間のセキュアな通信を可能にするＴＣＰ／ＩＰアーキテクチャであって、
１つまたは複数のプロセッサを含むＩＰレジストリサービスであって、前記ＩＰレジストリサービスは、ネットワークを介して決済端末及びマーチャント・ブラウザと動作可能に通信し、前記ＩＰレジストリサービスは、
前記決済端末から、前記決済端末に関連付けられたＩＰアドレス、ポート、固有の識別子を受信すること、
前記マーチャント・ブラウザから、前記決済端末の固有の識別子を受信すること、
前記固有の識別子を受信したことに応答して、前記マーチャント・ブラウザがＩＰアドレスおよびポートを用いてＴＣＰ／ＩＰプロトコルで前記決済端末と通信できるように、前記決済端末のＩＰアドレスおよびポートを前記マーチャント・ブラウザに送信すること、を実行する、前記ＩＰレジストリサービスと、
ＤＮＳ（domain name system）であって、
前記決済端末のＩＰアドレスおよびルートドメイン名を含むウェブアドレスのＤＮＳルックアップ要求を前記マーチャント・ブラウザから受信すること、
前記ウェブアドレスのＤＮＳルックアップ要求を受信したことに応答して、
前記ルートドメイン名を削除することによって、前記ウェブアドレスを前記決済端末のＩＰアドレスに変換すること、
前記マーチャント・ブラウザがＨＴＴＰＳプロトコルを用いて前記決済端末と通信できるように、前記決済端末のＩＰアドレスを前記マーチャント・ブラウザに送信すること、を実行する前記ＤＮＳと、を備えるＴＣＰ／ＩＰアーキテクチャ。
【請求項２】
前記ＤＮＳは、前記ルートドメイン名を除去し、前記ＩＰアドレスを再フォーマットすることによって、前記ウェブアドレスを前記決済端末のＩＰアドレスに変換する、請求項１に記載のＴＣＰ／ＩＰアーキテクチャ。
【請求項３】
前記ＤＮＳは、前記ＩＰアドレスに小数点を挿入することによって、前記ＩＰアドレスを再フォーマットする、請求項２に記載のＴＣＰ／ＩＰアーキテクチャ。
【請求項４】
前記ウェブアドレスは、調整されたフォーマットのＩＰアドレスを含む、請求項３に記載のＴＣＰ／ＩＰアーキテクチャ。
【請求項５】
前記ＩＰアドレスの調整されたフォーマットは、任意の小数点のないＩＰアドレスを含む、請求項４に記載のＴＣＰ／ＩＰアーキテクチャ。
【請求項６】
前記ＩＰレジストリサービスは、前記決済端末のＩＰアドレスを前記ルートドメイン名と組み合わせることによって、前記ウェブアドレスを作成する、請求項５に記載のＴＣＰ／ＩＰアーキテクチャ。
【請求項７】
前記マーチャント・ブラウザは、前記決済端末に関連付けられたセキュリティ証明書およびウェブアドレスの真正性の検証を認証局に要求する、請求項６に記載のＴＣＰ／ＩＰアーキテクチャ。
【請求項８】
前記マーチャント・ブラウザは、前記セキュリティ証明書の真正性の検証を受信すると、ＨＴＴＰＳプロトコルを用いて前記決済端末と通信する、請求項７に記載のＴＣＰ／ＩＰアーキテクチャ。
【請求項９】
前記ＩＰレジストリサービスおよび前記ＤＮＳは、動作可能に接続されている、請求項８に記載のＴＣＰ／ＩＰアーキテクチャ。
【請求項１０】
決済処理システムをさらに備える請求項９に記載のＴＣＰ／ＩＰアーキテクチャ。
【請求項１１】
前記決済処理システムは、
暗号化された決済ペイロードを前記決済端末から受信すること、
前記暗号化された決済ペイロードが侵害されたかどうかを判定すること、
前記決済ペイロードが侵害されていないと判定すると、前記暗号化された決済ペイロードを復号化すること、を実行する、請求項１０に記載のＴＣＰ／ＩＰアーキテクチャ。
【請求項１２】
コンピュータによって実行される方法であって、
ＩＰレジストリサービスにおいて、決済端末から、前記決済端末に関連付けられたＩＰアドレス、ポート、固有の識別子を受信すること、
前記ＩＰレジストリサービスにおいて、マーチャント・ブラウザから、前記決済端末に関連付けられた固有の識別子を受信すること、
前記固有の識別子を受信したことに応答して、前記マーチャント・ブラウザがＩＰアドレスおよびポートを用いてＴＣＰ／ＩＰプロトコルで前記決済端末と通信できるように、前記決済端末のＩＰアドレスおよびポートを前記マーチャント・ブラウザに送信すること、
ＤＮＳ（domain name system）において、前記決済端末のＩＰアドレスおよびルートドメイン名を含むウェブアドレスのＤＮＳルックアップ要求を前記マーチャント・ブラウザから受信すること、
前記ウェブアドレスのＤＮＳルックアップ要求を受信したことに応答して、
前記ＤＮＳにおいて、前記ルートドメイン名を削除することによって、前記ウェブアドレスを前記決済端末のＩＰアドレスに変換すること、
前記ＤＮＳが、前記マーチャント・ブラウザがＨＴＴＰＳプロトコルを用いて前記決済端末と通信できるように、前記決済端末のＩＰアドレスを前記マーチャント・ブラウザに送信すること、を備える方法。
【請求項１３】
前記ＤＮＳは、前記ルートドメイン名を除去し、前記ＩＰアドレスを再フォーマットすることによって、前記ウェブアドレスを前記決済端末のＩＰアドレスに変換する、請求項１２に記載の方法。
【請求項１４】
前記ＤＮＳは、前記ＩＰアドレスに小数点またはコロンを挿入することによって、前記ＩＰアドレスを再フォーマットする、請求項１３に記載の方法。
【請求項１５】
前記ウェブアドレスは、調整されたフォーマットのＩＰアドレスを含む、請求項１４に記載の方法。
【請求項１６】
前記ＩＰアドレスの調整されたフォーマットは、任意の小数点またはコロンのないＩＰアドレスを含む、請求項１５に記載の方法。
【請求項１７】
前記ＩＰレジストリサービスは、前記決済端末のＩＰアドレスを前記ルートドメイン名と組み合わせることによって、前記ウェブアドレスを作成する、請求項１６に記載の方法。
【請求項１８】
前記マーチャント・ブラウザは、前記決済端末に関連付けられたセキュリティ証明書およびウェブアドレスの真正性の検証を認証局に要求する、請求項１７に記載の方法。
【請求項１９】
前記マーチャント・ブラウザは、前記セキュリティ証明書の真正性の検証を受信すると、ＨＴＴＰＳプロトコルを用いて前記決済端末と通信する、請求項１８に記載の方法。
【請求項２０】
前記ＩＰレジストリサービスおよび前記ＤＮＳは、動作可能に接続されている、請求項１９に記載の方法。
【請求項２１】
ＨＴＴＰＳ／ＴＬＳ対応デバイスとローカルネットワーク内のソフトウェアコンポーネントとの間のセキュアな通信を可能にするＴＣＰ／ＩＰアーキテクチャであって、
１つまたは複数のプロセッサを含むＩＰレジストリサービスであって、前記ＩＰレジストリサービスは、ネットワークを介してＨＴＴＰＳ／ＴＬＳ対応デバイスおよびソフトウェアコンポーネントと動作可能に通信し、前記ＩＰレジストリサービスは、
前記ＨＴＴＰＳ／ＴＬＳ対応デバイスから、前記ＨＴＴＰＳ／ＴＬＳ対応デバイスに関連付けられたＩＰアドレス、ポート、固有の識別子を受信すること、
前記ソフトウェアコンポーネントから、前記ＨＴＴＰＳ／ＴＬＳ対応デバイスの固有の識別子を受信すること、
前記固有の識別子を受信したことに応答して、ブラウザがＩＰアドレス及びポートを用いてＴＣＰ／ＩＰプロトコルでＨＴＴＰＳ／ＴＬＳ対応デバイスと通信できるように、前記ＨＴＴＰＳ／ＴＬＳ対応デバイスのＩＰアドレス及びポートを前記ソフトウェアコンポーネントに送信すること、を実行する、前記ＩＰレジストリサービスと、
ＤＮＳ（domain name system）であって、
前記ＨＴＴＰＳ／ＴＬＳ対応デバイスのＩＰアドレスおよびルートドメイン名を含むウェブアドレスのＤＮＳルックアップ要求を前記ブラウザから受信すること、
前記ウェブアドレスのＤＮＳルックアップ要求を受信したことに応答して、
前記ルートドメイン名を削除することによって、前記ウェブアドレスを前記ＨＴＴＰＳ／ＴＬＳ対応デバイスのＩＰアドレスに変換すること、
前記ブラウザがＨＴＴＰＳプロトコルでＨＴＴＰＳ／ＴＬＳ対応デバイスと通信できるように、前記ＨＴＴＰＳ／ＴＬＳ対応デバイスのＩＰアドレスを前記ブラウザに送信すること、を実行する前記ＤＮＳと、を備えるＴＣＰ／ＩＰアーキテクチャ。
【請求項２２】
前記ソフトウェアコンポーネントは、前記ブラウザと通信するミドルウェアである、請求項２１に記載のＴＣＰ／ＩＰアーキテクチャ。
【請求項２３】
前記ソフトウェアコンポーネントは、前記ブラウザにプラグインとしてインストールされたＪａｖａＳｃｒｉｐｔ ＳＤＫである、請求項２１に記載のＴＣＰ／ＩＰアーキテクチャ。
【請求項２４】
前記ソフトウェアコンポーネントは、１つまたは複数のＩｏＴデバイスと接続するためのサードパーティソフトウェアである、請求項２１に記載のＴＣＰ／ＩＰアーキテクチャ。
【請求項２５】
方法であって、
ＨＴＴＰＳ／ＴＬＳ対応デバイスから、前記ＨＴＴＰＳ／ＴＬＳ対応デバイスに関連付けられたＩＰアドレス、ポート、固有の識別子を受信すること、
ソフトウェアコンポーネントから、前記ＨＴＴＰＳ／ＴＬＳ対応デバイスの固有の識別子を受信すること、
前記固有の識別子を受信したことに応答して、ブラウザがＩＰアドレス及びポートを用いてＴＣＰ／ＩＰプロトコルでＨＴＴＰＳ／ＴＬＳ対応デバイスと通信できるように、前記ＨＴＴＰＳ／ＴＬＳ対応デバイスのＩＰアドレス及びポートを前記ソフトウェアコンポーネントに送信すること、
前記ＨＴＴＰＳ／ＴＬＳ対応デバイスのＩＰアドレスおよびルートドメイン名を含むウェブアドレスのＤＮＳルックアップ要求をブラウザから受信すること、
前記ウェブアドレスのＤＮＳルックアップ要求を受信したことに応答して、
前記ルートドメイン名を削除することによって、前記ウェブアドレスを前記ＨＴＴＰＳ／ＴＬＳ対応デバイスのＩＰアドレスに変換すること、
前記ソフトウェアコンポーネントがＨＴＴＰＳプロトコルでＨＴＴＰＳ／ＴＬＳ対応デバイスと通信できるように、前記ＨＴＴＰＳ／ＴＬＳ対応デバイスのＩＰアドレスをブラウザに送信すること、を備える方法。
【請求項２６】
前記ソフトウェアコンポーネントは、前記ブラウザと通信するミドルウェアである、請求項２５に記載の方法。
【請求項２７】
前記ソフトウェアコンポーネントは、前記ブラウザ上にプラグインとしてインストールされたＪａｖａＳｃｒｉｐｔ ＳＤＫである、請求項２５に記載の方法。
【請求項２８】
前記ソフトウェアコンポーネントは、１つまたは複数のＩｏＴデバイスと接続するためのサードパーティソフトウェアである、請求項２５に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本システム及び方法は、概して、ＴＣＰ／ＩＰプロトコルを用いた通信に関する。
【背景技術】
【０００２】
コンピュータ技術がますます普及するにつれて、企業は業務の幾つかの側面にコンピュータソフトウェアを導入することが実質的に求められている。しかし、ソフトウェアのインストールと管理は、多くの企業が有しておらずかつ取得することを望んでいない専門知識を必要とする費用のかかる作業になる可能性がある。ソフトウェアを必要としているが、ソフトウェアをインストールしたり管理したりすることを望んでいない企業にサービスを提供するためのメカニズムとして、「ＳａａＳ（software as a service）」が開発された。ＳａａＳは、サードパーティのプロバイダがアプリケーションをホストし、ウェブブラウザを介してインターネット経由で顧客に提供するソフトウェア配信モデルである。ＳａａＳを導入することで、企業は自社のコンピュータまたはデータセンタにアプリケーションをインストールして管理する必要がなくなるかもしれない。
【０００３】
電子キャッシュレジスタ（electronic cash register : ECR）を使用する企業は、多くの場合、複数のＥＣＲとのインタフェースとしてＳａａＳアプリケーションを使用する。さらに、複数のＥＣＲを使用する企業は、多くの場合、電子決済端末を使用してこれらのタイプの決済を処理することによって、複数の顧客から小切手及びクレジットカードによる決済を受理する。ＥＣＲのためのＳａａＳアプリケーション及び企業が使用するウェブブラウザが、通常、決済端末と直接通信するように設計されていないため、企業がＳａａＳアプリケーション及びＥＣＲを使用して決済端末を管理する場合、データ収集及びその他の通信の問題が発生する可能性がある。このような状況では、企業はＥＣＲのソフトウェアを使用するために特別に設計された決済端末を使用するか、又は複数のソースからデータを収集して調整するという非効率的で面倒なタスクに直面するかのいずれかに制限される。したがって、ウェブブラウザを介して決済端末を制御し、更新し、通信することができるシステムまたは方法に対する長年の解決されていないニーズがある。
【発明の概要】
【０００４】
上述したように、ＳａａＳシステムは、典型的には、ブラウザベースの環境で動作する。さらに、幾つかの決済端末は、「ＵＳＢ（hard-wired universal serial bus）」接続を介して（例えば、一日の終わり、シフトの終わりなどで）ＥＣＲに情報をアップロードしてもよい。当業者によって理解されるように、従来のブラウザは、（セキュリティ目的のために）ＵＳＢ接続を介して通信することはできない。したがって、ブラウザベースの環境で動作するＳａａＳシステムは、通常、典型的なＵＳＢ接続を介してＥＣＲと通信できない。
【０００５】
一部の決済端末は、ＥＣＲとワイヤレスで通信する機能を含む。これらのシナリオでは、ＥＣＲは、Ｗｉ−Ｆｉなどを介して決済端末と通信するようにプログラムされて、ＳａａＳシステムにデータをアップロードするためのＵＳＢ接続の必要性を排除できる。ただし、セキュリティを強化するために、一部のシステムは、ＥＣＲ及び／又は決済端末用に動的に更新されるＩＰアドレスを含む。ＥＣＲブラウザが動的に更新されるＩＰアドレスを有する決済端末と通信するためには、ユーザは、（定期的に、幾つかの実施形態では毎日）決済端末のＩＰアドレスが更新されるたびに、ＥＣＲと決済端末との間の接続を再設定する必要がある。システムが複数の（例えば、２個、５個、２０個、１００個のなどの）決済端末を含む場合、ＥＣＲと決済端末との間の接続を再設定すると、追加の問題が発生する。
【０００６】
したがって、様々な実施形態において、本システム及び方法は、決済端末が動的に更新されるＩＰアドレスを有するにもかかわらず、ＴＣＰ／ＩＰプロトコルを用いてＳａａＳシステムを搭載したＥＣＲへの決済端末の継続的なセキュアな接続を可能にする。
【０００７】
簡単に説明すると、一実施形態によれば、本開示の複数の態様は、概して、ＴＣＰ／ＩＰプロトコルを用いたウェブブラウザを介して複数の決済端末を制御、更新、及び通信するシステム及び方法に関する。本開示のシステム及び方法は、さらに、ＴＣＰ／ＩＰプロトコルを用いて決済端末と通信するコンピューティングシステムを、ＩＰレジストリサービスを介して決済端末のＩＰアドレスを用いて自動的に更新する（例えば、決済端末のＩＰアドレスが動的に更新されると、コンピューティングシステムは、自動的に新しいＩＰアドレスで更新される）ことに関する。本開示のシステム及び方法は、さらに、ウェブブラウザとＴＣＰ／ＩＰプロトコルを用いた決済端末通信との間の潜在的な「ＳＳＬ（secure socket layer）」のセキュリティ問題を解決することに関する。本明細書の説明から理解されるように、決済端末、ウェブブラウザ、ＩＰレジストリサービス、及びカスタムＤＮＳ（domain name system）の様々な組み合わせによって、本明細書に記載された複数の機能が実行される。
【０００８】
１つまたは複数の特許請求の範囲に記載されたシステムのこれら及び他の態様、特徴、及び利点は、以下の図面に関連して取られる好ましい実施形態及び態様の以下の詳細に記載された説明から明らかになるであろうが、それに対する変更及び修正は、開示の新規な概念の趣旨及び範囲から逸脱することなく実施され得る。
【図面の簡単な説明】
【０００９】
添付の図面は、本開示の１つ又は複数の実施形態及び／又は態様を示し、明細書とともに、本開示の原理を説明する役割を果たす。可能な限り、図面全体を通して同じ参照番号を使用して、実施形態の同じかまたは同様の要素を指す。
【図１Ａ】本開示の一実施形態に従った、例示的なシステム環境を示す。
【図１Ｂ】本開示の一実施形態に従った、例示的なシステム環境を示す。
【図１Ｃ】本開示の一実施形態に従った、例示的なシステム環境を示す。
【図１Ｄ】本開示の一実施形態に従った、例示的なシステム環境を示す。
【図１Ｅ】本開示の一実施形態に従った、例示的なシステム環境を示す。
【図１Ｆ】本開示の一実施形態に従った、例示的なシステム環境を示す。
【図１Ｇ】本開示の一実施形態に従った、例示的なシステム環境を示す。
【図１Ｈ】本開示の一実施形態に従った、例示的なシステム環境を示す。
【図１Ｉ】本開示の一実施形態に従った、例示的なシステム環境を示す。
【図２】本開示の一実施形態に従った、システム環境の例示的なコンポーネント図である。
【図３】本開示の一実施形態に従った、例示的なＪａｖａＳｃｒｉｐｔ ＳＤＫプロセスの例示的なフローチャートである。
【図４】本開示の一実施形態に従った、例示的なＩＰレジストリプロセスの例示的なフローチャートである。
【図５】本開示の一実施形態に従った、例示的なカスタムＤＮＳサービスプロセスの例示的なフローチャートである。
【発明を実施するための形態】
【００１０】
本開示の原理の理解を促進するために、図面に示された実施形態を参照し、特定の言語を使用してこれを説明する。それでもなお、本開示の範囲の限定はそれによって意図されないことが理解されるであろう。説明または例示された実施形態の変更及びさらなる修正、及び明細書に例示された本開示の原理のさらなる適用は、本開示が関連する当業者によって通常行われるように企図される。範囲のすべての制限は、特許請求の範囲に従って説明されているように決定されるべきである。
【００１１】
用語が大文字化されているかどうかは、用語の意味の決定または限定とはみなされない。この明細書で使用されているように、大文字の用語は、大文字の用語のより制限的な意味が意図されていることを使用の文脈で具体的に示していない限り、大文字でない用語と同じ意味を有する。しかし、この明細書の残りの部分における大文字の使用またはその欠如は、文脈がそのような制限が意図されていることを明確に示さない限り、必ずしも制限することを意図していない。
【００１２】
概要
本明細書で開示されるシステム及び方法は、ＴＣＰ／ＩＰプロトコルを用いたウェブブラウザを介したブラウザ対応決済端末（browser-enabled payment terminal）の制御、更新、及び通信に関する。本開示のシステム及び方法は、さらに、ＴＣＰ／ＩＰプロトコルを用いて決済端末と通信するコンピューティングシステムを、ＩＰレジストリサービスを介して決済端末のＩＰアドレスを用いて自動的に更新する（例えば、決済端末のＩＰアドレスが動的に更新されると、コンピューティングシステムは、自動的に新しいＩＰアドレスで更新される）ことに関する。本開示のシステム及び方法は、さらに、ウェブブラウザとＴＣＰ／ＩＰプロトコルを用いた決済端末通信との間の潜在的なＳＳＬのセキュリティ問題を解決することに関する。この説明の目的上、ＴＣＰ／ＩＰプロトコルは、インターネット及びプライベートネットワークの両方でネットワークデバイスを相互接続するように使用される通信プロトコルのスイート（suite）を指す。
【００１３】
一実施形態では、システムは、ネットワークを介した通信をサポートする決済端末、例えば、ＰＡＸ Ｔｅｃｈｎｏｌｏｇｙ Ｌｉｍｉｔｅｄ（登録商標）の端末を含む（ただし、ネットワークを介した通信をサポートする任意の端末が、このシステムの一部と考えられる）。特定の実施形態によれば、システムは、ＨＴＴＰＳ ＡＰＩを公開する（expose）か、そうでなければ、ＨＴＴＰＳプロトコルを用いて通信するように構成された決済端末を含む。特定の実施形態では、システムは、１つ以上の他のネットワークプロトコルを用いて通信するように構成された決済端末を含む。
【００１４】
幾つかの実施形態では、本明細書に記載のシステムは、ネットワークを介した通信をサポートする決済端末と通信するためのマーチャント・ブラウザ（merchant browser）に含まれるブラウザによって実行可能なブラウザ・プラグイン（browser plug-in）または他のソフトウェア、およびシステムの他のコンポーネントを含む。さまざまな実施形態において、マーチャント・ブラウザは、ＩＰレジストリサービス（IP registry service）及びカスタム（custom）ＤＮＳと通信するように構成される。本明細書の説明から理解されるように、決済端末、マーチャント・ブラウザ、ブラウザ・プラグイン（例えば、ＪａｖａＳｃｒｉｐｔ ＳＤＫ）、ＩＰレジストリサービス、及びカスタムＤＮＳの様々な組み合わせによって、本明細書に記載された複数の機能が実行される。
【００１５】
本明細書で説明するように、様々な実施形態において、システムは、決済端末のＩＰアドレス及びルートドメイン名に少なくとも部分的に基づいて決済端末にドメイン名を割り当てる。潜在的なＳＳＬセキュリティ問題を解決するために、幾つかの実施形態では、本明細書に記載するシステムは、決済端末のドメイン名が、（ＳＳＬ経由でセキュアな接続を確立するために必要な）ＳＳＬ証明書に割り当てられたルートドメイン名と一致することを保証する。一実施形態では、ブラウザ・プラグインは、決済端末に割り当てられたＩＰアドレスを使用し、ＳＳＬ証明書に割り当てられたＩＰアドレス及びルートドメイン名を含む決済端末のための一時的な、つまり「スプーフ（spoof）」名、すなわち、ウェブアドレスを指定することを可能にし、決済端末のウェブアドレスを決済端末のＳＳＬ証明書とリンクさせる（linking）。
【００１６】
様々な実施形態では、決済端末のスプーフドメイン名（spoof domain name）またはウェブアドレスを用いた決済端末へのマーチャント・ブラウザによるセキュアな接続要求に応じて、マーチャント・ブラウザは、カスタムＤＮＳサービスにルーティングされ、カスタムＤＮＳサービスは、ウェブアドレスを決済端末のＩＰアドレスに変換して、マーチャント・ブラウザが、決済端末へのセキュアな接続を開始できるようにする。セキュアな接続が開始されると、決済端末は、マーチャント・ブラウザにＳＳＬ証明書のコピーを提供し、マーチャント・ブラウザが、認証局を介してＳＳＬ証明書を認証し、決済端末のアイデンティティを検証し得る（たとえば、ルートドメイン名がＳＳＬ証明書のドメイン名と一致するため、ＳＳＬ証明書は、認証局によって認証され得る）。認証局が決済端末のＳＳＬ証明書の真正性を認証または検証すると、セキュアな接続が完了される。
【００１７】
同様に理解されるように、システムは、システムの単一のコンポーネントまたは複数のコンポーネントを用いて、本明細書において説明される様々な機能を実行してもよい。たとえば、以下でさらに説明するように、システムは「スプーフ」ドメイン名を計算するように構成され得る。システムは、一実施形態では、ブラウザにインストールされたＪａｖａＳｃｒｉｐｔ ＳＤＫを用いてスプーフドメイン名を計算する。少なくとも１つの実施形態では、システムは、ＩＰレジストリサービス（またはＪａｖａＳｃｒｉｐｔ ＳＤＫとＩＰレジストリサービスの組み合わせ）を用いてスプーフドメイン名を計算する。
【００１８】
別の例として、図面に示す実施形態では、システムは、ＩＰレジストリサービスおよびＤＮＳサーバなどの幾つかの異なるコンポーネントを含む。１つ以上の実施形態において、ＩＰレジストリサービス及びＤＮＳサーバは、１つのシステムまたは１つのサーバであり得る。
【００１９】
本明細書では、これらのコンポーネント及びプロセスについて説明する。
例示的な環境
次に図面を参照すると、開示されたシステムおよび方法のプロセスおよび構成要素の例示および説明の目的で、本明細書のシステムおよび方法の一実施形態の例示的で概略的なシステム環境１００を示す図１（図１Ａ〜図１Ｉを含む）が参照される。理解され、認識されるように、図１に示される例示的な概略システム環境１００は、本システムの特定のアプローチまたは実施形態を表し、他の態様は本システムの様々な実施形態に従って使用される。概して、図１Ａ〜１Ｉは、例示的な環境１００内で「ＳａａＳ（software as a service）」決済ソリューションを採用する決済端末１０２と電子キャッシュレジスタ（electronic cash register : ECR）との間の通信を可能にする異なるステップを示す。具体的には、図１Ａ〜１Ｉは、ＳａａＳベンダからのソフトウェアにアクセスするマーチャント・ブラウザ（例えば、ＥＣＲ）を使用して、決済端末を介して顧客の支払いが処理される特定の実施形態を示している。
【００２０】
一例として、図１に示されるように、例示的なシステム環境は、顧客の支払いを受理する（accept）ための端末識別番号（例えば、１２３５５５０００）が割り当てられた決済端末１０２を含む。少なくとも１つの実施形態では、端末識別番号は、決済端末１０２を識別する固定番号である。特定の実施形態では、決済端末１０２は、クレジットカード、デビットカード、小切手、または他の電子決済メカニズムの態様で顧客の支払いを受理してもよい。様々な実施形態において、マーチャント（merchant）は、ドメイン名を決済端末１０２に割り当てることができる（例えば、ｐａｙｍｅｎｔｔｅｒｍｉｎａｌ．ｃｏｍ）。少なくとも１つの実施形態では、マーチャントは、ドメイン名のワイルドカード（wildcard）「ＳＳＬ（secure socket layer）」証明書を取得し得る。この説明のために、ＳＳＬ証明書は、割り当てられているウェブサイトまたはデバイスのアイデンティティ（identity）を認証し、複数のデバイス間の暗号化された接続を可能にして、割り当てられているウェブサイトまたはデバイスとの間で送受信されるデータを保護する。さらに、ワイルドカードＳＳＬ証明書は、無制限のサブドメイン（例えば、＊．ｐａｙｍｅｎｔｔｅｒｍｉｎａｌ．ｃｏｍ）に付けられる。特定の実施形態では、例示的なシステム環境１００は、決済端末１０２（例えば、１９２．１６８．１．１００）及びマーチャント・ブラウザ１０６（例えば、１９２．１６８．１．１０１）にＩＰアドレスを割り当てる「ＤＨＣＰ（dynamic host configuration protocol）」サーバ１０４を含む。様々な実施形態において、例示的なシステム環境は、決済端末１０２とインタフェースし、管理するための端末管理ソフトウェア（「TMS: terminal management software」）１１０を含む。
【００２１】
さらに、幾つかの実施形態では、例示的なシステム環境１００は、マーチャント・ブラウザ１０６及びＳａａＳベンダ１０８を含む。特定の実施形態では、マーチャント・ブラウザ１０６は、ＥＣＲ（例えば、デスクトップコンピュータ、タブレットコンピュータ、モバイルデバイス、または他の適切なＥＣＲ）上で動作し得る。様々な実施形態において、ＳａａＳベンダ１０８は、ＥＣＲの使用を可能にするソフトウェアを提供する。少なくとも１つの実施形態では、マーチャント・ブラウザ１０６は、ＳａａＳベンダ１０８とインタフェースするように構成される。
【００２２】
幾つかの実施形態では、例示的なシステム環境１００は、マーチャント・ブラウザ１０６と決済端末１０２との間のセキュアな通信を提供するための認証局１２０を含む。この説明の目的のために、認証局１２０は、認証局１２０によって検証されるように、ウェブサイト、人、およびデバイスがそれらの真正なオンライン・アイデンティティを表すことを支援する認証情報（credential）を含む検証可能なデータファイルであるデジタル証明書を発行する。
【００２３】
少なくとも一実施形態では、ユーザは、ＪａｖａＳｃｒｉｐｔ ＳＤＫ（Software Development Kit）２０５をマーチャント・ブラウザ１０６にダウンロードしてインストールするか、さもなければ、ユーザは、ＪａｖａＳｃｒｉｐｔ ＳＤＫ２０５がマーチャント・ブラウザ１０６にロードされたＳａａＳソフトウェアと決済端末１０２との間の通信を可能にするように、マーチャント・ブラウザ１０６とインタフェースする。
【００２４】
図１を続けて、様々な実施形態では、例示的なシステム環境１００は、（例えば、顧客のクレジットカードへの請求を承認するかまたは否認する）決済端末１０２を介して行われる顧客の支払いを処理する決済処理サービス１１４を含む。少なくとも一実施形態では、決済処理サービス１１４は、２０１５年１月７日に出願された「暗号化装置から受信したペイロードの低減を可能にするシステム及び方法」という名称の米国特許出願第１４／５９１，１７１号および２０１７年５月１７日に出願された「ハードウェアセキュリティモジュールを介したサービスとして復号化するシステム及び方法」という名称の米国特許出願第１５／５９７，４０２号に記載されているようなポイントツーポイント暗号化管理システム（point-to-point encryption management system）を使用することができる。
【００２５】
特定の実施形態では、例示的なシステム環境１００は、様々なデバイスのＩＰアドレス及び他の情報を記録するＩＰレジストリサービス（registry service）１１６を含む。様々な実施形態において、ＩＰレジストリサービス１１６は、決済端末１０２の端末識別番号及び他の識別情報（例えば、バージョン番号、ＭＡＣアドレス、デバイスタイプ、シリアル番号など）を記録し得る。幾つかの実施形態では、ＩＰレジストリサービス１１６は、決済端末１０２のＩＰアドレスをマーチャント・ブラウザ１０６に送信してもよい。１つまたは複数の実施形態では、本明細書で説明するように、ＩＰレジストリサービス１１６は、決済端末１０２の「スプーフ」または一時的なドメイン名の作成を担当し得る。本明細書の説明から理解されるように、ＩＰレジストリサービス１１６は、任意の数の決済端末及び／またはデバイスの端末識別番号及びＩＰアドレスを記録し得る。
【００２６】
少なくとも１つの実施形態では、例示的なシステム環境１００は、デバイスドメイン名に基づいて識別サービスを提供するカスタムＤＮＳサービス１１８を含む。この説明のために、ＤＮＳサービスは、ネットワークに接続されたコンピュータ、サービス、またはその他のデバイスまたはリソースのネーミングシステム（naming system）を提供する。１つまたは複数の実施形態において、ＤＮＳサービスは、ドメイン名を、デバイスまたはサービスを識別するために必要なＩＰアドレスに変換する。例えば、決済端末１０２（ｐａｙｍｅｎｔｔｅｒｍｉｎａｌ．ｃｏｍ）に割り当てられたドメイン名は、ＤＨＣＰサーバ１０４によって割り当てられた決済端末１０２のＩＰアドレス（例えば、１９２．１６８．１．１００）に変換される。
【００２７】
少なくとも１つの実施形態では、この例示的なシステム環境１００の様々なコンポーネントは、１つまたは複数のネットワーク１１２を介して動作可能に接続される。一実施形態では、ネットワーク１１２は、インターネットであってもよく、それに限定されず、１つ以上のサービス（クライアント／サービスアーキテクチャ、企業のローカルエリアネットワーク（「ＬＡＮ」）またはワイドエリアネットワーク（「ＷＡＮ」）、セルラー・データネットワーク、またはクラウドベースのシステムを使用したウェブ展開サービス（web-deployed service）など）の使用を含んでもよい。さらに、当業者によって理解及び認識されるように、ルータ、スイッチ、ホストなどのようなさまざまなネットワークコンポーネントが、典型的にはこれらの通信に関与している。図１に示すように、そのような通信は、様々な実施形態において、無許可の第三者による不当な侵入及びサイバー攻撃からの追加のセキュリティを提供する１つ以上のセキュアなネットワーク、ゲートウェイ、またはファイアウォールを含み得る。
【００２８】
図１Ｂを参照すると、様々な実施形態において、決済端末１０２及びマーチャント・ブラウザ１０６には、ＤＨＣＰサーバ１０４によってＩＰアドレスが割り当てられる。特定の実施形態では、決済端末１０２とマーチャント・ブラウザ１０６の両方は、ＤＨＣＰサーバ１０４に動作可能に接続される。一実施形態では、ＤＨＣＰサーバ１０４は、決済端末１０２（例えば、１９２．１６８．１．１００）およびマーチャント・ブラウザ１０６（例えば、１９２．１６８．１．１０１）の両方に固有のＩＰアドレスを割り当てて、決済端末１０２およびマーチャント・ブラウザ１０６をネットワーク上で識別できるようにする。様々な実施形態において、割り当てられたＩＰアドレスが静的ではなく変化し得るように、ＤＨＣＰサーバ１０４は、決済端末１０２とマーチャント・ブラウザ１０６の両方に固有のＩＰアドレスを動的に割り当てる。１つまたは複数の実施形態において、マーチャントは、静的ＩＰアドレスを決済端末１０２に割り当ててもよい。
【００２９】
図１Ｃを参照すると、一実施形態によれば、決済端末１０２は、端末管理ソフトウェア（「ＴＭＳ（terminal management software）」）１１０に動作可能に接続する。特定の実施形態では、決済端末１０２は、有線（例えば、イーサネット、ＵＳＢなど）または無線（例えば、Ｗｉ−Ｆｉ、ブルートゥースなど）接続を介してＴＭＳ１１０に接続し得る。様々な実施形態では、決済端末１０２は、システム起動時、ネットワーク１１２のステータスの変化（例えば、ネットワーク１１２に追加された新しいマーチャント・ブラウザ１０６）、または他のトリガ事象（例えば、ＴＭＳ１１０のデータ更新）に基づいて、ＴＭＳ１１０に接続する。少なくとも１つの実施形態では、ＴＭＳ１１０は、決済端末１０２に関連するデバイス固有情報（例えば、デバイスタイプ、バージョン番号、端末識別番号、ＭＡＣアドレス、シリアル番号、管理情報、ＳＳＬ証明書など）を格納する。一実施形態では、決済端末１０２は、ＴＭＳ１１０からデバイス固有情報をダウンロードする。
【００３０】
図１Ｄを参照すると、決済端末１０２は、ネットワーク１１２を介してＩＰレジストリサービス１１６に接続する。特定の実施形態では、決済端末１０２は、ＤＨＣＰサーバ１０４から取得したローカルＩＰアドレス（及び、幾つかの実施形態では、リスニングポート（listening port））をＩＰレジストリサービス１１６にアップロードする。例えば、決済端末１０２は、１９２．１６８．１．１００をＩＰレジストリサービス１１６にアップロードしてもよい。
【００３１】
１つまたは複数の実施形態では、ＩＰレジストリサービス１１６は、受信したＩＰアドレスを標準／正規化フォーマットに調整するように構成され得る。一実施形態では、受信したＩＰアドレスがＩＰｖ４フォーマットであるが、３つの整数の後ごとに小数点が配置されている１２個の整数を含まない（例えば、受信したＩＰアドレスは「１９２．１６８．１．１００」である）場合、ＩＰレジストリサービス１１６は、各小数点（decimal point）の間に（配置されたゼロを含む）３つの整数が含まれるようにゼロを付与することによって受信したＩＰアドレスを調整する。理解されるように、システムは、小数点の間の任意の既存の整数の左側にゼロを追加する（例えば、端末のＩＰアドレスが「１９２．１６８．１．１００」の場合、システムは、３番目の「１」の左側に２つのゼロを追加し得る）。たとえば、１９２．１６８．１．１００のＩＰアドレスは、１９２．１６８．００１．１００に調整され得る。システムは、特定の実施形態では、「スプーフ」ドメイン名を作成するために、この標準化されたＩＰアドレス形式（たとえば、１２個の整数）を利用し得る。
【００３２】
様々な実施形態によれば、図１Ｅに示されるように、マーチャント・ブラウザ１０６は、ＳａａＳベンダ１０８に接続する。特定の実施形態では、システムは、マーチャント・ブラウザ１０６（例えば、ＥＣＲ）を介してＳａａＳベンダ１０８からのＳａａＳソフトウェアにアクセスする。さらに、幾つかの実施形態では、システムは、ＪａｖａＳｃｒｉｐｔ ＳＤＫ２０５をマーチャント・ブラウザ１０６にダウンロードするように構成される。一実施形態では、ＪａｖａＳｃｒｉｐｔ ＳＤＫ２０５は、決済端末１０２のＥＣＲアプリケーションプログラミングインタフェース（「ＡＰＩ（application programming interface）」）エンドポイントとの通信を担当して、ＪａｖａＳｃｒｉｐｔ ＳＤＫ２０５は、ＳａａＳベンダ１０８からのＳａａＳソフトウェアを用いてロードされたマーチャント・ブラウザ１０６と決済端末１０２との間のブリッジとして機能する。
【００３３】
ここで図１Ｆを参照すると、様々な実施形態において、マーチャント・ブラウザ１０６は、ＩＰレジストリサービス１１６に接続する。特定の実施形態では、ＪａｖａＳｃｒｉｐｔ ＳＤＫ２０５は、決済端末１０２の端末識別番号（または、決済端末のシリアル番号、割り当てられたニックネームなど、その他の適切な固有の識別子）をＩＰレジストリサービス１１６に送信し、応答としてスプーフドメイン名を要求する。様々な実施形態では、スプーフドメイン名が、決済端末に割り当てられたＳＳＬ証明書と一致するように、ＩＰレジストリサービス１１６は、決済端末１０２に割り当てられたドメイン名のルート（root）を、すべての小数点を取り除いた決済端末１０２の調整されたＩＰアドレスと組み合わせることによって、決済端末１０２のスプーフドメイン名を計算する（例えば、ＩＰレジストリサービス１１６は、１９２．１６８．１．１００のＩＰアドレスを１９２．１６８．００１．１００に変換し、調整されたＩＰアドレスをｐａｙｍｅｎｔｔｅｒｍｉｎａｌ．ｃｏｍのルートドメイン名と組み合わせて１９２１６８００１１００．ｐａｙｍｅｎｔｔｅｒｍｉｎａｌ．ｃｏｍにする）。図１Ｄに関連して上述したように、ＩＰレジストリサービス１１６は、少なくとも１つの実施形態では、決済端末１０２のＩＰアドレス、リスニングポート、及び端末識別番号を前もって受信している。理解されるように、マーチャント・ブラウザ１０６は、決済端末１０２のＩＰアドレス及びリスニングポート及び／またはスプーフドメイン名を使用して、ＴＣＰ／ＩＰプロトコルで決済端末１０２と通信することができる。
【００３４】
少なくとも１つの実施形態では、本明細書で説明するように、ＪａｖａＳｃｒｉｐｔ ＳＤＫ２０５は、決済端末１０２のスプーフまたは一時的なドメイン名を作成することを担当し得る。これらの実施形態では、マーチャント・ブラウザ１０６は、決済端末１０２の端末識別番号（例えば、１２３５５５０００）をＪａｖａＳｃｒｉｐｔ ＳＤＫ２０５にロードする。様々な実施形態において、マーチャントが最初に決済端末１０２をセットアップしたときに、決済端末１０２の端末識別番号は、ＳａａＳベンダ１０８及び／またはマーチャント・ブラウザ１０６に前もって提供されている。
【００３５】
１つまたは複数の実施形態において、ＩＰレジストリサービス１１６に決済端末１０２の端末識別番号を送信すると、ＪａｖａＳｃｒｉｐｔ ＳＤＫ２０５は、それに応答して、決済端末１０２の対応する調整されたアドレスを受信する。これら実施形態では、スプーフドメイン名が、決済端末に割り当てられたＳＳＬ証明書と一致するように、ＪａｖａＳｃｒｉｐｔ ＳＤＫ２０５は、決済端末１０２に割り当てられたドメイン名のルートを、すべての小数点を取り除いた決済端末１０２の調整されたＩＰアドレスと組み合わせることによって、決済端末１０２のスプーフドメイン名を計算する（例えば、ＪａｖａＳｃｒｉｐｔ ＳＤＫ２０５は、１９２．１６８．００１．１００の調整されたＩＰアドレスおよびｐａｙｍｅｎｔｔｅｒｍｉｎａｌ．ｃｏｍのルートドメイン名を１９２１６８００１１００．ｐａｙｍｅｎｔｔｅｒｍｉｎａｌ．ｃｏｍに変換する）。理解されるように、様々な実施形態では、ＪａｖａＳｃｒｉｐｔ ＳＤＫは、決済端末（例えば、１９２．１６８．１．１００）のＩＰアドレスを受信し、小数点間にゼロを追加することによってＩＰアドレスを調整されたＩＰアドレスに変換して、各小数点間に３つの整数を有する１２個の整数のＩＰアドレス（例えば、１９２．１６８．００１．１００）を作成するように構成され得る。
【００３６】
さらに、さまざまな実施形態において、スプーフドメイン名は、インターネットプロトコルバージョン６（「ＩＰｖ６（Internet protocol version 6）」）構造を用いて作成されてもよい。たとえば、特定の実施形態では、２００１：ｄｂ８：：ｆｆ００：４２：８３２９のＩＰアドレスは、最初に各コロン間にゼロを追加することで３２個の整数の形式（例えば、２００１：０ｄｂ８：００００：００４２：００００：８ａ２ｅ：０３７０：７３３４）に変換される。この例を続けると、展開されたＩＰｖ６表現からコロンが削除され、結果としてのスプーフドメイン名は、「２００１０ｄｂ８００００００４２００００８ａ２ｅ０３７０７３３４．ｐａｙｍｅｎｔｔｅｒｍｉｎａｌ．ｃｏｍ」になる。
【００３７】
次に図１Ｇを参照すると、様々な実施形態において、マーチャント・ブラウザ１０６は、決済端末１０２に割り当てられたドメイン名に対するワイルドカードＳＳＬ証明書を含む決済端末１０２に動作可能に接続される（例えば、マーチャントは、ＴＭＳ１１０または他のコンポーネントを介して決済端末１０２にロードされたｐａｙｍｅｎｔｔｅｒｍｉｎａｌ．ｃｏｍのすべてのサブドメインに対するＳＳＬ証明書を購入している）。一実施形態では、マーチャント・ブラウザ１０６は、スプーフドメイン名を使用して、「ＨＴＴＰＳ（Hyper Text Transfer Protocol Secure）」で決済端末１０２に接続要求を送信する。
【００３８】
次に図１Ｈを参照すると、特定の実施形態では、マーチャント・ブラウザ１０６（例えば、ＪａｖａＳｃｒｉｐｔ ＳＤＫ）は、（例えば、セキュアなＨＴＴＰＳ接続の要求に応答して）決済端末１０２からＳＳＬ証明書を受信し、決済端末１０２から受信したＳＳＬ証明書を認証局１２０で検証して、決済端末１０２への接続を完了する。このプロセスについては後述する。
【００３９】
様々な実施形態において、図１Ｈに示されるように、マーチャント・ブラウザ１０６は、カスタムＤＮＳサービス１１８、認証局１２０、及び決済端末１０２に動作可能に接続される。幾つかの実施形態では、マーチャント・ブラウザ１０６は、図１Ｆを参照して説明したように、ＩＰレジストリサービス１１６またはＪａｖａＳｃｒｉｐｔ ＳＤＫ２０５によって作成された決済端末１０２のスプーフドメインネーム（例えば、１９２１６８１１００．ｐａｙｍｅｎｔｔｅｒｍｉｎａｌ．ｃｏｍ）でカスタムＤＮＳサービス１１８に照会する（queries）。少なくとも１つの実施形態では、カスタムＤＮＳサービスは、スプーフドメイン名（例えば、１９２１６８１１００．ｐａｙｍｅｎｔｔｅｒｍｉｎａｌ．ｃｏｍ）を決済端末１０２のＩＰアドレス（例えば、１９２．１６８．１．１００）に変換し、それに応答して、決済端末１０２のＩＰアドレス（例えば、１９２．１６８．１．１００）をマーチャント・ブラウザ１０６に送り返す。これらの実施形態では、マーチャント・ブラウザ１０６によるＨＴＴＰＳ接続要求は、決済端末１０２のＩＰアドレス（例えば、１９２．１６８．１．１００）を用いて決済端末１０２に直接的にルーティングされる。
【００４０】
様々な実施形態では、決済端末１０２は、マーチャント・ブラウザ１０６（ｐａｙｍｅｎｔｔｅｒｍｉｎａｌ．ｃｏｍ）に既知の決済端末１０２のドメイン名と一致する決済端末１０２のＳＳＬ証明書のコピーをマーチャント・ブラウザ１０６に送信することによってＨＴＴＰＳ接続要求に応答し、これにより、決済端末１０２とマーチャント・ブラウザ１０６との間でＳＳＬ「ハンドシェイク（handshake）」が発生する。様々な実施形態において、決済端末１０２との成功したＳＳＬハンドシェイクを取得すると、マーチャント・ブラウザ１０６は、接続を完了する前に認証局１２０と決済端末１０２のＳＳＬ証明書を検証する。この時点で、１つまたは複数の実施形態では、システムは、決済取引を処理するように構成されている。
【００４１】
例えば、図１Ｉに示されるように、様々な実施形態において、決済端末１０２は、セキュアなＴＣＰ／ＩＰ（ＨＴＴＰＳ）ならびに決済処理サービス１１４を介してマーチャント・ブラウザ１０６に動作可能に接続される。特定の実施形態では、マーチャント・ブラウザ１０６は、ＳａａＳベンダ１０８にも動作可能に接続される。この例では、幾つかの実施形態では、決済端末を介して決済取引が開始されると、決済端末１０２は、決済取引を決済処理サービス１１４に送信する。少なくとも１つの実施形態では、決済処理サービス１１４は、承認または否認応答を決済端末１０２に送り返す。これらの実施形態では、決済端末１０２は、決済処理サービス１１４から受信した応答に基づいて、ＪａｖａＳｃｒｉｐｔ ＳＤＫ２０５を用いてマーチャント・ブラウザ１０６に応答を送信する。特定の実施形態では、マーチャント・ブラウザ１０６は、決済処理サービス１１４から受信した応答でＳａａＳベンダ１０８を更新する。
【００４２】
例示的なアーキテクチャ
システムコンポーネント
次に図２を参照すると、本開示の一実施形態に従った、システム環境の例示的なコンポーネント図が示されている。上述の様々な実施形態では、システムは、ＳａａＳベンダ１０８と、端末管理ソフトウェア（「terminal management software:TMS」）１１０と、を含む。幾つかの実施形態において、システムは、決済端末１０２がマーチャント・ブラウザ１０６とセキュアに通信できるように、ＴＣＰ／ＩＰを用いた決済処理及び通信を可能にするカスタムＴＣＰ／ＩＰ決済アーキテクチャ２０３を含む。少なくとも１つの実施形態では、カスタムＴＣＰ／ＩＰ決済アーキテクチャ２０３は、決済処理サービス１１４、ＩＰレジストリサービス１１６、及びＤＮＳサービス１１８を含む。様々な実施形態において、カスタムＴＣＰ／ＩＰ決済アーキテクチャ２０３の１つまたは複数のコンポーネントは、プロセッサ、データベース、サーバ、及び他の計算要素を含み得る。
【００４３】
特定の実施形態では、システムはまた、マーチャントによって維持される複数のデバイスの相互接続されたネットワークを可能にするマーチャントのローカルエリアネットワーク（「ＬＡＮ」）を含む。特定の実施形態では、マーチャントのＬＡＮ２０１は、決済端末１０２及びマーチャント・ブラウザ１０６を含む。様々な実施形態において、マーチャントのＬＡＮ２０１は、有線（例えば、イーサネット、ＵＳＢなど）または無線（例えば、Ｗｉ−Ｆｉ、ブルートゥースなど）接続を介してカスタムＴＣＰ／ＩＰ決済アーキテクチャに接続されてもよい。一つまたは複数の実施形態では、マーチャントのＬＡＮ２０１は、有線（イーサネット、ＵＳＢなど）または無線（例えば、Ｗｉ−Ｆｉ、ブルートゥースなど）接続を介してＳａａＳベンダ１０８及び／またはＴＭＳ１１０に接続されてもよい。特定の実施形態では、マーチャントのＬＡＮ２０３の１つまたは複数のコンポーネントは、プロセッサ、データベース、サーバ、及び他の計算要素を含み得る。少なくとも１つの実施形態では、上述したように、マーチャント・ブラウザ１０６は、ＪａｖａＳｃｒｉｐｔ ＳＤＫ２０５を含む。
【００４４】
様々な実施形態によれば、ＪａｖａＳｃｒｉｐｔ ＳＤＫ２０５は、決済端末１０２のＥＣＲ ＡＰＩエンドポイントと通信し、決済端末１０２のスプーフドメイン名を計算することを担当し得る。一実施形態では、ＪａｖａＳｃｒｉｐｔ ＳＤＫ２０５は、すべての機能及びオブジェクトがＪａｖａＳｃｒｉｐｔ ＳＤＫ２０５内に含まれるように、自給式ライブラリ（self-sufficient library）を含む。特定の実施形態では、ＪａｖａＳｃｒｉｐｔ ＳＤＫ２０５は、ｆｌｕｅｎｔ関数コール（function call）をサポートし、その結果、関数は、成功および失敗のコールバックを有するオブジェクトを返すことができる。少なくとも１つの実施形態では、ＪａｖａＳｃｒｉｐｔ ＳＤＫ２０５は、同じＨＴＭＬページ上で複数の決済端末１０２をサポートし得る。様々な実施形態において、ＪａｖａＳｃｒｉｐｔ ＳＤＫ２０５は、任意の適切なウェブブラウザ（例えば、グーグルクロム（登録商標）、インターネットエクスプローラ（登録商標）、マイクロソフトエッジ（登録商標）、ファイアフォックス（登録商標）、サファリ（登録商標）など）で動作する。幾つかの実施形態では、ＪａｖａＳｃｒｉｐｔ ＳＤＫの機能は、スタンドアロンアプリケーション（例えば、マーチャント・ブラウザ及びＩＰレジストリサービス及び／またはＤＮＳサーバとインタフェースするスタンドアロンアプリケーション）によって実行／完了され得る。さらなる実施形態では、ＪａｖａＳｃｒｉｐｔ ＳＤＫの機能は、例えば、Ｎｏｄｅ．ｊｓなどの１つまたは複数のランタイム環境で実行／完了されてもよい。
【００４５】
サーバ／コンピューティングシステム
上記から、本明細書で説明されるプロセスの様々な態様は、システムの複数の部分を形成する複数のコンピュータシステム上で実行される複数のソフトウェアプロセスであることを理解されたい。従って、本明細書に記載されるシステムの様々な実施形態は、概して、様々なコンピュータハードウェアコンポーネントを含む特別に構成されたコンピュータとして具体化され、多くの場合、本明細書にさらに詳細に説明されるように、従来のまたは既知のコンピュータ、プロセス等と比較して、重要な追加の特徴を有することが理解されるであろう。本開示の範囲内の実施形態はまた、複数のコンピュータ実行可能命令または複数のデータ構造を搬送するかまたは有するためのコンピュータ可読媒体を含む。そのようなコンピュータ可読媒体は、コンピュータによってアクセス可能であるか、または通信ネットワークを介してダウンロード可能な任意の利用可能な媒体であり得る。一例として、限定するものではないが、このようなコンピュータ可読媒体は、ＲＡＭ、ＲＯＭ、フラッシュメモリ、ＥＥＰＲＯＭ、ＣＤ−ＲＯＭ、ＤＶＤ、または他の光ディスク記憶装置、磁気ディスク記憶装置、ソリッドステートドライブ（solid state drives : SSDs）、他のデータ記憶装置、セキュアデジタル（secure digital : SD）、フラッシュメモリ、メモリスティックなどの任意のタイプの取外し可能な不揮発性メモリ、またはコンピュータ実行可能な命令またはデータ構造の形態でコンピュータプログラムコードを転送または記憶するために使用することができ、コンピュータによってアクセス可能な任意の他の媒体を含み得る。
【００４６】
ネットワークまたは別の通信接続（有線、無線、または有線または無線の組み合わせ）を介して情報がコンピュータに転送または提供されると、コンピュータは、その接続をコンピュータ可読媒体として適切に認識する。従って、そのような接続は、適切にコンピュータ可読媒体と呼ばれ、コンピュータ可読媒体とみなされる。上記した組み合わせも、コンピュータ可読媒体の範囲内に含まれるべきである。コンピュータ実行可能命令は、例えば、コンピュータに特定の機能または１群の機能を実行させる命令及びデータを含む。
【００４７】
当業者は、本開示の態様が実装され得る適切なコンピューティング環境の特徴及び態様を理解するであろう。必須ではないが、特許請求の範囲に記載されたシステムの幾つかの実施形態は、先に説明したように、ネットワーク化された環境においてコンピュータによって実行されるプログラムモジュールまたはエンジンなどのコンピュータ実行可能命令の文脈で説明され得る。そのようなプログラムモジュールは、フローチャート、シーケンス図、例示的な画面表示、及びそのようなコンピュータプログラムモジュールを作成及び使用する方法を通信するために当業者によって使用される他の技術によって、しばしば反映及び示される。概して、プログラムモジュールは、コンピュータ内で特定のタスクを実行するか、または特定の定義されたデータタイプを実装するローカルまたはリモートなどの他のコンピュータに対するルーチン、プログラム、関数、オブジェクト、コンポーネント、データ構造、アプリケーションプログラミングインタフェース（application programming interface : API）コールを含む。コンピュータ実行可能命令、関連するデータ構造及び／またはスキーマ、及びプログラムモジュールは、本明細書で開示される方法のステップを実行するためのプログラムコードの複数の例を示す。そのような実行可能な命令または関連するデータ構造の特定のシーケンスは、そのようなステップで説明される機能を可能にするための対応する複数の動作の例を示す。
【００４８】
当業者はまた、特許請求の範囲に記載された及び／または説明されたシステム及び方法が、パーソナルコンピュータ、スマートフォン、タブレット、ハンドヘルドデバイス、マルチプロセッサシステム、マイクロプロセッサベースまたはプログラム可能な家電製品、ネットワーク化されたＰＣ、ミニコンピュータ、メインフレームコンピュータなどを含む多くのタイプのコンピュータシステム構成を有するネットワークコンピューティング環境において実施され得ることを理解するであろう。特許請求の範囲に記載されたシステムの実施形態は、複数のタスクが、（ハードワイヤードリンク、ワイヤレスリンク、またはハードワイヤードリンクとワイヤレスリンクの組み合わせによって）通信ネットワークを介してリンクされたローカル処理デバイス及びリモート処理デバイスによって実行される分散コンピューティング環境において実施される。分散コンピューティング環境では、複数のプログラムモジュールは、ローカルとリモートの両方のメモリ記憶装置に配置され得る。
【００４９】
説明されていない動作の様々な態様を具体化するための例示的なシステムは、処理ユニット、システムメモリ、及びシステムメモリを含む様々なシステムコンポーネントを処理ユニットに結合するシステムバスを含むコンピューティングデバイスを含む。コンピュータは、典型的には、データを読み書きするための１つ以上のデータ記憶装置を含む。データ記憶装置は、コンピュータによって実行可能な命令、データ構造、プログラムモジュール、及びコンピュータのためのその他のデータの不揮発性記憶装置を提供する。
【００５０】
本明細書で説明される機能を具体化するコンピュータプログラムコードは、典型的には、データ記憶装置に格納される１つまたは複数のプログラムモジュールを含む。このプログラムコードは、当業者に知られているように、典型的には、オペレーティングシステム、１つまたは複数のアプリケーションプログラム、他のプログラムモジュール、及びプログラムデータを含む。ユーザは、キーボード、タッチスクリーン、ポインティングデバイス、スクリプト言語で記述されたコンピュータプログラムコードを含むスクリプト、またはマイクなどの他の入力デバイス（図示せず）を介して、コンピュータにコマンドと情報を入力できる。これら及びその他の入力デバイスは、多くの場合、既知の電気接続、光学接続、または無線接続を介して処理ユニットに接続される。
【００５１】
説明したプロセスの多くの態様に影響を与えるコンピュータは、典型的には、以下にさらに説明する１つまたは複数のリモートコンピュータまたはデータソースへの論理接続を使用して、ネットワーク化された環境において動作する。リモートコンピュータは、別のパーソナルコンピュータ、サーバ、ルータ、ネットワークＰＣ、ピアデバイス、または他の共通ネットワークノードとすることができ、典型的には、システムが具体化されるメインコンピュータシステムに関して上述した要素の多くまたは全てを含む。複数のコンピュータ間の論理接続は、ローカルエリアネットワーク（ＬＡＮ）、広域ネットワーク（ＷＡＮ）、仮想ネットワーク（ＷＡＮまたはＬＡＮ）、及び無線ＬＡＮ（ＷＬＡＮ）を含み、これらは明細書において例として示されているが、これらに限定されるものではない。このようなネットワーク環境は、オフィス全体または企業全体のコンピュータネットワーク、イントラネット、及びインターネットで一般的である。
【００５２】
ＬＡＮまたはＷＬＡＮネットワーク環境で使用される場合、システムの態様を具体化するコンピュータシステムは、ネットワークインタフェースまたはアダプタを介してローカルネットワークに接続される。ＷＡＮまたはＷＬＡＮネットワーク環境で使用される場合、コンピュータは、モデム、ワイヤレスリンク、またはインターネットなどの広域ネットワーク上で通信を確立するための他のメカニズムを含んでもよい。ネットワーク化された環境では、コンピュータに関連して示されたプログラムモジュールまたはその一部は、遠隔データ記憶装置に記憶されてもよい。説明または図示されたネットワーク接続は例示的なものであり、広域ネットワークまたはインターネットを介して通信を確立する他の機構を使用してもよいことが理解されよう。
【００５３】
種々の態様が好ましい実施形態に関連して説明されてきたが、特許請求の範囲に記載されたシステムの追加の態様、特徴、及び方法は、当業者によって、本明細書の説明から容易に識別できるであろう。本明細書に記載されたもの以外の開示及び特許請求の範囲に記載されたシステムの多くの実施形態及び適応、ならびに多くの変形、改変、及び同等の構成及び方法は、特許請求の範囲の内容または範囲から逸脱することなく、本開示及びその前述の説明から明らかになるか、または本開示及びその説明によって合理的に示唆されるであろう。さらに、本明細書に記載され、特許請求の範囲に記載されている様々なプロセスの複数のステップの任意のシーケンス及び／または時間的順序は、特許請求の範囲に記載されているシステムを実行するために考えられる最良のモードであると考えられるものである。様々なプロセスの複数のステップは、好ましいシーケンスまたは時間的順序であるとして示され、説明されてもよいが、そのようなプロセスの複数のステップは、特定の意図された結果を達成するためのそのような特定の指示がない限り、特定のシーケンスまたは順序で実行されることに限定されないことも理解されたい。多くの場合、そのようなプロセスの複数のステップは、様々な異なるシーケンス及び順序で実施され得るが、依然として特許請求の範囲に記載されたシステムの範囲内にある。さらに、幾つかのステップは、同時に、同じ期間に、または他のステップと同期して実施されてもよい。
【００５４】
例示的なプロセス
例示的なＪａｖａＳｃｒｉｐｔ ＳＤＫプロセス
図３は、本開示の一実施形態に従った、例示的なＪａｖａＳｃｒｉｐｔ ＳＤＫ（例えば、ＪａｖａＳｃｒｉｐｔ ＳＤＫ２０５）プロセス３００の例示的なフローチャートを例示する。当業者によって理解されるように、図３に示されるステップ及びプロセス（及びここに示され説明されている他のすべてのフローチャート及びシーケンス図）は、同時かつ連続的に実行することができ、典型的には非同期であり、独立しており、必ずしも示される順序で実行されるわけではない。本明細書の説明から理解されるように、図３に示されるような複数のステップは、ＪａｖａＳｃｒｉｐｔ ＳＤＫ、マーチャント・ブラウザ（例えば、ＪａｖａＳｃｒｉｐｔ ＳＤＫと組み合わせて）及び／またはシステムの他のコンポーネントによって実行され得る。
【００５５】
一実施形態では、図３に示すように、例示的なプロセスはステップ３０２で始まり、ＪａｖａＳｃｒｉｐｔ ＳＤＫが、マーチャント・ブラウザにインストールされる。様々な実施形態において、マーチャント・ブラウザは、デスクトップコンピュータ、タブレットコンピュータ、モバイルデバイス、または他の同様の計算デバイスであり得る電子キャッシュレジスタ（electronic cash register : ECR）に含まれるか、またはそれ上で実行され得る。
【００５６】
ステップ３０４で、ＪａｖａＳｃｒｉｐｔ ＳＤＫは、マーチャント・ブラウザまたは他のシステムコンポーネントから決済端末の端末識別番号などの固有の識別子を受信する。一実施形態では、システムは、ＳａａＳベンダから固有の識別子を取得するように構成される。様々な実施形態において、決済端末の固有の識別子は、ＥＣＲに格納され、マーチャント・ブラウザを介してアクセス可能であってもよい。特定の実施形態では、決済端末の固有の識別子は、リモートデータベースに格納されてもよい。
【００５７】
次にステップ３０６に移ると、ＪａｖａＳｃｒｉｐｔ ＳＤＫは、決済端末の固有の識別子をＩＰレジストリサービスに送信し、代わりに、ＩＰレジストリサービスからの決済端末のＩＰアドレス及びリスニングポートを要求する。ステップ３０８で、システムは、ＩＰレジストリサービスから調整された決済端末のＩＰアドレス及びリスニングポートを受信する。
【００５８】
ステップ３１０で、ＪａｖａＳｃｒｉｐｔ ＳＤＫは、決済端末のドメイン名が決済端末に割り当てられたＳＳＬ証明書のドメイン名と一致するように、決済端末のスプーフドメイン名を計算するように構成される。一実施形態では、決済端末の調整されたＩＰアドレスおよびリスニングポートを受信した後に、システムは、決済端末に割り当てられたドメイン名のルートを、すべての小数点を取り除いた決済端末の調整されたＩＰアドレスと組み合わせることによって、決済端末のスプーフドメイン名を計算する（例えば、１９２．１６８．１．１００のＩＰアドレスおよびｐａｙｍｅｎｔｔｅｒｍｉｎａｌ．ｃｏｍのルートドメイン名が、１９２１６８００１１００．ｐａｙｍｅｎｔｔｅｒｍｉｎａｌ．ｃｏｍに変換される）。特定の実施形態では、システムは、英数字の任意の適切な組み合わせを使用することによって、決済端末のスプーフドメイン名を計算してもよい。
【００５９】
ステップ３１２において、ＪａｖａＳｃｒｉｐｔ ＳＤＫは、ステップ３１０で上記した計算されたスプーフドメイン名を使用して、決済端末とのセキュアな接続要求を開始する。様々な実施形態において、セキュアな接続要求は、ＴＣＰ／ＩＰプロトコルを用いて開始される。少なくとも１つの実施形態では、セキュアな接続要求は、ＨＴＴＰＳ要求である。理解されるように、ステップ３１２において開始されたセキュアな接続要求は、ルートドメイン名（例えば、ｐａｙｍｅｎｔｔｅｒｍｉｎａｌ．ｃｏｍ）のドメイン登録会社（例えば、ＧｏＤａｄｄｙ．ｃｏｍ（登録商標））にルーティングされる。様々な実施形態では、ドメイン登録会社は、ここでさらに説明するように、カスタムＤＮＳサービスを指すＡネーム・サーバ・レコードを以前に作成したマーチャントに基づいて、要求をカスタムＤＮＳサービスにルーティングする。この説明のために、Ａネーム・サーバ・レコードは、サブドメインを１組のネームサーバに委任するように用いられ、複数のドメイン名を対応するＩＰアドレスにマッピングすることに特化している。したがって、この例では、ルートドメイン「ｐａｙｍｅｎｔｔｅｒｍｉｎａｌ．ｃｏｍ」を含む任意のウェブアドレスが、カスタムＤＮＳサービスにルーティングされ、ウェブアドレスに対応するＩＰアドレスが検索され得る。
【００６０】
ステップ３１４において、ＪａｖａＳｃｒｉｐｔ ＳＤＫは、カスタムＤＮＳサービスから決済端末のＩＰアドレスを受信する（例えば、カスタムＤＮＳサービスは、１９２１６８００１１００．ｐａｙｍｅｎｔｔｅｒｍｉｎａｌ．ｃｏｍを受信し、１９２．１６８．１．１００を返す）。一実施形態では、システムは、決済端末のＩＰアドレスを一時的な記憶場所（例えば、キャッシュ）に格納するように構成される。
【００６１】
ステップ３１６において、ＪａｖａＳｃｒｉｐｔ ＳＤＫは、決済端末のＩＰアドレスを使用して決済端末に直接的に、ステップ３１２で開始されたセキュアな接続要求をルーティングするように構成される。
【００６２】
様々な実施形態において、ステップ３１８において、マーチャント・ブラウザは、（幾つかの実施形態では、ＪａｖａＳｃｒｉｐｔ ＳＤＫを用いて）決済端末のドメイン名をＳＳＬ証明書に割り当てられたドメイン名と照合することによって、決済端末のセキュリティ証明書を検証する。特定の実施形態では、決済端末のドメイン名がＳＳＬ証明書に割り当てられたドメイン名と一致する場合、セキュアなＳＳＬ「ハンドシェイク」が発生し、マーチャント・ブラウザと決済端末との間で通信の暗号化チャネルをオープンする（opened）。さまざまな実施形態において、セキュアなＳＳＬハンドシェイクを取得すると、システムは、事前認証機関を使用して決済端末のセキュリティ証明書を検証し、提示されたＳＳＬ証明書を確認し、その真正性を検証する。
【００６３】
例示的なＩＰレジストリプロセス
図４は、本開示の一実施形態に従った、例示的なＩＰレジストリプロセス４００の例示的なフローチャートを例示する。様々な実施形態において、例示的なプロセスはステップ４０２で始まり、ＩＰレジストリサービスは、セキュリティトークン（security token）を受信する。この説明の目的上、セキュリティトークンは、１回だけ使用する（single-use）ログインキーを生成するソフトウェア構成である。様々な実施形態では、セキュリティトークンは、システムが決済端末と通信できるように、決済端末へのアクセスを許可するように動作可能であってもよい。特定の実施形態では、セキュリティトークンは、決済端末、マーチャント・ブラウザ、またはシステムの他の動作可能に接続されたコンポーネントから受信し得る。
【００６４】
ステップ４０４において、ＩＰレジストリは、決済端末の構成情報を受信するように構成される。１つまたは複数の実施形態において、システムは、マーチャントから構成情報を受け取ってもよい。様々な実施形態では、システムは、決済端末、端末管理ソフトウェア、マーチャント・ブラウザ、その他のコンポーネントから構成情報を受信してもよい。特定の実施形態では、構成情報は、端末識別番号、シリアル番号、他の固有の識別子、ＭＡＣアドレス、バージョン番号、デバイスタイプ、及び他の同様の情報を含み得る。１つまたは複数の実施形態において、構成情報は、ローカルデータベース及び／またはリモートデータベースに格納され得る。
【００６５】
ステップ４０６において、ＩＰレジストリは、決済端末から決済端末のＩＰアドレス及びリスニングポートを受信し、ＩＰアドレス及びリスニングポートは、決済端末の登録情報とともに格納されるか、そうでなければ決済端末の登録情報と照合される。１つまたは複数の実施形態において、システムは、決済端末からＩＰアドレス及びリスニングポートを受信する。一実施形態では、システムは、ステップ４０２において取得されたセキュリティトークンで認証した後、決済端末からＩＰアドレスを受信する。特定の実施形態では、システムは、ＴＭＳ、マーチャント・ブラウザ、または他の適切なコンポーネントからＩＰアドレス及びリスニングポートを受信し得る。一実施形態では、ＩＰアドレス及びリスニングポートは、ローカルデータベースに格納され得る。別の実施形態では、ＩＰアドレス及びリスニングポートは、リモートデータベースに格納されてもよい。
【００６６】
ステップ４０８において、ＩＰレジストリサービスは、ステップ４０６において受信した決済端末のＩＰアドレスに基づいて、決済端末の調整されたＩＰアドレスを計算するように構成される。１つまたは複数の実施形態において、ステップ４０６において受信したＩＰアドレスが１２個の整数を含まない場合、ＩＰアドレスの各小数点の前後の各部分に３つの整数が含まれるように、ＩＰレジストリサービスは、受信したＩＰアドレスを調整する。様々な実施形態において、ＩＰレジストリサービスは、３つの整数が各部分に含まれるまで、３つの整数を含まない各部分に左から右にゼロを追加することによって受信したＩＰアドレスを調整するように構成される（例えば、１９２．１６８．１．１００のＩＰアドレスは、１９２．１６８．００１．１００に調整される）。
【００６７】
ステップ４１０において、ＩＰレジストリは、ＪａｖａＳｃｒｉｐｔ ＳＤＫ及び／またはマーチャント・ブラウザから決済端末の端末識別番号（または他の固有の識別子）を受信するように構成される。様々な実施形態において、ステップ４１２で、ＩＰレジストリは、受信した端末識別番号を、受信した端末識別番号に関連付けられた決済端末に対して照合するように構成される。特定の実施形態では、端末識別番号は、対応する決済端末のＩＰアドレス、ＭＡＣアドレス、及びリスニングポートとともにテーブルに格納される。１つまたは複数の実施形態では、システムは、データベースクエリ（database query）または他の適切な検索方法を実行して、受信した端末識別番号に関連付けられたＩＰアドレス及びリスニングポートを特定し得る。
【００６８】
ステップ４１０において端末識別番号を受信したことに応答して、ステップ４１２において関連するＩＰアドレス及びリスニングポートを特定すると、様々な実施形態では、ステップ４１４において、ＩＰレジストリは、ステップ４０８において計算された調整済みのＩＰアドレスを送信し、決済端末のリスニングポートをＪａｖａＳｃｒｉｐｔ ＳＤＫ及び／またはマーチャント・ブラウザに送り返す。
【００６９】
例示的なカスタムＤＮＳサービスプロセス
次に図５を参照すると、本開示の一実施形態に従った、例示的なカスタムＤＮＳサービスプロセス５００の例示的なフローチャートが示されている。理解されるように、スプーフドメイン名（例えば、１９２１６８００１１００．ｐａｙｍｅｎｔｔｅｒｍｉｎａｌ．ｃｏｍ）を用いて開始されたセキュアな接続要求は、ルートドメイン名（例えば、ｐａｙｍｅｎｔｔｅｒｍｉｎａｌ．ｃｏｍ）のドメイン登録会社（例えば、ＧｏＤａｄｄｙ．ｃｏｍ（登録商標））にルーティングされる。特定の実施形態では、カスタムＤＮＳサービスが、スプーフドメイン名のルーティング先を決定するように、ドメイン登録会社は、カスタムＤＮＳサービスを指すＡネーム・サーバ・レコードを以前に作成したマーチャントに基づいて、要求をカスタムＤＮＳサービスにルーティングする。１つまたは複数の実施形態において、システムによってホストされるネームサーバは、スプーフドメイン名に基づいて、決済端末のＩＰアドレスを計算する。
【００７０】
様々な実施形態では、例示的なプロセスはステップ５０２で始まり、ＤＮＳサービスは、ＪａｖａＳｃｒｉｐｔ ＳＤＫから決済端末のスプーフドメイン名を受信するように構成される。様々な実施形態において、スプーフドメイン名は、文字、数字、または記号を含んでもよい。特定の実施形態において、スプーフドメイン名は、決済端末のＩＰアドレスに類似するパターンを含み得る。
【００７１】
ステップ５０４において、ＤＮＳサービスは、システムのネームサーバに基づいて、決済端末のスプーフドメイン名を決済端末のＩＰアドレスに変換する。ネームサーバは、上述したように決済端末のドメイン名を決済端末のＩＰアドレスにマッピングする。本明細書において説明されるように、決済端末のＩＰアドレスは、スプーフドメイン名に含まれ得る。たとえば、ＩＰアドレスはｘｘｘであり、スプーフドメイン名はｘｘｘ．ｙｙｙ．ｃｏｍであり得る。この例を続けて、システムは、ルートドメイン名（たとえば、ｙｙｙ．ｃｏｍ）を削除することによって、スプーフドメイン名（たとえば、ｘｘｘ．ｙｙｙ．ｃｏｍ）をＩＰアドレス（たとえば、ｘｘｘ）に変換する。特定の実施形態において、システムは、３つまたは４つの整数ごとなど、特定の間隔で区切り（例えば、小数、ピリオド、コロン、セミコロンなど）を追加し得る。
【００７２】
ステップ５０８において、ＤＮＳサービスは、決済端末のＩＰアドレスをＪａｖａＳｃｒｉｐｔ ＳＤＫに送り返すように構成される。
ＤＮＳサービスプロセス５００は、様々な実施形態において、マーチャント・ブラウザが決済端末に割り当てられたスプーフドメイン名を用いて決済端末を特定することを可能にするメカニズムを提供する。特定の実施形態では、ＤＮＳサービスプロセス５００は、決済端末のＳＳＬ証明書に一致し且つ依然として決済端末にマッピングされているスプーフドメイン名を用いた、ＳａａＳベンダーソフトウェアを実行するマーチャント・ブラウザと、決済端末との間のセキュアなＴＣＰ／ＩＰ接続を可能にする。
【００７３】
１つまたは複数の実施形態において、ＤＮＳサービスは、上述したように決済端末のＩＰアドレスを計算する（例えば、ＤＮＳサービスは、任意のデータベースなどのＩＰアドレスを検索しない）。少なくとも１つの実施形態では、ＤＮＳサービス機能は、本明細書において説明されるＩＰレジストリサービスと組み合わされる。理解されるように、ＤＮＳサービスとＩＰレジストリサービスの機能が組み合わされる実施形態では、システムは、ドメイン名に追加された事前設定値に基づいて、決済端末のＩＰアドレスを検索し（look up）得る（例えば、事前設定値及びＩＰアドレスは、ＩＰレジストリサービスの一部としてデータベースに格納されるため）。これらの実施形態では、決済端末のスプーフドメイン名は、ドメイン名に付けられる任意の適切な値（たとえば、固有の識別子＋ドメイン名）を含み、システムは、決済端末の対応するＩＰアドレスを検索することによって、スプーフドメイン名を受信したときに決済端末のＩＰアドレスを返すことができる。
【００７４】
代替実施形態
システムの代替実施形態は、幾つかの点で、上記した様々なコンポーネントに類似する特徴を備えてもよい。これらの代替実施形態の選択された特徴的な特徴を以下に説明する。
【００７５】
追加のアプリケーション
電子キャッシュレジスタ用のＳａａＳアプリケーションに加えて、本開示は、顧客関係管理アプリケーション、ファイルおよびデータ共有アプリケーション、財務管理アプリケーション、メッセージングアプリケーション、および他の同様のソフトウェアアプリケーションを含むがこれらに限定されない、他の非互換ハードウェアデバイスへのセキュアな接続を必要とする他のＳａａＳアプリケーションを企画する。
【００７６】
さらに、１つまたは複数の実施形態において、システムは、ソフトウェアコンポーネントおよび／またはミドルウェア、例えば、オペレーティングシステムまたはデータベースとアプリケーションとの間のブリッジとして機能するソフトウェアを含み得る。これらの実施形態では、ソフトウェアコンポーネントおよび／またはミドルウェアは、明細書において説明されるシステム（例えば、ＩＰレジストリサービス及び／又はＤＮＳサービス）と通信して、決済端末および他の「ＩｏＴ（Internet of Things）」デバイスを含むが、これらに限定されない、様々なデバイスとのＴＣＰ／ＩＰプロトコルを用いたセキュアな接続を生成し得る。ミドルウェアの複数の例は、トランザクション処理モニタ、リモートコール・プロシージャ、メッセージ・キュー、自動バックアップシステムなどを含むが、これらに限定されない。
【００７７】
追加のハードウェアコンポーネント
この開示は、決済端末に限定されない。動的ＩＰアドレスを使用し、そうでなければ非互換性のＳａａＳアプリケーションへのＴＣＰ／ＩＰプロトコルを用いたセキュアな接続を必要とする他のハードウェアコンポーネントまたはデバイスが企画され、これには、バーコードスキャナ、スマートフォンおよび他のスマートデバイス、タブレットコンピュータ、デスクトップコンピュータ、ウェアラブルデバイス、データ取得デバイス、内部ネットワーク上のサーバ、および任意の他のブラウザ対応および／または「ＩｏＴ（Internet of Things）」デバイスが含まれるが、これらに限定されない。理解されるように、システムは、ネットワーク接続された任意のデバイスを用いて機能し、特定の実施形態では、ＨＴＴＰＳ ＡＰＩを公開し得る。
【００７８】
さらに、本開示は、デバイスの発見、および複数のブラウザ対応および／またはＩｏＴデバイス間のおよびセキュアな接続を意図している。これらの実施形態では、ＩＰレジストリサービスおよびＤＮＳサービスはローカルネットワークにインストールされて、このようなデバイス間接続を可能にする。
【００７９】
追加の側面
次に、本システム及び方法の様々な態様について説明する。以下の複数の態様のいずれかが、以下に記載される他の態様または本明細書に記載される特徴を組み込み、含むことができることは、当業者によって理解されるであろう。従って、以下の複数の態様は、態様の任意の組み合わせを含むと理解されるべきであり、以下に提示される組み合わせに限定されるべきではない。例えば、第２の態様は第１の態様のＩＰレジストリサービスを含むが、第１６の態様、第１の態様、または第４２の態様の特徴も含み得る。
【００８０】
第１の態様に従った、様々な実施形態におけるシステム及び方法は、決済端末とマーチャント・コンピューティングシステムとの間のセキュアな通信を可能にするＴＣＰ／ＩＰアーキテクチャを含み、ＴＣＰ／ＩＰアーキテクチャは、１つまたは複数のプロセッサを含むＩＰレジストリサービスであって、ＩＰレジストリサービスは、ネットワークを介して決済端末及びマーチャント・ブラウザと動作可能に通信し、ＩＰレジストリサービスは、決済端末から、決済端末に関連付けられたＩＰアドレス、ポート、固有の識別子を受信すること、マーチャント・ブラウザから、決済端末の固有の識別子を受信すること、固有の識別子を受信したことに応答して、マーチャント・ブラウザがＩＰアドレスおよびポートを用いてＴＣＰ／ＩＰプロトコルで決済端末と通信できるように、決済端末のＩＰアドレスとポートをマーチャント・ブラウザに送信すること、を実行する、ＩＰレジストリサービスと、ＤＮＳ（domain name system）であって、決済端末のＩＰアドレスおよびルートドメイン名を含むウェブアドレスのＤＮＳルックアップ要求をマーチャント・ブラウザから受信すること、ウェブアドレスのＤＮＳルックアップ要求を受信したことに応答して、ルートドメイン名を削除することによって、ウェブアドレスを決済端末のＩＰアドレスに変換すること、マーチャント・ブラウザがＨＴＴＰＳプロトコルを用いて決済端末と通信できるように、決済端末のＩＰアドレスをマーチャント・ブラウザに送信すること、を実行するＤＮＳと、を備える。
【００８１】
第２の態様に従った、第１の態様または任意の他の態様のＴＣＰ／ＩＰアーキテクチャまたは方法において、ＤＮＳは、ルートドメイン名を除去し、ＩＰアドレスを再フォーマットすることによって、ウェブアドレスを決済端末のＩＰアドレスに変換する。
【００８２】
第３の態様に従った、第２の態様または任意の他の態様のＴＣＰ／ＩＰアーキテクチャまたは方法において、ＤＮＳは、ＩＰアドレスに小数点を挿入することによって、ＩＰアドレスを再フォーマットする。
【００８３】
第４の態様に従った、第３の態様または任意の他の態様のＴＣＰ／ＩＰアーキテクチャまたは方法において、ウェブアドレスは、調整されたフォーマットのＩＰアドレスを含む。
【００８４】
第５の態様に従った、第４の態様または任意の他の態様のＴＣＰ／ＩＰアーキテクチャまたは方法において、ＩＰアドレスの調整されたフォーマットは、任意の小数点のないＩＰアドレスを含む。
【００８５】
第６の態様に従った、第５の態様または任意の他の態様のＴＣＰ／ＩＰアーキテクチャまたは方法において、ＩＰレジストリサービスは、決済端末のＩＰアドレスをルートドメイン名と組み合わせることによって、ウェブアドレスを作成する。
【００８６】
第７の態様に従った、第６の態様または任意の他の態様のＴＣＰ／ＩＰアーキテクチャまたは方法において、マーチャント・ブラウザは、決済端末に関連付けられたセキュリティ証明書およびウェブアドレスの真正性の検証を認証局に要求する。
【００８７】
第８の態様に従った、第７の態様または任意の他の態様のＴＣＰ／ＩＰアーキテクチャまたは方法において、マーチャント・ブラウザは、セキュリティ証明書の真正性の検証を受信すると、ＨＴＴＰＳプロトコルを用いて決済端末と通信する。
【００８８】
第９の態様に従った、第８の態様または任意の他の態様のＴＣＰ／ＩＰアーキテクチャまたは方法において、ＩＰレジストリサービスおよびＤＮＳは、動作可能に接続されている。
【００８９】
第１０の態様に従った、第９の態様または任意の他の態様のＴＣＰ／ＩＰアーキテクチャまたは方法において、決済処理システムをさらに備える。
第１１の態様に従った、第１０の態様または任意の他の態様のＴＣＰ／ＩＰアーキテクチャまたは方法において、決済処理システムは、暗号化された決済ペイロードを決済端末から受信すること、暗号化された決済ペイロードが侵害されたかどうかを判定すること、決済ペイロードが侵害されていないと判定すると、暗号化された決済ペイロードを復号化すること、を実行する。
【００９０】
第１２の態様に従った、様々な実施形態におけるシステム及び方法は、コンピュータによって実行される方法を含み、該方法は、ＩＰレジストリサービスにおいて、決済端末から、決済端末に関連付けられたＩＰアドレス、ポート、固有の識別子を受信すること、ＩＰレジストリサービスにおいて、マーチャント・ブラウザから、決済端末に関連付けられた固有の識別子を受信すること、固有の識別子を受信したことに応答して、マーチャント・ブラウザがＩＰアドレスおよびポートを用いてＴＣＰ／ＩＰプロトコルで決済端末と通信できるように、決済端末のＩＰアドレスおよびポートをマーチャント・ブラウザに送信すること、ＤＮＳ（domain name system）において、決済端末のＩＰアドレスおよびルートドメイン名を含むウェブアドレスのＤＮＳルックアップ要求をマーチャント・ブラウザから受信すること、ウェブアドレスのＤＮＳルックアップ要求を受信したことに応答して、ＤＮＳにおいて、ルートドメイン名を削除することによって、ウェブアドレスを決済端末のＩＰアドレスに変換すること、ＤＮＳが、マーチャント・ブラウザがＨＴＴＰＳプロトコルを用いて決済端末と通信できるように、決済端末のＩＰアドレスをマーチャント・ブラウザに送信すること、を備える。
【００９１】
第１３の態様に従った、第１２の態様または任意の他の態様のシステムまたは方法において、ＤＮＳは、ルートドメイン名を除去し、ＩＰアドレスを再フォーマットすることによって、ウェブアドレスを決済端末のＩＰアドレスに変換する。
【００９２】
第１４の態様に従った、第１３の態様または任意の他の態様のシステムまたは方法において、ＤＮＳは、ＩＰアドレスに小数点またはコロンを挿入することによって、ＩＰアドレスを再フォーマットする。
【００９３】
第１５の態様に従った、第１４の態様または任意の他の態様のシステムまたは方法において、ウェブアドレスは、調整されたフォーマットのＩＰアドレスを含む。
第１６の態様に従った、第１５の態様または任意の他の態様のシステムまたは方法において、ＩＰアドレスの調整されたフォーマットは、任意の小数点またはコロンのないＩＰアドレスを含む。
【００９４】
第１７の態様に従った、第１６の態様または任意の他の態様のシステムまたは方法において、ＩＰレジストリサービスは、決済端末のＩＰアドレスをルートドメイン名と組み合わせることによって、ウェブアドレスを作成する。
【００９５】
第１８の態様に従った、第１７の態様または任意の他の態様のシステムまたは方法において、マーチャント・ブラウザは、決済端末に関連付けられたセキュリティ証明書およびウェブアドレスの真正性の検証を認証局に要求する。
【００９６】
第１９の態様に従った、第１８の態様または任意の他の態様のシステムまたは方法において、マーチャント・ブラウザは、セキュリティ証明書の真正性の検証を受信すると、ＨＴＴＰＳプロトコルを用いて決済端末と通信する。
【００９７】
第２０の態様に従った、第１９の態様または任意の他の態様のシステムまたは方法において、ＩＰレジストリサービスおよびＤＮＳは、動作可能に接続されている。
第２１の態様に従った、様々な実施形態におけるシステム及び方法は、ＨＴＴＰＳ／ＴＬＳ対応デバイスとローカルネットワーク内のソフトウェアコンポーネントとの間のセキュアな通信を可能にするＴＣＰ／ＩＰアーキテクチャを含み、該ＴＣＰ／ＩＰアーキテクチャは、１つまたは複数のプロセッサを含むＩＰレジストリサービスであって、ＩＰレジストリサービスは、ネットワークを介してＨＴＴＰＳ／ＴＬＳ対応デバイスおよびソフトウェアコンポーネントと動作可能に通信し、ＩＰレジストリサービスは、ＨＴＴＰＳ／ＴＬＳ対応デバイスから、ＨＴＴＰＳ／ＴＬＳ対応デバイスに関連付けられたＩＰアドレス、ポート、固有の識別子を受信すること、ソフトウェアコンポーネントから、ＨＴＴＰＳ／ＴＬＳ対応デバイスの固有の識別子を受信すること、固有の識別子を受信したことに応答して、ソフトウェアコンポーネントがＩＰアドレス及びポートを用いてＴＣＰ／ＩＰプロトコルでＨＴＴＰＳ／ＴＬＳ対応デバイスと通信できるように、ＨＴＴＰＳ／ＴＬＳ対応デバイスのＩＰアドレス及びポートをソフトウェアコンポーネントに送信すること、を実行する、ＩＰレジストリサービスと、ＤＮＳ（domain name system）であって、ＨＴＴＰＳ／ＴＬＳ対応デバイスのＩＰアドレスおよびルートドメイン名を含むウェブアドレスのＤＮＳルックアップ要求をソフトウェアコンポーネントから受信すること、ウェブアドレスのＤＮＳルックアップ要求を受信したことに応答して、ルートドメイン名を削除することによって、ウェブアドレスをＨＴＴＰＳ／ＴＬＳ対応デバイスのＩＰアドレスに変換すること、ソフトウェアコンポーネントがＨＴＴＰＳプロトコルでＨＴＴＰＳ／ＴＬＳ対応デバイスと通信できるように、ＨＴＴＰＳ／ＴＬＳ対応デバイスのＩＰアドレスをソフトウェアコンポーネントに送信すること、を実行するＤＮＳと、を備える。
【００９８】
第２２の態様に従った、第２１の態様または任意の他の態様のＴＣＰ／ＩＰアーキテクチャまたは方法において、ソフトウェアコンポーネントは、ブラウザと通信するミドルウェアである。
【００９９】
第２３の態様に従った、第２２の態様または任意の他の態様のＴＣＰ／ＩＰアーキテクチャまたは方法において、ソフトウェアコンポーネントは、ブラウザにプラグインとしてインストールされたＪａｖａＳｃｒｉｐｔ ＳＤＫである。
【０１００】
第２４の態様に従った、第２３の態様または任意の他の態様のＴＣＰ／ＩＰアーキテクチャまたは方法において、ソフトウェアコンポーネントは、１つまたは複数のＩｏＴデバイスと接続するためのサードパーティソフトウェアである。
【０１０１】
第２５の態様に従った、様々な実施形態におけるシステム及び方法は、方法を含み、該方法は、ＨＴＴＰＳ／ＴＬＳ対応デバイスから、ＨＴＴＰＳ／ＴＬＳ対応デバイスに関連付けられたＩＰアドレス、ポート、固有の識別子を受信すること、ソフトウェアコンポーネントから、ＨＴＴＰＳ／ＴＬＳ対応デバイスの固有の識別子を受信すること、固有の識別子を受信したことに応答して、ブラウザがＩＰアドレス及びポートを用いてＴＣＰ／ＩＰプロトコルでＨＴＴＰＳ／ＴＬＳ対応デバイスと通信できるように、ＨＴＴＰＳ／ＴＬＳ対応デバイスのＩＰアドレス及びポートをソフトウェアコンポーネントに送信すること、ＨＴＴＰＳ／ＴＬＳ対応デバイスのＩＰアドレスおよびルートドメイン名を含むウェブアドレスのＤＮＳルックアップ要求をブラウザから受信すること、ウェブアドレスのＤＮＳルックアップ要求を受信したことに応答して、ルートドメイン名を削除することによって、ウェブアドレスをＨＴＴＰＳ／ＴＬＳ対応デバイスのＩＰアドレスに変換すること、ソフトウェアコンポーネントがＨＴＴＰＳプロトコルでＨＴＴＰＳ／ＴＬＳ対応デバイスと通信できるように、ＨＴＴＰＳ／ＴＬＳ対応デバイスのＩＰアドレスをブラウザに送信すること、を備える。
【０１０２】
第２６の態様に従った、第２５の態様または任意の他の態様のシステムまたは方法において、ソフトウェアコンポーネントは、ブラウザと通信するミドルウェアである。
第２７の態様に従った、第２６の態様または任意の他の態様のシステムまたは方法において、ソフトウェアコンポーネントは、ブラウザ上にプラグインとしてインストールされたＪａｖａＳｃｒｉｐｔ ＳＤＫである。
【０１０３】
第２８の態様に従った、第２７の態様または任意の他の態様のシステムまたは方法において、ソフトウェアコンポーネントは、１つまたは複数のＩｏＴデバイスと接続するためのサードパーティソフトウェアである。
【０１０４】
第２９の態様に従った、様々な実施形態におけるシステムおよび方法は、システムを含み、該システムは、ＩＰレジストリサービスを含み、ＩＰレジストリサービスは、ブラウザ対応決済端末およびマーチャント・ブラウザと動作可能に通信し、ＩＰレジストリサービスは、ブラウザ対応決済端末から、ブラウザ対応決済端末のローカルＩＰアドレス、ポート、シリアル番号を受信すること、マーチャント・ブラウザから、ブラウザ対応決済端末のシリアル番号を受信すること、シリアル番号を受信したことに応答して、マーチャント・ブラウザがＩＰアドレス及びポートを用いてＴＣＰ／ＩＰプロトコルでブラウザ対応決済端末と通信できるように、ブラウザ対応決済端末のＩＰアドレス及びポートをマーチャント・ブラウザに送信すること、を行うように構成される。
【０１０５】
第３０の態様に従った、様々な実施形態におけるシステムおよび方法は、サーバを含み、該サーバは、ＤＮＳ（domain name system）を含み、該ＤＮＳは、決済端末のＩＰアドレスを含むウェブアドレスのＤＮＳルックアップ要求をマーチャント・ブラウザから受信することであって、マーチャント・ブラウザは、決済端末のＩＰアドレスをウェブアドレスに変換する、受信すること、ウェブアドレスのＤＮＳルックアップ要求を受信したことに応答して、ウェブアドレスを決済端末のＩＰアドレスに変換すること、決済端末のＩＰアドレスをマーチャント・ブラウザのブラウザに送信すること、を実行する。
【０１０６】
第３１の態様に従った、様々な実施形態におけるシステムおよび方法は、システムを含み、該システムは、ＩＰレジストリサービスを含むコンピュータサーバであって、ＩＰレジストリサービスは、ブラウザ対応決済端末及びマーチャント・ブラウザと動作可能に通信し、ＩＰレジストリサービスは、ブラウザ対応決済端末から、ブラウザ対応決済端末のローカルＩＰアドレス、ポート、シリアル番号を受信すること、マーチャント・ブラウザから、ブラウザ対応決済端末のシリアル番号を受信すること、シリアル番号を受信したことに応答して、マーチャント・ブラウザがＩＰアドレス及びポートを用いてＴＣＰ／ＩＰプロトコルでブラウザ対応決済端末と通信できるように、ブラウザ対応決済端末のＩＰアドレス及びポートをマーチャント・ブラウザに送信すること、を行うように構成される、コンピュータサーバと、ＤＮＳ（domain name system）であって、決済端末のＩＰアドレスを含むウェブアドレスのＤＮＳルックアップ要求をマーチャント・ブラウザから受信することであって、マーチャント・ブラウザは、決済端末のＩＰアドレスをウェブアドレスに変換する、受信すること、ウェブアドレスのＤＮＳルックアップ要求を受信したことに応答して、ウェブアドレスを決済端末のＩＰアドレスに変換すること、決済端末のＩＰアドレスをマーチャント・ブラウザのブラウザに送信すること、を実行するＤＮＳと、を含む。
【０１０７】
第３２の態様に従った、様々な実施形態におけるシステムおよび方法は、システムを含み、該システムは、マーチャント・ブラウザおよびＩＰレジストリサービスに動作可能に接続された実行可能なコンピュータプログラムと、ＤＮＳサービスと、決済端末と、を含み、実行可能なコンピュータプログラムは、決済端末に関連付けられた固有の識別子を受信すること、固有の識別子をＩＰレジストリサービスに送信すること、ＩＰレジストリサービスに決済端末のＩＰアドレス及びリスニングポートを要求すること、ＩＰレジストリサービスから決済端末のＩＰアドレス及びリスニングポートを受信すること、ＩＰレジストリサービスから決済端末のＩＰアドレス及びリスニングを受信すると、決済端末のスプーフドメイン名を計算すること、決済端末へのセキュアな接続要求を開始すること、ＤＮＳサービスから決済端末のＩＰアドレスを受信すること、ＤＮＳサービスから決済端末のＩＰアドレスを受信すると、セキュアな接続要求を決済端末に直接ルーティングすること、決済端末のセキュリティ証明書を検証すること、決済端末に接続すること、を実行するように構成される。
【０１０８】
第３３の態様に従った、第３２の態様または任意の他の態様のシステムまたは方法において、マーチャント・ブラウザは、電子キャッシュレジスタである。
第３４の態様に従った、第３３の態様または任意の他の態様のシステムまたは方法において、実行可能なコンピュータコードは、無線を介して決済端末に動作可能に接続される。
【０１０９】
第３５の態様に従った、第３４の態様または任意の他の態様のシステムまたは方法において、無線は、ブルートゥースデバイスを含む。
第３６の態様に従った、第３５の態様または任意の他の態様のシステムまたは方法において、実行可能なコンピュータプログラムは、マーチャント・ブラウザへのプラグインとしてインストールされたＪａｖａＳｃｒｉｐｔ ＳＤＫである。
【０１１０】
第３７の態様に従った、第３６の態様または任意の他の態様のシステムまたは方法において、実行可能なコンピュータプログラムは、マーチャント・ブラウザ、ＩＰレジストリサービス、ＤＮＳサービス、および決済端末に通信可能に接続されるミドルウェアである。
【０１１１】
第３８の態様に従った、第３７の態様または任意の他の態様のシステムまたは方法において、決済端末へのセキュアな接続要求は、トランスポート層セキュリティ（「ＴＬＳ（transport layer security）」）プロトコルを用いて開始される。
【０１１２】
第３９の態様に従った、様々な実施形態におけるシステムおよび方法は、方法を含み、該方法は、決済端末に関連付けられた固有の識別子を受信すること、固有の識別子をＩＰレジストリサービスに送信すること、ＩＰレジストリサービスに決済端末のＩＰアドレス及びリスニングポートを要求すること、ＩＰレジストリサービスから決済端末のＩＰアドレス及びリスニングポートを受信すること、ＩＰレジストリサービスから決済端末のＩＰアドレス及びリスニングを受信すると、決済端末のスプーフドメイン名を計算すること、決済端末へのセキュアな接続要求を開始すること、ＤＮＳサービスから決済端末のＩＰアドレスを受信すること、ＤＮＳサービスから決済端末のＩＰアドレスを受信すると、セキュアな接続要求を決済端末に直接ルーティングすること、決済端末のセキュリティ証明書を検証すること、決済端末に接続すること、を含む。
【０１１３】
第４０の態様に従った、様々な実施形態におけるシステムおよび方法は、システムを含み、該システムは、マーチャント・ブラウザおよびＩＰレジストリサービスに動作可能に接続された実行可能なコンピュータプログラムと、ＤＮＳサービスと、決済端末と、を含み、実行可能なコンピュータプログラムは、決済端末に関連付けられた固有の識別子を受信すること、固有の識別子をＩＰレジストリサービスに送信すること、ＩＰレジストリサービスに決済端末のＩＰアドレス及びリスニングポートを要求すること、ＩＰレジストリサービスから決済端末のＩＰアドレス、リスニングポートおよびスプーフドメイン名を受信すること、決済端末へのセキュアな接続要求を開始すること、ＤＮＳサービスから決済端末のＩＰアドレスを受信すること、ＤＮＳサービスから決済端末のＩＰアドレスを受信すると、セキュアな接続要求を決済端末に直接ルーティングすること、決済端末のセキュリティ証明書を検証すること、決済端末に接続すること、を実行するように構成される。
【０１１４】
第４１の態様に従った、様々な実施形態におけるシステムおよび方法は、システムを含み、該システムは、マーチャント・ブラウザおよびＩＰレジストリサービスに動作可能に接続された実行可能なコンピュータプログラムと、ＤＮＳサービスと、決済端末と、を含み、実行可能なコンピュータプログラムは、決済端末に関連付けられた固有の識別子を受信すること、固有の識別子をＩＰレジストリサービスに送信すること、ＩＰレジストリサービスに決済端末のＩＰアドレス及びリスニングポートを要求すること、ＩＰレジストリサービスから決済端末のＩＰアドレス、リスニングポートおよびスプーフドメイン名を受信すること、決済端末のＩＰアドレスおよびリスニングポートをＩＰレジストリサービスから受信すると、マーチャント・ブラウザがＩＰアドレス、リスニングポートおよびスプーフドメイン名を用いてＨＴＴＰＳプロトコルで決済端末に接続できるように、決済端末のＩＰアドレス、リスニングポートおよびスプーフドメイン名をマーチャント・ブラウザに送信すること、を実行するように構成される。
【０１１５】
第４２の態様に従った、様々な実施形態におけるシステムおよび方法は、方法を含み、該方法は、決済端末に関連付けられた固有の識別子を受信すること、固有の識別子をＩＰレジストリサービスに送信すること、ＩＰレジストリサービスに決済端末のＩＰアドレス及びリスニングポートを要求すること、ＩＰレジストリサービスから決済端末のＩＰアドレス、リスニングポートおよびスプーフドメイン名を受信すること、決済端末のＩＰアドレスおよびリスニングポートをＩＰレジストリサービスから受信すると、マーチャント・ブラウザがＩＰアドレス、リスニングポートおよびスプーフドメイン名を用いてＨＴＴＰＳプロトコルで決済端末に接続できるように、決済端末のＩＰアドレス、リスニングポートおよびスプーフドメイン名をマーチャント・ブラウザに送信すること、を実行するように構成される。
【０１１６】
結論
本開示の態様、特徴、及び利点は、本明細書において開示される情報から明らかになるであろう。開示されたシステム及び方法に対する変更及び修正は、開示された新規な概念の精神及び範囲から逸脱することなく実施することができる。
【０１１７】
それでもなお、本開示の範囲の限定は参照により援用される証拠物件又は出願において開示された情報によって意図されないことが理解されるであろう。説明または例示された実施形態の変更及びさらなる修正、及び明細書に例示された本開示の原理のさらなる適用は、本開示が関連する当業者によって通常行われるように企図される。特定の企業（例えば、ＰＡＸ（登録商標））によって製造された様々なブランド名とデバイスが、（証拠物件を含む）本出願に含まれている。理解されるように、これらのデバイスは例示にすぎず、同様の機能を備えた他のデバイスは、本明細書において開示されるシステム及び方法の一部として企図される。
【０１１８】
例示的な実施形態の前述した説明は、単に例示および説明の目的で提示されており、網羅的であること、または開示された正確な形態に本システムおよび方法を限定することは意図されていない。上記した教示に照らして、多くの修正及び変更が可能である。
【０１１９】
当業者が本開示及び種々の実施形態を使用することを可能にするように、本開示の原理及びそれらの実際の用途を説明するために、実施形態を選んで記載し、種々の変更形態が、意図される特定の使用に適している。本開示の主旨及び範囲から逸脱することなく、本開示が属する分野の当業者には代替的な実施形態が明らかであろう。したがって、本開示の範囲は、上記の記載及び上記の記載において記載されている例示的な実施形態ではなく、添付の特許請求の範囲によって規定される。
【図１Ａ】
2020522933.tif 000003
【図１Ｂ】
2020522933.tif 000004
【図１Ｃ】
2020522933.tif 000005
【図１Ｄ】
2020522933.tif 000006
【図１Ｅ】
2020522933.tif 000007
【図１Ｆ】
2020522933.tif 000008
【図１Ｇ】
2020522933.tif 000009
【図１Ｈ】
2020522933.tif 000010
【図１Ｉ】
2020522933.tif 000011
【図２】
2020522933.tif 000012
【図３】
2020522933.tif 000013
【図４】
2020522933.tif 000014
【図５】
2020522933.tif 000015
【国際調査報告】
2020522933.tif 000016