例示的な実施形態を本明細書において詳細に説明しており、例示的な実施形態の例を添付の図面に提示している。以下の説明が添付の図面に関する場合には、特に断りのない限り、異なる添付の図面における同じ番号は同一または同様の要素を表す。以下の例示的な実施形態において説明した実施形態は、本明細書の1つまたは複数の実施形態と一致するすべての実施形態を表しているわけではない。むしろ、実施形態は、添付の特許請求の範囲に詳細に記載されるとともに本明細書の1つまたは複数の実施形態の一部の態様と一致する、装置および方法の例に過ぎない。
図1Aは、例示的な実施形態による、資金フロー方法を図示しているフローチャートである。図1Aに示しているように、方法は、以下のステップを含み得る。
ステップ102A: ブロックチェーンの第1のメンバが、支払元と支払先との間の指定金額の資金フローのための要求を受信する。
ある実施形態においては、資金支払要求は、支払先に対して支払元によって開始され得る。換言すれば、第1のメンバによって受信される資金フローのための要求は、資金支払要求であり得る。例えば、資金支払要求は、支払先に資金を送金するまたは支払うために支払元によって使用され得るが、本明細書ではこのことに限定されない。
ある実施形態においては、資金受取要求は、支払元に対して支払先によって開始され得る。換言すれば、第1のメンバによって受信される資金フローのための要求は、資金受取要求であり得る。例えば、資金受取要求は、支払元から資金を受信するために支払先によって使用され得るが、本明細書ではこのことに限定されない。
ある実施形態においては、支払元および支払先は、個人または組織(企業またはプラットフォームなど)であり得るが、本明細書ではこのことに限定されない。
ステップ104A: 第1のメンバが、ブロックチェーンにおける第1のメンバと支払先に対応する第2のメンバとの間の資金フロールートを決定する、ここで、資金フロールートは、第1のメンバ、第2のメンバ、およびいくつかの中継メンバを含み、ブロックチェーンのすべてのアンカーポイントにおいて資金フロールートのすべてのメンバによって供託されたブロックチェーン残高は、ブロックチェーンのブロックチェーン台帳に登録される。
ある実施形態においては、資金フロールート内にある第1のメンバ、第2のメンバ、および中継メンバに関する情報、ならびに資金フロールート内にない他のメンバに関する情報は、ブロックチェーンに記憶され得るし、これらのメンバは、ブロックチェーン上のノードであり得る。ブロックチェーン上のノードは、いくつかのアンカーポイントをさらに含み得る。これらのアンカーポイントの役割は、メンバによって行われ得るが必ずしもそうする必要はない。
ある実施形態においては、資金フロールートのメンバは、資金フローサービスをサポートする金融機関、他の形式の組織またはプラットフォームなどであり得るが、本明細書ではこのことに限定されない。金融機関を一例として使用する。資金フロールート内のすべてのメンバは、異なる機関(例えば、複数の銀行)に属し得る、または、同一の機関の異なる支店(例えば、同一の銀行の複数の支店)に属し得るが、本明細書ではこのことに限定されない。
ある実施形態においては、ブロックチェーンに属する各メンバは、各アンカーポイントにおいて特定の金額のブロックチェーン残高を供託し得るし、各アンカーポイントは、ブロックチェーンに各アンカーポイントにおいて各メンバによって供託されたブロックチェーン残高を登録することを担当している。アンカーポイントによって記録された情報は、記憶のためにすべての他のノードにブロードキャストされ得る。何らかの変化がブロックチェーン残高において生じると、アンカーポイントは、対応する変化情報をブロックに記録し、情報をすべての他のノードにブロードキャストする。ブロックチェーンは分散型台帳技術を使用しており、すべてのノードが完全な台帳情報を記憶している。加えて、ブロックチェーンのすべてのノードは、コンセンサスアルゴリズムを使用して合意に達することができ、それによって、統合的な台帳、すなわち、ブロックチェーン台帳を共同で維持管理している。したがって、本明細書におけるあるメンバまたはアンカーポイントが「ブロックチェーン台帳」についての情報を読み込んだ場合または記録した場合には、メンバまたはアンカーポイントは、メンバまたはアンカーポイントによって記憶されている完全な台帳情報に基づいた情報の読込または記録を行う。
ある実施形態においては、関連アンカーポイントが、資金フロールート内の隣接するメンバの間に存在する。関連アンカーポイントにおいて隣接するメンバのうちの上流メンバによって供託されたブロックチェーン残高は、指定金額より大きくなっており、その結果、ブロックチェーン残高が振り込まれる必要がある資金に対して十分あることを保証している。加えて、関連アンカーポイントは、下流メンバが関連アンカーポイントにおいて資金を受け取ることができることまたは受け取る用意があることを保証するために、下流メンバによって信頼できるアンカーポイントとして設定されている。
ある実施形態においては、ブロックチェーンのいくつかのメンバが、これらのメンバがコントラクトに基づいて資金フローサービスを実施することができるように、資金フローサービスに対するスマートコントラクト(略して、コントラクト)に関与し、コントラクトを許可する。コントラクトは、各メンバに対応する、信頼できるアンカーポイント、信頼できないアンカーポイントなどを、それに応じて決定することができるように、これらのメンバに関する情報、例えば、各アンカーポイント内の各メンバによって設定された信頼性についての状態を記録する。各アンカーポイントにおいて各メンバによって供託されたブロックチェーン残高がブロックチェーン台帳に登録されているため、あるアンカーポイントにおいてあるメンバによって供託されたブロックチェーン残高が指定金額より大きいかどうかを決定することができる。あるメンバが対応する信頼できるアンカーポイントにおいてブロックチェーン残高を供託していないまたはブロックチェーン残高が使い果たされている場合には、メンバのブロックチェーン残高が0であるとみなすことができる。したがって、第1のメンバは、ルート選択コントラクトオペレーションを開始し得る。ルート選択コントラクトオペレーションを実施した後に、「関連アンカーポイントにおいて上流メンバによって供託されたブロックチェーン残高が指定金額より大きく、関連アンカーポイントが下流メンバによって信頼できるアンカーポイントとして設定されている」という条件を満足しているすべての隣接するメンバを決定して、資金フロールートを形成し得る。換言すれば、資金フロールートは、各アンカーポイント内の各メンバによって設定された信頼性についての状態およびブロックチェーン台帳に登録された各アンカーポイントにおける各メンバのブロックチェーン残高の供託状態に基づいて決定される。
ある実施形態においては、資金フローコントラクトオペレーションを実施した後に、関連アンカーポイントにおいて隣接するメンバのうちの上流メンバによって供託されたブロックチェーン残高は、指定金額ほど減らされ、関連アンカーポイントにおいて下流メンバによって供託されたブロックチェーン残高は、指定金額ほど増やされる。加えて、すべての隣接するメンバは、ブロックチェーン台帳に登録された資金フロールートのすべてのメンバのブロックチェーン残高が統合的に変化するように、対応する関連アンカーポイントにおけるブロックチェーン残高変化に直面する。第1のメンバは、資金フロールート内の最も上流のメンバとしての役割を果たしているため、対応する関連アンカーポイントにおけるブロックチェーン残高は、指定金額ほど減らされる。第2のメンバは、資金フロールート内の最も下流のメンバとしての役割を果たしているため、対応する関連アンカーポイントにおけるブロックチェーン残高は、指定金額ほど増やされる。加えて、各中継メンバは、上流メンバおよび下流メンバの両方としての役割を果たしている。中継メンバが上流メンバとしての役割を果たしている場合には、対応する関連アンカーポイントにおけるブロックチェーン残高は、指定金額ほど減らされ、中継メンバが下流メンバとしての役割を果たしている場合には、対応する関連アンカーポイントにおけるブロックチェーン残高は、指定金額ほど増やされる。換言すれば、すべてのアンカーポイントにおける中継メンバのブロックチェーン残高の正味増減額は0である。したがって、指定金額が第1のメンバのブロックチェーン残高から第2のメンバのブロックチェーン残高に振り込まれることを最終的には示している。
ステップ106A: 第1のメンバが、資金フローコントラクトオペレーションを開始して、資金フローを完了する。
ある実施形態においては、第1のメンバは、資金フローコントラクトオペレーションを開始する。資金フローコントラクトオペレーションを実施した後に、ブロックチェーン台帳に登録された資金フロールートのすべてのメンバのブロックチェーン残高は、統合的に変化する。したがって、指定金額は、第2のメンバが指定金額の資金を支払先に支払うように、資金フロールートを介して第1のメンバのブロックチェーン残高から第2のメンバのブロックチェーン残高に振り込まれる。
ある実施形態においては、統合的なブロックチェーン台帳をブロックチェーンにおいて使用しており、すべてのアンカーポイントにおいてすべてのメンバによってそれぞれ供託されたブロックチェーン残高がブロックチェーン台帳に登録されている。したがって、第1のメンバがコントラクトオペレーションを開始した後に、資金フロールート内のすべてのメンバのブロックチェーン残高は、メンバ間で直列的なフローを行うことなく、コントラクトオペレーションに基づいて統合的に変化することができ、それによって、資金フロー効率を改善するとともに、リアルタイム、擬似リアルタイム、またはニアリアルタイムな資金フローを可能としている。ブロックチェーンに登録されたデータは、ブロックチェーン台帳に統合的に登録されたブロックチェーン残高情報が、各メンバが信頼できるものであるとともに、十分信頼性のあるものとなるように、改竄耐性機能を有している。ブロックチェーンに対するコントラクトオペレーションは、各メンバがブロックチェーン台帳に基づいて高効率の資金フローを実施する用意があるように、同一のサービスを完了するために異なる機関を連携させるために使用され得る。
ある実施形態においては、本明細書の資金フローソリューションは、国内資金フローおよび越境資金フローなどといった様々な資金フローシナリオに適用され得るが、本明細書ではこのことに限定されない。越境資金フローは、通常、比較的大量のメンバを含む。したがって、本明細書の資金フローソリューションは、資金フロー効率をより大幅に改善し得る。
ある実施形態においては、本明細書に関するブロックチェーンは、コンソーシアムチェーンであり得るし、資金フロールート内の各メンバは、コンソーシアムチェーンのメンバである。加えて、コンソーシアムチェーンは、さらに多くのメンバをさらに含み得るが、本明細書ではこのことに限定されない。
ある実施形態においては、第1のメンバは、支払元によって提供された資金が資金フローに直ちに含まれるように、支払元によって提供された指定金額の資金を取得し、第1のメンバのブロックチェーン残高に指定金額の資金を供託し、資金フローコントラクトオペレーションを開始し得る。
ある実施形態においては、第1のメンバは、支払元によって提供された資金が、資金フローに含まれることはないが、第1のメンバのブロックチェーン残高に置換されるように、支払元によって提供された指定金額の資金を取得し、第1のメンバの自己所有口座に指定金額の資金を供託し、資金フローコントラクトオペレーションを開始し得る。加えて、第1のメンバの自己所有口座とブロックチェーン残高との間の正味増減額は0であるため、損害が生じることはない。
ある実施形態においては、支払元によって提供された指定金額の資金を取得する前に、第1のメンバは、支払元の与信枠に基づいて資金フローコントラクトオペレーションを開始し得る。換言すれば、支払元は、対応する資金を即座に支払う必要がない。代わりに、第1のメンバは、与信枠に基づいて、支払元が支払う必要がある資金に対して前払いを行い得る。
ある実施形態においては、第2のメンバのブロックチェーン残高が指定金額の資金ほど増えた後に、第2のメンバは、ブロックチェーン残高から指定金額の資金を直ちに引き出し、支払先に指定金額の資金を提供し得る。別の実施形態においては、第2のメンバは、自己所有口座から指定金額の資金を引き出し、支払先に指定金額の資金を提供し得る。加えて、第2のメンバの自己所有口座とブロックチェーン残高との間の正味増減額は0であるため、損害が生じることはない。
ある実施形態においては、第1のメンバおよび第2のメンバは、任意の上述した処理ソリューションを別個に使用することができ、第1のメンバおよび第2のメンバによって使用される処理ソリューションの間に必要不可欠な関連付けは存在しないが、本明細書ではこのことに限定されない。
図1Bは、例示的な実施形態による、別の資金フロー方法を図示しているフローチャートである。図1Bに示しているように、方法は、以下のステップを含み得る。
ステップ102B: ブロックチェーンの第1のメンバが、支払元と支払先との間の指定金額の資金フローのための要求を受信する。
ある実施形態においては、資金支払要求は、支払先に対して支払元によって開始され得る。換言すれば、第1のメンバによって受信される資金フローのための要求は、資金支払要求であり得る。例えば、資金支払要求は、支払先に資金を送金するまたは支払うために支払元によって使用され得るが、本明細書ではこのことに限定されない。
ある実施形態においては、資金受取要求は、支払元に対して支払先によって開始され得る。換言すれば、第1のメンバによって受信される資金フローのための要求は、資金受取要求であり得る。例えば、資金受取要求は、支払元から資金を受信するために支払先によって使用され得るが、本明細書ではこのことに限定されない。
ある実施形態においては、支払元および支払先は、個人または組織(企業またはプラットフォームなど)であり得るが、本明細書ではこのことに限定されない。
ステップ104B: 第1のメンバが、ブロックチェーンにおける第1のメンバと支払先に対応する第2のメンバとの間の資金フロールートを決定する、ここで、資金フロールートは、第1のメンバおよび第2のメンバを含み、ブロックチェーンのすべてのアンカーポイントにおいて資金フロールートのすべてのメンバによって供託されたブロックチェーン残高は、ブロックチェーンのブロックチェーン台帳に登録される。
ある実施形態においては、資金フロールート内にある第1のメンバおよび第2のメンバに関する情報、ならびに資金フロールート内にない他のメンバに関する情報は、ブロックチェーンに記憶され得るし、これらのメンバは、ブロックチェーン上のノードであり得る。ブロックチェーン上のノードは、いくつかのアンカーポイントをさらに含み得る。これらのアンカーポイントの役割は、メンバによって行われ得るが必ずしもそうする必要はない。
ある実施形態においては、資金フロールートのメンバは、資金フローサービスをサポートする金融機関、他の形式の組織またはプラットフォームなどであり得るが、本明細書ではこのことに限定されない。金融機関を一例として使用する。資金フロールート内のすべてのメンバは、異なる機関(例えば、複数の銀行)に属し得る、または、同一の機関の異なる支店(例えば、同一の銀行の複数の支店)に属し得るが、本明細書ではこのことに限定されない。
ある実施形態においては、ブロックチェーンに属する各メンバは、各アンカーポイントにおいて特定の金額のブロックチェーン残高を供託し得るし、各アンカーポイントは、ブロックチェーンに各アンカーポイントにおいて各メンバによって供託されたブロックチェーン残高を登録することを担当している。アンカーポイントによって記録された情報は、記憶のためにすべての他のノードにブロードキャストされ得る。何らかの変化がブロックチェーン残高において生じると、アンカーポイントは、対応する変化情報をブロックに記録し、情報をすべての他のノードにブロードキャストする。ブロックチェーンは分散型台帳技術を使用しており、すべてのノードが完全な台帳情報を記憶している。加えて、ブロックチェーンのすべてのノードは、コンセンサスアルゴリズムを使用して合意に達することができ、それによって、統合的な台帳、すなわち、ブロックチェーン台帳を共同で維持管理している。したがって、本明細書におけるあるメンバまたはアンカーポイントが「ブロックチェーン台帳」についての情報を読み込んだ場合または記録した場合には、メンバまたはアンカーポイントは、メンバまたはアンカーポイントによって記憶されている完全な台帳情報に基づいた情報の読込または記録を行う。
ある実施形態においては、関連アンカーポイントが、資金フロールート内の隣接するメンバの間に存在する。関連アンカーポイントにおいて隣接するメンバのうちの上流メンバによって供託されたブロックチェーン残高は、指定金額より大きくなっており、その結果、ブロックチェーン残高が振り込まれる必要がある資金に対して十分あることを保証している。加えて、関連アンカーポイントは、下流メンバが関連アンカーポイントにおいて資金を受け取ることができることまたは受け取る用意があることを保証するために、下流メンバによって信頼できるアンカーポイントとして設定されている。
ある実施形態においては、ブロックチェーンのいくつかのメンバが、これらのメンバがコントラクトに基づいて資金フローサービスを実施することができるように、資金フローサービスに対するスマートコントラクト(略して、コントラクト)に関与し、コントラクトを許可する。コントラクトは、各メンバに対応する、信頼できるアンカーポイント、信頼できないアンカーポイントなどを、それに応じて決定することができるように、これらのメンバに関する情報、例えば、各アンカーポイント内の各メンバによって設定された信頼性についての状態を記録する。各アンカーポイントにおいて各メンバによって供託されたブロックチェーン残高がブロックチェーン台帳に登録されているため、あるアンカーポイントにおいてあるメンバによって供託されたブロックチェーン残高が指定金額より大きいかどうかを決定することができる。あるメンバが対応する信頼できるアンカーポイントにおいてブロックチェーン残高を供託していないまたはブロックチェーン残高が使い果たされている場合には、メンバのブロックチェーン残高が0であるとみなすことができる。したがって、第1のメンバは、ルート選択コントラクトオペレーションを開始し得る。ルート選択コントラクトオペレーションを実施した後に、「関連アンカーポイントにおいて上流メンバによって供託されたブロックチェーン残高が指定金額より大きく、関連アンカーポイントが下流メンバによって信頼できるアンカーポイントとして設定されている」という条件を満足している第2のメンバを決定して、資金フロールートを形成し得る。換言すれば、資金フロールートは、各アンカーポイント内の各メンバによって設定された信頼性についての状態およびブロックチェーン台帳に登録された各アンカーポイントにおける各メンバのブロックチェーン残高の供託状態に基づいて決定される。
ある実施形態においては、資金フローコントラクトオペレーションを実施した後に、ブロックチェーン台帳に登録された資金フロールートのすべてのメンバのブロックチェーン残高が統合的に変化するように、関連アンカーポイントにおいて第1のメンバによって供託されたブロックチェーン残高は、指定金額ほど減らされ、関連アンカーポイントにおいて第2のメンバによって供託されたブロックチェーン残高は、指定金額ほど増やされる。したがって、指定金額が第1のメンバのブロックチェーン残高から第2のメンバのブロックチェーン残高に振り込まれることを最終的には示している。
ステップ106B: 第1のメンバが、資金フローコントラクトオペレーションを開始する、ここで、資金フローコントラクトオペレーションを実施した後に、ブロックチェーン台帳に登録された資金フロールートのすべてのメンバのブロックチェーン残高は、第2のメンバが指定金額の資金を支払先に支払うように、統合的に変化する。
ある実施形態においては、第1のメンバは、資金フローコントラクトオペレーションを開始する。資金フローコントラクトオペレーションを実施した後に、ブロックチェーン台帳に登録された資金フロールートのすべてのメンバのブロックチェーン残高は、統合的に変化する。したがって、指定金額は、第2のメンバが指定金額の資金を支払先に支払うように、第1のメンバのブロックチェーン残高から第2のメンバのブロックチェーン残高に振り込まれる。
ある実施形態においては、ブロックチェーンに登録されたデータは、ブロックチェーン台帳に統合的に登録されたブロックチェーン残高情報が、各メンバが信頼できるものであるとともに、十分信頼性のあるものとなるように、改竄耐性機能を有している。ブロックチェーンに対するコントラクトオペレーションは、各メンバがブロックチェーン台帳に基づいて高効率の資金フローを実施する用意があるように、同一のサービスを完了するために異なる機関を連携させるために使用され得る。
ある実施形態においては、本明細書の資金フローソリューションは、国内資金フローおよび越境資金フローなどといった様々な資金フローシナリオに適用され得るが、本明細書ではこのことに限定されない。越境資金フローは、通常、比較的大量のメンバを含む。したがって、本明細書の資金フローソリューションは、資金フロー効率をより大幅にさらに改善し得る。
ある実施形態においては、本明細書に関するブロックチェーンは、コンソーシアムチェーンであり得るし、資金フロールート内の各メンバは、コンソーシアムチェーンのメンバである。加えて、コンソーシアムチェーンは、さらに多くの他のコンソーシアムメンバをさらに含み得るが、本明細書ではこのことに限定されない。
ある実施形態においては、第1のメンバは、支払元によって提供された資金が資金フローに直ちに含まれるように、支払元によって提供された指定金額の資金を取得し、第1のメンバのブロックチェーン残高に指定金額の資金を供託し、資金フローコントラクトオペレーションを開始し得る。
ある実施形態においては、第1のメンバは、支払元によって提供された資金が、資金フローに含まれることはないが、第1のメンバのブロックチェーン残高に置換されるように、支払元によって提供された指定金額の資金を取得し、第1のメンバの自己所有口座に指定金額の資金を供託し、資金フローコントラクトオペレーションを開始し得る。加えて、第1のメンバの自己所有口座とブロックチェーン残高との間の正味増減額は0であるため、損害が生じることはない。
ある実施形態においては、支払元によって提供された指定金額の資金を取得する前に、第1のメンバは、支払元の与信枠に基づいて資金フローコントラクトオペレーションを開始し得る。換言すれば、支払元は、対応する資金を即座に支払う必要がない。代わりに、第1のメンバは、与信枠に基づいて、支払元が支払う必要がある資金に対して前払いを行い得る。
ある実施形態においては、第2のメンバのブロックチェーン残高が指定金額の資金ほど増えた後に、第2のメンバは、ブロックチェーン残高から指定金額の資金を直ちに引き出し、支払先に指定金額の資金を提供し得る。別の実施形態においては、第2のメンバは、自己所有口座から指定金額の資金を引き出し、支払先に指定金額の資金を提供し得る。加えて、第2のメンバの自己所有口座とブロックチェーン残高との間の正味増減額は0であるため、損害が生じることはない。
ある実施形態においては、第1のメンバおよび第2のメンバは、任意の上述した処理ソリューションを別個に使用することができ、第1のメンバおよび第2のメンバによって使用される処理ソリューションの間に必要不可欠な関連付けは存在しないが、本明細書ではこのことに限定されない。
理解を容易にするために、本明細書の1つまたは複数の実施形態の技術的ソリューションを説明するのに「越境送金」プロセスを以下で例として使用している。図2は、例示的な実施形態による、送金シナリオを図示している概略図である。図2に示しているように、第三者支払プラットフォームが国Aにおいてウォレット1および国Bにおいてウォレット2を運営していると仮定する。国Aにいるユーザ1は、ウォレット1内の顧客資金口座1を有しており、国Bにいるユーザ2は、ウォレット2内の顧客資金口座2を有している。本明細書の資金フローソリューションは、ユーザ1とユーザ2との間で高速な越境送金を実施し得る。
ある実施形態においては、図2に示したウォレット1、ウォレット2、銀行1、銀行2、銀行3などのすべてが同一のブロックチェーンのいくつかのメンバ(あるメンバ)であり、ブロックチェーンが図2に示したアンカーポイント1、アンカーポイント2、およびアンカーポイント3などのいくつかのアンカーポイントを含み得ると仮定する。アンカーポイントの役割はメンバによって果たされ得る。例えば、図2中のアンカーポイント1〜アンカーポイント3は、それぞれ銀行1〜銀行3に対応する。当然のことながら、メンバはアンカーポイントの役割を果たさなくてもよいし、アンカーポイントは必ずしもメンバである必要はない。換言すれば、メンバとアンカーポイントとの間に必要不可欠な一対一のマッピング関係は存在しない。ウォレット1、ウォレット2、および銀行1〜銀行3、アンカーポイント1〜アンカーポイント3などといったメンバはすべて、ブロックチェーンに属するノードであり、これらのノードは、ブロックチェーンにおいて分散型台帳技術を実施する。
ブロックチェーンに属するメンバを使用してユーザ1とユーザ2との間の送金を実施するために、ウォレット1、ウォレット2、銀行1〜銀行3などは、事前に「送金」サービスに対応するコントラクトに関与している必要がある。例えば、ここでは、コントラクトは送金コントラクトと称する。各メンバは、各アンカーポイントにおいて任意の金額の資金を供託し得る、すなわち、対応するアンカーポイントにおいてメンバによって供託されたブロックチェーン残高を供託し得る。例えば、アンカーポイント1においてウォレット1によって供託されたブロックチェーン残高は1000元であり、アンカーポイント2において銀行1によって供託されたブロックチェーン残高は2000元であり、アンカーポイント3において銀行2によって供託されたブロックチェーン残高は3000元である。各メンバは、各アンカーポイントにおいて各メンバによって供託されたブロックチェーン残高が対応するアンカーポイントによってブロックチェーンのブロックチェーン台帳に登録されるように、送金コントラクトに関与した後の送金コントラクトによって制約される。ブロックチェーンでは、複数の台帳ノード(通常、5つ以上の会計ノード)が1つの統合的な分散型台帳を維持管理し、台帳は各アンカーポイントにおける各メンバのブロックチェーン残高を記録している。会計ノードは、ノード間ブロードキャストおよびコンセンサスアルゴリズムを介して、すべてのノードに記録されている台帳コンテンツが一致するようにかつブロックチェーンにおける完全な会計情報となるようにすることができる。したがって、ブロックチェーンに属するすべてのノードが統合的な台帳、すなわち、ブロックチェーン台帳を使用しているとみなすことができる。ブロックチェーンに存在する情報は改竄耐性機能およびトレーサビリティ機能を有しているため、ブロックチェーン台帳に登録された情報は、十分信頼性のあるものであるとともに、すべてのメンバおよびアンカーポイントが信頼できるものであるため、したがって、振込および支払などの様々な資金フローシナリオにおける動作基盤として使用され得る。
加えて、送金コントラクトに関与すると、各メンバは、その後のルーティングの決定のために送金コントラクトにおける各アンカーポイント内のメンバによって設定された信頼性についての状態を記録する。例えば、図2に示しているように、ウォレット2は、アンカーポイント3においてブロックチェーン残高を供託していないが、ウォレット2は、アンカーポイント3を信頼できるアンカーポイントとして設定している。したがって、「ブロックチェーン残高が0である」というメソッドを図2では信頼性を表すために使用しており、ウォレット2がアンカーポイント3において別のメンバからブロックチェーン残高送金を受け取る用意があることを示している。この場合には、アンカーポイント1およびアンカーポイント2はウォレット2が信頼できないアンカーポイントであり得るし、ウォレット2がアンカーポイント1またはアンカーポイント2において別のメンバからブロックチェーン残高送金を受け取る用意がないことを示している。
図2に示した送金シナリオに基づいて、図3は、例示的な実施形態による、越境送金プロセスにおけるインタラクションを図示している概略図である。図3に示しているように、ユーザ1、ユーザ2、ウォレット1、ウォレット2、銀行1〜銀行3、ブロックチェーンなどの間のインタラクションのプロセスは、以下のステップを含み得る。
ステップ301: ウォレット1が、ユーザ1によって開始された送金要求を受信する。
ある実施形態においては、ユーザ1は、送金要求に送金される必要がある資金の金額および支払先を指定し得る。例えば、ユーザ1によって指定された資金額が100元であり、支払先がユーザ2であると仮定する。ユーザ1によって送金要求を開始することに加えて、送金プロシージャはまた、別のシナリオにおける別の方法を使用してトリガされ得る。例えば、ユーザ1は、資金額が100元であり支払先がユーザ2である支払要求を開始し、別の例では、ユーザ2は、資金額が100元であり支払元がユーザ1である取立要求を開始するが、本明細書ではこのことに限定されない。
ステップ302: ウォレット1が、ユーザ1に対応する顧客資金口座1内の残高が十分であることを確認するとともに、支払先としての役割を果たしているユーザ2が存在していることをウォレット2に確認する。
ある実施形態においては、図2に示しているように、ユーザ1に対応する顧客資金口座1内の残高が振り込まれる必要がある100元より多い500元である場合には、残高が十分であるとみなして、または、残高が振り込まれる必要がある100元より少ない場合には、残高が十分でないことを示して、ウォレット1は送金を直ちに終了して送金失敗通知メッセージをユーザ1に返信し得る。
ある実施形態においては、ウォレット1は、支払先情報をウォレット2に送信し得るし、ウォレット2は、支払先情報が有効であるかどうかを決定する。支払先情報は、支払先名、支払先口座番号、口座を保有する銀行などを含み得るが、本明細書ではこのことに限定されない。ウォレット2は、支払先情報の有効性を検証した後にウォレット1に対応する検証結果を返信し得る。支払先が存在しないとみなされた場合には、ウォレット1は、送金を直ちに終了して送金失敗通知メッセージをユーザ1に返信し得る。
ステップ303: ウォレット1が、ユーザ1によって開始されたユーザ2への送金イベントに対してコンプライアンスチェックを行い得る。
ある実施形態においては、ウォレット1は、ユーザ1にドキュメント提出エントリを提供し得るし、ユーザ1は、送金イベントのチェック用ドキュメントを提供する。ユーザ1は、送金効率を改善するために、すべての送金イベントのために使用され得る静的ドキュメント(ユーザ1の身分証明書の写真など)を事前に提出し、送金中のたびに対応する送金イベントについての動的ドキュメント(直近の送金記録など)を提出し得る。
ある実施形態においては、送金イベントのためのウォレット1によって行われるコンプライアンスチェックは、Know Your Customer(KYC))チェック、Anti-Money Laundering(AML)チェックなどの少なくとも1つを含み得るが、本明細書ではこのことに限定されない。
ある実施形態においては、ウォレット1によって取得されたコンプライアンスチェック結果が要件を満たしていない場合には、ウォレット1は、送金を直ちに終了して送金失敗通知メッセージをユーザ1に返信し得る、または、ウォレット1は、ユーザ1に少なくとも1つのドキュメント補充機会を提供し得る。例えば、ウォレット1は、ユーザ1に最大2回の機会を提供し得る。ユーザ1が3回以上ドキュメントを補充しコンプライアンスチェック結果がそれでも要件を満たしていない場合には、ウォレット1は、送金を終了して送金失敗通知メッセージをユーザ1に返信し得る。しかしながら、図4に示しているように、ウォレット1によって取得されたコンプライアンスチェック結果が要件を満たしている場合には、ウォレット1は、ユーザ1に対応する顧客資金口座1から100元を引き落として、100元をウォレット1の自己所有口座1に振り込み得る。
ステップ304: ウォレット1が、「ルーティング要求」コントラクトオペレーションを開始する。
ステップ305: ウォレット1が、送金ルートを決定する。
ある実施形態においては、送金コントラクトに関与すると、ブロックチェーンに属するメンバは、送金コントラクト、例えば、ここでは「ルーティング要求」コントラクトオペレーションにおいてサポートされるいくつかのコントラクトオペレーションを呼び出し得る。コントラクトオペレーションは、ユーザ1からユーザ2への送金のための送金ルートを決定するために使用され、それによって、送金オペレーションを実施している。
ある実施形態においては、送金ルートは、最も上流のメンバとしての役割を果たしているウォレット1、最も下流のメンバとしての役割を果たしているウォレット2、およびその2つの間にいくつかの中継メンバを含む。本明細書における技術的ソリューションに基づいて、ウォレット2が最終的にユーザ2に送金資金を提供するように、「送金資金(例えば、ユーザ1によって送金されるように予定された100元)がウォレット1からウォレット2へと振り込まれる」という発効を、ブロックチェーン残高フローを介しておよび送金ルート内のブロックチェーン上のアンカーポイントにおいて各メンバによって供託されたブロックチェーン残高を使用して提示する必要がある。
送金ルート内のメンバの間の送金資金フローは、隣接するメンバの間、例えば、ウォレット1と中継メンバとの間、中継メンバの間、および中継メンバとウォレット2との間で行われる、いくつかの回数の資金フローに分割され得る。例えば、送金ルートが「ウォレット1-中継メンバ1-中継メンバ2-ウォレット2」である場合には、隣接するメンバの3つのペアは、「ウォレット1-中継メンバ1」、「中継メンバ1-中継メンバ2」、および「中継メンバ2-ウォレット2」を含み、三度の資金フローは、全部で、ウォレット1から中継メンバ1への資金フロー、中継メンバ1から中継メンバ2への資金フロー、および中継メンバ2からウォレット2への資金フローを含む。各ペアの隣接するメンバの間の資金フローは、ブロックチェーンに属するアンカーポイントを使用して実施される必要があり、2つの条件は、条件(1)あるアンカーポイントにおける隣接するメンバのうちの上流メンバによって供託されたブロックチェーン残高が送金額より大きいことと、条件(2)隣接するメンバのうちの下流メンバがアンカーポイントを信頼できるアンカーポイントとして設定していることとを含む。換言すれば、関連アンカーポイントが、上流メンバと下流メンバとの間に存在する。上流メンバは、資金フローのために関連アンカーポイントにおける十分なブロックチェーン残高を有し、下流メンバは、関連アンカーポイントにおいて振り込まれたブロックチェーン資金を受け取る用意がある。
ウォレット1は、アンカーポイント1〜アンカーポイント3などのアンカーポイントにおいて供託された銀行1〜銀行3などのメンバのブロックチェーン残高を把握するためにウォレット1によって記憶されている完全な会計情報を使用してブロックチェーン台帳を読み込み、コントラクトに記憶されるとともに各メンバに対応する信頼できるアンカーポイントに関して、条件(1)および条件(2)を満足する各メンバの状態を決定し得る、それによって、送金ルートを決定している。
ウォレット1および銀行1を一例として使用する。アンカーポイント1においてウォレット1によって供託されたブロックチェーン残高は、100元の送金額より大きい1000元であり、銀行1は、アンカーポイント1を信頼できるアンカーポイントとして設定している。したがって、アンカーポイント1は、ウォレット1と銀行1との間にある関連アンカーポイントであり、ウォレット1と銀行1との間の資金フローは、アンカーポイント1に基づいて実施され得る。
銀行1および銀行3を一例として使用する。銀行1は、アンカーポイント1においてブロックチェーン残高を供託しておらず(アンカーポイント1が銀行1の信頼できるアンカーポイントであるため、ブロックチェーン残高が0であることは理解できよう)、アンカーポイント2において2000元のブロックチェーン残高を供託する。アンカーポイント2において銀行1によって供託されたブロックチェーン残高は、100元の送金額より大きいが、アンカーポイント2は、銀行3によって設定された信頼できないアンカーポイントである。結果として、関連アンカーポイントが銀行1と銀行3との間には存在せず、資金フローを実施することはできない。加えて、銀行1および銀行2を一例として使用する。アンカーポイント2において銀行1によって供託されたブロックチェーン残高は、100元の送金額より大きい2000元であり、銀行2は、アンカーポイント2を信頼できるアンカーポイントとして設定している。したがって、アンカーポイント2は、銀行1と銀行2との間にある関連アンカーポイントであり、銀行1と銀行2との間の資金フローは、アンカーポイント2に基づいて実施され得る。
同様に、ブロックチェーンに属するメンバの間で条件(1)および条件(2)を満足しているかどうかを、上記の方法を使用して決定し得る。したがって、ウォレット1およびウォレット2を含むいくつかの中継メンバを直列に接続することができることを決定し得る、それによって、完全な送金ルートを取得している。例えば、図5は、例示的な実施形態による、送金ルートの決定を図示している概略図である。図5に示しているように、送金ルートは、ウォレット1-銀行1-銀行2-ウォレット2を含み得るし、ウォレット1と銀行1との間にある関連アンカーポイントはアンカーポイント1であり、銀行1と銀行2との間にある関連アンカーポイントはアンカーポイント2であり、銀行2とウォレット2との間にある関連アンカーポイントはアンカーポイント3である。
ある実施形態においては、ウォレット1は、複数の送金ルートを同時に決定し、最終的に使用されるべき送金ルートを選択し得る。例えば、条件は、最短の経路および最低コストを含み得るが、本明細書ではこのことに限定されない。
ステップ306: ウォレット1が、送金ルート内のすべての中継メンバに対するコンプライアンスチェック要求を開始する。
ある実施形態においては、ウォレット1およびウォレット2が同一の第三者支払プラットフォームに属している場合には、ウォレット1はステップ303においてコンプライアンスチェックを完了しているため、コンプライアンスチェック結果もウォレット2に適用可能である。換言すれば、ウォレット2は、コンプライアンスチェックを繰り返す必要はない。別の実施形態においては、ウォレット1およびウォレット2が異なる第三者支払プラットフォームに属している可能性がある場合には、ウォレット1は、すべての中継メンバおよびウォレット2がコンプライアンスチェックを実施するように、ステップ306においてすべての中継メンバおよびウォレット2に対してコンプライアンスチェック要求を同時に開始し得る。説明を簡潔にするために、ウォレット2がコンプライアンスチェックを別個に実施する必要がない例を以下で使用している。
ある実施形態においては、メンバによって使用されるコンプライアンスチェック方法が異なるため、コンプライアンスチェックは、ユーザ1のチェック用ドキュメントに対して独立して行う必要がある。加えて、ウォレット1は、銀行1および銀行2が中継メンバの間のコンプライアンスチェックを直列的に行う代わりに並行して送金イベントコンプライアンスチェックを開始することができるように、銀行1および銀行2に対してコンプライアンスチェック要求を同時に開始する、それによって、送金イベントコンプライアンスチェックのために消費される時間を短縮し、コンプライアンスチェックの効率を改善している。
ある実施形態においては、ウォレット1は、チェック用ドキュメントに基づいたコンプライアンスチェック、例えば、KYCチェックまたはAMLチェックを実施するために、銀行1および銀行2に、ユーザ1によって提供されたチェック用ドキュメントをプッシュし得る。プッシュプロセスにおけるチェック用ドキュメントの完全性および信頼性を保証するために、プッシュする前に、ウォレット1は、チェック用ドキュメントに対応するデジタルダイジェストを生成し、「エビデンスとしてドキュメントストレージ」コントラクトオペレーションを呼び出すことによってブロックチェーンにデジタルダイジェストを記録し得る。加えて、プッシュされたチェック用ドキュメントを受信した後に、銀行1および銀行2は、ブロックチェーンからデジタルダイジェストを読み込み、デジタルダイジェストを受信したチェック用ドキュメントのデジタルダイジェストを用いてチェックし得る。デジタルダイジェストが同一である場合には、チェック用ドキュメントが完全かつ信頼できるものであることを確認する。さもなければ、チェック用ドキュメントが問題を有していることを示しており、ウォレット1は、再びチェック用ドキュメントを提供する必要がある。
ある実施形態においては、送金ルート内の任意のメンバは、コンプライアンスチェック要求を完了した後にウォレット1に対応するチェック結果を返信し得るし、チェック結果は、メンバによってコンプライアンスチェックを実施するための詳細なデータに対応するデジタルダイジェスト、決定した結果(要件を満たしているまたは要件を満たしていない)、およびメンバの署名情報(チェック結果がメンバからもたらされたものであることを示す)を含み得る。チェック結果に含まれるデジタルダイジェストに対応する詳細なデータは、ユーザ1、ユーザ2などのプライバシー情報、メンバによってコンプライアンスチェックを実施するための守秘義務ルールなどに関連する。したがって、デジタルダイジェストが、チェック結果に含まれているだけであり、特定の詳細なデータは、検証またはチェックのために規制官庁にその後提供するためにメンバだけに記録される。
ステップ303においてウォレット1によって実施されたコンプライアンスチェックと比較して、ステップ306において各中継メンバによって実施されたコンプライアンスチェックがより重要かつ必要なものであることに留意されたい。いくつかのシナリオでは、ステップ303においてウォレット1によって実施されるコンプライアンスチェックを省略することすらできるが、ステップ306において各中継メンバによって実施されるコンプライアンスチェックは多くの場合必要不可欠なものである。
ステップ307: ウォレット1が、「コンプライアンスエビデンスとして格納」コントラクトオペレーションを開始して、ブロックチェーン台帳に取得したチェック結果を記録する。
ある実施形態においては、ウォレット1は、「コンプライアンスエビデンスとして格納」コントラクトオペレーションを開始することによってそれぞれの対応するブロックに銀行1、銀行2などによって返信されたチェック結果を記録し、記録するためにブロックチェーンに属する他のノードにチェック結果をさらにブロードキャストし得る。換言すれば、ウォレット1は、ブロックチェーン台帳にチェック結果を記録する。ブロックチェーンは、チェック結果が、十分信頼性のあるものとなり、その後の検索、チェックなどのために規制官庁に提供することができるように、改竄耐性機能およびトレーサビリティ機能などを有する。
同様に、ステップ303において取得したチェック結果については、ウォレット1も、その後の検索およびチェックのために、「コンプライアンスエビデンスとして格納」コントラクトオペレーションを開始することによって、ブロックチェーン台帳にチェック結果を記録し得る。
ある実施形態においては、いずれかのメンバによって返信されたチェック結果が要件を満たしていない場合には、ウォレット1は、ユーザ1に少なくとも1つのドキュメント補充機会を提供し得る。補充ドキュメントを取得した後に、ウォレット1は、メンバが再びコンプライアンスチェックを行うことができるように、メンバに補充ドキュメントを提供し得る。ウォレット1は、メンバが受信した補充ドキュメントのデジタルダイジェストをブロックチェーン台帳に記録されているデジタルダイジェストと比較するように、ブロックチェーン台帳に補充ドキュメントのデジタルダイジェストを記録し得る、それによって、受信した補充ドキュメントが信頼できるものかどうかを決定している。ウォレット1は、ユーザ1に最大2回の機会を提供し得ると仮定する。ユーザ1が3回以上ドキュメントを補充しメンバによって返信されたチェック結果がそれでも要件を満たしていない場合には、ウォレット1は、送金を終了して送金失敗通知メッセージをユーザ1に返信し得る。
ある実施形態においては、ウォレット1が銀行1および銀行2に対してコンプライアンスチェック要求を開始した後に、返信されたチェック結果を所定の期間(例えば、2分)以内に受信しなかった場合には、チェック結果は、要件を満たしていないものとして決定される。したがって、一方で、「コンプライアンスエビデンスとして格納」コントラクトオペレーションを呼び出すことによって、「要件を満たしていない」というチェック結果をブロックチェーン台帳に記録する。他方で、送金を終了して、送金失敗通知メッセージをユーザ1に返信する。
ステップ308: 銀行1および銀行2のコンプライアンスチェック結果が両方とも要件を満たしている場合には、ウォレット1が、「送金」コントラクトオペレーションを開始して、送金ルートのメンバの間で資金フローを実施する。
ある実施形態においては、「送金」コントラクトオペレーションを実施する前に、図5に示したブロックチェーン残高を、アンカーポイント1においてウォレット1によって供託された1000元のブロックチェーン残高、アンカーポイント2において銀行1によって供託された2000元のブロックチェーン残高、アンカーポイント3において銀行2によって供託された3000元のブロックチェーン残高などを含む、ブロックチェーン台帳に記録する。しかしながら、図6に示しているように、「送金」コントラクトオペレーションを実施した後に、資金フローが送金ルート内のウォレット1、銀行1、銀行2、およびウォレット2の間で逐次行われる。
アンカーポイント1においてウォレット1によって供託されたブロックチェーン残高が1000元から900元に減らされ、アンカーポイント1において銀行1によって供託されたブロックチェーン残高が0元から100元に増やされるように、資金フローは、100元がアンカーポイント1においてウォレット1によって供託されたブロックチェーン残高からアンカーポイント1において銀行1によって供託されたブロックチェーン残高へと振り込まれるアンカーポイント1を使用して、ウォレット1と銀行1との間で実施される。
アンカーポイント2において銀行1によって供託されたブロックチェーン残高が2000元から1900元に減らされ、アンカーポイント2において銀行2によって供託されたブロックチェーン残高が0元から100元に増やされるように、資金フローは、100元がアンカーポイント2において銀行1によって供託されたブロックチェーン残高からアンカーポイント2において銀行2によって供託されたブロックチェーン残高へと振り込まれるアンカーポイント2を使用して、銀行1と銀行2との間で実施される。
アンカーポイント3において銀行2によって供託されたブロックチェーン残高が3000元から2900元に減らされ、アンカーポイント3においてウォレット2によって供託されたブロックチェーン残高が0元から100元に増やされるように、資金フローは、100元がアンカーポイント3において銀行2によって供託されたブロックチェーン残高からアンカーポイント3においてウォレット2によって供託されたブロックチェーン残高へと振り込まれるアンカーポイント3を使用して、銀行2とウォレット2との間で実施される。
ウォレット1と銀行1との間、銀行1と銀行2との間、銀行2とウォレット2との間の資金フロープロセスにおいて、ウォレット1の自己所有口座1はユーザ1の顧客資金口座1から振り込まれた100元の増額を有し、アンカーポイント1においてウォレット1によって供託されたブロックチェーン残高は100元ほど減らされており、ウォレット1の資金フロー正味金額が0元であることと等価である。アンカーポイント1において銀行1によって供託されたブロックチェーン残高は100元ほど増やされ、アンカーポイント2において銀行1によって供託されたブロックチェーン残高は100元ほど減らされており、銀行1の資金フロー正味金額が0元であることと等価である。アンカーポイント2において銀行2によって供託されたブロックチェーン残高は100元ほど増やされ、アンカーポイント3において銀行2によって供託されたブロックチェーン残高は100元ほど減らされており、銀行2の資金フロー正味金額が0元であることと等価である。アンカーポイント3においてウォレット2によって供託されたブロックチェーン残高は100元ほど増やされており、ユーザ1によって送金された100元が送金ルートを使用してウォレット2のブロックチェーン残高に振り込まれることと等価である。
ブロックチェーンに属するすべてのノードが統合的なブロックチェーン台帳を使用しているため、すなわち、すべてのアンカーポイントにおいてすべてのメンバによって供託されたブロックチェーン残高がブロックチェーン台帳に記録されているため、ブロックチェーンが、アンカーポイント1においてウォレット1によって供託されたブロックチェーン残高、アンカーポイント1およびアンカーポイント2において銀行1によって供託されたブロックチェーン残高、アンカーポイント2およびアンカーポイント3において銀行2によって供託されたブロックチェーン残高、およびアンカーポイント3においてウォレット2によって供託されたブロックチェーン残高に対して、統合的な調整を同時に行うことができ、その結果、ウォレット1のブロックチェーン残高が100元に減らされ、ウォレット2のブロックチェーン残高が100元に増やされており、すべての中継メンバのブロックチェーン残高が変化しないことと等価であることに留意されたい。
したがって、図7に示しているように、ウォレット2は、自己所有口座2からウォレット2おいてユーザ2によって開設された顧客資金口座2に100元を振り込み得る。アンカーポイント3においてウォレット2によって供託されたブロックチェーン残高が100元増えることと相まって、ウォレット2の最終的な資金フロー正味金額が0元であり、ユーザ2がユーザ1から100元を取得することと等価である。
ステップ309: ウォレット1およびウォレット2が、ブロックチェーン残高変化を別々に検出する。
ステップ310: ウォレット1が、送金成功通知をユーザ1に送信し、ウォレット2が、取立通知をユーザ2に送信する。
上記の実施形態においては、ウォレット1が自己所有口座1を有しておりウォレット2が自己所有口座2を有していることに留意されたい。ウォレット1は、ユーザ1によって提供された送金資金を取得するために自己所有口座1とユーザ1の顧客資金口座1との間で資金を振り込み、ウォレット2は、ユーザ2に送金資金を提供するために自己所有口座2とユーザ2の顧客資金口座2との間で資金を振り込み、ウォレット1およびウォレット2のブロックチェーン残高は、自己所有口座とブロックチェーン残高との間の資金フロー正味金額が0元であるという条件で、別個に変化する。別の実施形態においては、例えば、以下のような別の処理方法が存在する。
図8は、例示的な実施形態による、送金資金がブロックチェーン残高に振り込まれる送金を図示している概略図である。図8に示しているように、アンカーポイント1においてウォレット1によって供託された初期ブロックチェーン残高が1000元であることはブロックチェーン台帳に記録されているブロックチェーン残高の変化情報から理解できよう。ユーザ1がユーザ2に対する送金要求を開始した後に、ウォレット1は、ユーザ1に対応する顧客資金口座1から100元を引き出し、アンカーポイント1においてウォレット1によって供託されたブロックチェーン残高に引き出した100元を供託し、その結果、アンカーポイント1におけるウォレット1のブロックチェーン残高が1100元に増える。その後、ウォレット1は、アンカーポイント1においてウォレット1によって供託されたブロックチェーン残高が1100元から1000元に減らされ、アンカーポイント1において銀行1によって供託されたブロックチェーン残高が0元から100元に増やされるように、「送金」コントラクトオペレーションを呼び出す。加えて、100元が、図7に示した実施形態と同様の実施形態に基づいて、銀行1、銀行2、およびウォレット2の間で、逐次振り込まれ、その結果、アンカーポイント3においてウォレット2によって供託されたブロックチェーン残高が0元から100元に増える。最終的に、ウォレット2は、アンカーポイント3において供託された100元を引き出し、ユーザ2の顧客資金口座2へ100元を振り込んで、ユーザ1からユーザ2への送金を完了する。上記のプロセスに基づいて、ウォレット1およびウォレット2は、ブロックチェーン残高にユーザ1によって提供された資金を直ちに供託して、自己所有口座1および自己所有口座2を開設することなくブロックチェーンにおける資金フローに関与している。
図9は、例示的な実施形態による、与信枠ベースの送金を図示している概略図である。図9に示しているように、アンカーポイント1においてウォレット1によって供託された初期ブロックチェーン残高が1000元であることはブロックチェーン台帳に記録されているブロックチェーン残高の変化情報から理解できよう。ユーザ1がユーザ2に対する送金要求を開始した後に、ウォレット1は、ユーザ1に対してウォレット1が保証している与信枠に基づいてユーザ1の送金オペレーションのために前資金支払を行い、ユーザ1がその後の返済を行うことを待機する。したがって、ウォレット1、銀行1、銀行2、およびウォレット2の間の資金フローに基づいて、アンカーポイント1においてウォレット1によって供託されたブロックチェーン残高が1000元から900元に減らされ、資金フロー正味金額が100元ほど減らされており、銀行1、銀行2、およびウォレット2のすべての資金フロー正味金額は0元である。特定の資金フロープロセスについては、上記の実施形態を参照されたい。簡潔にするために詳細はここでは省略する。
ステップ311: デイリー決済の後に、ウォレット1およびウォレット2が、アンカーポイントにおいて供託されたブロックチェーン残高に対して水位リカバリを行う。
ある実施形態においては、ブロックチェーンの各メンバは、所定の期間に基づいて資本決済を行う。例えば、所定の期間は、1日、3日、または1週間であり得るが、本明細書ではこのことに限定されない。例えば、所定の期間が1日である場合には、各メンバは、毎日特定の時間(例えば、18:00)に資本決済、すなわち、デイリー決済を行う。ブロックチェーン残高は、バケツの中の水位変化のように、トランザクションによって絶えず変化するため、したがって、ブロックチェーン残高調整を「水位」調整と端的に称し得る。
例えば、図10は、例示的な実施形態による、資本決済中において生成されるトランザクション情報を図示している概略図である。図10に示しているように、ウォレット1、ウォレット2、および銀行1〜銀行3は全部で2つのトランザクションに当日は関与しており、第1のトランザクションはユーザ1がユーザ2へ100元を振り込むことであり、第2のトランザクションはユーザ2がユーザ1へ50元を振り込むことであると仮定する。したがって、アンカーポイント1においてウォレット1によって供託された残りのブロックチェーン残高が950元であること、アンカーポイント1において銀行1によって供託されたブロックチェーン残高が50元であること、アンカーポイント2において銀行1によって供託されたブロックチェーン残高が1950元であること、アンカーポイント2において銀行2によって供託されたブロックチェーン残高が50元であること、アンカーポイント3において銀行2によって供託されたブロックチェーン残高が2950元であること、アンカーポイント3においてウォレット2によって供託されたブロックチェーン残高が50元であることなどが決済中に決定され得る。
ブロックチェーン台帳に記録されているメンバの間の資金フローに関する情報に基づいて、アンカーポイント1においてウォレット1によって供託されたブロックチェーン残高が1000元から900元にそして900元から950元に変化していると決定され得る。したがって、最終的な正味資金増減額は、950-1000=-50元、すなわち、50元減っている。したがって、図11に示しているように、ウォレット1は、ブロックチェーン残高が950元から1000元にリカバリされ、ブロックチェーン残高の変化情報がアンカーポイント1によってブロックチェーン台帳に登録されるように、アンカーポイント1において供託されたブロックチェーン残高に自己所有口座1から50元を供託し得る(自己所有口座1の残高がそれに応じて50元から0元に減らされる)。資金供託コントラクトオペレーションを開始することによって、ウォレット1は、アンカーポイント1において供託されたブロックチェーン残高に自己所有口座1から50元を供託し得る。
同様に、ブロックチェーン台帳に記録されているメンバの間の資金フローに関する情報に基づいて、アンカーポイント3においてウォレット2によって供託されたブロックチェーン残高が0元から100元にそして100元から50元に変化していると決定され得る。したがって、最終的な正味資金増減額は、50-0=50元、すなわち、50元増えている。したがって、図11に示しているように、ウォレット2は、ブロックチェーン残高が50元から0元にリカバリされ、ブロックチェーン残高の変化情報がアンカーポイント3によってブロックチェーン台帳に登録されるように、アンカーポイント1において供託されたブロックチェーン残高から50元を引き出し、自己所有口座2に50元を供託し得る(自己所有口座2の残高がそれに応じて150元から200元に増やされる)。資金引出コントラクトオペレーションを開始することによって、ウォレット2は、アンカーポイント1において供託されたブロックチェーン残高から50元を引き出し、自己所有口座2に50元を供託し得る。
ステップ312: 履歴変化データに基づいて銀行1のブロックチェーン残高に対して水位調整を行う。
ある実施形態においては、銀行1は、ブロックチェーン台帳から、銀行1が関与しているすべてのトランザクションを読み込んで、銀行1の履歴変化データを取得し得る。したがって、銀行1は、履歴変化データのすべてまたは特定の期間(例えば、直近の3日、直近の1週間、または直近5週の月曜)における履歴変化データに基づいて翌日の各アンカーポイントにおけるブロックチェーン残高の変化を予測して、それに応じてブロックチェーン残高に対して水位調整を行い得る。
例えば、履歴変化データは、アンカーポイント1において銀行1によって供託されたブロックチェーン残高の初期金額が0元であるときに正味資金増減額が100元を超過しておらず、アンカーポイント2において銀行1によって供託されたブロックチェーン残高の初期金額が2000元であるときに正味資金増減額が1000元を超過していないことを示している。この場合には、図12に示しているように、0元のアンカーポイント1における初期金額と100元の値との間の差が小さいため、アンカーポイント1において銀行1によって供託されたブロックチェーン残高を0元となるように維持管理することができ、したがって、アンカーポイント1において銀行1によって供託されたブロックチェーン残高が0元にリカバリされるように、50元を、アンカーポイント1において供託されたブロックチェーン残高から引き出す必要があり、銀行1の自己所有口座に供託する必要がある。例えば、銀行1は、資金引出コントラクトオペレーションを開始して、アンカーポイント1において供託されたブロックチェーン残高から50元を引き出し、銀行1の自己所有口座に50元を供託し得る。2000元のアンカーポイント2における初期金額と1000元の値の差が大きいため、アンカーポイント2において銀行1によって供託されたブロックチェーン残高を1000元に調整することができ、したがって、アンカーポイント2において銀行1によって供託されたブロックチェーン残高が1000元に減らされるように、950元を、アンカーポイント2において供託されたブロックチェーン残高から引き出す必要があり、銀行1の自己所有口座に供託する必要がある。例えば、銀行1は、アンカーポイント2において供託されたブロックチェーン残高から950元を引き出して、銀行1の自己所有口座に950元を供託するために、資金引出コントラクトオペレーションを開始し得る。
水位調整プロセスにおいてブロックチェーン残高とメンバの自己所有口座との間で調整が行われ得ることは図11および図12に示した実施形態から理解できよう。
ステップ313: 資金フロー予測データに基づいて銀行2のブロックチェーン残高に対して水位調整を行う。
ある実施形態においては、銀行2は、ネットワーク全体において生じたすべてのトランザクションなどといったブロックチェーン台帳からの情報を読み込み、情報に基づいて対応する資金フロー予測データを生成し得る。例えば、情報は、全ネットワーク内の翌日のトランザクションであり得る、または翌日のブロックチェーン残高変化を少なくとも含み得る。このように、ブロックチェーン残高に対して水位調整を行う。当然のことながら、資金フロー予測データは、銀行2の代わりに、別のメンバ、アンカーポイント、ブロックチェーン、または任意のオブジェクトによって生成され得るが、本明細書ではこのことに限定されない。
例えば、図13に示しているように、翌日には、銀行2がアンカーポイント2における正味資金増減額が1000元近くとなり、アンカーポイント3における正味資金増減額の正味金額が2000元未満となると仮定する。銀行2は、アンカーポイント3において銀行2によって供託されたブロックチェーン残高からアンカーポイント2において銀行2によって供託されたブロックチェーン残高に950元を振り込み得る。例えば、銀行2は、資金引出コントラクトオペレーションを開始して、アンカーポイント3において供託されたブロックチェーン残高から950元を引き出し、その後、アンカーポイント2において供託されたブロックチェーン残高に950元を供託するために資金供託コントラクトオペレーションを開始することができ、その結果、アンカーポイント2において供託されたブロックチェーン残高が1000元に増やされ、アンカーポイント3において供託されたブロックチェーン残高が2000元に減らされており、それによって、翌日のアンカーポイント2およびアンカーポイント3における資金変化を予測するための要件を満足している。
複数のアンカーポイントにおけるブロックチェーン残高が水位調整プロセスにおいて調整されることは図13に示した実施形態から理解できよう。
ステップ314: 銀行3のブロックチェーン残高を手動で調整する。
ある実施形態においては、各メンバは、水位リカバリソリューション、履歴変化データに基づいて水位調整を行うソリューション、資金フロー予測データに基づいて水位調整を行うソリューション、手作業の水位調整ソリューションなどのうちのいずれか1つまたはその組合せを使用し得る(例えば、水位リカバリソリューションがいくつかのアンカーポイントにおけるブロックチェーン残高のために使用され、履歴変化データに基づいて水位調整を行うソリューションがいくつかの他のアンカーポイントにおけるブロックチェーン残高のために使用される)が、本明細書ではこのことに限定されない。
ある実施形態においては、メンバは、「残高調整」コントラクトオペレーションを呼び出すことによって各アンカーポイントにおけるメンバのブロックチェーン残高に対して水位調整を行い得る。「残高調整」コントラクトオペレーションは、上記で説明した資金供託コントラクトオペレーション、資金引出コントラクトオペレーションなどを含み得る。ブロックチェーン残高の間およびブロックチェーン残高と自己所有口座との間の調整に加えて、メンバがアンカーポイントにおいて与信枠を取得している場合には、「残高調整」コントラクトオペレーションは、与信枠に基づいてメンバによって供託されたブロックチェーン残高を調整する(換言すれば、ブロックチェーン台帳に登録されたブロックチェーン残高の値を変更する)ようにアンカーポイントに命令し得る。
本明細書では複数のタイプのブロックチェーンが存在し得るが、本明細書ではこのことに限定されないことに留意されたい。例えば、ブロックチェーンがコンソーシアムチェーンである場合には、送金ルート内のすべてのメンバは、メンバが対応するオペレーション権を有していることを保証するために、コンソーシアムチェーン内のメンバとなる。
図14は、例示的な実施形態による、デバイスを図示している概略構造図である。図14を参照すれば、ハードウェアに関しては、デバイスは、プロセッサ1402、内部バス1404、ネットワークインターフェース1406、メモリ1408、および不揮発性メモリ1410を含み、当然のことながら、他のサービスによって必要とされるハードウェアをさらに含み得る。プロセッサ1402は、不揮発性メモリ1410から対応するコンピュータプログラムを読み込み、実行するためにメモリ1408にコンピュータプログラムを記憶し、資金フロー装置を論理的に形成する。当然のことながら、ソフトウェア実施形態に加えて、本明細書の1つまたは複数の実施形態は、他の実施形態、例えば、ロジックデバイスまたはハードウェアとソフトウェアとの組合せを排除していない。換言すれば、以下の処理プロシージャの実行の主体は、論理ユニットに限定されず、ハードウェアまたはロジックデバイスでもあり得る。
図15を参照すれば、ソフトウェア実施形態においては、資金フロー装置は、次のように、ブロックチェーンの第1のメンバが支払元と支払先との間の指定金額の資金フローのための要求を受信することができるように構成される、要求受信ユニット1501と、第1のメンバがブロックチェーンにおける第1のメンバと支払先に対応する第2のメンバとの間の資金フロールートを決定することができるように構成される、ルート決定ユニット1502であって、資金フロールートは、第1のメンバ、第2のメンバ、およびいくつかの中継メンバを含み、ブロックチェーンのすべてのアンカーポイントにおいて資金フロールートのすべてのメンバによって供託されたブロックチェーン残高は、ブロックチェーンのブロックチェーン台帳に登録される、ルート決定ユニット1502と、第1のメンバが資金フローコントラクトオペレーションを開始することができるように構成される、オペレーション開始ユニット1503であって、資金フローコントラクトオペレーションを実施した後に、ブロックチェーン台帳に登録された資金フロールートのすべてのメンバのブロックチェーン残高は、第2のメンバが指定金額の資金を支払先に支払うように、統合的に変化する、オペレーション開始ユニット1503とを含み得る。
必要に応じて、要求受信ユニット1501は、第1のメンバが支払先に対する支払元によって開始された資金支払要求を受信することができるように構成される、または、第1のメンバが支払元に対する支払先によって開始された資金受取要求を受信することができるように構成される。
必要に応じて、関連アンカーポイントは、資金フロールート内の隣接するメンバの間に存在しており、関連アンカーポイントにおいて隣接するメンバのうちの上流メンバによって供託されたブロックチェーン残高は、指定金額より大きく、関連アンカーポイントは、下流メンバによって信頼できるアンカーポイントとして設定されている。
必要に応じて、ルート決定ユニット1502は、第1のメンバがルート選択コントラクトオペレーションを開始することができるように構成される、ここで、ルート選択コントラクトオペレーションを実施した後に、資金フロールートは、各アンカーポイント内の各メンバによって設定された信頼性についての状態およびブロックチェーン台帳に登録された各アンカーポイントにおける各メンバのブロックチェーン残高の供託状態に基づいて決定される。
必要に応じて、資金フローコントラクトオペレーションを実施した後に、ブロックチェーン台帳に登録された資金フロールートのすべてのメンバのブロックチェーン残高が統合的に変化するように、関連アンカーポイントにおいて隣接するメンバのうちの上流メンバによって供託されたブロックチェーン残高は、指定金額ほど減らされ、関連アンカーポイントにおいて下流メンバによって供託されたブロックチェーン残高は、指定金額ほど増やされる。
必要に応じて、オペレーション開始ユニット1503は、支払元によって提供された指定金額の資金を取得して第1のメンバのブロックチェーン残高または第1のメンバの自己所有口座に指定金額の資金を供託した後に、第1のメンバが資金フローコントラクトオペレーションを開始することができるように構成される、または、支払元によって提供された指定金額の資金を取得する前に、第1のメンバが支払元の与信枠に基づいて資金フローコントラクトオペレーションを開始することができるように構成される。
必要に応じて、支払先によって受信される指定金額の資金は、第2のメンバのブロックチェーン残高または第2のメンバの自己所有口座からもたらされる。
必要に応じて、資金フローのための要求に基づいて第1のメンバと第2のメンバとの間で行われる資金フローは、越境資金フローである。
必要に応じて、資金フローのための要求に基づいて第1のメンバと第2のメンバとの間で行われる資金フローは、送金、支払、または取立である。
必要に応じて、資金フロールート内のすべてのメンバは、異なる機関または同一の機関の異なる支店に属する。
必要に応じて、ブロックチェーンは、コンソーシアムチェーンであり、資金フロールート内の各メンバは、コンソーシアムチェーンのメンバである。
図16を参照すれば、ソフトウェア実施形態においては、資金フロー装置は、次のように、ブロックチェーンの第1のメンバが支払元と支払先との間の指定金額の資金フローのための要求を受信することができるように構成される、要求受信ユニット1601と、第1のメンバがブロックチェーンにおける第1のメンバと支払先に対応する第2のメンバとの間の資金フロールートを決定することができるように構成される、ルート決定ユニット1602であって、資金フロールートは、第1のメンバおよび第2のメンバを含み、ブロックチェーンのすべてのアンカーポイントにおいて資金フロールートのすべてのメンバによって供託されたブロックチェーン残高は、ブロックチェーンのブロックチェーン台帳に登録される、ルート決定ユニット1602と、第1のメンバが資金フローコントラクトオペレーションを開始することができるように構成される、オペレーション開始ユニット1603であって、資金フローコントラクトオペレーションを実施した後に、ブロックチェーン台帳に登録された資金フロールートのすべてのメンバのブロックチェーン残高は、第2のメンバが指定金額の資金を支払先に支払うように、統合的に変化する、オペレーション開始ユニット1603とを含み得る。
必要に応じて、要求受信ユニット1601は、第1のメンバが支払先に対する支払元によって開始された資金支払要求を受信することができるように構成される、または、第1のメンバが支払元に対する支払先によって開始された資金受取要求を受信することができるように構成される。
必要に応じて、関連アンカーポイントが第1のメンバと第2のメンバとの間に存在し、関連アンカーポイントにおいて第1のメンバによって供託されたブロックチェーン残高は指定金額より大きく、関連アンカーポイントは、第2のメンバによって信頼できるアンカーポイントとして設定されている。
必要に応じて、ルート決定ユニット1602は、第1のメンバがルート選択コントラクトオペレーションを開始することができるように構成される、ここで、ルート選択コントラクトオペレーションを実施した後に、資金フロールートは、各アンカーポイント内の各メンバによって設定された信頼性についての状態およびブロックチェーン台帳に登録された各アンカーポイントにおける各メンバのブロックチェーン残高の供託状態に基づいて決定される。
必要に応じて、資金フローコントラクトオペレーションを実施した後に、ブロックチェーン台帳に登録された資金フロールートのすべてのメンバのブロックチェーン残高が統合的に変化するように、関連アンカーポイントにおいて隣接するメンバのうちの上流メンバによって供託されたブロックチェーン残高は、指定金額ほど減らされ、関連アンカーポイントにおいて下流メンバによって供託されたブロックチェーン残高は、指定金額ほど増やされる。
必要に応じて、オペレーション開始ユニット1603は、支払元によって提供された指定金額の資金を取得して第1のメンバのブロックチェーン残高または第1のメンバの自己所有口座に指定金額の資金を供託した後に、第1のメンバが資金フローコントラクトオペレーションを開始することができるように構成される、または、支払元によって提供された指定金額の資金を取得する前に、第1のメンバが支払元の与信枠に基づいて資金フローコントラクトオペレーションを開始することができるように構成される。
必要に応じて、支払先によって受信される指定金額の資金は、第2のメンバのブロックチェーン残高または第2のメンバの自己所有口座からもたらされる。
必要に応じて、資金フローのための要求に基づいて第1のメンバと第2のメンバとの間で行われる資金フローは、越境資金フローである。
必要に応じて、資金フローのための要求に基づいて第1のメンバと第2のメンバとの間で行われる資金フローは、送金、支払、または取立である。
必要に応じて、資金フロールート内のすべてのメンバは、異なる機関または同一の機関の異なる支店に属する。
必要に応じて、ブロックチェーンは、コンソーシアムチェーンであり、資金フロールート内の各メンバは、コンソーシアムチェーンのメンバである。
上記で実施形態において説明したシステム、装置、モジュール、またはユニットは、コンピュータチップもしくはエンティティを使用して実装され得る、または、ある機能を有する製品を使用して実装され得る。典型的な実施デバイスは、コンピュータであり、コンピュータは、パーソナルコンピュータ、ラップトップコンピュータ、セルラ電話、カメラ電話、スマートフォン、携帯情報端末、メディアプレーヤ、ナビゲーションデバイス、電子メール送受信デバイス、ゲームコンソール、タブレットコンピュータ、ウェアラブルデバイス、またはこれらのデバイスの任意の組合せであり得る。
典型的な構成においては、コンピュータは、1つまたは複数のプロセッサ(CPU)、入力/出力インターフェース、ネットワークインターフェース、およびメモリを含む。
メモリは、例えば、リードオンリーメモリ(ROM)またはフラッシュメモリ(フラッシュRAM)といった、コンピュータ可読媒体に存在する、非持続性メモリ、ランダムアクセスメモリ(RAM)、および/または不揮発性メモリを含み得る。メモリは、コンピュータ可読媒体の例である。
コンピュータ可読媒体は、任意の方法または技術を使用して情報ストレージを実装し得る、持続性、非持続性、ムーバブル、および非ムーバブル媒体を含む。情報は、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータであり得る。コンピュータ記憶媒体は、相変化ランダムアクセスメモリ(PRAM)、スタティックランダムアクセスメモリ(SRAM)、ダイナミックランダムアクセスメモリ(DRAM)、別のタイプのランダムアクセスメモリ(RAM)と、リードオンリーメモリ(ROM)、電気的消去可能プログラマブルリードオンリーメモリ(EEPROM)、フラッシュメモリ、もしくは別のメモリ技術と、コンパクトディスクリードオンリーメモリ(CD-ROM)、デジタル多用途ディスク(DVD)、もしくは別の光学ストレージと、磁気テープ、磁気ディスクストレージ、量子メモリ、グラフェンベースの記憶媒体、別の磁気記憶デバイスと、または任意の他の非伝送メディアとを含むがこれらに限定されない。コンピュータ記憶媒体は、コンピューティングデバイスによってアクセス可能な情報を記憶するために使用され得る。本明細書における定義に基づけば、コンピュータ可読媒体は、例えば、変調データ信号およびキャリアといった、一時的コンピュータ可読媒体(一時的媒体)を含まない。
「含む」、「備える」といった用語、またはそれらの任意の他の類型は、非排他的な包含をカバーすることを意図しており、その結果、多くの要素を含むプロセス、方法、商品、もしくはデバイスが、これらの要素を含むだけでなく、明示的に記載していない他の要素も含む、または、そのようなプロセス、方法、商品、もしくはデバイスに本来備わっている要素をさらに含むことをさらに留意されたい。「・・・を含む」で終わる要素は、さらなる制約がない状態では、要素を含むプロセス、方法、商品、またはデバイスにおける追加の同一要素の存在を除外することはしない。
本明細書の特定の実施形態を上記で説明している。他の実施形態も添付の特許請求の範囲の範囲に含まれるものとする。時として、特許請求の範囲において説明したアクションまたはステップは実施形態における順序とは異なる順序で行われ得るし、所望の結果が依然として達成され得る。加えて、添付の図面において説明したプロセスは、所望の結果を達成するために特定の実行順序を必ずしも必要とするわけではない。いくつかの実施形態においては、マルチタスク処理およびパラレル処理が有利となり得る。
本明細書の1つまたは複数の実施形態において使用している用語は、特定の実施形態を説明する目的のために使用されているに過ぎず、本明細書の実施形態の1つまたは複数に限定することを意図したものではない。本明細書および添付の特許請求の範囲において使用している単数形についての「a」、「said」、および「the」という用語は、文脈において明示的に特に定めのない限り、複数形も含むことを意図している。本明細書において使用している「および/または」という用語が1つまたは複数の関連する記載事項の可能な組合せの一部またはすべてを示すとともに含むとも理解すべきである。
第1の、第2の、第3のなどの用語が様々なタイプの情報を説明するために本明細書の1つまたは複数の実施形態において使用され得るが、情報がそのような用語に限定されないことを理解されたい。これらの用語は、同一のタイプの情報を区別するために使用しているに過ぎない。例えば、本明細書の1つまたは複数の実施形態の範囲から逸脱しない限り、第1の情報を第2の情報とも称し得る。同様に、第2の情報を第1の情報とも称し得る。文脈に応じて、例えば、本明細書で使用される「場合に」といった単語は、「間に」、「際に」、または「と決定したことに応答して」として解釈することができる。
上記の説明は、本明細書の1つまたは複数の実施形態の例示的な実施形態に過ぎず、本明細書の1つまたは複数の実施形態を限定することを意図したものではない。本明細書の1つまたは複数の実施形態の精神および原理から逸脱することなくなされた任意の修正、均等物との置換、改良などは、本明細書の1つまたは複数の実施形態の保護範囲に含まれるものとする。
図17は、本開示の実施形態による、資金フローのためのコンピュータ実施方法1700の例を図示しているフローチャートである。提示を明確にするために、以下の説明は、本説明における他の図に即して方法1700を一般的に説明している。しかしながら、方法1700が、例えば、任意のシステム、環境、ソフトウェア、およびハードウェアによって、または、必要に応じてシステム、環境、ソフトウェア、およびハードウェアの組合せによって、行われ得ることは理解されよう。いくつかの実施形態においては、方法1700の様々なステップは、並列して、組み合わせて、ループして、または任意の順序で実行され得る。
1702において、支払元と支払先との間の指定金額の資金フローのための要求を、ブロックチェーンの第1のメンバによって、受信する。いくつかの実施形態においては、ブロックチェーンの第1のメンバによって、支払元と支払先との間の指定金額の資金フローのための要求を受信するステップは、第1のメンバによって、支払先に対する支払元によって開始された資金支払要求を受信するステップを含む。いくつかの実施形態においては、ブロックチェーンの第1のメンバによって、支払元と支払先との間の指定金額の資金フローのための要求を受信するステップは、第1のメンバによって、支払元に対する支払先によって開始された資金受取要求を受信するステップを含む。いくつかの実施形態においては、支払先によって受信される指定金額の資金は、第2のメンバのブロックチェーン残高または第2のメンバの自己所有口座からもたらされる。いくつかの実施形態においては、方法1700は、資金フローのための要求に対応する資金フローイベントに対してコンプライアンスチェックを行うステップをさらに含む。1702から、方法1700は1704に進む。
1704において、ブロックチェーンにおける第1のメンバと支払先に対応する第2のメンバとの間の資金フロールートを、第1のメンバによって、決定する、ここで、資金フロールートは、第1のメンバ、第2のメンバ、およびいくつかの中継メンバを含み、ブロックチェーンのすべてのアンカーポイントにおいて資金フロールートのすべてのメンバによって供託されたブロックチェーン残高は、ブロックチェーンのブロックチェーン台帳に登録される。いくつかの実施形態においては、関連アンカーポイントは、資金フロールート内の隣接するメンバの間に存在しており、関連アンカーポイントにおいて隣接するメンバのうちの上流メンバによって供託されたブロックチェーン残高は、指定金額より大きく、関連アンカーポイントは、下流メンバによって信頼できるアンカーポイントとして設定されている。いくつかの実施形態においては、第1のメンバによって、ブロックチェーンにおける第1のメンバと支払先に対応する第2のメンバとの間の資金フロールートを決定するステップは、1)第1のメンバによって、ルート選択コントラクトオペレーションを開始するステップであって、ルート選択コントラクトオペレーションを実施した後に、資金フロールートは、各アンカーポイント内の各メンバによって設定された信頼性についての状態およびブロックチェーン台帳に登録された各アンカーポイントにおける各メンバのブロックチェーン残高の供託状態に基づいて決定される、ステップと、2)資金フローコントラクトオペレーションを実施し、関連アンカーポイントにおいて隣接するメンバのうちの上流メンバによって供託されたブロックチェーン残高が指定金額ほど減らされ、関連アンカーポイントにおいて下流メンバによって供託されたブロックチェーン残高が指定金額ほど増やされた後は、ブロックチェーン台帳に登録された資金フロールートのすべてのメンバのブロックチェーン残高を統合的に変化させるステップとを含む。1704から、方法1700は1706に進む。
1706において、資金フローコントラクトオペレーションを、第1のメンバによって、開始する。いくつかの実施形態においては、第1のメンバによって開始される資金フローコントラクトオペレーションは、1)第1のメンバによって、支払元によって提供された指定金額の資金を取得して第1のメンバのブロックチェーン残高または第1のメンバの自己所有口座に指定金額の資金を供託した後に、資金フローコントラクトオペレーションを開始するステップ、または、2)第1のメンバによって、支払元によって提供された指定金額の資金を取得する前に、支払元の与信枠に基づいて資金フローコントラクトオペレーションを開始するステップを含む。1706から、方法1700は1708に進む。
1708において、資金フローコントラクトオペレーションを開始したことに応答して、ブロックチェーン台帳に登録された資金フロールートのすべてのメンバのブロックチェーン残高を統合的に変化させる、ここで、第2のメンバは、指定金額の資金を支払先に支払う。1708の後に、方法1700を停止し得る。
説明した発明特定事項は、資金フローについての従来の方法に対して1つまたは複数の技術的効果/利点を提供している。例えば、説明した発明特定事項の利点は、資金フローのために使用されるブロックチェーンが改竄耐性機能およびトレーサビリティ機能を所有していることであり、その結果、チェック結果は、十分信頼性のあるものとなり、その後の検索およびチェックのために規制官庁に提供することができる。いくつかの実施形態においては、資金フロールートは、各アンカーポイント内の各メンバによって設定された信頼性についての状態およびブロックチェーン台帳に登録された各アンカーポイントにおける各メンバのブロックチェーン残高の供託状態に基づいて決定される、それによって、より高いデータセキュリティ、改竄耐性、および信頼性を保証している。
本明細書において説明した実施形態および動作は、本明細書において開示した構造またはそれらのうちの1つまたは複数の組合せを含む、デジタル電子回路の形式で、またはコンピュータソフトウェア、ファームウェア、もしくはハードウェアの形式で実装され得る。動作は、1つまたは複数のコンピュータ可読記憶デバイス上に記憶されるまたは他のソースから受信されるデータに対してデータ処理装置によって行われる動作として実装され得る。データ処理装置、コンピュータ、またはコンピューティングデバイスは、例として、プログラマブルプロセッサ、コンピュータ、システム・オン・チップ、または前述したもののうちの複数もしくは組合せを含む、処理データのための装置、デバイス、マシンを含み得る。装置は、例えば、中央処理ユニット(CPU)、フィールドプログラマブルゲートアレイ(FPGA)、または特定用途向け集積回路(ASIC)といった、特殊用途ロジック回路を含み得る。装置はまた、例えば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム(例えばオペレーティングシステムもしくはオペレーティングシステムの組合せ)、クロスプラットフォームランタイム環境、仮想マシン、またはそれらのうちの1つもしくは複数の組合せを構成するコードといった、当該コンピュータプログラムのための実行環境を作成するコードを含み得る。装置および実行環境は、ウェブサービス、分散コンピューティング、およびグリッドコンピューティングインフラなどといった、様々な異なるコンピューティングモデルインフラを実現し得る。
コンピュータプログラム(例えば、プログラム、ソフトウェア、ソフトウェアアプリケーション、ソフトウェアモジュール、ソフトウェアユニット、スクリプト、またはコードとしても知られる)は、コンパイル型またはインタプリタ型言語、宣言型または手続き型言語を含む、任意の形式のプログラミング言語で書かれ得るし、スタンドアロンプログラムとして、またはモジュール、コンポーネント、サブルーチン、オブジェクト、もしくはコンピューティング環境における使用に適した他のユニットとしてといったことを含む、任意の形式でデプロイされ得る。プログラムは、他のプログラムまたはデータを保持しているファイルの一部(例えば、マークアップ言語ドキュメントに記憶されている1つまたは複数のスクリプト)に、当該のプログラム専用の単一のファイルに、または複数の協調ファイル(例えば、1つまたは複数のモジュール、サブプログラム、またはコードの一部を記憶するファイル)に記憶され得る。コンピュータプログラムは、1つのコンピュータ上で、または、1つのサイトに位置しもしくは複数のサイトにわたって分散され、通信ネットワークによって相互接続された、複数のコンピュータ上で実行され得る。
コンピュータプログラムの実行のためのプロセッサは、例として、汎用および特殊用途マイクロプロセッサの両方、ならびに任意の種類のデジタルコンピュータの任意の1つまたは複数のプロセッサを含む。一般的に、プロセッサは、リードオンリーメモリもしくはランダムアクセスメモリまたはその両方から命令およびデータを受信することになる。コンピュータの必須の要素は、命令に従ってアクションを行うためのプロセッサと、命令およびデータを記憶するための1つまたは複数のメモリデバイスとである。一般的に、コンピュータはまた、データを記憶するための1つまたは複数のマスストレージデバイスを含むことになる、または、そのようなマスストレージデバイスからデータを受信もしくはそのようなマスストレージデバイスにデータを送信もしくはその両方を行うことが動作可能なように結合されることになる。コンピュータは、例えば、モバイルデバイス、携帯情報端末(PDA)、ゲームコンソール、全地球測位システム(GPS)受信機、またはポータブルストレージデバイスといった、別のデバイスに組み込まれ得る。コンピュータプログラム命令およびデータを記憶するのに適したデバイスは、例として、半導体メモリデバイス、磁気ディスク、および光磁気ディスクといった、不揮発性メモリ、媒体、およびメモリデバイスを含む。プロセッサおよびメモリは、殊用途ロジック回路によって補完され得る、またはそれに組み込まれ得る。
モバイルデバイスは、ハンドセット、ユーザ機器(UE)、モバイル電話(例えば、スマートフォン)、タブレット、ウェアラブルデバイス(例えば、スマートウォッチおよびスマートメガネ)、人体内部の埋め込みデバイス(例えば、バイオセンサ、人工内耳)、または他のタイプのモバイルデバイスを含み得る。モバイルデバイスは、様々な通信ネットワーク(以下で説明)と無線で(例えば、無線周波数(RF)信号を使用して)通信し得る。モバイルデバイスは、モバイルデバイスの現在の環境の特性を決定するためのセンサを含み得る。センサは、カメラ、マイクロフォン、近接センサ、GPSセンサ、モーションセンサ、加速度計、照度センサ、水分センサ、ジャイロスコープ、コンパス、気圧計、指紋センサ、顔認識システム、RFセンサ(例えば、Wi-Fiおよびセルラ無線)、熱センサ、または他のタイプのセンサを含み得る。例えば、カメラは、可動または固定レンズ、フラッシュ、画像センサ、および画像プロセッサを有する、前面または背面カメラを含み得る。カメラは、顔および/または虹彩認識のために細部をキャプチャすることが可能なメガピクセルカメラであり得る。データプロセッサ、およびメモリに記憶されているまたはリモートでアクセスされる認証情報とともに、カメラは、顔認識システムを形成し得る。顔認識システム、または、例えば、マイクロフォン、モーションセンサ、加速度計、GPSセンサ、もしくはRFセンサといった、1つまたは複数のセンサが、ユーザ認証のために使用され得る。
ユーザとのインタラクションを提供するために、実施形態は、例えば、情報を表示するための液晶ディスプレイ(LCD)または有機発光ダイオード(OLED)/仮想現実(VR)/拡張現実(AR)ディスプレイと、ユーザがコンピュータに入力を提供することを可能にするタッチスクリーン、キーボード、およびポインティングデバイスといった、表示デバイスと入力デバイスとを有するコンピュータ上で実施され得る。同様に、他の種類のデバイスがユーザとのインタラクションを提供するために使用され得る。例えば、ユーザに提供されるフィードバックは、例えば、視覚フィードバック、聴覚フィードバック、または触覚フィードバックといった任意の形式の感覚フィードバックであり得るし、ユーザからの入力は、音響、音声、または触覚入力を含む任意の形式で受信され得る。加えて、コンピュータは、ユーザによって使用されるデバイスにドキュメントを送信することおよびユーザによって使用されるデバイスからドキュメントを受信することによって、例えば、ユーザのクライアントデバイス上のウェブブラウザから受信した要求に応答してウェブブラウザにウェブページを送信することによって、ユーザとのインタラクションを行い得る。
実施形態は、任意の形式または媒体の有線または無線デジタルデータ通信(またはその組合せ)、例えば、通信ネットワークによって相互接続されたコンピューティングデバイスを使用して実施され得る。相互接続されたデバイスの例としては、通信ネットワークを介して通常はやりとりする、一般的に互いにリモートに存在するクライアントとサーバとがある。例えば、モバイルデバイスといった、クライアントは、購入、売却、支払、贈与、送付、もしくは貸付のトランザクションを行うもしくはこれらを許可するサーバとのトランザクションを、またはそのようなサーバを介したトランザクションを、それ自身で実行し得る。そのようなトランザクションは、アクションとレスポンスとが時間的にほぼ同じであるリアルタイムであり得る。例えば、個人が、アクションとレスポンスとが実質的に同時に知覚し、個人のアクションの後のレスポンスについての時間差が1ミリ秒(ms)または1秒(s)未満である、またはレスポンスは、システムの処理限界を考慮しつつも意図的な遅延は有していない。
通信ネットワークの例としては、ローカルエリアネットワーク(LAN)、無線アクセスネットワーク(RAN)、メトロポリタンエリアネットワーク(MAN)、およびワイドエリアネットワーク(WAN)を含む。通信ネットワークは、インターネット、別の通信ネットワーク、または通信ネットワークの組合せのすべてまたは一部を含み得る。情報は、ロング・ターム・エボリューション(LTE)、5G、IEEE802、インターネットプロトコル(IP)、または他のプロトコルもしくはプロトコルの組合せを含む、様々なプロトコルおよび標準に準拠した通信ネットワーク上で送信され得る。通信ネットワークは、接続されたコンピューティングデバイス間で、音声、ビデオ、生体、もしくは認証データ、または他の情報を送信し得る。
別個の実施形態として説明した特徴を、組合せで、単一の実施形態で実施し得る一方で、単一の実施形態として説明した特徴を、複数の実施形態で、別々に、または任意の適切なサブコンビネーションで実施し得る。特定の順序で説明および主張した動作は、その特定の順序を必要とするものとして理解されるべきではないし、図示した動作のすべてを行う必要があると理解すべきではない(いくつかの動作がオプションであり得る)。必要に応じて、マルチタスク処理または並列処理(またはマルチタスク処理と並列処理との組合せ)が行われ得る。