IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ エクストラボ リミテッド ライアビリティ カンパニーの特許一覧

特表2023-547787ローカルデバイス間でのデジタル通貨を転送するための改ざん防止ハードウェアの活用
<>
  • 特表-ローカルデバイス間でのデジタル通貨を転送するための改ざん防止ハードウェアの活用 図1
  • 特表-ローカルデバイス間でのデジタル通貨を転送するための改ざん防止ハードウェアの活用 図2
  • 特表-ローカルデバイス間でのデジタル通貨を転送するための改ざん防止ハードウェアの活用 図3
  • 特表-ローカルデバイス間でのデジタル通貨を転送するための改ざん防止ハードウェアの活用 図4
  • 特表-ローカルデバイス間でのデジタル通貨を転送するための改ざん防止ハードウェアの活用 図5
  • 特表-ローカルデバイス間でのデジタル通貨を転送するための改ざん防止ハードウェアの活用 図6
  • 特表-ローカルデバイス間でのデジタル通貨を転送するための改ざん防止ハードウェアの活用 図7
  • 特表-ローカルデバイス間でのデジタル通貨を転送するための改ざん防止ハードウェアの活用 図8
  • 特表-ローカルデバイス間でのデジタル通貨を転送するための改ざん防止ハードウェアの活用 図9
  • 特表-ローカルデバイス間でのデジタル通貨を転送するための改ざん防止ハードウェアの活用 図10
  • 特表-ローカルデバイス間でのデジタル通貨を転送するための改ざん防止ハードウェアの活用 図11
  • 特表-ローカルデバイス間でのデジタル通貨を転送するための改ざん防止ハードウェアの活用 図12
  • 特表-ローカルデバイス間でのデジタル通貨を転送するための改ざん防止ハードウェアの活用 図13
  • 特表-ローカルデバイス間でのデジタル通貨を転送するための改ざん防止ハードウェアの活用 図14
  • 特表-ローカルデバイス間でのデジタル通貨を転送するための改ざん防止ハードウェアの活用 図15
  • 特表-ローカルデバイス間でのデジタル通貨を転送するための改ざん防止ハードウェアの活用 図16
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2023-11-14
(54)【発明の名称】ローカルデバイス間でのデジタル通貨を転送するための改ざん防止ハードウェアの活用
(51)【国際特許分類】
   G06Q 20/30 20120101AFI20231107BHJP
