(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-04-22
(45)【発行日】2024-05-01
(54)【発明の名称】ブロックチェーンにより実現される方法及びシステム
(51)【国際特許分類】
H04L 9/32 20060101AFI20240423BHJP
G06F 21/64 20130101ALI20240423BHJP
G07B 15/00 20110101ALI20240423BHJP
【FI】
H04L9/32 200B
H04L9/32 200Z
G06F21/64
G07B15/00 N
【外国語出願】
(21)【出願番号】P 2023069821
(22)【出願日】2023-04-21
(62)【分割の表示】P 2022006069の分割
【原出願日】2017-07-21
【審査請求日】2023-04-21
(32)【優先日】2016-07-29
(33)【優先権主張国・地域又は機関】GB
(73)【特許権者】
【識別番号】318001991
【氏名又は名称】エヌチェーン ライセンシング アーゲー
(74)【代理人】
【識別番号】100107766
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】ヴィンセント,ステファヌ
【審査官】中里 裕正
(56)【参考文献】
【文献】特開2008-204215(JP,A)
【文献】特開2013-127756(JP,A)
【文献】特表2011-513839(JP,A)
【文献】米国特許出願公開第2015/0332224(US,A1)
【文献】国際公開第03/079256(WO,A1)
【文献】国際公開第2015/083278(WO,A1)
【文献】HILLBOM,E. and TILLSTROM, T.,Applications of smart-contracts and smart-property utilizing blockchains,[online],2016年02月,pp.1-37,<URL:https://odr.chalmers.se/handle/20.500.12380/232113>,,[2021年8月26日検索]
(58)【調査した分野】(Int.Cl.,DB名)
H04L 9/32
G06F 21/64
G07B 15/00
(57)【特許請求の範囲】
【請求項1】
駐車スペースの使用及び/又は駐車スペースへのアクセスを制御する、ブロックチェーンにより実現される方法であって、
前記駐車スペースの使用及び/又は前記駐車スペースへのアクセスに関する条件を示すブロックチェーントランザクションを生成するステップであって、前記ブロックチェーントランザクションは、前記ブロックチェーントランザクションの完了のために複数の署名を必要とするマルチシグネチャスクリプトを含む、ステップと、
前記複数の署名のうちの第1のサブセットを前記ブロックチェーントランザクションに提供して、部分的に署名された署名スクリプトを生成し、前記ブロックチェーントランザクションを部分的に完了するステップと、
前記駐車スペースの使用及び/又は前記駐車スペースへのアクセスに関する前記条件が充足されたことに応じて、前記複数の署名のうちの第2のサブセットを前記ブロックチェーントランザクションに提供して、前記ブロックチェーントランザクションを完全に完了するステップと、
を含む、方法。
【請求項2】
前記複数の署名のうちの前記第2のサブセットを前記ブロックチェーントランザクションに提供することは、複数の部分的に署名されたマルチシグネチャトランザクションから前記ブロックチェーントランザクションを選択することを含む、請求項1記載の方法。
【請求項3】
前記駐車スペースの使用に関する前記条件は、前記駐車スペースにおける離散量の時間の使用であり、前記複数の署名のうちの前記第2のサブセットは、前記駐車スペースにおける前記離散量の時間が使用されたことに応じて提供される、請求項1又は2記載の方法。
【請求項4】
前記駐車スペースの使用及び/又は前記駐車スペースへのアクセスに関する条件を示すブロックチェーントランザクションを生成することは、前記駐車スペースにおける前記離散量の時間の各整数倍に対応するブロックチェーントランザクションを生成することを含み、前記複数の署名のうちの前記第2のサブセットは、前記駐車スペースにおける前記時間の各増大した整数倍の使用について提供される、請求項3記載の方法。
【請求項5】
前記整数倍の最大限度は、予め規定される、請求項4記載の方法。
【請求項6】
前記最大限度の超過に応じて、オフブロックアクションが引き起こされる、請求項5記載の方法。
【請求項7】
前記複数の署名のうちの前記第1のサブセットは、エージェントからの署名を含む、請求項1乃至6いずれか一項記載の方法。
【請求項8】
前記複数の署名のうちの前記第1のサブセットは、前記駐車スペースの発行者からの署名を含む、請求項1乃至6いずれか一項記載の方法。
【請求項9】
前記複数の署名のうちの前記第2のサブセットは、エージェントからの署名を含む、請求項8記載の方法。
【請求項10】
前記複数の署名のうちの前記第2のサブセットは、前記駐車スペースの利用者からの署名を含む、請求項7記載の方法。
【請求項11】
前記駐車スペースの使用に関する前記条件は、前記駐車スペースにおける時間量が使用されていないことである、請求項1乃至10いずれか一項記載の方法。
【請求項12】
前記ブロックチェーントランザクションは、ゼロでないロック時間を有する、請求項1乃至11いずれか一項記載の方法。
【請求項13】
以前のトランザクションに関連付けられた出力を使用するために、前記の完全に完了されたブロックチェーントランザクションをブロックチェーンに送るステップ
を含む、請求項1乃至12いずれか一項記載の方法。
【請求項14】
請求項1乃至13いずれか一項記載の方法を実行するよう構成されているコンピュータリソースを含むシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、一般に、分散型台帳技術(DLT)に関し、より詳細には、リソースの使用を制御するためのブロックチェーンの使用に関する。本発明の態様は、インターネットオブシングス(IoT)にも関する。本発明は、IoTデバイスを制御するのに適し得る。
【背景技術】
【0002】
本文書において、便宜上、参照しやすいように、「ブロックチェーン」という用語が使用される。なぜならば、これは、このコンテキストにおいて現在最も広く知られている用語であるからである。本開示において、この用語は、コンセンサスベースのブロックチェーン、代替チェーン、サイドチェーン及びトランザクションチェーン技術、個人及び公開台帳、認可型及び認可不要型台帳、共有台帳、並びにこれらの変形を含む全ての形態の電子的でコンピュータベースの分散型台帳を含むように、使用される。
【0003】
ブロックチェーンは、トランザクションから構成されるブロックから構成されるコンピュータベースの非中央集権型の分散型システムとして実装される電子台帳である。各トランザクションは、少なくとも1つの入力及び少なくとも1つの出力を含む。各ブロックは、前のブロックのハッシュを含み、ブロックが一緒にチェーン状に連なって、ブロックチェーンの最初からブロックチェーンに書き込まれた全てのトランザクションの永続的で変更できないレコードが作成される。トランザクションは、その入力及び出力に埋め込まれたスクリプトとして知られる小さなプログラムを含み、これらは、トランザクションの出力がどのように誰によってアクセスされ得るかを指定する。ビットコインプラットフォームにおいて、これらのスクリプトは、スタックベースのスクリプト言語を使用して記述される。
【0004】
トランザクションがブロックチェーンに書き込まれるためには、トランザクションは、i)トランザクションを受信した第1ノードにより検証され-トランザクションが検証された場合には、このノードは、ネットワークにおける他のノードにトランザクションを中継し-、ii)マイナーにより構築された新たなブロックに追加され、iii)マイニングされなければならない、すなわち、過去のトランザクションの公開台帳に追加されなければならない。
【0005】
他のブロックチェーン実装も提案及び開発されているが、ブロックチェーン技術の最も広く知られている用途はビットコイン台帳である。本開示において、ビットコインが、便宜及び例示の目的で参照され得るが、本発明は、ビットコインブロックチェーンとともに使用することに限定されるものではなく、代替のブロックチェーン実装も本発明の範囲内に属することに留意すべきである。
【0006】
ブロックチェーン技術が、暗号通貨実装の使用について最も広く知られている。しかしながら、より最近では、デジタルアントレプレナーが、新たなシステムを実装するために、ビットコインが基づく暗号セキュリティシステムとブロックチェーン上に格納され得るデータとの両方の使用を模索し始めている。
【0007】
現在の関心及び研究の一領域は、「スマートコントラクト(契約)」の実装にブロックチェーンを使用することである。スマートコントラクトは、契約又は合意の条件の実行を自動化するように設計されたコンピュータプログラムである。自然言語で記述されるであろう従来の契約とは異なり、スマートコントラクトは、結果を生成するために入力を処理することができるルールを含み、次いで、その結果に応じてアクションを実行させることができる、マシンが実行可能なプログラムである。ブロックチェーン関連の別の関心領域は、ブロックチェーンを介して現実世界のエンティティを表現及び移転するための「トークン」(又は「カラードコイン」)の使用である。潜在的に機密の又は秘密のアイテムは、識別可能な意味又は値を有しないトークンにより表現され得る。したがって、トークンは、現実世界のアイテムが参照されることを可能にする識別子として機能する。
【発明の概要】
【0008】
本発明はまた、リソースへのアクセスを制御するための、ブロックチェーンにより実現されるメカニズムの使用に関する。このリソースは、「インターネットオブシングス(IoT)」デバイス等の物理リソースであり得る。IoTは、Wikipedia(登録商標)において、「データを収集及び交換することを可能にする電子機器、ソフトウェア、センサ、及びネットワーク接続が組み込まれた物理デバイス、乗り物、建物、及び他のアイテムのネットワーク...。IoTは、対象が、既存のネットワークインフラストラクチャを介してリモートで検知及び制御されることを可能にする」と記載されている。他の実施形態において、リソースは、ネットワーク又はソフトウェア等の非物理リソース、暗号通貨の一部、又は任意の他の形態の資産であってよい。
【0009】
本発明は、請求項において定められる。
【0010】
本発明は、コンピュータにより実行される方法及び対応するシステムを提供する。本発明は、ブロックチェーンにより実現される制御方法を提供し得る。この方法は、リソースの使用及び/又はリソースへのアクセスを許可する、リソースの使用及び/又はリソースへのアクセスに影響を及ぼす、リソースの使用及び/又はリソースへのアクセスを管理する、又は、リソースの使用及び/又はリソースへのアクセスを制御するよう構成され得る。リソースは、インターネット対応リソースであり得る。リソースは、IoT(インターネットオブシングス)リソースであり得る。リソースは、デバイス若しくは装置等の物理リソース又はプロセスであり得る。リソースは、ネットワーク又はソフトウェア等のコンピュータベースのリソースであり得る。
【0011】
この方法は、
リソースの使用に関する条件を示すブロックチェーントランザクション(TxA)を生成するステップであって、ブロックチェーントランザクションは、ブロックチェーントランザクションの完了のために複数の(デジタル)署名を必要とするマルチシグネチャスクリプトを含み得る、ステップ;及び/又は
複数の署名のうちの第1のサブセットをブロックチェーントランザクションに提供して、部分的に署名された署名スクリプトを生成し、ブロックチェーントランザクションを部分的に完了するステップ;及び/又は
リソースの使用に関する条件が充足されたことに応じて、複数の署名のうちの第2のサブセットをブロックチェーントランザクションに提供して、ブロックチェーントランザクション(TxA)を完全に完了するステップ
を含み得る。
【0012】
このような方法を提供することにより、リソースの使用/リソースへのアクセスをセキュアに行って不変に記録することができるという利点が得られる。読みやすいように、以下において、「及び/又はリソースへのアクセス」という語が繰り返されず、単に「リソースの使用」と参照されることがある。
【0013】
リソースの使用に関する条件は、リソースの離散量の使用であり得、複数の署名のうちの第2のサブセットは、リソースが離散量使用されたことに応じて提供され得る。リソースの使用に関する条件は、スマートコントラクトにおいて指定又は規定され得る。スマートコントラクトは、ブロックチェーン外で格納されてもよいが、例えば、トランザクション内に提供されているメタデータを使用して、ブロックチェーンから参照され得る。
【0014】
これにより、リソースが増加的に使用又は消費され得るという利点が得られる。
【0015】
リソースの使用/リソースへのアクセスに関する条件が充足されていない場合:リソースへのアクセス及び/又はリソースの使用が、禁止若しくは変更又は制限され得る;且つ/又は、アラート又は通知が、宛先に送られ得る。
【0016】
複数のトランザクションが生成され得る。これらは、部分的に署名されたトランザクションであり得る。これらは、マルチシグネチャトランザクションであり得る。複数の署名のうちの第2のサブセットをブロックチェーントランザクション(TxA)に提供して、ブロックチェーントランザクション(TxA)を完了する最後のステップは、複数のトランザクションからブロックチェーントランザクション(TxA)を選択することを含み得る。複数のトランザクションの各々は、以前のトランザクション(Tx1)の同じ出力を使用するよう構成され得る(「以前」は、出力を含むトランザクションが、ブロックチェーンにおいて複数のトランザクションよりも先行することを意味する)。したがって、条件が充足されたと判定されると、ブロックチェーントランザクション(TxA)が、複数の部分的に署名されたトランザクションから選択され、完了され得る。トランザクションの選択及び/又は完了は、エージェントの暗号鍵の提供を含み得、エージェントにより行われ得る。エージェントは、適切にプログラムされた自動化されたリソースであり得る。エージェントは、選択されたブロックチェーントランザクション(TxA)をブロックチェーンネットワークに送ることができる。ブロックチェーン上のトランザクションの検証は、ブロックチェーン上のトランザクション出力(TX1出力)を使用することにより、暗号通貨の一部等の資産を、一のパーティから別のパーティに移転させ得る。
【0017】
複数のトランザクションの各々は、リソースの使用に関する異なる条件を示し得る。したがって、複数のトランザクションは、リソースの使用に関する複数の条件(又はシナリオ)を実現し得る。完了して送るべきトランザクションを選択することにより、本発明は、トランザクション(Tx1)の出力がどのように使用されるかと、出力に関連付けられた暗号通貨がどのように移転されるかと、を制御する。
【0018】
1つ以上の条件の充足は、条件を評価するための入力又は信号を使用して、エージェントにより判定され得る。この入力又は信号は、エージェントにより生成されることもあるし、別のソースから受け取られることもある。この入力又は信号は、例えば、物理的又は電子的状態の検出、時点、又は任意の他の入力であり得る。
【0019】
リソースの使用に関する条件を示すブロックチェーントランザクションを生成することは、リソースの離散量の各整数倍に対応するブロックチェーントランザクションを生成することを含み得、複数の署名のうちの第2のサブセットは、リソースの各増大した整数倍の使用について提供され得る。
これにより、種々の使用オプションを提供し、それにより、この方法の汎用性を増大させるという利点が得られる。例えば、ネットワーク使用の諸部分又は量や、駐車スペース、デバイス等といったリソースが使用される時間の長さである。
【0020】
整数倍の最大限度は、予め規定され得る。
これにより、リソースの過剰使用に起因する結果が、暗示され実施されることを可能にするという利点が得られる。
【0021】
最大限度の超過に応じて、オフブロックアクションが引き起こされ得る。「オフブロック」という用語は、「ブロックチェーンを介さない」を意味すると解釈され得る。
これにより、リソースの過剰使用に起因する結果が行われることを提供するという利点が得られる。
【0022】
複数の署名のうちの第1のサブセットは、エージェントからの署名を含み得る。エージェントは、コンピューティングベースのリソースであり得る。
これにより、この方法のセキュリティを高めるという利点が得られる。
【0023】
複数の署名のうちの第1のサブセットは、リソースの発行者若しくは所有者又は管理者からの署名を含み得る。
複数の署名のうちの第2のサブセットは、エージェントからの署名を含み得る。
複数の署名のうちの第2のサブセットは、リソースの利用者からの署名を含み得る。
これにより、発行者又は利用者がこの方法を悪用するのを防止するという利点が得られる。
【0024】
リソースの使用に関する条件は、リソースが使用されていないことであり得る。
これにより、払い戻しがなされるための条件を規定するという利点が得られる。
【0025】
ブロックチェーントランザクションは、ゼロでないロック時間を有し得る。
これにより、利用者がこの方法を悪用するのを防止するという利点が得られる。
【0026】
本発明はまた、本開示に記載の方法のいずれかの実施形態に従った方法を実行するよう構成されているコンピュータベースのリソースを含むシステムを提供し得る。本発明の一態様又は実施形態に関連して言及される任意の1つ以上の特徴は、任意の他の態様又は実施形態にも適用され得る。方法に関連して言及される任意の1つ以上の特徴は、本発明のシステムに適用されてもよく、その逆も同様である。本発明の実施形態は、実質的に以下で説明されるように構成され得る。
【0027】
本発明のこれらの態様及び他の態様は、本開示に記載の実施形態から明らかになり、本開示に記載の実施形態を参照して説明される。
【図面の簡単な説明】
【0028】
本発明の実施形態が、図面を参照して、例として説明される。
【
図1b】顧客が、本システムを使用して、駐車の料金を支払うために一連のブロックチェーントランザクションをどのようにセットアップし得るかを示すフローチャート。
【
図2】アリスが初期期間について駐車の料金を支払うトランザクションの図。
【
図3】駐車スペースが10分という期間使用されたときに、エージェントにより生成され、エージェントによる署名の前にボブの署名のためにボブに送られるトランザクションの図。
【
図4a】駐車スペースの使用に関するシナリオを概略的に示す図。
【
図4b】駐車スペースの使用に関する異なるシナリオを概略的に示す図。
【
図5】超過時間が使用されないときに、エージェントにより署名されアリスに送られる、エージェントにより生成されるトランザクションの図。
【発明を実施するための形態】
【0029】
概要
本発明は、制御されるリソースの使用及び/又は制御されるリソースへのアクセスを許可するための、又は、リソースへのアクセス/リソースの使用を管理するための、新規な技術を提供する。これは、リソースの使用又はリソースへのアクセスに関する種々の使用/アクセスシナリオを実現する複数のブロックチェーントランザクションを使用することにより実現される。例えば、一のトランザクションは、リソースの指定された時間期間の使用に関し、別のトランザクションは、リソースの異なる時間期間の使用に関する。
【0030】
利用者(すなわち、リソースにアクセスする又はリソースを使用する人)は、ブロックチェーンに対して意図的な「二重使用」の試みを行う。当技術分野において知られているように、「二重使用」は、利用者が、例えばビットコインを2回といった、同じ暗号通貨部分を使用しようとしたときに発生する。明らかなことに、二重使用は、少なくとも一のパーティが、期待していた又は合法的に支払われる資金を受け取らないことによって不利益を被るので、従来のコンテキストにおいては望ましくない。ビットコインプロトコルは、その検証メカニズムによって、二重使用に対して保護する。したがって、本発明は、許可の目的のために、従来においては望ましくないプロセスを採用し、それを効果的に使用する。
【0031】
本発明に従うと、リソース利用者は、資産をリソース管理者に提供する。この資産は、便宜上、ビットコインと呼ばれる暗号通貨の一部であってよいが、他の暗号通貨が使用されてもよい。そのビットコインの量は、スマートコントラクト内で通常規定される条件ルールのセットにより決定される。スマートコントラクトは、ブロックチェーンにより実現される、マシンが実行可能な文書であり、ブロックチェーン外(オフチェーン)で格納されてもよいが、ブロックチェーントランザクション(Tx)を介して参照され得る。条件ルールは、リソースの/への許可された正当な使用/アクセスを管理又は規定する様々なルール、基準、及びパラメータ等を含み得る。好ましい実施形態において、これらの条件ルールは、独立したパーティ、すなわち、リソース利用者又は管理者以外のパーティにより評価される。
【0032】
したがって、有利なことに、リソース管理者は、充足条件の詳細を知る必要なく、条件が充足されることになるという確信を有する。なぜならば、これらは、独立したパーティにより判定及び施行されることになるからである。これは、オラクルと呼ばれ得る自動化されたエージェントであり得る。オラクルは、行われた評価に基づいて、条件の充足を判定する。これは、リソースの/の/への使用/解放/アクセスが許可されるとき、予め定められた時間において、又は、トリガイベントが検出されたとき、等であり得る。この評価は、オラクルが、提案されたブロックチェーントランザクションのうちの1つを、完了に進めるために選択することを可能にする。これは、オラクルの暗号署名を、選択されたトランザクションに提供することにより実現される。したがって、スマートコントラクトにより提供される1つ以上の条件を評価し、リソースがどれくらいの時間使用されたかといった、使用/アクセスに関するパラメータに基づいて、複数の提示されたトランザクション(Txs)のうちのどれが完了されるかを判定する外部オラクルが存在する。次いで、これは、他の提案された1つ以上のトランザクションを自動的に無効にする。
【0033】
1つ以上の条件が充足されていないとオラクル又はエージェントが判定した場合、応答ステップが、オラクル及び/又はリソース管理者により行われ得る。例えば、リソースの使用/リソースへのアクセスが拒否され得る、ロックメカニズムが適用又は構成され得る、あるいは、アラート等の伝達が受領者に送られ得る、且つ/又は、払い戻しトランザクションがブロックチェーンネットワークに送られ得る。
【0034】
例示的なユースケース
駐車スペースに駐車するために料金が請求される駐車スペースの例を使用する例示的な実施形態に従ったシステムが説明される。関係する駐車スペース所有者(駐車スペース運営者若しくは中小企業、又は、利用可能で望ましい駐車スペースを有する個人)は、IoTデバイス104を駐車場所に取り付ける。しかしながら、本発明は、駐車料金計とともに使用することに限定されるものではない。他のタイプの制御されるインターネット対応リソースが、代わりに本発明の対象であってもよい。
【0035】
IoTデバイス104は、(すでに一般的に行われているように)駐車された車の存在を検出することができる。デバイスは、ブロックチェーンIoTデバイス106の一部であってもよいし、ブロックチェーンIoTデバイス106であってもよい。プログラム可能な「ブロックチェーンIoTデバイス(BID)」は、ブロックチェーンネットワークをモニタリングし、ブロックチェーンネットワークとインタラクトし、ブロックチェーンネットワークに公開することもできるインターネット対応デバイスである。
【0036】
車の運転者は、駐車場BID106に対応したスマートフォンアプリケーション(又は、「スマートカー」アプリケーション-すなわち、車両コンピュータ上で動作するように設計されているアプリケーション)をダウンロードする。このアプリケーションは、運転者が、暗号通貨又はトークン化された暗号通貨を使用してブロックチェーンを介して車両スペースの料金を支払うことを可能にする。
【0037】
駐車サービスは、スマートコントラクトを使用して表現され得る。これは、マシンが読み取り可能で実行可能な文書である。スマートコントラクトにおける条件は、DHT上のスマートコントラクトファイルの位置を指し示すトランザクション(Txs)におけるメタデータを使用して参照される。他の実施形態において、スマートコントラクトは、任意の他の形態のデータベース又は記憶装置に格納されてもよい。スマートコントラクトにおいて提示される条件は以下を含み得る:
・車両ID(例えばナンバープレート)
・駐車の開始時間
・満了時間
・車両スペース識別子(例えば、正確なGPS位置若しくは居住地住所又は住所+シーケンス番号(これは、実際のスペースにおいても塗装され得る又はスペースの物理的位置においても他の形で示され得る)
・レート(例えば、satoshis/分又は$/分等で表現され得る)
・以下のような他の複雑な条件
-最初の2時間(又は他の期間)は無料である
-費用は部分的な期間単位である(例えば、「1時間又はその一部あたり0.01BTC」)
【0038】
いくつかの実施形態において、BID106は、いくつかの方法のうちの1つを介して、車両を識別することができる。例えば、BID106は、車両ナンバープレートの一般的な領域に向けられる内蔵カメラを含み得る。別の例において、BID106は、車両により発せられた一意な信号IDを検出する。別の例において、専用の車両タグRFIDが、車両に取り付けられる。いくつかの実施形態において、BID106は、(例えば、プライバシーの目的で)車両を識別することができず、代わりに、駐車係員が、支払いトランザクションにおいて登録されているナンバープレートに対して車両ナンバープレートを目視チェックすることにより、正しい車両が駐車されたことを検証できる。
【0039】
アプリケーションは、例えば以下のような種々の機能を可能にし得る:
・運転者は、将来の期間について駐車場所を予約することができる
-予約は、ビットコインでの前払いを必要とすることがある(必要としないこともある)
・運転者は、支払い時間が満了した場合に自動的に支払いをして別の期間(調整可能)先延ばしするように、アプリケーションを設定することができる
・アプリケーションは、定期駐車を可能にしてもよい(例えば、平日について予約)
【0040】
図1aに示されているように、システム100は、駐車スペース102、インターネット対応(インターネットオブシングスすなわち「IoT」)デバイス104、ブロックチェーンインターネットオブシングスデバイス(BID)106、ブロックチェーンを支えるピアツーピアネットワークへのアクセスを提供するよう動作するブロックチェーンサーバ108、及び、ブロックチェーンをモニタリングするよう動作し、IoTデバイス104及びBID106と通信するエージェント110を含む。
【0041】
図1bにおけるフローチャートを参照して、システム100を用いる駐車スペースの使用が説明される。アリスは、ブロックチェーンに問い合わせることにより利用可能な車両スペースの位置を示すスマートフォンアプリケーションを有する。ステップS100において、アリスは、都合の良い場所を探し、自分の車を駐車する。アプリケーションは、例えばロンドン又はロサンゼルス等の都心の密集した場所にある居住地の車道にあり得るこのスペースについての条件を示す。
【0042】
ステップS102において、アリスは、条件を承諾し、所定のオプションを選択した後、アプリケーションを使用して、必要とされる時間についてビットコインでスペースの料金を支払う。アリスは、アリスが、時間までに戻るかどうかを100%は確信できないので、アプリケーションにより提供される、10分経過するたびに10分だけ駐車期間を3回まで延長して自動的に支払うオプションも選択する(アリスは、このサービスについての割増金が少々高いと考えてはいるが、アリスは、満了後に戻ってきた場合の罰金及び評判の失墜を避けるために、これを支払うことをいとわない)。
【0043】
もちろん、アリスは、満了時間がさし迫った場合に、スマートフォンアプリケーションがリモートで期間を単に延長する機能を提供していることを知っているが、アリスは、ミーティングに参加するので、その機会が得られるとは確信できない。その後、アリスは、満了時間よりも前に戻ってくる。スマートフォンアプリケーションは、アリスが不要な先延ばしをキャンセルすることを可能にするが、アリスは、この場合にはアリスがそうする必要がないことを知っている。なぜならば、このBID106のオペレータが、アリスが発車するだけでよいことを許可する設定を有し、BID106が、アリスが先延ばしを利用していないことを検出し、したがって、(契約の通りに)アリスのために先延ばしを自動的にキャンセルするからである。
【0044】
したがって、アリスが、5BTCを支払って1時間駐車スペースを借り、追加時間の費用が、1BTC/10分であると仮定する。
【0045】
5BTCをボブにクレジットする最初のトランザクションは、最初の1時間について料金を支払うP2PKHである。これは、標準ビットコイントランザクションである。
【0046】
Textraが、標準時間期間の後に、すなわち、すでに支払われている最初の1時間の後に、アリスの車が駐車スペースに留まっている時間であると定義される。
Textraは、10の倍数であり、0、10、20、30という値を取る。時間T=60分、70分、80分、及び90分において、BID106は、車が駐車スペースにまだ駐車されているかどうかをチェックする。駐車されていない場合、BID106は、アリス、ボブ、駐車スペース所有者、及び、サードパーティ又は「エージェント」に、メッセージを送る。メッセージは、値Textraを含む。例えば、アリスが、時間65分において駐車スペースに戻った場合、Textra=10であり、ボブは、アリスに1BTCを請求するべきである。しかしながら、アリスは、ボブを信用しておらず、アリスは、独立したサービスを使用して資金を譲渡することを望み、この譲渡は、エージェントサーバの署名を条件とするべきである。エージェントは、例えば「is Textra=10?」といった要求を受け入れ、そのような要求を評価し、出力を生成する。エージェントは、IoTデバイス104からそのような情報を受け取る。
【0047】
アリス及びボブは、ルールスクリプトについて合意し、これをエージェントサーバ(O1)に送る。ルールスクリプトは以下のようであり得る:
If (Textra==10)
return Sign TxA
else if (Textra==20)
return Sign TxB
else if (Textra==30)
return Sign TxC
else
return False
【0048】
O1が、ルールスクリプトを肯定的に判定した場合、すなわち、駐車スペースの使用に関する上記の条件のうちの1つが充足された場合、O1は、TxA、TxB、又はTxCの(全てではなく)いずれかに署名してブロードキャストする。
【0049】
ステップS104において、エージェントは、新たな公開鍵を生成する。ステップS106において、エージェントは、アリス及びボブから公開鍵を取得する。次いで、ステップS108において、エージェントは、2-of-3マルチシグネチャアドレスを生成する。
【0050】
ステップS110において、アリスは、3BTCをマルチシグネチャアドレスに送る新たなトランザクションTx1を生成し、Tx1に署名し、これを、ビットコインネットワークを介してブロードキャストする。このトランザクションが
図2に示されている。
【0051】
ステップS112において、エージェントは、Tx1を検証し、Tx1のUTXOを使用する3つのトランザクションを生成する。3つのトランザクションは、TxA、TxB、及びTxCと表記され得る。ステップS112において、エージェントはまた、第4のトランザクションTxRを生成する。TxAが
図3に示されている。TxB及びTxCは似ているが、以下で示されるようにビットコインの量が異なる。
【0052】
図3からわかるように、TxAは、1BTCをボブに送り、2BTCをアリスに送り、T
extra=10に対応する。TxBは、2BTCをボブに送り、1BTCをアリスに送り、T
extra=20に対応する。TxCは、3BTCをボブに送り、T
extra=30に対応する。
【0053】
TxA、TxB、及びTxCの各々は、ボブの署名及びエージェントの署名の形態の2つの署名を必要とする。ステップS114において、エージェントは、TxA、TxB、及びTxCをボブに送る。次いで、ステップS116において、ボブは、TxA、TxB、及びTxCの各々に署名し、これらを、未完了のブロックチェーントランザクションとしてエージェントに返す。
【0054】
TxRは、3BTCをアリスに送り戻す払い戻しトランザクションである。これは、将来における所定の瞬間に対応する、ゼロでないロック時間を有する。TxRは、アリスの署名及びエージェントの署名の形態の2つの署名を必要とする。すなわち、アリスが、Tx1で支払われた期間を超えて駐車スペースを使用しない場合には、自動的に払い戻しがなされることになる。TxRが、ステップS112における生成の際にエージェントにより署名される。TxRが
図5に示されている。
【0055】
ここで、アリスが、Tx1で支払った1時間を超えて最大で10分まで駐車スペースに駐車した例について検討する。すなわち、T
extra=10である。これが、
図4aを参照して例示される。
【0056】
ステップS200において、IoTデバイス104は、アリスの車が、Tx1で支払われた1時間を超えて10分駐車スペースに駐車されたことを検出する。次いで、ステップS202において、BID106は、車が駐車スペースに追加で10分駐車されたこと、すなわち、Textra=10であること、をエージェントに伝達する。すなわち、上記のスクリプトにおける条件のうちの1つが、エージェントによりtrue(真)に評価された。
【0057】
次いで、ステップ204において、エージェントは、TxAに署名して、トランザクションを完了する。次いで、ステップS206において、TxAが、ブロックチェーンにブロードキャストされ得る。TxAの完了により、1BTCがボブに支払われ、2BTCがアリスに支払われる。TxB及びTxCも同様に完了され得る。
【0058】
次いで、アリスが時間通りに駐車スペースを離れ、T
extra=0である例について検討する。これは、
図4bを参照して説明される。ステップS300において、IoTデバイス104は、超過時間が生じる前に、アリスが駐車スペースから自分の車を移動させたことを検出する。ステップS302において、IoTデバイス104は、アリスが時間通りに駐車スペースを離れたことをエージェントに伝達する。ステップS304において、IoTデバイス104は、トランザクションTxRを完了するためにTxRに署名するアリスに、TxRを送る。トランザクションTxRの完了は、3BTCがアリスに戻されたことを意味する。TxRは、ゼロでないロック時間を有し、このことは、このロック時間が経過するまで、これがマイニングされてブロックチェーンに追加され得ないことを意味する。このことは、アリスが署名を提供すれば、TxRが、直ちにではなく将来における何らかの時点においてブロードキャストされることを意味する。
【0059】
上述した実施形態は、本発明を限定するものではなく例示するものであり、当業者であれば、請求項により定められる本発明の範囲から逸脱することなく、多くの代替実施形態を設計することができるであろうことに留意されたい。請求項において、括弧内に配置されるいかなる参照符号も、請求項を限定するものとして解釈されるべきではない。「備える」等の語は、請求項又は本明細書全体に列挙されている要素又はステップ以外の要素又はステップの存在を排除するものではない。本明細書において、「~を備える」は、「~を含む、又は、~からなる」を意味する。要素の単数形は、そのような要素の複数形を排除するものではなく、逆もまた同様である。本発明は、いくつかの異なる要素を含むハードウェアによって、また、適切にプログラムされたコンピュータによって、実現され得る。いくつかの手段を列挙しているデバイスの請求項において、これらの手段のうちのいくつかは、1つの同一のハードウェアアイテムにより具現化されることがある。所定の手段が、相互に異なる従属請求項に記載されているという単なる事実は、これらの手段の組み合わせが有利に使用され得ないことを示すものではない。
【0060】
上述した実施形態は、以下のように表現され得る。
(1)リソースの使用及び/又はリソースへのアクセスを制御する、ブロックチェーンにより実現される方法であって、
前記リソースの使用及び/又は前記リソースへのアクセスに関する条件を示すブロックチェーントランザクションを生成するステップであって、前記ブロックチェーントランザクションは、前記ブロックチェーントランザクションの完了のために複数の署名を必要とするマルチシグネチャスクリプトを含む、ステップと、
前記複数の署名のうちの第1のサブセットを前記ブロックチェーントランザクションに提供して、部分的に署名された署名スクリプトを生成し、前記ブロックチェーントランザクションを部分的に完了するステップと、
前記リソースの使用及び/又は前記リソースへのアクセスに関する前記条件が充足されたことに応じて、前記複数の署名のうちの第2のサブセットを前記ブロックチェーントランザクションに提供して、前記ブロックチェーントランザクションを完全に完了するステップと、
を含む、方法。
(2)前記複数の署名のうちの第2のサブセットを前記ブロックチェーントランザクションに提供することは、複数の部分的に署名されたマルチシグネチャトランザクションから前記ブロックチェーントランザクションを選択することを含む、(1)記載の方法。
(3)前記リソースの使用に関する前記条件は、前記リソースの離散量の使用であり、前記複数の署名のうちの前記第2のサブセットは、前記リソースが前記離散量使用されたことに応じて提供される、(1)又は(2)記載の方法。
(4)前記リソースの使用及び/又は前記リソースへのアクセスに関する条件を示すブロックチェーントランザクションを生成することは、前記リソースの前記離散量の各整数倍に対応するブロックチェーントランザクションを生成することを含み、前記複数の署名のうちの前記第2のサブセットは、前記リソースの各増大した整数倍の使用について提供される、(3)記載の方法。
(5)前記整数倍の最大限度は、予め規定される、(4)記載の方法。
(6)前記最大限度の超過に応じて、オフブロックアクションが引き起こされる、(5)記載の方法。
(7)前記複数の署名のうちの前記第1のサブセットは、エージェントからの署名を含む、(1)乃至(6)いずれか一項記載の方法。
(8)前記複数の署名のうちの前記第1のサブセットは、前記リソースの発行者からの署名を含む、(1)乃至(6)いずれか一項記載の方法。
(9)前記複数の署名のうちの前記第2のサブセットは、エージェントからの署名を含む、(8)記載の方法。
(10)前記複数の署名のうちの前記第2のサブセットは、前記リソースの利用者からの署名を含む、(7)記載の方法。
(11)前記リソースの使用に関する前記条件は、前記リソースが使用されていないことである、(1)乃至(10)いずれか一項記載の方法。
(12)前記ブロックチェーントランザクションは、ゼロでないロック時間を有する、(1)乃至(11)いずれか一項記載の方法。
(13)以前のトランザクションに関連付けられた出力を使用するために、前記の完全に完了されたブロックチェーントランザクションをブロックチェーンに送るステップ
を含む、(1)乃至(12)いずれか一項記載の方法。
(14)(1)乃至(13)いずれか一項記載の方法を実行するよう構成されているコンピュータリソースを含むシステム。