(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-08-13
(45)【発行日】2024-08-21
(54)【発明の名称】暗号通貨受け入れシステム
(51)【国際特許分類】
G06Q 20/06 20120101AFI20240814BHJP
G06Q 20/38 20120101ALI20240814BHJP
【FI】
G06Q20/06 300
G06Q20/38 310
(21)【出願番号】P 2022530182
(86)(22)【出願日】2020-11-17
(86)【国際出願番号】 US2020060894
(87)【国際公開番号】W WO2021108170
(87)【国際公開日】2021-06-03
【審査請求日】2022-11-10
(32)【優先日】2019-11-26
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】522202621
【氏名又は名称】フレクサ インク.
(74)【代理人】
【識別番号】110000659
【氏名又は名称】弁理士法人広江アソシエイツ特許事務所
(72)【発明者】
【氏名】キルゴア,ザカリー
(72)【発明者】
【氏名】スポルディング,タイラー ロバート
(72)【発明者】
【氏名】フィルター,トレバー
【審査官】毛利 太郎
(56)【参考文献】
【文献】特開2002-133182(JP,A)
【文献】特開2017-200196(JP,A)
【文献】特開平09-311891(JP,A)
【文献】米国特許出願公開第2016/0148173(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06Q 10/00 - 99/00
(57)【特許請求の範囲】
【請求項1】
方法は、
暗号通貨受け入れシステムの支払人コンピューティングデバイスによって、第1の暗号通貨を使用して、前記暗号通貨受け入れシステムの受取人コンピューティングデバイスへの支払いを開始することであって、前記支払人コンピューティングデバイスの暗号通貨ウォレットが、前記第1の暗号通貨を格納しており、前記受取人コンピューティングデバイスが、所望の通貨を受け入れる、ことと、
前記暗号通貨受け入れシステムの暗号通貨受け入れネットワークコンピューティングデバイスによって、前記支払いを裏付けるために担保暗号通貨の額を保留にすることであって、前記暗号通貨ウォレットが、前記暗号通貨受け入れネットワークコンピューティングデバイスのステークアカウントと関連付けられており、1つ以上のステーキングエンティティが、前記暗号通貨ウォレットと関連付けられた支払いを裏付けるために、担保暗号通貨を前記ステークアカウントに格納する、ことと、
前記暗号通貨受け入れネットワークコンピューティングデバイスによって、前記支払いの第1のネットワーク確認を前記支払人コンピューティングデバイスに送信することであって、前記担保暗号通貨の前記額が保留されていることを、前記第1のネットワーク確認が証明する、ことと、
前記支払人コンピューティングデバイスによって、前記支払いに必要な第1の暗号通貨の額を前記暗号通貨受け入れネットワークコンピューティングデバイスに送信することと、
前記暗号通貨受け入れネットワークコンピューティングデバイスによって、前記支払いの第2のネットワーク確認を前記支払人コンピューティングデバイスに送信することであって、前記第1の暗号通貨の前記額が、保留されている前記担保暗号通貨の前記額によって裏付けられていることを、前記第2のネットワーク確認が証明する、ことと、
前記支払人コンピューティングデバイスによって、前記支払いのための確定命令を前記受取人コンピューティングデバイスに送信することと、
前記暗号通貨受け入れネットワークコンピューティングデバイスによって、前記第1の暗号通貨と関連付けられたコンセンサスネットワークに接続して、前記第1の暗号通貨の前記額を証明することと、
前記暗号通貨受け入れネットワークコンピューティングデバイスによって、前記第1の暗号通貨の前記額を、前記暗号通貨受け入れシステムの暗号通貨交換デバイスに送信することと、
前記暗号通貨交換デバイスによって、前記第1の暗号通貨の前記額を、前記支払いに必要な前記所望の通貨の額に変換することと、
前記暗号通貨交換デバイスによって、前記支払いを完了するために、前記所望の通貨の前記額を前記受取人コンピューティングデバイスに送信することと、
前記第1の暗号通貨の前記額が、前記コンセンサスネットワークによって証明されると、
前記暗号通貨受け入れネットワークコンピューティングデバイスによって、前記担保暗号通貨の前記額の前記保留を解除することと、を含む方法。
【請求項2】
前記支払いを前記開始することが、
前記支払人コンピューティングデバイスによって、前記受取人コンピューティングデバイスとの直接リンクを確立することと、
前記支払人コンピューティングデバイスによって、前記支払いを開始するための要求を前記受取人コンピューティングデバイスに送信することと、
前記支払人コンピューティングデバイスによって、前記支払いの開始を承認するワンタイムユースコードを前記受取人コンピューティングデバイスから受信することと、を含む、請求項1に記載の方法。
【請求項3】
請求項2に記載の方法は、
前記支払人コンピューティングデバイスによって、前記支払いを処理するための前記要求を前記暗号通貨受け入れネットワークコンピューティングデバイスに送信することをさらに含み、前記支払いを処理するための前記要求は、前記ワンタイムユースコードを含む、方法。
【請求項4】
前記所望の通貨が、
法定通貨、および
前記暗号通貨交換デバイスによって認められた暗号通貨のうちの1つを含む、請求項1に記載の方法。
【請求項5】
前記担保暗号通貨の前記額を前記保留に前記することが、
前記暗号通貨受け入れネットワークコンピューティングデバイスによって、前記担保暗号通貨の前記額を、
前記暗号通貨ウォレットおよび前記受取人コンピューティングデバイスのうちの1つ以上に基づいたデフォルトの保留額と、
前記支払人コンピューティングデバイスの特性と、
前記受取人コンピューティングデバイスの特性と、
前記ステークアカウントの特性と、
前記暗号通貨ウォレットによって格納された第1の暗号通貨の総額と、のうちの1つ以上に基づいて決定することを含む、請求項1に記載の方法。
【請求項6】
前記1つ以上のステーキングエンティティが、
前記暗号通貨ウォレットの開発者と、
前記暗号通貨受け入れシステムの1つ以上の他の暗号通貨ウォレットの開発者と、
前記暗号通貨受け入れシステムのユーザコンピューティングデバイスと、のうちの1つ以上を含む、請求項1に記載の方法。
【請求項7】
請求項1に記載の方法は、
保留された担保暗号通貨の前記額が、前記支払いに必要な所望の通貨の前記額よりも大きいとき、
前記暗号通貨受け入れネットワークコンピューティングデバイスによって、前記支払いに必要な所望の通貨の前記額に実質的に等しいように、保留された担保暗号通貨の前記額を調整することをさらに含む、方法。
【請求項8】
前記支払いを完了するために、前記所望の通貨の前記額を前記受取人コンピューティングデバイスに前記送信することが、
前記暗号通貨交換デバイスによって、前記所望の通貨の前記額を、預入するための前記受取人コンピューティングデバイスと関連付けられた受取人バンキングコンピューティングデバイスに送信することと、
前記受取人バンキングコンピューティングデバイスによって、前記預入の領収書を前記暗号通貨受け入れネットワークコンピューティングデバイスに送信することと、を含む、請求項1に記載の方法。
【請求項9】
前記確定命令が、前記支払いの前記第2のネットワーク確認を含む、請求項1に記載の方法。
【請求項10】
請求項1に記載の方法は、
前記第1の暗号通貨の前記額が、前記コンセンサスネットワークによって証明されないとき、
前記暗号通貨受け入れネットワークコンピューティングデバイスによって、前記担保暗号通貨の前記額を前記ステークアカウントから引き出すことをさらに含む、方法。
【請求項11】
請求項1に記載の方法は、
前記支払いのための前記確定命令が前記支払人コンピューティングデバイスによって送信された後、前記暗号通貨受け入れネットワークコンピューティングデバイスによって、支払い失敗通知を前記暗号通貨ウォレットから受信することと、
前記暗号通貨受け入れネットワークコンピューティングデバイスによって、前記担保暗号通貨の前記額を前記ステークアカウントから引き出すことと、
前記暗号通貨受け入れネットワークコンピューティングデバイスによって、前記担保暗号通貨の前記額を前記暗号通貨交換デバイスに送信することと、
前記暗号通貨交換デバイスによって、前記担保暗号通貨の前記額を、前記支払いに必要な前記所望の通貨の前記額に変換することと、
前記暗号通貨交換デバイスによって、前記所望の通貨の前記額を前記受取人コンピューティングデバイスに送信することと、をさらに含む、方法。
【請求項12】
請求項1に記載の方法は、
保留された前記担保暗号通貨の前記額が、前記支払いに必要な所望の通貨の前記額未満であるとき、
前記暗号通貨受け入れネットワークコンピューティングデバイスによって、前記支払いが許可されるかどうかを判定することと、
前記支払いが許可される場合、
保留された前記担保暗号通貨の前記額と、追加の担保暗号通貨とを合わせたものが、前記支払いに必要な所望の通貨の前記額に実質的に等しいように、前記ステークアカウントから前記追加の担保暗号通貨を、前記暗号通貨受け入れネットワークコンピューティングデバイスによって、保留にすることと、
前記支払いが許可されない場合、
前記暗号通貨受け入れネットワークコンピューティングデバイスによって、前記支払いをキャンセルすることと、をさらに含む、方法。
【請求項13】
請求項1に記載の方法は、
前記受取人コンピューティングデバイスによって、前記所望の通貨の前記額の預入の領収書を前記暗号通貨受け入れネットワークコンピューティングデバイスに送信することと、
前記受取人コンピューティングデバイスによって、前記支払いのための取引手数料を前記暗号通貨受け入れネットワークコンピューティングデバイスに送信することと、
前記暗号通貨受け入れネットワークコンピューティングデバイスによって、前記取引手数料を担保暗号通貨の額に変換することと、
前記暗号通貨受け入れネットワークコンピューティングデバイスによって、前記担保暗号通貨の前記額を、ステークプール報酬として前記ステークアカウントに預入することと、をさらに含む、方法。
【請求項14】
請求項1に記載の方法は、
前記暗号通貨交換デバイスによって、前記所望の通貨の前記額を、預入するための暗号通貨受け入れシステムのバンキングコンピューティングデバイスに送信することと、
前記暗号通貨受け入れシステムのバンキングコンピューティングデバイスによって、前記所望の通貨の前記額を、預入するための前記受取人コンピューティングデバイスと関連付けられた
受取人バンキングコンピューティングデバイスに送信することと、をさらに含む、方法。
【請求項15】
コンピュータ可読メモリは、
第1のメモリ素子であって、暗号通貨受け入れシステムの支払人コンピューティングデバイスによって実行されると、前記支払人コンピューティングデバイスに、
第1の暗号通貨を使用して、前記暗号通貨受け入れシステムの受取人コンピューティングデバイスへの支払いを開始させる動作命令を記憶し、前記支払人コンピューティングデバイスの暗号通貨ウォレットが、前記第1の暗号通貨を格納しており、前記受取人コンピューティングデバイスが、所望の通貨を受け入れる、第1のメモリ素子と、
第2のメモリ素子であって、前記暗号通貨受け入れシステムの暗号通貨受け入れネットワークコンピューティングデバイスによって実行されると、前記暗号通貨受け入れネットワークコンピューティングデバイスに、
前記支払いを裏付けるために担保暗号通貨の額を保留にすることであって、前記暗号通貨ウォレットが、前記暗号通貨受け入れネットワークコンピューティングデバイスのステークアカウントと関連付けられており、1つ以上のステーキングエンティティが、前記暗号通貨ウォレットと関連付けられた支払いを裏付けるために、前記ステークアカウントに担保暗号通貨を格納する、ことと、
前記支払いの第1のネットワーク確認を前記支払人コンピューティングデバイスに送信することであって、前記担保暗号通貨の前記額が保留されていることを前記第1のネットワーク確認が証明する、ことと、を行わせる動作命令を記憶する、第2のメモリ素子と、
第3のメモリ素子であって、前記支払人コンピューティングデバイスによって実行されると、前記支払人コンピューティングデバイスに、
前記支払いに必要な第1の暗号通貨の額を前記暗号通貨受け入れネットワークコンピューティングデバイスへ送信させる動作命令を記憶する、第3のメモリ素子と、
第4のメモリ素子であって、前記暗号通貨受け入れネットワークコンピューティングデバイスによって実行されると、前記暗号通貨受け入れネットワークコンピューティングデバイスに、
前記支払いの第2のネットワーク確認を前記支払人コンピューティングデバイスに送信させる動作命令を記憶し、前記第1の暗号通貨の前記額が、保留された前記担保暗号通貨の前記額によって裏付けられていることを、前記第2のネットワーク確認が証明する、第4のメモリ素子と、
第5のメモリ素子であって、前記支払人コンピューティングデバイスによって実行されると、前記支払人コンピューティングデバイスに、
前記支払いのための確定命令を前記受取人コンピューティングデバイスに送信させる動作命令を記憶する、第5のメモリ素子と、
第6のメモリ素子であって、前記暗号通貨受け入れネットワークコンピューティングデバイスによって実行されると、前記暗号通貨受け入れネットワークコンピューティングデバイスに、
前記第1の暗号通貨の前記額を証明するために、前記第1の暗号通貨と関連付けられたコンセンサスネットワークに接続することと、
前記第1の暗号通貨の前記額を前記暗号通貨受け入れシステムの暗号通貨交換デバイスに送信することと、を行わせる動作命令を記憶する、第6のメモリ素子と、
第7のメモリ素子であって、前記暗号通貨交換デバイスによって実行されると、前記暗号通貨交換デバイスに、
前記第1の暗号通貨の前記額を、前記支払いに必要な前記所望の通貨の額に変換することと、
前記支払いを完了するために、前記所望の通貨の前記額を前記受取人コンピューティングデバイスに送信することと、を行わせる動作命令を記憶する、第7のメモリ素子と、
第8のメモリ素子であって、前記暗号通貨受け入れネットワークコンピューティングデバイスによって実行されると、前記暗号通貨受け入れネットワークコンピューティングデバイスに、
前記第1の暗号通貨の前記額が、前記コンセンサスネットワークによって証明されると、
前記担保暗号通貨の前記額の前記保留を解除させる動作命令を記憶する、第8のメモリ要子と、を備えるコンピュータ可読メモリ。
【請求項16】
前記第1のメモリ素子は、前記支払人コンピューティングデバイスによって実行されると、前記支払人コンピューティングデバイスに、前記支払いを、
前記受取人コンピューティングデバイスとの直接リンクを確立することと、
前記支払いを開始するための要求を前記受取人コンピューティングデバイスに送信することと、
前記支払いの開始を承認するワンタイムユースコードを前記受取人コンピューティングデバイスから受信することと、によって開始させる動作命令をさらに記憶する、請求項15に記載のコンピュータ可読メモリ。
【請求項17】
前記第1のメモリ素子は、前記支払人コンピューティングデバイスによって実行されると、前記支払人コンピューティングデバイスに、
前記支払いを処理するための前記要求を前記暗号通貨受け入れネットワークコンピューティングデバイスに送信させる動作命令をさらに記憶し、前記支払いを処理するための前記要求が、前記ワンタイムユースコードを含む、請求項16に記載のコンピュータ可読メモリ。
【請求項18】
前記所望の通貨が、
法定通貨、および
前記暗号通貨交換デバイスによって認められた暗号通貨のうちの1つを含む、請求項15に記載のコンピュータ可読メモリ。
【請求項19】
前記第2のメモリ素子は、前記暗号通貨受け入れネットワークコンピューティングデバイスによって実行されると、前記暗号通貨受け入れネットワークコンピューティングデバイスに、
前記担保暗号通貨の前記額を、
前記暗号通貨ウォレットおよび前記受取人コンピューティングデバイスのうちの1つ以上に基づいたデフォルトの保留額と、
前記支払人コンピューティングデバイスの特性と、
前記受取人コンピューティングデバイスの特性と、
前記ステークアカウントの特性と、
前記暗号通貨ウォレットによって格納された第1の暗号通貨の総額と、のうちの1つ以上に基づいて決定することによって、前記担保暗号通貨の前記額を保留にさせる動作命令をさらに記憶する、請求項15に記載のコンピュータ可読メモリ。
【請求項20】
前記1つ以上のステーキングエンティティが、
前記暗号通貨ウォレットの開発者と、
前記暗号通貨受け入れシステムの1つ以上の他の暗号通貨ウォレットの開発者と、
前記暗号通貨受け入れシステムのユーザコンピューティングデバイスと、のうちの1つ以上を含む、請求項15に記載のコンピュータ可読メモリ。
【請求項21】
前記第4のメモリ素子は、前記暗号通貨受け入れネットワークコンピューティングデバイスによって実行されると、前記暗号通貨受け入れネットワークコンピューティングデバイスに、
保留された担保暗号通貨の前記額が、前記支払いに必要な所望の通貨の前記額よりも大きいとき、
前記支払いに必要な所望の通貨の前記額に実質的に等しいように、保留された担保暗号通貨の前記額を調整させる動作命令をさらに記憶する、請求項15に記載のコンピュータ可読メモリ。
【請求項22】
請求項15に記載のコンピュータ可読メモリは、、
前記第7のメモリ素子は、前記暗号通貨交換デバイスによって実行されると、前記暗号通貨交換デバイスに、
前記所望の通貨の前記額を、預入するための前記受取人コンピューティングデバイスと関連付けられた受取人バンキングコンピューティングデバイスに送信させる動作命令をさらに記憶し、
第9のメモリ素子であって、前記受取人コンピューティングデバイスによって実行されると、前記受取人コンピューティングデバイスに、
前記預入の領収書を前記暗号通貨受け入れネットワークコンピューティングデバイスに送信させる動作命令を記憶する、第9のメモリ素子をさらに備えるコンピュータ可読メモリ。
【請求項23】
前記確定命令が、前記支払いの前記第2のネットワーク確認を含む、請求項15に記載のコンピュータ可読メモリ。
【請求項24】
前記第8のメモリ素子は、前記暗号通貨受け入れネットワークコンピューティングデバイスによって実行されると、前記暗号通貨受け入れネットワークコンピューティングデバイスに、
前記第1の暗号通貨の前記額が、前記コンセンサスネットワークによって証明されないとき、
前記担保暗号通貨の前記額を前記ステークアカウントから引き出させる動作命令をさらに記憶する、請求項15に記載のコンピュータ可読メモリ。
【請求項25】
請求項15に記載のコンピュータ可読メモリは、
前記第6のメモリ素子は、前記暗号通貨受け入れネットワークコンピューティングデバイスによって実行されると、前記暗号通貨受け入れネットワークコンピューティングデバイスに、
前記支払いのための前記確定命令が前記支払人コンピューティングデバイスによって送信された後、前記暗号通貨ウォレットから支払い失敗通知を受信することと、
前記担保暗号通貨の前記額を前記ステークアカウントから引き出すことと、
前記担保暗号通貨の前記額を前記暗号通貨交換デバイスに送信することと、を行わせる動作命令をさらに記憶し、
前記第7のメモリ素子は、前記暗号通貨交換デバイスによって実行されると、前記暗号通貨交換デバイスに、
前記担保暗号通貨の前記額を、前記支払いに必要な前記所望の通貨の前記額に変換することと、
前記所望の通貨の前記額を前記受取人コンピューティングデバイスに送信することと、を行わせる動作命令をさらに記憶する、コンピュータ可読メモリ。
【請求項26】
前記第4のメモリ素子は、前記暗号通貨受け入れネットワークコンピューティングデバイスによって実行されると、前記暗号通貨受け入れネットワークコンピューティングデバイスに、
保留された前記担保暗号通貨の前記額が、前記支払いに必要な所望の通貨の前記額未満であるとき、
前記支払いが許可されるかどうかを判定することと、
前記支払いが許可される場合、
保留された前記担保暗号通貨の前記額と、追加の担保暗号通貨とを合わせたものが、前記支払いに必要な所望の通貨の前記額に実質的に等しいように、前記ステークアカウントから前記追加の担保暗号通貨を保留にすることと、
前記支払いが許可されない場合、
前記支払いをキャンセルすることと、を行わせる動作命令をさらに記憶する、請求項15に記載のコンピュータ可読メモリ。
【請求項27】
請求項15に記載のコンピュータ可読メモリは、
第9のメモリ素子は、受取人バンキングコンピューティングデバイスによって実行されると、前記受取人バンキングコンピューティングデバイスに、
前記所望の通貨の前記額の預入の領収書を前記暗号通貨受け入れネットワークコンピューティングデバイスに送信することと、
前記支払いのための取引手数料を前記暗号通貨受け入れネットワークコンピューティングデバイスに送信することと、を行わせる動作命令を記憶し、
第10のメモリ素子であって、前記暗号通貨受け入れネットワークコンピューティングデバイスによって実行されると、前記暗号通貨受け入れネットワークコンピューティングデバイスに、
前記取引手数料を担保暗号通貨の額に変換することと、
前記担保暗号通貨の前記額を、ステークプール報酬として前記ステークアカウントに預入することと、を行わせる動作命令を記憶する、第10のメモリ素子をさらに備えるコンピュータ可読メモリ。
【請求項28】
請求項15に記載のコンピュータ可読メモリは、
前記第7のメモリ素子は、前記暗号通貨交換デバイスによって実行されると、前記暗号通貨交換デバイスに、
前記所望の通貨の前記額を、預入するための暗号通貨受け入れシステムのバンキングコンピューティングデバイスに送信させる動作命令をさらに記憶し、
第9のメモリ素子であって、前記暗号通貨受け入れシステムのバンキングコンピューティングデバイスによって実行されると、前記暗号通貨受け入れシステムのバンキングコンピューティングデバイスに、
前記所望の通貨の前記額を、預入するための前記受取人コンピューティングデバイスと関連付けられた
受取人バンキングコンピューティングデバイスに送信させる動作命令を記憶する、第9のメモリ素子をさらに備えるコンピュータ可読メモリ。
【発明の詳細な説明】
【技術分野】
【0001】
連邦政府による資金提供を受けた研究または開発の記載
該当しない。
【0002】
コンパクトディスクで提出された材料の参照による組み入れ
該当しない。
【背景技術】
【0003】
本発明は、概して、安全な支払いシステムに関し、より具体的には、暗号通貨受け入れシステムに関する。
【0004】
背景技術
現在の支払いシステムは、セキュリティ違反、詐欺、およびID盗難に脆弱である。小売商との典型的な支払いカード取引は、いくつかのステップ(例えば、カードの承認、清算、および決済)ならびに様々なエンティティ(例えば、金融機関、クレジットカード会社、および支払い処理ネットワーク)の関与を伴う。各ステップおよび各エンティティは、独自の様々なセキュリティ問題(例えば、ハッキング)を有する。
【0005】
また、関係するステップは、不便で時間がかかり、費用がかかる。例えば、カードの承認(例えば、クレジットカードまたはデビットカードの承認)は、カード保有者が、商品またはサービスのためにカードを小売商に提示することから始まる。カードは、特定の金融機関(例えば、銀行)によって発行され、クレジットカード会社(例えば、Visa、Mastercardなど)と関連付けられている。小売商は、クレジットカードマシン、ソフトウェア、またはゲートウェイを使用して、取引データを取得銀行(またはそのプロセッサ)に送信する。取得銀行は、取引データを支払い処理ネットワークにルーティングし、支払い処理ネットワークは、取引データをカード保有者の発行銀行に送信する。発行銀行は、カードが、盗難または紛失されたと報告されていないことを立証し、資金が利用可能かどうかを確認し、取引が承認されたかどうかについて、応答コードを支払い処理ネットワークを介して取得銀行に返送する。
【0006】
取引データは、典型的には、カード番号、取引金額、日付、小売商の名称、小売商の所在地、小売商のカテゴリコード、および入力されている場合には、暗号化された個人識別番号(PIN)を含む。応答コードは、小売商の端末に到達し、それが確定されるまでファイルに格納される。小売商は、格納された承認済み取引を自分の取得銀行に(例えば、一日の終わりに)返送し、取得銀行は、適切なカード処理ネットワークを通して、承認済み取引を照合および送信する。取得銀行は、売上からの資金を小売商のアカウントに預入する。支払い処理ネットワークは、取引の額を、発行銀行アカウントの借方に記入し、取得銀行アカウントの貸方に記入する。
【0007】
小売商は、かなりのクレジットカード処理手数料を支払い、それらの費用は、消費者に転嫁される。ほとんどの小売商は、総取引の交換レートと、関連するクレジットカード会社(例えば、Visa、Mastercardなど)への定額料金とを支払う。レートは、クレジットカード会社、クレジットカードのタイプ(例えば、クレジット、デビット、ビジネスなど)、処理のタイプ(オンライン決済、スワイプ、モバイルデバイスを介して、カードが存在しないなど)、および小売商のビジネスタイプを分類する小売商カテゴリコード(MCC)に応じて異なる。さらに、小売商は、典型的には、歩合と定額料金とを支払い処理ネットワークに支払う。
【0008】
モバイルウォレットアプリケーションは、カード保有者が、カードデータを、便利な取引のためのデジタルウォレットを介してコンピューティングデバイスに格納することを可能にする。例えば、一部のモバイルウォレットアプリは、非接触型決済(例えば、支払いリーダの上にデバイスを保持することによるデータの交換)のために近距離通信(NFC)を使用する。NFCチップは、金融セキュリティを管理するために特別に設計されており、取引を開始および完了するために必要なデータのみを格納する。モバイルウォレットは、実際のアカウント/カード番号ではなく、デバイスアカウント番号(DAN)が小売商に渡されるように、アカウントまたはカード番号の代わりにDANを割り当てるトークン化のタイプを使用する。別のセキュリティ対策として、デジタルウォレットは、デジタル証明書に依存して本人確認する。しかしながら、デバイス上でデジタルウォレットを使用することは、データが、デバイスのハードウェアおよびオペレーティングシステムだけでなく、特定の支払いアプリおよび最終的に支払源を通して渡されることを意味する。さらに、モバイルウォレットを介したユーザの不正行為が可能である。
【0009】
分散型台帳技術(例えば、ブロックチェーン)は、不正行為のリスクを低減する。例えば、ブロックチェーンは、ネットワーク内の取引を記録するための不変の台帳であり、安全にリンクされ、継続的に照合され、かつすべてのネットワーク参加者(すなわち、分散ネットワーク)間で共有される継続的に増大するブロック(すなわち、取引のグループ)のリストからなる。取引は、立証されて、ハッシングアルゴリズムを介してブロックに追加され、次いで、ネットワーク全体のコンセンサスを介してチェーンに永久に書き込まれる。ブロックチェーンに記録されると、取引を変更することはできない。
【0010】
暗号通貨は、暗号化を介して安全に作成および転送されるデジタル資産である。多くの暗号通貨は、分散型台帳技術(例えば、ブロックチェーン)に基づいた分散型ネットワークである。ビットコインのような分散ネットワークは、オープンで公開されている擬似匿名取引を使用する(すなわち、誰でも取引に参加し、取引を作成および見ることができる)。不正行為を最小限に抑え、悪意のあるネットワーク活動を抑止するために、暗号通貨取引は、膨大な計算能力を必要とする「プルーフオブワーク」セキュアハッシングアルゴリズム(SHA-256)を使用して、「マイナー」によって記録され得る。多くの暗号通貨が、ブロックチェーンベースである一方で、他の分散型台帳技術が、使用され得る。例えば、非同期コンセンサスアルゴリズムは、ノードのネットワークが、互いに通信し、分散方式でコンセンサスに到達することを可能にする。この方法は、取引を立証するためのマイナーを必要とせず、取引をブロックにバンドルすることなく、時系列取引に対して有向非巡回グラフを使用する。
【図面の簡単な説明】
【0011】
【
図1】本発明による、安全で信頼できる暗号通貨受け入れシステムの一実施形態の概略ブロック図である。
【
図2A】本発明による、安全で信頼できる暗号通貨受け入れシステムの金融取引の方法の一例のフローチャートである。
【
図2B】本発明による、安全で信頼できる暗号通貨受け入れシステムの金融取引の方法の一例のフローチャートである。
【
図2C】本発明による、安全で信頼できる暗号通貨受け入れシステムの金融取引の方法の一例のフローチャートである。
【
図3】本発明による、安全で信頼できる暗号通貨受け入れシステム内で試みられた不正取引の一例の概略ブロック図である。
【
図4】本発明による、安全で信頼できる暗号通貨受け入れシステム内で試みられたネットワーク攻撃の一例のフローチャートである。
【
図5A】本発明による、安全で信頼できる暗号通貨受け入れシステム内のウォレット承認失敗の一例のフローチャートである。
【
図5B】本発明による、安全で信頼できる暗号通貨受け入れシステム内のウォレット承認失敗の一例のフローチャートである。
【
図6】本発明による、安全で信頼できる暗号通貨受け入れシステムのステークプールの一実施形態の概略ブロック図である。
【
図7】本発明による、ステークアカウント設定の一実施形態の概略ブロック図である。
【
図8】本発明による、安全で信頼できる暗号通貨受け入れシステムのステークプールの一実施形態の概略ブロック図である。
【
図9】本発明による、1つ以上のステークアカウントへの報酬分配の一例の概略ブロック図である。
【
図10】本発明による、安全で信頼できる暗号通貨受け入れシステムのステークプールの一実施形態の概略ブロック図である。
【
図11】本発明による、「オンチェーン」ステークアカウント引き出しの概略ブロック図である。
【
図12】本発明による、ステークアカウント報酬引き出しを計算する方法の一例のフローチャートである。
【
図13】本発明による、安全で信頼できる暗号通貨受け入れシステムの別の実施形態の概略ブロック図である。
【
図14A】本発明による、安全で信頼できる暗号通貨受け入れシステムの金融取引の方法の一例のフローチャートである。
【
図14B】本発明による、安全で信頼できる暗号通貨受け入れシステムの金融取引の方法の一例のフローチャートである。
【
図14C】本発明による、安全で信頼できる暗号通貨受け入れシステムの金融取引の方法の一例のフローチャートである。
【
図15】本発明による、安全で信頼できる暗号通貨受け入れシステムの暗号通貨交換デバイスの世界的ネットワークの一実施形態の概略ブロック図である。
【
図16】安全で信頼できる暗号通貨受け入れシステムの別の実施形態の概略ブロック図である。
【発明を実施するための形態】
【0012】
図1は、支払人コンピューティングデバイス12と、受取人コンピューティングデバイス14と、暗号通貨受け入れネットワークコンピューティングデバイス16と、1つ以上の暗号通貨交換デバイス18と、データベース20と、複数のコンセンサスデバイス1~nを含むコンセンサスネットワーク36と、を含む安全で信頼できる暗号通貨受け入れシステム10の一実施形態の概略ブロック図である。安全で信頼できる暗号通貨受け入れシステム10は、暗号通貨で支払う支払人コンピューティングデバイス12と、所望の通貨(例えば、法定通貨)を受け入れる受取人コンピューティングデバイス14との間の安全で信頼できる金融取引を可能にし、以下の問題のうちの1つ以上を克服する。
【0013】
本出願の出願時において、暗号通貨は、様々な理由により、支払いの形態として小売商によって広く受け入れられていない。例えば、暗号通貨の価値は不安定であり、1日のうちに大きく変動することがある。別の例として、小売商は、暗号通貨支払いに直接対応するために、高価なポイントオブセールのアップグレードに投資することに気乗りしない。さらに別の例として、ほとんどの顧客および小売商は、多くの暗号通貨支払いが公開であるために起こるであろう、自分たちの取引を公開することを望まない。
【0014】
いくつかの開発済みのデジタルウォレットアプリケーションは、小売ブロックチェーン決済を可能にするために開発された一方で、それらは、一般に、既存の決済ネットワークに依存しており、したがって、既存の決済ネットワークの詐欺攻撃の影響を受けやすい。例えば、暗号通貨は、クレジットカードにリンクされており、暗号通貨支払いは、クレジットカード取引として変換および実行され、したがって、クレジットカードと同じ詐欺攻撃の影響を受けやすい。
【0015】
暗号通貨は、従来の決済システムと比較して、不正行為を大幅に低減するが、不正な暗号通貨取引は、依然として可能である。例えば、悪意のあるユーザは、暗号通貨ブロックチェーンを操作して「二重支出」を行う(例えば、ある金額を小売商に転送するための1つのブロックと、同じ金額をユーザ自身に転送するための別のブロックとを作成する)ことができる。別の例として、不正なまたは欠陥のあるデジタルウォレットソフトウェアは、暗号通貨取引が正しく承認および完了されることを妨げ得る。
【0016】
安全で信頼できる暗号通貨受け入れシステム10内では、支払人コンピューティングデバイス12、受取人コンピューティングデバイス14、暗号通貨受け入れネットワークコンピューティングデバイス16、1つ以上の暗号通貨交換デバイス18、およびコンセンサスデバイス1~nは、携帯型コンピューティングデバイスおよび/または固定コンピューティングデバイスであり得る。携帯型コンピューティングデバイスは、ソーシャルネットワーキングデバイス、ゲーミングデバイス、携帯電話、スマートフォン、デジタルアシスタント、デジタル音楽プレーヤ、デジタルビデオプレーヤ、ラップトップコンピュータ、ハンドヘルドコンピュータ、タブレット、ビデオゲームコントローラ、携帯型マーチャントポイントオブセール(POS)デバイス(例えば、POS機能を有するモバイルデバイス)、および/またはコンピューティングコア26を含む任意の他の携帯型デバイスであり得る。固定コンピューティングデバイスは、コンピュータ(PC)、コンピュータサーバ、ケーブルセットトップボックス、衛星受信機、テレビセット、プリンタ、ファックスマシン、ホームエンターテインメント機器、ビデオゲームコンソール、固定マーチャントポイントオブセール(POS)デバイス(例えば、キャッシュレジスタ)、および/または任意のタイプのホームまたはオフィスコンピューティング機器であり得る。
【0017】
ネットワーク22は、パブリックネットワークおよび/またはプライベートネットワークであり得る、1つ以上のローカルエリアネットワーク(LAN)および/または1つ以上のワイドエリアネットワーク(WAN)を含む。LANは、無線LAN(例えば、Wi-Fiアクセスポイント、Bluetooth、ZigBeeなど)および/または有線LAN(例えば、ファイアワイヤ、イーサネットなど)であり得る。WANは、有線および/または無線WANであり得る。例えば、LANは、個人のホーム無線ネットワークまたは企業の無線ネットワークであり、WANは、インターネット、携帯電話インフラストラクチャ、および/または衛星通信インフラストラクチャである。
【0018】
支払人コンピューティングデバイス12、受取人コンピューティングデバイス14、暗号通貨受け入れネットワークコンピューティングデバイス16、1つ以上の暗号通貨交換デバイス18、およびコンセンサスデバイス1~nの各々は、ネットワークユニット24と、コンピューティングコア26と、入力/出力(IO)ユニット28と、メモリ30と、を含む。各ネットワークユニット24は、ネットワーク22を介して1つ以上の通信リンクを直接および/または間接的にサポートするためのソフトウェアおよびハードウェアを含む。例えば、支払人コンピューティングデバイス12のネットワークユニット24は、支払人コンピューティングデバイス12と、デバイス14~16との間のネットワーク22通信リンクをサポートする。コンピューティングコア26は、1つ以上の処理モジュール、1つ以上のメインメモリ(例えば、RAM)、コア制御モジュール、ビデオグラフィックス処理モジュール、IO制御モジュール、および周辺インターフェース制御モジュールのうちの1つ以上を含む。
【0019】
IOユニット28は、デバイス12~18と、ユーザ入力/周辺デバイスとの間の接続を可能にする。ユニット入力/周辺デバイスは、外部ハードドライブ、ヘッドセット、キーパッド、キーボード、制御スイッチ、タッチパッド、スピーカ、マイク、サムドライブ、カメラなどのうちの1つ以上を含む。
【0020】
メモリ30は、メインメモリ(RAM)、ハードドライブ、ソリッドステートメモリチップ、1つ以上の他の大容量ストレージデバイス、および/またはキャッシュメモリのうちの1つ以上を含む。メモリ30は、コンピューティングコア26のための動作命令を記憶する。例えば、支払人コンピューティングデバイス12のメモリ30は、データアプリケーション「b」40を記憶し、暗号通貨受け入れネットワークコンピューティングデバイス16のメモリ30は、データアプリケーション「a」38を記憶し、受取人コンピューティングデバイス16のメモリ30は、データアプリケーション「c」42を記憶する。支払人コンピューティングデバイス12のメモリ30は、ネットワーク暗号通貨ウォレット46をさらに記憶する。デバイスによって記憶された様々なアプリケーションは、本明細書に記載されるように、システム内の安全で信頼できる暗号通貨取引をサポートする。
【0021】
データベース20は、大規模なデータ記憶および検索のために最適化されている特殊なタイプのコンピューティングデバイスである。データベース20は、より多くのハードドライブメモリ(例えば、ソリッドステート、ハードドライブなど)を有し、潜在的により多くの処理モジュールおよび/またはメインメモリを有するデバイス12~18のものと同様の構成要素を含む。さらに、データベース20は、典型的には、遠隔でアクセスされ、したがって、データベース20は、一般に、ユーザ入力デバイスおよび/またはユーザ出力デバイスを含まない。データベース20の一実施形態は、スタンドアロンの別個のコンピューティングデバイスを含んでもよく、および/またはクラウドコンピューティングデバイスであってもよい。
【0022】
データベース20は、ユーザ1~nのための暗号通貨ウォレット48~50を含む。暗号通貨受け入れネットワークコンピューティングデバイス16およびデータベース20は、不正使用、ハッキングなどを防止するために、高レベルのセキュリティプロトコルを実装するセキュアデバイスである。例えば、データベース20は、極秘資料を格納するために特別にライセンス供与され、かつ盗難および詐欺に対して保護するための保険ポリシーを有する暗号通貨受け入れネットワークコンピューティングデバイス16とは別の暗号通貨保有会社である。
【0023】
暗号通貨交換デバイス18は、暗号通貨を所望の通貨(例えば、法定通貨、別の暗号通貨など)に変換するように動作可能な特別にライセンス供与されたエンティティである。一実施形態では、暗号通貨交換デバイス18は、極秘資料を格納するために特別にライセンス供与され、かつ盗難および詐欺に対して保護するための保険ポリシーを有する1つ以上の暗号通貨保有会社と関連付けられている。別の実施形態では、暗号通貨交換デバイス18は、スタンドアロンのセキュアデバイスである。
【0024】
暗号通貨交換デバイス18は、ストアドバリューアカウント(SVA)デバイスと関連付けられ得、SVAデバイスは、受取人コンピューティングデバイス14と関連付けられており(例えば、受取人コンピューティングデバイスは、SVAデバイスとともにSVAアカウントを有する)、その結果、暗号通貨交換デバイス18のうちの1つ以上が、取引のためのSVAを生成するように動作可能である。別の実施形態では、暗号通貨交換デバイス18および暗号通貨受け入れネットワークコンピューティングデバイス16のうちの1つ以上は、ストアドバリューアカウント(SVA)を生成するように動作可能であり、および/またはSVAを生成するように動作可能な1つ以上のエンティティと関連付けられる。取引のためのSVAの生成が、2019年4月5日に出願された「SECURE AND TRUSTED DATA COMMUNICATION SYSTEM」と題する同時係属中の特許出願第16/376,911号に記載されている。
【0025】
暗号通貨受け入れネットワークコンピューティングデバイス16は、暗号通貨受け入れネットワークコンピューティングデバイス16と、データベース20との間の接続を可能にするデータベースインターフェース34をさらに含む。支払人コンピューティングデバイス12および受取人コンピューティングデバイス14は、それらの間の直接通信を可能にする直接通信ユニット32を含む。例えば、直接通信ユニット32は、ビデオ、赤外線(IR)、近距離無線通信(NFC)などを介して、支払人コンピューティングデバイス12と、受取人コンピューティングデバイス14との間に直接リンクを確立するための技術を含む。
【0026】
受取人コンピューティングデバイス14は、特定の小売商識別子(ID)との関連付けを有する1つ以上のコンピューティングデバイスであってもよい。例えば、受取人コンピューティングデバイス14は、特定の小売商IDを有する特定の小売商と関連付けられた小売店内のポイントオブセール(POS)デバイスである。受取人コンピューティングデバイス14は、暗号通貨受け入れネットワークコンピューティングデバイス16と関連付けられている。例えば、受取人コンピューティングデバイスは、暗号通貨受け入れネットワークコンピューティングデバイス16にアカウントを有する。アカウント設定は、受取人コンピューティングデバイス14のメモリ30内にデータアプリケーション「c」42を確立し、安全で信頼できる暗号通貨受け入れシステム10を介して支払いを安全に受信するための命令を含む。
【0027】
支払人コンピューティングデバイス12は、ユーザと関連付けられ、かつ暗号通貨受け入れネットワークコンピューティングデバイス16と関連付けられている。例えば、支払人コンピューティングデバイス12(例えば、ユーザのスマートフォン)は、データアプリケーション「b」40を含むネットワーク暗号通貨ウォレット46をダウンロードおよび格納し、ネットワーク暗号通貨ウォレット46は、暗号通貨受け入れネットワークコンピューティングデバイス16と関連付けられている。例えば、ネットワーク暗号通貨ウォレット46は、(例えば、データベース20を介して)暗号通貨受け入れネットワークコンピューティングデバイス16によって管理される安全な管理型デジタルウォレットであり得る。この例では、支払人コンピューティングデバイス12(例えば、ユーザ1)は、ネットワーク暗号通貨ウォレット46を介する暗号通貨の安全で信頼できる格納のために、暗号通貨受け入れネットワークコンピューティングデバイス16にユーザアカウントを設定する。支払人コンピューティングデバイス12は、ユーザアカウントの設定を開始し、暗号通貨の管理、格納、および取引のための命令を含むデータアプリケーション「b」40をダウンロードする。
【0028】
暗号通貨受け入れネットワークコンピューティングデバイス16のメモリ30は、データベース20を介して暗号通貨の管理、搬送、および格納(例えば、ユーザ暗号通貨ウォレットの作成および管理など)のための命令を有するデータアプリケーション「a」38を記憶する。例えば、支払人コンピューティングデバイス12のユーザアカウントが設定されると、暗号通貨受け入れネットワークコンピューティングデバイス16は、データベース20内の支払人コンピューティングデバイス12と関連付けられた1つ以上の暗号通貨ウォレットを生成する。例えば、暗号通貨受け入れネットワークコンピューティングデバイス16は、支払人コンピューティングデバイス12の暗号通貨の安全な格納のために、データベース20内に暗号通貨ウォレットユーザ148を生成する。
【0029】
暗号通貨受け入れネットワークコンピューティングデバイス16は、2019年4月5日に出願された「SECURE AND TRUSTED DATA COMMUNICATION SYSTEM」と題する同時係属中の特許出願第16/376,911号に記載されているように、支払人コンピューティングデバイスの代わりに暗号通貨を格納するように機能する(安全なデータ搬送デバイス14およびユーザコンピューティングデバイス12を参照)。
【0030】
別の例として、暗号通貨受け入れネットワークコンピューティングデバイス16は、支払人コンピューティングデバイス12の代わりに暗号通貨を格納しない。例えば、ネットワーク暗号通貨ウォレット46は、暗号通貨受け入れネットワークコンピューティングデバイス16と関連付けられたデジタルウォレット開発者によって管理される。例えば、デジタルウォレット開発者は、暗号通貨受け入れネットワークコンピューティングデバイス16にアカウントを有している。デジタルウォレット開発者は、支払人コンピューティングデバイス12の代わりに暗号通貨を格納する管理ウォレットであり得るか、またはデジタルウォレット開発者は、支払人コンピューティングデバイス12のみが、ネットワーク暗号通貨ウォレットユーザの秘密鍵情報へのアクセスを有するプライベートウォレットであり得る。いずれかの例では、支払人コンピューティングデバイス12が、ネットワーク暗号通貨ウォレット46にユーザアカウントを設定すると、ネットワーク暗号通貨ウォレット46を使用して金融取引を処理することに関する命令を含むデータアプリケーション「b」40がインストールされる。
【0031】
コンセンサスネットワーク20の複数のコンセンサスデバイス1~nの各々は、ネットワークユニット(例えば、ネットワークユニット24のような)と、コンピューティングコア(例えば、コンピューティングコア26のような)と、IOユニット(例えば、IOユニット28のような)と、を含み、ネットワーク22を介して接続される。コンセンサスデバイス1~nは、暗号通貨取引を立証する。例えば、コンセンサスデバイスは、「プルーフオブワーク」セキュアハッシングアルゴリズムを使用して、暗号通貨取引ブロックを立証し(例えば、「マイナー」)、ブロックをブロックチェーンに追加する。取引が、十分な回数立証される(すなわち、取引を証明する十分なブロックがブロックチェーンに追加される)と、取引は、コンセンサスネットワーク36によって有効として採用される(すなわち、コンセンサスデバイス1~n間のコンセンサスが到達される)。別の例として、コンセンサスデバイス1~nは、非同期コンセンサスアルゴリズムを使用して互いに通信し、分散方式でコンセンサスに到達する。この方法は、時系列の取引をブロックにバンドルすることなく、時系列の取引に有向非巡回グラフを使用することを含む。分散コンセンサスの他の方法が、使用されてもよい。
【0032】
暗号通貨受け入れネットワークコンピューティングデバイス16は、ステークプールユニット44をさらに含む。ステークプールユニット44は、1つ以上のメモリデバイスを含むか、または別のメモリデバイス(例えば、メモリ30)の一部であり、かつ処理モジュールを含むか、もしくはコンピューティングコア26の処理モジュールの一部である)。ステークプールユニット44は、ステークアカウント1~nに関する情報を記憶し、ステークアカウントマネージャ52を含み、取引手数料/報酬プール80に関する情報を記憶する。ステークアカウント1~nは、安全で信頼できる暗号通貨受け入れシステム10内の取引をセキュアにするために、担保暗号通貨を格納する。担保暗号通貨は、安全で信頼できる暗号通貨受け入れシステム10内で使用するために作成された、設定された額のシステム固有の暗号通貨から購入される。安全で信頼できる暗号通貨受け入れシステム10によって認められるために、暗号通貨ウォレットは、担保暗号通貨で裏付けられているステークプールアカウントと関連付けられなければならない。
【0033】
例えば、デジタルウォレット開発者は、自分のウォレットユーザが、安全で信頼できる暗号通貨受け入れシステム10の一部であるように、暗号通貨受け入れネットワークコンピューティングデバイス16にアカウントを作成する。アカウント設定の一環として、デジタルウォレット開発者は、自分のウォレットユーザの金融取引を裏付けるために、特定の額の担保暗号通貨を購入して、ステークアカウントに担保として差し出す。ネットワーク暗号通貨ウォレット46が、暗号通貨受け入れネットワークコンピューティングデバイス16によって管理されるとき、暗号通貨受け入れネットワークコンピューティングデバイス16も、担保暗号通貨を購入し、自分のウォレットユーザのステークアカウントに担保として差し出さなければならない。担保暗号通貨を担保として差し出すエンティティは、ステーキングエンティティと称される。
【0034】
ステークアカウントマネージャ52は、複数のステークアカウント1~nを管理する。一実施形態では、ステークアカウント1~nは、イーサリアムブロックチェーンスマートコントラクトなどの「オンチェーン」スマートコントラクトである(すなわち、スマートコントラクトは、すべての人に見える)が、ステークアカウントマネージャ52は、情報を記憶し、「オフチェーン」で(すなわち、非公開で)活動を行う。例えば、ステークマネージャは、ステークアカウントからの報酬の引き出しを管理し、ステークプール活動のイベントログを維持し、ステークエンティティ情報(例えば、成功した取引当たりの報酬パーセンテージ、報酬引き出しの条件など)を記憶し、所定の時間にステークエンティティに支払われるべき報酬を計算する。
【0035】
担保暗号通貨を担保として差し出すことと引き換えに、ステーキングエンティティは、自分たちのウォレットのユーザによって完了された成功した取引に対するパーセンテージバックなどの報酬を提供される。提供されるインセンティブのために、様々なステーキングエンティティ(例えば、個々のユーザコンピューティングデバイス、他のウォレット開発者)が、担保暗号通貨を1つ以上のステークアカウントに担保として差し出すことを望み得る。したがって、ステークプールユニット44のステーキングエンティティは、1つ以上のデジタルウォレット開発者/マネージャ、および潜在的に1つ以上の他のコンピューティングデバイスを含む。
【0036】
有限の額のシステム暗号通貨が存在するため、システム暗号通貨の価値は、増大し続け、様々なステーキングエンティティが、担保暗号通貨を取得し、ステークアカウントに担保として差し出すさらなるインセンティブとして機能するであろう。また、インセンティブは、成功した取引に基づいて提供されるため、デジタルウォレット開発者/マネージャは、安全なデジタルウォレット(例えば、欠陥のないソフトウェア)を生成および維持して、ネットワーク上でのそのユーザによる不正行為を防止および抑止するように動機づけられる。ステークプールユニット44は、
図6~
図12を参照してより詳細に考察される。
【0037】
動作の一例では、支払人コンピューティングデバイス12は、直接通信リンク32(例えば、NFC、IR、RF)を介して、受取人コンピューティングデバイス14との直接通信リンクを確立する。支払人コンピューティングデバイス12は、ネットワーク暗号通貨ウォレット46に格納された暗号通貨を使用して、製品またはサービスの購入を開始するための要求を受取人コンピューティングデバイス14に送信する。受取人コンピューティングデバイス14は、所望の通貨(例えば、法定通貨、ある形態の暗号通貨など)を受け入れる。
【0038】
購入を開始するための要求は、分割バーコードの形態であり得、支払人コンピューティングデバイス12は、バーコードの一部分を維持し、受取人コンピューティングデバイス14は、バーコードの別の部分を、それらが近接して整列されると搬送が開始されるように、維持する。支払人コンピューティングデバイス12からのバーコードの正しい部分を有すること、ならびに整列の行為が、金融取引を行う意図(すなわち、ユーザ承認)を明示する。別の例として、要求は、支払人コンピューティングデバイス12と、受取人コンピューティングデバイス14との間の安全なハンドシェイクプロトコルである。
【0039】
金融取引を開始するための要求が、受取人コンピューティングデバイス14によって(例えば、分割バーコードの例を介して)承認されると、支払人コンピューティングデバイス12は、金融取引の確認(例えば、取引IDなどのワンタイムユースコード)を受取人コンピューティングデバイス14から受信する。ワンタイムユースコードは、固有の番号、英数字、関数、および/または取引の当事者を特定の取引に一意に接続する任意のアイテムのうちの1つ以上である。例えば、受取人コンピューティングデバイス14は、受取人コンピューティングデバイス14が、暗号通貨受け入れネットワークコンピューティングデバイス16と提携され、支払人コンピューティングデバイス12が、(例えば、ID、証明書などの証明によって)信頼できるコンピューティングデバイスであるなどの場合に、要求を承認する。
【0040】
ネットワーク暗号通貨ウォレット46を使用して、支払人コンピューティングデバイス12によって金融取引が開始されると、暗号通貨受け入れネットワークコンピューティングデバイス16は、金融取引の開始の確認と、金融取引を処理するための要求と、を受信する。例えば、支払人コンピューティングデバイス12は、金融取引を処理するための要求と、ワンタイムユースコードとを合わせて、暗号通貨受け入れネットワークコンピューティングデバイス16に送信する。暗号通貨受け入れネットワークコンピューティングデバイス16は、ある額の担保暗号通貨を、ネットワーク暗号通貨ウォレット46と関連付けられたステークプールユニット44のステークアカウントに保留にする。
【0041】
保留された担保暗号通貨の額は、ネットワーク暗号通貨ウォレット46および/またはネットワーク暗号通貨ウォレット46と関連付けられたステークアカウントのうちの1つ以上の特性に基づいて、決定され得る。例えば、保留された担保暗号通貨の額は、受取人コンピューティングデバイスおよびネットワーク暗号通貨ウォレットのうちの1つ以上に基づいたデフォルトの保留額である。一具体例として、特定の小売商が関与する取引は、保留された担保暗号通貨のデフォルト額を必要とする。別の具体例として、特定のネットワーク暗号通貨ウォレットを使用する取引は、関係する小売商またはユーザに関係なく、保留された担保暗号通貨のデフォルト額を必要とし得る。
【0042】
別の例として、保留された担保暗号通貨の額は、支払人コンピューティングデバイス12、受取人コンピューティングデバイス14、および関連するステークアカウントのうちの1つ以上の特性に基づく。一具体例として、保留された担保暗号通貨の額は、支払人コンピューティングデバイス12が通常個々の取引に支払う暗号通貨の額に基づき得る。別の具体例として、受取人コンピューティングデバイス14が、ハイエンド小売商と関連付けられている場合、より大きな額の担保暗号通貨が、保留される。さらに別の具体例として、保留された担保暗号通貨の額は、ステークアカウントの残高に基づき得る。より高い残高は、より高い額の担保暗号通貨が、個々の取引のために保留され得ることを示し得る。
【0043】
別の例として、保留された担保暗号通貨の額は、支払人コンピューティングデバイスによってネットワーク暗号通貨ウォレット46に現在格納されている暗号通貨の総額に基づく。一具体例として、支払人コンピューティングデバイス12は、ネットワーク暗号通貨ウォレット46に格納されているものの全残高まで、任意の額を支払い得る。したがって、残高の額に相当する担保暗号通貨が、より多くの情報が知られるまで、取引をカバーするために保留される。
【0044】
担保暗号通貨の額が保留されると、暗号通貨受け入れネットワークコンピューティングデバイス16は、必要な額の担保暗号通貨が保留されて、金融取引を進めることができることの確認を支払人コンピューティングデバイス12に送信する。支払人コンピューティングデバイス12は、受取人コンピューティングデバイス14によって要求された所望の通貨の額に等しい暗号通貨の額を、暗号通貨受け入れネットワークコンピューティングデバイス16に送信する。受取人コンピューティングデバイスによって要求された所望の通貨の額に等しい暗号通貨の額を暗号通貨受け入れネットワークコンピューティングデバイス16に送信することは、支払人コンピューティングデバイス12によって使用される暗号通貨の暗号通貨ブロックチェーンに追加される取引である。
【0045】
取引情報は、支払い金額と、送信者暗号通貨アドレス(支払人コンピューティングデバイス12)と、受信者暗号通貨アドレス(暗号通貨受け入れネットワークコンピューティングデバイス16)と、を含む。次いで、この取引が、ブロックチェーン上で公開されるブロック内に含まれる。しかしながら、取引に関連する他の詳細(例えば、受取人コンピューティングデバイスの識別、受取人コンピューティングデバイスによって支払われるべき取引手数料など)は、非公開で、暗号通貨受け入れネットワークコンピューティングデバイス16によってオフチェーンで管理される。したがって、安全で信頼できる暗号通貨受け入れシステム10を使用することによって、機密の受取人関連情報(例えば、収益、消費者支出行動など)および機密の支払人関連情報(例えば、購入の消費者アイデンティティ、特定の小売商で支出された額、頻繁に訪れる受取人/小売商など)は、非公開である(すなわち、誰もが見ることができるようにブロックチェーン上で公開されていない)。
【0046】
代替的または追加的に、受取人コンピューティングデバイス14は、要求された所望の通貨の額(例えば、米ドルの額)を含む金融取引の通知を暗号通貨受け入れネットワークコンピューティングデバイス16に送信する。暗号通貨受け入れネットワークコンピューティングデバイス16は、暗号通貨の額が、受信され、かつ保留された担保暗号通貨の額によってカバーされていることのネットワーク取引確認を支払人コンピューティングデバイス12に送信する。
【0047】
代替的に、要求された所望の通貨の額が、保留された担保暗号通貨の額よりも多い場合、暗号通貨受け入れネットワークコンピューティングデバイス16は、(例えば、ネットワーク暗号通貨ウォレット46と関連付けられたステークアカウントの条件によって)許可される場合、要求された所望の通貨の額に等しいように、さらなる担保暗号通貨を保留にし得る。許可されない場合、暗号通貨受け入れネットワークコンピューティングデバイス16は、支払人コンピューティングデバイス12と、受取人コンピューティングデバイス14との間の取引が確定される前に、取引をキャンセルする。
【0048】
支払人コンピューティングデバイス12は、取引を確定するための通知を受取人コンピューティングデバイス14に、送信する。取引を確定するための通知は、暗号通貨受け入れネットワークコンピューティングデバイス16からのネットワーク取引確認情報(例えば、暗号通貨の額が、受信され、保留された担保暗号通貨の額によってカバーされている)を含んでおり、その結果、受取人コンピューティングデバイス14は、所望の資金が到着することを知ることで、金融取引をまとめることができる。
【0049】
暗号通貨受け入れネットワークコンピューティングデバイス16は、支払人コンピューティングデバイス12の暗号通貨支払いの所望の数の確認を、コンセンサスネットワーク20から求める。所望の数の確認は、使用される暗号通貨のタイプに対応する。所望の数の確認の受信には、数分~数時間の時間がかかることがある。
【0050】
例えば、ビットコインブロックチェーンでは、マイナーは、新しい取引を、ブロックチェーン内のすべての以前の取引を証明するブロックに記録する。平均して、マイナーが、ビットコインブロックチェーン上のブロックを書き込むのに10分かかり、平均ブロック時間は、ビットコインネットワークの総ハッシュパワーに依存する。ブロックが作成され、新しい取引が証明されて、ブロックに含まれると、取引は、1つの確認を有するであろう。(ブロックチェーンの以前の状態を証明する)各後続のブロックは、1つの追加のネットワーク確認を提供する。暗号通貨交換が、潜在的な不正行為による損失を回避するために、典型的には、5~10個の取引確認が、容認可能である。したがって、支払人コンピューティングデバイス12がビットコインを使用している場合、取引は、1時間以上、コンセンサスネットワーク36(すなわち、ビットコインマイナー)によって確認されないことがある。
【0051】
しかしながら、すべての金融取引が、担保暗号通貨で裏付けられているため、暗号通貨受け入れネットワークコンピューティングデバイス16は、金融取引を進めて、所望の量の確認が受信されることを保証される。
【0052】
暗号通貨受け入れネットワークコンピューティングデバイス16は、要求された所望の通貨の額が、保留された担保暗号通貨の額未満である場合、要求された所望の通貨の額に等しいように、保留された担保暗号通貨の額を調整する。例えば、20ドルに相当する担保暗号通貨が保留されているが、取引が、10ドルの支払い額を指定する場合、暗号通貨受け入れネットワークコンピューティングデバイス16は、取引を裏付けるのに必要とされない、20ドルに相当する担保暗号通貨のうちの10ドル相当に対する保留を解除する。
【0053】
暗号通貨受け入れネットワークコンピューティングデバイス16は、支払人コンピューティングデバイス12によって送信された暗号通貨の額を暗号通貨交換デバイス18に送信する。暗号通貨交換デバイス18は、支払人コンピューティングデバイス12によって送信された暗号通貨の額を、受取人コンピューティングデバイス14によって要求された所望の通貨の額に等しい額に変換する。暗号通貨の交換は、交換レートの不安定性を考慮して、迅速に行われる(例えば、30秒~数分)。交換はまた、価格変動を排除するために、クレジットベースのアカウント上で、リアルタイムで実行され得る。暗号通貨交換デバイス18は、受取人コンピューティングデバイス14によって要求された所望の通貨の額に等しい額を、受取人コンピューティングデバイス14と関連付けられた受取人バンキングコンピューティングデバイスに預入する。
【0054】
代替的に、暗号通貨交換デバイス18は、受取人コンピューティングデバイス14によって要求された所望の通貨の額に等しい額を、安全で信頼できる暗号通貨受け入れシステムの暗号通貨受け入れシステムバンキングデバイスに預入し、暗号通貨受け入れシステムバンキングデバイスは、所望の通貨の額に等しい額を受取人バンキングコンピューティングデバイスに預入する。受取人バンキングコンピューティングデバイスは、所望の通貨の額と、取引手数料とを合わせたものの預入の領収書を暗号通貨受け入れネットワークコンピューティングデバイス16に送信する。
【0055】
取引手数料は蓄積され、ステークアカウント1~nのうちの1つ以上に報酬として分配するためのシステム固有の暗号通貨を購入するために使用される。取引手数料は、(例えば、ステーキングエンティティによって要求されたとき、所定の時間に、または特定の額の取引が発生した後など)報酬の分配が発生するまで、ステークプールユニット44の取引手数料/報酬プール80に格納される。ステークアカウントマネージャ52は、ゼロ知識証明スマートコントラクトを使用して、支払われるべき報酬を計算し、報酬を1つ以上のステークアカウントにバッチおよび分配する。ステークアカウントマネージャ52および報酬計算のより詳細な考察が、
図8および
図9を参照して考察される。
【0056】
別の実施形態では、暗号通貨受け入れネットワークコンピューティングデバイス16は、さらに、受取人コンピューティングデバイス14によって要求された所望の通貨の額以上の額で、支払人コンピューティングデバイス12によって送信された暗号通貨の額をSVAに変換するよう、暗号通貨交換デバイス18に指示するように動作可能である。SVAの使用は、安全で信頼できる暗号通貨受け入れシステム10の金融取引をセキュアにする別の方法である。SVAは、特定の金融取引に対して有効であり、受取人コンピューティングデバイス14によって適切に受信されない場合、短期間(例えば、数秒、30秒、1分、またはそれ以上)で有効期限切れとなり、受取人コンピューティングデバイス14によってのみ使用可能である。取引後に残高が存在する場合、SVAは、実際の支出額に自動的に調整される。SVAの作成および使用は、暗号通貨変換の不安定性の側面を最小限に抑えるために、非常に迅速に行われる。
【0057】
コンピューティングデバイス12と、受取人コンピューティングデバイス14との間の取引に関する所望の数の確認が、コンセンサスネットワーク36から暗号通貨受け入れネットワークコンピューティングデバイス16によって受信されると、暗号通貨受け入れネットワークコンピューティングデバイス16は、担保暗号通貨の額の保留を解除する。
【0058】
不正行為が発生した場合(例えば、支払人コンピューティングデバイスが、悪意を持って、2つの受取人コンピューティングデバイスで同時に支出するように動作する、ネットワーク暗号通貨ウォレット46のソフトウェアが破損しているなど)、暗号通貨受け入れネットワークコンピューティングデバイス16は、保留にしている担保暗号通貨をステークアカウントから引き出す。例えば、支払人コンピューティングデバイス12が、取引で二重支出を試みる場合、所望の数の確認は受信されないであろう。所望の数の確認が受信されない場合、暗号通貨受け入れネットワークコンピューティングデバイス16は、受取人コンピューティングデバイス14で発生した取引をカバーするために保留された担保暗号通貨の額を引き出す。
【0059】
別の例として、支払人コンピューティングデバイス12が、ネットワーク暗号通貨ウォレット46のソフトウェアのエラーを介して(例えば、ネットワーク暗号通貨ウォレット46にエラーが発生し、ユーザが持っていないお金をユーザが支出することを可能にする)、暗号通貨を暗号通貨受け入れネットワークコンピューティングデバイス16に送信する場合、所望の数の確認も、同様に受信されないであろう。所望の数の確認が受信されない場合、暗号通貨受け入れネットワークコンピューティングデバイス16は、受取人コンピューティングデバイス14で発生した取引をカバーするために保留された担保暗号通貨の額を引き出す。
【0060】
別の例として、ネットワーク暗号通貨ウォレット46は、取引が、ネットワーク暗号通貨ウォレット46のソフトウェアのエラーを介して発生したときに、金融取引失敗通知を暗号通貨受け入れネットワークコンピューティングデバイス16に送信し得る。エラーが、受取人コンピューティングデバイス14との取引の確定後であるが、暗号通貨受け入れネットワークコンピューティングデバイス16が所望の量の確認を受信する前に、支払人コンピューティングデバイス12のネットワーク暗号通貨ウォレット46によって認識される場合、ネットワーク暗号通貨ウォレット46は、金融取引失敗通知を暗号通貨受け入れネットワークコンピューティングデバイス16に送信する。支出された暗号通貨の額の返還が要求され、暗号通貨受け入れネットワークコンピューティングデバイス16は、受取人コンピューティングデバイス14で発生した取引をカバーするために保留された担保暗号通貨の額を引き出す。
【0061】
図2A~
図2Cは、
図1の安全で信頼できる暗号通貨受け入れシステム10の金融取引の方法の一例のフローチャートである。方法は、
図2Aのステップ(1a)で開始し、支払人コンピューティングデバイス12が、金融取引を開始するために、支払人コンピューティングデバイス14との直接通信リンクを確立する。支払人コンピューティングデバイス12のネットワーク暗号通貨ウォレット46は、100ユニットの暗号通貨(CC)「aaa」(すなわち、第1の暗号通貨)を格納している。暗号通貨「aaa」は、1つ以上の暗号通貨交換デバイス18によって交換のために承認された任意のタイプの暗号通貨であり得る。この例では、支払人コンピューティングデバイス12は、暗号通貨「aaa」を使用して、受取人コンピューティングデバイス14に支払うことを望むが、受取人コンピューティングデバイス14は、米ドルを受け入れる。
【0062】
ステップ(1a)における購入を開始するための要求は、分割バーコードの形態であり得、支払人コンピューティングデバイス12は、バーコードの一部分を維持し、受取人コンピューティングデバイス14は、バーコードの別の部分を、それらが近接して整列されると搬送が開始されるように、維持する。支払人コンピューティングデバイス12からのバーコードの正しい部分を有すること、ならびに整列の行為が、金融取引を行う意図(すなわち、ユーザ承認)を示す。別の例として、要求は、支払人コンピューティングデバイス12と、受取人コンピューティングデバイス14との間の安全なハンドシェイクプロトコルである。
【0063】
方法はステップ(1b)に続き、支払人コンピューティングデバイス12は、受取人コンピューティングデバイス14から金融取引の確認(例えば、取引IDなどのワンタイムユースコード)を受信する。ワンタイムユースコードは、固有の番号、英数字、関数、および/または取引の当事者を特定の取引に一意に接続する任意のアイテムのうちの1つ以上である。例えば、受取人コンピューティングデバイス14は、受取人コンピューティングデバイス14が暗号通貨受け入れネットワークコンピューティングデバイス16と関連付けられており、かつ取引の条件が有効であるとき、要求を承認する。
【0064】
方法はステップ(2a)に続き、金融取引が、ネットワーク暗号通貨ウォレット46を使用して、支払人コンピューティングデバイス12によって開始されると、暗号通貨受け入れネットワークコンピューティングデバイス16は、金融取引の開始の確認と、金融取引を処理するための要求と、を受信する。例えば、支払人コンピューティングデバイス12は、金融取引を処理するための要求と、ワンタイムユースコードとを合わせて、暗号通貨受け入れネットワークコンピューティングデバイス16に送信する。
【0065】
暗号通貨受け入れネットワークコンピューティングデバイス16は、ステークプールユニット44を含む。ステークプールユニット44は、複数のステークアカウント1~nを含む。ステーキングエンティティ(例えば、ウォレット開発者、個人など)は、暗号通貨ウォレットのユーザの金融取引を裏付けるために、ある額のシステム固有の暗号通貨(フレクサコイン(FXC))をステークアカウントに担保として差し出す(すなわち、担保暗号通貨)。フレクサコインは、安全で信頼できる暗号通貨受け入れシステム10内で担保ユーティリティトークンとして使用するために特別に開発された、イーサリアムブロックチェーン上のトークンである。ステークプールユニット44および複数のステークアカウント1~nのより詳細な考察が、
図6~
図12を参照して開示される。
【0066】
暗号通貨ウォレットが、安全で信頼できる暗号通貨受け入れシステム10によって認められるために、暗号通貨ウォレットは、ステークプールユニット44のステークアカウントと関連付けられる。この例では、ネットワーク暗号通貨ウォレット46は、ステークアカウント1と関連付けられている。例えば、ネットワーク暗号通貨ウォレット46のデジタルウォレット開発者、およびおそらく1つ以上の他のステーキングエンティティは、ネットワーク暗号通貨ウォレット46のユーザの金融取引を裏付けるために、1000ユニットのフレクサコインをステークアカウント1に預入している。
【0067】
ステップ(2b)において、暗号通貨受け入れネットワークコンピューティングデバイス16は、ステークアカウント1内のある額のフレクサコインを保留にする。この例では、ステークアカウント1内の1000ユニットのフレクサコインの額のうちの、100ユニットの暗号通貨「aaa」に相当するフレクサコイン(例えば、ネットワーク暗号通貨ウォレット46に格納された暗号通貨の総額に等しいフレクサコインの額)が、金融取引を裏付けるために保留される。100ユニットの暗号通貨「aaa」に相当するフレクサコインは、単純化のために、「X」額のフレクサコインと称される。
【0068】
例えば、暗号通貨「aaa」とフレクサコインとが1対1の変換を有する場合、「X」は100ユニットに等しく、ネットワーク暗号通貨ウォレット46の他のユーザの金融取引を裏付けるために、ステークアカウント1内には利用可能な900ユニットのフレクサコインが、現在、存在する。ステークアカウント1の「X」額のフレクサコインの保留に関する情報が、ステークプールスマートコントラクトに追加される。スマートコントラクト内の取引は、ステークプール取引の状態をブロックチェーンに公開するために必要なデータを含む。コントラクトは、様々な他の情報も含み得る。
【0069】
方法はステップ(2c)に続き、「X」額のフレクサコインが保留されると、暗号通貨受け入れネットワークコンピューティングデバイス16は、必要な額の担保暗号通貨が保留されており、金融取引を進めることができることの第1のネットワーク確認(ACK)を支払人コンピューティングデバイス12に送信する。必要な額の担保暗号通貨が保留にすることができない(例えば、ステークアカウントが、十分な利用可能な担保暗号通貨を有していない)場合、暗号通貨受け入れネットワークコンピューティングデバイス16は、ステップ(2c)で、エラー通知を支払人コンピューティングデバイス12に送信し、金融取引をキャンセルする。
【0070】
方法はステップ(3a)に続き、支払人コンピューティングデバイス12は、受取人コンピューティングデバイス14によって要求された米ドルの額に等しい額の暗号通貨「aaa」を、暗号通貨受け入れネットワークコンピューティングデバイス16に送信する。この例では、受取人コンピューティングデバイス14は、10ドルを要求している。「10ドル」に相当する「aaa」暗号通貨の転送に関する情報を含む取引が、「aaa」ブロックチェーン内のブロックに追加される。このブロックは、ヘッダセクションと、取引セクションとを含む。ヘッダセクションは、ブロック番号(例えば、ブロック#1)と、前のブロックのハッシュ(図示せず)とを合わせたものを含む。ヘッダセクションおよび/または取引セクションは、様々な他の情報を含み得る。
【0071】
取引情報は、支払い金額と、送信者暗号通貨アドレス(支払人コンピューティングデバイス12)と、受信者暗号通貨アドレス(受取人コンピューティングデバイス14ではなく、暗号通貨受け入れネットワークコンピューティングデバイス16)と、を含む。次いで、この取引が、ブロックチェーン上で公開されるブロック内に含まれる。しかしながら、取引に関連する他の詳細(例えば、受取人コンピューティングデバイスの識別、受取人コンピューティングデバイスによって支払われるべき取引料金など)は、非公開で、暗号通貨受け入れネットワークコンピューティングデバイス16によってオフチェーンで管理される。したがって、安全で信頼できる暗号通貨受け入れシステム10を使用することによって、機密の受取人関連情報(例えば、収益、販売されている品目、消費者支出行動など)および機密の支払人関連情報(例えば、消費者アイデンティティ、購入された品目、特定の小売商で支出された額、頻繁に利用する小売商など)は、非公開である(すなわち、誰もが見ることができるようにブロックチェーン上で公開されていない)。
【0072】
代替的または追加的に、受取人コンピューティングデバイス14は、ステップ(3a+)で、要求された所望の通貨の額(例えば、米ドルの額)を含む金融取引の通知を暗号通貨受け入れネットワークコンピューティングデバイス16に送信する。方法はステップ3(b)に続き、暗号通貨受け入れネットワークコンピューティングデバイス16は、受信された暗号通貨の額が、保留された担保暗号通貨の額によってカバーされていることのネットワーク取引確認(すなわち、第2のネットワーク確認(ACK))を支払人コンピューティングデバイス12に送信する。ステップ3(b)のネットワーク取引確認は、支払人コンピューティングデバイス12が、受取人コンピューティングデバイス14との取引を完了するために使用するために生成された、取引の額以上の額のストアドバリューアカウント(SVA)をさらに含み得る。
【0073】
代替的に、受信された暗号通貨の額が、保留された担保暗号通貨の額によってカバーされていない場合、暗号通貨受け入れネットワークコンピューティングデバイス16は、3(b)で取引をキャンセルするか、またはステークアカウント1の条件に応じて、3(b)で、取引をカバーするためのさらなる額のフレクサコインを保留にし得る。
【0074】
この例では、ネットワーク暗号通貨ウォレット46の残高に相当するフレクサコインが保留されており、したがって、支払人コンピューティングデバイス12は、保留された金額を超えて支出することができないであろう。しかしながら、保留された担保暗号通貨の額が他の要因(例えば、小売商ID、典型的な取引金額など)に基づいている他の例では、支払人コンピューティングデバイス12は、保留されたものよりも多い取引を開始し得る。ステークアカウント1の条件は、そのような場合にどのように進めるかを示す。例えば、ステークアカウント1は、ネットワーク暗号通貨ウォレット46のユーザが、任意の個々の購入に対する特定の支出上限を有することを示し得る。支出上限を超える保留を必要とする要求は、すべて拒否される。しかしながら、支出上限以下の要求については、取引を進めることができるように、追加の担保暗号通貨が保留される。
【0075】
方法はステップ3(c)に続き、支払人コンピューティングデバイス12は、取引を確定するための通知を受取人コンピューティングデバイス14に送信する。取引を確定するための通知は、暗号通貨受け入れネットワークコンピューティングデバイス16からのネットワーク取引確認情報(例えば、暗号通貨の額が、受信され、かつ保留された担保暗号通貨の額によってカバーされている)を含み、その結果、受取人コンピューティングデバイス14は、所望の資金が、到着するか、またはステークプールコントラクトから担保を清算することによって利用可能になることを知ることで、金融取引をまとめることができる。ステップ3(c)の取引を確定するための通知は、支払人コンピューティングデバイス12が、受取人コンピューティングデバイス14との取引を完了するために使用するために生成された、取引の額以上の額のSVAをさらに含み得る。
【0076】
図2Aの簡略化された例の要約として、支払人コンピューティングデバイス12は、暗号通貨「aaa」を使用して、受取人コンピューティングデバイス14との取引を行うことを望む。支払人コンピューティングデバイス12は、所望の取引に関する要求を受取人コンピューティングデバイス14に送信する。取引が、受取人コンピューティングデバイス14にとって合意可能であるとき、受取人コンピューティングデバイス14は、取引のACKを送信する。
【0077】
支払人コンピューティングデバイスおよび受取人コンピューティングデバイスが、所望の取引に合意すると、支払人コンピューティングデバイス12は、暗号通貨「aaa」を使用して取引を実行するための要求を暗号通貨受け入れネットワークコンピューティングデバイス16に送信する。支払人コンピューティングデバイス12が、自身のウォレット内に暗号通貨「aaa」を有しており、暗号通貨「aaa」が適切にステークされている(例えば、支払人のウォレット内の額をカバーするのに十分である)場合、暗号通貨受け入れネットワークコンピューティングデバイス16は、ステークアカウントを保留にする。ステークアカウントを保留にした状態で、暗号通貨受け入れネットワークコンピューティングデバイス16は、支払人コンピューティングデバイスが、暗号通貨「aaa」を受取人コンピューティングデバイスとともに使用することを承認されていることのネットワークACKを、支払人コンピューティングデバイスに送信する。
【0078】
ネットワークACKを受信すると、支払人コンピューティングデバイス12は、暗号通貨受け入れネットワークコンピューティングデバイス16に取引の額を通知する。取引の額が、保留されている暗号通貨「aaa」の額未満である場合、暗号通貨受け入れネットワークコンピューティングデバイス16は、特定の取引のためのACKを送信する。支払人コンピューティングデバイスおよび受取人コンピューティングデバイスは、取引を実行する。このプロセスは、典型的には、数秒未満で実行される。
【0079】
方法は、
図2Bのステップ(4a-1)に続き、暗号通貨受け入れネットワークコンピューティングデバイス16は、コンセンサスネットワーク36を介して、「aaa」ブロックチェーン54上のブロック#1の所望の数の確認(例えば、取引のための10ドルに相当する暗号通貨「aaa」の使用)を求める。コンセンサスネットワーク36は、複数のコンセンサスデバイス1~nを含む。例えば、ビットコインブロックチェーンでは、マイナーが、ブロックチェーン内のすべての以前の取引を証明するブロックに新しい取引を記録する。平均して、マイナーが、ビットコインブロックチェーンにブロックを書き込むのに10分かかり、平均ブロック時間は、ビットコインネットワークの総ハッシュパワーに依存する。
【0080】
所望の数の確認は、使用される暗号通貨のタイプに対応する。ここに示されるように、暗号通貨受け入れネットワークコンピューティングデバイス16は、「aaa」ブロックチェーン54上の取引が「確定」とみなされる前に、「n」個の確認を必要とする。所望の数の確認の受信には、数分~数時間の時間がかかることがある。しかしながら、すべての金融取引が、担保としてのフレクサコインで裏付けられているため、暗号通貨受け入れネットワークコンピューティングデバイス16は、金融取引を進めて、資金が最終的に利用可能であることを保証される。
【0081】
方法は(4a-2)に続き、暗号通貨ネットワークコンピューティングデバイス16は、10ドルに相当するフレクサコインに等しいように、保留されているX額のフレクサコインを調整する。10ドルに相当するフレクサコインは、単純化のために、「y」額のフレクサコインと称される。例えば、フレクサコインと、米ドルとの間の変換レートが1対1であり、Xが100に等しい場合、暗号通貨受け入れネットワークコンピューティングデバイス16は、10ユニットのフレクサコインのみが保留されるように、90ユニットのフレクサコイン(すなわち、「X-y」)の保留を解除する。ステークアカウント1の「X-y」額のフレクサコインの保留に関する情報が、ステークプールスマートコントラクトに追加される。スマートコントラクト内の取引は、ステークプール取引の状態をブロックチェーンに公開するために必要なデータを含む。コントラクトは、様々な他の情報も含み得る。
【0082】
方法はステップ(4a-3)に続き、所望の数の確認が、コンセンサスネットワーク36から暗号通貨受け入れネットワークコンピューティングデバイス16によって受信される。方法はステップ(4a-4)に続き、暗号通貨受け入れネットワークコンピューティングデバイス16は、ステークアカウント1の「y」額のフレクサコインの保留を解除する。ステークアカウント1の「y」額のフレクサコインの保留を解除することに関する情報を含むブロックが、フレクサコインブロックチェーンに追加される。単純化のために、このブロックは、ブロック番号(例えば、ブロック#3)を含むヘッダセクションと、取引セクションと、を含む。
【0083】
図2Bのステップ(4a-2)で所望の確認数を求めると同時に、方法は、
図2Cのステップ(4b-1)に続き、暗号通貨受け入れネットワークコンピューティングデバイス16は、支払人コンピューティングデバイス12によって送信された10ドルに相当する暗号通貨「aaa」を暗号通貨交換デバイス18に送信する。方法はステップ(4b-2)に続き、暗号通貨交換デバイス18は、支払人コンピューティングデバイス12によって送信された10ドルに相当する暗号通貨「aaa」を、所望の通貨(例えば、米ドル)の10ドルに変換する。暗号通貨交換は、交換レートの不安定性を考慮して、迅速に行われる(例えば、30秒~数分)。
【0084】
方法はステップ(4b-3)に続き、暗号通貨交換デバイス18は、10ドルを、受取人コンピューティングデバイス14と関連付けられた受取人バンキングコンピューティングデバイス56に預入する。代替的に、暗号通貨交換デバイス18は、ステップ(4b-3+)で、10ドルをフレクサバンキングコンピューティングデバイス55(例えば、安全で信頼できる暗号通貨受け入れシステム10のバンキングコンピューティングデバイス)に預入し、フレクサバンキングコンピューティングデバイス55は、ステップ(4b-3)で、10ドルを受取人バンキングコンピューティングデバイス56に預入する。方法はステップ(4b-4)に続き、受取人バンキングコンピューティングデバイス56は、10ドルの預入の領収書と、取引手数料とを合わせたものを暗号通貨受け入れネットワークコンピューティングデバイス16に送信する。取引手数料は、報酬計算および分配のために、ステークプールユニット44の取引手数料/報酬プール80に格納される。
【0085】
図3は、安全で信頼できる暗号通貨受け入れシステム10内で試みられた不正取引の一例の概略ブロック図である。この例では、支払人コンピューティングデバイス12は、「aaa」暗号通貨ブロックチェーン54上で「二重支出」を試みる悪人である。
図2Aのステップ(3a)を参照すると、支払人コンピューティングデバイス12は、受取人コンピューティングデバイス14との取引を完了するために、10ドルに相当する暗号通貨「aaa」を暗号通貨受け入れネットワークコンピューティングデバイス16に転送し(灰色のブロック#1)、この例では、支払人コンピューティング12は、同じ10ドルに相当する暗号通貨「aaa」を異なる受取人(例えば、「他の受取人」)に送信するために、ブロック#1aを「aaa」暗号通貨ブロックチェーンに同時に追加している。
【0086】
この例では、ブロック#1aは、コンセンサスネットワーク36のコンセンサスデバイス1~10によってマイニングされ、最終的に10個の確認(例えば、異なる受取人への支払いを確認するのに十分な確認)を受信する。プルーフオブワークブロックチェーン上で51%攻撃を試みて、支払人コンピューティングデバイス12は、ブロック#1aチェーンよりも長い分岐を「aaa」暗号通貨ブロックチェーンに追加するために、ブロック#1をマイニングしようとする。ブロックチェーンの最も長いバージョンが、ネットワークコンセンサスルールによって有効とみなされる。したがって、支払人コンピューティングデバイス12が成功した場合、ブロック#1a取引は、確認されるのに十分な確認数(例えば、この例では10個)を受信するであろうが、次いで、同様に確認されるであろうブロック#1の自己マイニングされた、より長い分岐によって放棄される。
【0087】
しかしながら、マイニングブロックは、かなりの量のコンピューティングパワーを必要とし、一定の時間後、支払人コンピューティングデバイス12は、コンセンサスネットワーク36内の他のコンセンサスデバイスに追いつくことができない。この例では、支払人コンピューティングデバイス12は、他のコンセンサスデバイスがブロック#1aの10個の確認を完了するのにかかる時間内に、ブロック#1の3個の確認を完了することができる。ブロック#1aチェーンがより長いため、コンセンサスネットワーク36は、ブロック#1aチェーンを正しいものとして採用し、ブロック#1のより短いチェーンが放棄される。
【0088】
図4は、安全で信頼できる暗号通貨受け入れシステム10内で試みられたネットワーク攻撃の一例のフローチャートである。
図3の例で説明されたように、支払人コンピューティングデバイス12は、暗号通貨「aaa」ブロックチェーン54上で10ドルに相当する暗号通貨「aaa」を二重支出しようと試みる。二重支出しようとする支払人コンピューティングデバイス12の試みは、ネットワーク攻撃とみなされる。ブロック#1のより小さい分岐は、「aaa」ブロックチェーン54によって最終的に放棄される。このように、暗号通貨受け入れネットワークコンピューティングデバイス16は、
図2A~
図2Cの方法に関連して、ステップ(4a-3)で所望の量の確認結果を受信しない。
【0089】
図2Cの(4b-1)~(4b-4)の同時ステップは、不変である。しかしながら、方法は代替ステップ(4a-4)に続き、暗号通貨受け入れネットワークコンピューティングデバイス16は、「y」額のフレクサコインをステークアカウント1から引き出す。ステークアカウント1の「y」額のフレクサコインの引き出しに関する情報が、ステークプールスマートコントラクトに追加され、次いで、ブロックチェーンに公開される。コントラクトは、様々な他の情報も含み得る。
【0090】
図5Aおよび
図5Bは、安全で信頼できる暗号通貨受け入れシステム10内でのウォレット承認失敗の一例のフローチャートである。
図2A~
図2Dの方法を参照すると、
図5Aにおいて、ステップ(4a-2)の後、かつステップ(4a-3)で所望の量の確認を受信する前のある時間に、暗号通貨受け入れネットワークコンピューティングデバイス16は、代替ステップ(4a-3)で金融取引失敗通知を受信する。例えば、取引が、ネットワーク暗号通貨ウォレット46の不正行為またはソフトウェアの不具合を介して、誤って承認された。
【0091】
エラーが発見された場合、ネットワーク暗号通貨ウォレット46は、金融取引失敗通知を送信し、資金の返却を求める。「10ドル」に相当する「aaa」暗号通貨のウォレットへの返却に関する情報を含む取引が、「aaa」ブロックチェーンに追加される。単純化のために、このブロックは、ブロック番号(例えば、ブロック#x)を含むヘッダセクションと、取引セクションと、を含む。
【0092】
図5Aの方法は代替ステップ(4a-4)に続き、暗号通貨受け入れネットワークコンピューティングデバイス16は、「y」額のフレクサコインをステークアカウント1から引き出す。「y」額のフレクサコインをステークアカウント1から引き出すことに関する情報を含む取引が、ブロックチェーンに公開される。単純化のために、このブロックは、ブロック番号(例えば、ブロック#3)を含むヘッダセクションと、取引セクションと、を含む。
【0093】
図5Bは、暗号通貨受け入れネットワークコンピューティングデバイス16が、「y」FXCを暗号通貨交換デバイス18に送信する(4b-1)の代替ステップに、方法が続くことを除いて、
図2Cと同様に動作する。方法は代替ステップ(4b-2)に続き、暗号通貨交換デバイス18が、「y」FXCを10ドルに変換する。方法はステップ(4b-3)に続き、暗号通貨交換デバイス18は、10ドルを、受取人コンピューティングデバイス14と関連付けられた受取人バンキングコンピューティングデバイス56に預入する。
【0094】
代替的に、暗号通貨交換デバイス18は、ステップ(4b-3+)で、10ドルをフレクサバンキングコンピューティングデバイス55(例えば、安全で信頼できる暗号通貨受け入れシステム10のバンキングコンピューティングデバイス)に預入し、フレクサバンキングコンピューティングデバイス55は、ステップ(4b-3)で、10ドルを受取人バンキングコンピューティングデバイス56に預入する。方法はステップ(4b-4)に続き、受取人バンキングコンピューティングデバイス56は、10ドルの預入の領収書と、取引手数料とを暗号通貨受け入れネットワークコンピューティングデバイス16に送信する。取引手数料が、報酬計算、フレクサコインへの変換、および分配のために、ステークプールユニット44の取引手数料/報酬プール80に格納される。
【0095】
図6は、安全で信頼できる暗号通貨受け入れシステム10のステークプールユニット44の一実施形態の概略ブロック図である。ステークプールユニット44は、複数のステークアカウント1~nを格納し、ステークアカウントマネージャ52を含み、取引手数料/報酬プール80を格納する。複数のステークアカウント1~nは、安全で信頼できる暗号通貨受け入れシステム10内の取引をセキュアにするための担保暗号通貨を格納する。例えば、フレクサコイン(FXC)は、安全で信頼できる暗号通貨受け入れシステム10内でシステム固有の暗号通貨として使用するために作成された、イーサリアムブロックチェーン上のトークンであり、担保暗号通貨として使用可能である。安全で信頼できる暗号通貨受け入れシステム10によって認められるために、暗号通貨ウォレットは、フレクサコインで裏付けられたステークアカウントと関連付けられなければならない。フレクサコインをステークアカウントに担保として差し出すエンティティは、ステーキングエンティティと称される。
【0096】
例えば、デジタルウォレット開発者は、自分のウォレットユーザが、安全で信頼できる暗号通貨受け入れシステム10の一部であるべく、暗号通貨受け入れネットワークコンピューティングデバイス16にアカウントを作成する。アカウント設定の一環として、デジタルウォレット開発者は、自分のウォレットユーザの金融取引を裏付けるために、特定の額の担保暗号通貨をステークアカウントに担保として獲得しなければならない。
【0097】
例えば、ネットワーク暗号通貨ウォレット46-1開発者60-1は、複数のユーザ1~nによる使用のためのネットワーク暗号通貨ウォレット46-1を開発した。ネットワーク暗号通貨ウォレット46-1開発者60-1は、暗号通貨受け入れネットワークコンピューティングデバイス16にアカウントを設定し、これには、ネットワーク暗号通貨ウォレット46-1(すなわち、ユーザ1~nのネットワーク暗号通貨ウォレット46-1)のユーザの取引を裏付けるために、ステークアカウント1を確立することが含まれる。この例では、ネットワーク暗号通貨ウォレット46-1開発者60-1は、1000ユニットのフレクサコインを購入して、ステークアカウント1に預入する。したがって、ネットワーク暗号通貨ウォレット46-1開発者60-1は、ネットワーク暗号通貨ウォレット46-1のステーキングエンティティ58-1である。
【0098】
別の例として、ネットワーク暗号通貨ウォレット46-n開発者60-nは、複数のユーザ1~nによる使用のためのネットワーク暗号通貨ウォレット46-nを開発した。ネットワーク暗号通貨ウォレット46-n開発者60-nは、暗号通貨受け入れネットワークコンピューティングデバイス16にアカウントを設定し、これには、ネットワーク暗号通貨ウォレット46-n(すなわち、ユーザ1~nのネットワーク暗号通貨ウォレット46-n)のユーザの取引を裏付けるために、ステークアカウントnを確立することが含まれる。この例では、ネットワーク暗号通貨ウォレット46-n開発者60-nは、1900ユニットのフレクサコインを購入して、ステークアカウントnに預入する。追加的に、個人(例えば、ユーザコンピューティングデバイス1)は、100ユニットのフレクサコインを購入して、ステークアカウントnに預入する。したがって、ネットワーク暗号通貨ウォレット46-n開発者60-nおよびユーザコンピューティングデバイス1は、ネットワーク暗号通貨ウォレット46-nのステーキングエンティティ58-nである。
【0099】
暗号通貨ウォレット取引を裏付けるために、暗号通貨ウォレット開発者によって購入されるフレクサコインの額は、その暗号通貨ウォレットのユーザの数、それらのユーザによって予想される支出の額、成長の予測などに基づく。暗号通貨ウォレットは、そのユーザが自由に支出することができるように、「過担保」されるべきである。
【0100】
フレクサコインを担保として差し出すことと引き換えに、ステーキングエンティティは、自分たちのウォレットのユーザによって完了された成功した取引に対するパーセンテージバックなどの報酬が提供される。提供されるインセンティブのために、様々なステーキングエンティティ(例えば、個々のユーザコンピューティングデバイス、他のウォレット開発者)が、担保暗号通貨を1つ以上のステークアカウントに担保として差し出すことを望み得る。
【0101】
ステークアカウントマネージャ52は、複数のステークアカウント1~nを管理し、イベントログ62と、報酬計算モジュール64と、ステークアカウント1~n情報66(「info」)と、を含む。複数のステークアカウント1~nは、イーサリアムブロックチェーン上のスマートコントラクトなどの「オンチェーン」スマートコントラクトである(すなわち、スマートコントラクトは、すべての人に見える)が、ステークアカウントマネージャ52は、情報を記憶し、「オフチェーン」で活動を行う。例えば、ステークマネージャ52は、所与の時間において、ステークプールユニット44内で担保暗号通貨として機能するフレクサコインの総額を追跡することを含む、ステークプール活動のイベントログ62を維持する。この例では、100,000ユニットのフレクサコインが、ステークプールユニット44内の担保暗号通貨(すなわち、ステークアカウント1~nに担保として差し出されたFXC)として機能している。このエントリは、イベントログ62の上部に記載される。
【0102】
イベントログ62は、預入、引き出し、保留などのステークプール活動のためのエントリをさらに含む。この例では、下部に向かってより古いエントリで始まり、イベントログ62は、ネットワーク暗号通貨ウォレット46-1開発者60-1が、1000FXCをステークアカウント1に預入するためのエントリを含む。次に、イベントログ62は、暗号通貨ウォレット46-1の取引を裏付けるために利用可能な900ユニットのFXCを残して、ステークアカウント1内に100ユニットのFXCが保留されたことを示す。イベントログ62の最新のエントリは、ステークアカウント1で100ユニットのFXCの保留が解除されたことを示す。
【0103】
ステークアカウント1~n情報66は、特定の時間において、各ステークアカウントと関連付けられた取引を裏付けるために利用可能なFXCの額など、ステークアカウント1~nに関連する情報を格納する。ステークアカウント1~n情報66は、成功した取引当たりの報酬パーセンテージ、報酬引き出しの条件、取引手数料率などをさらに含む。例えば、受取人コンピューティングデバイスは、異なるネットワーク暗号通貨ウォレットによって完了された成功した取引に対して異なる取引手数料を支払う場合がある。さらに、異なるステークアカウントは、異なる報酬率および報酬引き出し選好(rewards withdrawal preferences)を有し得る。
【0104】
これらはすべて、暗号通貨受け入れネットワークコンピューティングデバイス16にステークアカウントおよび/または受取人コンピューティングデバイス14アカウントを設定することによって確立される契約条件であるが、これらの条件を機密扱いにすることが、重要である。例えば、公開された場合、受取人(例えば、小売商)は、すべての受取人の取引手数料が何であるかを知らされ、したがって、安全で信頼できる暗号通貨受け入れシステム10の、異なる条件で契約する能力を排除する。例えば、安定した小売商は、安全で信頼できる暗号通貨受け入れシステム10に加入するためのインセンティブとして、より低い取引手数料を提供され得る。その情報が公開されている場合、すべての受取人が、同じ低い取引手数料を要求するであろう。
【0105】
さらに、あるステークアカウントのステーキングエンティティは、別のステークアカウントのステーキングエンティティと比較して、異なる報酬パーセンテージを提供され得る。例えば、信頼性が高く、広く使用されているネットワーク暗号通貨ウォレットのステークアカウントのステーキングエンティティは、より少ないユーザを有する新規のネットワーク暗号通貨ウォレットのステークアカウントのステーキングエンティティよりも高い報酬パーセンテージを提供され得る。様々な条件を可能にするために、上記の例などの機密契約条件は、ステークアカウントマネージャ52内に非公開で格納される(すなわち、ブロックチェーンスマートコントラクトで公開されない)。
【0106】
報酬計算モジュール64は、ステークアカウント1~n情報66と、取引手数料/報酬プール80と、イベントログ62とにアクセスすることによって、所与の時間に、ステーキングエンティティに支払われるべき報酬を計算する。例えば、ステークアカウント1~n情報66は、報酬引き出しの条件を含む。ステークアカウント1~nの報酬引き出しの条件は、報酬引き出しの時間(例えば、自動化されている(例えば、週に1回)、マニュアルなど)、報酬引き出しがオンチェーンであり得るか、オフチェーンであり得るか、報酬引き出しを開始する権限を与えられた者の識別などのうちの1つ以上を含み得る。報酬計算モジュール64は、
図8~
図12を参照して、より詳細に考察される。
【0107】
図7は、ステークアカウント設定の一実施形態の概略ブロック図である。ステークアカウントは、イーサリアムブロックチェーン上のスマートコントラクトなどのブロックチェーンスマートコントラクトである。スマートコントラクトは、ブロックチェーンまたは同様のデータベース実装に書き込まれ、ネットワークユーザによって実行可能なコンピュータコードである。コントラクトに概説されているイベントがトリガされると、コードが実行する。したがって、スマートコントラクトは、検閲、ダウンタイム、詐欺、またはサードパーティの干渉の可能性なく、プログラムされたとおり正確に実行される。
【0108】
例えば、イーサリアムブロックチェーンは、チューリング完全なソフトウェアの使用を通じて、あらゆる分散アプリケーションのプログラミングコードを実行することができる分散型ブロックチェーンネットワークである。イーサリアムブロックは、ヘッダセクション68と、取引セクション70と、を含む。イーサリアムブロックチェーンの構造は、取引履歴全体の共有記録であるという点で、ビットコインなどの他の従来のブロックチェーンの構造と類似している。しかしながら、イーサリアムブロックは、(ビットコインのように)ブロックチェーンの最後のブロックがマイニングされてから収集された取引だけでなく、各スマートコントラクトの最近の「状態」も格納する。コンセンサスネットワーク(すなわち、マイナーのネットワーク)は、スマートコントラクトを状態ごとにシフトさせる責任がある。ヘッダセクション68は、これらの状態を、状態変化を要約するルートハッシュ値(すなわち、状態ルート72)に含む。ヘッダセクション68は、前のブロックのブロック番号およびハッシュなどの他の識別情報をさらに含む。
【0109】
イーサリアム内の取引セクション70は、ノンス(一意の取引識別子)と、受信者アカウントのアドレスと、値と、送信アカウントの署名と、実行されるコード(例えば、コントラクトコード74)と、マイニング関連フィールド(例えば、開始ガスおよびガス価格)と、場合によりいくつかのデータ(例えば、コードの入力値)と、を含む。ここで、取引セクション70は、単純化のために、コントラクトコード74を含むものとして示されている。
【0110】
暗号通貨ウォレット開発者が、安全で信頼できる暗号通貨受け入れシステム10と関連付けられた暗号通貨ウォレットを持つことを望む場合、暗号通貨ウォレット開発者は、暗号通貨受け入れネットワークコンピューティングデバイス16にアカウントを設定する。アカウント設定は、暗号通貨ウォレットのステークアカウントを確立することを含む。ステークアカウントを確立するために、スマートコントラクトは、
図7のブロック#1から始まるイーサリアムブロックチェーンに書き込まれる。
【0111】
単純化のために、ステークアカウントの作成は、ブロック#1から始まるが、多数のブロックが、このブロックの先に来るであろう。ブロック#1のヘッダセクション68は、システムのアカウントの状態の現在の要約を含む状態ルート72を含む。ここで、状態ルート72は、単純化のために、空である。ブロック#1の取引セクション70は、暗号通貨ウォレットのステークアカウントアドレスを作成し、かつステークアカウントアドレスを、ステーキングエンティティと、暗号通貨受け入れネットワークコンピューティングデバイス16とによって設定された契約条件と関連付けるためのコードを含むコントラクトコード74を含む。
【0112】
ブロック#2のヘッダセクション68は、ブロック#1のハッシュと、状態ルート72と、を含む。状態ルート72は、ステークアカウントの現在の状態に関する情報を含む。例えば、ブロック#2の状態ルート72は、ステークアカウントが、暗号通貨ウォレットのために作成されたことを記述する(例えば、ブロック#1がマイニングされると、ブロック#1のコントラクトコード74が実行される)。ブロック#2の取引セクション70は、契約条件に従って、ステークアカウントアドレスに預入するための命令を含コントラクトコード74を含む。例えば、コントラクトコード74は、ステーキングエンティティによって所有されたアドレスが、ステークアカウントアドレスに預入するためのXユニットのフレクサコイン(FXC)を所有していることを記述する。
【0113】
ブロック##3のヘッダセクション68は、ブロック#2のハッシュと、状態ルート72と、を含む。状態ルート72は、ステークアカウントの現在の状態に関する情報を含む。例えば、ブロック#3の状態ルート72は、ステークアカウントが、ステーキングエンティティによって預入されたXユニットのFXCを有することを記述する。ブロック#3の取引セクション70は、ステークアカウントの設定が完了したことを示すコントラクトコード74を含む。
【0114】
図8は、安全で信頼できる暗号通貨受け入れシステム10のステークプールユニット44の一実施形態の概略ブロック図である。ステークプールユニット44は、複数のステークアカウント1~nを格納し、ステークアカウントマネージャ52を含み、取引手数料/報酬プール80を格納する。ステークアカウントマネージャ52は、ステークアカウント1~n情報66と、イベントログ62とを「オフチェーン」で格納する。ステークアカウントマネージャ52は、非公開で格納された情報を使用して、ステークアカウント1~nおよびステークアカウントと関連付けられたステーキングエンティティに支払われるべき報酬を計算するように動作可能である報酬計算モジュール64を含む。
【0115】
ステークアカウント1~n情報66は、取引を裏付けるために利用可能なフレクサコイン(FXC)の額と、保留中の取引に起因してロックされているFXCの額と、報酬として預入されたFXCの額とを含んだ状態で、残高情報76-1~76-nを格納する。
【0116】
ステークアカウント1~n情報66は、成功した取引当たりの報酬パーセンテージ、報酬引き出しの条件、取引手数料率、ステーキングエンティティ報酬パーセンテージ、所与の時間(例えば、T)において受取人ごとに発生した成功した取引に関する情報などを含む、報酬情報78-1~78-nをさらに格納する。例えば、受取人は、異なるネットワーク暗号通貨ウォレットによって完了された、成功した取引に対して、異なる取引手数料を支払うことができる。さらに、異なる受取人は、同じネットワーク暗号通貨ウォレットに対して異なる取引手数料を支払うことができる。報酬情報78-1~78-nは、報酬預入選好(rewards deposit preferences)も含む。報酬預入選好は、報酬預入の時間(例えば、自動化された(例えば、週に1回)、マニュアルなど)、報酬預入を開始する1つ以上のトリガーイベント、ステーキングエンティティ報酬パーセンテージなどのうちの1つ以上を含み得る。
【0117】
ステークアカウント1~n情報66は、ステークアカウントと関連付けられたステーキングエンティティの識別、ステーキングエンティティ許諾、ステーキングエンティティFXC引き出し情報(例えば、引き出しがオンチェーンであり得るか、オフチェーンであり得るか、引き出しを開始する権限を与えられた者の識別など)などのステーキングエンティティ情報82-1~82-nをさらに格納する。
【0118】
取引手数料/報酬プール80は、成功した取引ごとに受取人によって支払われた、預入された取引手数料84を含む。示された例では、現在、取引手数料/報酬プール80内に50ユニットの預入された取引手数料84が存在する。入ってくる取引手数料84は、プールされ、報酬86として分配するためのFXCを購入するために使用される。示された例では、報酬残高86は、100FXCである。例えば、預入された取引手数料84残高は以前はより高かったが、一部分が、100ユニットのFXCを購入するために使用された。預入された取引手数料84は、所定の時間(例えば、1時間ごとに)および/または特定の額の預入された取引手数料84を取得することなどのトリガーイベントに基づいて、報酬のためのFXCに変換され得、特定の報酬残高86に到達し、報酬分配が要求されるなど。報酬は、報酬の分配が行われるまで、報酬残高86にプールされる。
【0119】
報酬計算モジュール64は、所定の時間(すなわち、毎日、毎週など)、ステーキングエンティティによる要求(例えば、ステークアカウント引き出し要求を介して)、および/またはトリガーイベントのうちの1つ以上に基づいて、報酬をステークアカウント1~nに分配することを決定する。トリガーイベントは、特定の額の成功した取引の完了、特定の額の入ってくる取引手数料に到達すること、特定の報酬残高86に到達すること、ステーキングエンティティの契約条件などのうちの1つ以上を含む。報酬計算モジュール64が、報酬を分配することを決定すると、報酬計算モジュール64は、ステークアカウント1~n情報66、取引手数料/報酬プール80、およびイベントログ62にアクセスして、各ステークアカウントに支払われるべき報酬額を計算する。
【0120】
動作の一例では、報酬計算モジュール64は、時間Tにおいて、報酬を分配することを決定し、ステークアカウント1に支払われるべき報酬を計算する。報酬計算モジュール64は、ステークアカウント1情報66-1およびイベントログのうちの1つ以上にアクセスして、時間Tにおいて、ステークアカウント1が、受取人1および受取人2との取引を裏付けたことを決定する。ステークアカウント1の報酬情報76-1によると、受取人1は、ステークアカウント1のネットワーク暗号通貨ウォレットを使用して成功した取引に対して、1%の成功した取引当たり手数料率を有し、受取人2は、ステークアカウント1のネットワーク暗号通貨ウォレットを使用して成功した取引に対して、2%の成功した取引当たり手数料率を有する。
【0121】
さらに、報酬情報78-1から、報酬計算モジュール64は、受取人1が、ステークアカウント1のネットワーク暗号通貨ウォレットを用いて、500ユニットに相当する成功した取引を完了し、受取人2が、ステークアカウント1のネットワーク暗号通貨ウォレットを用いて、200ユニットに相当する成功した取引を完了したことを決定する。報酬計算モジュール64は、ステークアカウント1が、受取人1の取引に基づいて5ユニットのFXC報酬、および受取人2の取引に基づいて4ユニットのFXC報酬を支払われるべきことを計算する。したがって、報酬残高86の利用可能な100ユニットのFXC報酬から、ステークアカウント1は、9ユニットのFXCを支払われるべきである。
【0122】
報酬計算モジュール64は、計算された報酬額に対してバッチ処理された安全な計算技術を実行して、バッチ処理された安全な報酬分配サマリを生成する。バッチ処理された安全な報酬分配サマリは、非公開で格納されたステークアカウント情報を開示することなく、各報酬額が正しく計算されることを可能にする。
【0123】
例えば、1つ以上のステークアカウントの報酬計算は、ゼロ知識証明計算を使用してバッチ処理され、圧縮される。ゼロ知識証明計算は、証明の受領者が、入力計算の詳細を知ることなく、一部分が正しいことを証明することを可能にする。報酬計算のゼロ知識証明88は、受取人の取引手数料率、成功した取引の額などの機密詳細事項を公開することなく、報酬を公開ブロックチェーン上のステークアカウント(例えば、イーサリアムブロックチェーン上のスマートコントラクト)に預入するために使用される。
【0124】
図9は、1つ以上のステークアカウントへの報酬分配の一例の概略ブロック図である。ステークアカウントは、イーサリアムブロックチェーン上のスマートコントラクトなどのブロックチェーンスマートコントラクトである。イーサリアムブロックは、ヘッダセクション68と、取引セクション70と、を含む。ヘッダセクション68は、これらの状態を、スマートコントラクトの状態変化を要約するルートハッシュ値(すなわち、状態ルート72)に含む。ヘッダセクション68は、前のブロックのブロック番号およびハッシュなどの他の識別情報をさらに含む。
【0125】
イーサリアム内の取引セクション70は、ノンス(一意の取引識別子)と、受信者アカウントのアドレスと、値と、送信アカウントの署名と、実行されるコード(例えば、コントラクトコード74)と、マイニング関連フィールド(例えば、開始ガスおよびガス価格)と、場合によりいくつかのデータ(例えば、コードの入力値)と、を含む。ここで、取引セクション70は、単純化のために、コントラクトコード74を含むものとして示されている。
【0126】
1つ以上のステークアカウントに報酬を分配するときが来ると(例えば、所定の時間(すなわち、毎日、毎週など)、特定額の取引に基づく時間、特定額の入ってくる取引手数料に基づく時間、および/またはステーキングエンティティによる要求に基づく時間(例えば、ステークアカウント引き出し要求を通して))、ステークアカウントマネージャは、支払われるべき報酬を計算し、報酬計算のゼロ知識証明を使用して、報酬を1つ以上のステークアカウントに預入する。
【0127】
報酬の預入は、ブロック#nで始まる。ブロック#nのヘッダセクション68は、ブロック#n-1のハッシュと、システムのアカウントの状態の現在の要約を含む状態ルート72と、を含む。例えば、要約は、システムのステークアカウントの現在の残高を含む。具体例として、要約は、ステークアカウント1が、1000FXCの残高を有することを含み得る。ブロック#nの取引セクション70は、バッチ処理された報酬計算のゼロ知識証明を介して、1つ以上のステークアカウントに報酬を追加するためのコードを含むコントラクトコード74を含む。例えば、バッチ処理された報酬計算のゼロ知識証明は、(
図8の例を使用すると)9FXCをステークアカウント1に預入するためのコード、ならびに報酬が正しいことを証明するための証明自体と、を含む。
【0128】
ブロック#n+1のヘッダセクション68は、ブロック#nのハッシュと、状態ルート72と、を含む。状態ルート72は、1つ以上のステークアカウントの現在の状態に関する情報を含む。例えば、ブロック#n+1の状態ルート72は、ステークアカウント残高が、報酬を含むように調整された(例えば、ステークアカウント1が、現在、1009FXCの残高を有する)こと、および報酬が正しく計算されたことを証明するために、ステークアカウントが、報酬計算のゼロ知識証明を含んでいることを記述する。ブロック#n+1の取引セクション70は、報酬の預入が完了したことを示すコントラクトコード74を含む。
【0129】
図10は、安全で信頼できる暗号通貨受け入れシステム10のステークプールユニット44の一実施形態の概略ブロック図である。ステークプールユニット44は、複数のステークアカウント1~nを格納し、ステークアカウントマネージャ52を含み、取引手数料/報酬プール80を格納する。ステークアカウントマネージャ52は、ステークアカウント1~n情報66と、報酬計算モジュール64と、イベントログ62と、を含む。(例えば、「オフチェーン」)。ステークアカウントマネージャ52は、オフチェーンで格納された情報を使用して、ステークアカウント1~nおよびステークアカウントと関連付けられたステーキングエンティティに支払われるべき報酬を計算するように動作可能である報酬計算モジュール64を含む。
【0130】
ステークアカウント1~n情報66は、取引を裏付けるために利用可能なフレクサコイン(FXC)の額と、保留中の取引に起因してロックされているFXCの額と、報酬として預入されたFXCとを含んだ状態で、残高情報76-1~76-nを格納する。ステークアカウント1~n情報66は、成功した取引当たりの報酬パーセンテージ、報酬引き出しの条件、取引手数料率、ステーキングエンティティ報酬パーセンテージ、所与の時間(例えば、T)において受取人ごとに発生した成功した取引に関する情報などを含む、報酬情報78-1~78-nをさらに格納する。例えば、受取人は、異なるネットワーク暗号通貨ウォレットによって完了された、成功した取引に対して、異なる取引手数料を支払うことができる。さらに、異なる受取人は、同じネットワーク暗号通貨ウォレットに対して異なる取引手数料を支払うことができる。
【0131】
報酬情報78-1~78-nは、報酬預入選好も含む。報酬預入選好は、報酬預入の時間(例えば、自動化された(例えば、週に1回)、マニュアルなど)、報酬預入を開始する1つ以上のトリガーイベント、ステーキングエンティティ報酬パーセンテージなどのうちの1つ以上を含み得る。ステークアカウント1~n情報66は、ステークアカウントと関連付けられたステーキングエンティティの識別、ステーキングエンティティ許諾、ステーキングエンティティ引き出し情報90(例えば、引き出しがオンチェーンであり得るか、オフチェーンであり得るか、引き出しを開始する権限を与えられた者の識別など)などのステーキングエンティティ情報82-1~82-nをさらに格納する。
【0132】
取引手数料/報酬プール80は、成功した取引ごとに受取人によって支払われた、預入された取引手数料84を含む。示された例では、現在、取引手数料/報酬プール80内に50ユニットの預入された取引手数料84が存在する。入ってくる取引手数料84は、プールされ、報酬86として分配するためのFXCを購入するために使用される。示された例では、報酬残高86は、100FXCである。例えば、預入された取引手数料84残高は、以前はより高かったが、一部が、100ユニットのFXCを購入するために使用された。預入された取引手数料84は、所定の時間(例えば、1時間ごとに)および/または特定の額の預入された取引手数料84を取得することなどのトリガーイベントに基づいて、報酬のためのFXCに変換され得、特定の報酬残高86に到達し、報酬分配が要求されるなど。報酬は、報酬の分配が行われるまで、報酬残高86にプールされる。
【0133】
一例として、ユーザコンピューティングデバイス1が、支払われるべき報酬の引き出しを要求する。
図6の例を参照すると、ステークアカウントnは、2つのステーキングエンティティ、すなわち、ネットワーク暗号通貨ウォレット46-n開発者60-nおよびユーザコンピューティングデバイス1と関連付けられている。したがって、この例では、ステークアカウントn情報が示されている。ユーザコンピューティングデバイス1の引き出し要求は、ステークアカウントnへの報酬分配をトリガし得る。この例では、報酬はすでにステークアカウントnに分配されており、ユーザコンピューティングデバイス1は、それらの預入された報酬の一部分の引き出しを要求する。ステークアカウントnへの報酬の分配は、ステーキングエンティティの部分を計算することと、その情報が、報酬預入とともに、ゼロ知識証明計算内のどこに分配されるかと、を含む。別の実施形態では、ステークアカウントマネージャ52は、引き出し要求時にステーキングエンティティに支払われるべき報酬のパーセンテージを計算する。
【0134】
ユーザコンピューティングデバイス1の引き出し要求に応答して、ステークアカウントマネージャ52は、ステークアカウントnのステーキングエンティティ情報82-nのユーザコンピューティングデバイス引き出し条件90-2にアクセスする。ステーキングエンティティ引き出し情報は、引き出しがオンチェーンであり得るか、オフチェーンであり得るか、引き出し可能な額、引き出しの時間、およびFXC引き出しのタイプ(例えば、報酬、ステークなど)のうちの1つ以上を含む。ユーザコンピューティングデバイス1からの要求は、特定の額を指定するか、または支払われるべき全報酬の引き出しを要求し得る。要求は、引き出すことか、またはその額を別のアドレス/アカウントに送信することであり得る。
【0135】
引き出し要求が、ユーザコンピューティングデバイス1の引き出し条件90-2の条件内にある場合、ステークアカウントマネージャ52は、残高情報76-nおよび報酬情報78-nにアクセスして、ユーザコンピューティングデバイス1に支払われるべき報酬のパーセンテージを計算することによって、要求を進める。代替的に、ステークアカウントマネージャ52は、以前に、ステークアカウントnへの報酬分配中に、ユーザコンピューティングデバイス1に支払われるべき報酬のパーセンテージを計算している。その状況では、ステークアカウントマネージャ52は、その計算に従って、報酬を預入するであろう。
【0136】
ステークアカウントマネージャ52が、以前に、ステークアカウントnへの報酬分配中に、ユーザコンピューティングデバイス1に支払われるべき報酬のパーセンテージを計算していない場合、ステークアカウントマネージャ52は、要求の承認時に、支払われるべきパーセンテージを計算する。ステークアカウントマネージャ52は、残高情報76-nにアクセスして、ステークアカウント1が、現在2100ユニットのFXCを格納しており、2100FXCのうちの1900ユニットは、ネットワーク暗号通貨ウォレット46-n開発者60-nによって担保として差し出され、100ユニットのFXCは、ユーザコンピューティングデバイス1によって担保として差し出され、100ユニットのFXCは、報酬としてステークアカウントnに預入されていることを決定する。
【0137】
ステークアカウントマネージャ52はさらに、報酬情報78-nにアクセスして、ユーザコンピューティングデバイス1の報酬パーセンテージが、すべてのステークアカウント報酬の5%であることを決定する。ユーザコンピューティングデバイス1の報酬パーセンテージは、ステークアカウントnに担保として差し出されたFXCの額に基づく契約条件である。例えば、ステークアカウントnに100FXCを預入することと引き換えに、ユーザコンピューティングデバイス1は、返礼として、ステークアカウント報酬の5%を提供される。5%のユーザコンピューティングデバイス1の報酬パーセンテージに基づいて、ステークアカウントマネージャ52は、支払われるべき報酬が5FXC(例えば、100FXCの報酬の5%)であることを決定する。
【0138】
引き出しがオンチェーンとして承認される場合、ステークアカウントマネージャ52は、ユーザコンピューティングデバイス1のアカウントによって行われた5FXCの報酬引き出しをブロックチェーンに公開する。引き出しがオフチェーンとして承認される場合、引き出しの詳細は非公開の状態で、ステークアカウントnの残高が、オンチェーンで更新される。例えば、5ユニットのFXCが、ステークアカウントnから引き出され(オンチェーン)、ユーザコンピューティングデバイス1と関連付けられていない内部アカウントに送信され(オンチェーン)、米ドル(または他の法定通貨)に変換され、ユーザコンピューティングデバイス1と関連付けられたバンキングアカウントに転送される(オフチェーン)。
【0139】
別の例として、ユーザコンピューティングデバイス1が、特定の額(例えば、115FXC)の引き出しを要求する。ステークアカウントマネージャ52は、ユーザコンピューティングデバイス引き出し条件90-2にアクセスして、ユーザコンピューティングデバイス1が引き出しを行うことを承認されているかどうか、引き出しの時間が適切であるかどうか、および引き出しが「オンチェーン」であり得るかどうかを判定する。引き出し要求が、ユーザコンピューティングデバイス引き出し条件90-2の条件内にある場合、ステークアカウントマネージャ52は、報酬情報78-nおよび残高情報76-nからユーザコンピューティングデバイス1の報酬パーセンテージ(例えば、5%)にアクセスして、報酬残高(例えば、100FXC)およびユーザコンピューティングデバイス1の預入情報を決定することによって、要求を進める。
【0140】
5%のユーザコンピューティングデバイス1の報酬パーセンテージおよび100FXCの報酬残高に基づいて、ステークアカウントマネージャ52は、ユーザコンピューティングデバイス1に支払われるべき報酬が、5FXC(例えば、100FXCの報酬の5%)であることを決定する。ステークアカウントマネージャ52はさらに、ユーザコンピューティングデバイス1が、100FXCをステークアカウントnに預入しており、したがって、ユーザコンピューティングデバイス1の最大引き出し額は105FXCであることを決定する。
【0141】
ユーザコンピューティングデバイス1の115FXCの引き出し要求は承認されないので、要求は、キャンセルされる。代替的に、ステークアカウントマネージャ52は、可能な最大引き出し額についてユーザコンピューティングデバイスに警告するエラーメッセージを返し、その額内にあるように、要求された額を調整したいかどうかをユーザコンピューティングデバイス1に問い合わせる。
【0142】
代替的に、ユーザコンピューティングデバイス1の契約条件に基づいて、ユーザコンピューティングデバイス1は、その初期預入の一部またはすべてを引き出すことができない場合がある。例えば、100FXCの預入は「返金不可」とみなされる可能性があり、報酬の引き出しのみが可能である。別の例として、ユーザコンピューティングデバイス1は、報酬の引き出しを行うために、特定額の報酬(例えば、20FXC以上)が利用可能になるまで待たなければならない場合がある。
【0143】
図11は、「オンチェーン」ステークアカウント引き出しの概略ブロック図である。ステークアカウントは、イーサリアムブロックチェーン上のスマートコントラクトなどのブロックチェーンスマートコントラクトである。イーサリアムブロックは、ヘッダセクション68と、取引セクション70と、を含む。ヘッダセクション68は、これらの状態を、スマートコントラクトの状態変化を要約するルートハッシュ値(すなわち、状態ルート72)に含む。ヘッダセクション68は、前のブロックのブロック番号およびハッシュなどの他の識別情報をさらに含む。
【0144】
イーサリアム内の取引セクション70は、ノンス(一意の取引識別子)と、受信者アカウントのアドレスと、値と、送信アカウントの署名と、実行されるコード(例えば、コントラクトコード74)と、マイニング関連フィールド(例えば、開始ガスおよびガス価格)と、場合によりいくつかのデータ(例えば、コードの入力値)と、を含む。ここで、取引セクション70は、単純化のために、コントラクトコード74を含むものとして示されている。
【0145】
報酬が以前にステークアカウントnに預入されており、個々のステーキングエンティティ報酬が以前に計算されていない
図10の例を参照すると、ユーザコンピューティングデバイス1が、支払われるべき報酬の引き出しを要求する。引き出し要求はブロック#xから始まる。ブロック#xのヘッダセクション68は、ブロック#x-1のハッシュと、システムのアカウントの状態の現在の要約を含む状態ルート72と、を含む。例えば、要約は、システムのステークアカウントの現在の残高と、報酬計算のゼロ知識証明と、を含む。一具体例として、要約は、ステークアカウントnが、2100ユニットのFXCの残高と、報酬として預入された100FXCが正しく計算されたことを証明するための報酬計算のゼロ知識証明と、を有することを記述する。
【0146】
ブロック#xの取引セクション70は、ユーザコンピューティングデバイス1が、ステークアカウントnからの報酬の引き出しを要求し、およびステークマネージャが、ユーザコンピューティングデバイス1の引き出し条件を証明する必要があるコードを含むコントラクトコード74を含む。ステークアカウントマネージャ52は、ユーザコンピューティングデバイス1の引き出し条件にアクセスして、ユーザコンピューティングデバイスが、報酬引き出しを行ことを承認されているかどうか、引き出しの時間が適切であるかどうか、および引き出しが「オンチェーン」であり得るかどうかを判定する。
【0147】
ブロック#x+1のヘッダセクション68は、ブロック#xのハッシュと、状態ルート72と、を含む。状態ルート72は、1つ以上のステークアカウントの現在の状態に関する情報を含む。例えば、ブロック#n+1の状態ルート72は、ステークアカウントnが、2100ユニットのFXCを有すること、およびユーザコンピューティングデバイス1の引き出しが、ステークアカウントマネージャによって証明されたことを記述する。
【0148】
ブロック#x+1の取引セクション70は、ステークアカウントマネージャ52が、ユーザコンピューティングデバイス1に支払われるべき報酬を計算することによって要求を進め、報酬をユーザコンピューティングデバイス1に預入することを示すコントラクトコード74を含む。支払われるべき報酬を計算するために、ステークアカウントマネージャは、報酬情報78-nからユーザコンピューティングデバイス1の報酬パーセンテージにアクセスする。5%のユーザコンピューティングデバイス1の報酬パーセンテージに基づいて、ステークアカウントマネージャ52は、支払われるべき報酬が5FXC(例えば、100FXCの報酬の5%)であることを決定する。この例では、引き出しは「オンチェーン」について承認されており、したがって、5ユニットのFXCが、ユーザコンピューティングデバイス1に預入される。
【0149】
ブロック#x+2のヘッダセクション68は、ブロック#x+1のハッシュと、状態ルート72と、を含む。状態ルート72は、1つ以上のステークアカウントの現在の状態に関する情報を含む。例えば、ブロック#x+2の状態ルート72は、ステークアカウントn残高が、ユーザコンピューティングデバイス1に支払われるべき報酬を差し引くように調整された(例えば、ステークアカウントnは、現在、2095FXCの残高を有する)こと、およびユーザコンピューティングデバイス1のアカウントが、現在、5ユニットのFXCを含むことを記述する。ブロック#x+2の取引セクション70は、引き出しが完了したことを示すコントラクトコード74を含む。
【0150】
図12は、ステークアカウントの報酬を計算する方法の一例のフローチャートである。方法は、安全で信頼できる暗号通貨受け入れシステムのステークアカウントマネージャ(例えば、ステークアカウントマネージャの報酬計算モジュール)が、報酬を、安全で信頼できる暗号通貨受け入れシステムのステークプールの1つ以上のステークアカウントに分配することを決定するステップ92から開始する。1つ以上のステークアカウントのうちのステークアカウントは、ブロックチェーン(例えば、イーサリアムブロックチェーン)上のスマートコントラクトである。ステークアカウントは、安全で信頼できる暗号通貨受け入れシステムのネットワーク暗号通貨ウォレットと関連付けられている。1つ以上のステーキングエンティティが、安全で信頼できる暗号通貨受け入れシステム内のネットワーク暗号通貨ウォレットの金融取引を裏付けるために、システム固有の暗号通貨(例えば、フレクサコイン(FXC))をステークアカウントに格納する。
【0151】
ステークアカウントマネージャは、所定の時間(すなわち、毎日、毎週など)、ステーキングエンティティによる要求(例えば、ステークアカウントの引き出し要求を介して)、および/またはトリガーイベントのうちの1つ以上に基づいて、報酬を1つ以上のステークアカウントに分配することを決定する。トリガーイベントは、特定額の成功した取引の完了、特定額の入ってくる取引手数料に到達したこと、特定の報酬残高に到達したこと、ステーキングエンティティの契約条件などのうちの1つ以上を含む。
【0152】
方法はステップ94に続き、ステークアカウントマネージャが、1つ以上のステークアカウントの非公開で格納されたステークアカウント情報と、ステークプールの報酬残高と、を取得する。ステークプールに預入された取引手数料の額が、システム固有の暗号通貨に変換されて、報酬残高の報酬を生成する。安全で信頼できる暗号通貨受け入れシステムの成功した金融取引に基づいて、ステークプールに預入された取引手数料の額の取引手数料が、ステークプールに預入される。
【0153】
非公開で格納されたステークアカウント情報は、残高情報と、報酬情報と、ステーキングエンティティ情報と、イベントログと、を含む。残高情報は、取引を裏付けるために利用可能なシステム固有の暗号通貨の額と、保留中の取引に起因してロックされているシステム固有の暗号通貨の額と、報酬として預入されたシステム固有の暗号通貨の額と、を含む。報酬情報は、成功した取引当たりの報酬パーセンテージ、報酬引き出しの条件、取引手数料率、ステーキングエンティティ報酬パーセンテージ、所与の時間(例えば、T)において受取人ごとに発生した成功した取引に関する情報などを含む。例えば、受取人は、異なるネットワーク暗号通貨ウォレットによって完了された、成功した取引に対して、異なる取引手数料を支払うことができる。さらに、異なる受取人は、同じネットワーク暗号通貨ウォレットに対して異なる取引手数料を支払うことができる。
【0154】
報酬情報は、報酬預入選好も含む。報酬預入選好は、報酬預入の時間(例えば、自動化された(例えば、週に1回)、マニュアルなど)、報酬預入を開始する1つ以上のトリガーイベント、ステーキングエンティティ報酬パーセンテージなどのうちの1つ以上を含み得る。ステーキングエンティティ情報は、ステークアカウントと関連付けられたステーキングエンティティの識別、ステーキングエンティティ許諾、ステーキングエンティティ引き出し情報(例えば、引き出しがオンチェーンであり得るか、オフチェーンであり得るか、引き出しを開始する権限を与えられた者の識別など)などを含む。
【0155】
方法はステップ96に続き、ステークアカウントマネージャが、非公開で格納されたステークアカウント情報に基づいて、1つ以上のステークアカウントの各ステークアカウントに支払われるべき報酬残高の報酬額を計算する。例えば、ステークアカウントマネージャは、非公開で格納されたステークアカウント情報にアクセスして、時間Tにおいて、ステークアカウントが、第1の受取人および第2の受取人との取引を裏付けたことを決定する。ステークアカウントの報酬情報によると、第1の受取人は、ステークアカウントのネットワーク暗号通貨ウォレットを使用して成功した取引に対して、1%の成功した取引当たり手数料率を有し、第2の受取人は、ステークアカウントのネットワーク暗号通貨ウォレットを使用して成功した取引に対して、2%の成功した取引当たり手数料率を有する。
【0156】
さらに、報酬情報から、ステークアカウントマネージャは、第1の受取人が、ステークアカウントのネットワーク暗号通貨ウォレットを用いて、500ユニットに相当する成功した取引を完了し、第2の受取人が、ステークアカウントのネットワーク暗号通貨ウォレットを用いて、200ユニットに相当する成功した取引を完了したことを決定する。ステークアカウントマネージャは、ステークアカウントが、第1の受取人の取引に基づいて5ユニットのFXC報酬、および第2の受取人の取引に基づいて4ユニットのFXC報酬を支払われるべきことを計算する。したがって、ステークアカウントは、9ユニットのFXCを支払われるべきである。ステークアカウントマネージャは、同様に、他のステークアカウントの報酬を計算する。計算は、ステークアカウントの各ステーキングエンティティがいくら支払われるべきかを決定するステップをさらに含み得る。
【0157】
方法はステップ98に続き、ステークアカウントマネージャは、計算された報酬額に対してバッチ処理された安全な計算技術を実行して、バッチ処理された安全な報酬分配サマリを生成する。バッチ処理された安全な報酬分配サマリは、非公開で格納されたステークアカウント情報を開示することなく、各報酬額が正しく計算されることを可能にする。例えば、1つ以上のステークアカウントの報酬計算は、ゼロ知識証明計算を使用してバッチ処理され、圧縮される。ゼロ知識証明計算は、証明の受領者が、計算の詳細を知ることなく、一部分が正しいことを証明することを可能にする。
【0158】
方法はステップ100に続き、ステークアカウントマネージャは、バッチ処理された安全な報酬分配サマリをブロックチェーンに公開する。この公開は、受取人の取引手数料率、成功した取引の額などの機密詳細事項を公開することなく、計算された報酬をステークアカウント(例えば、イーサリアムブロックチェーン上のスマートコントラクト)に預入する。
【0159】
図13は、支払人コンピューティングデバイス12と、外国の受取人コンピューティングデバイス102と、暗号通貨受け入れネットワークコンピューティングデバイス16と、1つ以上の国内の暗号通貨交換デバイス18-1と、1つ以上の外国の暗号通貨交換デバイス18-2と、データベース20と、複数のコンセンサスデバイス1~nを含むコンセンサスネットワーク36と、を含む、安全で信頼できる暗号通貨受け入れシステム10の別の実施形態の概略ブロック図である。
【0160】
図13の安全で信頼できる暗号通貨受け入れシステム10は、
図13の安全で信頼できる暗号通貨受け入れシステム10が、暗号通貨で支払いを行う支払人コンピューティングデバイス12と、所望の通貨(例えば、外国の法定通貨)を受け入れる外国の受取人コンピューティングデバイス102との間の安全で信頼できる金融取引を可能にすることを除いて、
図1の安全で信頼できる暗号通貨受け入れシステム10と同様に動作する。1つ以上の外国の暗号通貨交換デバイス18-2は、外国の受取人コンピューティングデバイス102と同じ管轄区域内に位置する。
【0161】
外国の受取人コンピューティングデバイス102は、特定の小売商識別子(ID)との関連付けを有する1つ以上のコンピューティングデバイスであり得る。例えば、外国の受取人コンピューティングデバイス102は、特定の小売商IDを有する特定の小売商と関連付けられた外国の小売店内のポイントオブセール(POS)デバイスである。外国の受取人コンピューティングデバイス102は、暗号通貨受け入れネットワークコンピューティングデバイス16と関連付けられている。例えば、外国の受取人コンピューティングデバイス102は、暗号通貨受け入れネットワークコンピューティングデバイス16にアカウントを有する。アカウント設定は、外国の受取人コンピューティングデバイス102のメモリ30内にデータアプリケーション「c」42を確立し、安全で信頼できる暗号通貨受け入れシステム10を介して支払いを安全に受信するための命令を含む。
【0162】
1つ以上の国内の暗号通貨交換デバイス18-1および1つ以上の外国の暗号通貨交換デバイス18-2は、暗号通貨を所望の通貨(例えば、法定通貨、別の暗号通貨など)に変換するために動作可能な、特別にライセンス供与されたエンティティである。一実施形態では、1つ以上の国内の暗号通貨交換デバイス18-1および1つ以上の外国の暗号通貨交換デバイス18-2は、極秘資料を格納するために特別にライセンス供与され、盗難および詐欺に対して保護するための保険ポリシーを有する1つ以上の暗号通貨保有会社と関連付けられている。別の実施形態では、1つ以上の国内の暗号通貨交換デバイス18-1および1つ以上の外国の暗号通貨交換デバイス18-2は、スタンドアロンのセキュアデバイスである。
【0163】
暗号通貨交換のためのライセンス供与、規則、および規制は、管轄区域内で行われ、一部の暗号通貨は、ある管轄区域(例えば、国)内で他の通貨と交換可能であり得るが、別の管轄区域での交換には認められない場合があることを意味する。例えば、イーサ(イーサリアムブロックチェーンの暗号通貨)は、米国内で米ドルに交換され得るが、米国外では、外国の法定通貨への交換が認められない場合がある。同様に、米国は、暗号通貨交換デバイスに、特定の外国の暗号通貨を米ドルまたは他の暗号通貨に交換するようにライセンス供与しない場合がある。
【0164】
支払人コンピューティングデバイス12が、管轄区域をまたいで金融取引を実行するために、安全で信頼できる暗号通貨受け入れシステム10は、金融取引を処理するために、広く受け入れられている暗号通貨決済層を実装する。
【0165】
動作の一例では、支払人コンピューティングデバイス12は、直接通信リンク32を介して、外国の受取人コンピューティングデバイス102との直接通信リンクを確立する。支払人コンピューティングデバイス12は、ネットワーク暗号通貨ウォレット46に格納された暗号通貨を使用して、製品またはサービスの購入を開始するための要求を外国の受取人コンピューティングデバイス102に送信する。ネットワーク暗号通貨ウォレット46に格納された暗号通貨は、交換することが、外国の暗号通貨交換デバイス18-2によって認められない。外国の受取人コンピューティングデバイス102は、所望の通貨(例えば、外国の法定通貨など)を受け入れる。
【0166】
購入を開始するための要求は、分割バーコードの形態であり得、支払人コンピューティングデバイス12は、バーコードの一部分を維持し、外国の受取人コンピューティングデバイス102は、バーコードの別の部分を、それらが近接して整列されると搬送が開始されるように、維持する。支払人コンピューティングデバイス12からのバーコードの正しい部分を有すること、ならびに整列の行為が、金融取引を行う意図(すなわち、ユーザ承認)を示す。別の例として、要求は、支払人コンピューティングデバイス12と、外国の受取人コンピューティングデバイス102との間の安全なハンドシェイクプロトコルである。
【0167】
金融取引を開始するための要求が、外国の受取人コンピューティングデバイス102によって(例えば、分割バーコードの例を介して)承認されると、支払人コンピューティングデバイス12は、金融取引の確認(例えば、取引IDなどのワンタイムユースコード)を外国の受取人コンピューティングデバイス102から受信する。ワンタイムユースコードは、固有の番号、英数字、関数、および/または取引の当事者を特定の取引に一意に接続する任意のアイテムのうちの1つ以上である。例えば、外国の受取人コンピューティングデバイス102は、外国の受取人コンピューティングデバイス102が、暗号通貨受け入れネットワークコンピューティングデバイス16と提携され、支払人コンピューティングデバイス12が、(例えば、ID、証明書などの証明によって)信頼できるコンピューティングデバイスであるなどの場合に、要求を承認する。
【0168】
ネットワーク暗号通貨ウォレット46を使用して、支払人コンピューティングデバイス12によって金融取引が開始されると、暗号通貨受け入れネットワークコンピューティングデバイス16は、金融取引の開始の確認と、金融取引を処理するための要求と、を受信する。例えば、支払人コンピューティングデバイス12は、金融取引を処理するための要求と、ワンタイムユースコードと、を合わせたものを、暗号通貨受け入れネットワークコンピューティングデバイス16に送信する。暗号通貨受け入れネットワークコンピューティングデバイス16は、ある量の担保暗号通貨を、ネットワーク暗号通貨ウォレット46と関連付けられたステークプールユニット44のステークアカウント内に保留にする。
【0169】
担保暗号通貨の額が保留されると、暗号通貨受け入れネットワークコンピューティングデバイス16は、必要な額の担保暗号通貨が保留され、金融取引を進めることができることの確認を、支払人コンピューティングデバイス12に送信する。支払人コンピューティングデバイス102は、外国の受取人コンピューティングデバイス102によって要求された所望の通貨への暗号通貨のリアルタイム交換レート情報を提供される。
【0170】
支払人コンピューティングデバイス12は、外国の受取人コンピューティングデバイス102によって要求された所望の通貨の額に等しい額の暗号通貨を暗号通貨受け入れネットワークコンピューティングデバイス16に送信する。外国の受取人コンピューティングデバイス102によって要求された所望の通貨の額に等しい暗号通貨の額を暗号通貨受け入れネットワークコンピューティングデバイス16に送信することは、支払人コンピューティングデバイス12によって使用される暗号通貨の暗号通貨ブロックチェーンに追加される取引である。
【0171】
代替的または追加的に、外国の受取人コンピューティングデバイス102は、要求された所望の通貨の額(例えば、外国の法定通貨の額)を含む金融取引の通知を暗号通貨受け入れネットワークコンピューティングデバイス16に送信する。暗号通貨受け入れネットワークコンピューティングデバイス16は、暗号通貨の額が、受信され、かつ保留された担保暗号通貨の額によってカバーされていることのネットワーク取引確認を支払人コンピューティングデバイス12に送信する。
【0172】
代替的に、要求された所望の通貨の額が、保留された担保暗号通貨の額よりも多い場合、暗号通貨受け入れネットワークコンピューティングデバイス16は、(例えば、ネットワーク暗号通貨ウォレット46と関連付けられたステークアカウントの条件によって)許可される場合、要求された所望の通貨の額に等しい、さらなる担保暗号通貨を保留にし得る。許可されない場合、暗号通貨受け入れネットワークコンピューティングデバイス16は、支払人コンピューティングデバイス12と、外国の受取人コンピューティングデバイス102との間の取引が確定される前に、取引をキャンセルする。
【0173】
支払人コンピューティングデバイス12は、取引を確定するための通知を外国の受取人コンピューティングデバイス102に送信する。取引を確定するための通知は、暗号通貨受け入れネットワークコンピューティングデバイス16からのネットワーク取引確認情報(例えば、暗号通貨の額が、受信され、保留された担保暗号通貨の額によってカバーされている)を含んでおり、その結果、外国の受取人コンピューティングデバイス102は、所望の資金が到着することを知ることで、金融取引をまとめることができる。
【0174】
暗号通貨受け入れネットワークコンピューティングデバイス16は、支払人コンピューティングデバイス12の暗号通貨支払いの所望の数の確認を、コンセンサスネットワーク20から求める。所望の数の確認は、使用される暗号通貨のタイプに対応する。所望の数の確認の受信には、数分~数時間の時間がかかることがある。
【0175】
暗号通貨受け入れネットワークコンピューティングデバイス16は、要求された所望の通貨の額が、保留された担保暗号通貨の額未満である場合、要求された所望の通貨の額に等しいように、保留された担保暗号通貨の額を調整する。
【0176】
所望の確認数を求めるのと同時に、暗号通貨受け入れネットワークコンピューティングデバイス16は、支払人コンピューティングデバイス12によって送信された暗号通貨の額を国内の暗号通貨交換デバイス18-1に送信する。国内の暗号通貨交換デバイス18-1は、支払人コンピューティングデバイス12によって送信された暗号通貨の額を、外国の受取人コンピューティングデバイス102によって要求された所望の通貨の額に等しい、広く受け入れられている暗号通貨の額に変換する。
【0177】
広く受け入れられている暗号通貨は、安全で信頼できる暗号通貨受け入れシステム10と関連付けられたすべての暗号通貨取引所によって、交換のために受け入れられ、認められる暗号通貨である。例えば、広く受け入れられている暗号通貨は、ビットコイン(BTC)である。暗号通貨を、広く受け入れられている暗号通貨に変換することにより、支払人コンピューティングデバイスは、暗号通貨に関する異なる法律および規制を有する管轄区域をまたいで、受取人コンピューティングデバイスと取引することが可能になる。国内の暗号通貨交換デバイス18-1は、所望の通貨の額に等しい、広く受け入れられている暗号通貨の額を外国の暗号通貨交換デバイス18-2に送信する。
【0178】
外国の暗号通貨交換デバイス18-2は、外国の受取人コンピューティングデバイス102と同じ管轄区域内に位置し、広く受け入れられている暗号通貨の額を、外国の受取人コンピューティングデバイス102によって要求された所望の額に変換する。暗号通貨交換は、交換レートの不安定性を考慮して、迅速に行われる(例えば、30秒~数分)。外国の暗号通貨交換デバイス18-2は、外国の受取人コンピューティングデバイス102によって要求された所望の通貨の額に等しい額を、外国の受取人コンピューティングデバイス102と関連付けられた外国の受取人バンキングコンピューティングデバイスに預入する。
【0179】
所望の数の確認が、コンセンサスネットワーク36から暗号通貨受け入れネットワークコンピューティングデバイス16によって受信されると、暗号通貨受け入れネットワークコンピューティングデバイス16は、担保暗号通貨の額の保留を解除する。不正行為が発生した場合(例えば、支払人コンピューティングデバイスが、悪意を持って、2つの受取人コンピューティングデバイスで同時に支出するように作動する、ネットワーク暗号通貨ウォレット46のソフトウェアが破損しているなど)、暗号通貨受け入れネットワークコンピューティングデバイス16は、保留された担保暗号通貨をステークアカウントから引き出す。
【0180】
別の例として、支払人コンピューティングデバイス12が、ネットワーク暗号通貨ウォレット46のソフトウェアのエラーを通して、不正な暗号通貨支払いを暗号通貨受け入れネットワークコンピューティングデバイス16に送信する場合、そのエラーは、外国の受取人コンピューティングデバイス102との取引の確定後であるが、暗号通貨受け入れネットワークコンピューティングデバイス16が所望の量の確認を受信する前に、支払人コンピューティングデバイス12のネットワーク暗号通貨ウォレット46によって認識され得る。
【0181】
その状況では、ネットワーク暗号通貨ウォレット46は、金融取引失敗通知を暗号通貨受け入れネットワークコンピューティングデバイス16に送信し、支出された暗号通貨の額の返却が要求され、暗号通貨受け入れネットワークコンピューティングデバイス16は、外国の受取人コンピューティングデバイス102で発生した取引をカバーするために保留されている担保暗号通貨の額を引き出す。広く受け入れられている暗号通貨決済層が、
図14A~16を参照してより詳細に考察される。
【0182】
図14A~
図14Cは、
図13の安全で信頼できる暗号通貨受け入れシステム10の金融取引の方法の一例のフローチャートである。方法は、
図14Aのステップ(1a)で開始し、支払人コンピューティングデバイス12が、金融取引を開始するために、外国の受取人コンピューティングデバイス102と直接通信リンクを確立する。支払人コンピューティングデバイス12のネットワーク暗号通貨ウォレット46は、100ユニットの暗号通貨(CC)「aaa」を格納している。暗号通貨「aaa」は、1つ以上の国内の暗号通貨交換デバイス18-1によって交換が承認された任意のタイプの暗号通貨であり得る。この例では、支払人コンピューティングデバイス12は、暗号通貨「aaa」を使用して、外国の受取人コンピューティングデバイス102に支払うことを望むが、外国の受取人コンピューティングデバイス102は、外国の法定通貨(例えば、カナダドル)を受け入れる。さらに、外国の受取人コンピューティングデバイス102の管轄区域内の1つ以上の外国の暗号通貨交換デバイス18-2は、交換のための暗号通貨「aaa」を認めない。
【0183】
ステップ(1a)での購入を開始するための要求は、分割バーコードの形態であり得、支払人コンピューティングデバイス12は、バーコードの一部分を維持し、外国の受取人コンピューティングデバイス102は、バーコードの別の部分を、それらが近接して整列されると搬送が開始されるように、維持する。支払人コンピューティングデバイス12からのバーコードの正しい部分を有すること、ならびに整列の行為が、金融取引を行う意図(すなわち、ユーザ承認)を示す。別の例として、要求は、支払人コンピューティングデバイス12と、外国の受取人コンピューティングデバイス102との間の安全なハンドシェイクプロトコルである。
【0184】
方法はステップ(1b)に続き、支払人コンピューティングデバイス12は、外国の受取人コンピューティングデバイス102から金融取引確認(例えば、取引IDなどのワンタイムユースコード)を受信する。ワンタイムユースコードは、固有の番号、英数字、関数、および/または取引の当事者を特定の取引に一意に接続する任意のアイテムのうちの1つ以上である。例えば、外国の受取人コンピューティングデバイス102は、外国の受取人コンピューティングデバイス102が暗号通貨受け入れネットワークコンピューティングデバイス16と関連付けられており、かつ取引の条件が有効であるとき、要求を承認する。
【0185】
方法は、ステップ(2a)に続き、金融取引が、ネットワーク暗号通貨ウォレット46を使用して、支払人コンピューティングデバイス12によって開始されると、暗号通貨受け入れネットワークコンピューティングデバイス16は、金融取引の開始の確認と、金融取引を処理するための要求と、を受信する。例えば、支払人コンピューティングデバイス12は、金融取引を処理するための要求と、ワンタイムユースコードとを合わせたものを、暗号通貨受け入れネットワークコンピューティングデバイス16に送信する。
【0186】
暗号通貨受け入れネットワークコンピューティングデバイス16は、ステークプールユニット44を含む。ステークプールユニット44は、複数のステークアカウント1~nを含む。ステーキングエンティティ(例えば、ウォレット開発者、個人など)は、暗号通貨ウォレットのユーザの金融取引を裏付けるために、ある額のフレクサコイン(FXC)暗号通貨をステークアカウントに担保として差し出す(すなわち、担保暗号通貨)。フレクサコイン暗号通貨は、安全で信頼できる暗号通貨受け入れシステム10内で担保ユーティリティトークンとして使用するために特別に開発されたイーサリアムブロックチェーン上のトークンである。ステークプールユニット44および複数のステークアカウント1~nのより詳細な考察が、
図6~
図12を参照して開示される。
【0187】
暗号通貨ウォレットが、安全で信頼できる暗号通貨受け入れシステム10によって認められるために、暗号通貨ウォレットは、ステークプールユニット44のステークアカウントと関連付けられなければならない。この例では、ネットワーク暗号通貨ウォレット46は、ステークアカウント1と関連付けられている。例えば、ネットワーク暗号通貨ウォレット46のデジタルウォレット開発者、およびおそらく1つ以上の他のステーキングエンティティは、ネットワーク暗号通貨ウォレット46のユーザの金融取引を裏付けるために、1000ユニットのフレクサコインをステークアカウント1に預入している。
【0188】
ステップ(2b)において、暗号通貨受け入れネットワークコンピューティングデバイス16は、ステークアカウント1内のある量のフレクサコインを保留にする。この例では、ステークアカウント1内の1000ユニットのフレクサコインの額のうちの、100ユニットの暗号通貨「aaa」に相当するフレクサコイン(例えば、ネットワーク暗号通貨ウォレット46に格納された暗号通貨の総額)が、金融取引を裏付けるために保留される。100ユニットの暗号通貨「aaa」に相当するフレクサコインは、単純化のために、「X」額のフレクサコインと称される。
【0189】
例えば、暗号通貨「aaa」とフレクサコインとが1対1の変換を有する場合、「X」は100ユニットに等しく、ネットワーク暗号通貨ウォレット46の他のユーザの金融取引を裏付けるために、ステークアカウント1内には利用可能な900ユニットのフレクサコインが、現在、存在する。ステークアカウント1の「X」額のフレクサコインの保留に関する情報が、ステークプールスマートコントラクトに追加される。スマートコントラクト内の取引は、ステークプール取引の状態をブロックチェーンに公開するために必要なデータを含む。コントラクトは、様々な他の情報も含み得る。
【0190】
方法はステップ(2c)に続き、「X」額のフレクサコインが保留されると、暗号通貨受け入れネットワークコンピューティングデバイス16は、必要な額の担保暗号通貨が保留されており、金融取引を進めることができることの確認を支払人コンピューティングデバイス12に送信する。必要な額の担保暗号通貨を保留にすることができない(例えば、ステークアカウントが、十分な利用可能な担保暗号通貨を有していない)場合、暗号通貨受け入れネットワークコンピューティングデバイス16は、ステップ(2c)で、エラー通知を支払人コンピューティングデバイス12に送信し、金融取引をキャンセルする。
【0191】
方法はステップ(3a)に続き、支払人コンピューティングデバイス12は、外国の受取人コンピューティングデバイス102によって要求された、外国の法定通貨の額に等しい額の暗号通貨「aaa」を、暗号通貨受け入れネットワークコンピューティングデバイス16に送信する。この例では、外国の受取人コンピューティングデバイス102は、10カナダドル(CAD)を要求している。「10CAD」に相当する「aaa」暗号通貨の転送に関する情報を含むブロックが、「aaa」ブロックチェーンに追加される。このブロックは、ヘッダセクションと、取引セクションとを含む。ヘッダセクションは、ブロック番号(例えば、ブロック#y)と、前のブロックのハッシュ(図示せず)と、を含む。ヘッダセクションおよび/または取引セクションは、様々な他の情報を含み得る。
【0192】
ブロックの取引情報は、支払い金額と、送信者(支払人コンピューティングデバイス12)のアドレスと、受信者(暗号通貨受け入れネットワークコンピューティングデバイス16)のアドレスと、を含む。したがって、安全で信頼できる暗号通貨受け入れシステム10を使用することによって、機密の受取人関連情報(例えば、収益、販売されている品目、消費者支出行動など)および機密の支払人関連情報(例えば、消費者アイデンティティ、購入された品目、支出された金額、頻繁に利用する小売商など)は、非公開である(すなわち、誰もが見ることができるようにブロックチェーン上で公開されていない)。
【0193】
代替的または追加的に、外国の受取人コンピューティングデバイス102は、ステップ(3a+)で、要求された所望の通貨の額(例えば、カナダドルの額)を含む金融取引の通知を暗号通貨受け入れネットワークコンピューティングデバイス16に送信する。方法はステップ3(b)に続き、暗号通貨受け入れネットワークコンピューティングデバイス16は、受信された暗号通貨の額が、保留された担保暗号通貨の額によってカバーされていることのネットワーク取引確認を支払人コンピューティングデバイス12に送信する。
【0194】
代替的に、受信された暗号通貨の額が、保留された担保暗号通貨の額によってカバーされない場合、暗号通貨受け入れネットワークコンピューティングデバイス16は、3(b)で取引をキャンセルするか、またはステークアカウント1の条件に応じて、3(b)で、取引をカバーするためにさらなる額のフレクサコインを保留にし得る。
【0195】
この例では、ネットワーク暗号通貨ウォレット46の全残高に相当するフレクサコインが保留されるため、支払人コンピューティングデバイス12は、保留された金額を超えて支出することができないであろう。しかしながら、保留された担保暗号通貨の額が他の要因(例えば、小売商ID、典型的な取引金額など)に基づいている他の例では、支払人コンピューティングデバイス12は、保留されたものよりも多い取引を開始し得る。ステークアカウント1の条件は、そのような場合にどのように進めるかを示す。例えば、ステークアカウント1は、ネットワーク暗号通貨ウォレット46のユーザが、任意の個々の購入に対して特定の支出上限を有することを示し得る。支出上限を超える保留を必要とする要求は、すべて拒否される。しかしながら、支出上限以下の要求については、取引を進めることができるように、追加の担保暗号通貨が保留される。
【0196】
方法はステップ3(c)に続き、支払人コンピューティングデバイス12は、取引を確定するための通知を外国の受取人コンピューティングデバイス102aに送信する。取引を確定するための通知は、暗号通貨受け入れネットワークコンピューティングデバイス16からのネットワーク取引確認情報(例えば、暗号通貨の額が、受信され、保留された担保暗号通貨の額によってカバーされている)を含んでおり、その結果、外国の受取人コンピューティングデバイス102は、所望の資金が到着することを知ることで、金融取引をまとめることができる。
【0197】
方法は、
図14Bのステップ(4a-1)に続き、暗号通貨受け入れネットワークコンピューティングデバイス16は、コンセンサスネットワーク36から、「aaa」ブロックチェーン54に追加されたブロック#yの所望の数の確認を求める。コンセンサスネットワーク36は、複数のコンセンサスデバイス1~nを含む。例えば、ビットコインブロックチェーンでは、マイナーが、ブロックチェーン内のすべての以前の取引を証明するブロックに新しい取引を記録する。平均して、マイナーが、ビットコインブロックチェーンにブロックを書き込むのに10分かかり、平均ブロック時間は、ビットコインネットワークの総ハッシュパワーに依存する。
【0198】
所望の数の確認は、使用される暗号通貨のタイプに対応する。ここに示されるように、暗号通貨受け入れネットワークコンピューティングデバイス16は、「aaa」ブロックチェーン54上のブロック#1が確定とみなされる前に、「n」個の確認を必要とする。所望の数の確認の受信には、数分~数時間の時間がかかることがある。しかしながら、すべての金融取引が、担保としてのフレクサコインで裏付けられているため、暗号通貨受け入れネットワークコンピューティングデバイス16は、金融取引を進めて、所望の量の確認が受信されることを信用する。
【0199】
方法はステップ(4a~2)に続き、暗号通貨受け入れネットワークコンピューティングデバイス16は、10CADに相当するフレクサコインに等しいように、保留されているX額のフレクサコインを調整する。10CADに相当するフレクサコインは、単純化のために、「y」額のフレクサコインと称される。例えば、フレクサコインと、カナダドルとの間の変換レートが1対1であり、Xが100に等しい場合、暗号通貨受け入れネットワークコンピューティングデバイス16は、10ユニットのフレクサコインのみが保留されるように、90ユニットのフレクサコイン(すなわち、「X-y」)の保留を解除する。ステークアカウント1の「X-y」額のフレクサコインの保留の解除に関する情報が、ステークプールスマートコントラクトに追加される。スマートコントラクト内の取引は、ステークプール取引の状態をブロックチェーンに公開するために必要なデータを含む。コントラクトは、様々な他の情報も含み得る。
【0200】
方法はステップ(4a-3)に続き、所望の数の確認が、コンセンサスネットワーク36から暗号通貨受け入れネットワークコンピューティングデバイス16によって受信される。方法はステップ(4a-4)に続き、暗号通貨受け入れネットワークコンピューティングデバイス16は、ステークアカウント1の「y」額のフレクサコインの保留を解除する。ステークアカウント1の「y」額のフレクサコインの保留を解除することに関する情報を含むブロックが、フレクサコインブロックチェーンに追加される。単純化のために、このブロックは、ブロック番号(例えば、ブロック#y+2)を含むヘッダセクションと、取引セクションと、を含む。
【0201】
図14Bのステップ(4a-2)で所望の確認数を求めるのと同時に、方法は、
図14Cのステップ(4b-1)に続き、暗号通貨受け入れネットワークコンピューティングデバイス16は、支払人コンピューティングデバイス12によって送信された10CADに相当する暗号通貨「aaa」を国内の暗号通貨交換デバイス18-1に送信する。方法はステップ(4b-2)に続き、暗号通貨交換デバイス18-1は、支払人コンピューティングデバイス12によって送信された10CADに相当する暗号通貨「aaa」を、広く受け入れられている暗号通貨に変換する。例えば、広く受け入れられている暗号通貨は、ビットコイン(BTC)である。
【0202】
方法はステップ(4b-3)に続き、国内の暗号通貨交換デバイス18-1は、10CADに相当する広く受け入れられている暗号通貨(BTC)を外国の暗号通貨交換デバイス18-2に送信する。方法はステップ(4b-4)に続き、外国の暗号通貨交換デバイス18-2は、10CADに相当する広く受け入れられている暗号通貨(BTC)を10CADに変換する。暗号通貨の交換は、交換レートの不安定性を考慮して、迅速に行われる(例えば、数秒~数分)。交換はまた、価格不安定性を排除するために、クレジットベースのアカウント上で、リアルタイムで実行され得る。さらに、支払人コンピューティングデバイス12は、作製され、「aaa」CCのカナダドルへの交換レートをリアルタイムで知っている。
【0203】
方法はステップ(4b-5)に続き、外国の暗号通貨交換デバイス18-2は、10CADを、外国の受取人コンピューティングデバイス102と関連付けられている外国の受取人バンキングコンピューティングデバイス104に預入する。代替的に、外国の暗号通貨交換デバイス18-2は、10CADをフレクサバンキングコンピューティングデバイス55(例えば、安全で信頼できる暗号通貨受け入れシステム10のバンキングコンピューティングデバイス)に預入し、フレクサバンキングコンピューティングデバイス55は、10CADを外国の受取人バンキングコンピューティングデバイス104に預入する。方法はステップ(4b-6)に続き、外国の受取人バンキングコンピューティングデバイス104は、10CADの預入の領収書と、取引手数料とを暗号通貨受け入れネットワークコンピューティングデバイス16に送信する。取引手数料は、報酬計算および分配のために、ステークプールユニット44の取引手数料/報酬プール80に格納される。
【0204】
図15は、管轄区域1~5内に位置する暗号通貨交換デバイス1~5を含む、安全で信頼できる暗号通貨受け入れシステム10の暗号通貨交換デバイスの世界的ネットワークの一実施形態の概略ブロック図である。暗号通貨交換デバイスは、1つ以上の暗号通貨を他の通貨(例えば、法定通貨または他の暗号通貨)に変換するように動作可能である。暗号通貨交換のライセンス供与、規則、および規制は、管轄区域内で行われ、一部の暗号通貨は、ある管轄区域(例えば、国)内で他の通貨と交換可能であり得るが、別の管轄区域での交換には認められない場合があることを意味する。
【0205】
例えば、管轄区域1では、暗号通貨交換デバイス1は、以下の通貨、すなわち、「aaa」暗号通貨(CC)、「bbb」暗号通貨(CC)、現地の法定通貨、およびビットコイン(BTC)を認めて、変換するように動作可能である。管轄区域2では、暗号通貨交換デバイス2は、以下の通貨、すなわち、「aaa」暗号通貨(CC)、「ddd」暗号通貨(CC)、現地の法定通貨、およびビットコイン(BTC)を認めて、変換するように動作可能である。管轄区域3では、暗号通貨交換デバイス3は、以下の通貨、すなわち、「abc」暗号通貨(CC)、「eee」暗号通貨(CC)、現地の法定通貨、およびビットコイン(BTC)を認めて、変換するように動作可能である。管轄区域4では、暗号通貨交換デバイス4は、以下の通貨、すなわち、「aaa」暗号通貨(CC)、「ggg」暗号通貨(CC)、現地の法定通貨、およびビットコイン(BTC)を認めて、変換するように動作可能である。管轄区域5では、暗号通貨交換デバイス5は、以下の通貨、すなわち、「bbb」暗号通貨(CC)、「edd」暗号通貨(CC)、「xyz」暗号通貨(CC)、現地の法定通貨、およびビットコイン(BTC)を認めて、変換するように動作可能である。
【0206】
管轄区域をまたいでどの通貨が認められるかについて、いくつかの重複がある(例えば、管轄区域1、2、および4は、「aaa」CCを認める)一方で、ある管轄区域からの支払人が、別の管轄区域の受取人と、受取人の管轄区域では交換が認められない通貨を使用して取引することを望む場合に、問題が発生する。例えば、管轄区域5からの支払人は、「xyz」CCを使用して、管轄区域1からの受取人に支払うことを望む。暗号通貨交換デバイス1は、「xyz」CCを認めないか、または交換のために受け入れない。
【0207】
この問題を解決するために、ある暗号通貨を使用する支払人と、その暗号通貨を交換できない管轄区域内の受取人との間で金融取引が発生すると、支払人の管轄区域内の暗号通貨交換デバイスは、まず、その暗号通貨を、広く受け入れられている暗号通貨(例えば、ビットコイン(BTC))に変換する。そうすると、受取人の管轄区域内の暗号通貨交換所は、広く受け入れられている暗号通貨を受取人の所望の通貨に変換するように動作可能である。例えば、暗号通貨交換デバイス5は、「xyz」CCを、広く受け入れられている暗号通貨BTCに変換して、BTCを暗号通貨交換デバイス1に送信する。暗号通貨交換デバイス1は、BTCを受取人の所望の通貨(例えば、現地の法定通貨)に変換する。
【0208】
この複数ステップの変換は、安全で信頼できる暗号通貨受け入れシステム10の広く受け入れられている暗号通貨決済層と称される。広く受け入れられている暗号通貨決済層は、ここでは、広く受け入れられている暗号通貨(例えば、ビットコイン(BTC))が、特定の管轄区域によって受け入れられている任意の通貨への変換のために、管轄区域1~5をまたいで交換され得ることを示す、管轄区域間の矢印として示されている。広く受け入れられている暗号通貨決済層は、高速で信頼性が高く、安全な暗号通貨取引を世界的に可能にする。
【0209】
管轄区域が、広く受け入れられている暗号通貨を交換のために受け入れる安全で信頼できる暗号通貨受け入れシステム10と(例えば、暗号通貨受け入れネットワークデバイス16のアカウントを介して)関連付けられている暗号通貨交換所を有する限り、認められない/外国の暗号通貨を使用して開始される暗号通貨の金融取引は、そこで行われ得る。
【0210】
図16は、国内の支払人コンピューティングデバイス12と、暗号通貨受け入れネットワークコンピューティングデバイス16と、1つ以上の国内の暗号通貨交換デバイス18-1と、複数の国内の受取人コンピューティングデバイス14-1~14-nと、複数の国内の受取人バンキングデバイス56-1~56-nと、1つ以上の外国の暗号通貨交換デバイス18-2と、複数の外国の受取人コンピューティングデバイス102-1~102-nと、複数の外国の受取人バンキングコンピューティングデバイス104-1~104-nと、を含む、安全で信頼できる暗号通貨受け入れシステム10の別の実施形態の概略ブロック図である。
【0211】
暗号通貨受け入れネットワークコンピューティングデバイス16は、国内の支払人コンピューティングデバイス12、1つ以上の国内の暗号通貨交換デバイス18-1、1つ以上の国内の暗号通貨交換デバイス18-1、複数の国内の受取人コンピューティングデバイス14-1~14-n、複数の国内の受取人バンキングデバイス56-1~56-n、複数の外国の暗号通貨交換デバイス1~n、複数の外国の受取人コンピューティングデバイス1~n、および複数の外国の受取人バンキングコンピューティングデバイス1~nと関連付けられる。
【0212】
暗号通貨受け入れネットワークコンピューティングデバイス16の関連付けによって作成されるネットワークは、国内の支払人コンピューティングデバイス12が、国内の受取人コンピューティングデバイスおよび外国の受取人コンピューティングデバイスと高速、容易、かつ高信頼性の金融取引をすることを可能にする。これは、
図13~
図15で考察された、広く受け入れられている暗号通貨決済層を通じて達成される。
【0213】
国内の支払人コンピューティングデバイス12の国の外で、1つ以上の外国の受取人デバイス102-1~102-nとの金融取引を行っている間、国内の支払人コンピューティングデバイス102は、暗号通貨受け入れネットワークコンピューティングデバイス16を介して、国内および外国の暗号通貨交換デバイスの接続を通してリアルタイムの交換レートを提供される。
【0214】
安全で信頼できる暗号通貨受け入れシステム10の方法(例えば、ステークプール、広く受け入れられている暗号通貨決済層など)は、世界的に複数の管轄区域をまたぐ、安全で信頼できる暗号通貨受け入れシステム10の複製可能性およびスケーラビリティを可能にする。
【0215】
本明細書でも使用され得る場合、用語「に構成される」、「に動作可能に結合される」、「に結合される」、および/または「結合する」は、介在アイテム(例えば、アイテムは、以下に限定されないが、構成要素、要素、回路、および/またはモジュールを含む)を介してアイテム間の直接結合および/またはアイテム間の間接結合を含み、間接結合の例では、介在アイテムは、信号の情報を修正しないが、その電流レベル、電圧レベル、および/または電力レベルを調整し得る。本明細書でさらに使用され得る場合、推論結合(すなわち、1つの要素が推論によって別の要素に結合される場合)は、「に結合された」と同じ方式での、2つのアイテム間の直接的および間接的な結合を含む。
【0216】
本明細書でさらに使用され得る場合、用語「に構成される」、「に動作可能である」、「に結合されている」、または「に動作可能に結合されている」は、アイテムが、アクティブにされたときに、1つ以上の対応する機能を実行するための電源接続、入力、出力などのうちの1つ以上を含み、1つ以上の他のアイテムへの推論連結をさらに含み得ることを示す。本明細書でなおさらに使用され得る場合、用語「と関連付けられた」は、別個のアイテムの直接および/または間接結合、および/または1つのアイテムが別のアイテム内に埋め込まれていることを含む。
【0217】
本明細書で使用され得る場合、用語「好都合に比較する」は、2つ以上のアイテム、信号などの間の比較が、所望の関係を提供することを示す。例えば、所望の関係が、信号1が信号2よりも大きい大きさを有することである場合、信号1の大きさが、信号2の大きさよりも大きいとき、または信号2の大きさが、信号1の大きさ未満であるときに、好都合な比較が、達成され得る。本明細書で使用され得る場合、用語「不利に比較する」は、2つ以上のアイテム、信号などの間の比較が、所望の関係を提供できないことを示す。
【0218】
本明細書で使用され得る場合、1つ以上の特許請求項は、「a」、「b」、および「c」よりも多いか、または少ない要素に関して、この一般的な形式の特定の形式の「a、b、およびcのうちの少なくとも1つ」というフレーズ、またはこの一般的な形態の特定の形式の「a、b、またはcのうちの少なくとも1つ」を含む場合がある。いずれのフレージングにおいても、フレーズは、同一に解釈されるべきである。特に、「a、b、およびcのうちの少なくとも1つ」は、「a、b、またはcのうちの少なくとも1つ」に等しく、a、b、および/またはcを意味するものとする。一例として、それは、「a」のみ、「b」のみ、「c」のみ、「a」および「b」、「a」および「c」、「b」および「c」、ならびに/または「a」、「b」、および「c」を意味する。
【0219】
本明細書で使用され得る場合、「処理モジュール」、「処理回路(processing circuit)」、「プロセッサ」、「処理回路(processing circuitry)」、および/または「処理ユニット」という用語は、単一の処理デバイスまたは複数の処理デバイスであり得る。そのような処理デバイスは、マイクロプロセッサ、マイクロコントローラ、デジタルシグナルプロセッサ、マイクロコンピュータ、中央処理装置、フィールドプログラマブルゲートアレイ、プログラマブルロジックデバイス、ステートマシン、論理回路、アナログ回路、デジタル回路、および/または回路のハードコーディングおよび/または動作命令に基づいて信号(アナログおよび/またはデジタル)を操作する任意のデバイスであり得る。処理モジュール、モジュール、処理回路(processing circuit)、処理回路(processing circuitry)、および/もしくは処理ユニットは、単一のメモリデバイス、複数のメモリデバイス、および/または別の処理モジュール、モジュール、処理回路(processing circuit)、処理回路(processing circuitry)、および/もしくは処理ユニットの埋め込み回路であり得るメモリおよび/もしくは統合メモリ素子であり得るか、またはそれをさらに含み得る。そのようなメモリデバイスは、読み出し専用メモリ、ランダムアクセスメモリ、揮発性メモリ、不揮発性メモリ、スタティックメモリ、ダイナミックメモリ、フラッシュメモリ、キャッシュメモリ、および/またはデジタル情報を記憶する任意のデバイスであり得る。処理モジュール、モジュール、処理回路(processing circuit)、処理回路(processing circuitry)、および/または処理ユニットが、2つ以上の処理デバイスを含む場合、処理デバイスは、中央に位置し得るか(例えば、有線および/もしくは無線バス構造を介して一緒に直接結合され得る)、または分散されて位置し得る(例えば、ローカルエリアネットワークおよび/もしくはワイドエリアネットワークを介する間接結合を介したクラウドコンピューティング)ことに留意されたい。さらに、処理モジュール、モジュール、処理回路(processing circuit)、処理回路(processing circuitry)、および/または処理ユニットが、ステートマシン、アナログ回路、デジタル回路、および/または論理回路を介してその機能のうちの1つ以上を実装する場合、対応する動作命令を記憶するメモリおよび/またはメモリ素子は、ステートマシン、アナログ回路、デジタル回路、および/または論理回路を含む回路の中に埋め込まれるか、またはその外部にあることに留意されたい。なおさらに、メモリ素子は、図のうちの1つ以上に示されているステップおよび/もしくは機能のうちの少なくともいくつかに対応するハードコードされた命令および/もしくは動作命令を記憶し得、処理モジュール、モジュール、処理回路(processing circuit)、処理回路(processing circuitry)、および/または処理ユニットはそれらを実行することに留意されたい。そのようなメモリデバイスまたはメモリ素子は、製造品に含まれ得る。
【0220】
1つ以上の実施形態が、指定された機能およびそれらの関係性の実行を例示する方法ステップの助けを借りて、上記で説明されている。これらの機能的ビルディングブロックおよび方法ステップの境界および順序は、説明の便宜のために、本明細書で任意に定義されている。指定された機能および関係性が適切に実行される限り、代替の境界および順序が、定義され得る。したがって、任意のそのような代替の境界または順序は、特許請求の範囲の範囲および趣旨内である。さらに、これらの機能的ビンディングブロックの境界は、説明の便宜のために、任意に定義されている。特定の有意な機能が適切に実行される限り、代替の境界が、定義され得る。同様に、フローダイヤグラムブロックも、特定の有意な機能を例示するために、本明細書において任意に定義されている可能性がある。
【0221】
使用される範囲で、フローダイヤグラムブロックの境界および順序は、別様に定義されている可能性があるが、依然として特定の重要な機能を実行し得る。したがって、機能的ビルディングブロックおよびフローダイヤグラムブロックの両方のそのような代替定義ならびに順序は、特許請求の範囲の範囲および趣旨内である。当業者はまた、機能的ビルディングブロック、および本明細書における他の例示的なブロック、モジュール、および構成要素が、図示されたように、または別個の構成要素、特定用途向け集積回路、適切なソフトウェアを実行するプロセッサなど、もしくはそれらの任意の組み合わせによって、実装され得ることを認識するであろう。
【0222】
加えて、フローダイヤグラムは、「開始」および/または「続く」の表示を含み得る。「開始」および「続く」の表示は、提示されたステップが、任意選択で、1つ以上の他のルーチンに組み込まれるか、またはさもなければそれらとともに使用され得ることを反映する。さらに、フローダイヤグラムは、「終了」および/または「続く」の表示を含み得る。「終了」および/または「続く」の表示は、提示されたステップが、記載され、示されているように終了するか、または任意選択で、1つ以上の他のルーチンに組み込まれるか、さもさければそれらとともに使用され得ることを反映する。この文脈で、「開始」は、提示された最初のステップの始まりを示し、具体的に示されていない他の活動にとって先行され得る。さらに、「続く」の表示は、提示されたステップが、複数回実行され得、および/または具体的に示されていない他の活動によって継承され得ることを反映する。さらに、フローダイヤグラムは、ステップの特定の順序を示すが、因果関係の原理が維持されているという条件で、他の順序も同様に可能である。
【0223】
1つ以上の実施形態が、1つ以上の態様、1つ以上の特徴、1つ以上の概念、および/または1つ以上の例を示すために、本明細書で使用される。装置、製造品、機械、および/またはプロセスの物理的な実施形態は、本明細書で考察される実施形態の1つ以上を参照して説明される態様、特徴、概念、例などのうちの1つ以上を含み得る。さらに、図ごとに、実施形態は、同じかまたは異なる参照番号を使用し得る、同じかまたは類似して命名された機能、ステップ、モジュールなどを組み込み得、したがって、機能、ステップ、モジュールなどは、同じかまたは類似した機能、ステップ、モジュールなどであり得るか、または異なる機能、ステップ、モジュールなどであり得る。
【0224】
上述の図におけるトランジスタは、フィールドエフェクトトランジスタ(FET)として示されているが、当業者であれば理解するであろうように、トランジスタは、以下に限定されないが、バイポーラ、金属酸化物半導体フィールドエフェクトトランジスタ(MOSFET)、Nウェルトランジスタ、Pウェルトランジスタ、エンハンスメントモード、枯渇モード、およびゼロ電圧閾値(VT)トランジスタを含む任意のタイプのトランジスタ構造を使用して実装され得る。
【0225】
反対に明記されていない限り、本明細書に提示される図のうちのいずれかの図の要素への信号、要素からの信号、および/または要素間の信号は、アナログもしくはデジタル、連続時間もしくは離散時間、およびシングルエンドもしくは差動であり得る。例えば、信号経路がシングルエンド経路として示される場合、その信号経路は、差動信号経路も表す。同様に、信号経路が差動経路として示される場合、その信号経路は、シングルエンド信号経路も表す。1つ以上の特定のアーキテクチャが本明細書で説明されるが、明示的に示されていない1つ以上のデータバス、要素間の直接接続、および/または当業者によって認識されるような他の要素間の間接結合を使用する他のアーキテクチャも同様に実装され得る。
【0226】
「モジュール」という用語が、実施形態のうちの1つ以上の説明で使用される。モジュールは、動作命令を記憶するメモリを含み得るか、またはメモリと関連付けて動作し得るプロセッサまたは他の処理デバイスもしくは他のハードウェアなどのデバイスを介して、1つ以上の機能を実装する。モジュールは、独立して、および/またはソフトウェアおよび/またはファームウェアと連携して動作し得る。本明細書でも使用される場合、モジュールは、1つ以上のサブモジュールを含み得、サブモジュールの各々は、1つ以上のモジュールであり得る。
【0227】
本明細書でさらに使用され得る場合、コンピュータ可読メモリは、1つ以上のメモリ素子を含む。メモリ素子は、別個のメモリデバイス、複数のメモリデバイス、またはメモリデバイス内のメモリ位置のセットであり得る。そのようなメモリデバイスは、読み出し専用メモリ、ランダムアクセスメモリ、揮発性メモリ、不揮発性メモリ、スタティックメモリ、ダイナミックメモリ、フラッシュメモリ、キャッシュメモリ、および/またはデジタル情報を記憶する任意のデバイスであり得る。メモリデバイスは、形態において、ソリッドステートメモリ、ハードドライブメモリ、クラウドメモリ、サムドライブ、サーバメモリ、コンピューティングデバイスメモリ、および/またはデジタル情報を記憶するための他の物理媒体の形態であり得る。
【0228】
1つ以上の実施形態の様々な機能および特徴の特定の組み合わせが、本明細書に明示的に記載されているが、これらの特徴および機能の他の組み合わせも、同様に可能である。本開示は、本明細書に開示される特定の例に限定されず、これらの他の組み合わせを明示的に組み込む。