JP2020509448A - 仮想デバイスを提供するための装置および方法 - Google Patents

仮想デバイスを提供するための装置および方法 Download PDF

Info

Publication number
JP2020509448A
JP2020509448A JP2019537345A JP2019537345A JP2020509448A JP 2020509448 A JP2020509448 A JP 2020509448A JP 2019537345 A JP2019537345 A JP 2019537345A JP 2019537345 A JP2019537345 A JP 2019537345A JP 2020509448 A JP2020509448 A JP 2020509448A
Authority
JP
Japan
Prior art keywords
resource
virtual
virtual device
devices
blockchain
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2019537345A
Other languages
English (en)
Other versions
JP7243626B2 (ja
Inventor
クローニー,ハーム
ノーラン,ジュリアン
允 小池
允 小池
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Publication of JP2020509448A publication Critical patent/JP2020509448A/ja
Application granted granted Critical
Publication of JP7243626B2 publication Critical patent/JP7243626B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/78Architectures of resource allocation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/78Architectures of resource allocation
    • H04L47/783Distributed allocation of resources, e.g. bandwidth brokers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/56Financial cryptography, e.g. electronic payment or e-cash

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Power Engineering (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • User Interface Of Digital Computer (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

仮想デバイスを提供するための装置は回路を有する。回路は、分散台帳内の仮想デバイスの特性のセットの特性を提供するリソースデバイスを検索する。分散台帳には、複数のリソースデバイスに関する情報が含まれる。回路は、仮想デバイスの特性のセットの特性を提供するリソースデバイスを選択することによって仮想デバイスを提供する。

Description

本開示は、一般に、仮想デバイスを提供するための装置および方法に関する。
一般に、台帳を複数の要素、例えば、デジタルトランザクションを記録する電子デバイスまたはサーバなどに分散することが知られている。分散台帳は、例えば、既知の暗号通貨ビットコインをベースとする既知のブロックチェーン技術に基づくことができる。ブロックチェーンおよび分散台帳の用語に関する統一された定義はまだない。本明細書では、最も広い定義では、これらの用語は、ネットワークの複数のノードとデジタル記録されたデータを共有する一種のデータベースとして使用される。それはピアツーピアネットワークから構成してもよい。デジタル記録されたデータは、同じデータベース上の以前に記録されたデータからその一貫性を証明するためのある種の情報を含むことができる。
分散台帳は公開され、誰でもアクセス可能にすることができるが、原則として、非公開にすることもでき、権限を持つユーザのみにそれらへのアクセス権を与えてもよい。階層化された各ユーザから台帳のデータへのアクセス許可を区別することもできる。
分散台帳は、例えば、ビットコインに使用されるようなブロックチェーン技術から知られているメカニズムを使用することができる。そのようなメカニズムには、発見方法、コンセンサスメカニズム、およびデータの整合性を保つためのメカニズムなどが含まれる。コンセンサスメカニズムにより、分散台帳のコピーを有するすべてのノード、または特定の数を超えるノード、通常は電子デバイスが、分散台帳の内容について合意することを保証する。ある種の暗号パズルであり、例えば、ブロックチェーンの古いブロックを(簡単に)変更できないことを保証する、いわゆるプルーフオブワークメカニズムを含む、多くのコンセンサスメカニズムが存在する。例えば、ビットコインブロックチェーンのマイニングプロセスには、プルーフオブワークが使用される。
ブロックチェーン技術に基づく分散台帳のもう1つの例は、いわゆるEthereumプロジェクトである。Ethereumはアカウントを使用し、各アカウントの状態はEthereumブロックチェーンによって追跡される。アカウントには2つのタイプがあり、すなわち、プライベートキーによって制御される外部所有アカウント(externally owned account)と、コントラクトコードによって制御され、外部所有アカウントによってのみアクティブ化できるコントラクトアカウントである。コントラクトアカウントには、プログラム可能コードまたはスマートコントラクトを含めることができる。Ethereumのユーザはまた、etherと呼ばれる料金を支払う必要がある。Etherは、ブロックをマイニングすることに対する報酬である。
トランザクションおよびスマートコントラクトに対して分散台帳を使用するための技術が存在するが、一般に、電子デバイスを編成するために分散台帳技術を適用することが望ましい。
本明細書に開示される解決策は、Hadoopのような分散データベース技術を使用することで置き換えることができる。
第1の態様によれば、本開示は、仮想デバイスを提供する装置を提供し、本装置は、分散台帳における仮想デバイスの特性のセットの特性を提供するリソースデバイスを検索することであって、分散台帳が複数のリソースデバイスに関する情報を含む、検索することと、仮想デバイスの特性のセットの特性を提供するリソースデバイスを選択することによって仮想デバイスを提供することと、を行うように構成される回路を備える。
第2の態様によれば、本開示は、仮想デバイスを提供する方法を提供し、本方法は、分散台帳における仮想デバイスの特性のセットの特性を提供するリソースデバイスを検索するステップであって、分散台帳が複数のリソースデバイスに関する情報を含む、検索するステップと、仮想デバイスの特性のセットの特性を提供するリソースデバイスを選択することによって仮想デバイスを提供するステップと、を備える。
さらなる態様は、従属請求項、以下の説明、および図面に記載される。
実施形態は、添付の図面に関して例として説明される。
装置が仮想デバイスを提供する、本開示の一実施形態を示す図である。 本開示の一実施形態で使用することができるリソースデバイスの概要を示す図である。 装置が図2に示されるリソースデバイスを使用して仮想IoT監視モニタを提供する本開示のさらなる実施形態を示す図である。 ブロックチェーン上でリソースコントラクトを提供するための方法のフローチャートである。 仮想IoTデバイスのスマートコントラクトを提供するための方法のフローチャートである。 仮想デバイスを提供するための方法のフローチャートである。 装置の実施形態を示す図である。
図1を参照して実施形態の詳細な説明を提示する前に、一般的な説明を行う。
冒頭でも示したように、将来の分散台帳技術、特に、ブロックチェーン技術には、スマートコントラクトを定義するために特徴豊富な機能が含まれる。スマートコントラクトは、例えば、複雑なビジネスロジックおよびインテリジェントエージェントなどがスマートコントラクトとして実装され得るようにチューリング完全プログラミング言語で書くことができる。インテリジェントエージェントなどのスマートコントラクトは、ブロックチェーンアーキテクチャ上で実行することができる。
ネットワークを介して接続される電子デバイス、例えば、モノのインターネット(IoT)デバイスが、いくつかの方法で分散台帳技術を使用することができることが認識された。第1の例によれば、分散台帳またはブロックチェーンを使用して、そのような装置間でデータを共有することができる。第2の例によれば、デバイスのリソースは、ブロックチェーンでやりとりすることができる。第3の例によれば、ブロックチェーンは、デバイスのサブセット間に信頼関係を確立することができる。
冒頭で説明したように、台帳を複数の要素、例えば、デジタルトランザクションを記録する電子デバイスまたはサーバなどに分散することが知られている。分散台帳は、例えば、既知の暗号通貨ビットコインをベースとする既知のブロックチェーン技術に基づくことができる。ブロックチェーンおよび分散台帳の用語に関する統一された定義はまだない。本明細書では、最も広い定義では、これらの用語は、ネットワークの複数のノードとデジタル記録されたデータを共有する一種のデータベースとして使用される。それはピアツーピアネットワークから構成してもよい。デジタル記録されたデータは、同じデータベース上の以前に記録されたデータからその一貫性を証明するためのある種の情報を含むことができる。
分散台帳は公開され、誰でもアクセス可能にすることができるが、原則として、非公開にすることもでき、権限を持つユーザのみにそれらへのアクセス権を与えてもよい。階層化された各ユーザから台帳のデータへのアクセス許可を区別することもできる。
分散台帳は、例えば、ビットコインに使用されるようなブロックチェーンから知られているメカニズムを使用することができる。そのようなメカニズムには、発見方法、コンセンサスメカニズム、およびデータの整合性を保つためのメカニズムなどが含まれる。コンセンサスメカニズムにより、分散台帳のコピーを有するすべてのノード、または特定の数を超えるノード、通常は電子デバイスが、分散台帳の内容について合意することを保証する。ある種の暗号パズルであり、例えば、ブロックチェーンの古いブロックを(簡単に)変更できないことを保証する、いわゆるプルーフオブワークメカニズムを含む、多くのコンセンサスメカニズムが存在する。例えば、ビットコインブロックチェーンのマイニングプロセスには、プルーフオブワークが使用される。
ブロックチェーン技術に基づく分散台帳のもう1つの例は、いわゆるEthereumプロジェクトである。Ethereumはアカウントを使用し、各アカウントの状態はEthereumブロックチェーンによって追跡される。アカウントには2つのタイプがあり、すなわち、プライベートキーによって制御される外部所有アカウント(externally owned account)と、コントラクトコードによって制御され、外部所有アカウントによってのみアクティブ化できるコントラクトアカウントである。コントラクトアカウントには、プログラム可能コードまたはスマートコントラクトを含めることができる。Ethereumのユーザはまた、etherと呼ばれる料金を支払う必要がある。Etherは、ブロックをマイニングすることに対する報酬である。
それに応じて、いくつかの実施形態は、仮想デバイスを提供する装置に関し、本装置は、分散台帳における仮想デバイスの特性のセットの特性を提供するリソースデバイスを検索することであって、分散台帳が複数のリソースデバイスに関する情報を含む、検索することと、仮想デバイスの特性のセットの特性を提供するリソースデバイスを選択すること(組み合わせることを含み得る)によって仮想デバイスを提供することと、を行うように構成される回路を備える。
本装置は、任意の種類の電子装置、例えば、汎用コンピュータ、コンピュータシステム、モバイルデバイス(スマートフォンなど)、サーバ、ネットワークノード、分散台帳ネットワークのノードなどとすることができる。
本回路は、1つまたは複数のプロセッサを含むことができるが、本装置のより多くの電子部品、特に、本明細書に記載の方法およびプロセスを実行するのに必要な電子部品も含むことができる。
仮想デバイスは、所定の特性のセットを有する仮想電子デバイスとすることができる。これらの特性は、例えば、ユーザによって、事前定義することができる。そのような特性は、地理的特性、センサ特性、計算特性、料金特性、時間特性などのソフトウェア、ビジネス、ハードウェア特性を含むことができる。
分散台帳は、例えば、インターネットを含むことができるネットワークを介して、相互接続することができ、および分散台帳ネットワークのネットワークノードとすることができる、電子デバイスまたはサーバなどの複数の要素に分散することができる。
本装置は、ネットワーク(ローカルエリアネットワークおよび無線ネットワークなど)に接続されるように構成することができ、ネットワークを介してインターネットにアクセスすることもできる。装置(回路)は、ネットワークインターフェースなどを含むことができ、回路は、ネットワークを介して通信するように構成することができる。装置は、分散台帳ネットワークのノードとしてもよい。
リソースデバイスは、任意の種類の電子デバイスまたは電子デバイスの一部とすることもできる。リソースデバイスは、インターネットを含むことができるネットワークを介して互いにおよび/または装置と相互接続することができる。
リソースデバイスは、いくつかの特性を有することができ、分散台帳は、複数のリソースデバイスに関する情報を含む。
装置は分散台帳のコピーを含むことができ、および/または装置が分散台帳を検索することができ、さらに仮想デバイスの特性のセットの1つまたは複数の特性を提供するリソースデバイスを発見することができるように、装置は分散台帳のコピーへのアクセス権を有することができる。
装置は、仮想デバイスの特性のセットの特性を提供するリソースデバイスを選択することによって仮想デバイスを提供する。これらのリソースデバイスは、分散台帳を検索することによって検出および取得される。
IoTデバイスなどの電子デバイスは、長寿命を期待されている。しかしながら、技術の進歩により、IoTの潜在的な機能は急速に向上する可能性がある。したがって、顧客は、定期的に新しいデバイスを購入したくなくても自分のデバイスをアップグレードするための様々な手段を有することができる。そのような手段として考えられるのは無線ソフトウェアアップグレードであるが、追加機能は追加ハードウェアサポートを必要とする可能性があり、それは実現するのが容易でない可能性があり、または既知のデバイスで実現することが不可能でさえある可能性がある。また、ユーザが限られた時間内に電子デバイスを使用することを望むことがあるかもしれないが、現在の解決策は、典型的に、ユーザが一時的にデバイスを必要とする場合には柔軟な解決策を提供しないことも起こり得る。例えば、医療監視デバイスは、ユーザによって必要とされるのは病気の間だけかもしれない。さらに、電子デバイスは、通常、かなり固定された機能を有する。したがって、追加の機能が必要な場合、ユーザは新しいデバイスを購入しなければならない可能性がある。最後に、現在の解決策では、電子デバイスの構成要素を他の目的に再利用することは困難である。
本明細書で説明するように仮想デバイスを提供することによって、任意の要求に対してそれぞれの仮想デバイスを定義することができ、それぞれのリソースデバイスが見つかった場合に仮想デバイスを提供することができるように、仮想デバイスを要求ごとに定義できるので、これらの問題に対処することができる。
したがって、ネットワークまたはIoTデバイスなどのデバイスを仮想デバイスとして仮想的に定義することができるので、仮想デバイスの構成に関して柔軟性をもたらすことができる。さらに、仮想デバイスの機能は簡単にアップグレードすることができる。ユーザまたは本明細書に記載される装置は、それらがそのサービスを必要とする時間だけ仮想デバイスを操作し所有することができる。さらに、仮想デバイスは、使用されていないリソースデバイスのリソースを再利用することができる。これはまた、リソースデバイスの所有者に収益の可能性をもたらす。
仮想デバイスを定義するためにブロックチェーンなどの分散台帳を使用することによって、(完全に)分散された手法を実現することができる。いくつかの実施形態では、仮想デバイスは、それらの機能を実装するためにプログラムコードおよびロジックを実行する必要がある。そのようなプログラムコードは、スマートコントラクトの言語で定義することができ、ブロックチェーン上で実行することができる。これは、ブロックチェーンの他の要素(例えば、他の仮想IoTデバイス、スマートコントラクトなど)と対話するための完全に自動化された方法を提供することができる。
いくつかの実施形態では、回路は、仮想デバイスの特性のセットに基づいて仮想デバイススマートコントラクトを生成するようにさらに構成される。したがって、仮想デバイススマートコントラクトを使用して、仮想デバイスと、例えば、それが有するリソースなどのその特性とを定義することができる。リソースは、例えば、センサ、ストレージ、および計算機能などとすることができる。一般に、上記したように、特性は、ハードウェア(センサ、ストレージ、計算リソースなど)、ソフトウェア(プログラミング言語(例えばチューリング言語))、およびビジネス特性(支払うべき料金、使用時間、ユーザ数など)の他の種類の特性のうちの少なくとも1つを含むことができる。
回路は、仮想デバイススマートコントラクトを分散台帳に格納するようにさらに構成することができる。
それにより、スマートコントラクトは、分散台帳によって、例えば、分散台帳を管理するノード(サーバ、電子デバイスなど)によって、実行することさえもできる。
回路は、仮想デバイスをアクティブ化するようにさらに構成することができる。これは、例えば、分散台帳でスマートコントラクトをアクティブ化することによって、実装することができる。
示したように、分散台帳はブロックチェーンとすることができ、例えば、ビットコインまたはEthereumプロジェクトに使用される原理に基づくことができる。ブロックチェーンは、ブロックチェーン(分散台帳)を維持しているすべてのノードがブロックチェーンの内容についてコンセンサスに達することを保証するコンセンサスメカニズムなどの典型的なメカニズムを実装することができる。それにより、マイニングおよびプルーフオブワークメカニズムを使用することができ、通貨としておよび/またはマイニングを実行するための報酬として、Etherまたはビットコインなどのある種の報酬(通貨)を使用することができる。
ブロックチェーンは、例えば、複数のリソースデバイスに関する情報に基づいて、および/または提供された仮想デバイスに関する情報、例えば、仮想デバイススマートコントラクトに基づいて形成される複数のブロックを含むことができる。いくつかの実施形態では、複数のリソースデバイスに関する情報は、例えば、リソースデバイスのリソース(機能)、支払われるべき料金、利用可能性(利用可能時間)などに関する情報を含むスマートコントラクト情報(例えば、スマートコントラクト)を含む。情報は、トランザクションの形式でブロックチェーンに提供することができる。
スマートコントラクト情報はまた、それぞれのリソースデバイスを制御するために実行され得るプログラムコードまたはデバイスロジック(コード)を含むことができる。
一般に、本明細書で言及されるスマートコントラクトおよびスマートコントラクト情報は、チューリング(完全)言語に基づくことができ、そのため、普遍的に適用可能である。
いくつかの実施形態におけるように、リソースデバイスは、分散台帳(または、ブロックチェーン)を維持するネットワークのノードとすることができ、分散台帳は、リソースデバイスによって(少なくとも部分的に)維持することができる。
リソースデバイスは、実世界または物理デバイスでもよく、それらのリソースおよび機能、例えば、センサ機能、ストレージ機能、および計算機能などを分散台帳またはブロックチェーン上に公開するように構成することができる(上記の説明も参照。
いくつかの実施形態は、仮想デバイスを提供する方法に関し、装置の回路によって実行される機能の説明は、その方法に完全に当てはまる。本方法は、上記のように、分散台帳における仮想デバイスの特性のセットの特性を提供するリソースデバイスを検索するステップであって、分散台帳が複数のリソースデバイスに関する情報を含む、検索するステップと、仮想デバイスの特性のセットの特性を提供するリソースデバイスを選択することによって仮想デバイスを提供するステップと、を備える。本方法は、上記のように、仮想デバイスの特性のセットに基づいて仮想デバイススマートコントラクトを生成するステップを備えることができる。上記のように、分散台帳に仮想デバイススマートコントラクトを格納するステップを備えることができ、仮想デバイスをアクティブ化するステップを備えることができる。リソースデバイスは、上記のように、インターネット(モノのインターネット)などのネットワークに接続することができる。分散台帳は、上記のように、ブロックチェーンとすることができる。複数のリソースデバイスに関する情報は、上記のように、プログラムコードを含むことができてチューリング言語に基づくことができるスマートコントラクト情報を含むことができる。
図1に戻ると、本開示の一実施形態の一般的概要が示されている。
装置1、例えば、回路2を有する電子デバイスまたはコンピュータなどが提供される。装置1は、複数のブロックを有するブロックチェーン3と通信し、ここでは、例示的なブロック4が示されている。ブロックチェーン3は、分散台帳の一例であり、複数台のコンピュータまたはサーバなど(図示せず)によって維持される。
さらに、ネットワークを介して、この場合はインターネットを介して通信し、IoT(「モノのインターネット」)デバイスA、B、およびCとも称され、上記のようにリソースデバイスとみなされる、実世界または物理デバイス5、6、および7が提供される。
IoTデバイスA、B、およびCは、原則として、カメラ、センサ、またはストレージなど、インターネットを介して通信することができる任意の種類のデバイスとすることができる。当然、本開示は、特定の数のデバイスに限定されず、3つのデバイス5、6、および7の数は例示の目的のために任意に選択される。
IoTデバイス5、6、および7は、ブロックチェーン3にアクセスする。そのようなアクセスは許可される可能性も、許可されない可能性もある。
本実施形態では、これらのIoTデバイス5、6、および7は、利用可能なセンサ、ストレージ機能、計算機能、アクチュエータなどに関して異なる機能を有する。さらに、これらのIoTデバイス5、6、および7は、異なるユーザによって所有され、この点に関して本開示を限定することなく、この実施形態では異なる場所に配置される。
IoTデバイス5、6、および7のすべてのリソースが使用されるわけではなく、またはそれらが継続的に使用されない可能性がある。本実施形態では、IoTデバイス5、6、および7などのリソースデバイスのリソースを再利用することができる。この目的のために、本実施形態では、IoTデバイス5、6、および7のそれぞれは、ブロックチェーン3上およびブロック4内にそれぞれリソースコントラクトを作成および/または提供する。本明細書では、リソースコントラクトは、IoTデバイス5、6、または7によってエクスポートされるリソースとそのリソースの利用可能性を定義するスマートコントラクトである。さらに、IoTデバイス5、6、または7は、リソースを使用する任意の当事者がIoTデバイス5、6、もしくは7、またはその所有者に報酬を与えることを要求することができる。したがって、リソースのコストも、リソースコントラクトで定義される。IoTデバイス5、6、および7によってエクスポートされ得るリソースの例は、データのためのストレージ機能、データのためのデータ通信機能、センサによって取られる測定値、カメラによって撮られる画像および動画、実世界で作動する機能などである。その回路2を有する装置1は、ブロックチェーン上のIoTデバイス、例えば、IoTデバイス5、6、および7によってエクスポートされるいくつかの異なるリソースをトランザクションとして使用する仮想IoTデバイスを作成する。
仮想IoTデバイスコントラクト8は、仮想IoTデバイスおよびそれが使用するリソース、例えば、本実施形態では、センサリソース8b、ストレージリソース8c、および計算リソース8dを定義することができる。この実施形態では、仮想IoTデバイスコントラクト8は、デバイスロジック8aも含むスマートコントラクトである。デバイスロジック8aは、仮想IoTデバイスの動作を定義するプログラムコードである。このようなプログラムコードは、現在のブロックチェーン3のスマートコントラクトによってサポートされるチューリング完全言語で実装される。ユーザは、限られた時間の間、装置1で仮想IoTデバイスコントラクト8を作成することができる。仮想IoTデバイスリソースまたはリソースデバイスの構成中に、例えば、IoTデバイス5、6、または7は、いくつかの基準に基づいて選択され得る。そのような基準の例は、リソースデバイスの利用可能性、リソースデバイスの性能特性、およびリソースデバイスのコストなどである。リソースデバイスの種類によっては、リソースの場所も重要になる可能性がある。そのようなリソースデバイスの一例は、仮想IoTデバイスのユーザに関連する物理量を測定するセンサ、特定の領域を撮像するカメラなどである。他のリソースデバイスの場合、物理的位置、例えば、装置1とは異なる位置に存在し得るデータのためのストレージスペースは、重要ではない可能性がある。
一般に、仮想IoTデバイスコントラクト8が定義され、ならびに選択されたIoTデバイス5、6、および7のリソースコントラクト5a、6a、および7aが(例えば、トランザクションとして)追加されると、ブロック4は、ブロックチェーン3によって形成され得る。上記のように、これは、一般に知られているように、プルーフオブワークメカニズムを含むことができる。いくつかの実施形態では、ブロックを発見することに対する報酬、例えば、ビットコイン、Ether、または他の仮想/デジタル通貨が存在し得る。
いくつかの実施形態では、仮想IoTデバイスの状態は、後に使用するためにアーカイブすることができる。これは、例えば、仮想IoTデバイスおよび/または仮想IoTデバイスコントラクト8の設定を、例えば、装置1の、ストレージに記憶することによって行うことができる。仮想IoTデバイスが再起動される場合、その各リソースは、物理的なリソースデバイス、例えば、IoTデバイス5、6、および7によって満たされなければならない。リソースコントラクトは、リソースを満たすブロックチェーンで選択することができる。すべてのリソースが満たされると、仮想IoTデバイスを再起動することができる。
他の実施形態では、仮想IoTデバイスのリソースは、物理リソースデバイス、例えば、IoTデバイス5、6、および7によって、冗長的に実施される。
本開示のより一般的な実装態様を説明した後、以下において、実施形態のいくつかのより具体的な例が示される。
例えば、仮想IoTデバイスは、仮想の植物および作物モニタとすることができる。そのような仮想IoTデバイスは、屋内および/または屋外の状況において消費者または農家の植物および作物を監視する。仮想IoTデバイスは、以下のセンサリソースを使用することができ、すなわち、例えば、作物が生育する地域の低解像度映像を提供する衛星撮像システムを使用することができる。この映像から、生育地帯の含水量を検出することができる。最新の天気予報を提供する気象ステーションを使用することができる。センサデータは、例えば、予備のストレージ機能を有するストレージデバイスによって提供されるリソースに格納される。
仮想IoTデバイスは、例えば、追加センサ、より優れた機能を有するセンサなどを使用するように再構成することができる。例えば、無人機が利用可能である可能性があり、それはそこから詳細な作物情報が導き出される可能性がある栽培地域の高解像度のハイパースペクトル画像を提供する。例えば、木の実の現状は、それらの熟度も含めて自動的に評価することができる。木の実が木に成り始めるときにこのような無人機によって提供されると、農家は装置1を用いてこの機能を注文することができる。
別の実施形態では、仮想IoTデバイスは患者の薬物使用量を監視するように構成される。そのような仮想IoTデバイスは、患者が病気である期間中に作成することができる。仮想デバイスのリソースは、患者が所有するカメラまたは患者を撮像することができるカメラを含むことができる。これらのカメラはまた、他の電子デバイス、例えば、携帯電話およびラップトップなどに統合して配置することもでき、患者の自宅および職場環境における患者の映像を記録することができる。仮想IoTデバイスはまた、錠剤が箱から取り出された場合を検出するためにスマート薬箱によって提供される機能を使用することもできる。仮想IoTデバイスプログラムは、患者が自分の薬を服用した場合を検出するためにスマート薬箱からの情報と共に患者の映像を使用することができる。情報を格納するには、ストレージ機能を備えた任意のIoTデバイスが提供できるストレージリソースも必要である。仮想IoTデバイスは、薬がまだ服用されていないことを患者に知らせるために携帯電話によって提供されるリソースを使用することができる。
以下では、図3から図5を参照してさらなる実施形態について説明する。この実施形態では、仮想IoTデバイスは監視システムであり、それは図1に関連して説明した一般的なアーキテクチャに基づいている。
図2は、様々なリソースデバイスを用いた実世界でのセットアップを示す。
例えば、第1の会社は、リソースデバイス13aから13eを有し、第2の会社は、リソースデバイス14aから14dを有する。
第1の会社は、カメラ13a、13c、13d、および13eを有し、カメラ13aは建物11内に配置され、カメラ13cは、駐車スペース11aに配置され、カメラ13dおよび13eは、道路15に沿って配置される。さらに、第1の会社は、ストレージ13bを有する。
第2の会社は、建物11内にカメラ14b、駐車スペース11aに第2のカメラ14c、および道路15に第3のカメラ14dを有する。さらに、第2の会社は、建物11内にIDセンサ14aを有する。
以下では、顧客が人物(ターゲット)を、例えば、その人物のターゲット画像10に基づいて、監視することを望んでいると仮定する。人物は建物11で働いて、その人物が監視される通り15に沿って自身の家12に戻る。
システムの概要を、図3を参照してさらに説明する。
図3は、IoTデバイスの例示的なセットを示し、より一般的には、分類として、図2のカメラ13aおよび13cからeを象徴し、第1の会社が所有する例示的なカメラIoTデバイス25を示す。IoTデバイス25は、「台帳サーバA」と呼ばれる第1の会社の会社サーバに接続される。
さらに、ストレージIoTデバイス26が第1の会社の台帳サーバAに接続され、これは第1の会社のストレージ13bを示す。また、第2の会社のIDセンサ14aを示す第2の会社の台帳サーバBには、IDセンサIoTデバイス27が接続される。当然、カメラ14bから14dも台帳サーバBに接続することができ、図3では明瞭さのためにその図示は省略されている。さらに、追加の会社の追加の台帳サーバを提供してもよい。
台帳サーバAおよびBを含むすべての会社の台帳サーバのセットは、分散台帳またはブロックチェーン23を維持する。ブロックチェーン23へのアクセスは、認められた台帳サーバだけがそれにアクセスできるように許可することができる。他の実施形態では、ブロックチェーン23へのアクセスは開いている。
原則として、また上記したように、各台帳サーバA、Bなどは、ブロックチェーン23のローカルコピーを有する。
各IoTデバイス25、26、および27(または、接続されている台帳サーバ)は、上記のように、それぞれのIoTデバイス25、26、および27の機能および利用可能性を記述するスマートコントラクトとして実装されるリソースコントラクト25a、26a、および27aを作成する。リソースコントラクトは、例えば、トランザクションの形式で、ブロックチェーン23のブロック24に組み込まれる。
ユーザは、回路22を含む装置21を用いて仮想IoTデバイスを定義し使用することができる。本実施形態では、仮想IoTデバイスは監視モニタである。仮想IoTデバイスは、図2の13aから13eおよび14aから14dなどの異なる会社が所有してIoTデバイス25、26、および27によって示されるリソースを使用し、装置21はブロックチェーン23を使用してリソースを発見することができる。
以下では、ブロックチェーン23上でリソースコントラクトを提供する方法30を、図4を参照して説明する。
上記のように、仮想IoTデバイスが監視モニタリングサービスである場合、IoTデバイスは、例えば、特定の地理的領域を撮像することができるカメラ(13a、13cからe、14bからd)、特定の地理的領域の画像を含むことができるストレージ(13b)、特定の人の個人IDを認識するIDセンサ(14a)などとすることができる。図3において25、26、および27としてまとめられたこれらのIoTデバイス、またはそれらが接続されるそれぞれの台帳サーバAおよびBは、図4の方法30に従ってブロックチェーン23のためのリソースコントラクトを定義することができる。
31で、IoTデバイス25、26、および27は、それらの現在の機能を評価することができる。これらの機能には、例えば、カメラの種類(カラー、白黒、赤外線)、カメラレコードの解像度およびフレームレート、カメラレコードの地理的領域などが含まれる。
さらに、例えば、カメラIoTデバイス25の、利用可能性もまた評価される。例えば、カメラIoTデバイス25は、夜間にのみオンラインとすることができる。ストレージIoTデバイス26の場合、ストレージIoTデバイス26に格納された画像データはいつでも検証することができるので、利用可能時間はそれほど重要ではない可能性がある。
IoTデバイスの機能は、IoTデバイス自体に格納することができる。例えば、カメラIoTデバイス25の機能は、IoTデバイス25のストレージに格納することができ、必要であればそこから読み出すことができる。
IoTデバイス25、26、および27の機能の評価は、IoTデバイス25、26、および27を所有するか、またはそれを制御するそれぞれの台帳サーバによっても実行することもできる。
32で、リソースコントラクト25a、26a、および27aがIoTデバイス25、26、および27のそれぞれに対して定義され、この場合、リソースコントラクトはスマートコントラクトである。
リソースコントラクト25a、26a、27aは、使用されるブロックチェーン23によって定義されるフォーマットにある。本実施形態では、リソースコントラクト25a、26a、27aは、様々な機能および利用可能性を、例えば、数値とリンクするルックアップテーブルを備える。ルックアップテーブルは、チューリング完全言語であり得るブロックチェーン23のスマートコントラクト言語で利用可能な標準データ構造によって実施することができる。例えば、ルックアップテーブルは、リスト、ディクショナリ、またはハッシュテーブルなどとして実装することができる。
33で、IoTデバイス25、26、27、またはそれぞれの台帳サーバは、ブロックチェーン23のブロック24に含めるためにリソースコントラクト25a、26a、27aを発行する。リソースコントラクト25a、26a、および27aは、例えば、特別な種類のトランザクションでアナウンスしてもよい。
マイニングが実行されると、例えば、台帳サーバAおよびBによって、リソースコントラクト25a、26a、および27aは、ブロック24としてブロックチェーン23に含まれる。
説明したように、監視モニタとして機能する仮想IoTデバイスは、その構成に応じて、リソースコントラクトで定義されるいくつかのリソースデバイスと対話する。本実施形態では、仮想IoTデバイスは、ターゲット画像10によって識別される特定の人物を監視するために、リソースデバイス13aからeおよび14aからd(25から26によって示される)を使用することができる。説明したように、リソースデバイス25、26、および27は、それぞれのリソースコントラクト25a、26a、および27aをブロックチェーン23上に発行した。
監視モニタとして機能する仮想IoTデバイスは、スマートコントラクト28として実現される(図3参照)。
仮想IoTデバイスは、ターゲット画像10、デバイスロジック28a、およびリソースのセット、すなわち、例示的な画像リソース28b、ストレージリソース28c、およびセンサリソース28dを備える。
画像リソース28bは、カメラIoTデバイス25によって提供され、カメラ13aおよび13cからeのセットを示す。説明したように、カメラデバイス14bからdも、画像リソース28b用に設けることができる。
同様に、ストレージリソース28cは、ストレージ13bを含むストレージIoTデバイス26によって提供され、センサリソース28dは、IDセンサ14aを含むセンサIoTデバイス27によって提供される。
仮想IoTデバイスの構成中に、スマートコントラクト28は、適切なリソース28bからdを用いて作成されている。
以下では、監視モニタとして機能する仮想IoTデバイスを提供するための方法40が、図5を参照して説明され、装置21およびその回路22のそれぞれによって実行することもできる。
仮想IoT監視システムによって追跡するためのターゲットを定義するターゲット画像10、およびターゲットが追跡される地理的領域は、方法40に入力される(仮想IoTデバイスに入力することもできる)。
41で、ブロックチェーン23は、方法40に入力される地理的領域を画像化することができて、例えば、ストレージに格納された画像およびターゲットの判定IDに基づいて、さらなる追跡情報を提供することができるリソースコントラクト25a、26a、および27aなどのリソースコントラクトについて検索される。したがって、装置21は、リソース28b、28c、および28dに適合するリソースコントラクトについてブロックチェーン23を検索する。
42で、十分に高い(すなわち、所定の閾値を超える)解像度、十分に高い(すなわち、所定の閾値を超える)フレームレート、撮像IoTデバイスで実行することができる追加の画像処理機能などの追加の要件を満たす、発見されたデバイスのサブセットが選択される。本実施形態では、このサブセットは、デバイス25、26、および27を含む。
43で、ターゲット画像10によって定義されるターゲットを追跡する必要がある時間の間、選択されたリソースがブロックチェーン23上に予約される。リソースデバイス25、26、および27の予約を実施するために、トランザクションを、ブロックチェーン23およびブロック24のそれぞれに追加することができる。
44で、装置21は、予約されたリソース25、26、および27を使用する仮想IoTスマートコントラクト28を定義する。
仮想IoTデバイスコントラクト28は、トランザクションと共にブロックチェーン23のブロック24に追加され、それによって、45でアクティブ化される。
いくつかの実施形態では、仮想IoTデバイスコントラクト28は、仮想IoTデバイスコントラクト28が含まれるブロック(24)のマイニングが終了した後にのみアクティブ化される。
仮想IoTデバイススマートコントラクトはまた、仮想IoTデバイスの寿命の間に実行されるデバイスロジック/プログラムコード(デバイスロジック28aなど)を含むことができる。例えば、デバイスロジック28aは、リソースからデータを取得し、何らかの処理を実行することを引き受けることができる。監視モニタの場合、ターゲットの認識は、スマートコントラクト内のデバイスロジック/プログラムコードによっても実行することができる。
以下では、図6を参照しながら一般的な方法50を説明し、本方法は、以下でさらに説明する装置1、21、または90などの、本明細書で説明するような装置によって実行することができる。
51で、分散台帳内(例えば、上述のブロックチェーン3または23)の仮想デバイスの特性のセットの特性を提供するリソースデバイスが検索され、分散台帳は、上述のように複数のリソースデバイスに関する情報を含む。
52で、仮想デバイスは、上述のように、仮想デバイスの特性のセットの特性を提供するリソースデバイスを選択することによって提供される。
53で、上述したように、仮想デバイスの特性のセットに基づいて仮想デバイスのスマートコントラクトが生成される。
54で、仮想デバイススマートコントラクトが分散台帳に格納される。
55で、仮想デバイスは上述のようにアクティブ化される。
以下では、汎用コンピュータ90の一実施形態を、図7を参照して説明する。
コンピュータ90は、装置として、例えば、本明細書に記載の装置1または21として、基本的に機能することができるように実現することができる。コンピュータは、本明細書に記載の装置の回路のうちのいずれかなどの回路を形成することができる構成要素91から100を有する。
本明細書に記載の方法を実行するためにソフトウェア、ファームウェア、またはプログラムなどを使用する実施形態は、コンピュータ90にインストールすることができ、その場合、具体的な実施形態に適するように構成される。
コンピュータ90は、CPU91(中央処理装置)を有し、CPU91は、例えば、リードオンリメモリ(ROM)92に格納される、ストレージ97に格納されてランダムアクセスメモリ(RAM)93にロードされる、各ドライブ99に挿入可能な媒体100に格納される、などのプログラムに従って、本明細書に記載されている各種の手順や方法を実行することができる。
CPU91、ROM92、およびRAM93は、バス101に接続されており、バス101は入力/出力インターフェース94に接続されている。CPU、メモリ、およびストレージの数は例示的なものにすぎず、本明細書に記載の装置として機能する場合に生じる特定の要件を満たすようにコンピュータ90を適宜適合および構成できることを当業者は理解するであろう。
入力/出力インターフェース94には、いくつかの構成要素、すなわち入力95、出力96、ストレージ97、通信インターフェース98、および媒体100(コンパクトディスク、デジタルビデオディスク、またはコンパクトフラッシュメモリなど)を挿入することができるドライブ99が接続される。
入力95は、ポインタデバイス(マウスまたはグラフィックテーブルなど)、キーボード、マイクロフォン、カメラ、タッチスクリーンなどとすることができる。
出力96は、ディスプレイ(液晶ディスプレイ、陰極線管ディスプレイ、発光ダイオードディスプレイなど)、拡声器などを有することができる。
ストレージ97は、ハードディスクおよびソリッドステートドライブなどを有することができる。
通信インターフェース98は、例えば、ローカルエリアネットワーク(LAN)、無線ローカルエリアネットワーク(WLAN)、移動体通信システム(GSM、UMTS、LTEなど)、Bluetooth、赤外線などを介して、通信するように適合させることができる。
上記の説明はコンピュータ90の例示的な構成にのみ関連することに留意されたい。
追加のまたは他のセンサ、ストレージデバイス、またはインターフェースなどを用いて代替構成を実現することができる。
本明細書に記載の方法は、いくつかの実施形態では、コンピュータおよび/またはプロセッサで実行されると、コンピュータおよび/またはプロセッサにその方法を実行させるコンピュータプログラムとしても実現される。いくつかの実施形態では、コンピュータプログラム製品を格納する非一時的コンピュータ可読記録媒体も提供され、それは、上述のプロセッサなどのプロセッサによって実行されると、本明細書で説明する方法を実行させる。
本実施形態は、方法ステップの例示的な順序で方法を説明していることを認識されたい。しかしながら、方法ステップの具体的な順序は説明の目的のためだけに与えられており、拘束力があると解釈されるべきではない。
上述の開示の実施形態が少なくとも部分的にソフトウェア制御データ処理装置を使用して実現される限りにおいて、そのようなソフトウェア制御を提供するコンピュータプログラムおよびそのようなコンピュータプログラムを提供するトランザクション、ストレージ、または他の媒体が、本開示の態様として想定されることは明らかであろう。
なお、本技術は以下のように構成することもできることに留意されたい。
(1)仮想デバイスを提供する装置であって、本装置は、
分散台帳における仮想デバイスの特性のセットの特性を提供するリソースデバイスを検索することであって、分散台帳が複数のリソースデバイスに関する情報を含む、検索することと、
仮想デバイスの特性のセットの特性を提供するリソースデバイスを選択することによって仮想デバイスを提供することと、
を行うように構成される回路を備える。
(2)(1)の装置であって、回路は、仮想デバイスの特性のセットに基づいて仮想デバイススマートコントラクトを生成するようにさらに構成される。
(3)(2)の装置であって、回路は、仮想デバイススマートコントラクトを分散台帳に格納するようにさらに構成される。
(4)(1)から(3)のいずれかの装置であって、回路は、仮想デバイスをアクティブ化するようにさらに構成される。
(5)(1)から(4)のいずれかの装置であって、リソースデバイスは、ネットワークに接続される。
(6)(5)の装置であって、ネットワークは、インターネットを含む。
(7)(1)から(6)のいずれかの装置であって、分散台帳は、ブロックチェーンである。
(8)(1)から(7)のいずれかの装置であって、複数のリソースデバイスに関する情報は、スマートコントラクト情報を含む。
(9)(8)の装置であって、スマートコントラクト情報は、プログラムコードを含む。
(10)(8)または(9)の装置であって、スマートコントラクト情報は、チューリング言語に基づく。
(11)仮想デバイスを提供する方法であって、本方法は、
分散台帳における仮想デバイスの特性のセットの特性を提供するリソースデバイスを検索するステップであって、分散台帳が複数のリソースデバイスに関する情報を含む、ステップと、
仮想デバイスの特性のセットの特性を提供するリソースデバイスを選択することによって仮想デバイスを提供するステップと、
を備える。
(12)(11)の方法であって、仮想デバイスの特性のセットに基づいて仮想デバイススマートコントラクトを生成するステップをさらに備える。
(13)(12)の方法であって、仮想デバイススマートコントラクトを分散台帳に格納するステップをさらに備える。
(14)(11)から(13)のいずれかの方法であって、仮想デバイスをアクティブ化するステップをさらに備える。
(15)(11)から(14)のいずれかの方法であって、リソースデバイスは、ネットワークに接続される。
(16)(15)の方法であって、ネットワークは、インターネットを含む。
(17)(11)から(16)のいずれかの方法であって、分散台帳は、ブロックチェーンである。
(18)(11)から(17)のいずれかの方法であって、複数のリソースデバイスに関する情報は、スマートコントラクト情報を含む。
(19)(18)の方法であって、スマートコントラクト情報は、プログラムコードを含む。
(20)(18)または(19)の方法であって、スマートコントラクト情報は、チューリング言語に基づく。
(21)コンピュータ上で実行されると、(11)から(20)のいずれかに記載の方法をコンピュータに実行させるプログラムコードを備えるコンピュータプログラム。
(22)プロセッサによって実行されると、(11)から(20)のいずれかに記載の方法を実行させるコンピュータプログラム製品を格納する非一時的コンピュータ可読記録媒体。

Claims (20)

  1. 仮想デバイスを提供する装置であって、前記装置は、
    分散台帳における前記仮想デバイスの特性のセットの特性を提供するリソースデバイスを検索することであって、前記分散台帳が複数のリソースデバイスに関する情報を含む、検索することと、
    前記仮想デバイスの特性の前記セットの特性を提供するリソースデバイスを選択することによって前記仮想デバイスを提供することと、
    を行うように構成される回路を備える、装置。
  2. 前記回路が、前記仮想デバイスの特性の前記セットに基づいて仮想デバイススマートコントラクトを生成するようにさらに構成される、請求項1に記載の装置。
  3. 前記回路が、前記仮想デバイススマートコントラクトを前記分散台帳に格納するようにさらに構成される、請求項2に記載の装置。
  4. 前記回路が、前記仮想デバイスをアクティブ化するようにさらに構成される、請求項3に記載の装置。
  5. 前記リソースデバイスが、ネットワークに接続される、請求項1に記載の装置。
  6. 前記ネットワークが、インターネットを含む、請求項5に記載の装置。
  7. 前記分散台帳が、ブロックチェーンである、請求項1に記載の装置。
  8. 前記複数のリソースデバイスに関する前記情報が、スマートコントラクト情報を含む、請求項1に記載の装置。
  9. 前記スマートコントラクト情報が、プログラムコードを含む、請求項8に記載の装置。
  10. 前記スマートコントラクト情報が、チューリング言語に基づく、請求項8に記載の装置。
  11. 仮想デバイスを提供する方法であって、前記方法は、
    分散台帳における前記仮想デバイスの特性のセットの特性を提供するリソースデバイスを検索するステップであって、前記分散台帳が複数のリソースデバイスに関する情報を含む、検索するステップと、
    前記仮想デバイスの特性の前記セットの特性を提供するリソースデバイスを選択することによって前記仮想デバイスを提供するステップと、
    を備える、方法。
  12. 前記仮想デバイスの特性の前記セットに基づいて仮想デバイススマートコントラクトを生成するステップをさらに備える、請求項11に記載の方法。
  13. 前記仮想デバイススマートコントラクトを前記分散台帳に格納するステップをさらに備える、請求項12に記載の方法。
  14. 前記仮想デバイスをアクティブ化するステップをさらに備える、請求項13に記載の方法。
  15. 前記リソースデバイスが、ネットワークに接続される、請求項11に記載の方法。
  16. 前記ネットワークが、インターネットを含む、請求項15に記載の方法。
  17. 前記分散台帳が、ブロックチェーンである、請求項11に記載の方法。
  18. 前記複数のリソースデバイスに関する前記情報が、スマートコントラクト情報を含む、請求項11に記載の方法。
  19. 前記スマートコントラクト情報が、プログラムコードを含む、請求項18に記載の方法。
  20. 前記スマートコントラクト情報が、チューリング言語に基づく、請求項18に記載の方法。
JP2019537345A 2017-01-31 2018-01-31 仮想デバイスを提供するための装置および方法 Active JP7243626B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP17154089.1A EP3355225B1 (en) 2017-01-31 2017-01-31 Apparatus and method for providing a ethereum virtual device
EP17154089.1 2017-01-31
PCT/EP2018/052397 WO2018141792A1 (en) 2017-01-31 2018-01-31 Apparatus and method for providing a virtual device

Publications (2)

Publication Number Publication Date
JP2020509448A true JP2020509448A (ja) 2020-03-26
JP7243626B2 JP7243626B2 (ja) 2023-03-22

Family

ID=57963034

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019537345A Active JP7243626B2 (ja) 2017-01-31 2018-01-31 仮想デバイスを提供するための装置および方法

Country Status (7)

Country Link
US (1) US11163611B2 (ja)
EP (1) EP3355225B1 (ja)
JP (1) JP7243626B2 (ja)
KR (1) KR102481906B1 (ja)
CN (1) CN110226166B (ja)
AU (1) AU2018215981B2 (ja)
WO (1) WO2018141792A1 (ja)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3614319A1 (en) * 2018-08-20 2020-02-26 Siemens Aktiengesellschaft Tracking execution of an industrial workflow of a petri net
US11182379B2 (en) 2018-08-24 2021-11-23 Oracle International Corporation DAG based methods and systems of transaction processing in a distributed ledger
JP7180207B2 (ja) * 2018-08-28 2022-11-30 セイコーエプソン株式会社 提供装置、処理システム及び通信方法
CN109034814B (zh) * 2018-09-14 2020-10-16 百度在线网络技术(北京)有限公司 基于以太坊虚拟机的智能合约处理方法和装置
US11184446B2 (en) 2018-12-05 2021-11-23 Micron Technology, Inc. Methods and apparatus for incentivizing participation in fog networks
WO2019072310A2 (en) * 2018-12-29 2019-04-18 Alibaba Group Holding Limited SYSTEM AND METHOD FOR IMPLEMENTING NATIVE CONTRACT ON BLOCK CHAIN
CN109710384B (zh) * 2018-12-29 2021-02-23 杭州趣链科技有限公司 一种安全的Java智能合约解释执行引擎及方法
US11133984B2 (en) * 2018-12-31 2021-09-28 Dish Network L.L.C. Internet-of-things device autonomous activation
US11327551B2 (en) 2019-02-14 2022-05-10 Micron Technology, Inc. Methods and apparatus for characterizing memory devices
US11256778B2 (en) * 2019-02-14 2022-02-22 Micron Technology, Inc. Methods and apparatus for checking the results of characterized memory searches
EP3699848A1 (en) * 2019-02-25 2020-08-26 Siemens Aktiengesellschaft Blockchain-powered device instruction
JP2022063883A (ja) * 2019-03-01 2022-04-25 ソニーグループ株式会社 情報処理装置、情報処理方法、およびプログラム
WO2019120316A2 (en) 2019-03-26 2019-06-27 Alibaba Group Holding Limited System and method for implementing different types of blockchain contracts
US11449577B2 (en) 2019-11-20 2022-09-20 Micron Technology, Inc. Methods and apparatus for performing video processing matrix operations within a memory array
US11853385B2 (en) 2019-12-05 2023-12-26 Micron Technology, Inc. Methods and apparatus for performing diversity matrix operations within a memory array
CN112766854B (zh) * 2021-01-22 2021-11-02 支付宝(杭州)信息技术有限公司 基于区块链的数字商品交易方法和装置
US11915242B2 (en) 2021-12-30 2024-02-27 The Adt Security Corporation Premises security system with secure embedded cryptocurrency storage

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160275461A1 (en) * 2015-03-20 2016-09-22 Rivetz Corp. Automated attestation of device integrity using the block chain

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102546379B (zh) * 2010-12-27 2014-12-31 中国移动通信集团公司 一种虚拟化资源调度的方法及虚拟化资源调度系统
US9576039B2 (en) * 2014-02-19 2017-02-21 Snowflake Computing Inc. Resource provisioning systems and methods
CN104125297A (zh) * 2014-08-06 2014-10-29 华为技术有限公司 虚拟资源共享方法、装置及系统
US10592985B2 (en) * 2015-03-02 2020-03-17 Dell Products L.P. Systems and methods for a commodity contracts market using a secure distributed transaction ledger
CN105488431B (zh) * 2015-11-30 2019-12-13 布比(北京)网络技术有限公司 区块链系统权限管理方法和装置
US10728103B2 (en) * 2016-03-21 2020-07-28 Dell Products L.P. Edge device resourcing using recursive ledger chaining
CN106296191A (zh) * 2016-08-13 2017-01-04 深圳市樊溪电子有限公司 一种区块链功耗感知的PoW共识机制
CN108073423B (zh) * 2016-11-09 2020-01-17 华为技术有限公司 一种加速器加载方法、系统和加速器加载装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160275461A1 (en) * 2015-03-20 2016-09-22 Rivetz Corp. Automated attestation of device integrity using the block chain

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
KONSTANTINOS CHRISTIDIS 外: "Blockchains and Smart Contracts for the Internet of Things", IEEE ACCESS, vol. 4, JPN6022012985, 10 May 2016 (2016-05-10), US, pages 2292 - 2303, XP011613134, ISSN: 0004892786, DOI: 10.1109/ACCESS.2016.2566339 *
MAYRA SAMANIEGO 外: "Using Blockchain to push Software- Defined IoT Components onto Edge Hosts", BDAW '16: PROCEEDINGS OF THE INTERNATIONAL CONFERENCE ON BIG DATA AND ADVANCED WIRELESS TECHNOLOGIES, JPN7022001607, November 2016 (2016-11-01), US, pages 1 - 9, XP058316394, ISSN: 0004892785, DOI: 10.1145/3010089.3016027 *

Also Published As

Publication number Publication date
AU2018215981A1 (en) 2019-08-15
US20190391829A1 (en) 2019-12-26
AU2018215981B2 (en) 2022-02-03
KR102481906B1 (ko) 2022-12-28
EP3355225A1 (en) 2018-08-01
CN110226166A (zh) 2019-09-10
KR20190111937A (ko) 2019-10-02
WO2018141792A1 (en) 2018-08-09
US11163611B2 (en) 2021-11-02
JP7243626B2 (ja) 2023-03-22
CN110226166B (zh) 2023-06-16
EP3355225B1 (en) 2022-07-27

Similar Documents

Publication Publication Date Title
JP7243626B2 (ja) 仮想デバイスを提供するための装置および方法
US10372936B2 (en) Shared identity management (IDM) integration in a multi-tenant computing environment
TW202002587A (zh) 基於區塊鏈的資料處理方法和裝置
US11609804B2 (en) Flexible event ingestion framework in an event processing system
US11050632B2 (en) Automated inventory for IoT devices
JP2019533231A (ja) 形状のストリームデータの自動パーティション分割
US11405451B2 (en) Data pipeline architecture
WO2021067156A1 (en) Nested tenancy that permits a hierarchy having a plurality of levels
US10182104B1 (en) Automatic propagation of resource attributes in a provider network according to propagation criteria
Limna et al. A flexible and scalable component-based system architecture for video surveillance as a service, running on infrastructure as a service
Lim et al. Sensor resource sharing approaches in sensor-cloud infrastructure
US20240098151A1 (en) ENHANCED PROCESSING OF USER PROFILES USING DATA STRUCTURES SPECIALIZED FOR GRAPHICAL PROCESSING UNITS (GPUs)
US11687535B2 (en) Automatic computation of features from a data stream
Dieber et al. Ella: Middleware for multi-camera surveillance in heterogeneous visual sensor networks
CN110008261B (zh) 外部变化检测
US20230418963A1 (en) Edge data processing utilizing per-endpoint subscriber configurable data processing workloads
da Cruz Sensae Console-Platforma de Support para Serviços Baseados em Iot
Prasanthi Gottumukkala THE STUDY OF MOBILE CLOUD COMPUTING: DESIGN, USES, AND METHODS
CN116009835A (zh) 一种目录资源编排方法、装置、设备以及存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210121

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220405

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220527

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221011

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221209

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230207

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230220

R151 Written notification of patent or utility model registration

Ref document number: 7243626

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151