【FI】
G06Q20/30
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2023520438
(86)(22)【出願日】2021-10-01
(85)【翻訳文提出日】2023-05-30
(86)【国際出願番号】 US2021071670
(87)【国際公開番号】W WO2022073026
(87)【国際公開日】2022-04-07
(31)【優先権主張番号】63/086,451
(32)【優先日】2020-10-01
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.Blu-ray
2.QRコード
(71)【出願人】
【識別番号】523120502
【氏名又は名称】エクストラボ リミテッド ライアビリティ カンパニー
(74)【代理人】
【識別番号】110002860
【氏名又は名称】弁理士法人秀和特許事務所
(72)【発明者】
【氏名】ドーシー,ティモシー
(72)【発明者】
【氏名】ディアラメ,オラン
【テーマコード(参考)】
5L055
【Fターム(参考)】
5L055AA61
(57)【要約】
デジタルトランザクションは、トランザクションに関与するデバイスの少なくとも1つに関連付けられた改ざん防止ハードウェアを活用することにより保護される。アプリケーション又はアプリケーションプラグインなど、送信側デバイスと受信側デバイスとの間のトランザクションを制御するメカニズムは、改ざん防止ハードウェアを有するデバイスのうちの少なくとも1つに高度な信頼を割り当てるように構成されている。このようにして、改ざん防止ハードウェアを有するデバイスからの任意の確認及び表現を信頼することができ、かつそれらにローカルで依存することができる。改ざん防止デバイスは、他のルールの中でもとりわけ、二重支出及び過剰支出などの特定のアクションを防止するためのルールにより構成されている。したがって、受信側デバイスは、送信側デバイスが改ざん防止ハードウェアにより構成されていることを検証することができる限り、受信側デバイスは、送信側デバイスが所定のルールの範囲内で動作していること、及び送金されることを信頼することができる。
【選択図】図1
【特許請求の範囲】
【請求項1】
デジタル通貨決済を送信及び受信するために構成された送信側コンピューティングデバイス(105)であって、
受信側コンピューティングデバイス(205)と通信するためのネットワークインターフェース(1516)と、
改ざん防止ハードウェア(405)であって、前記改ざん防止ハードウェア(405)の外部でアクセス不能な1つ以上の秘密鍵を保護する、改ざん防止ハードウェア(405)と、
1つ以上のプロセッサ(1502)と、
命令を有する1つ以上のハードウェアベースのメモリデバイス(1504)であって、前記命令が、前記1つ以上のプロセッサによって実行されたときに、前記送信側コンピューティングデバイス(105)に、
取り消し可能決済トランザクション(RPT)(705)を受信側コンピューティングデバイス(205)に送信させることであって、前記RPT(705)が、金額、及び前記送信側デバイス(105)がその間はトランザクションをキャンセルする権限を持つ取り消し可能期間を含む、送信させることと、
以下のアクション、すなわち、
前記受信側コンピューティングデバイス(205)で前記RPT(705)が受信及び検証されたという確認メッセージ(710)を受信することに応答して、前記受信側コンピューティングデバイス(205)に、決済が成功し、かつ前記RPT(705)からの前記取り消し可能期間が削除されたことを指し示す、非取り消し可能決済トランザクション(非RPT)(805)を送信すること、又は、
前記送信側デバイス(105)が前記受信側コンピューティングデバイス(205)から前記確認メッセージ(710)を受信できなかったことに応答して、取り消し決済トランザクション(910)を生成すること、のうちの1つのアクションを実行することと、のうちの1つ以上を実行させる、1つ以上のハードウェアベースのメモリデバイスと、を備える、送信側コンピューティングデバイス。
【請求項2】
前記1つ以上のプロセッサが、前記受信側コンピューティングデバイスから前記確認メッセージを受信することに応答して、前記送信側デバイスのユーザインターフェース上に、前記決済が成功したという確認メッセージを公開するように更に構成されている、請求項1に記載の送信側コンピューティングデバイス。
【請求項3】
前記1つ以上のプロセッサが、前記トランザクションがオフネットワークプロトコルの下で実行されるという命令を受信するように更に構成されている、請求項1に記載の送信側コンピューティングデバイス。
【請求項4】
前記トランザクションがオフネットワークプロトコルの下で実行されるという前記命令が、前記RPTを伝送する前に受信される、請求項3に記載の送信側コンピューティングデバイス。
【請求項5】
前記1つ以上のプロセッサが、ネットワークアクセスが利用可能になると、前記非RPTをリモート元帳サービスに伝送するように更に構成されている、請求項1に記載の送信側コンピューティングデバイス。
【請求項6】
前記送信側コンピューティングデバイス及び受信側コンピューティングデバイスが、前記送信側コンピューティングデバイスが前記確認メッセージを受信する前に何らかの通信が失われた場合に、前記トランザクションがキャンセルされたとみなすように構成されている、請求項1に記載の送信側コンピューティングデバイス。
【請求項7】
前記1つ以上のプロセッサが、前記送信側デバイスが所定の時間間隔内に前記受信側コンピューティングデバイスから前記確認メッセージを受信できなかったことに応答して、前記トランザクションがキャンセルされたことを指し示すメッセージを、前記送信側デバイスのユーザインターフェース上に公開するように更に構成されている、請求項1に記載の送信側コンピューティングデバイス。
【請求項8】
前記1つ以上のプロセッサが、支出承認を前記受信側コンピューティングデバイスに伝送するように更に構成され、ここで前記支出承認が、送信アカウントが改ざん防止ハードウェアを有して構成された前記送信側コンピューティングデバイスの排他的管理下にあることを確認する、請求項1に記載の送信側コンピューティングデバイス。
【請求項9】
前記1つ以上のプロセッサが、ネットワークアクセスが利用可能になると、前記取り消し決済トランザクションを伝送するように更に構成されている、請求項1に記載の送信側コンピューティングデバイス。
【請求項10】
前記1つ以上のプロセッサが、前記受信側コンピューティングデバイスとのパススルー通信としてリモート元帳サービスから新規支出承認を要求するように更に構成されている、請求項1に記載の送信側コンピューティングデバイス。
【請求項11】
前記1つ以上のプロセッサが、前記受信側コンピューティングデバイスに前記新規支出承認を送信するように更に構成されている、請求項10に記載の送信側コンピューティングデバイス。
【請求項12】
トランザクションを実行するために、送信側コンピューティングデバイス(105)内の改ざん防止ハードウェア(405)によって少なくとも部分的に実施される方法であって、
前記トランザクションに対してオフネットワークプロトコルが使用されることを確立することと、
取り消し可能決済トランザクション(RPT)(705)を受信側コンピューティングデバイス(205)に送信することであって、前記RPT(705)が、金額、及び前記送信側デバイス(105)がその間はトランザクションをキャンセルする権限を持つ取り消し可能期間を含む、送信することと、
前記受信側コンピューティングデバイス(205)で前記RPT(705)が受信及び検証されたという確認メッセージ(710)を受信することと、
前記確認メッセージ(710)を受信したことに応答して、前記受信側デバイス(205)に、決済が成功し、かつ前記RPT(705)からの前記取り消し可能期間が削除されたことを指し示す、非取り消し可能決済トランザクション(非RPT)(805)を送信することと、を含む、方法。
【請求項13】
前記送信側デバイスのユーザインターフェース上で、前記受信側コンピューティングデバイスから前記確認メッセージを受信することに応答して、前記決済が成功したという確認メッセージを公開することを更に含む、請求項12に記載の方法。
【請求項14】
前記受信側コンピューティングデバイスから命令を受信することに応答して、前記オフネットワークプロトコルが、確立される、請求項12に記載の方法。
【請求項15】
ネットワークアクセスが利用可能になると、前記非RPTをリモート元帳サービスに伝送することを更に含む、請求項12に記載の方法。
【請求項16】
前記送信側コンピューティングデバイス及び受信側コンピューティングデバイスが、前記送信側コンピューティングデバイスが前記確認メッセージを受信する前に何らかの通信が失われた場合に、前記トランザクションがキャンセルされたとみなすように構成されている、請求項12に記載の方法。
【請求項17】
コンピュータ実行可能命令を格納する1つ以上のハードウェアベースのメモリデバイス(1504)であって、前記コンピュータ実行可能命令が、送信側コンピューティングデバイス(105)に関連付けられた1つ以上のプロセッサ(1502)によって実行されると、前記送信側コンピューティングデバイス(105)に、
取り消し可能決済トランザクション(RPT)(705)を受信側コンピューティングデバイス(205)に送信させることであって、前記RPT(705)が、金額、及び前記送信側デバイス(105)がその間はトランザクションをキャンセルする権限を持つ取り消し可能期間を含む、送信させることと、
以下のアクション、すなわち、
前記受信側コンピューティングデバイス(205)で前記RPT(705)が受信及び検証されたという確認メッセージ(710)を受信することに応答して、前記受信側コンピューティングデバイス(205)に、決済が成功し、かつ前記RPT(705)からの前記取り消し可能期間が削除されたことを指し示す、非取り消し可能決済トランザクション(非RPT)(805)を送信すること、又は、
前記送信側デバイス(105)が前記受信側コンピューティングデバイス(205)から前記確認メッセージ(710)を受信することができなかったことに応答して、取り消し決済トランザクション(910)を生成すること、のうちの1つを実行させることと、を行わせる、1つ以上のハードウェアベースのメモリデバイス。
【請求項18】
前記実行された命令が更に、前記送信側コンピューティングデバイスに、支出承認を前記受信側コンピューティングデバイスに伝送させ、そこで前記支出承認が、前記送信側コンピューティングデバイスが改ざん防止ハードウェアを有して構成されていることを確認する、請求項17に記載の1つ以上のハードウェアベースのメモリデバイス。
【請求項19】
前記実行された命令が更に、ネットワークアクセスが利用可能になると、前記送信側コンピューティングデバイスに、前記非RPTをリモート元帳サービスに伝送させる、請求項17に記載の1つ以上のハードウェアベースのメモリデバイス。
【請求項20】
前記実行された命令が更に、前記送信側コンピューティングデバイスに、前記トランザクションがオフネットワークプロトコルの下で実行されるという命令を受信させる、請求項17に記載の1つ以上のハードウェアベースのメモリデバイス。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
この非仮出願は、2020年10月1日に出願された「An Asynchronous Distributed Ledger with High Concurrency and Byzantine Fault Tolerance」と題された、米国仮出願第63/086,451号に対する利益及び優先権を主張するものであり、その内容は参照によりその全体が本明細書に組み込まれる。
【背景技術】
【0002】
開発の中でも、暗号通貨、モバイル決済、及び新しい銀行規制の出現により、デジタル決済技術への関心が爆発的に高まっている。これらのデジタル決済システムの中心には、通常、デジタル元帳がある。デジタル元帳を安全に維持するための一般的なアプローチは、コピーを複数のノードにわたって分散することである。この場合の課題は、システム障害及びネットワークの中断に対処しながら、元帳の同期及び更新への応答性を保持することである。元帳の同期化は、障害がシステムを破壊することを目的とするインテリジェントな敵によって加工される場合があるため、課題であり、このような障害は一般に「ビザンチン障害」と称される。
【0003】
元帳を同期するだけでなく、個人のウォレット間でピアツーピアのデジタルトランザクションを保護することも問題を引き起こす。信頼できない通信チャネルを介して決済が転送された場合、デジタル決済が信頼できない通信を介して別の当事者に正常に転送されたかどうかを判断することは困難な場合がある。例えば、決済が送信された直後にチャネルが機能しなくなると仮定する。その場合、送信者は、決済が失敗したのか、又は転送が成功したという確認を受信し損ねただけなのかを知ることができない。真の状況は最終的に通信が回復したときに発見され得るが、繰り延べされた解決はライブセッティングで問題を提示する。
【0004】
例えば、小売セッティングの場合、顧客は持ってきた金又は購入した商品を持って店を出たいと考える。決済が失敗したと信じてサイトを離れた場合、後でアカウントに請求が表示されても気付かないことがある。気が付いたとしても、業者と問題を解決するのは難しい場合がある。決済サービスプロバイダは、紛争を解決するよう求められ得るが、これにより運用上のオーバーヘッドが追加され、不完全なトランザクションを修正するメカニズムが破損している場合、詐欺の新たな経路が開かれる。デジタル決済技術がより多くのデバイス、参加者、及び通信セッティングに拡大するにつれて、これらの課題が大きくなり得る。
【発明の概要】
【0005】
デジタルトランザクションは、トランザクションに関与するデバイスのうちの少なくとも1つに関連付けられた改ざん防止ハードウェアを活用することにより保護される。アプリケーション又はアプリケーションプラグインなど、送信側デバイスと受信側デバイスとの間のトランザクションを制御するメカニズムは、改ざん防止ハードウェアを有するデバイスのうちの少なくとも1つに高度な信頼を割り当てるように構成されている。このようにして、改ざん防止ハードウェアを有するデバイスからの任意の確認及び表現を信頼することができ、かつこれにローカルで依存することができる。
【0006】
秘密鍵は、ユーザのデバイス内の改ざん防止ハードウェアに安全に格納されてもよく、
またそれによってのみ知られてもよい。改ざん防止デバイスは、他のルールの中でもとりわけ、二重支出及び過剰支出などの特定のアクションを防止するためのルールにより構成されている。したがって、アカウント内の資金がその秘密鍵の排他的管理下にあり、かつ受信側デバイスが、送信側デバイスが改ざん防止ハードウェアで構成されていることを検証することができる限り、受信側デバイスは、送信側デバイスが所定のルールの範囲内で動作していること、送金されるであろうこと、および送信側デバイスの背後にいる人物が認証されている可能性が高いことを信頼することができる。デジタルトランザクションは、リモート元帳へのネットワーク接続が不完全であったり、なくなったりしている場合でも実行することができる。送信者側及び受信側デバイスは、ネットワーク接続が再確立されたときに元帳に記入するためにトランザクションを報告することができる。資金が、所定のアルゴリズムに従って動作している本物の改ざん防止ハードウェアデバイスのみが知っている秘密鍵の制御下にあることを確立するため、相互に信頼された元帳は、デバイスが他のデバイスに提示する場合がある署名済み支出承認をデバイスに提供してもよい。支出承認は、支出限度額などのパラメータを確立してもよく、また有効期限を含んでもよい。
【0007】
ネットワーク接続が障害の対象となる場合、送信側デバイスは、取り消し可能決済トランザクション(RPT)を受信側デバイスに転送してもよい。RPTは、RPTで伝送された取り消し可能期間内に送信者取り消しの対象となる特定の金額の決済を約束する。受信側デバイスは、RPTに応答して送信側デバイスに確認を伝送する。送信側デバイスは、受信者の確認の受信に応答して、非取り消し可能決済トランザクション(非RPT)を伝送する。送信側デバイスは、同様に、そのユーザインターフェース上に「決済済み」を表示してもよい。受信側デバイスは、ネットワーク接続が再確立されたときに、実行されたトランザクション及び非RPTを元帳に報告してもよい。送信側デバイスが確認を受信し損ねた場合、送信側デバイスは取り消し決済トランザクションを生成し、そのユーザインターフェース上に「キャンセル済み」を表示し、ネットワーク接続が再確立されたときにキャンセルされたトランザクションを元帳に報告してもよい。
【0008】
受信側デバイスは、依然として送信側デバイスの改ざん防止ハードウェアとの実行可能な通信に依存しながら、ライブネットワーク接続が利用可能な場合、元帳で資金移動を直接確認することができる。この実装形態では、送信側デバイスからRPTを受信すると、受信側デバイスは元帳を用いてRPTを調べ、確認する。受信側デバイスは、元帳トランザクションが元帳により確認されるまで、確認を送信側デバイスに転送するのを待機する。受信側デバイスが送信者側改ざん防止デバイスを引き続き信頼する一方、リモート元帳を用いてトランザクションを検証する機能は、リアルタイムで利用でき、いずれにしても、最終的には送信者及び受信側デバイスで必要になる追加のセキュリティを提供する。
【0009】
更に、送信側デバイスは、ライブ接続が利用可能な場合、元帳からの新規支出承認を要求して、受信側デバイスへのRPTの伝送に優先してもよい。元帳によって伝送される支出承認は、送信側デバイスの改ざん防止ハードウェアに更新された資金証明を提供する。この支出承認は、受信側デバイスを介して元帳に渡されるか、送信側デバイスから元帳に個別に伝送されてもよい。
【0010】
ピアツーピアのデジタルトランザクションは、送信者ではなく受信側のデバイスに改ざん防止ハードウェアがある場合、セキュリティを強化することもできる。このシナリオでは、送信側デバイスは、指定された金額を受信側デバイスに支払うトランザクションにデジタル署名し、そして署名されたトランザクションを、使用されているローカルネットワークを介して受信側デバイスに伝送する。受信側デバイスはトランザクションを永続ローカルストレージに保存し、そしてライブネットワーク接続を介して、又は元帳への送信者のライブ接続を使用したパススルーとしてのいずれかで、トランザクションを元帳に提出
する。元帳が送信側アカウントから受信側アカウントへの転送を実行すると、元帳は、受信側デバイスが資金を送信側デバイスに戻すように移動するために実行してもよいリバースチェックを記録する。資金が正常に移動したという元帳からの確認を受信側デバイスが受信すると、受信側デバイスは、リバースチェックを実行せずにキャンセルする完了トランザクションに署名し、そして保存する。受信側デバイスが元帳から順調な資金移動の確認を受信できなかった場合、改ざん防止ハードウェアは、リバースチェックを実行し、そしてそれによって送信者の金を払い戻す完了トランザクションに署名し、そして保存する。本来の移動が元帳の上で実行されない場合、リバースチェックは存在しないため、それを実行する試みは効果を有しない。
【0011】
元帳とのネットワーク接続障害はまれである場合があるが、本システムのセキュリティ対策及び構成は、ネットワーク接続が失われた場合に、そのようなまれな状況における、悪意のある人物によって誘導された攻撃及び意図しない影響を防ぐのに役立つ。トランザクションにおける一方又は両方のデバイスの改ざん防止ハードウェアに依存することができるため、悪意のある人物は、もう一方の当事者に対するローカル及び元帳に対するリモートの両方で、ネットワーク接続を妨害しようと試みることが制限される。インスタントシステムの構成は、悪意のある第三者を含む全ての当事者が、正しくかつ規定された結論に到達することを可能にする。
【0012】
この概要は、以下の発明を実施するための形態で更に説明される簡略化された形式で概念の選択を紹介するために提供される。この要約は、特許請求された主題の主要な特徴又は本質的な特徴を特定することを意図したものではなく、特許請求された主題の範囲を決定する際の補助として使用することを意図したものでもない。更に、特許請求される主題は、本開示のいずれかの部分に言及された欠点のいずれか又は全てを解決する実装形態に限定されない。これら及び他の様々な特徴は、以下の発明を実施するための形態を読むこと及び関連する図面のレビューから明らかになるであろう。
【図面の簡単な説明】
【0013】
図1】ローカル元帳及びリモート元帳サービスを使用して決済トランザクションを実行する様々なユーザの例示的な環境を示す。
図2】発信元ウォレットが決済を受取人ウォレットに伝送する例示的な閉鎖環境を示す。
図3】送信側デバイスと受信側デバイスとの間のトランザクションがリモート元帳サービスに報告される例示的な環境を示す。
図4】改ざん防止ハードウェアを有する送信側デバイスが受信側デバイスとのトランザクションを試みる例示的な環境を示す。
図5】改ざん防止ハードウェアに関連付けられたセキュリティ機能の例示的なスキーマを示す。
図6】リモート元帳サービスでネットワーク障害がある例示的な環境を示す。
図7】送信側デバイスが取り消し可能決済トランザクション(RPT)を受信側デバイスに伝送する例示的な環境を示す。
図8】送信側デバイスが非RPTを受信側デバイスに伝送し、そして受信側デバイスから確認を受信した後、そのユーザインターフェース上に「決済済み」を表示する例示的環境を示す。
図9】送信側デバイスがトランザクションをキャンセルし、そして受信側デバイスの確認を受信することができなかった後、そのUI上に「キャンセル済み」を表示する例示的な環境を示す。
図10】オフネットワーク決済プロトコルに対するトランザクションの流れ図を示す。
図11】ハーフオフネットワーク決済プロトコルに対するトランザクションの流れ図を示す。
図12】受信側デバイスが改ざん防止ハードウェアを有するトランザクションの流れ図を示す。
図13】ローカルデバイス間でデジタル通貨を転送するために改ざん防止ハードウェアを活用するシステムの例示的な流れ図を示す。
図14】ローカルデバイス間でデジタル通貨を転送するために改ざん防止ハードウェアを活用するシステムの例示的な流れ図を示す。
図15】ローカルデバイス間でデジタル通貨を転送するために本発明の改ざん防止ハードウェアの活用を実施するために使用されてもよいコンピューティングデバイスの簡略化されたブロック図を示す。
図16】ローカルデバイス間でデジタル通貨を転送するために本発明の改ざん防止ハードウェアの活用を実施するために使用されてもよいコンピューティングデバイスの簡略化されたブロック図を示す。
【発明を実施するための形態】
【0014】
同様の参照数字は、複数の図面において同様の要素を指し示す。別段の指示がない限り、要素は縮尺通りに描画されていない。
【0015】
図1は、複数の、そして別個のユーザ110が、デジタル決済を伝送及び受信する形でトランザクション115を実行するために、各自のそれぞれのコンピューティングデバイス105上でインスタンス化された独自のデジタルウォレット130及びローカル元帳125を有する例示的な環境を示す。各コンピューティングデバイスは、デジタル通貨がそれぞれ引き落とされ、また入金されるデジタルウォレットを有してもよい。この実装形態では、ウォレットが同じデジタルトランザクションプラットフォーム上で相互に通信できるように、各ユーザのコンピューティングデバイスは、ローカル元帳及び本明細書で説明するシステムを利用する共通のデジタルウォレットアプリケーションを有してもよい。
【0016】
以下により詳細に説明するように、2人のユーザ110間のトランザクションは、それらのそれぞれのコンピューティングデバイス105上で実行される。トランザクション115は各ローカル元帳上で実行され、そして完了すると、ユーザのそれぞれのウォレット130は、完了のためにトランザクション135の詳細をリモート元帳サービス120に提出する。いくつかの実装形態では、分散型元帳技術(DLT)又は以下で論じられるピアツーピアトランザクションを記録できる何らかのその他の一般的な元帳サービスを使用して、リモート元帳サービスは構成されてもよい。
【0017】
例えば、図1に示されるように、リモート元帳サービス120は、複数の独立した元帳ノード155からなり、3f+1個のそのようなノードは、障害のあるノードの存在下での安全な動作を可能にする。各元帳ノードは、ウォレットに既知の公開鍵を有し、所与の元帳ノードがメッセージを作成したかどうかをウォレットが検証することを可能にする。トランザクションは、2f+1個の元帳ノードが肯定的な応答を返したときに完了する。完了は、トランザクションが元帳サービスで完了した他の全てのトランザクションと一致することを確実にする、つまり、各ウォレットは、受信しており、かつまだ支払っていない資金のみを支払うことができる。トランザクションの受取人は、完了をひたすら追跡することに依存することができ、完了しなければ、値は受取人のアカウントに入金されない。
【0018】
図2は、2人のユーザ110、210の間の例示的なトランザクション215を示す。ユーザ110及びデバイス105は、それぞれ送信側ユーザ及び送信側デバイスであり、またユーザ210及びデバイス205は、それぞれ受信側ユーザ及び受信側デバイスである。この例では、送信側ユーザ110は、その発信元ウォレット235から、受信側ユー
ザ210が所有する受信側コンピューティングデバイス205に関連付けられた受信側ウォレット240に50ドルを伝送する。トランザクションは、各それぞれのユーザのローカル元帳125、225に書き込まれてもよい。トランザクションがローカルで完了すると、ユーザに関連付けられた発信元ウォレット及び受信側ウォレットは、これらのトランザクションを記録することができる、又はDLTを使用することができる汎用元帳であってもよいリモート元帳サービス120にトランザクションを報告してもよい。
【0019】
図3は、図2からの例示的なトランザクションを示し、その後、各ユーザのウォレット、発信元ウォレット235、及び受取人のウォレット240は、リモート元帳サービス120上の2f+1個の元帳ノード155とのトランザクションを独立して確認する。各元帳ノードは、分散型元帳の耐障害性を維持するために、各ウォレットについてトランザクションの正確性と信頼性を検証する。
【0020】
図4~12は、ローカルデバイスが改ざん防止ハードウェアを利用してデバイス間の安全かつ信頼できるトランザクションを可能にする例示的な表現及び環境を示す。改ざん防止ハードウェアを活用して、送信側デバイスと受信側デバイスの一方又は両方がオフラインで、リモート元帳サービス120に到達できない場合などに、悪意のある人物がデジタル通貨トランザクションに侵入及び/又は侵害することを防ぐ。
【0021】
図4は、安全かつ信頼できるトランザクションを促進するために、送信側デバイス105が改ざん防止ハードウェア405を有して構成される例示的な環境を示す。送信側デバイスは、2019年3月13日に出願された「Secure Tamper Resistant Smart Card」と題された米国特許出願第16/352,657号で、その明細書及び図面の他の部分の中でも、段落[0041]、[0064]、[0065]、[0091]、及び[0177]などにおいて論じられている、しかしこれらに限定されない安全な改ざん防止スマートカードと同様に構成されてもよく、その全体の内容は、参照により本明細書に組み込まれる。例えば、改ざん防止ハードウェアには、機密性の高い機能を単一のシステムオンチップ(SoC)に統合すること、又はキーとしてクローン不可能な署名を有することを含めることができる。
【0022】
改ざん防止ハードウェアは、ハードウェアベースのセキュリティ関連機能を提供するように設計されたトラステッドプラットフォームモジュール(TPM)とみなされてもよい。TPMチップは、暗号化動作を遂行するように設計された安全な暗号プロセッサである。TPMチップは、他のセキュリティ機能の中でも、秘密鍵をTPMの外部で使用できないようにする、その秘密鍵を使用するために認証値を要求する、及び認証値の誤った推測が多すぎるとアクセスを防止するように構成されてもよい。本明細書における改ざん防止ハードウェアの議論は、これらのセキュリティ機能のいずれか1つ以上を含んでもよく、またハードウェアベース又はソフトウェアベースでかつハードウェアベースであってもよい。いくつかの実装形態では、純粋なソフトウェア機能は、改ざん防止コンポーネントとして活用されてもよい。送信側コンピューティングデバイス、受信側コンピューティングデバイス、又は改ざん防止ハードウェアを有して構成された任意のデバイスの任意の議論は、米国特許出願第16/352,657号のスマート耐スマートカード、ラップトップコンピュータ、スマートフォンコンピュータ、タブレットコンピュータ、キオスク、販売時点管理(POS)デバイス、デスクトップコンピュータ、ウェアラブル技術(例えば、スマートウォッチ、ヘッドマウントディスプレイ(HMD)デバイス)など、あらゆる種類のコンピューティングデバイスを考慮してもよい。
【0023】
典型的な実装形態では、送信側コンピューティングデバイス105と受信側コンピューティングデバイス205は、安全かつ確実に互いを識別することができた後に、トランザクションを試行することができる。このようにして、中間者(MITM)又はその他の攻
撃を1つ又は両方のデバイスに対して実施することはできない。一実装形態では、改ざん防止ハードウェアは、コンピューティングデバイスの残りの部分がアクセスできない内部秘密鍵を使用して、メッセージ及び署名を生成してもよい。メッセージが生成されて署名されると、送信側又は受信側コンピューティングデバイスのネットワークインターフェースは、改ざんから安全であるため、Bluetooth(登録商標)、近距離無線通信(NFC)、Wi-Fi、セルラーネットワークなどを介してメッセージを伝送してもよい。デジタル署名されたトランザクションは、改ざんに対する耐性が高い状態で、一つのアカウントから別のアカウントに確実に資金移動することができる。しかし、トランザクションの前に、デバイス間の信頼性の高い接続を検証し、確立することは有益である場合がある。
【0024】
参照符号425によって代表的に示されるように、ローカルに存在する2つのデバイス間の安全な接続を確立するために、多くの方法を使用することができる。一方のデバイスにカメラがあり、そしてもう一方のデバイスにディスプレイがある場合、第2のデバイス(例えば、受信側デバイス205)は、ランダムに生成されたQRコードを第1のデバイス(送信側デバイス105)に表示し、次いでQRコードの内容を知っているデバイスとのみ通信することができる。送信側デバイスがQRコードを表示し、そして受信側デバイスがコードをスキャンする場合、その逆のシナリオをもたらすことができる。どちらのデバイスにもカメラがない場合、又はそうでなければカメラが望ましいオプションではない場合、しかしどちらにもディスプレイ又はその他の出力デバイス(例えば、スマートウォッチなどの周辺デバイスのディスプレイなど)がある場合、デバイスは、安全な暗号化方法によって生成された共通コードを表示し、かつ比較することによって、相互に通信していることを確信することができる。例えば、Diffie-Hellman鍵交換を使用して、公開鍵を交換することにより安全な接続を確立することができ、次に、2つの公開鍵の短いハッシュを各デバイス上に表示して、各デバイスが同じ鍵のペアを使用していることを確認することができる。エンドポイントが確実に識別されると、その後の通信は、メッセージの機密性と完全性の両方を提供する認証済み暗号化方法によって保護することができる。代替的に、1つのデバイスは、コードを生成してもよく、このコードを相手のデバイスを操作しているもう一方のユーザはデバイスの入力メカニズムに入力して、信頼できる接続を確立することができる。本質的に、デバイス間で何らかの最初の認証を実施して互いを安全に識別し、そしてその後改ざん防止ハードウェアをトランザクションに対して活用することができる。
【0025】
図4に示されるように、改ざん防止ハードウェアは、様々なセキュリティ機能410を有して構成される。図5は、改ざん防止ハードウェア405に関連付けられてもよいセキュリティ機能410の例示的かつ非網羅的なスキーマを示す。セキュリティ機能としては、不変データ及び命令セット505、アクセスの承認(例えば、パスコード、生体認証スキャン、PIN(暗証番号)コードなど)510、「n」回(例えば、3回、4回など)の試行が不成功の後、アクセスを防止する515、安全な秘密鍵、改ざん防止ハードウェアの外部でのアクセス不能520、所定の使用ルール525、及びその他のセキュリティ機能530を挙げることができる。
【0026】
送信側デバイス105及び受信側デバイス205は、ローカルで実行されている暗号化アプリケーション420を有して各々構成される。暗号化アプリケーションは、デバイスにインストールされたスタンドアロンアプリケーションであってもよく、又は代替的に別のアプリケーションにインストールされたプラグインであってもよい。図4では、ユーザは、参照符号415によって代表的に示されるように、それらの間のトランザクションを実行することを試みている。例えば、送信側ユーザ105は、商品又はサービスと引き換えにデジタル通貨を受信側ユーザ210に送信しようと試みる場合がある。受信側ユーザは、食料品、パーソナルケア用品などの商品を販売する実店舗であってもよく、または窓
拭き、自動車修理サービスなどのサービス提供者であってもよい。商品又はサービスの具体的な提供は、システムの全体的な実行に関連するものではなく、関連性はむしろ、送信側ユーザが受信側ユーザに何らかの商品又はサービスに対して支払うことを意図しているということである。
【0027】
図6~9は、例示的なトランザクションのいくつかの順序付けられたステップを高レベル環境で示しているが、全てのステップを含まなくてもよい。図10~12に示すように、トランザクションの具体的な事情に応じて、更なる明確化及びステップがトランザクションに含まれてもよい。
【0028】
図6は、送信側デバイス105及び受信側デバイス205の両方がネットワーク障害を有し、そしてリモート元帳サービス120と通信できない例示的な表現を示す。受信側デバイスの暗号化アプリケーション420は、参照符号610で代表的に示されるように、送信側デバイスが改ざん防止ハードウェア405を有して構成されていることを識別することができる。この検出は、例えば、送信側デバイスの改ざん防止ハードウェアが、相互に信頼できる銀行によって署名されたメッセージである支出承認605を伝送したときに行われてもよい。銀行は、ユーザのためのデジタル通貨を保持しているいずれかの銀行機関又は会社であってもよい。これに関して、銀行は、そのユーザベースを規制し、またあらゆる不正行為を防止し、かつ取り除くように入念に検査する強い動機を有している。銀行は、ユーザのアカウントを有効にしたときに、改ざん防止ハードウェアが満足のいくものであるという判断を行う。銀行はまた、アカウントが不正又はそうでなければ異常な挙動を呈した場合、改ざん防止デバイスへの支出承認の発行を停止する場合もある。支出承認の議論は、以下でより詳細に論じられる。
【0029】
銀行の判断は、改ざん防止ハードウェアを作成したデバイス製造者により署名された証明書に基づく。デバイスは、何らかのトランザクションが試みられる前に改ざん防止ハードウェアが承認されるように、アカウントの有効化中にこの証明書を銀行に提示する。
【0030】
図7は、改ざん防止ハードウェアが検出された後(図6)、送信側デバイスが取り消し可能決済トランザクション(RPT)705を受信側デバイス205に伝送する例示的な表現を示す。このシナリオでは、送信側デバイス105及び受信側デバイス205は、リモート元帳サービス120へのアクティブなネットワーク接続を有さないが、依然として改ざん防止ハードウェア405を使用して引き続き信頼できるトランザクションを実行することができる。改ざん防止ハードウェアは、受信側デバイスにRPTを伝送する。RPTは、例えば、送信者110又は送信側デバイス105が、何らかの所定の時間間隔である取り消し可能期間内に取り消すことができる所与の金額(例えば、50ドルのデジタル通貨)を支払う約束を含んでもよい。状況及びシステム構成に応じて、取り消し可能期間は、数分、数時間、又は数日とすることができる。典型的な実装形態では、取り消し可能期間は、リモート元帳サービスとの同期を可能にするために5日間であってもよい。
【0031】
受信側デバイス205は、RPTを受信することに応答して、送信側デバイス105に確認710を伝送する。確認メッセージを受信すると、送信側デバイスはトランザクションが最終的で取り消し不能であるとみなすが、依然として元帳上での実行を必要とする。
【0032】
図8は、確認を受信することに応答して、送信側デバイスが非取り消し可能決済トランザクション(非RPT)805を受信側デバイス205に伝送する例示的な環境を示す。非RPTは、同じ決済金額を受信側デバイスに記述し、そして送信側デバイスはトランザクションをもはや取り消すことができないことを受信側デバイスに指し示す。非RPTの伝送と同時に、非RPTを伝送する前に、又は非RPTを伝送した後に、送信側デバイスは、そのコンピューティングデバイスのディスプレイ815上に「決済済み」820メッ
セージも表示する。表示されるメッセージは、単語、記号、グラフィックス、アートワーク、アイコンであってもよく、又は代替的に、肯定的な結果を表すトリガーされる音であってもよい。
【0033】
送信側デバイス105及び受信側デバイス205がそれらのネットワーク接続を回復すると、参照符号810によって代表的に示されるように、デバイスの一方又は両方は非RPTをリモート元帳サービス120に報告することができる。又は、非RPTが受信側デバイスに到達しなかった場合、RPTをリモート元帳サービスに報告することができる。これにより、送信側デバイスが失われた場合、又は別の理由で非RPTをタイムリーな様態で報告し損ねた場合でさえも、資金が確実に転送される。
【0034】
典型的な実装形態では、トランザクションは、非RPTが伝送されるまで、又は送信側デバイスが確認を受信するまで、送信側デバイス105によっていつでもキャンセルすることができる。確認が受信されると、送信側デバイスは、トランザクションを完了とみなし、そのような動作を実施してもよい。受信側デバイスが送信側デバイスに確認を伝送した後、受信側ユーザに、送信側ユーザのディスプレイに何らかの「決済済み」又は「キャンセル済み」メッセージをチェックするように指示するプロンプトが受信側デバイス上に表示される場合がある。これは、非RPTが受信側デバイスで受信されていない場合に発生する場合があり、したがって、受信側デバイスは、トランザクションが実行されたかどうかが分からない。改ざん防止ハードウェアを有するデバイスのディスプレイをレビューすることは、非改ざん防止デバイスユーザが実行されたトランザクションを検証するための安全かつ確実なメカニズムとすることができる。
【0035】
図9は、参照符号905によって代表的に示されるように、確認が送信側デバイスによって受信されなかった例示的な環境を示す。応答して、送信側デバイスは、そのユーザディスプレイ815上に「キャンセル済み」910を表示する。「キャンセル済み」メッセージは、トランザクションが実行されなかったことを両当事者に指し示し、ネットワークが再び利用可能になると、決済トランザクション取り消し910がリモート元帳サービス120にそのように報告される。決済トランザクション取り消しは、キャンセルされたトランザクションに応答して生成され、そしてネットワークが利用可能になるまで保存される。
【0036】
図10~11は、重複技法を利用し、また具体的な構成及び伝送プロトコルを活用してトランザクションの実行可能性及び信頼性を保護する、別個の決済プロトコルの例示的な流れ図を示す。各実施形態は、コンピューティングデバイスのうちの少なくとも1つに関連付けられた改ざん防止ハードウェアを活用して、トランザクションの実行可能性を容易にする。改ざん防止ハードウェアを有するデバイスが1つだけ示されているが、他の実装形態では、各デバイスは、改ざん防止ハードウェアを有して構成されてもよい。更に、改ざん防止ハードウェアは、図10及び11の送信側コンピューティングデバイス及び図12の受信側コンピューティングデバイスなど、所与のデバイスに対する様々な通信を生成するコンポーネントである。
【0037】
改ざん防止ハードウェアは、コンピューティングデバイスの残りの部分がアクセスできない内部秘密鍵を使用して、メッセージ及び署名を生成してもよい。メッセージが生成され、かつ署名されると、送信側又は受信側コンピューティングデバイスのネットワークインターフェースは、改ざんから安全であるため、Bluetooth(登録商標)、近距離無線通信(NFC)、Wi-Fi、セルラーネットワークなどの上でメッセージを伝送してもよい。デジタル署名されたトランザクションは、一方のアカウントから別のアカウントに確実に資金を移動することができ、同時に改ざんに対する耐性が高い。しかしながら、これはトランザクションで指定された送信者及び受信者のアカウントが正しく識別さ
れたことを前提としている。ネットワーク接続から読み取られたアカウントは、ネットワーク接続のもう一方の端末が正しいデバイスに安全に関連付けられている場合にのみ信頼することができる。
【0038】
ローカルに存在する2つのデバイス間で安全な接続を確立するには、多くの方法を使用することができる。一方のデバイスにカメラがあり、他方のデバイスにディスプレイがある場合、第2のデバイスは、ランダムに生成されたQRコードを第1のデバイスに表示し、次いでQRコードの内容を知っているデバイスとのみ通信することができる。どちらのデバイスにもカメラがないが、両方にディスプレイがある場合、安全な暗号化方法によって生成された共通のコードを表示して比較することにより、互いに通信していることを確信することができる。エンドポイントが確実に識別されると、その後の通信は、メッセージの機密性及び完全性の両方を提供する認証済み暗号化方法によって保護される。本質的に、デバイスが互いに安全に識別できるように、デバイス間で何らかの初期認証を実施することができる。
【0039】
図10は、オフネットワーク決済プロトコル1002の例示的な流れ図を示し、図6~9で記述したトランザクションに関する追加の詳細及びステップを示す。右側の欄、トランザクション状況1045は、接続障害処理の観点からのトランザクション状況を示す。プロセスのその段階で障害が発生した場合、トランザクションがキャンセル可能かどうか1050、送信者及び受信者が、受信者が送信者のディスプレイで確認する必要がある中間状態にあるかどうか1055’’、又は決済が成功したかどうか1060を意味する。
【0040】
ステップ1005では、受信側デバイス205は、送信側デバイス105から支出承認を要求する。要求には、決済プロバイダを識別することを含んでもよく、また元帳への現在利用可能なネットワーク接続がないため、オフラインモードを指定する。オフラインモードの選択は、全ての通信が2つのデバイスに対してローカルになるため、一般的にすぐに完了するか、まったく完了しないことを意味する。したがって、リモート元帳でのトランザクションの完了の時間に追加の時間がかかるオンラインモードよりも短いタイムアウトパラメータが使用される。ステップ1010では、送信側デバイスの改ざん防止ハードウェアは、その最後の元帳同期から支出承認を送信する。支出承認には、ユーザアカウントを提供する相互に信頼できる銀行又は金融機関によって以前に承認された改ざん防止ハードウェアを有して送信側デバイスが構成されているという指示が含まれる。故意にアカウントで過剰な引き出しをしようとしたり、デバイスのハードウェアを改ざんしたりするなど、不正又は異常な振る舞いを銀行が検出した場合、銀行は、支出承認を取り消すことができるため、支出承認は、受信側デバイスに十分なセキュリティを提供する。
【0041】
受信側デバイスは、支出承認に対する決済プロバイダの署名、支出承認の有効期限、及び金額制限を評価してもよい。決済プロバイダの署名が、受信側デバイスに格納されている何らかの決済プロバイダの公開鍵と一致し、支出承認が期限切れになっておらず、かつ金額制限が即時トランザクションの希望する決済を下回っていない場合、受信側デバイスは送信側デバイスに決済の要求を伝送してもよい。
【0042】
ステップ1015では、受信側デバイス205は、支出承認の受信及び評価することに応答して、要求決済メッセージを送信側デバイスに伝送する。要求決済メッセージは、トランザクションの決済金額及びインクリメントされた受取人シーケンス番号を含む。決済トランザクションで返されると、受取人のシーケンス番号により、受取人が、以前の決済の再生ではなく、新しく生成されたものとして決済を識別することを可能にする。
【0043】
ステップ1020では、送信側コンピューティングデバイスの改ざん防止ハードウェア405は、取り消し可能決済トランザクション(RPT)を受信側デバイスに伝送し、そ
してRPTを永続ストレージに保存する。本明細書における永続ストレージは、フラッシュストレージ、ハードディスク、光学メディア、又はデバイスのスイッチを切った後もデータを保持する他のデバイスなどの不揮発性ストレージを指してもよい。RPTには、要求された決済からの金額と、送信者がその間はトランザクションを取り消すことができる取り消し可能期間が含まれる。取り消し可能期間は、受信側デバイスがトランザクションをリモート元帳サービス120に提出するときに始まる。受取人のシーケンス番号は、以前の決済の再生を防ぐ。
【0044】
ステップ1025では、受信側デバイス205は、RPTを評価する。RPTの評価には、送信側デバイスの署名、RPTと支出承認の整合性、及びRPTと決済要求の整合性が含まれる。受諾されると、受信側デバイスはRPTを永続ストレージに保存する。
【0045】
ステップ1030では、受信側デバイスは、送信側デバイスに確認を伝送する。この段階で、送信側デバイスは、確認が受信されない場合、トランザクションを取り消すことができる。トランザクションは、送信側コンピューティングデバイスの改ざん防止ハードウェア405が確認を受信し、次のステップに進むまでキャンセル可能である。所定の時間間隔内に確認が受信されない場合、ネットワーク接続が利用可能になると、送信側デバイスはリモートサービス元帳に取り消し決済トランザクションを提出する。
【0046】
ステップ1035では、送信側コンピューティングデバイスの改ざん防止ハードウェア405は、非取り消し可能決済トランザクション(非RPT)を受信側デバイスに伝送し、受信者の確認のためにそのユーザインターフェース(UI)上に「決済済み」を表示する。非RPTの受け取りは、トランザクションがローカルで実行されたことを受信側デバイスに指し示す。受信者は、Bluetooth(登録商標)、近距離通信(NFC)、Wi-Fiなどを介したローカルネットワーク接続障害が原因で非RPTが受信されたかどうかに関係なく、「決済済み」画面をレビューすることによって、送信側デバイスでトランザクションが実行されたことを確認することができる。トランザクション状況1045欄にあるように、受信者は、送信者のディスプレイを見て申し込みの状況を確認することができる。
【0047】
受信側デバイスは、受け取り時に非RPTを評価する。受信側デバイスは、非RPTと送信側デバイスの署名であるRPTとの整合性を検証し、非RPTを永続ストレージに保存し、RPTを破棄する。ステップ1040では、ネットワークが利用可能になると、送信側デバイス105又は受信側デバイス205の一方又は両方は、非RPT及び実行されたトランザクションをリモート元帳に報告することができる。決済は、数字1060によって代表的に示されるように、この段階では成功であり、もはやキャンセル可能ではない。受信側デバイスが非RPTを受信しない場合、リモート元帳が次に利用可能になると、受信側デバイスは、RPTを提出する。RPTを提出することは、取り消し可能期間が終了する前に送信側デバイスが取り消し決済トランザクションを提出しない限り、資金が移動されることを確実にする。資金がRPTによって移動されると、元帳は資金を保留状態にし、取り消し可能期間が終了するまで支出に利用できなくなる。
【0048】
図11は、送信側デバイス105と受信側デバイス205との間のハーフオフネットワーク決済プロトコル1102トランザクションの例示的な流れ図を示す。このシナリオでは、受信側デバイスはリモート元帳サービス120との動作可能なネットワーク接続を有しており、また送信側デバイスは有していない。
【0049】
ステップ1105では、受信側デバイス205は、支出承認要求を送信側デバイスに送信する。支出承認要求には、決済プロバイダを識別するための要求、及び受信側デバイスがライブ接続されているため、トランザクションが「オンラインモード」になるという指
示が含まれる。受信側デバイスがオフラインモードを指し示す図10のオフネットワーク決済プロトコル1002からのコントラストに留意されたい。
【0050】
ステップ1110で、送信側コンピューティングデバイスの改ざん防止ハードウェア405は、受信側デバイスから受信した要求に応答して、リモート元帳サービス120に新規支出承認の要求を伝送する。支出承認要求は暗号化され、そして受信側デバイスからリモート元帳サービス120に渡される。具体的には、パススルー通信は、受信側デバイスへの何らかのローカル接続を使用して伝送されてもよく、次いで受信側デバイスは、確立された広域ネットワーク(WAN)接続を使用して、支出承認要求をリモート元帳に伝送する。パススルー支出承認要求により、送信側コンピューティングデバイスの改ざん防止ハードウェア405は、そのアカウントに対する現在の元帳タイムスタンプを受信し、そして任意の未処理のトランザクションを提出することができる。
【0051】
ステップ1115では、リモート元帳サービス120は、パススルー通信として、送信側コンピューティングデバイス105の改ざん防止ハードウェア405に、新規支出承認を伝送する。リモート元帳サービスは未処理のトランザクションを実行し、アカウントが良好な状態のままであるという条件で、送信者の現在の元帳タイムスタンプ、有効期限、及び支出制限を詳述する暗号化された支出承認を伝送する。支出承認は、送信側デバイス105の改ざん防止ハードウェア405を使用して解読することができる。送信側デバイスは、オフラインで実施される場合がある将来のトランザクションのために、支出承認を永続ストレージに格納する。
【0052】
ステップ11120では、送信側コンピューティングデバイス105の改ざん防止ハードウェア405が、支出承認を受信側デバイスに伝送する。支出承認には、支出制限、支出承認の有効期限、及び送信側デバイスの改ざん防止ハードウェアを検証する決済プロバイダの署名が含まれる。ステップ1125では、受信側デバイスは、支出承認をその中の情報をレビューすることによって評価する。検証すると、ステップ1130では、受信側デバイスは、決済要求を送信側デバイスに伝送する。決済要求には、トランザクションの金額と、受信側デバイスの特定のトランザクションを識別するインクリメントされた受取人シーケンス番号が含まれる。
【0053】
ステップ1135では、送信側コンピューティングデバイスの改ざん防止ハードウェア405は、RPTを受信側デバイスに伝送し、そしてRPTを永続ストレージに保存する。RPTには、要求された決済からの金額と、送信者がその間はトランザクションを取り消すことができる取り消し可能期間が含まれる。このシナリオでは、取り消し可能期間は、実装形態に応じて、数秒又は数分持続してもよい。リモート元帳へのライブ接続があるため、取り消し可能期間は、受信側デバイスから確認を受け取るまでに1分間続いてもよい。取り消し可能期間は、受信側デバイスがトランザクションをリモート元帳サービス120に提出するときに始まる。受取人のシーケンス番号は、以前の決済の再生を防ぐ。
【0054】
ステップ1140では、受信側デバイスは、RPTをリモート元帳サービス120に伝送する。ステップ1145で、リモート元帳サービスは、送信者のアカウントから受信者のアカウントに資金を移動することによってトランザクションを実行する。リモート元帳サービスは、他のノードとのコンセンサスを待機してトランザクションを検証する。ステップ1150では、受信側デバイスは、リモート元帳サービスとのトランザクションの実行を確認する場合がある。この確認ステップは、例えば、リモート元帳からの確認をまだ待機している場合に発生する場合がある。ステップ1155では、リモート元帳サービスは、受信側デバイスとのトランザクションの実行を確認する。
【0055】
ステップ1160では、受信側デバイスは、決済受け取りの確認を、送信側コンピュー
ティングデバイスの改ざん防止ハードウェア405に伝送する。ステップ1165では、送信側コンピューティングデバイスの改ざん防止ハードウェア405は、非RPTを受信側デバイスに伝送し、そして受信者の確認のためにそのUI上に「決済済み」又は同様の含意を表示する。
【0056】
トランザクション状況1180欄に示されているように、トランザクションは、送信側デバイスが確認を受信し、非RPTを伝送し、そして「決済済み」の表現を表示するまで、いつでもキャンセル可能であった。この点に関して、トランザクションは、送信側デバイスが受信側デバイスの確認を処理する前であればいつでもキャンセル可能であってもよい。受信側デバイスは、確認が伝送された後、送信者のディスプレイ1190をレビューするか、又は非RPTを受信することにより、トランザクションの実行を確認することができる。
【0057】
非RPTを受信すると、トランザクション状況は「決済成功」1195とみなされる。ステップ1170では、受信側デバイスは、非RPTをリモート元帳サービス120に提出する。ステップ1175では、リモート元帳サービスは、受信側デバイスのアカウントに対してトランザクションを実行する。
【0058】
図12は、図10及び11のように、送信側デバイスの代わりに、受信側デバイスが改ざん防止ハードウェア1202を所有するシナリオの例示的な流れ図を示す。他のシナリオと同様に、改ざん防止ハードウェアを有するデバイスは信頼されているとみなされ、したがって、トランザクションが実行可能になるまで行使することができるトランザクションを取り消す権限を有する。
【0059】
ステップ1205では、送信側デバイス105は、決済要求を受信側デバイス105に送信する。決済要求には、トランザクションの金額が含まれてもよい。ステップ1210では、受信側デバイスは、決済要求を送信側デバイスに伝送する。決済要求には、以前の元帳同期からの支出承認が含まれて、受信側デバイスの改ざん防止ハードウェアが、付与された取り消し権限を正しく使用するように信頼されていることを証明する。決済要求はまた、受取人が新しい決済であることを簡単に識別できるように、受取人シーケンス番号を含んでもよい。
【0060】
ステップ1215では、送信側デバイス105は、受信側デバイスの改ざん防止ハードウェアを検証するために支出承認を検証する。ステップ1220では、送信側デバイスは、リモート元帳サービス120からの現在の元帳時間の要求を送信する。ステップ1225では、リモート元帳サービスは、現在の元帳時間を送信側デバイスに送信する。ステップ1230では、送信側デバイスは、可逆決済トランザクション(Rev-PT)を受信側デバイスに伝送する。Rev-PTは、前者では受信者が取り消す権限を有し、一方で後者では送信者が権限を有するという点で、RPTとは別個のものである。Rev-PTは、ステップ1210で決済要求からの受信者シーケンス番号を含み、20秒などの有効期間を含む。受信側デバイスは、受取人のシーケンス番号を確認し、そしてRev-PTを永続ストレージに保存する。ステップ1235では、受信側デバイスの改ざん防止ハードウェアは、Rev-PTをパススルー通信としてリモート元帳サービスに伝送する。
【0061】
ステップ1240では、リモート元帳サービスは、受信側デバイス205からRev-PTを介したパスの受信に応答してトランザクションを実行する。受信側デバイスは、送信側デバイスからのRev-PTで識別される期間(20秒など)待機する。元帳は、転送の金額、日付、及び送信者を記録するリバースチェックを記録してもよく、転送が完了したという確認を受信することができなかった場合に、受信側デバイスがお金を払い戻すことができるようにする。受信側デバイスの改ざん防止ハードウェアがリモート元帳から
すぐにエラーを受信しない場合、改ざん防止ハードウェアは、元帳がトランザクションを完了するまで一定期間待機し、その後ステップ1245でリモート元帳サービスへのパススルーとして実行確認クエリを伝送する。ステップ1250では、リモート元帳サービスは、受信側デバイスの改ざん防止ハードウェアへのパススルー通信としてトランザクションの実行を確認する。リモート元帳からパススルー確認を受信すると、受信側デバイスの改ざん防止ハードウェアは、トランザクションが実行されたとみなし、そしてもはやキャンセルできなくなる。受信側デバイスはトランザクションを完了し、そして削除-チェックトランザクションを作成して元帳に記録されたリバースチェックを削除する。リモート元帳からの確認が所定のタイムアウト内に到着しない場合、受信者は、払い戻しトランザクションを作成してリモート元帳でチェックを実行し、そして資金を送信者に返す。そもそも資金が移動していない場合、チェックは元帳に存在しないため、払い戻しは発生しない。
【0062】
ステップ1255では、受信側デバイスの改ざん防止ハードウェアは、決済受け取りの確認として削除チェックトランザクションを送信し、そしてそのUI上に「受信済み」を表示する。ステップ1230における送信側デバイスの事前の直接的かつ意図的な伝送から、確認の受け取り及び/又は受信側デバイスのUI上での「受信済み」の公開まで、送信者は中間状態にあり、また確認のために受信側デバイスのディスプレイに依存する。受信側デバイスのディスプレイは、トランザクションの保留中に各パススルー通信の状況更新を提供して、両当事者に状況を知らせるよう警告してもよい。
【0063】
ステップ1260では、送信側デバイス105は、リモート元帳サービス120に削除チェックトランザクションを転送する。ステップ1265では、リモート元帳サービスは、削除チェックトランザクションを実行し、送信側デバイスに報告する。ステップ1270では、送信側デバイスは、決済が確認されたことを表示し、これは、送信者のディスプレイを見ることによって受信者によって検証することができる。又は、元帳の確認が到着しなかった場合、受信側デバイスは払い戻しトランザクションを転送し、これにより、送信者は資金へのアクセスを取り戻すために実行することができる。
【0064】
トランザクション状況1280欄を参照すると、接続障害の取り扱いは、どちらの当事者が通信しているかに応じて様々である。例えば、参照符号1275によって代表的に示されるように、送信者がステップ1230でRev-PTを送信するまで、トランザクションは、受信側デバイス205、送信側デバイス105、又はリモート元帳サービス120によってキャンセルされてもよい。トランザクションは、受信側デバイスによってキャンセルされてもよく、又は送信者は、参照符号1290で代表的に示されているように、ステップ1250でリモート元帳サービスから受信側デバイスが確認を受信するまで、受信者のディスプレイ上でトランザクションの実行を確認するべきである。参照符号1295によって代表的に示されるように、ステップ1260でリモート元帳サービスが削除チェックトランザクションを受信すると、決済は全ての当事者に対して成功したとみなされる。領域1285と領域1290との差異は、トランザクションの各時点で関与する異なる当事者による。
【0065】
図10~12では、流れ図の右側の状況欄に示されているように、トランザクションは任意の時点でキャンセルすることができる。キャンセルは、例えば、キャンセルウインドウ中の任意の時点で通信が失われた場合に発生してもよい。例えば、図10では、通信1005、1010、1015、1020、及び1025において、これらの通信のいずれかが失われるか又は応答されない場合、送信側デバイス及び受信側デバイスの両方は、トランザクションがキャンセルされたとみなしてもよい。図10のステップ1030、図11のステップ1160、及び図12のステップ1230など、一方の当事者が確認を提出した期間は、その一方の当事者が中間状態にあり、かつ少なくとも非RPT(図10及び
11)又は削除チェック(図12)が受信されるまで、トランザクションを確認するために改ざん防止ハードウェアのディスプレイで確認することができる場合である。この中間状態の間を通して、両当事者がトランザクションの進行状況を承認し続けるために、状況の更新が改ざん防止デバイスのユーザインターフェースに表示されてもよい。更新は、例えば、図面に示される、又は図面を参照して本明細書で論じられるように、最も現在受信又は通信された特定の通信を含んでもよい。
【0066】
図13及び14は、送信側コンピューティングデバイス、受信側コンピューティングデバイス、リモート元帳サービス、又はそれらの組み合わせによって実施される例示的なプロセスを示す。ステップは逐次的な順番に示されているが、その中の機能及び動作は、代替的に配置されてもよく、かつ/又は特定のステップが追加又は削除されてもよい。このプロセスは、本開示の特徴を理解するための1つの特定の実装形態を示すためだけの例示である。
【0067】
ステップ1305では、図13で、送信側コンピューティングデバイスは、取り消し可能決済トランザクション(RPT)を受信側コンピューティングデバイスに送信し、RPTは、この中に、金額及び取り消し可能期間を含む。ステップ1310では、送信側コンピューティングデバイスは、RPTが受信側コンピューティングデバイスで受信及び検証されたという確認メッセージの受信に応答して、非取り消し可能決済トランザクション(非RPT)を受信側コンピューティングデバイスに送信する。代替的に、ステップ1315では、送信側コンピューティングデバイスは、送信側コンピューティングデバイスが受信側コンピューティングデバイスから確認メッセージを受信できなかったことに応答して、取り消し決済トランザクションを生成する。この点に関して、送信側コンピューティングデバイスは、確認メッセージの受け取り状況に応じて、非RPT又は取り消し決済トランザクションのいずれかを生成する。
【0068】
ステップ1405では、図14において、送信側コンピューティングデバイスは、オフネットワークプロトコルがトランザクションに使用されることを確立する。ステップ1410では、送信側コンピューティングデバイスは、RPTを受信側コンピューティングデバイスに送信する。ステップ1415では、送信側コンピューティングデバイスは、RPTが受信側コンピューティングデバイスで受信及び検証されたという確認メッセージを受信する。ステップ1420では、送信側コンピューティングデバイスは、確認メッセージの受信に応答して、非RPTを受信側コンピューティングデバイスに送信する。
【0069】
図15は、本明細書で記述する様々な機能を実行できるスマートフォン、タブレット、又はラップトップコンピュータなどのデバイスに対する例示的なアーキテクチャ1500を示す。図15に図示されるアーキテクチャ1500は、1つ以上のプロセッサ1502(例えば、中央処理装置、専用Alチップ、グラフィックス処理装置など)、RAM(ランダムアクセスメモリ)1506を含むシステムメモリ1504、ROM(読み取り専用メモリ)1508、及び長期ストレージデバイス1512を含む。システムバス1510は、アーキテクチャ1500内のコンポーネントを動作可能かつ機能的に結合する。起動中などに、アーキテクチャ1500内の要素間で情報を移動するのに役立つ基本ルーチンを含有する基本入力/出力システムは、典型的に、ROM1508内に格納される。アーキテクチャ1500は、アプリケーション、ファイルシステム、及びオペレーティングシステムを実装するために利用されるソフトウェアコード又は他のコンピュータ実行コードを格納するための長期ストレージデバイス1512を更に含む。ストレージデバイス1512は、バス1510に接続されたストレージコントローラ(図示せず)を介してプロセッサ1502に接続される。ストレージデバイス1512及びそれに関連するコンピュータ可読記憶媒体は、アーキテクチャ1500に対して不揮発性ストレージを提供する。本明細書に含有されるコンピュータ可読記憶媒体の記述は、ハードディスク又はCD-RO
Mドライブなどの長期ストレージデバイスに言及しているが、コンピュータ可読記憶媒体は、ソリッドステージドライブ及びフラッシュメモリを含む、アーキテクチャ1500によってアクセス可能な任意の利用可能な記憶媒体とすることができることが当業者によって理解され得る。
【0070】
限定ではなく一例として、コンピュータ可読記憶媒体には、コンピュータ可読命令、データ構造、プログラムモジュール、又はその他のデータなどの情報を格納するための任意の方法又は技術で実装された揮発性及び不揮発性、リムーバブル及び非リムーバブル媒体が含まれてもよい。例えば、コンピュータ可読媒体には、RAM、ROM、EPROM(消去可能なプログラム可能な読み取り専用メモリ)、EEPROM(電気的に消去可能なプログラム可能な読み取り専用メモリ)、フラッシュメモリもしくは他のソリッドステートメモリ技術、CD-ROM、DVD、HD-DVD(高解像度DVD)、Blu-ray、又はその他の光学ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージ、又はその他の磁気ストレージデバイス、又は所望の情報を格納するために使用することができ、かつアーキテクチャ1500によってアクセスすることができる任意の他の媒体が含まれるが、これらに限定されない。
【0071】
様々な実施形態によれば、アーキテクチャ1500はネットワークを介したリモートコンピュータへの論理接続を使用してネットワーク環境で動作し得る。アーキテクチャ1500は、バス1510に接続されたネットワークインターフェースユニット1516を介してネットワークに接続してもよい。ネットワークインターフェースユニット1516は、他の種類のネットワークおよびリモートコンピュータシステムへの接続にも利用されてもよいことが理解され得る。アーキテクチャ1500はまた、キーボード、マウス、タッチパッド、タッチスクリーン、ボタン及びスイッチなどの制御デバイス、又は電子スタイラスを含む、いくつかの他のデバイス(図15には図示せず)からの入力を受信及び処理するための入力/出力コントローラ1518も含んでもよい。同様に、入力/出力コントローラ1518は、ディスプレイ画面、ユーザインターフェース、プリンタ、又はその他の種類の出力デバイス(これも図15には図示せず)に出力を提供してもよい。
【0072】
本明細書で記述される任意のソフトウェアコンポーネントは、プロセッサ1502にロードされ、かつ実行されると、プロセッサ1502及びアーキテクチャ1500全体を、汎用コンピューティングシステムから、本明細書で提示される機能を容易にするようにカスタマイズされた専用コンピューティングシステムへと変形する場合があることが理解され得る。プロセッサ1502は、個別に又は集合的に任意の数の状況を仮定し得る、任意の数のトランジスタ又は他の個別の回路要素から構築されてもよい。より具体的には、プロセッサ1502は、本明細書で開示されるソフトウェアモジュール内に含有される実行可能な命令に応答して、有限状態機械として動作してもよい。これらのコンピュータ実行可能命令は、プロセッサ1502が状態間で遷移する方法を指定することによってプロセッサ1502を変換し、それによってプロセッサ1502を構成するトランジスタ又は他の個別のハードウェア要素を変形することができる。
【0073】
本明細書で提示されるソフトウェアモジュールを符号化すると、本明細書で提示されるコンピュータ可読記憶媒体の物理構造も変形される場合がある。物理構造の特定の変形は、この記述の様々な実装形態における様々な要因に依存してもよい。そのような要因の例としては、コンピュータ可読記憶媒体を実装するために使用される技術、コンピュータ可読記憶媒体が一次又は二次ストレージとして特徴付けられるかどうかなどが挙げらてもよいが、これらに限定されない。例えば、コンピュータ可読記憶媒体が半導体ベースのメモリとして実装される場合、本明細書で開示されるソフトウェアは、半導体メモリの物理的状態を変形することによってコンピュータ可読記憶媒体上で符号化されてもよい。例えば、ソフトウェアは、トランジスタ、キャパシタ、又は半導体メモリを構成する他の個別の
回路要素の状態を変形する場合がある。ソフトウェアはまた、データをその上に格納するために、そのようなコンポーネントの物理的状態を変形する場合がある。
【0074】
別の例として、本明細書で開示されるコンピュータ可読記憶媒体は、磁気技術又は光学技術を使用して実装されてもよい。そのような実装形態では、本明細書で提示されるソフトウェアは、ソフトウェアがその中に符号化されると、磁気又は光学媒体の物理的状態を変形してもよい。これらの変換は、所与の磁気媒体内の特定の場所の磁気特性を変更することを含んでもよい。これらの変換は、所与の光媒体内の特定の場所の物理的特徴又は特性を変更して、それらの場所の光学特性を変えることも含んでもよい。前述の例は、この議論を容易にするためにのみ提供されており、本説明の範囲及び精神から逸脱することなく、物理媒体の他の変換が可能である。
【0075】
上記に照らして、本明細書に提示されるソフトウェアコンポーネントを格納及び実行するために、多くの種類の物理的変形がアーキテクチャ1500内で行われることが理解され得る。また、アーキテクチャ1500が、ウェアラブルデバイス、ハンドヘルドコンピュータ、埋め込みコンピュータシステム、スマートフォン、PDA、及び当業者に既知の他のタイプのコンピューティングデバイスを含む、他のタイプのコンピューティングデバイスを含んでもよいことも理解され得る。アーキテクチャ1500は、図15に示されるコンポーネントの全てを含まなくてもよく、図15に明示的に示されていない他のコンポーネントを含んでもよく、又は図15に示されているものとは完全に異なるアーキテクチャを利用してもよいことも企図される。
【0076】
コンピューティングデバイスは、送信側コンピューティングデバイス又は受信側コンピューティングデバイスによって実施される様々な伝送など、本明細書で論じられる様々な機能及び動作を実行するために、改ざん防止ハードウェア1522を有して更に構成されてもよい。改ざん防止ハードウェアは、秘密鍵を筐体の外側では使用できないようにし、その秘密鍵を使用するために認証値を必要とし、不変とし、かつ他のセキュリティ機能の中でも特に、間違った認証値の推測が多すぎるとアクセスを防止するように構成されたデバイスとみなされてもよい。本明細書ではハードウェア機能について論じているが、改ざん防止は、ハードウェアとソフトウェアのハイブリッド、純粋なハードウェア、又は純粋なソフトウェアとして構成されてもよい。改ざん防止デバイスは、不正が試みられた兆候を提示してもよく、または何らかの物理的な侵入が試みられたときに反応してもよい。改ざん防止ハードウェアは、トラステッドプラットフォームモジュール(TPM)であるか、公開されたプロセッサの一部として作成されたトラステッド実行環境(TEE)として実装され得る。
【0077】
図16は、本開示が実装されてもよいリモートサーバ、スマートフォン、タブレットコンピュータ、ラップトップコンピュータ、又はパーソナルコンピュータ(PC)などの例示的なコンピュータシステム1600の簡略ブロック図である。コンピュータシステム1600は、プロセッサ1605、システムメモリ1611、及びシステムメモリ1611を含む様々なシステムコンポーネントをプロセッサ1605に結合するシステムバス1614を含む。システムバス1614は、メモリバス又はメモリコントローラ、周辺バス、又は様々なバスアーキテクチャのうちのいずれかを使用するローカルバスを含む、いくつかの種類のバス構造のうちのいずれかであってもよい。システムメモリ1611は、読み取り専用メモリ(ROM)1617及びランダムアクセスメモリ(RAM)1621を含む。起動中などに、コンピュータシステム1600内の要素間で情報を転送するのに役立つ基本ルーチンを含有する基本入力/出力システム(BIOS)1625は、ROM1617内に格納される。コンピュータシステム1600は更に、内部に配置されたハードディスクから読み出し、かつそれへと書き込むためのハードディスクドライブ1628、リムーバブル磁気ディスク(例えば、フロッピーディスク)から読み出し、かつそれへと書
き込むための磁気ディスクドライブ1630、及びCD(コンパクトディスク)、DVD(デジタルバーサタイルディスク)、又は他の光学媒体などのリムーバブル光ディスク1643から読み出し、かつそれへと書き込むための光ディスクドライブ1638を含んでもよい。ハードディスクドライブ1628、磁気ディスクドライブ1630、及び光ディスクドライブ1638は、それぞれハードディスクドライブインターフェース1646、磁気ディスクドライブインターフェース1649、及び光学ドライブインターフェース1652によってシステムバス1614に接続される。ドライブ及びそれらに関連するコンピュータ可読記憶媒体は、コンピュータシステム1600のためのコンピュータ可読命令、データ構造、プログラムモジュール、及び他のデータの不揮発性ストレージを提供する。この用例は、ハードディスク、リムーバブル磁気ディスク1633、及びリムーバブル光ディスク1643を含むが、磁気カセット、フラッシュメモリカード、デジタルビデオディスク、データカートリッジ、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)など、コンピュータによってアクセス可能なデータを格納することができるその他の種類のコンピュータ読み取り可能な記憶媒体もまた、本開示のいくつかの用途では使用されてもよい。更に、本明細書で使用される場合、コンピュータ可読記憶媒体という用語は、媒体タイプの1つ以上のインスタンス(例えば、1つ以上の磁気ディスク、1つ以上のCDなど)を含む。本明細書及び特許請求の範囲の目的のために、「コンピュータ可読記憶媒体」という語句及びその変形は、非一時的な実施形態を包含することを意図しており、波形、信号、及び/又は他の一時的及び/又は無形の通信媒体を含まない。
【0078】
オペレーティングシステム1655、1つ以上のアプリケーションプログラム1657、他のプログラムモジュール1660、及びプログラムデータ1663を含む、いくつかのプログラムモジュールを、ハードディスク、磁気ディスク、光ディスク1643、ROM1617、又はRAM1621に格納してもよい。ユーザは、キーボード1666、ポインティングデバイス(例えば、マウス)1668、又はタッチスクリーンディスプレイ1673などの入力デバイスを介して、コマンド及び情報をコンピュータシステム1600に入力してもよい。他の入力デバイスとしては、マイクロフォンジョイスティック、ゲームパッド、衛星放送受信アンテナ、スキャナ、トラックボール、タッチパッド、タッチセンシティブデバイス、音声コマンドモジュールもしくはデバイス、ユーザモーション又はユーザジェスチャキャプチャデバイスなどが挙げられる場合がある。これら及び他の入力デバイスは、多くの場合、システムバス1614に結合されたシリアルポートインターフェース1671を介してプロセッサ1605に接続されるが、パラレルポート、ゲームポート、又はユニバーサルシリアルバス(USB)などの他のインターフェースによっても接続されてもよい。モニタ1673又は他の種類のディスプレイデバイスも、ビデオアダプタ1675などのインターフェースを介してシステムバス1614に接続される。モニタ1673に加えて、パーソナルコンピュータは典型的に、スピーカ及びプリンタなどの他の周辺出力デバイス(図示せず)を含む。図16に示される用例は、ホストアダプタ1678、スモールコンピュータシステムインターフェース(SCSI)バス1683、及びSCSIバス1683に接続された外部ストレージデバイス1676も含む。
【0079】
コンピュータシステム1600は、リモートコンピュータ1688などの1つ以上のリモートコンピュータへの論理接続を使用して、ネットワーク化された環境で動作可能である。リモートコンピュータ1688は、別のパーソナルコンピュータ、サーバ、ルータ、ネットワークPC、ピアデバイス、又は他の共通ネットワークノードとして選択されてもよく、また図16には代表的なリモートメモリ/ストレージデバイス1690が1つだけ示されているが、典型的には、コンピュータシステム1600に関して上で記述した要素の多く又は全てを含む。図16に描写される論理接続は、ローカルエリアネットワーク(LAN)1693及びワイドエリアネットワーク(WAN)1695を含む。このようなネットワーク環境は、例えば、オフィス、企業全体のコンピュータネットワーク、イントラネット、およびインターネットなどでしばしば展開される。
【0080】
LANネットワーキング環境で使用される場合、コンピュータシステム1600は、ネットワークインターフェース又はアダプター1696を介してローカルエリアネットワーク1693に接続される。WANネットワーキング環境で使用される場合、コンピュータシステム1600は典型的に、ブロードバンドモデム1698、ネットワークゲートウェイ、又はインターネットなどの広域ネットワーク1695上で通信を確立するための他の手段を含む。内部又は外部であってもよいブロードバンドモデム1698は、シリアルポートインターフェース1671を介してシステムバス1614に接続される。ネットワーク化された環境では、コンピュータシステム1600又はその一部に関連するプログラムモジュールは、リモートメモリストレージデバイス1690内に格納されてもよい。図16に示されるネットワーク接続は例示的であり、またコンピュータ間の通信リンクを確立する他の手段は、本開示のアプリケーションの特定の要件に応じて使用され得ることが留意される。
【0081】
本明細書では、様々な例示的な実施形態が開示される。一例示実施形態では、デジタル通貨決済を送信及び受信するために構成された送信側コンピューティングデバイスであって、受信側コンピューティングデバイスと通信するためのネットワークインターフェースと、改ざん防止ハードウェアであって、改ざん防止ハードウェアの外部でアクセス不能な1つ以上の秘密鍵を保護する、改ざん防止ハードウェアと、1つ以上のプロセッサと、命令を有する1つ以上のハードウェアベースのメモリデバイスであって、命令は、1つ以上のプロセッサによって実行されたときに、送信側コンピューティングデバイスに、取り消し可能決済トランザクション(RPT)を受信側コンピューティングデバイスに送信させることであって、RPTが、金額と、送信側デバイスがその間はトランザクションをキャンセルする権限を有する取り消し可能期間とを含む、送信させることと、以下のアクション、すなわち、受信側コンピューティングデバイスでRPTが受信及び検証された確認メッセージを受信することに応答して、受信側コンピューティングデバイスに、決済が成功し、かつRPTからの取り消し可能期間が削除されたことを指し示す、非取り消し可能決済トランザクション(非RPT)を送信すること、又は、送信側デバイスが受信側コンピューティングデバイスから確認メッセージを受信できなかったことに応答して、取り消し決済トランザクションを生成すること、のうちの1つのアクションを実行させる、1つ以上のハードウェアベースのメモリデバイスと、を備える、送信側コンピューティングデバイスが開示される。
【0082】
別の実施例では、1つ以上のプロセッサは、送信側デバイスのユーザインターフェース上に、受信側コンピューティングデバイスから確認メッセージを受信することに応答して、決済が成功したという確認メッセージを公開するように更に構成されている。別の実施例として、1つ以上のプロセッサは、トランザクションがオフネットワークプロトコルの下で実行されるという命令を受信するように更に構成されている。別の実施例では、トランザクションがオフネットワークプロトコルの下で実行されるという命令が、RPTを伝送する前に受信される。別の実施例では、1つ以上のプロセッサが、ネットワークアクセスが利用可能になると、非RPTをリモート元帳サービスに伝送するように更に構成されている。別の実施例として、送信側コンピューティングデバイス及び受信側コンピューティングデバイスは、送信側コンピューティングデバイスが確認メッセージを受信する前に何らかの通信が失われた場合に、トランザクションがキャンセルされたとみなすように構成されている。別の実施例では、1つ以上のプロセッサは、送信側デバイスが所定の時間間隔内に受信側コンピューティングデバイスから確認メッセージを受信することができなかったことに応答して、トランザクションがキャンセルされたことを指し示すメッセージを送信側デバイスのユーザインターフェース上に公開するように更に構成されている。別の実施例として、1つ以上のプロセッサは、支出承認を受信側コンピューティングデバイスに伝送するように更に構成され、ここで支出承認は、送信アカウントが改ざん防止ハー
ドウェアにより構成された送信側コンピューティングデバイスの排他的管理下にあることを確認する。別の実施例では、1つ以上のプロセッサは、ネットワーク接続が利用可能になると、取り消し決済トランザクションを伝送するように更に構成されている。別の実施例では、1つ以上のプロセッサは、受信側コンピューティングデバイスとのパススルー通信としてリモート元帳サービスから新規支出承認を要求するように更に構成されている。別の実施例として、1つ以上のプロセッサは、受信側コンピューティングデバイスに新規支出承認を送信するように更に構成されている。
【0083】
別の例示的実施形態は、トランザクションを実行するために、送信側コンピューティングデバイス内の改ざん防止ハードウェアによって少なくとも部分的に実行される方法であって、オフネットワークプロトコルがトランザクションに対して使用されることを確立することと、取り消し可能決済トランザクション(RPT)を受信側コンピューティングデバイスに送信することであって、RPTが、金額、及び送信側デバイスがその間はトランザクションをキャンセルする権限を与えられている取り消し可能期間を含む、送信することと、受信側コンピューティングデバイスでRPTが受信及び検証された確認メッセージを受信することと、確認メッセージを受信したことに応答して、受信側デバイスに、決済が成功し、かつRPTからの取り消し可能期間が削除されたことを指し示す、非取り消し可能決済トランザクション(非RPT)を送信することと、を含む、方法を開示している。
【0084】
別の実施例では、送信側デバイスのユーザインターフェース上に、受信側コンピューティングデバイスから確認メッセージを受信することに応答して、決済が成功した確認メッセージを公開することを更に含む。別の実施例では、受信側コンピューティングデバイスからの命令を受信することに応答して、オフネットワークプロトコルが確立される。別の実施例では、ネットワークアクセスが利用可能になると、非RPTをリモート元帳サービスに伝送することを更に含む。別の実施例として、送信側コンピューティングデバイス及び受信側コンピューティングデバイスが、送信側コンピューティングデバイスが確認メッセージを受信する前に何らかの通信が失われた場合に、トランザクションがキャンセルされたとみなすように構成されている。
【0085】
別の例示的実施形態は、コンピュータ実行可能命令を格納する1つ以上のハードウェアベースのメモリデバイスであって、コンピュータ実行可能命令が、送信側コンピューティングデバイスに関連付けられた1つ以上のプロセッサによって実行されると、送信側コンピューティングデバイスに、取り消し可能決済トランザクション(RPT)を受信側コンピューティングデバイスに送信させることであって、RPTが、金額、及び送信側デバイスがその間はトランザクションをキャンセルする権限を持つ取り消し可能期間を含む、送信させることと、以下のアクション、すなわち、受信側コンピューティングデバイスでRPTが受信及び検証された確認メッセージを受信することに応答して、受信側コンピューティングデバイスに、決済が成功し、かつRPTからの取り消し可能期間が削除されたことを指し示す、非取り消し可能決済トランザクション(非RPT)を送信すること、又は、送信側デバイスが受信側コンピューティングデバイスから確認メッセージを受信することができなかったことに応答して、取り消し決済トランザクションを生成すること、のうちの1つのアクションを実行させる、1つ以上のハードウェアベースのメモリデバイスを開示している。
【0086】
更なる実施例では、実行された命令は更に、送信側コンピューティングデバイスに、支出承認を受信側コンピューティングデバイスに伝送させ、ここで支出承認は送信側コンピューティングデバイスが改ざん防止ハードウェアを有して構成されていることを確認する。別の実施例として、実行された命令は更に、ネットワークアクセスが利用可能になると、送信側コンピューティングデバイスに、非RPTをリモート元帳サービスに伝送させる
。更なる実施例として、実行された命令は更に、送信側コンピューティングデバイスに、トランザクションがオフネットワークプロトコルの下で実行されるという命令を受信させる。
【0087】
主題は、構造的特徴及び/又は方法論的行為に特有の言葉で記述されているが、添付の特許請求の範囲で定義される主題は、上に説明された特定の特徴又は行為に必ずしも限定されないことが理解されるべきである。むしろ、上に記述された特定の特徴及び行為は、特許請求の範囲を実装する例示的な形態として開示されている。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
【国際調査報告】