(57)【要約】  本発明は、リソースへの条件付きアクセスを可能にする方法に関する。条件は、タスクの実行である。タスクは、別のパーティ又はエンティティの代わりに１つのパーティ又はエンティティにより実行できる。リソースへのアクセスを制御する人、装置、又はシステムは、ブロックチェーン上でのトランザクションのブロードキャストを含むタスクを生成する。特に、トランザクション（タスクの部分）は、ロックアウトプットを含む複数のアウトプットを有する。タスクが完了したときにのみ、リソースへのアクセスを可能にする追加のトランザクション又はメカニズムが生成される。リソースへのアクセスは、（ｉ）条件付きで利用可能にするリソースの初期ブロードキャスト、（ｉｉ）リソースへのアクセスを可能にする条件を満たす又は適合するトランザクションの後のブロードキャスト、により達成される。リソースへのアクセスをロックするために、マルチシグネチャ及び払い戻しメカニズムがパーティにより使用される。これらのマルチシグネチャは、段階及びトランザクションの間に広がる。ブロードキャストされた初期デポジットは、リソースを利用可能にするが、第１マルチシグネチャによりロックされ及び払い戻しメカニズムに割り当てられるので、アクセスは禁止される。タスク、及びブロードキャストされるべきトランザクションが生成され、トランザクションは、第２マルチシグネチャによりセキュアにされ更に払い戻しメカニズムにも割り当てられるロックアウトプットを有する。リソースへのアクセスは、しかしながら、払い戻しメカニズムの両方のマルチシグネチャが署名されること、及びメイントランザクションのブロードキャスト、を要求する。
2021513254.tif 000002
【特許請求の範囲】
【請求項１】
リソースへのアクセスを制御するためにコンピュータにより実施される方法であって、前記アクセスは、第２パーティによりタスクが実行されることを条件とし、前記タスクはブロックチェーンにトランザクションをブロードキャストすることを含み、前記方法は、
第１パーティが、第２パーティと共同して第１マルチシグネチャアドレス及び第２マルチシグネチャアドレスを生成するステップと、
前記第１パーティが、前記第１マルチシグネチャアドレスにリソースを割り当てるデポジットメカニズムをブロードキャストするステップと、
前記第１パーティが、トランザクションの前記ブロードキャストを含むタスクを構築し、前記ブロックチェーン上にブロードキャストするために前記第２パーティへ前記タスクを送信するステップであって、前記トランザクションは前記第２マルチシグネチャアドレスに割り当てられたロックアウトプットを有する、ステップと、
前記第１パーティが、ロックメカニズムを生成し前記第２パーティへ送信する、又は前記第２パーティからロックメカニズムを受信するステップであって、前記ロックメカニズムへのインプットは、それぞれのマルチシグネチャによりロックされた前記リソース及び前記ロックアウトプットであり、アウトプットは前記リソース及び前記ロックアウトプットである、ステップと、
を含み、
前記第１パーティは、前記第１マルチシグネチャ及び前記第２マルチシグネチャに署名して、前記第２パーティが前記第１マルチシグネチャ及び第２マルチシグネチャに署名できるようにし、したがって前記ロックメカニズムへの前記インプットをアンロックすることは、前記アウトプットを前記第２パーティによりアクセス可能なアドレスに割り当てることを可能にし、前記アウトプットは、前記ブロックチェーン上で前記リソース及び前記ロックアウトプットの両方がそれらのマルチシグネチャに割り当てられることを条件とし、
前記トランザクションがブロードキャストされていることを確認すると、前記ロックメカニズムは前記ブロックチェーン上にブロードキャストされて、前記ロックアウトプットを前記第２マルチシグネチャアドレスに割り当て、前記第２パーティが前記リソース及び前記ロックアウトプットにアクセスできるようにする、コンピュータにより実施される方法。
【請求項２】
（ｉ）前記デポジットメカニズムの前記ブロードキャストは、前記トランザクション及び／又はロックメカニズムの前記ブロードキャストを続行し、
（ｉｉ）トランザクションは、トランザクションアウトプットを更に含む、
請求項１に記載のコンピュータにより実施される方法。
【請求項３】
前記デポジットメカニズムは、前記リソースを前記ロックメカニズムの前記インプットに割り当て、前記トランザクションは、前記ロックアウトプットを前記ロックメカニズムの前記インプットに割り当て、
前記第１パーティ及び第２パーティは、前記トランザクションがブロードキャストされる前に、それらの秘密鍵を用いて、前記ロックメカニズムの前記第１マルチシグネチャ及び第２マルチシグネチャに署名し、
前記トランザクションがブロードキャストされ及び前記ロックアウトプットが前記第２マルチシグネチャに割り当てられるとき、前記ロックメカニズムが、前記リソース及び前記ロックアウトプットを前記ロックメカニズムの前記アウトプットに割り当てることができるようにし、前記ロックメカニズムの前記アウトプットは前記第２パーティによりアクセス可能なアドレスである、請求項１又は２に記載のコンピュータにより実施される方法。
【請求項４】
前記第１パーティは、前記ロックメカニズムをブロードキャストする、請求項１乃至３のいずれか一項に記載のコンピュータにより実施される方法。
【請求項５】
リソースへのセキュアタスクに基づくアクセスは、段階を有し、前記段階は、
前記デポジットメカニズムの前記ブロードキャストが前記リソースを前記第１マルチシグネチャアドレスに割り当てる第１段階と、
前記トランザクションの前記ブロードキャストがロックアウトプットを前記第２マルチシグネチャアドレスに割り当てる第２段階と、を含み、
前記第１および第２段階の完了は、タスクの完了する条件を満たし、その結果、前記タスクの完了と引き換えに、続いてブロードキャストされる前記ロックメカニズムが、前記リソース及びロックアウトプットをインプットとして受信し、前記リソース及びロックアウトプットを、前記第２パーティによりアクセス可能なアドレスに割り当てる、請求項１乃至４のいずれか一項に記載のコンピュータにより実施される方法。
【請求項６】
前記第２パーティは第２リソースへのセキュアなタスクに基づくアクセスを提供し、前記アクセスは、前記第１パーティにより第２タスクが実行されることを条件とし、前記第２タスクは、前記第２リソースへのアクセスと引き換えに、前記第１パーティによりブロックチェーンに第２トランザクションをブロードキャストすることを含み、前記方法は、
前記第１パーティが、前記第２パーティと共同して前記第１マルチシグネチャ及び第２マルチシグネチャを生成するステップに加えて、前記第２パーティが、前記第１パーティと共同して第３マルチシグネチャ及び第４マルチシグネチャを生成するステップと、
前記デポジットメカニズムの前記ブロードキャストは、前記第２パーティが前記第３マルチシグネチャアドレスに前記第２リソースを割り当てることを更に含み、
前記第２パーティが、第２トランザクションのブロードキャストを含む第２タスクを構築し、該タスクを前記ブロックチェーン上にブロードキャストするために前記第１パーティへ送信するステップであって、該トランザクションは、
第２トランザクションアウトプットと、
前記第４マルチシグネチャアドレスに割り当てられた第２ロックアウトプットと、を含む、ステップと、
前記第２パーティが、第２ロックメカニズムを生成し前記第１パーティへ送信する、又は前記第１パーティから第２ロックメカニズムを受信するステップであって、前記第２ロックメカニズムへのインプットは、それらのマルチシグネチャによりロックされた前記第２リソース及び前記第２ロックアウトプットであり、前記第２ロックメカニズムからのアウトプットは、前記第２リソース及び前記第２ロックアウトプットである、ステップと、
を更に含み、
前記第２パーティは前記第３マルチシグネチャ及び前記第４マルチシグネチャに署名して、前記第１パーティが前記第３マルチシグネチャ及び第４マルチシグネチャに署名することを可能にし、従って、前記ロックメカニズムへのインプットをアンロックすることは、前記第１パーティによりアクセス可能なアドレスに前記アウトプットを割り当てることができるようにし、前記アウトプットは、前記第２リソース及び前記第２ロックアウトプットがブロックチェーン上でそれらのマルチシグネチャに割り当てられることを条件とし、
前記トランザクションがブロードキャストされていることを確認すると、前記ロックメカニズムは、前記ブロックチェーン上にブロードキャストされ、従って、前記第２ロックアウトプットを前記第４マルチシグネチャアドレスに割り当て、及び前記第１パーティが前記第２リソース及び前記第２ロックアウトプットにアクセスできるようにする、
請求項１乃至５のいずれか一項に記載のコンピュータにより実施される方法。
【請求項７】
ロックメカニズムの前記アウトプットは、タスクを完了したパーティによりアクセス可能な報酬アドレスに割り当てられる、請求項１乃至６のいずれか一項に記載のコンピュータにより実施される方法。
【請求項８】
前記第１パーティは、前記第１マルチシグネチャアドレスにリソースを割り当てるデポジットメカニズムをブロードキャストし、
前記デポジットメカニズムの前記ブロードキャストは、前記第２パーティが前記第３マルチシグネチャアドレスに前記第２リソースを割り当てることを更に含み、
その結果、タスクの完了と引き換えに、前記リソース及び第２リソースへのアクセスが、１つのパーティから別のパーティに提供される、請求項６又は７に記載のコンピュータにより実施される方法。
【請求項９】
前記第１パーティは、前記第３マルチシグネチャアドレスにリソースを割り当てるデポジットメカニズムをブロードキャストし、
前記デポジットメカニズムの前記ブロードキャストは、前記第２パーティが前記第１マルチシグネチャアドレスに前記第２リソースを割り当てることを更に含み、
その結果、パーティが他のパーティにより割り当てられたタスクを完了すると、前記リソース及び第２リソースへのアクセスが前記パーティにより維持される、請求項６又は７に記載のコンピュータにより実施される方法。
【請求項１０】
前記方法は、
第１補償メカニズムを生成するステップであって、前記第１補償メカニズムは、以下：
（ｉ）前記第１パーティが、前記第２パーティの前記トランザクションをブロードキャストした、及び、
（ｉｉ）前記第１パーティが前記第２パーティにトランザクションを送信した後の第２所定時間期間内に、前記第２パーティが前記第１パーティの前記トランザクションをブロードキャストしない、
とき、前記第１パーティが、前記第２パーティにより前記デポジットメカニズムに割り当てられた前記第２リソースを、前記第１パーティによりアクセス可能な補償アドレスに割り当てることができるようにする、ステップ、及び／又は、
第２補償メカニズムを生成するステップであって、前記第２補償メカニズムは、以下：
（ｉｉｉ）前記第２パーティが、前記第１パーティの前記トランザクションをブロードキャストした、及び、
（ｉｖ）前記第２パーティが前記第１パーティへトランザクションを送信した後の第２所定時間期間内に、前記第１パーティが前記第２パーティのトランザクションをブロードキャストしない、
とき、前記第２パーティが、前記第１パーティにより前記デポジットメカニズムに割り当てられた前記リソースを、前記第２パーティによりアクセス可能な補償アドレスに割り当てることができるようにする、ステップ、
を更に含む請求項９に記載のコンピュータにより実施される方法。
【請求項１１】
前記第２パーティが前記第１パーティへトランザクションを送信した後の第１所定時間期間内に、前記第１パーティがブロードキャストするためにそれらのトランザクションに署名し交換しない場合に、前記第２パーティは、前記第２リソースにアクセスし又は再割り当てし、及び／又は、
前記第１パーティが前記第２パーティへトランザクションを送信した後の第１所定時間期間内に、前記第２パーティがそれらのトランザクションに署名し交換しない場合に、前記第１パーティが、前記リソースにアクセスし又は再割り当てする、請求項１乃至１０のいずれか一項に記載のコンピュータにより実施される方法。
【請求項１２】
リソースへのセキュアなタスクに基づくアクセスを構成するためにコンピュータにより実施される方法であって、前記アクセスは、第２パーティによりタスクが実行されることを条件とし、前記タスクは、リソースへのアクセスと引き換えに、ブロックチェーンにトランザクションをブロードキャストすることを含み、前記方法は、
第１パーティが、第２パーティと共同して第１マルチシグネチャアドレス及び第２マルチシグネチャアドレスを生成するステップと、
前記第２パーティが、前記第１マルチシグネチャアドレスにリソースを割り当てるデポジットメカニズムが前記ブロックチェーン上にブロードキャストされたことを検証するステップと、
前記第１パーティから、トランザクションの前記ブロードキャストを含むタスクを受信するステップであって、前記トランザクションは、
前記第２マルチシグネチャアドレスに割り当てられたロックアウトプットと、
任意で、トランザクションアウトプットと、を有する、ステップと、
ロックメカニズムを生成し前記第１パーティへ送信する、又は前記第１パーティからロックメカニズムを受信するステップであって、前記ロックメカニズムへのインプットは、それぞれのマルチシグネチャによりロックされた前記リソース及び前記ロックアウトプットであり、アウトプットは前記リソース及び前記ロックアウトプットである、ステップと、
前記第１マルチシグネチャ及び前記第２マルチシグネチャに署名して、前記第１パーティが前記第１マルチシグネチャ及び第２マルチシグネチャに署名できるようにし、したがって前記ロックメカニズムへの前記インプットをアンロックすることは、前記アウトプットをアクセス可能なアドレスに割り当てることを可能にし、前記アウトプットは、前記ブロックチェーン上で前記リソース及び前記ロックアウトプットの両方がそれらのマルチシグネチャに割り当てられることを条件とする、ステップと、
前記ブロックチェーン上に前記トランザクションをブロードキャストするステップであって、前記ブロードキャストが確認されると、前記ロックメカニズムは前記ブロックチェーン上にブロードキャストされて、前記ロックアウトプットを前記第２マルチシグネチャアドレスに割り当て、前記リソース及び前記ロックアウトプットにアクセスできるようにする、ステップと、
を含むコンピュータにより実施される方法。
【請求項１３】
コンピュータ実行可能命令を含むコンピュータ可読記憶媒体であって、前記コンピュータ実行可能命令は、実行されると、プロセッサを、請求項１乃至１２のいずれか一項に記載の方法を実行するよう構成する、コンピュータ可読記憶媒体。
【請求項１４】
電子装置であって、
インタフェース装置と、
前記インタフェース装置に結合された１つ以上のプロセッサと、
前記１つ以上のプロセッサに結合されたメモリであって、前記メモリはコンピュータ実行可能命令を格納し、前記コンピュータ実行可能命令は、実行されると、前記１つ以上のプロセッサを、請求項１乃至１２のいずれか一項に記載の方法を実行するよう構成する、メモリと、
を含む電子装置。
【請求項１５】
ブロックチェーンネットワークのノードであって、前記ノードは、請求項１乃至１２のいずれか一項に記載の方法を実行するよう構成されるノード。
【請求項１６】
請求項１５に記載のノードを有するブロックチェーンネットワーク。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書は、概して、ブロックチェーンネットワークのノードのようなコンピュータプロセッサ又はそのようなプロセッサのグループに実装するのに適するコンピュータにより実施される方法及びシステムに関する。リソース又はアウトプットへのセキュアな且つ条件付きアクセスのメカニズムを提供する改良された方法が記載される。方法及びメカニズムは、ブロックチェーンを利用して、実行に基づくアクセスの提供される処理のセキュリティ及び効率を向上する。本発明は、限定ではないが、特に、２つ以上のパーティの間の協力に適する。２つ以上のパーティのうちの一方は、タスクに署名し、リソースへのアクセスと引き換えに、複数の協力して構成されたブロードキャストを介して、他方にタスクを委任する。
【背景技術】
【０００２】
本願明細書では、私たちは、全ての形式の電子的な、コンピュータに基づく、分散型台帳を包含するために用語「ブロックチェーン」を使用する。これらは、総意に基づくブロックチェーン及びトランザクションチェーン技術、許可及び未許可台帳、共有台帳、並びにこれらの変形を含む。他のブロックチェーン実装が提案され開発されているが、ブロックチェーン技術の最も広く知られているアプリケーションは、Ｂｉｔｃｏｉｎ台帳である。Ｂｉｔｃｏｉｎは、ここでは、便宜上及び説明の目的で参照されることがあるが、本発明はＢｉｔｃｏｉｎブロックチェーンと共に使用することに限定されず、代替のブロックチェーン実装及びプロトコルが本発明の範囲に包含されることに留意すべきである。用語「Ｂｉｔｃｏｉｎ」は、ここでは、Ｂｉｔｃｏｉｎプロトコルから派生するプロトコル又は関連する実装の全ての変形及びバージョンを包含するために使用される。用語「ユーザ」は、ここでは、人間またはプロセッサに基づくリソースを表してよい。ブロックチェーンは、コンピュータに基づく非集中型の分散型システムとして実装されるピアツーピアの電子台帳であり、ブロックにより構成され、ブロックはまたトランザクションにより構成される。
【０００３】
各トランザクションは、ブロックチェーンシステムの中の参加者間でデジタルアセットの制御の移転を符号化するデータ構造であり、少なくとも１つのインプット及び少なくとも１つのアウトプットを含む。各ブロックは前のブロックのハッシュを含み、これらのブロックは一緒に繋げられて、起源以来ブロックチェーンに書き込まれている全てのトランザクションの永久的な変更不可能な記録を生成する。トランザクションは、スクリプトとして知られている小さなプログラムを含む。スクリプトは、それらのインプット及びアウトプットを埋め込まれ、トランザクションのアウトプットがどのように及び誰によりアクセス可能であるかを指定する。Ｂｉｔｃｏｉｎプラットフォームでは、これらのスクリプトはスタックに基づくスクリプト言語を用いて記述される。
【０００４】
トランザクションがブロックチェーンに書き込まれるためには、（ｉ）トランザクションを受信した第１ノードにより検証され、トランザクションが有効な場合には、ノードが該トランザクションをネットワーク内の他のノードに中継する、（ｉｉ）マイナーにより構築された新しいブロックに追加される、（ｉｉｉ）マイニングされる、つまり過去のトランザクションのパブリック台帳に追加される、ことが必要である。
【０００５】
Ｂｉｔｃｏｉｎ暗号通貨プロトコルにおけるペンネーム（pseudonym）の使用は、ブロックチェーン上の匿名トランザクションのイネーブラ（enabler）であると考えられる場合が多い。これは、ユーザの詳細事項が公にされないので、セキュアであると考えられる。しかしながら、研究では、Ｂｉｔｃｏｉｎネットワーク内でのユーザ同一性の暴露が達成でき、従って、セキュリティが害され得ることが示されている。実際に、悪意ある敵は、公開鍵をインターネットプロトコル（ＩＰ）アドレスにリンクすることを試み成功することがあり、ユーザにより提出された全部のトランザクションを追跡可能にする。これは、セキュリティ脆弱性に繋がる可能性がある。更に、ＩＰ情報は、該情報を、例えばインターネットフォーラム及びソーシャルメディアのような他の情報源と組み合わせることにより、現実のユーザのアイデンティティを取得するために使用することもできる。同様に、ブロックチェーンの応用範囲が一般に益々多様化するに伴い、ブロックチェーン上の全部のトランザクションは問い合わせに対して脆弱になり得る。従って、セキュリティは懸念事項である。
【０００６】
情報は、該情報を、例えばインターネットフォーラム及びソーシャルメディアのような他の情報源と組み合わせることにより、現実のユーザのアイデンティティを取得するために使用することもできる。このような状況では、トランザクションの異なるセットについて複数の鍵の公開−秘密鍵ペアを生成すること、又は操作の匿名性を高めるための手段としてミキシングサービスに参加することは、成功しない可能性がある［１］。
【０００７】
匿名化解除攻撃は、標準的に、アクティブなＢｉｔｃｏｉｎノードに接続してブロードキャストされるトランザクションを監視する「スーパーノード」を用いて実行される。ネットワーク上での対称的な拡散により、ＩＰ公開鍵リンク付けにおいて３０％の成功率が可能である［２］。主に使用されるアルゴリズムは、ピアツーピア（peer−to−peer(P２P)）グラフ構造及び拡散に関する情報を利用する。通常、Ｂｉｔｃｏｉｎの又は他の暗号通貨のフロー又はトランザクションを追跡し、及び公開台帳を監視することにより、同一ユーザにより生成された複数のアドレスをリンクできる。
【０００８】
この結果は、トランザクショングラフを分析し及びアドレスを一緒にクラスタ化することにより達成できる。匿名性は、現在利用可能な最強のアイデンティティ保護の１つを提供するが依然として弱点及び場合によっては欠点を示すＴｏｒ［３］のようなツールに依存する。実際に、中継システムは、トラフィック分析に対して脆弱な場合があり、それにより、Ｔｏｒへのユーザの「第１ホップ」リンク及びＴｏｒからユーザの通信相手への「最終ホップ」リンクが追跡されパケットをそう感づけるために使用され得る。更に、攻撃は、サービスの拒否を引き起こし、ユーザの匿名性を危険に晒し得る。
【０００９】
Ｂｉｒｙｕｋｏｖ他［２］では、著者は、ユーザのペンネームを彼らのＩＰアドレスにリンクすることにより、Ｐ２Ｐネットワークを匿名化解除する方法を提示している。このソリューションは、クライアントの接続するノードのセットに依存し、クライアントアイデンティティ及びトランザクションの起源を一意に決定する。
【発明の概要】
【００１０】
本発明は、ネットワーク層で、つまりＴＣＰ／ＩＰプロトコルのレベルで、ユーザが彼らのそれぞれのトランザクションがネットワーク上で拡散する前に、該トランザクションを交換することを可能にすることにより、したがって、ユーザにより生成されたトランザクションのＩＰアドレスとトランザクション内のユーザのアドレスとの間のリンクを曖昧にすることにより、ユーザのアイデンティティの発見を防止するメカニズムを提供する。
【００１１】
メカニズムは、２つの参加者が両者ともそれぞれアクションの実行をコミットする契約又は合意に入るためのセキュア且つ簡潔な方法を提供する。メイントランザクションは、参加者により行われるべきアクション、又はアクションの証明（proof）を表す。本メカニズムに据えられる払い戻し又は報酬、及び任意的に補償方式は、各参加者がコミットの終了を尊重するように促す。
【００１２】
更に、リソースへの実行に基づくアクセスが提供される２つのパーティ間の合意は、問い合わせ及び／又は収賄（corruption）の影響を受けやすい。いずれかの第三者、又はパーティのうちの１つでも、悪意ある敵であり、合意に関する詳細事項を発見する可能性があり、従ってブロックチェーンの期待されるセキュリティを害する。
【００１３】
発明者は、更に、トランザクションの交換が、タスクの実行と引き換えに、一方のパーティが別のパーティにリソースへの条件付きアクセスを提供することを可能にすることを発見した。ブロックチェーンは、暗号通貨用途に限定されず、例えば、デジタル権利、レコードシステム、契約、及び計算リソースのような、アクセス制御された又は条件付きリソースをセキュアに管理するために使用できる。本発明は、トラストレスな方法でこのようなタスクのセキュアな委任又は移転を可能にする方法を提供する。
【発明が解決しようとする課題】
【００１４】
概して、本発明は、非金融リソース、暗号通貨の形式の金融リソース、又はそれらの組み合わせであり得るリソースへの実行に基づくアクセスをセキュアに許可するメカニズムを構成する新規なアプローチに属する。
【００１５】
本発明の概念は、ロジックに基づくアクションを通じるリソースへのアクセスの制御に属する。アクセスは、指定された基準が満たされることを条件としてよい。第１パーティおよび第２パーティがトランザクションで使用するためのマルチシグネチャ鍵を生成することにより、セキュリティが確立される。更に、一連のブロードキャストに依存するアクセスにより、セキュリティが拡張される。最後に、少なくとも１つのトランザクションが別のパーティによりブロードキャストされることにより、セキュリティ脆弱性が克服される。
【００１６】
従って、本発明によると、添付の請求項において定められる方法及びシステムが提供される。
【課題を解決するための手段】
【００１７】
従って、リソースへのセキュアなアクセスを構成するコンピュータにより実施される方法を提供することが望ましい。これは、制御されたアクセス、タスクに基づくアクセス、及び／又は条件付きアクセスと呼ばれてよい。上記のアクセスは、タスクが実行されること、又は基準が満たされること、及び／又はトリガイベントが第２パーティにより実行されることを条件としてよい。
【００１８】
方法は、タスクを含んでよく、前記タスクは、前記リソースへのアクセスと引き換えに、ブロックチェーン（ネットワーク）上にトランザクションをブロードキャストするステップであって、前記リソースは、ブロックチェーンを介してアクセス可能であり、マルチシグネチャアドレスの中の少なくとも２つの秘密鍵によりセキュアにされ又はロックされる、ステップと、前記トランザクションのアウトプットにロックアウトプットを統合するステップと、を含む。
【００１９】
前記ロックアウトプットは、第２マルチシグネチャアドレスの中の少なくとも２つの秘密鍵によりセキュアにされ又はロックされてよい。方法は、前記リソース及び前記ロックアウトプットを含む両方のインプットが前記ブロックチェーンを介してアクセス可能になることを要求するアウトプットを有するロックメカニズム又は払い戻しメカニズムを生成するステップであって、前記リソース及び前記ロックアウトプットマルチシグネチャアドレスは、前記ロックメカニズムがブロードキャストされる前に署名され、従って、前記リソース及びロックアウトプットの前記アウトプットを前記第２パーティによりアクセス可能なアドレスにし、前記トランザクションを前記ブロックチェーン上にブロードキャストすると、前記ロックアウトプットはアクセス可能になり、前記ロックメカニズムの後続のブロードキャストは、前記リソース及びロックアウトプットを前記第２パーティによりアクセス可能な前記アドレスに割り当てる、ステップを含んでよい。
【００２０】
方法は、前記リソース及び前記ロックアウトプットへのセキュアな条件付きのアクセスを可能にする。なぜなら、前記リソースへのアクセスは、前記トランザクションがブロードキャストされることを条件とし、その結果、前記ロックメカニズムへの両方のインプットが利用可能になる、つまり条件が満たされるからである。幾つかの実施形態では、本発明は、リソースへのセキュアなタスクに基づくアクセスを構成するコンピュータにより実施される暗号学的に実施される方法に属し、該アクセスはタスクが第２パーティにより実行されることを条件とし、該タスクは、前記リソースへのアクセスと引き換えに、トランザクションをブロックチェーン上にブロードキャストすることを含む。
【００２１】
方法は、第１パーティが第２パーティと通信し及び／又は協力して、第１マルチシグネチャアドレス及び第２マルチシグネチャアドレスを生成するステップを含む。その後、前記第１パーティは、前記第１マルチシグネチャアドレスにリソースを割り当てるデポジットメカニズムをブロードキャストする。前記第１パーティは、タスク又は基準（以後、参照を容易にするために単に「タスク」）を構築し、前記タスクはブロックチェーントランザクション（ＴＸ）のブロードキャストを含み、前記ブロックチェーン上へのブロードキャストのために前記タスクを前記第２パーティへ送信し、前記トランザクションは、前記第２マルチシグネチャアドレスに割り当てられたロックアウトプットと、任意的にトランザクションアウトプットと、を有する。
【００２２】
方法は、前記第１パーティが、ロックメカニズム又は払い戻しメカニズムを生成し前記第２パーティへ送信するステップ、又は前記第２パーティからロックメカニズムを受信するステップを更に有し、前記ロックメカニズムへの前記インプットは、それらのそれぞれのマルチシグネチャによりロックされた前記リソース及び前記ロックアウトプットであり、前記アウトプットは前記リソース及び前記ロックアウトプットであり、前記第１パーティは、前記第１マルチシグネチャ及び第２マルチシグネチャに署名して、前記第２パーティが、前記第１マルチシグネチャ及び第２マルチシグネチャに署名できるようにし、したがって、前記ロックメカニズムへの前記インプットをアンロックすることは、前記アウトプットを前記第２パーティによりアクセス可能なアドレスに割り当てることを可能にし、前記アウトプットは、前記リソース及び前記ロックアウトプットの両方が前記ブロックチェーン上でそれらのマルチシグネチャに割り当てられることを条件とし、前記トランザクションがブロードキャストされることを確認すると、前記ロックメカニズムは、前記ブロックチェーン上にブロードキャストされ、従って、前記ロックアウトプットを前記第２マルチシグネチャアドレスに割り当て、及び前記第２パーティが前記リソース及び前記ロックアウトプットにアクセスできるようにする。
【００２３】
前記メイントランザクションアウトプットは任意である。何故なら、それは、提供される例では、前記第１パーティからのインプットを別のアドレスに割り当てるよう機能し、前記ロックメカニズムの動作にとって本質的ではないからである。上述のように、リソースへの前記アクセスは、タスク／基準／条件に基づく及びトランザクションアウトプットであり、前記ブロックチェーン上で見えるとき、タスクが完了したこと及び／又は条件／基準が満たされたことの指示子として使用できる。前記トランザクションアウトプットは、セキュリティを向上するために使用できる。
【００２４】
前記ロックアウトプットは、前記ロックメカニズムと関連して、他方では前記リソースをロックする（つまり、セキュアにする）よう機能する。これは、前記トランザクションの前記タスク／ブロードキャストが行われ、前記リソース及びロックアウトプットの両方が前記報酬メカニズムの前記インプット条件を満たすまで、アクセスできない。これは、前記ロックスクリプトの前記スクリプトを介して管理できる。
【００２５】
前記デポジットメカニズムの前記ブロードキャストは、前記トランザクション及び／又はロックメカニズムの前記ブロードキャストを進めることができる。前記第１パーティ又は第２パーティのいずれかは、前記デポジットメカニズムをブロードキャストできる。
【００２６】
前記デポジットメカニズムは、前記リソースを前記ロックメカニズムの前記インプットに割り当て、前記トランザクションは、前記ロックアウトプットを前記ロックメカニズムの前記インプットに割り当て、
前記第１パーティ及び第２パーティは、前記トランザクションがブロードキャストされる前に、それらの秘密鍵を用いて、前記ロックメカニズムの前記第１マルチシグネチャ及び第２マルチシグネチャに署名し、
前記トランザクションがブロードキャストされ及び前記ロックアウトプットが前記第２マルチシグネチャに割り当てられるとき、前記ロックメカニズムが、前記リソース及び前記ロックアウトプットを前記ロックメカニズムの前記アウトプットに割り当てることができるようにし、前記ロックメカニズムの前記アウトプットは前記第２パーティによりアクセス可能なアドレスである。
【００２７】
前記第１パーティは、前記ロックメカニズムをブロードキャストできる。代替として、前記第２パーティは、前記ロックメカニズムをブロードキャストできる。前記ロックメカニズムスクリプトは、前記インプットが前記アウトプットに割り当てられる条件を規定するよう記述できる。
【００２８】
リソースへの前記セキュアなタスクに基づくアクセスは、段階を有することができ、前記段階は、
前記デポジットメカニズムの前記ブロードキャストが前記リソースを前記第１マルチシグネチャアドレスに割り当てる第１段階と、
前記トランザクションの前記ブロードキャストがロックアウトプットを前記第２マルチシグネチャアドレスに割り当てる第２段階と、を含み、
前記第１及び第２段階の完了は、タスクの完了する条件を満たし、その結果、前記タスクの完了と引き換えに、続いてブロードキャストされる前記ロックメカニズムが、前記リソース及びロックアウトプットをインプットとして受信し、前記リソース及びロックアウトプットを、前記第２パーティによりアクセス可能なアドレスに割り当てる。
【００２９】
前記リソース及びロックアウトプットが、ロックメカニズムの一部として、前記ロックメカニズムのアウトプットにそれらを解放するために、両方のパーティにより署名されなければならないマルチシグネチャアドレスに割り当てられることにより、セキュリティが向上され得る。前記出力は前記リソース及び前記ロックアウトプット（ダスト）の両方が前記インプットにより利用可能であることに依存するので、設定／管理できる。
【００３０】
方法は、両方のパーティに相互利益を提供するよう機能できる。前記第２パーティは、更に、第２リソースへのセキュアなタスクに基づくアクセスを提供できる。前記アクセスは、第２タスクが前記第１パーティにより実行されることを条件とし、前記第２タスクは、前記第２リソースへのアクセスと引き換えに、前記第１パーティによりブロックチェーン上に第２トランザクションをブロードキャストすることを含む。前記方法は、前記第１パーティが前記第２パーティと協力して、前記第１マルチシグネチャ及び前記第２マルチシグネチャを生成し、前記第２パーティが、前記第１パーティと協力して、第３マルチシグネチャ及び第４マルチシグネチャを生成するステップ、を含む。前記デポジットメカニズムの前記ブロードキャストは、前記第２パーティが前記第２リソースを前記第３マルチシグネチャアドレスに割り当てるステップを更に含み得る。前記第２パーティは第２タスクを構築する。前記第２タスクは、第２トランザクションの前記ブロードキャストを含み、前記タスクを前記ブロックチェーン上にブロードキャストするために前記第１パーティへ送信する。前記トランザクションは、第２トランザクションアウトプットと、前記第４マルチシグネチャアドレスに割り当てられた第２ロックアウトプット（ｄ）と、を有する。前記第２トランザクションアウトプットは、前記第１トランザクションアウトプットと同様に、例えば同じ理由で任意である。前記第２パーティが、第２ロックメカニズムを生成し前記第１パーティへ送信する、又は前記第１パーティから第２ロックメカニズムを受信する。前記第２ロックメカニズムへの前記インプットは、それらのマルチシグネチャによりロックされた前記第２リソース及び前記第２ロックアウトプットであり、前記第２ロックメカニズムからの前記アウトプットは前記第２リソース及び前記第２ロックアウトプットであり、前記第２パーティは、前記第３マルチシグネチャ及び第４マルチシグネチャに署名して、前記第１パーティが、前記第３マルチシグネチャ及び第４マルチシグネチャに署名できるようにし、したがって、前記ロックメカニズムへの前記インプットをアンロックすることは、前記アウトプットを前記第１パーティによりアクセス可能なアドレスに割り当てることを可能にし、前記アウトプットは、前記第２リソース及び前記第２ロックアウトプットが前記ブロックチェーン上でそれらのマルチシグネチャに割り当てられることを条件とし、前記トランザクションがブロードキャストされることを確認すると、前記ロックメカニズムは、前記ブロックチェーン上にブロードキャストされ、従って、前記第２ロックアウトプットを前記第４マルチシグネチャアドレスに割り当て、及び前記第１パーティが前記第２リソース及び前記第２ロックアウトプットにアクセスできるようにする。
【００３１】
前記方法のステップ及び／又は構成は、ここでの教示の観点から、条件が一方向又は相互的である、又は返金若しくは報酬のための、種々のシナリオに適用可能である。
【００３２】
ロックメカニズムの前記アウトプットは、タスクを完了したパーティによりアクセス可能な報酬アドレスに割り当てることができる。
【００３３】
前記第１パーティは、前記第１マルチシグネチャアドレスにリソースを割り当てるデポジットメカニズムをブロードキャストでき、
前記デポジットメカニズムの前記ブロードキャストは、前記第２パーティが前記第３マルチシグネチャアドレスに前記第２リソースを割り当てることを更に含み、
その結果、タスクの完了と引き換えに、前記リソース及び第２リソースへのアクセスが、１つのパーティから別のパーティに提供できる。
【００３４】
「報酬」は、パーティが、タスクを完了することと引き換えに彼らがデポジットメカニズムに元々入力したリソースへのアクセスを得ることを意味し得る。前記第１パーティは、前記第３マルチシグネチャアドレスにリソースを割り当てるデポジットメカニズムをブロードキャストでき、
前記デポジットメカニズムの前記ブロードキャストは、前記第２パーティが前記第１マルチシグネチャアドレスに前記第２リソースを割り当てることを更に含み、
その結果、パーティが他のパーティにより割り当てられたタスクを完了すると、前記リソース及び第２リソースへのアクセスが前記パーティにより維持される。
【００３５】
前記方法は、
第１パーティが第１補償メカニズムを生成するステップであって、前記第１補償メカニズムは、以下：
（ｉ）前記第１パーティが、前記第２パーティの前記トランザクションをブロードキャストした、及び、
（ｉｉ）前記第１パーティが前記第２パーティにトランザクションを送信した後の第２所定時間期間内に、前記第２パーティが前記第１パーティの前記トランザクションをブロードキャストしない、
とき、前記第１パーティが、前記第２パーティにより前記デポジットメカニズムに割り当てられた前記第２リソースを、前記第１パーティによりアクセス可能な補償アドレスに割り当てることができるようにする、ステップ、及び／又は、
第２補償メカニズムを生成するステップであって、前記第２補償メカニズムは、以下：  
（ｉｉｉ）前記第２パーティが、前記第１パーティの前記トランザクションをブロードキャストした、及び、
（ｉｖ）前記第２パーティが前記第１パーティへトランザクションを送信した後の第２所定時間期間内に、前記第１パーティが前記第２パーティのトランザクションをブロードキャストしない、
とき、前記第２パーティが、前記第１パーティにより前記デポジットメカニズムに割り当てられた前記リソースを、前記第２パーティによりアクセス可能な補償アドレスに割り当てることができるようにする、ステップ、
を更に含み得る。
【００３６】
前記第２所定時間期間のカウントダウンは、前記ロックメカニズム又は払い戻しメカニズム及び／又は前記補償メカニズムの前記ブロードキャストから開始できる。補償メカニズムは、前記保証方式のブロードキャストの前に署名される。そして、望ましくは、前記払い戻しメカニズムのブロードキャストの前である。前記第２所定時間期間は、第１時間期間より短くなり得る。
【００３７】
前記第２パーティ（Ｂ）が前記第１パーティ（Ａ）へトランザクションを送信した後の第１所定時間期間内に、前記第１パーティがブロードキャストするためにそれらのトランザクションに署名し交換しない場合に、前記第２パーティは、前記第２リソースにアクセス又は再割り当てでき、及び／又は、
前記第１パーティ（Ａ）が前記第２パーティ（Ｂ）へトランザクションを送信した後の第１所定時間期間（Ｔ１）内に、前記第２パーティがそれらのトランザクションに署名し交換しない場合に、前記第１パーティが、前記リソースにアクセス又は再割り当てできる。
【００３８】
別の態様では、本発明は、リソースへのセキュアなタスクに基づくアクセスを構成するためにコンピュータにより実施される方法に属し、前記アクセスは、第２パーティによりタスクが実行されることを条件とし、前記タスクは、リソースへのアクセスと引き換えに、ブロックチェーンにトランザクションをブロードキャストすることを含み、前記方法は、
第２パーティが、第１パーティと共同して第１マルチシグネチャアドレス及び第２マルチシグネチャアドレスを生成するステップと、
前記第２パーティが、前記第１マルチシグネチャアドレスにリソースを割り当てるデポジットメカニズムが前記ブロックチェーン上にブロードキャストされたことを検証するステップと、
前記第１パーティから、トランザクションの前記ブロードキャストを含むタスクを受信するステップであって、前記トランザクションは、
前記第２マルチシグネチャアドレスに割り当てられたロックアウトプットと、
任意で、トランザクションアウトプットと、を有する、ステップと、
ロックメカニズムを生成し前記第１パーティへ送信する、又は前記第１パーティからロックメカニズムを受信するステップであって、前記ロックメカニズムへのインプットは、それぞれのマルチシグネチャによりロックされた前記リソース及び前記ロックアウトプットであり、アウトプットは前記リソース及び前記ロックアウトプットである、ステップと、
前記第１マルチシグネチャ及び前記第２マルチシグネチャに署名して、前記第１パーティが前記第１マルチシグネチャ及び第２マルチシグネチャに署名できるようにし、したがって前記ロックメカニズムへの前記インプットをアンロックすることは、前記アウトプットをアクセス可能なアドレスに割り当てることを可能にし、前記アウトプットは、前記ブロックチェーン上で前記リソース及び前記ロックアウトプットの両方がそれらのマルチシグネチャに割り当てられることを条件とする、ステップと、
前記ブロックチェーン上に前記トランザクションをブロードキャストするステップであって、前記ブロードキャストが確認されると、前記ロックメカニズムは前記ブロックチェーン上にブロードキャストされて、前記ロックアウトプットを前記第２マルチシグネチャアドレスに割り当て、前記リソース及び前記ロックアウトプットにアクセスできるようにする、ステップと、
を含む。
【００３９】
留意すべきことに、Ａｌｉｃｅにより行われ得るアクションは、同様にＢｏｂにより行われ得る。
【００４０】
概して、当該方法は、金融及び非金融リソースへの条件付きのセキュアなアクセスを可能にするのに適する。これは、カスタマイズされたトランザクションの段階的ブロードキャスト、及びそれらのブロックチェーンとの相互作用、を通じて達成できる。情報、リソース、パスワード、又は暗号通貨のようなリソースへの条件付きアクセスが実現される。これらのトランザクションは、スクリプトにより又はアウトプットリターンスクリプトに埋め込むことのできるデータ又はメタデータを含むことができる。ここに提供される例に対して追加又は代替として、前記メイントランザクションのブロードキャストを含むタスクの完了と引き換えに文書への暗号化リンクのようなデータを提供するために、追加アウトプットが前記デポジットメカニズム及び／又は前記メイントランザクションに組み込まれ得る。追加アウトプットは、データ又はトランザクションのメタデータに書き込まれたメソッド又はプロシジャによりアクセスできる。
【００４１】
別の態様では、本発明は、実行されるとプロセッサをここに記載の請求項の方法を実行するよう構成するコンピュータ実行可能命令を含むコンピュータ可読記憶媒体に属する。
【００４２】
別の態様では、本発明は、電子装置に属し、前記電子装置は、インタフェース装置と、インタフェース装置に結合された１つ以上のプロセッサと、１つ以上のプロセッサに結合されたメモリであって、メモリはコンピュータ実行可能命令を格納し、コンピュータ実行可能命令は、実行されると、１つ以上のプロセッサを、ここに記載の方法を実行するよう構成する、メモリと、を含む。
【００４３】
別の態様では、本発明は、ブロックチェーンネットワークのノードに属し、前記ノードは、ここに記載の請求項の方法のいずれかを実行するよう構成される。別の態様では、本発明は、ここに記載のノードを有するブロックチェーンネットワークに属する。このような改良されたソリューションがここで考案される。
【図面の簡単な説明】
【００４４】
本発明の上述の及び他の態様は、本願明細書に記載の実施形態から明らかであり、及びそれを参照して教示される。本発明の実施形態は、単なる例を用いて及び添付の図面を参照して以下に説明される。
【図１】第１及び第２パーティからのインプットを有する処理、第１及び／又は第２パーティへのアウトプットを決定するメカニズムの概略図であり、該処理は、ブロックチェーンを読み出すためのブロックチェーンとの接続を含み、ブロックチェーンネットワーク上へブロードキャストする。
【図２】ブロックチェーン上にブロードキャストするための、デポジットトランザクションのインプット及びアウトプットを示す図である。
【図３】ブロックチェーン上にブロードキャストするための２つのトランザクションを示す図であり、各トランザクションはインプット及びアウトプットを有し、該トランザクションはＡｌｉｃｅとＢｏｂの間で交換される。
【図４】図２のデポジットトランザクションからのインプットを有する払い戻しトランザクション、及び図３のトランザクションの図である。
【図５】図２のデポジットトランザクションからのインプットを有する補償トランザクションの図である。
【図６】トランザクションが署名されブロードキャストされ得る順序を示すフローチャートである。
【図７】デポジットトランザクション、トランザクション、払い戻しトランザクション、及び補償トランザクションの間の関係を示す図である。
【図８】トランザクションが署名され又は交換される順序を示す図である。
【発明を実施するための形態】
【００４５】
本発明は、例えば、図１に示されるような処理１０を用いて説明され得る。処理１０は、第１パーティ、便宜上「Ａｌｉｃｅ」又は「Ａ」、及び第２パーティ「Ｂｏｂ」又は「Ｂ」からのインプットを受信する。メカニズムは、Ａｌｉｃｅ及び／又はＢｏｂへアウトプットを提供する。メカニズム１０は、ブロックチェーンネットワーク１２又はブロックチェーン１２へのブロードキャストを示し得る図１の両矢印により示されるように、ブロックチェーンネットワーク１２上でブロードキャストし、及び／又はブロックチェーン１２から情報を読み出すことができる。
【００４６】
処理１０は、後述する又は請求される方法における、処理又はメカニズムのうちの１つ以上を表す。メカニズム、及びここに記載するメカニズムは、トランザクション又はトランザクションの集合と考えることができる。図１の処理１０は、インプット及びアウトプットを有するロジックゲートを表す。該アウトプットは、インプット、及びブロックチェーンに関連するＡｌｉｃｅ及びＢｏｂのアクションを条件とする。
【００４７】
Ａｌｉｃｅ及びＢｏｂは、ブロードキャストされるトランザクションをセキュアにするマルチシグネチャ鍵を生成する。留意すべきことに、複数のトランザクションがブロードキャストされ、トランザクションの連続的ブロードキャストはセキュリティを向上するために機能する。
【００４８】
メカニズムは、また、Ｂｏｂがタスクを完了することと引き換えに、Ａｌｉｃｅがリソースを条件付きでＢｏｂに利用可能にすることを可能にし、逆も同様である。Ａｌｉｃｅ及びＢｏｂは、ブロックチェーン上への初期ブロードキャストを協力して行う。タスクは、Ｂｏｂが、Ａｌｉｃｅにより生成されたトランザクションを、ブロックチェーン上にブロードキャストすることを含む。Ｂｏｂが該タスクを完了すると、これはＡｌｉｃｅのトランザクションのブロードキャストにより示され、アクセスメカニズムは、Ｂｏｂがリソースをアンロックすることを可能にする。
【００４９】
＜一般的な例−概要＞
リソースへの条件付きアクセスは、マルチシグネチャの使用及びブロックチェーンネットワークへと行われるブロードキャストによりセキュアにされ、タスクが実行されること、又は基準／条件が満たされること、又はトリガイベントが生じることを条件とする。タスクの実行は、トリガイベントを提供してよい。トリガイベント及び／又はタスクの実行を検出すると、被制御リソースへのアクセスが許可され、実現され、又は有効にされてよい。実行が完了するまで、リソースはセキュアであり、割り当てられたタスクの一部、つまりトランザクションのブロードキャストが、ブロックチェーン又はネットワーク上で識別可能である。この処理は、純粋に例として、Ｂｏｂがタスクを実行すると、発行者（Ａｌｉｃｅ）が、Ｂｏｂがセキュアなオンライン文書のようなデジタル権利にアクセスすることを可能にすることと同様に、説明できる。
【００５０】
最初に、Ａｌｉｃｅ及びＢｏｂは、タスク及びセキュアなオンライン文書がアクセスされることに合意する。Ａｌｉｃｅは、次に、セキュアな文書にアクセスするためにＢｏｂが後に使用できるコードを含むトランザクションをブロードキャストできる。Ａｌｉｃｅは、また、Ｂｏｂのためにブロックチェーン上にブロードキャストすべきトランザクションを生成する。ここで、該トランザクションは、複数のアウトプットを有し、タスクはトランザクションをブロードキャストすることを含む。最後に、トランザクションがブロックチェーン上に現れると、Ｂｏｂがコードにアクセスできるように、Ａｌｉｃｅ又はＢｏｂにより、アンロックトランザクションがブロードキャストされ得る。コードがアンロックトランザクションのインプットに割り当てられるときにのみ、Ｂｏｂはコードにアクセスし又はアンロックでき、Ｂｏｂはトランザクションをブロードキャストし、そしてアンロックトランザクションがその後にブロードキャストされる。段階的なブロードキャストが実行に基づくアクセスを提供するだけでなく、ＢｏｂによるブロードキャストのためにＡｌｉｃｅによりトランザクションを生成することが、トランザクションのソースを曖昧にする。
【００５１】
＜一般的な例−詳細＞
図７に特徴の概要が示される。図７は、Ａｌｉｃｅ及びＢｏｂが協力して相互に、リソースへのアクセスを提供する、又は他者のトランザクションのブロードキャストと引き換えにデポジットリソースを維持する、複数のトランザクション又はメカニズムを示す。更に一般的には、しかしながら、本発明は、タスクが一方向であることと引き換えに、リソースへのアクセスの条件付き提供を可能にする。
【００５２】
トランザクション間の関係が理解できるための指針として、図７を用いると、Ａｌｉｃｅはインプット（ｘ）及びアウトプット（ｘ）を有するデポジットトランザクション（ＤＸ）をブロードキャストする。アウトプット（ｘ）は第１マルチシグネチャアドレス（αＢ）に割り当てられ、該アドレスはＡｌｉｃｅ及びＢｏｂにより生成されている。インプット（ｘ）は、Ｂｏｂがアクセスするために使用することを望むリソース、例えばセキュアなオンライン文書である。
【００５３】
Ａｌｉｃｅは次に、Ｂｏｂが後にタスクの一部としてブロードキャストするトランザクション（ＴＸＡ）を生成する。トランザクションをブロードキャストすることに加えて、タスクは、例えば、支払うこと、計算リソースへのアクセスを提供すること、又は契約条件を満たすこと、を含み得る。トランザクションのブロードキャストは、タスクが完了することを意味する。与えられた例では、Ａｌｉｃａｅのトランザクション（ＴＸＡ）への２つのインプット及びアウトプットがある。アウトプットのうちの１つは任意であり、Ａｌｉｃｅによりアクセス可能なアドレスへのトランザクションアウトプット（ｍ）を含む。より重要なことに、ロックアウトプット（ｄ）は、第２マルチシグネチャアドレス（βＡ）に割り当てられる。
【００５４】
リソース（ｘ）及びロックアウトプット（ｄ）は、それぞれ第１及び第２マルチシグネチャアドレスに割り当てられ、リソース及びロックアウトプットを前記のアドレスから解放するためにＡｌｉｃｅ及びＢｏｂが彼らの秘密鍵を用いて署名することを要求する。説明を目的として、リソース及びロックアウトプットは、ブロックチェーン上の未使用トランザクション（unspent  transactional  output(UTXO)）として取り扱われるべきである。
【００５５】
Ａｌｉｃｅのトランザクション（ＴＸＡ）をブロードキャストした後に、Ｂｏｂがリソースにアクセスすることを可能にするために、ロックメカニズム（ＲＸＢ）が生成される。このロックメカニズムへのインプットは、（ｉ）デポジットメカニズム（ＤＸ）のブロードキャストの後に第１マルチシグネチャに割り当てられたために、既に利用可能であるリソース（ｘ）、及び（ｉｉ）ＢｏｂがＡｌｉｃｅのトランザクションをブロードキャストした後に利用可能になるロックアウトプット、である。例示的な用途では、Ａｌｉｃｅ及びＢｏｂがデポジットトランザクションのインプットに資金を割り当て、彼らが彼らのタスクを完了すると、彼らはロックメカニズム又は払い戻しメカニズムを介して彼らの資金を事実上回収するので、ロックメカニズムは「払い戻し」メカニズムとも呼ばれる。払い戻しが提供される一例を提供することは、補償メカニズムの使用の説明をサポートする。
【００５６】
Ａｌｉｃｅ及びＢｏｂは、協力して、彼らの秘密鍵を使用してリソース及びロックアウトプットを解放し、従ってロックメカニズムにインプットを提供する。ロックメカニズムからのアウトプットは、Ｂｏｂによりアクセス可能なアドレスに割り当てられる。
【００５７】
留意すべきことに、ロックメカニズムからのアウトプット、つまりリソースへのアクセスは、両方のインプット（ＵＴＸＯ）がブロックチェーン上に存在することを条件とする。このように、リソースへのＢｏｂのアクセスは、Ｂｏｂがトランザクションをブロードキャストすることを条件とする。何故なら、ロックアウトプットは、ロックメカニズムへの割り当てのために利用可能でなければならないからである。更に明確に言うと、トランザクションのブロードキャストを確認すると、ロックアウトプットのＵＴＸＯは、ロックメカニズムの第２マルチシグネチャアドレスへ送信される。何故なら、デポジットのＵＴＸＯがブロックチェーン上に既に存在し、両方のマルチシグネチャが署名されており、ＵＴＸＯインプットがＢｏｂに割り当て可能だからである。これは、両方のインプットが存在するときだけ、ロックメカニズムのスクリプトがＵＴＸＯインプットをＢｏｂのアドレスに割り当てるからである。言い換えると、２つの基準、つまり（ｉ）払い戻しメカニズムの中のインプットがブロックチェーン上でＵＴＸＯとして識別できること、（ｉｉ）これらのインプットに関連付けられた署名が有効であること、が満たされる。
【００５８】
Ｂｏｂが、トランザクションはブロックチェーン上にあると確認すると、彼は、ロックアウトプットのＵＴＸＯが利用可能であること、及びロックメカニズムがＡｌｉｃｅ又はＢｏｂによる後のブロードキャストであることを知る。
【００５９】
＜簡略化した例−概要＞
本発明の特徴を強調するために、Ａｌｉｃｅ及びＢｏｂは、例えば、彼ら自身のトランザクションを生成し、それをブロックチェーン上にブロードキャストするために他者に提供する。アクセスされるリソースは、例えば、暗号化文書、又は処理へのアクセスであり得るが、本例ではＢｉｔｃｏｉｎ（ＢＴＣ）のような暗号通貨額であってもよい。Ａｌｉｃｅ及びＢｏｂは、トランザクションをブロードキャストすることと引き換えに、支払いとして機能するＢｉｔｃｏｉｎの量をデポジットできる。しかしながら、簡略化された本例では、Ａｌｉｃｅ及びＢｏｂは、Ｂｉｔｃｏｉｎの量をデポジットとして預け、トランザクションのブロードキャストが彼らに提供されると、彼らのデポジットを回収する。
【００６０】
例えば、ＡｌｉｃｅがＢｏｂのトランザクションをブロードキャストし、続いて彼女のデポジットを回収するが、Ｂｏｂが所定時間期間内にＡｌｉｃｅのトランザクションをブロードキャストしない場合、Ａｌｉｃｅは補償としてＢｏｂのデポジットにアクセスできる。
【００６１】
本例は暗号通貨に基づき、タスクの完了と引き換えにリソースへのアクセスを提供する代わりに、デポジットを配置し回収することを含むが、トランザクション及びメカニズムは同様である。以下の簡略化された例は、トランザクションのソースを曖昧にするよう機能するセキュリティの向上と共に、条件付きアクセス機能を強調する。更に、方法は、パーティ間の改良されたトラストレスな協力を可能にする。
【００６２】
＜簡略化した例−詳細＞
参加者Ａｌｉｃｅ及びＢｏｂは、デポジットトランザクションを介して、Ｂｉｔｃｏｉｎのような暗号通貨のデポジットを置く。彼らが、他方のパーティにブロードキャストすることを望むトランザクションは、後に生成される払い戻しトランザクション又はロックメカニズムが、他方の参加者により交換されたトランザクションがブロードキャストされるブロックチェーン内の確認に依存するように、変更される。通常、及びこの特定の例では、２つの参加者は、報酬又はデポジットトランザクションへのＢｉｔｃｏｉｎインプットの払い戻しかに関わらず、リソースへのアクセスと引き換えに、彼らの少なくとも一方が他者の代わりにアクション又はタスクを実行するという合意に入ることができる。
【００６３】
特定の例では、両者は、それぞれアクションを実行するようコミットする。メイントランザクションのブロードキャストは、参加者により行われるアクション又はアクションの証明を表す。払い戻し及び補償メカニズムは、各参加者がコミットの終了を尊重するよう促す。通常及び特定の例では、トランザクション又はメカニズムは、ブロックチェーン上の実際の提出又はブロードキャストの前に、オフチェーンで直接交換されることができる。
【００６４】
＜序論＞
図１に示すように、Ａｌｉｃｅ及びＢｏｂは、処理１０にインプットを提供する。処理１０では、彼らは、ブロックチェーン上にブロードキャストする前に、トランザクションを生成し交換する。Ａｌｉｃｅは、彼女が数量（ｍ）のＢｉｔｃｏｉｎを使用するトランザクションＴＸＡを生成する。Ｂｏｂは、彼が数量（ｐ）のＢｉｔｃｏｉｎを使用するトランザクションＴＸＢを生成する。
【００６５】
留意すべきことに、Ａｌｉｃｅ又はＢｏｂのいずれも、必ずしも、彼らのトランザクションＴＸＡ及びＴＸＢの中で資金の受信者ではない。Ａｌｉｃｅは、彼女のアドレスのうちの１つから、彼女が秘密鍵を有する新しいアドレスへ、資金を移動し、又は第三者、便宜上「Ｃｈａｒｌｉｅ」に支払いを行っている。この場合、資金は、受信者の署名によりアンロックできる。これは、ＢｏｂのトランザクションＴＸＢにも言える。
【００６６】
ＴＸＡ及びＴＸＢは、交換され及び他方のパーティによりブロードキャストされるべきメイントランザクションである。以下に与えられる例では、相互交換及びブロードキャストが期待される。
【００６７】
Ａｌｉｃｅ及びＢｏｂは、善意に基づき互いのトランザクションを交換しブロードキャストし得るが、セキュリティのレイヤを追加し、彼らの役割を果たし、次にリソースにアクセスするよう他方の参加者にやる気を起こさせる。つまり暗号通貨のデポジット量の払い戻しが、提供され、Ａｌｉｃｅ又はＢｏｂへ送信されたトランザクションのブロードキャストを条件として行われる。留意すべきことに、簡略化された本例では、やる気はデポジットの払い戻しであるが、暗号通貨の支払いであってよく、又は上述の一般的な例で記載されたように、リソース又は処理へのアクセスであってよい。
【００６８】
処理全体の中で、リソース、払い戻し、又は報酬への条件付きアクセスを実装するために、Ａｌｉｃｅ及びＢｏｂは、ＡｌｉｃｅとＢｏｂの両者の秘密鍵を要求するＰ２ＳＨ（pay−to−script−hash）の下でロックされたダストｄｕｓｔ（ｄ）と呼ばれる数Ｓａｔｏｓｈｉのような非常に少額の暗号通貨の第２アウトプットを追加することにより、彼らのメイントランザクションＴＸＡ及びＴＸＢを変更する。ここで、サトシはＢｉｔｃｏｉｎの最小単位である（１Ｓａｔｏｓｈｉ＝０．０００００００１Ｂｉｔｃｏｉｎ）。
【００６９】
Ａｌｉｃｅ及びＢｏｂは、デポジットトランザクション（ＤＸ）の中で量「ｘ」のＢｉｔｃｏｉｎをコミットすることにも合意する。デポジットトランザクションの中のＢｉｔｃｏｉｎ及びこのプロトコルの中で交換される元のトランザクションに追加されたダストは、（ｉ）払い戻しトランザクション、ＡｌｉｃｅのためのＲＸＡ及びＢｏｂのためのＲＸＢ、及び（ｉｉ）補償トランザクション、ＡｌｉｃｅのためのＣＸＡ及びＢｏｂのためのＣＸＢ、のペアのうちの各々について、インプットとして使用される。
【００７０】
Ａｌｉｃｅ及びＢｏｂが彼らに提供されたメイントランザクションをブロードキャストした場合、彼らは、彼らのデポジット及びダストを、払い戻しトランザクションを介して収集する。参加者が、特定の時間の後に他方の参加者のメイントランザクションをブロードキャストしない場合、後者は、前者によりコミットされたデポジットを、彼女の労した努力に対する補償として収集するだろう。
【００７１】
行われる異なるトランザクション及びステップ、並びに使用されるマルチシグネチャの生成が、以下に記載される。本方法では、デポジットトランザクションへの量「ｘ」のＢｉｔｃｏｉｎインプットは、「リソース」と考えることができる。元のトランザクションに追加されたダストは、「ロックインプット」と考えることができる。何故なら、それは、デポジットをロックし、リソースにアクセスするために他方のパーティのトランザクションをブロードキャストするようパーティに条件を課すからである。
【００７２】
＜鍵生成／交換＞
Ａｌｉｃｅ及びＢｏｂは、それぞれ２つの新しい秘密−公開鍵ペアを生成し、彼らの公開鍵をセキュアなチャネルを辻手交換する。それぞれ、Ａｌｉｃｅ及びＢｏｂの鍵は、｛ＰＡ１，ＰＡ２｝及び｛ＰＢ１，ＰＢ２｝である。Ａｌｉｃｅ及びＢｏｂは、対応する秘密鍵、それぞれ｛ＳＡ１，ＳＡ２｝及び｛ＳＢ１，ＳＢ２｝を秘密に保つ。
【００７３】
Ａｌｉｃｅは、以下のＢｏｂの及び彼女自身の公開鍵の両方を用いて、２つのマルチシグネチャアドレスを生成する。
ＡｄｄＡＢ１＝αＡ＝２−２（ＰＡ１，ＰＢ１）
ＡｄｄＡＢ２＝βＡ＝２−２（ＰＡ２，ＰＢ２）
【００７４】
Ａｌｉｃｅ及びＢｏｂの両者の秘密鍵は、これらのマルチシグネチャアドレスへ資送信された金又はリソースを、解放し及び移転するために必要になる。Ｂｏｂも、以下のＡｌｉｃｅの及び彼自身の公開鍵の両方を用いて、マルチシグネチャアドレスのペアを生成する。
ＡｄｄＢＡ１＝αＢ＝２−２（ＰＢ１，ＰＡ１）
ＡｄｄＢＡ２＝βＢ＝２−２（ＰＢ２，ＰＡ２）
【００７５】
Ａｌｉｃｅ及びＢｏｂは、先ず彼らの公開鍵を用いて彼らのそれぞれのマルチシグネチャアドレスを生成し、ＡｄｄＡＢ１がＡｄｄＢＡ１と異なり且つリンク付けできないように、及びＡｄｄＡＢ２がＡｄｄＢＡ２と異なり且つリンク付けできないようにする。Ａｌｉｃｅ及びＢｏｂは、次に、彼らの新しく生成したマルチシグネチャアドレスを交換し、それらの有効性を検証して、これらを構成するために使用された公開鍵を知る。
【００７６】
＜デポジットメカニズム−第１ブロードキャスト＞
図２は、インプットとして示されるように、Ａｌｉｃｅ及びＢｏｂがそれぞれ量ｘのＢｉｔｃｏｉｎをコミットするデポジットメカニズム又はトランザクションＤＸを示す（一例ではＢＴＣであるが、他の通貨が使用され得る）。これらのインプットまたは割り当ては、Ａｌｉｃｅ及びＢｏｂにより署名される。デポジットトランザクションＤＸは、２インプット−２アウトプットのＰ２ＳＨトランザクションになるよう事前に合意される。ＤＸからの未使用トランザクション（ＵＴＸＯ）は、参加者当たり１つの、２つの更なるトランザクションを生成するためにインプットとして後に使用されるアウトプットである。
【００７７】
更なるトランザクションは、（ｉ）ＲＸであって、参加者がブロックチェーンネットワーク内で他方の参加者のメイントランザクションをブロードキャストし、それがブロックチェーン上に記録されたときに、ＤＸの中でコミットされたＢＴＣを指定されたアドレスに割り当てる払い戻しメカニズムであるＲＸ、及び（ｉｉ）ＣＸであって、彼女が他方のトランザクションをブロードキャストしたという事実にも関わらず、特定の時間量の後に他方の参加者により彼女のトランザクションがブロードキャストされない場合に、参加者を補償する補償メカニズムであるＣＸ、である。
【００７８】
予め生成されたマルチシグネチャアドレスを使用して、Ａｌｉｃｅ及びＢｏｂは、ＤＸの中で使用される資金をロックするために使用されるロックスクリプトを生成する。
【００７９】
Ａｌｉｃｅは、ＤＸトランザクションの中で彼女のデポジットに対するロックスクリプトを構成する。このスクリプトは、デポジットメカニズムから関連付けられたアウトプット量を使用するための２つの選択肢を提供する。アウトプットは、アドレスＡｄｄＡＢ１（αＡ）へ送信し、ＡｌｉｃｅのｘＢＴＣを、Ａｌｉｃｅ及びＢｏｂの両者がそれぞれ彼らの秘密鍵ＳＡ１及びＳＢ１により署名することにより償還（redeem）できる。代替として、特定の時間期間Ｔ１の後に、アウトプットは、Ａｌｉｃｅの公開鍵ＰＡ１に関連付けられたアドレスを介して償還できる。
【００８０】
ロックタイムＴ１の値は、将来の特定の時点で、メイントランザクション、払い戻しトランザクション、又は補償トランザクションが署名され交換されることなくプロトコルが終了した場合に、資金がＡｌｉｃｅにより償還可能なように選択される。ロックタイムパラメータは、以下のオペコードを用いて定められる：
ＯＰ＿ＣＨＥＣＫＳＥＱＵＥＮＣＥＶＥＲＩＦＹ
Ｂｉｔｃｏｉｎスクリプトシステムのこのオペコードは、ＢＩＰ１１２で導入され、スクリプトの実行パスがアウトプットの使用された時代に基づき制限されるようにすることに留意する（https://github.com/bitcoin/bips/blob/master/bip−０１１２.mediawiki)）。
【００８１】
方法の中で払い戻し及び補償方式が行われる前に、プロトコルが終了した場合に、スクリプトの中で定められる第２の選択肢も、Ａｌｉｃｅのためのセーフティネットとして動作することに留意する。
【００８２】
同様に、Ｂｏｂは、ＤＸトランザクションの中で彼のデポジットに対するロックスクリプトを準備する。ＢｏｂのｘＢｉｔｃｏｉｎは、アドレスＡｄｄＢＡ１（αＢ）へ送信され、Ａｌｉｃｅ及びＢｏｂの両者が彼らの秘密鍵（ＳＡ１及びＳＢ１）により署名することにより、又はロックタイムＴ１の後に、Ｂｏｂの公開鍵ＰＢ１に関連付けられたアドレスに償還できる。Ａｌｉｃｅにより生成されたｘＢｉｔｃｏｉｎのデポジットに対するロックスクリプトの一例が以下に示される。
【数１】
2021513254.tif 000003
【００８３】
Ｂｏｂは彼のスクリプトをＡｌｉｃｅへ送信する。彼女は、次に、彼女の及びＢｏｂのアウトプットを指定するトランザクションＤｘを生成する。彼女は、彼女のインプットを追加し、ＳＩＧＨＡＳＨ＿ＡＮＹＯＮＥＣＡＮＰＡＹフラグにより署名する。Ａｌｉｃｅは次に、トランザクションをＢｏｂへ送信する。一方、Ｂｏｂは、彼のインプットを追加し署名する。
【００８４】
図２に示すように、Ａｌｉｃｅ及びＢｏｂにより使用されるｘＢｉｔｃｏｉｎのアウトプットアドレスは、それぞれＤＸの中でαＡ及びαＢとして示される。図２に示すようなデポジットトランザクションＤＸは、Ａｌｉｃｅ又はＢｏｂにより、ネットワーク上でブロードキャストされる準備ができている。Ａｌｉｃｅ及びＢｏｂの両者は、トランザクションがＢｉｔｃｏｉｎブロックチェーン上でブロードキャストされ及び確認されたことを検証する。
【００８５】
Ａｌｉｃｅ及びＢｏｂは、次に、以下に詳述するように、それぞれ彼らのメイントランザクションＴＸＡ及びＴＸＢを変更し交換する。彼らがＴ１の前に他方の参加者のメイントランザクションの交換又はブロードキャストを完了しなかった場合、彼らは彼らのデポジットを取り戻し、プロトコルは終了する。
【００８６】
＜メイントランザクション＞
図３は、Ａｌｉｃｅ及びＢｏｂのメイントランザクション、それぞれＴＸＡ及びＴＸＢを示す。これらのトランザクションのブロードキャストは、他方に割り当てられたタスクの少なくとも部分を形成する。明確に言うと、ＡｌｉｃｅのメイントランザクションＴＸＡは、ＢｏｂがブロードキャストするためにＢｏｂへ送信され、逆も同様である。他方のトランザクションのブロードキャストは、払い戻し、報酬、又はリソースへのアクセスを得る条件である。
【００８７】
ＡｌｉｃｅがＢｏｂのトランザクションＴＸＢをブロードキャストする、又はＢｏｂがＡｌｉｃｅのトランザクションＴＸＡをブロードキャストする前に、追加のメカニズムが構成される。追加のメカニズムは、条件付きでリソースにアクセスするためにメイントランザクションのブロードキャストのための手段を提供する払い戻しトランザクション又はメカニズムＲＸ、本例では、デポジットＤｘの中の支払いトランザクション；及び、メイントランザクションをブロードキャストしたが彼ら自身のブロードキャストされたトランザクションを得ていないパーティが、デポジットＤＸの中の他のリソースに追加で条件付きでアクセスし又は回収する任意的な補償メカニズムＣＸ、本例ではこれも支払いである。メカニズムＲＸがデポジットＤＸの中のリソース又は資金がどのようにアクセスされ又は割り当てられるかを制約するよう機能するので、払い戻しメカニズムＲＸを通じて、パーティに条件が課される。
【００８８】
メイントランザクションＴＸＡ、ＴＸＢがブロードキャストのために交換される前に、Ａｌｉｃｅ及びＢｏｂは、トランザクションに含まれる追加のアウトプット又はロックアウトプットｄに合意する。Ｂｉｔｃｏｉｎブロックチェーン上でブロードキャストされ利用可能になると、ロックアウトプットは、後に発行される払い戻しメカニズムの条件を満たすよう機能する。つまり、リソース及びロックインプットＵＴＸＯの両方がブロックチェーン上に現れ、それらそれぞれのマルチシグネチャアドレスに割り当てられる。
【００８９】
ロックアウトプットは、トリガとして機能する。何故なら、Ａｌｉｃｅ又はＢｏｂは、他方のパーティのトランザクションのブロードキャストを含むタスクを彼らが実行した後にのみ、リソースにアクセスできるからである。このリソースは、払い戻しトランザクション又はメカニズムＲＸによりセキュアにされる。払い戻しメカニズムは、払い戻しメカニズムがブロードキャストされる前に、Ａｌｉｃｅ及びＢｏｂにより生成された第１マルチシグネチャ（αＡ，αＢ）及び第２マルチシグネチャ（βＡ）が両方のパーティにより署名されることを要求する。ブロードキャストする前に、マルチシグネチャに署名することにより、ロックメカニズムへのインプットは、Ａｌｉｃｅ又はＢｏｂの指定されたアドレス、それぞれγＡ及びγＢへの割り当てのために解放される。この理由のために、Ａｌｉｃｅが彼女のメイントランザクションＴＸＡの中に、第２マルチシグネチャ（βＡ）によりセキュアにされるロックアウトプット（ダスト、例えば数Ｓａｔｈｏｓｉのような、少ないが機能的な移転されるべきリソース）を構築する。メイントランザクションがブロードキャストされたときのみ、払い戻しメカニズムの条件が満たされ、従って払い戻しメカニズムのアウトプットを有効にする。払い戻しメカニズムは、トランザクションがブロードキャストされた後にブロードキャストされるべきであることに留意する。何故なら、そうしないと、ノード又は複数のノードにより検証されてブロックチェーンに追加するためのブロック内にコンパイルされることが妨げられるからである。
【００９０】
本例のロックアウトプットによりアクセス可能な又は提供されるリソースは、暗号通貨のトークン量、例えばＢＴＣの幾らかのダストｄ、つまり数Ｓａｔｏｓｈｉである。この第２の又はロックアウトプットは、第２マルチシグネチャアドレスβＡをアウトプットアドレスとして有する。
【００９１】
明確に言うと、Ａｌｉｃｅのメイントランザクションはアウトプットを有し、その中で、彼女は、数量（ｍ）のＢｉｔｃｏｉｎを使用したいと望み、Ｐ２ＳＨ（pay−to−script−hash）の下でロックされたｄｕｓｔ（ｄ）のロックアウトプットは、Ａｌｉｃｅ及びＢｏｂの両者の秘密鍵がロックアウトプットにアクセスし又はアンロックするために使用されることを要求する宛先アドレスＡｄｄＡＢ２（βＡ）を有する。同様に、Ｂｏｂのメイントランザクションはアウトプットを有し、その中で、彼は、数量（ｐ）のＢｉｔｃｏｉｎを使用したいと望み、Ｐ２ＳＨ（pay−to−script−hash）の下でロックされたｄｕｓｔ（ｄ）のロックアウトプットは、Ａｌｉｃｅ及びＢｏｂの両者の秘密鍵がアクセスされ又はアンロックされることを要求する宛先アドレスＡｄｄBA２（βＢ）を有する。Ａｌｉｃｅ及びＢｏｂは、彼らのトランザクションＴＸＡ、ＴＸＢを、それらをブロードキャストするために他方へ送信する前に、２つのインプットと共に準備する。このとき、Ａｌｉｃｅ及びＢｏｂは、彼らが互いから受信したトランザクションをブロードキャストしない。
【００９２】
メイントランザクションＴＸＡ、ＴＸＢがブロードキャストされる前に、Ａｌｉｃｅ及びＢｏｂは、他方の参加者のメイントランザクションがブロードキャストされた後に参加者の返金を保証する払い戻しトランザクション−ＡｌｉｃｅのためのＲＸＡ及びＢｏｂのためのＲＸＢ、並びに、他方の参加者により期限内に参加者のメイントランザクションがブロードキャストされなかった場合に該参加者を補償する補償トランザクション−ＡｌｉｃｅのためのＣＸＡ及びＢｏｂのためのＣＸＢを生成する。
【００９３】
＜払い戻しメカニズム＞
図４は、Ａｌｉｃｅ又はＢｏｂによりブロードキャストされるデポジットＤＸと、ＢｏｂがブロードキャストするＡｌｉｃｅのメイントランザクションＴＸＡと、Ｂｏｂのための払い戻しトランザクションＲＸＢとの間の関係を示す。この段階で、Ａｌｉｃｅ及びＢｏｂは、彼らのメイントランザクションを交換している。
【００９４】
Ａｌｉｃｅは、デポジットトランザクションＤＸの中のアドレスＡｄｄＡＢ１（αＡ）へ送信されたＵＴＸＯと、Ｂｏｂにより生成されたメイントランザクションＴＸＢの中のアドレスＡｄｄＢＡ２（βＢ）へ送信されたダストと、をインプットとして使用して、彼女の払い戻しトランザクションＲＸＡを生成する。
【００９５】
同様に、Ｂｏｂは、デポジットトランザクションＤＸの中のアドレスＡｄｄBA１（αＢ）へ送信されたＵＴＸＯと、Ｂｏｂにより生成されたメイントランザクションＴＸＢの中のアドレスＡｄｄAB２（βＡ）へ送信されたダストと、をインプットとして使用して、彼の払い戻しトランザクションＲＸＢを生成する。
【００９６】
Ａｌｉｃｅの払い戻しは、従って、彼女がＢｏｂのメイントランザクションＴＸＢをネットワーク上にブロードキャストすることに本来依存する。Ａｌｉｃｅは、彼女の払い戻しトランザクションＲＸＡを、それに署名しそれをＡｌｉｃｅへ返送したＢｏｂへ、送信する。Ａｌｉｃｅは、次に、トランザクションＲＸＡに署名するが、それをブロードキャストしない。何故なら、βＢへ送信されたビットコイン（ダスト）がこの時点で利用可能ではないため、トランザクションが確認されないからである。アドレスＡｄｄＢＡ２（βＢ）でアクセス可能なリソースまたはダストは、メイントランザクションＴＸＢがブロードキャストされブロックチェーン内で確認されると、利用可能にされ又は使用可能になる。
【００９７】
この新たに生成された払い戻しトランザクションＲＸＡの中の２つのインプットは、以下のようにＡｌｉｃｅ及びＢｏｂの署名を要求する。これらのインプットは以下の通りである：
・アドレスＡｄｄＡＢ１（αＡ）へ送信されるＤＸからのｘＢＴＣのインプット。これは、Ａｌｉｃｅ及びＢｏｂの第１秘密鍵、それぞれＳＡ１及びＳＢ１を用いる彼らの署名を要求する。
・アドレスＡｄｄBA２（βＢ）へ送信されるＴＸＢからのｄＢＴＣのインプット。これは、Ａｌｉｃｅ及びＢｏｂの第２秘密鍵、それぞれＳＡ２及びＳＢ２を用いる彼らの署名を要求する。
【００９８】
同様に、Ｂｏｂの払い戻しは、彼がＡｌｉｃｅのメイントランザクションＴＸＡをネットワーク上にブロードキャストすることに本来依存する。Ｂｏｂは、彼の払い戻しトランザクションＲＸＢを、それに署名しそれをＢｏｂへ返送したＡｌｉｃｅへ、送信する。Ｂｏｂは、次に、トランザクションＲＸＢに署名するが、それをブロードキャストしない。何故なら、βＡへ送信されたビットコイン（ダスト）がこの時点で利用可能ではないため、トランザクションが確認されないからである。アドレスＡｄｄＡＢ２（βＡ）でアクセス可能なリソースまたはダストは、メイントランザクションＴＸＡがブロードキャストされブロックチェーン内で確認されると、利用可能にされ又は使用可能になる。
【００９９】
この新たに生成された払い戻しトランザクションＲＸＢの中の２つのインプットは、以下のようにＡｌｉｃｅ及びＢｏｂの署名を要求する。これらのインプットは以下の通りである：
・アドレスＡｄｄBA１（αＢ）へ送信されるＤＸからのｘＢＴＣのインプット。これは、Ａｌｉｃｅ及びＢｏｂの第１秘密鍵、それぞれＳＡ１及びＳＢ１を用いる彼らの署名を要求する。
・アドレスＡｄｄAB２（βＡ）へ送信されるＴＸＡからのｄＢＴＣのインプット。これは、Ａｌｉｃｅ及びＢｏｂの第２秘密鍵、それぞれＳＡ２及びＳＢ２を用いる彼らの署名を要求する。
【０１００】
Ａｌｉｃｅ及びＢｏｂの払い戻しトランザクション又はメカニズムＲＸＡ及びＲＸＢのアウトプットは、返金又は報酬によりＡｌｉｃｅ及びＢｏｂのアドレス、それぞれγＡ及びγＢに割り当てられ又はセキュアにされる。アドレスは、メイントランザクション及び払い戻しトランザクションからＡｌｉｃｅ及びＢｏｂを更に分離させるよう選択できる。
【０１０１】
＜補償メカニズム＞
図５は、Ａｌｉｃｅ又はＢｏｂにより既にブロードキャストされたデポジットＤＸと、Ｂｏｂに対する補償トランザクションＣＸＢとの間の関係を示す。補償トランザクションは、任意であり、一方の参加者が他方の参加者のメイントランザクションをブロードキャストしないシナリオに対応するために生成される。ＡｌｉｃｅがＢｏｂのメイントランザクションＴＸＢをブロードキャストしないが、ＢｏｂはＡｌｉｃｅのメイントランザクションＴＸＡをネットワーク上にブロードキャストする場合、Ｂｏｂは、彼の払い戻しトランザクションＲＸＢからアウトプットを回収でき、更に彼女の過ちに対して補償されることができる。言い換えると、Ａｌｉｃｅは、Ｂｏｂのメイントランザクションをブロードキャストしないことについて罰せられることができる。この補償メカニズムは、メイントランザクションがブロードキャストされてから第２の所定の時間期間Ｔ２が経過した後に、参加者を補償できる。
【０１０２】
メイントランザクションＴＸＡ、ＴＸＢがブロードキャストされる前に、Ａｌｉｃｅ及びＢｏｂは、補償トランザクション、つまりＡｌｉｃｅのためのＣＸＡ及びＢｏｂのためのＣＸＢを生成する。
【０１０３】
Ｂｏｂの補償トランザクションＣＸＢは、例えば、デポジットトランザクションＤＸの中でＡｌｉｃｅにより使用されたｘＢＴＣのインプットを有する。トランザクションＣＸＢの中のアウトプットは、予め合意された第２の所定時間期間Ｔ２に従いタイムロックされる。この時間期間は、他方のメイントランザクションをブロードキャストし及びそれをネットワーク上で確認するために参加者に許される最大時間を設定する。Ｂｏｂは、彼の補償トランザクションＣＸＢを、それを検証しそれに署名しそれをＢｏｂへ返送したＡｌｉｃｅへ送信する。インプットは、Ａｌｉｃｅ及びＢｏｂの両者がそれぞれ彼らの秘密鍵ＳＡ１及びＳＢ１により署名することにより償還可能なアドレスＡｄｄＡＢ１（αＡ）によりセキュアにされるＡｌｉｃｅのｘＢＴＣである。
【０１０４】
同様に、Ａｌｉｃｅの補償トランザクションＣＸＡは、例えば、デポジットトランザクションＤＸの中でＢｏｂにより使用されたｘＢＴＣのインプットを有する。トランザクションＣＸＡの中のアウトプットは、予め合意された第２の所定時間期間Ｔ２に従いタイムロックされる。この時間期間は、他方のメイントランザクションをブロードキャストし及びそれをネットワーク上で確認するために参加者に許される最大時間を設定する。Ａｌｉｃｅは、彼女の補償トランザクションＣＸＡを、それを検証しそれに署名しそれをＡｌｉｃｅへ返送したＢｏｂへ送信する。インプットは、Ａｌｉｃｅ及びＢｏｂの両者がそれぞれ彼らの秘密鍵ＳＡ１及びＳＢ１により署名することにより償還可能なアドレスＡｄｄBA１（αＢ）によりセキュアにされるＢｏｂのｘＢＴＣである。
【０１０５】
Ａｌｉｃｅ及びＢｏｂの補償トランザクションＣＸＡ及びＣＸＢのアウトプットは、Ａｌｉｃｅ及びＢｏｂの補償アドレス、それぞれπＡ及びπＢに割り当てられ又はセキュアにされる。異なるアドレスは、メイントランザクション及び払い戻しトランザクションからＡｌｉｃｅ及びＢｏｂを更に分離させるよう選択される。
【０１０６】
ロックタイム値Ｔ２は、両方のメイントランザクションがネットワーク上で確認できるが、Ｔ１より短くなるよう選択される。ロックタイムＴ１は、デポジットトランザクションの中でセキュアにされるリソース又は資金が、メイントランザクション、払い戻しトランザクション、又は補償トランザクションが署名又は交換されない場合に、将来の何らかの時点で償還可能なように選択された。
【０１０７】
留意すべきことに、デポジットメカニズムからのアウトプットは、払い戻し／報酬／ロックメカニズム及び補償メカニズムの両方に割り当てられる。ロックメカニズムのインプット条件、つまりリソース及びダストの受信は、トランザクションがブロードキャストされると、つまりタスクが行われ条件が満たされると、満たされる。補償メカニズムは、また、リソースをインプットとして受信できる。しかしながら、リソースのＵＴＸＯは、払い戻し及び補償メカニズムの両方により使用できない。従って、補償メカニズムの条件は、時間要件（Ｔ２）及びロックメカニズムにより割り当てられないリソースの利用可能性である。
【０１０８】
＜第２ブロードキャスト＞
払い戻しメカニズムＲＸＡ、ＲＸＢ及び補償メカニズムが置かれ署名されると、Ａｌｉｃｅは、ネットワーク上でＢｏｂのメイントランザクションＴＸＢ及び彼女自身の補償トランザクションをブロードキャストし、Ｂｏｂは、ネットワーク上でＡｌｉｃｅのメイントランザクション及び彼自身の補償トランザクションＣＸＢをブロードキャストする。
【０１０９】
ＴＸＢがネットワーク上でブロードキャストされていることを確認すると、Ａｌｉｃｅは、彼女の払い戻しメカニズムＲＸＡをブロードキャストして、彼女の払い戻し又は報酬を請求する。Ａｌｉｃｅは、彼女のメイントランザクションＴＸＡについてネットワークをモニタし、時間Ｔ２の経過する前に、ネットワーク上でブロードキャストされていることが確認されない場合、Ａｌｉｃｅは、補償トランザクションＣＸＡによりアドレスπＡを介して補償メカニズムにアクセスし、Ｂｏｂにより生成されたデポジットを事実上請求できる。
【０１１０】
代替として、Ａｌｉｃｅは、彼女のトランザクションがＢｏｂによりブロードキャストされたことを知り、Ｂｏｂが彼の払い戻しトランザクションＲＸＢを（時間Ｔ２の経過する前に）即座にブロードキャストした場合、リソース又は資金、つまりデポジットＤＸのＵＴＸＯは、Ｂｏｂの払い戻しメカニズム及びアドレスγＢを介して「使用」される。これは、補償メカニズムＣＸＡがブロードキャストされているにも関わらず、デポジットＤＸからのＵＴＸＯがもはや利用可能ではなく、従ってＣＸＡを無効化することを意味する。
【０１１１】
ＴＸＡがネットワーク上でブロードキャストされていることを確認すると、Ｂｏｂは、彼の払い戻しメカニズムＲＸＢをブロードキャストして、彼の払い戻し又は報酬を請求する。Ｂｏｂは、彼のメイントランザクションＴＸＢについてネットワークをモニタし、時間Ｔ２の経過する前に、ネットワーク上でブロードキャストされていることが確認されない場合、Ｂｏｂは、補償トランザクションＣＸＢによりアドレスπＢを介して補償メカニズムにアクセスし、Ａｌｉｃｅにより生成されたデポジットを事実上請求できる。
【０１１２】
代替として、Ｂｏｂは、彼のトランザクションがＡｌｉｃｅによりブロードキャストされたことを知り、Ａｌｉｃｅが彼女の払い戻しトランザクションＲＸＡを（時間Ｔ２の経過する前に）即座にブロードキャストした場合、リソース又は資金、つまりデポジットＤＸのＵＴＸＯは、Ａｌｉｃｅの払い戻しメカニズム及びアドレスγＡを介して「使用」される。これは、補償メカニズムＣＸＢがブロードキャストされているにも関わらず、デポジットＤＸからのＵＴＸＯがもはや利用可能ではなく、従ってＣＸＢを無効化することを意味する。
【０１１３】
＜概要−トランザクションの順序＞
図６〜８は、提供される例を示し、図７によりトランザクションの各々の関係を示し、図６及び８により方法のステップ又はフェーズを示す。この概要から及びここでの教示の観点から、例は直接トランザクション交換が関与するパーティにとって相互に有益であること、及びアクセスされるリソースが暗号通貨額であることを示唆するが、本発明は提供される例に限定されないことが理解される。
【０１１４】
概して、本発明は、リソースへのセキュアなタスクに基づく又は条件付きアクセスを構成する新規なアプローチに属し、該アクセスはタスクが実行されることを条件とし、該タスクは、リソースへのアクセスと引き換えに、トランザクションをブロックチェーン上に置くことを含む。言い換えると、Ａｌｉｃｅは、Ｂｏｂがタスクの部分としてブロードキャストするようにトランザクションＴＸＡを提供でき、一方で、Ｂｏｂは、両方のパーティの第１マルチシグネチャ（αＢ）によりセキュアにされるデポジットＤＸを介して非金融関連リソースにアクセスできる。与えられる例は２つのパーティを含むが、処理は一方向であり得る。
【０１１５】
ＢｏｂがトランザクションＴＸＡをブロードキャストするというタスクを実行した後に、彼は、彼の払い戻しトランザクション又はメカニズムＲＸＢをブロードキャストすることにより、リソースにアクセスできる。払い戻しメカニズムは、払い戻しメカニズムがブロードキャストされる前に、Ａｌｉｃｅ及びＢｏｂにより生成された第１マルチシグネチャ（αＡ）及び第２マルチシグネチャ（βＡ）が両方のパーティにより署名されることを要求する。この理由のために、Ａｌｉｃｅが彼女のメイントランザクションＴＸＡの中に、第２マルチシグネチャ（βＡ）によりセキュアにされるロックアウトプット（ダスト、例えば数Ｓａｔｈｏｓｉのような、少ないが機能的な移転されるべきリソース）を構築する。
【０１１６】
ＢｏｂがトランザクションＴＸＡを受信すると、彼は、ブロックチェーン上でトランザクションをブロードキャストする。トランザクションがブロードキャストされていることを確認すると、Ｂｏｂは、彼の報酬メカニズムＲＸＢをブロードキャストする。報酬メカニズムＲＸＢのアウトプットは、Ａｌｉｃｅのメイントランザクションがブロードキャストされるまで、ロックされる。
【０１１７】
メイントランザクションによるロックアウトプットは、従って、トリガとして機能する。何故なら、それは、払い戻し又は報酬メカニズムのインプットに割り当てられる追加アウトプットをトランザクションに追加するからである。該報酬メカニズムは、ブロードキャストの前に、両方のパーティの署名を要求する。ロックアウトプットがトランザクションＴＸの一部としてブロードキャストされると、報酬メカニズムの条件が満たされる。つまり、リソースｘ及びロックアウトプットｄの両方が、ブロックチェーン上に現れ、インプットとして利用可能になる。
【０１１８】
図６の処理Ｓ１００は、相互に有益な交換を用いて更なる特徴を詳細に示すことにより、最も単純な、トランザクションの一方向の交換を拡張したものである。処理は、Ａｌｉｃｅ及びＢｏｂが２つの新しい秘密−公開鍵ペアを生成することで開始する（Ｓ１１０）。公開鍵は、それぞれ、｛ＰＡ１，ＰＡ２｝及び｛ＰＢ１，ＰＢ２｝であり、対応する秘密鍵は、それぞれ、｛ＳＡ１，ＳＡ２｝及び｛ＳＢ１，ＳＢ２｝であり秘密に保たれる。公開鍵は、以下の公開鍵を用いて４個のマルチシグネチャアドレスを生成するために（Ｓ１２０）、セキュアなチャネルを通じて交換される。
ＡｄｄＡＢ１＝αＡ＝２−２（ＰＡ１，ＰＢ１）
ＡｄｄＡＢ２＝βＡ＝２−２（ＰＡ２，ＰＢ２）
ＡｄｄＢＡ１＝αＢ＝２−２（ＰＢ１，ＰＡ１）
ＡｄｄＢＡ２＝βＢ＝２−２（ＰＢ２，ＰＡ２）
【０１１９】
デポジットトランザクションＤＸを生成するステップ（Ｓ１３０）は、Ａｌｉｃｅ及びＢｏｂが、それぞれαＡ及びαＢの下でロックされる量ｘのＢｉｔｃｏｉｎ（例えば、ＢＴＣ）をコミットするステップを含む。或いは、時間期間Ｔ１が経過した後に、アウトプットは、ＰＡ１に基づく又はＰＢ１に基づくアドレスを介して償還できる。Ｂｏｂ及びＡｌｉｃｅは、協力して、彼らのインプットを追加し、デポジットトランザクションＤＸのスクリプトに署名する。ブロックチェーンは、トランザクションがブロードキャストされ及び確認されたか否かを検証するために、検査される（Ｓ１４０）。否である場合、処理は終了する。
【０１２０】
デポジットトランザクションＤＸがブロードキャストされた場合、Ａｌｉｃｅ及びＢｏｂのメイントランザクション、それぞれＴＸＡ及びＴＸＢは、変更される（Ｓ１５０）。メイントランザクションＴＸＡ、ＴＸＢがブロードキャストのために交換される前に、Ａｌｉｃｅ及びＢｏｂは、トランザクションに含まれる追加のアウトプット又はロックアウトプットに合意する。ロックアウトプットは、後に発行される払い戻しメカニズムのアウトプットをトリガし、アンロックし、又は解放するよう機能する。トリガは、条件が満たされることである。これは、リソース及びロックアウトプットが両方ともインプットとして利用可能であることである。重要なことに、払い戻しメカニズムがブロードキャストされると、両方のインプットが利用可能になり、その他の場合には、マイナーは、インプットが利用可能ではないと知り、トランザクションをブロックチェーンへの追加のためにブロックに追加しない。
【０１２１】
ロックアウトプットは、幾らかのダストｄのＢＴＣ、つまり数Ｓａｔｏｓｈｉであり、Ｐ２ＳＨ（pay−to−script−hash）の下でロックされており、宛先アドレスＡｄｄＡＢ２（βＡ）及びＡｄｄＢＡ２（βＢ）を有し、従って、払い戻しメカニズムへのインプットをアンロックするためには、Ａｌｉｃｅ及びＢｏｂの両者の秘密鍵を要求する。
【０１２２】
メイントランザクションが署名され交換されたかどうかを決定するためにチェックが行われる（Ｓ１６０）。否であり、時間Ｔ１が経過した場合、Ａｌｉｃｅ及びＢｏｂは彼らのデポジットを取り戻す。
【０１２３】
メイントランザクションが署名され交換された場合、払い戻しトランザクションが生成される（Ｓ１７０）。Ａｌｉｃｅの払い戻しを一例として用いると、彼女の払い戻しトランザクションＲＸＡは、デポジットトランザクションＤＸの中のアドレスＡｄｄＡＢ１（αＡ）へ送信されたＵＴＸＯと、Ｂｏｂにより生成されたメイントランザクションＴＸＢの中のアドレスＡｄｄＢＡ２（βＢ）へ送信されたダストのＵＴＸＯと、をインプットとして有する。アウトプットは、別のアドレス、つまりγＡへ送信される。Ｂｏｂは同じことを行う。
【０１２４】
チェックが行われ（Ｓ１８０）、時間Ｔ１の経過する前に、両方の払い戻しトランザクションが署名されない場合、Ａｌｉｃｅ及びＢｏｂは彼らのデポジットを取り戻す。
【０１２５】
両方の払い戻しトランザクションが署名された場合、補償トランザクションが生成される（Ｓ１９０）。これらはタイムロックされ、メイントランザクションがブロードキャストされず且つ時間Ｔ２が経過した場合、デポジットアカウント内に保持されＡｄｄＡＢ１及びＡｄｄＢＡ１によりセキュアにされているリソースは、Ａｌｉｃｅ及びＢｏｂの別のアドレス、それぞれπＡ及びπＢへ出力される。
【０１２６】
チェックが行われ（S２００）、時間Ｔ１の経過する前に、両方の補償トランザクションが署名されブロードキャストされない場合、Ａｌｉｃｅ及びＢｏｂは彼らのデポジットを取り戻す。
【０１２７】
両方の補償トランザクションが署名されブロードキャストされた場合、Ａｌｉｃｅ及びＢｏｂは、メイントランザクションＴＸＡ、ＴＸＢをブロードキャストする（Ｓ２１０）。彼らのブロードキャストが確認されると、Ａｌｉｃｅ及びＢｏｂは、彼らの払い戻しメカニズムをブロードキャストする（Ｓ２２０）。
【０１２８】
チェック（Ｓ２３０）は、メイントランザクションがブロードキャストされたか否かを確認する。時間Ｔ２が経過する前に、一方又は両方がブロードキャストされなかった場合、補償トランザクション又はメカニズムは、デポジットアカウント内に保持されＡｄｄＡＢ１及びＡｄｄＢＡ１によりセキュアにされているリソースを、Ａｌｉｃｅ及びＢｏｂの別のアドレス、それぞれπＡ及びπＢに割り当てるよう機能する。
【０１２９】
図８は、図６の処理をフェーズに簡略化し、与えられる例について、トランザクションが交換され及び／又は署名される順序又はフェーズを強調する。
【０１３０】
第１フェーズは、Ａｌｉｃｅ及びＢｏｂによる、デポジットトランザクションＤＸの準備及びブロックチェーン上への後のブロードキャストを含む。ここで第１フェーズが終了する。
【０１３１】
第２フェーズは、メイントランザクションＴＸＡ、ＴＸＢの準備及び交換、払い戻しトランザクションの生成及び署名、並びに、Ａｌｉｃｅ及びＢｏｂの補償トランザクションＣＸＡ、ＣＸＢの生成及び署名、を含む。第２フェーズは、補償トランザクションのブロードキャストにより終了する。
【０１３２】
第３フェーズは、署名されたメイントランザクションＴＸＡ、ＴＸＢのブロードキャストである。
【０１３３】
第４フェーズ、つまりＴ２の前の期間で、Ａｌｉｃｅ及びＢｏｂは、メイントランザクションＴＸＡ、ＴＸＢがブロードキャストされたことを確認し、ブロードキャストが確認されると、彼らは続いて彼らの払い戻しメカニズムＲＸＡ、ＲＸＢをブロードキャストする。
【０１３４】
第５フェーズ、つまり期間Ｔ２とＴ１の間で、メイントランザクションＴＸＡ、ＴＸＢが時間内にブロードキャストされたことを確認するためにチェックが行われ、否の場合、自身のトランザクションがブロードキャストされなかったパーティは、彼らの補償トランザクションの中のＵＴＸＯを使用できる。
【０１３５】
第６フェーズは、時間Ｔ１が経過する前にアクションが行われなかった場合に、Ａｌｉｃｅ及びＢｏｂがデポジットトランザクションＤＸの中に置かれた彼らのＵＴＸＯにアクセスできることを保証する。
【０１３６】
＜適用＞
当該方法は、金融及び非金融リソースへの条件付きのセキュアなアクセスを可能にするのに適することが上述の通り強調された。種々のシナリオが考えられ、その中で、メイントランザクション及び／又はデポジットのリソースは、情報を交換するために使用される。これらのトランザクションは、スクリプトにより又はアウトプットリターンスクリプトに埋め込むことのできるデータ又はメタデータを含むことができる。
【０１３７】
非金融リソースへのアクセスは、例えば、タスクの完了と引き換えに文書への暗号化リンクを提供するデポジットメカニズムに組み込まれた追加アウトプットを介して提供できる。追加アウトプットは、ロックメカニズムからのアウトプットによりアクセスするために解放され又は利用可能にされ得る。例えば、追加アウトプットへのアクセスは、ロックメカニズムが記録されブロックチェーンに追加された、ブロックの追加の日時に関連付けられたデータのハッシュによりセキュアにされ得る。タスクが完了し、ロックメカニズムがブロードキャストされると、ブロックの部分としてブロックチェーンに追加された日時が知られる。デポジットメカニズムのスクリプトは、ロックメカニズムがブロードキャストされるまで、追加アウトプットをセキュアにするために記述できる。
【０１３８】
本発明は、例えば図６〜８に示され説明された。本発明は、しかしながら、これらに限定されない。デポジットトランザクションのブロードキャスト、並びに、メイントランザクション及び払い戻しトランザクションの後の準備、その後に続く、払い戻しトランザクションを介するリソースへのアクセスと引き換えの、メイントランザクションの連続ブロードキャストは、本発明の中核である。例では、トランザクションＴＸは、２つのアウトプットを有し、第２アウトプット、つまりダストは、ロックメカニズムへの第２インプットとして使用される。リソースへのアクセスをロックするために「ダスト」が使用できるが、このようなアウトプットは、代替として、多額の暗号通貨であり、支払い、例えば映画のようなリソースへのアクセスのための支払いを構成できる。更に、提供される例は、２つのパーティの間の交換が同等のサイズであることを示唆するが、ここでの教示の観点から、デポジットメカニズム及び／又はトランザクションのアウトプットは、２つのパーティの間で異なり得る。
【０１３９】
非金融用途は、例えば以下を含んでよい。
・顧客は映画のデジタルダウンロードを購入したいと望み、１回のダウンロードを可能にするアクセスコードと引き換えに支払いを行うことを配信者と合意する。コードは、デポジットトランザクションのスクリプト内でセキュアにされ、顧客は、ブロードキャストすべきトランザクションを提供され得る。ブロードキャストされる該トランザクションは、配信者への支払いを含む。トランザクションがブロードキャストされると、コードは顧客に利用可能にされる。
・機密プロジェクトの連続的段階に取り組んでいるソフトウェア開発者は、後続の段階においてデータへのアクセスを与えられる前に、仕事又は段階を完了するよう要求される。例えば、ある段階からの仕事の成果又はコンパイルされたプログラムが完了したことを示すコードは、ブロードキャストのためにトランザクションに組み込むことができる。該ブロードキャストは、該仕事の完了を証明し、適合すると、プログラマが別の段階に取り組むことを可能にするデータを解放する条件になる。
・独立したプログラマ及び特定の機能を実行するためにプログラムを要求するクライアントは、プログラムを作成することに合意する。トランザクションＴＸＡ及びＴＸＢのうちの一方は、仕事に対する請求書／領収書を含み、他方は作業者への支払いを含み得る。クライアントにより行われたデポジットは、初期のハードウェア投資からプログラマを事前に保護でき、一方で、プログラマにより行われたデポジットは、プロジェクトを時間通りに完了するためのコミットメントであり得る。トランザクションは、仕事の完了後に、署名され、ネットワークへ送信され得る。
【０１４０】
＜まとめ＞
当該方法は、リソースへの条件付きアクセスを可能にする。条件は、タスクの実行である。タスクは、別のパーティ又はエンティティの代わりに１つのパーティ又はエンティティにより実行できる。リソースへのアクセスを制御する人又はシステムは、ブロックチェーン上でのトランザクションのブロードキャストを含むタスクを生成する。特に、トランザクション（タスクの部分）は、ロックアウトプットを含む複数のアウトプットを有する。
【０１４１】
タスクが完了したときにのみ、リソースへのアクセスを可能にする追加のトランザクション又はメカニズムが生成される。リソースへのアクセスは、（ｉ）条件付きで利用可能にするリソースの初期ブロードキャスト（該リソースは、提供された例では暗号通貨額であるが、等価的にアクセスコードであり得る）、（ｉｉ）リソースへのアクセスを可能にする条件を満たす又は適合するトランザクションの後のブロードキャスト、により達成される。段階的なブロードキャストは、実行に基づくアクセスを提供する。更に、別のパーティによるブロードキャストのために一方のパーティによりトランザクションを生成することは、トランザクションのソースを難読化又は不明瞭化する。
【０１４２】
リソースへのアクセスをロックするために、マルチシグネチャ及び特区または払い戻しメカニズムがパーティにより使用される。初期デポジットブロードキャストは、リソースを条件付きで利用可能にするが、払い戻しメカニズムによりロックされるので、アクセスは禁止される。タスク、及びブロードキャストされるべきトランザクションが生成され、トランザクションは、第２マルチシグネチャによりセキュアにされ更に払い戻しメカニズムよりロックされるロックアウトプットを有する。リソースへのアクセスは、しかしながら、払い戻しメカニズムの両方のマルチシグネチャが、払い戻しメカニズムのブロードキャストの前に署名されること、及びメイントランザクションのブロードキャストの後にブロードキャストされること、を要求する。ロック、払い戻し、又は報酬メカニズムは、トランザクションがブロードキャストされるまでリソースをセキュアにしておくために生成される。ブロードキャストされたデポジット及びブロードキャストされたトランザクションの両方が払い戻しトランザクションへのインプットを提供することにより、払い戻し又は報酬メカニズムの条件が満たされ、リソースは、タスクを完了したパーティ、つまりトランザクションをブロードキャストしたパーティによりアクセスできる。
【０１４３】
参考文献
［１］Dandelion  Venkatakrishnan,  S.B.,  Fanti,  G.  and  Viswanath,  P.,２０１７.  Dandelion:  Redesigning  the  Bitcoin  Network  for  Anonymity.  arXiv  preprint  arXiv:１７０１.０４４３９.
https://arxiv.org/pdf/１７０１.０４４３９.pdf
［２］De−anonymisation  Biryukov,  A.,  Khovratovich,  D.,  &  Pustogarov,  I.  (２０１４,  November).
Deanonymisation  of  clients  in  Bitcoin  P２P  network.
In  Proceedings  of  the  ２０１４  ACM  SIGSAC  Conference  on  Computer  and  Communications  Security  (pp.１５−２９).ACM.
https://arxiv.org/pdf/１４０５.７４１８.pdf
［３］Tor
Dingledine,  R.,  Mathewson,  N.,  &  Syverson,  P.  (２００４).
Tor:  The  second−generation  onion  router.
Naval  Research  Lab  Washington  DC.
A  Bitcoin  Developer  Reference  is  retrievable  from  http://bitcoin.org/en/developer−reference.
【図１】
2021513254.tif 000004
【図２】
2021513254.tif 000005
【図３】
2021513254.tif 000006
【図４】
2021513254.tif 000007
【図５】
2021513254.tif 000008
【図６】
2021513254.tif 000009
【図７】
2021513254.tif 000010
【図８】
2021513254.tif 000011
【国際調査報告】
2021513254.tif 000012
2021513254.tif 000013
2021513254.tif 000014