JP7302664B2 - 情報処理装置、データ記録システム、データ記録方法及びプログラム - Google Patents

情報処理装置、データ記録システム、データ記録方法及びプログラム Download PDF

Info

Publication number
JP7302664B2
JP7302664B2 JP2021541810A JP2021541810A JP7302664B2 JP 7302664 B2 JP7302664 B2 JP 7302664B2 JP 2021541810 A JP2021541810 A JP 2021541810A JP 2021541810 A JP2021541810 A JP 2021541810A JP 7302664 B2 JP7302664 B2 JP 7302664B2
Authority
JP
Japan
Prior art keywords
data
key
measurement
unit
secure area
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.)
Active
Application number
JP2021541810A
Other languages
English (en)
Other versions
JPWO2021038684A5 (ja
JPWO2021038684A1 (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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Publication of JPWO2021038684A1 publication Critical patent/JPWO2021038684A1/ja
Publication of JPWO2021038684A5 publication Critical patent/JPWO2021038684A5/ja
Application granted granted Critical
Publication of JP7302664B2 publication Critical patent/JP7302664B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • H04L9/0897Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage involving additional devices, e.g. trusted platform module [TPM], smartcard or USB
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • 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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • 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
    • H04L9/3236Cryptographic 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 using cryptographic hash functions
    • H04L9/3239Cryptographic 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 using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • 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
    • H04L9/3236Cryptographic 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 using cryptographic hash functions
    • H04L9/3242Cryptographic 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 using cryptographic hash functions involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
    • 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
    • H04L9/3247Cryptographic 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 involving digital signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Power Engineering (AREA)
  • Storage Device Security (AREA)

Description

本開示は、情報処理装置、ノード、データ記録方法及びコンピュータ可読媒体に関する。
近年、IoT(Internet of Things)デバイスが普及し、IoTデバイスにより測定されたセンサデータを収集して活用することが求められている。また、収集されたセンサデータをブロックチェーンに記録することでデータの信頼性を保持したいというニーズがある。
ここで、特許文献1には、IoTサービスからIoTハブを経由したIoTデバイスへのデータ送信に関する技術が開示されている。特許文献2には、分散ファイル共有システムにおけるセキュリティ向上に関する技術が開示されている。
特表2019-511141号公報 特開2018-081464号公報
ところで、IoTデバイス等の測定装置が測定したデータを、信頼性を維持したままブロックチェーンに記録することが困難であるという問題点がある。通常、ブロックチェーンにデータを書き込むためには、公開鍵及び秘密鍵を保持し、対象データに電子署名を生成する必要がある。しかしながら、測定装置には計算リソースに制約があることが多く、測定装置が測定データを直接、ブロックチェーンに書き込むことが困難である。よって、測定データを信頼性を維持したままブロックチェーンに記録することが困難である。
本開示は、このような問題点を解決するためになされたものであり、測定装置による測定データを信頼性を維持したままブロックチェーンに記録するための情報処理装置、ノード、データ記録方法及びコンピュータ可読媒体を提供することを目的とする。
本開示の第1の態様にかかる情報処理装置は、
所定の測定装置との間における第1の共通鍵と、当該測定装置に割り当てられた第1の秘密鍵と第1の公開鍵の組のうち少なくとも当該第1の秘密鍵とを記憶するセキュア領域内の記憶部と、
前記測定装置において測定された測定データに対して前記第1の共通鍵を用いて生成された認証コードと当該測定データとを含む通信データを、当該測定装置から取得する取得部と、
前記セキュア領域内で前記第1の共通鍵を用いて前記通信データ内の前記認証コードの認証を行う認証部と、
前記認証がされた場合に、前記通信データ内の前記測定データに対して前記セキュア領域内で前記第1の秘密鍵を用いて第1の電子署名を生成する署名生成部と、
前記測定データ及び前記第1の電子署名を含めたトランザクションデータを、ブロックチェーンへの記録を行わせるために所定のノードへ送信する送信部と、
を備える。
本開示の第2の態様にかかるノードは、
所定の測定装置に割り当てられた第1の秘密鍵と第1の公開鍵の組のうち当該第1の公開鍵を記憶する記憶部と、
前記測定装置において測定された測定データと当該測定データに対して第1の共通鍵を用いて生成された認証コードとを含む通信データに対して情報処理装置のセキュア領域において当該第1の共通鍵を用いて認証され、かつ、当該セキュア領域において前記測定データから前記第1の秘密鍵を用いて生成された第1の電子署名と、当該測定データとを含めたトランザクションデータを、当該情報処理装置から受信する受信部と、
前記第1の公開鍵を用いて前記トランザクションデータに含まれる前記第1の電子署名を検証する検証部と、
前記検証がされた場合、前記トランザクションデータに対してブロックチェーンへ記録するための電子署名であるノード署名を生成する署名生成部と、
を備える。
本開示の第3の態様にかかるデータ記録方法は、
コンピュータが、
所定の測定装置において測定された測定データに対して当該測定装置との間における第1の共通鍵を用いて生成された認証コードと当該測定データとを含む通信データを、当該測定装置から取得し、
セキュア領域内で前記第1の共通鍵を用いて前記通信データ内の前記認証コードの認証を行い、
前記認証がされた場合に、前記測定装置に割り当てられた第1の秘密鍵と第1の公開鍵の組のうち当該第1の秘密鍵を用いて、前記通信データ内の前記測定データに対して前記セキュア領域内で第1の電子署名を生成し、
前記測定データ及び前記第1の電子署名を含めたトランザクションデータを、ブロックチェーンへの記録を行わせるために所定のノードへ送信する。
本開示の第4の態様にかかるコンピュータ可読媒体は、
所定の測定装置において測定された測定データに対して当該測定装置との間における第1の共通鍵を用いて生成された認証コードと当該測定データとを含む通信データ内の当該認証コードに対して、セキュア領域内で前記第1の共通鍵を用いて認証を行う認証処理と、
前記認証がされた場合に、前記測定装置に割り当てられた第1の秘密鍵と第1の公開鍵の組のうち当該第1の秘密鍵を用いて、前記通信データ内の前記測定データに対して前記セキュア領域内で第1の電子署名を生成する署名生成処理と、
前記測定データ及び前記第1の電子署名を含めたトランザクションデータを、ブロックチェーンへの記録を行わせるための所定のノードへ送信するために、前記セキュア領域外へ出力する出力処理と、
をコンピュータに実行させるプログラムが格納された非一時的なコンピュータ可読媒体である。
本開示の第5の態様にかかるデータ記録方法は、
コンピュータが、
所定の測定装置において測定された測定データと当該測定データに対して第1の共通鍵を用いて生成された認証コードとを含む通信データに対して情報処理装置のセキュア領域において当該第1の共通鍵を用いて認証され、かつ、当該セキュア領域において前記測定データから当該測定装置に割り当てられた第1の秘密鍵と第1の公開鍵の組のうち当該第1の秘密鍵を用いて生成された第1の電子署名と、当該測定データとを含めたトランザクションデータを、当該情報処理装置から受信し、
前記第1の公開鍵を用いて前記トランザクションデータに含まれる前記第1の電子署名を検証し、
前記検証がされた場合、前記トランザクションデータに対してブロックチェーンへ記録するための電子署名であるノード署名を生成する。
本開示の第6の態様にかかるコンピュータ可読媒体は、
所定の測定装置において測定された測定データと当該測定データに対して第1の共通鍵を用いて生成された認証コードとを含む通信データに対して情報処理装置のセキュア領域において当該第1の共通鍵を用いて認証され、かつ、当該セキュア領域において前記測定データから当該測定装置に割り当てられた第1の秘密鍵と第1の公開鍵の組のうち当該第1の秘密鍵を用いて生成された第1の電子署名と、当該測定データとを含めたトランザクションデータを、当該情報処理装置から受信する処理と、
前記第1の公開鍵を用いて前記トランザクションデータに含まれる前記第1の電子署名を検証する処理と、
前記検証がされた場合、前記トランザクションデータに対してブロックチェーンへ記録するための第2の電子署名を生成する処理と、
をコンピュータに実行させるプログラムが格納された非一時的なコンピュータ可読媒体である。
上述の態様によれば、測定装置による測定データを信頼性を維持したままブロックチェーンに記録するための情報処理装置、ノード、データ記録方法及びコンピュータ可読媒体を提供することができる。
本実施形態1にかかるデータ記録システムの全体構成を示すブロック図である。 本実施形態1にかかるデータ記録処理の流れを示すシーケンス図である。 本実施形態2にかかるデータ記録システムの全体構成を示すブロック図である。 本実施形態2にかかるトラステッドハードウェアのハードウェア構成を示すブロック図である。 本実施形態2にかかるデータ記録処理の流れを示すシーケンス図である。 本実施形態3にかかるデータ記録システムの全体構成を示すブロック図である。 本実施形態3にかかるTHWの鍵管理テーブルの例を示す図である。 本実施形態3にかかるデータ管理サーバの鍵管理テーブルの例を示す図である。 本実施形態4にかかるデータ記録システムの全体構成を示すブロック図である。 本実施形態4にかかる鍵更新処理の流れを示すフローチャートである。 本実施形態5にかかるトラステッドハードウェアの構成を示すブロック図である。 本実施形態5にかかるデータ記録処理の流れを示すフローチャートである。 本実施形態6にかかるトラステッドハードウェアの構成を示すブロック図である。 本実施形態6にかかるデータ記録処理の流れを示すフローチャートである。
以下では、本開示の実施形態について、図面を参照しながら詳細に説明する。各図面において、同一又は対応する要素には同一の符号が付されており、説明の明確化のため、必要に応じて重複説明は省略される。
<実施形態1>
図1は、本実施形態1にかかるデータ記録システム1000の全体構成を示すブロック図である。データ記録システム1000は、測定装置1と、情報処理装置2と、ノード3と、ブロックチェーン4とを備える。測定装置1は、情報処理装置2との間における第1の共通鍵を予め保持する。測定装置1は、所定の測定対象に対して測定を行って測定データを生成し、測定データに対して第1の共通鍵を用いて認証コードを生成する。認証コードには、例えば、AES(Advanced Encryption Standard)-CMAC(Cipher-based MAC((Message Authentication Code)))、AES-OMAC(One-Key CBC(cipher block chaining)-MAC)、HMAC(Hash-based Message Authentication Code)等が挙げられるがこれらに限定されない。そして、測定装置1は、認証コードと測定データとを含めて通信データとする。例えば、測定装置1は、通信データを情報処理装置2へ送信する。測定装置1は、例えば、IoTデバイスであるが、これに限定されない。
情報処理装置2は、自装置内にセキュア領域20を備えるコンピュータである。セキュア領域20は、自装置内のセキュア領域20の外(以下、「セキュア領域外」という)とは物理的又は論理的に分離されたTEE(Trusted Execution Environment)である。セキュア領域20は、セキュア領域外のメインプロセスからのアクセスが制限されるメモリ(不図示)を有し、本実施形態にかかるセキュアプログラム及び各種鍵情報を安全に保持する。よって、セキュア領域20は、情報処理装置2のうちセキュア領域外と比べてセキュアな実行環境であるTEEである。ここで、情報処理装置2は、耐タンパーデバイスであるトラステッドハードウェアである。トラステッドハードウェアとは、OS(Operating System)のルート権限があってもメモリ内のデータを参照することや改ざんすることができない、隔離された実行環境を提供するデバイスをいう。そして、セキュア領域20は、ARM(登録商標)アーキテクチャのTrustZoneやIntel SGX等に代表される技術仕様により実現可能である。
情報処理装置2は、記憶部21、認証部221、署名生成部222、取得部223及び送信部224を備える。ここで、記憶部21、認証部221及び署名生成部222は、セキュア領域20内の構成である。記憶部21は、第1の共通鍵211と第1の秘密鍵212とを記憶する。第1の共通鍵211は、測定装置1との間における共通鍵である。第1の秘密鍵212は、測定装置1に割り当てられた秘密鍵と公開鍵の組のうち、測定データに対する電子署名を行うための署名鍵として用いられる鍵情報である。尚、記憶部21は、第1の秘密鍵212と対になる公開鍵を記憶していてもよい。
取得部223は、上述した通信データを測定装置1から取得する。認証部221は、セキュア領域20内で第1の共通鍵211を用いて通信データ内の認証コードの認証を行う。署名生成部222は、認証部221により認証がされた場合に、通信データ内の測定データに対してセキュア領域20内で第1の秘密鍵212を用いて第1の電子署名を生成する。送信部224は、測定データ及び第1の電子署名を含めたトランザクションデータを、所定のノード3へ送信する。
ノード3は、ブロックチェーン4への記録を行う情報処理装置である。ノード3は、記憶部31と、受信部321と、検証部322と、署名生成部323と、記録部324とを備える。記憶部31は、第1の公開鍵311を記憶する。第1の公開鍵311は、上述した第1の秘密鍵212と対になる鍵情報であり、測定装置1に割り当てられている。
受信部321は、上述したトランザクションデータを情報処理装置2から受信する。検証部322は、第1の公開鍵311を用いてトランザクションデータに含まれる第1の電子署名を検証する。署名生成部323は、検証部322による検証がされた場合、トランザクションデータに対して電子署名であるノード署名を生成する。ここで、ノード署名は、トランザクションデータをブロックチェーン4へ書き込むために必要となる電子署名である。尚、ノード署名用の署名鍵(秘密鍵)と検証鍵(公開鍵)の組が予め生成済みであり、署名生成部323は、ノード署名用の署名鍵を予め保持しているものとする。記録部324は、ノード署名を含めたトランザクションデータを生成する。ここで、ノード3自身がブロックを生成しても良い。その場合、ノード3は、当該ブロックをブロックチェーン4へ記録する。または、ノード3は、トランザクションデータをP2Pネットワークへ流し、ブロック生成を担う他のノードが当該トランザクションデータを含んだブロックを生成し、当該ブロックをブロックチェーン4へ記録してもよい。
ブロックチェーン4は、トランザクションの集合であるブロックが連結された情報群であり、ネットワーク上で分散管理された台帳情報である。
図2は、本実施形態1にかかるデータ記録処理の流れを示すシーケンス図である。まず、情報処理装置2の取得部223は、測定データと認証コードを含む通信データを測定装置1から取得する(S101)。ここで、認証コードは、測定装置1において測定データに対して第1の共通鍵を用いて生成された情報である。
次に、認証部221は、セキュア領域20内で第1の共通鍵211を用いて通信データ内の認証コードの認証を行う(S102)。ステップS102において認証がされた場合に、署名生成部222は、第1の秘密鍵212を用いて、前記通信データ内の前記測定データに対して前記セキュア領域内で第1の電子署名を生成する(S103)。そして、送信部224は、測定データ及び第1の電子署名を含めたトランザクションデータを、ノード3へ送信する(S104)。
続いて、ノード3の受信部321は、トランザクションデータを、情報処理装置2から受信する。そして、検証部322は、第1の公開鍵311を用いてトランザクションデータに含まれる第1の電子署名を検証する(S105)。ステップS105において検証がされた場合、署名生成部323は、トランザクションデータに対してノード署名を生成する(S106)。そして、記録部324は、トランザクションデータ及びノード署名を含めたブロックを生成し、当該ブロックをブロックチェーン4へ記録する(S107)。
このように、本実施形態では、まず、測定装置1と情報処理装置2の間では共通鍵暗号方式を用いて測定データが通信され、情報処理装置2において測定装置1に割り当てられた第1の秘密鍵212を用いて署名がされる。特に、情報処理装置2では、セキュア領域20内で測定データの認証コードの検証と測定データに対する署名がなされる。そのため、ノード3は、受信したトランザクションデータに含まれる測定データが測定装置1に割り当てられた鍵情報により署名されたことを検証できる。また、ノード3は、受信したトランザクションデータに対して自身の署名(ノード署名)を行うため、ブロックチェーン4への記録が可能となる。これにより、測定装置1による測定データを信頼性を維持したままブロックチェーン4に記録することができる。
尚、情報処理装置2は、図示しない構成としてセキュア領域20及びセキュア領域外のそれぞれにプロセッサ、メモリ及び他の記憶装置を備えるものである。また、当該他の記憶装置には、本実施形態にかかるセキュアプログラム及び(情報処理装置2における)データ記録処理が実装されたコンピュータプログラムが記憶されている。そして、セキュア領域20のプロセッサがセキュアプログラムをセキュア領域20内のメモリへ読み込ませ、当該コンピュータプログラムを実行する。これにより、情報処理装置2のセキュア領域20のプロセッサは、認証部221及び署名生成部222の機能を実現する。また、セキュア領域外のプロセッサがデータ記録プログラムをセキュア領域外のメモリへ読み込ませ、当該コンピュータプログラムを実行する。これにより、情報処理装置2のセキュア領域外のプロセッサは、取得部223及び送信部224の機能を実現する。
または、上述した認証部221、署名生成部222、取得部223及び送信部224は、専用のハードウェアで実現されていてもよい。また、認証部221等の構成要素の一部又は全部は、汎用または専用の回路(circuitry)、プロセッサ等やこれらの組合せによって実現されもよい。これらは、単一のチップによって構成されてもよいし、バスを介して接続される複数のチップによって構成されてもよい。各装置の各構成要素の一部又は全部は、上述した回路等とプログラムとの組合せによって実現されてもよい。また、プロセッサとして、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、FPGA(field-programmable gate array)、ARM(登録商標)アーキテクチャ、Intel SGX(Software Guard Extensions)等を用いることができる。
また、ノード3は、図示しない構成としてプロセッサ、メモリ及び記憶装置を備えるものである。また、当該記憶装置には、本実施形態にかかる(ノード3における)データ記録処理が実装されたコンピュータプログラムが記憶されている。そして、当該プロセッサは、記憶装置からコンピュータプログラムを前記メモリへ読み込み、当該コンピュータプログラムを実行する。これにより、前記プロセッサは、受信部321、検証部322、署名生成部323及び記録部324の機能を実現する。
または、受信部321、検証部322、署名生成部323及び記録部324は、それぞれが専用のハードウェアで実現されていてもよい。また、各装置の各構成要素の一部又は全部は、汎用または専用の回路(circuitry)、プロセッサ等やこれらの組合せによって実現されもよい。これらは、単一のチップによって構成されてもよいし、バスを介して接続される複数のチップによって構成されてもよい。各装置の各構成要素の一部又は全部は、上述した回路等とプログラムとの組合せによって実現されてもよい。また、プロセッサとして、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、FPGA(field-programmable gate array)等を用いることができる。
また、ノード3の各構成要素の一部又は全部が複数の情報処理装置や回路等により実現される場合には、複数の情報処理装置や回路等は、集中配置されてもよいし、分散配置されてもよい。例えば、情報処理装置や回路等は、クライアントサーバシステム、クラウドコンピューティングシステム等、各々が通信ネットワークを介して接続される形態として実現されてもよい。
<実施形態2>
図3は、本実施形態2にかかるデータ記録システム2000の全体構成を示すブロック図である。データ記録システム2000は、IoTデバイス1aと、トラステッドハードウェア(Trusted HardWare(THW))2aと、データ管理サーバ3aと、ブロックチェーン4とを備える。ここで、少なくともTHW2a、データ管理サーバ3a及びブロックチェーン4は、ネットワークNを介して接続されている。尚、IoTデバイス1aもネットワークNに接続されていても良い。ここで、ネットワークNは、インターネット等の通信回線である。
IoTデバイス1aは、上述した測定装置1の一例であり、センサ110と、記憶部120と、生成部130と、送信部140とを備える。センサ110は、所定の測定を行い、センサデータ(測定データ)を生成(測定、取得)する。ここで、センサデータの例としては、生鮮食品を管理するために運搬するコンテナの温度や湿度が挙げられる。他の例としては、許可された海域での漁業がされたことを証明するためのGPS(Global Positioning System)データが挙げられる。また、他の例としては、電力取引のために、家庭や電化製品につけられたスマートメータによる電力使用量データが挙げられる。また、他の例としては、自動車の各部品(タイヤ、車体、ガラス)の製造過程の記録(炉の温度)が挙げられる。その他、サプライチェーンマネジメントにおいて用いられるセンサデータが適用可能である。また、IoTデバイス1aの例としては、温度センサ、湿度センサ、GPS受信機、電力計等が挙げられるが、これらに限定されない。
記憶部120は、第1の共通鍵121を記憶する。第1の共通鍵121は、THW2aとの間における共通鍵である。つまり、第1の共通鍵121と第1の共通鍵211は同一の鍵情報である。生成部130は、測定データに対して第1の共通鍵121を用いて認証コードを生成する。認証コードとしては、例えば、MAC(Message Authentication Code)を用いることができる。送信部140は、認証コードと測定データを含む通信データをTHW2aへ送信する。つまり、通信データは、少なくとも認証付きデータ<data, MAC>と記述できる。
ここで、本実施形態にかかる生成部130は、MACを用いる代わりに測定データに対して第1の共通鍵121を用いた認証暗号(Authenticated Encryption)による暗号化を行い、暗号化データ及び認証タグを生成してもよい。ここで、認証暗号プロトコルとしては、例えば、AES-GCM(Galois/Counter Mode)やAES-CCM(Counter with CBC-MAC)を用いることができるが、これらに限定されない。また、認証タグは認証コードと呼ぶこともできる。この場合、通信データは、認証付き暗号化データ<header, enc_k(data), tag>と記述できる。ここで、headerは、通信データのヘッダ情報であり、enc_k()は、第1の共通鍵121による暗号化を示す。また、tagは、認証タグを示す。さらに、当該headerにIoTデバイス1aの識別情報等を含めても良い。
尚、IoTデバイス1aは、図示しない構成としてプロセッサ、メモリ及び記憶装置を備えるものである。また、当該記憶装置には、本実施形態にかかるIoTデバイス1aの処理が実装されたコンピュータプログラムが記憶されている。そして、当該プロセッサは、記憶装置からコンピュータプログラムを前記メモリへ読み込み、当該コンピュータプログラムを実行する。これにより、前記プロセッサは、生成部130及び送信部140の機能を実現する。
または、生成部130及び送信部140は、それぞれが専用のハードウェアで実現されていてもよい。また、各装置の各構成要素の一部又は全部は、汎用または専用の回路、プロセッサ等やこれらの組合せによって実現されもよい。これらは、単一のチップによって構成されてもよいし、バスを介して接続される複数のチップによって構成されてもよい。各装置の各構成要素の一部又は全部は、上述した回路等とプログラムとの組合せによって実現されてもよい。また、プロセッサとして、CPU、GPU、FPGA等を用いることができる。
THW2aは、上述した情報処理装置2の一例であり、耐タンパーデバイスであるトラステッドハードウェアである。THW2aは、IoTデバイス1aから測定データを収集するためのスマートフォンもしくはタブレット端末等のモバイル端末、又は、PC(Personal Computer)等が挙げられる。THW2aは、情報処理装置2と比べてセキュア領域20内に第2の秘密鍵213、鍵生成部220、復号部225が追加され、署名生成部222が署名生成部222aに置き換わったものである。また、THW2aは、情報処理装置2と比べてセキュア領域外に公開部226が追加され、送信部224が送信部224aに置き換わったものである。それ以外の構成は図1と同等であるため、同一の符号を付し、重複する説明は適宜、省略する。
セキュア領域20内の記憶部21は、第2の秘密鍵213をさらに記憶する。第2の秘密鍵213は、THW2aに割り当てられた秘密鍵と公開鍵の組のうち、測定データに対する電子署名を行うための署名鍵として用いられる鍵情報である。
鍵生成部220は、セキュア領域20内で第1の秘密鍵212と第1の公開鍵311の組を生成する。例えば、鍵生成部220は、IoTデバイス1aの第1の識別情報の入力に応じて第1の秘密鍵212と第1の公開鍵311の組を生成する。ここで、第1の公開鍵311は、第1の秘密鍵212と対になる鍵情報であり、第1の秘密鍵212により生成された電子署名を検証するための検証鍵である。そして、鍵生成部220は、第1の秘密鍵212を第1の識別情報に割り当てて記憶部21に格納する。また、鍵生成部220は、第1の公開鍵311と第1の識別情報との組をセキュア領域外へ出力する。
また、鍵生成部220は、セキュア領域20内で第2の秘密鍵213と第2の公開鍵312の組を生成する。例えば、鍵生成部220は、THW2aの第2の識別情報の入力に応じて第2の秘密鍵213と第2の公開鍵312の組を生成する。ここで、第2の公開鍵312は、第2の秘密鍵213と対になる鍵情報であり、第2の秘密鍵213により生成された電子署名を検証するための検証鍵である。そして、鍵生成部220は、第2の秘密鍵213を第2の識別情報に割り当てて記憶部21に格納する。また、鍵生成部220は、第2の公開鍵312と第2の識別情報との組をセキュア領域外へ出力する。尚、鍵生成部220は、第1の秘密鍵212及び第2の秘密鍵213をセキュア領域外へ出力しない。
尚、鍵生成部220は、第1の共通鍵211を生成し、第1の共通鍵211を記憶部21に格納してもよい。この場合、IoTデバイス1aは、安全な方法で第1の共通鍵211を取得し、記憶部120に第1の共通鍵121として格納するものとする。
公開部226は、鍵生成部220により出力された第1の公開鍵311及び第1の識別情報の組を外部へ公開する。また、公開部226は、鍵生成部220により出力された第2の公開鍵312及び第2の識別情報の組を外部へ公開する。ここで、「公開」とは、例えば、THW2a内の特定の記憶領域を外部からアクセス可能に設定し、当該記憶領域に第1の公開鍵311及び第2の公開鍵312を保存することが挙げられる。または、「公開」とは、例えば、ネットワーク上で任意のコンピュータからアクセス可能なファイルサーバに第1の公開鍵311及び第2の公開鍵312をアップロードする等が挙げられる。具体的には、公開部226は、第1の公開鍵311及び第1の識別情報の組並びに第2の公開鍵312及び第2の識別情報の組を、ネットワークNを介してブロックチェーン4へ記録してもよい。そのため、データ管理サーバ3aは、第1の公開鍵311及び第2の公開鍵312を取得することが可能である。または、公開部226は、少なくともデータ管理サーバ3aへ第1の公開鍵311及び第2の公開鍵312を送信することにより公開してもよい。
取得部223は、無線又は有線通信によりIoTデバイス1aから直接、通信データを取得する。取得部223は、IoTデバイス1aから送信される通信データを受信することにより取得してもよく、または、IoTデバイス1aにアクセスして通信データを取得してもよい。
認証部221は、セキュア領域20内で第1の共通鍵211を用いて通信データ内の認証コードの認証を行う。
復号部225は、認証部221により認証がされた場合に、通信データ内の暗号化データに対してセキュア領域20内で第1の共通鍵211を用いて測定データへ復号する。
署名生成部222aは、復号された測定データに対して、セキュア領域20内で第1の秘密鍵212を用いて第1の電子署名を生成する。そして、署名生成部222aは、測定データ及び第1の電子署名に対してセキュア領域20内で第2の秘密鍵213を用いて第2の電子署名をさらに生成する。ここで、第1の電子署名及び第2の電子署名は、ECDSA(Elliptic Curve Digital Signature Algorithm)などを用いることができる。
送信部224aは、上記トランザクションデータに第2の電子署名をさらに含めて、ネットワークNを介してデータ管理サーバ3aへ送信する。これにより、データ管理サーバ3aに対してTHW2a自体の信頼性を証明することができる。
データ管理サーバ3aは、上述したノード3の一例であり、THW2aから受信したトランザクションデータに対して検証及び署名等を行い、ブロックチェーン4に記録する情報処理装置である。データ管理サーバ3aは、ノード3と比べて記憶部31に第2の公開鍵312が追加され、検証部322及び署名生成部323が検証部322a及び署名生成部323aに置き換わったものである。それ以外の構成は図1と同等であるため、同一の符号を付し、重複する説明は適宜、省略する。
第1の公開鍵311及び第2の公開鍵312は、上述した公開部226により公開された鍵情報がデータ管理サーバ3aに取得され、記憶部31に格納されたものである。
検証部322aは、上述した検証部322と同様に、第1の公開鍵311を用いてトランザクションデータに含まれる第1の電子署名を検証し、さらに、第2の公開鍵312を用いてトランザクションデータに含まれる第2の電子署名を検証する。署名生成部323aは、第1の電子署名及び第2の電子署名の検証がされた場合に、ノード署名を生成する。
図4は、本実施形態2にかかるトラステッドハードウェアのハードウェア構成を示すブロック図である。THW2aは、セキュアエレメント23と非セキュアエレメント24とを備える。セキュアエレメント23は、上述したセキュア領域20内に対応し、非セキュアエレメント24は、セキュア領域外に対応する。非セキュアエレメント24は、THW2aの本体部分であり、THW2aの多くの機能を実現する。セキュアエレメント23は、非セキュアエレメント24とは物理的又は論理的に分離されたハードウェアである。セキュアエレメント23は、非セキュアエレメント24と比べて安全な実行環境であり、例えば、上述したTEEにより実現される。
セキュアエレメント23は、制御部231、記憶部232及びIF(InterFace)部233を備える。制御部231は、セキュアエレメント23の各構成を制御するプロセッサつまり制御装置である。例えば、制御部231は、1以上のプロセッサコアであってもよい。記憶部232は、制御部231の動作時に一時的に情報を保持するための記憶領域である。記憶部232は、例えば、RAM(Random Access Memory)等の揮発性記憶装置又はフラッシュメモリ等の不揮発性記憶装置である。記憶部232は、非セキュアエレメント24からロードされたセキュアプログラム2321を記憶する。セキュアプログラム2321は、鍵生成部220、認証部221、署名生成部222a及び復号部225の処理が実装されたコンピュータプログラムである。また、記憶部232は、第1の共通鍵211、第1の秘密鍵212及び第2の秘密鍵213を記憶する。尚、第1の秘密鍵212及び第2の秘密鍵213は、少なくともセキュアエレメント23内で生成されたものである。IF部233は、非セキュアエレメント24と情報の入出力を行うためのインタフェースである。制御部231は、記憶部232にロードされたセキュアプログラム2321を実行することにより、上述した鍵生成部220、認証部221、署名生成部222a及び復号部225の機能を実現する。
非セキュアエレメント24は、制御部241、記憶部242、IF部243及び通信部244を備える。制御部241は、非セキュアエレメント24の各構成を制御するプロセッサつまり制御装置である。例えば、制御部241は、1以上のプロセッサコアであってもよい。記憶部242は、制御部241の動作時に一時的に情報を保持するための記憶領域である。記憶部232は、例えば、RAM等の揮発性記憶装置又はフラッシュメモリ等の不揮発性記憶装置である。記憶部242は、制御部241からロードされたデータ記録プログラム2421を記憶する。データ記録プログラム2421は、取得部223、送信部224a及び公開部226の処理が実装されたコンピュータプログラムである。IF部243は、セキュアエレメント23と情報の入出力を行うためのインタフェースである。通信部244は、外部との通信に関する処理を行うための処理回路、アンテナ等を含む。通信部244は、IoTデバイス1aとの情報の送受信を行い、また、ネットワークNを介してデータ管理サーバ3a等と情報の送受信を行う。制御部241は、記憶部242にロードされたデータ記録プログラム2421を実行することにより、上述した取得部223、送信部224a及び公開部226の機能を実現する。
尚、上述したセキュアエレメント23は、ハードウェア的に他の処理領域と隔離されたものであっても良く、ソフトウェア的に他の処理領域と隔離されたものであっても良い。
図5は、本実施形態2にかかるデータ記録処理の流れを示すシーケンス図である。まず、IoTデバイス1aのセンサ110は、測定を行い(S201)、測定データを生成する。次に、生成部130は、測定データに対して第1の共通鍵121を用いてMACを生成し、暗号化を行う(S202)。その後、送信部140は、暗号化データと認証コードを含めた通信データをTHW2aに送信する(S203)。例えば、センサ110は、定期的に測定を行い、送信部140は、測定される度に通信データを送信しても良い。これに応じてTHW2aの取得部223は、IoTデバイス1aから通信データを受信つまり取得する。
そして、認証部221は、セキュア領域20内で第1の共通鍵211を用いて通信データ内の認証コードの認証を行う(S204)。ステップS204において認証がされた場合に、復号部225は、通信データ内の暗号化データに対してセキュア領域20内で第1の共通鍵211を用いて測定データへ復号する(S205)。そして、署名生成部222aは、復号された測定データに対して、セキュア領域20内で第1の秘密鍵212を用いて第1の電子署名を生成する。そして、署名生成部222aは、測定データ及び第1の電子署名に対してセキュア領域20内で第2の秘密鍵213を用いて第2の電子署名を生成する。そして、署名生成部222aは、測定データ(data)、第1の電子署名(σ_iot)及び第2の電子署名(σ_thw)を含めたトランザクションデータを生成する(S206)。ここで、トランザクションデータは、"<(data, ID_iot), σ_iot, σ_thw >"と表現できる。この場合、ID_iotは、IoTデバイス1aの第1の識別情報である。
その後、送信部224aは、トランザクションデータを、ネットワークNを介してデータ管理サーバ3aへ送信する(S207)。これに応じて、データ管理サーバ3aの受信部321は、ネットワークNを介してTHW2aからトランザクションデータを受信する。
そして、検証部322aは、第1の公開鍵311を用いてトランザクションデータに含まれる第1の電子署名を検証し、さらに、第2の公開鍵312を用いてトランザクションデータに含まれる第2の電子署名を検証する(S208)。ステップS208で第1の電子署名及び第2の電子署名の検証がされた場合、署名生成部323aは、トランザクションデータに対して自己の署名鍵を用いてノード署名を生成する(S209)。
記録部324は、ハッシュ値計算、トランザクションデータ及びノード署名を含めたブロックの生成(S210)、合意形成等を行い、当該ブロックをブロックチェーン4へ記録する(S211)。
このように、本実施形態2では、実施形態1と同様に、THW2aを用いることで、IoTデバイス1aで測定された測定データの信頼性を損なうことなく、ブロックチェーン4にデータを記録させることを可能とする。さらに、トランザクションデータに第2の電子署名を含めることで、データ管理サーバ3aが信頼できない場合であってもブロック内のトランザクションデータの信頼性を担保できる。
<実施形態3>
図6は、本実施形態3にかかるデータ記録システム3000の全体構成を示すブロック図である。データ記録システム3000は、IoTデバイス11、12・・・1n(nは2以上の自然数。)と、THW2bと、データ管理サーバ3bと、ブロックチェーン4とを備える。ここで、少なくともTHW2b、データ管理サーバ3b及びブロックチェーン4は、ネットワークNを介して接続されている。尚、IoTデバイス11等もネットワークNに接続されていても良い。
IoTデバイス11から1nのそれぞれは、識別情報が異なる点を除き、上述したIoTデバイス1aと同等の構成である。この場合、IoTデバイス11から1nのそれぞれは、設置場所が異なり、同様のセンサデータを計測する計測装置といえる。または、IoTデバイス11から1nのそれぞれは、異なるセンサ110を搭載していてもよい。この場合、各センサは、温度や湿度といった異なる指標のデータを測定するものであればよい。
THW2bは、上述したTHW2aを改良したものであり、THW2aと比べて記憶部21内に鍵管理テーブル210を備え、認証部221が認証部221bに、署名生成部222aが署名生成部222bに置き換わったものである。それ以外の構成は図3と同等であるため、同一の符号を付し、重複する説明は適宜、省略する。
鍵管理テーブル210は、各IoTデバイスの識別情報のそれぞれに対して、各IoTデバイスに対応する第1の共通鍵211と第1の秘密鍵212の組とを対応付けて(割り当てて)管理するためのテーブルである。図7は、本実施形態3にかかるTHW2bの鍵管理テーブル210の例を示す図である。例えば、デバイスID「11」には共通鍵「k_1」と秘密鍵「sk_1」とが対応付けられていることを示す。
認証部221bは、鍵管理テーブル210を参照し、通信データの取得元のIoTデバイスに割り当てられた第1の共通鍵を用いて認証コードの認証を行う。署名生成部222bは、鍵管理テーブル210を参照し、取得元のIoTデバイスに割り当てられた第1の秘密鍵を用いて第1の電子署名を生成する。
データ管理サーバ3bは、上述したデータ管理サーバ3aを改良したものであり、データ管理サーバ3aと比べて記憶部31内に鍵管理テーブル310を備え、署名生成部323aが署名生成部323bに置き換わったものである。それ以外の構成は図3と同等であるため、同一の符号を付し、重複する説明は適宜、省略する。
鍵管理テーブル310は、各IoTデバイスの識別情報のそれぞれに対して、各IoTデバイスに対応する第1の公開鍵311を対応付けて(割り当てて)管理するためのテーブルである。図8は、本実施形態3にかかるデータ管理サーバ3bの鍵管理テーブル310の例を示す図である。例えば、デバイスID「11」には公開鍵「pk_1」が対応付けられていることを示す。
検証部322bは、トランザクションデータに含まれる測定データに対応するIoTデバイスの識別情報を特定し、鍵管理テーブル210を参照し、特定した識別情報に対応する第1の公開鍵311を読み出す。そして、検証部322bは、読み出した第1の公開鍵311を用いてトランザクションデータに含まれる第1の電子署名を検証する。
このように、本実施形態3により、信頼性を確保しつつ、2以上のIoTデバイスから測定データを収集し、ブロックチェーンに記録させることができる。
<実施形態4>
図9は、本実施形態4にかかるデータ記録システム4000の全体構成を示すブロック図である。データ記録システム4000は、上述したデータ記録システム2000と比べて、IoTデバイス1a及びTHW2aがIoTデバイス1c及びTHW2cに置き換わったものである。それ以外の構成は図3と同等であるため、同一の符号を付し、重複する説明は適宜、省略する。
THW2cは、上述したTHW2aの構成に加えて、鍵更新部227を備える。鍵更新部227は、IoTデバイス1cからの通信データの取得回数が所定回数となる度に、セキュア領域20内で第2の共通鍵を生成する。そして、鍵更新部227は、IoTデバイス1cに対して第1の共通鍵121を更新させるために当該第2の共通鍵を送信する。このとき、鍵更新部227は、第1の共通鍵211を用いて第2の共通鍵を暗号化して送信するとよい。例えば、鍵更新部227は、鍵更新フラグ(KEY_UPDATE_FLAG)をON、初期化ベクトル(IV_new)、第2の共通鍵(k_new)の組を第1の共通鍵211により暗号化し、暗号化データを鍵更新要求としてIoTデバイス1cへ送信する。その後、鍵更新部227は、記憶部21に対して第1の共通鍵211を当該第2の共通鍵に更新する。ここで、「所定回数」は、IoTデバイス1c(センサ)又はセンサデータ(通信データ)の種類や用途に応じて適宜、定められるものとする。そして、THW2cは、記憶部21等に所定回数の値を予め格納しているものとする。
IoTデバイス1cは、上述したIoTデバイス1aの構成に加えて、鍵更新部150を備える。鍵更新部150は、THW2cから第2の共通鍵を受信した場合、記憶部120内の第1の共通鍵121を第2の共通鍵に更新する。例えば、鍵更新部150は、THW2cから上記鍵更新要求を受信した場合、第1の共通鍵121を用いて鍵更新要求を復号して、第2の共通鍵と初期化ベクトルを取得し、記憶部120に格納する。
図10は、本実施形態4にかかる鍵更新処理の流れを示すフローチャートである。まず、THW2cの鍵更新部227は、取得回数iに0を設定する(S401)。次に、取得部223は、IoTデバイス1cから通信データを取得する(S402)。そして、鍵更新部227は、取得回数iに1を加算する(S403)。その後、鍵更新部227は、取得回数iが所定回数N(Nは2以上の自然数。)であるか否かを判定する(S404)。取得回数iが所定回数Nである場合、鍵更新部227は、新たな共通鍵(第2の共通鍵)を生成する(S405)。そして、鍵更新部227は、セキュアチャネルを通してIoTデバイス1cへ第2の共通鍵を送信する(S406)。その後、鍵更新部227は、取得回数iを0にクリアする(S408)。
一方、ステップS404において取得回数iが所定回数Nでない場合、つまり、取得回数iが所定回数N未満である場合、THW2cは、上述した図5のステップS204からS207の処理を行う(S409)。ステップS408又はS409の後、ステップS402へ戻る。
尚、本実施形態の変形例として、新たな共通鍵の生成処理をIoTデバイスで行っても良い。その場合、鍵更新部150は、THW2cへの通信データの送信回数が所定回数となる度に、第2の共通鍵を生成する。そして、鍵更新部150は、THW2cに対して第1の共通鍵211を更新させるために当該第2の共通鍵を送信する。その後、鍵更新部150は、記憶部120に対して第1の共通鍵121を当該第2の共通鍵に更新する。
ここで、同一の暗号鍵を長期的に利用することはセキュリティ上好ましくない。そのため、適切に暗号鍵を更新する必要がある。そこで、本実施形態では、通信データの送受信回数が所定回数となる度に共通鍵を更新するため、共通鍵の安全性を向上できる。
<実施形態5>
本実施形態5は、上述した実施形態2にかかるTHW2aに対して改良を加えたものである。図11は、本実施形態5にかかるトラステッドハードウェア(THW)2dの構成を示すブロック図である。THW2dは、THW2aと比べて送信制御部228が追加されたものである。それ以外の構成は図3と同等であるため、同一の符号を付し、重複する説明は適宜、省略する。
送信制御部228は、IoTデバイス1aからの通信データの取得回数が所定回数となる度に、送信部224aに対してトランザクションデータの送信をさせる。
図12は、本実施形態5にかかるデータ記録処理の流れを示すフローチャートである。まず、THW2dの送信制御部228は、取得回数iに0を設定する(S501)。次に、取得部223は、IoTデバイス1aから通信データを取得する(S502)。そして、送信制御部228は、取得回数iに1を加算する(S503)。その後、送信制御部228は、取得回数iが所定回数Nであるか否かを判定する(S504)。取得回数iが所定回数Nである場合、認証部221は、セキュア領域20内で第1の共通鍵211を用いて通信データ内の認証コードの認証を行う(S505)。ステップS505において認証がされた場合に、復号部225は、通信データ内の暗号化データに対してセキュア領域20内で第1の共通鍵211を用いて測定データへ復号する(S506)。そして、署名生成部222aは、上述したように2回の署名を行い、トランザクションデータを生成する(S507)。つまり、当該トランザクションデータは、N回目の取得された測定データを含むが、N-1回目までに取得された測定データを含まない。その後、送信部224aは、トランザクションデータを、ネットワークNを介してデータ管理サーバ3aへ送信する(S508)。その後、送信制御部228は、取得回数iを0にクリアする(S509)。その後、ステップS502へ戻る。
また、ステップS504において取得回数iが所定回数Nでない場合、つまり、取得回数iが所定回数N未満である場合、ステップS502へ戻る。そのため、N-1回目までの測定データを含むトランザクションデータは、データ管理サーバ3aには送信されない。
尚、ステップS504は、ステップS503より後からステップS508より前までの間に実行されればよい。
このように、本実施形態5にかかるTHW2dは、取得した通信データ(測定データ)に基づくトランザクションデータを毎回、ブロックチェーン4に書き込むのではなく、N回に一回のみ書き込むものである。つまり、ブロックチェーン4への書き込み頻度を制御しているといえる。そのため、ブロックチェーン4の容量を抑制することができる。さらに、THW2dのトランザクションデータの送信回数も抑制され、ネットワークNの負荷の軽減、THW2dの処理負荷も軽減される。さらに、ステップS504の位置で判定されることにより、不要な復号処理及び署名生成処理を抑制でき、THW2dの処理負荷がさらに軽減される。
<実施形態6>
本実施形態6は、上述した実施形態2にかかるTHW2aに対して改良を加えたものである。図13は、本実施形態6にかかるトラステッドハードウェア(THW)2eの構成を示すブロック図である。THW2eは、THW2aと比べて加工部229が追加され、署名生成部222が署名生成部222eに置き換わったものである。それ以外の構成は図3と同等であるため、同一の符号を付し、重複する説明は適宜、省略する。
加工部229は、IoTデバイス1aからの通信データの取得回数が所定回数となる度に、直近に取得された所定数の通信データ内の所定数の測定データに対して所定の加工を行う。所定の加工とは、例えば、所定数の測定データの平均値を算出する演算処理や、所定数の測定データを1データに連結する処理等である。また、所定の加工とは、各種統計処理等の演算処理であってもよい。署名生成部222eは、加工された加工データに対してセキュア領域20内で第1の秘密鍵212を用いて第1の電子署名を生成する。
図14は、本実施形態6にかかるデータ記録処理の流れを示すフローチャートである。まず、THW2eの加工部229は、取得回数iに0を設定する(S601)。次に、取得部223は、IoTデバイス1aから通信データを取得する(S602)。そして、加工部229は、取得回数iに1を加算する(S603)。認証部221は、セキュア領域20内で第1の共通鍵211を用いて通信データ内の認証コードの認証を行う(S604)。ステップS604において認証がされた場合に、復号部225は、通信データ内の暗号化データに対してセキュア領域20内で第1の共通鍵211を用いて測定データへ復号する(S605)。その後、加工部229は、取得回数iが所定回数Nであるか否かを判定する(S606)。
ステップS606において取得回数iが所定回数Nでない場合、つまり、取得回数iが所定回数N未満である場合、ステップS602へ戻る。ステップS606において取得回数iが所定回数Nである場合、加工部229は、i=1からNの測定データに対して所定の加工を行い(S607)、1つの加工データを生成する。例えば、IoTデバイス1aが5分ごとに温度の測定データを送信する場合、加工部229は、1時間の間に12回の測定データ(通信データ)を受信する。そのためこの場合、加工部229は、通信データの取得回数が12回ごとに、12回分の温度の測定データに対する平均値を算出する。
続いて、署名生成部222eは、加工データからトランザクションデータを生成する(S608)。具体的には、署名生成部222eは、加工データに対してセキュア領域20内で第1の秘密鍵212を用いて第1の電子署名を生成する。そして、署名生成部222eは、加工データ及び第1の電子署名に対してセキュア領域20内で第2の秘密鍵213を用いて第2の電子署名を生成する。そして、署名生成部222aは、加工データ、第1の電子署名及び第2の電子署名を含めたトランザクションデータを生成する。その後、送信部224aは、トランザクションデータを、ネットワークNを介してデータ管理サーバ3aへ送信する(S609)その後、加工部229は、取得回数iを0にクリアする(S408)。そして、ステップS602へ戻る。
このように、本実施形態6では、ブロックチェーン4へのトランザクションデータの書き込み頻度を軽減しつつ、測定データをある程度妥当な値である加工データとするものである。よって、トランザクションデータ内の加工データを活用する際に有用である。さらに、THW2eのトランザクションデータの送信回数も抑制され、ネットワークNの負荷の軽減、THW2eの処理負荷も軽減される。
<その他の実施形態>
尚、上述した実施形態3は、次のように変更しても良い。まず、取得部223が所定時間内に、第1の測定装置から第1の通信データを取得し、かつ、第2の測定装置から第2の通信データを取得するものとする。併せて、認証部221bにより第1の通信データ内の第1の認証コード及び第2の通信データ内の第2の認証コードの認証がされたものとする。このような場合に、署名生成部222bは、第1の通信データ内の第1の測定データ、及び、第2の通信データ内の第2の測定データに対してセキュア領域20内で第1の秘密鍵212を用いて第1の電子署名を生成するとよい。但し、第1の秘密鍵212は、第1の測定装置及び第2の測定装置の組に割り当てられているものとする。そして、この場合、送信部224aは、第1の測定データ、第2の測定データ及び第1の電子署名を含めたトランザクションデータをデータ管理サーバ3bへ送信する。このように所定時間内に測定された複数の指標のセンサデータ(例えば、温度とGPSデータ)をまとめて一つのトランザクションデータに含めることで、センサデータの利活用を効率的に行うことができる。
また、上述した実施形態6のように取得回数に応じてトランザクションデータを生成する代わりに、取得したデータ量に応じてトランザクションデータを生成してもよい。例えば、加工部は、IoTデバイスから取得した通信データのデータ量が所定量となる度に、直近に取得された所定量の通信データ内の測定データに対して所定の加工を行うようにしてもよい。また、THWが移動して複数のIoTデバイスから無線通信で測定データを収集し、THWが元の場所に戻った後にまとめて加工データ及びトランザクションデータを生成し、ブロックチェーンに書き込んでも良い。例えば、スーパーマーケットにおいて仕入れ品の製造、出荷及び運搬におけるそれぞれのセンサデータの記録をブロックチェーンから参照する場合には、まとめて書き込んでも構わない。リアルタイム性が相対的に低いといえるためである。一方、運搬業者が運搬品の温度管理等を記録する場合、都度、ブロックチェーンに記録することが望ましい。リアルタイム性が相対的に高いといえるためである。
尚、上記実施形態において、様々な処理を行う機能ブロックとして図面に記載される各要素は、ハードウェア的には、CPU(Central Processing Unit)、メモリ、その他の回路で構成することができ、ソフトウェア的には、CPUがメモリにロードして実行するプログラム等によって実現される。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、又はそれらの組合せによっていろいろな形で実現できることは当業者には理解されるところであり、いずれかに限定されるものではない。
また、上記のプログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)、CD-ROM(Compact Disc-Read Only Memory)、CD-R(CD-Recordable)、CD-R/W(CD-ReWritable)、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(Random Access Memory))を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されても良い。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
なお、本開示は上記実施形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。また、本開示は、それぞれの実施形態を適宜組み合わせて実施されてもよい。
上記の実施形態の一部又は全部は、以下の付記のようにも記載され得るが、以下には限られない。
(付記A1)
所定の測定装置との間における第1の共通鍵と、当該測定装置に割り当てられた第1の秘密鍵と第1の公開鍵の組のうち少なくとも当該第1の秘密鍵とを記憶するセキュア領域内の記憶部と、
前記測定装置において測定された測定データに対して前記第1の共通鍵を用いて生成された認証コードと当該測定データとを含む通信データを、当該測定装置から取得する取得部と、
前記セキュア領域内で前記第1の共通鍵を用いて前記通信データ内の前記認証コードの認証を行う認証部と、
前記認証がされた場合に、前記通信データ内の前記測定データに対して前記セキュア領域内で前記第1の秘密鍵を用いて第1の電子署名を生成する署名生成部と、
前記測定データ及び前記第1の電子署名を含めたトランザクションデータを、ブロックチェーンへの記録を行わせるために所定のノードへ送信する送信部と、
を備える情報処理装置。
(付記A2)
前記記憶部は、前記情報処理装置に割り当てられた第2の秘密鍵と第2の公開鍵の組のうち少なくとも当該第2の秘密鍵をさらに記憶し、
前記署名生成部は、前記測定データ及び前記第1の電子署名に対して前記セキュア領域内で前記第2の秘密鍵を用いて第2の電子署名をさらに生成し、
前記送信部は、前記トランザクションデータに前記第2の電子署名をさらに含めて、前記ノードへ送信する
付記A1に記載の情報処理装置。
(付記A3)
前記セキュア領域内で前記第1の秘密鍵と第1の公開鍵の組を生成し、当該第1の秘密鍵を前記測定装置の識別情報に割り当てて前記記憶部に格納し、当該第1の公開鍵と前記識別情報との組を前記セキュア領域外へ出力する鍵生成部と、
前記出力された前記第1の公開鍵及び前記識別情報の組を外部へ公開する公開部と、
をさらに備える付記A1又はA2に記載の情報処理装置。
(付記A4)
前記記憶部は、2以上の前記測定装置のそれぞれに対して、異なる前記第1の秘密鍵と前記第1の共通鍵との組を割り当てて記憶しており、
前記認証部は、前記通信データの取得元の測定装置に割り当てられた前記第1の共通鍵を用いて前記認証コードの認証を行い、
前記署名生成部は、前記取得元の測定装置に割り当てられた前記第1の秘密鍵を用いて前記第1の電子署名を生成する
付記A1乃至A3のいずれか1項に記載の情報処理装置。
(付記A5)
前記署名生成部は、所定時間内に、第1の測定装置から第1の通信データが取得され、かつ、第2の測定装置から第2の通信データが取得された場合、並びに、前記認証部により前記第1の通信データ内の第1の認証コード及び前記第2の通信データ内の第2の認証コードの認証がされた場合、前記第1の通信データ内の第1の測定データ、及び、前記第2の通信データ内の第2の測定データに対して前記セキュア領域内で前記第1の秘密鍵を用いて前記第1の電子署名を生成し、
前記送信部は、前記第1の測定データ、前記第2の測定データ及び前記第1の電子署名を含めた前記トランザクションデータを前記ノードへ送信する
付記A4に記載の情報処理装置。
(付記A6)
前記測定装置からの前記通信データの取得回数が所定回数となる度に、前記セキュア領域内で第2の共通鍵を生成し、前記測定装置に対して前記第1の共通鍵を更新させるために当該第2の共通鍵を送信し、前記記憶部に対して前記第1の共通鍵を当該第2の共通鍵に更新する鍵更新部をさらに備える
付記A1乃至A5のいずれか1項に記載の情報処理装置。
(付記A7)
前記測定装置からの前記通信データの取得回数が所定回数となる度に、前記送信部に対して前記トランザクションデータの送信をさせる送信制御部をさらに備える
付記A1乃至A6のいずれか1項に記載の情報処理装置。
(付記A8)
前記測定装置からの前記通信データの取得回数が所定回数となる度に、直近に取得された所定数の前記通信データ内の所定数の前記測定データに対して所定の加工を行う加工部をさらに備え、
前記署名生成部は、前記加工された加工データに対して前記セキュア領域内で前記第1の秘密鍵を用いて前記第1の電子署名を生成する
付記A1乃至A7のいずれか1項に記載の情報処理装置。
(付記A9)
前記通信データは、前記測定装置において前記測定データに対して前記第1の共通鍵を用いて暗号化された暗号化データと前記認証コードとを含み、
前記情報処理装置は、
前記認証がされた場合に、前記通信データ内の前記暗号化データに対して前記セキュア領域内で前記第1の共通鍵を用いて前記測定データへ復号する復号部をさらに備え、
前記署名生成部は、前記復号された前記測定データに対して、前記セキュア領域内で前記第1の秘密鍵を用いて前記第1の電子署名を生成する
付記A1乃至A8のいずれか1項に記載の情報処理装置。
(付記A10)
前記セキュア領域は、前記情報処理装置のうち前記セキュア領域外と比べてセキュアな実行環境であるTEE(Trusted Execution Environment)である
付記A1乃至A8のいずれか1項に記載の情報処理装置。
(付記B1)
所定の測定により測定データを取得するセンサと、
前記第1の共通鍵を記憶する記憶部と、
前記測定データに対して前記第1の共通鍵を用いて認証コードを生成する生成部と、
前記認証コードと前記測定データを含む通信データを付記A1乃至A5のいずれか1項に記載の情報処理装置へ送信する送信部と、
前記情報処理装置への前記通信データの送信回数が所定回数となる度に、第2の共通鍵を生成し、前記情報処理装置に対して前記第1の共通鍵を更新させるために当該第2の共通鍵を送信し、前記記憶部に対して前記第1の共通鍵を当該第2の共通鍵に更新する鍵更新部と、
を備える測定装置。
(付記C1)
所定の測定装置に割り当てられた第1の秘密鍵と第1の公開鍵の組のうち当該第1の公開鍵を記憶する記憶部と、
前記測定装置において測定された測定データと当該測定データに対して第1の共通鍵を用いて生成された認証コードとを含む通信データに対して情報処理装置のセキュア領域において当該第1の共通鍵を用いて認証され、かつ、当該セキュア領域において前記測定データから前記第1の秘密鍵を用いて生成された第1の電子署名と、当該測定データとを含めたトランザクションデータを、当該情報処理装置から受信する受信部と、
前記第1の公開鍵を用いて前記トランザクションデータに含まれる前記第1の電子署名を検証する検証部と、
前記検証がされた場合、前記トランザクションデータに対してブロックチェーンへ記録するための電子署名であるノード署名を生成する署名生成部と、
を備えるノード。
(付記C2)
前記記憶部は、前記情報処理装置に割り当てられた第2の秘密鍵と第2の公開鍵の組のうち当該第2の公開鍵をさらに記憶し、
前記トランザクションデータは、前記セキュア領域において前記測定データ及び前記第1の電子署名に対して前記第2の秘密鍵を用いて生成された第2の電子署名をさらに含み、
前記検証部は、前記第2の公開鍵を用いて前記トランザクションデータに含まれる前記第2の電子署名をさらに検証し、
前記署名生成部は、前記第1の電子署名及び前記第2の電子署名の検証がされた場合に、前記ノード署名を生成する
付記C1に記載のノード。
(付記D1)
コンピュータが、
所定の測定装置において測定された測定データに対して当該測定装置との間における第1の共通鍵を用いて生成された認証コードと当該測定データとを含む通信データを、当該測定装置から取得し、
セキュア領域内で前記第1の共通鍵を用いて前記通信データ内の前記認証コードの認証を行い、
前記認証がされた場合に、前記測定装置に割り当てられた第1の秘密鍵と第1の公開鍵の組のうち当該第1の秘密鍵を用いて、前記通信データ内の前記測定データに対して前記セキュア領域内で第1の電子署名を生成し、
前記測定データ及び前記第1の電子署名を含めたトランザクションデータを、ブロックチェーンへの記録を行わせるために所定のノードへ送信する、
データ記録方法。
(付記E1)
所定の測定装置において測定された測定データに対して当該測定装置との間における第1の共通鍵を用いて生成された認証コードと当該測定データとを含む通信データ内の当該認証コードに対して、セキュア領域内で前記第1の共通鍵を用いて認証を行う認証処理と、
前記認証がされた場合に、前記測定装置に割り当てられた第1の秘密鍵と第1の公開鍵の組のうち当該第1の秘密鍵を用いて、前記通信データ内の前記測定データに対して前記セキュア領域内で第1の電子署名を生成する署名生成処理と、
前記測定データ及び前記第1の電子署名を含めたトランザクションデータを、ブロックチェーンへの記録を行わせるための所定のノードへ送信するために、前記セキュア領域外へ出力する出力処理と、
をコンピュータに実行させるプログラムが格納された非一時的なコンピュータ可読媒体。
(付記F1)
コンピュータが、
所定の測定装置において測定された測定データと当該測定データに対して第1の共通鍵を用いて生成された認証コードとを含む通信データに対して情報処理装置のセキュア領域において当該第1の共通鍵を用いて認証され、かつ、当該セキュア領域において前記測定データから当該測定装置に割り当てられた第1の秘密鍵と第1の公開鍵の組のうち当該第1の秘密鍵を用いて生成された第1の電子署名と、当該測定データとを含めたトランザクションデータを、当該情報処理装置から受信し、
前記第1の公開鍵を用いて前記トランザクションデータに含まれる前記第1の電子署名を検証し、
前記検証がされた場合、前記トランザクションデータに対してブロックチェーンへ記録するための電子署名であるノード署名を生成する、
データ記録方法。
(付記G1)
所定の測定装置において測定された測定データと当該測定データに対して第1の共通鍵を用いて生成された認証コードとを含む通信データに対して情報処理装置のセキュア領域において当該第1の共通鍵を用いて認証され、かつ、当該セキュア領域において前記測定データから当該測定装置に割り当てられた第1の秘密鍵と第1の公開鍵の組のうち当該第1の秘密鍵を用いて生成された第1の電子署名と、当該測定データとを含めたトランザクションデータを、当該情報処理装置から受信する処理と、
前記第1の公開鍵を用いて前記トランザクションデータに含まれる前記第1の電子署名を検証する処理と、
前記検証がされた場合、前記トランザクションデータに対してブロックチェーンへ記録するための第2の電子署名を生成する処理と、
をコンピュータに実行させるプログラムが格納された非一時的なコンピュータ可読媒体。
以上、実施形態(及び実施例)を参照して本願発明を説明したが、本願発明は上記実施形態(及び実施例)に限定されものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
1000 データ記録システム
1 測定装置
2 情報処理装置
2a THW
2b THW
2c THW
2d THW
20 セキュア領域
21 記憶部
210 鍵管理テーブル
211 第1の共通鍵
212 第1の秘密鍵
213 第2の秘密鍵
220 鍵生成部
221 認証部
221b 認証部
222 署名生成部
222a 署名生成部
222b 署名生成部
222e 署名生成部
223 取得部
224 送信部
224a 送信部
225 復号部
225b 復号部
226 公開部
227 鍵更新部
228 送信制御部
229 加工部
23 セキュアエレメント
231 制御部
232 記憶部
2321 セキュアプログラム
233 IF部
24 非セキュアエレメント
241 制御部
242 記憶部
2421 データ記録プログラム
243 IF部
244 通信部
3 ノード
3a データ管理サーバ
3b データ管理サーバ
31 記憶部
310 鍵管理テーブル
311 第1の公開鍵
312 第2の公開鍵
321 受信部
322 検証部
322a 検証部
322b 検証部
323 署名生成部
323a 署名生成部
324 記録部
4 ブロックチェーン
2000 データ記録システム
1a IoTデバイス
110 センサ
120 記憶部
121 第1の共通鍵
130 生成部
140 送信部
N ネットワーク
3000 データ記録システム
11 IoTデバイス
12 IoTデバイス
1n IoTデバイス
4000 データ記録システム
1c IoTデバイス
150 鍵更新部




Claims (17)

  1. 所定の測定装置との間における第1の共通鍵と、当該測定装置に割り当てられた第1の秘密鍵と第1の公開鍵の組のうち少なくとも当該第1の秘密鍵とを記憶するセキュア領域内の記憶部と、
    前記測定装置において測定された測定データに対して前記第1の共通鍵を用いて生成された認証コードと当該測定データとを含む通信データを、当該測定装置から取得する取得部と、
    前記セキュア領域内で前記第1の共通鍵を用いて前記通信データ内の前記認証コードの認証を行う認証部と、
    前記認証がされた場合に、前記通信データ内の前記測定データに対して前記セキュア領域内で前記第1の秘密鍵を用いて第1の電子署名を生成する署名生成部と、
    前記測定データ及び前記第1の電子署名を含めたトランザクションデータを、ブロックチェーンへの記録を行わせるために所定のノードへ送信する送信部と、
    を備える情報処理装置。
  2. 前記記憶部は、前記情報処理装置に割り当てられた第2の秘密鍵と第2の公開鍵の組のうち少なくとも当該第2の秘密鍵をさらに記憶し、
    前記署名生成部は、前記測定データ及び前記第1の電子署名に対して前記セキュア領域内で前記第2の秘密鍵を用いて第2の電子署名をさらに生成し、
    前記送信部は、前記トランザクションデータに前記第2の電子署名をさらに含めて、前記ノードへ送信する
    請求項1に記載の情報処理装置。
  3. 前記セキュア領域内で前記第1の秘密鍵と前記第1の公開鍵の組を生成し、当該第1の秘密鍵を前記測定装置の識別情報に割り当てて前記記憶部に格納し、当該第1の公開鍵と前記識別情報との組を前記セキュア領域外へ出力する鍵生成部と、
    前記出力された前記第1の公開鍵及び前記識別情報の組を外部へ公開する公開部と、
    をさらに備える請求項1又は2に記載の情報処理装置。
  4. 前記記憶部は、2以上の前記測定装置のそれぞれに対して、異なる前記第1の秘密鍵と前記第1の共通鍵との組を割り当てて記憶しており、
    前記認証部は、前記通信データの取得元の測定装置に割り当てられた前記第1の共通鍵を用いて前記認証コードの認証を行い、
    前記署名生成部は、前記取得元の測定装置に割り当てられた前記第1の秘密鍵を用いて前記第1の電子署名を生成する
    請求項1乃至3のいずれか1項に記載の情報処理装置。
  5. 前記署名生成部は、所定時間内に、第1の測定装置から第1の通信データが取得され、かつ、第2の測定装置から第2の通信データが取得された場合、並びに、前記認証部により前記第1の通信データ内の第1の認証コード及び前記第2の通信データ内の第2の認証コードの認証がされた場合、前記第1の通信データ内の第1の測定データ、及び、前記第2の通信データ内の第2の測定データに対して前記セキュア領域内で前記第1の秘密鍵を用いて前記第1の電子署名を生成し、
    前記送信部は、前記第1の測定データ、前記第2の測定データ及び前記第1の電子署名を含めた前記トランザクションデータを前記ノードへ送信する
    請求項4に記載の情報処理装置。
  6. 前記測定装置からの前記通信データの取得回数が所定回数となる度に、前記セキュア領域内で第2の共通鍵を生成し、前記測定装置に対して前記第1の共通鍵を更新させるために当該第2の共通鍵を送信し、前記記憶部に対して前記第1の共通鍵を当該第2の共通鍵に更新する鍵更新部をさらに備える
    請求項1乃至5のいずれか1項に記載の情報処理装置。
  7. 前記測定装置からの前記通信データの取得回数が所定回数となる度に、前記送信部に対して前記トランザクションデータの送信をさせる送信制御部をさらに備える
    請求項1乃至6のいずれか1項に記載の情報処理装置。
  8. 前記測定装置からの前記通信データの取得回数が所定回数となる度に、直近に取得された所定数の前記通信データ内の所定数の前記測定データに対して所定の加工を行う加工部をさらに備え、
    前記署名生成部は、前記加工された加工データに対して前記セキュア領域内で前記第1の秘密鍵を用いて前記第1の電子署名を生成する
    請求項1乃至7のいずれか1項に記載の情報処理装置。
  9. 前記通信データは、前記測定装置において前記測定データに対して前記第1の共通鍵を用いて暗号化された暗号化データと前記認証コードとを含み、
    前記情報処理装置は、
    前記認証がされた場合に、前記通信データ内の前記暗号化データに対して前記セキュア領域内で前記第1の共通鍵を用いて前記測定データへ復号する復号部をさらに備え、
    前記署名生成部は、前記復号された前記測定データに対して、前記セキュア領域内で前記第1の秘密鍵を用いて前記第1の電子署名を生成する
    請求項1乃至8のいずれか1項に記載の情報処理装置。
  10. 前記セキュア領域は、前記情報処理装置のうち前記セキュア領域外と比べてセキュアな実行環境であるTEE(Trusted Execution Environment)である
    請求項1乃至8のいずれか1項に記載の情報処理装置。
  11. 請求項1乃至5のいずれか1項に記載の情報処理装置と測定装置とを備えたデータ記録システムであって、
    前記測定装置は、
    所定の測定により測定データを取得するセンサと、
    前記第1の共通鍵を記憶する記憶部と、
    前記測定データに対して前記第1の共通鍵を用いて前記認証コードを生成する生成部と、
    前記認証コードと前記測定データを含む通信データを前記情報処理装置へ送信する送信部と、
    前記情報処理装置への前記通信データの送信回数が所定回数となる度に、第2の共通鍵を生成し、前記情報処理装置に対して前記第1の共通鍵を更新させるために当該第2の共通鍵を送信し、前記記憶部に対して前記第1の共通鍵を当該第2の共通鍵に更新する鍵更新部と、
    を備えるデータ記録システム
  12. 請求項1乃至10のいずれか1項に記載の情報処理装置とノードとを備えたデータ記録システムであって、
    前記ノードは、
    前記第1の公開鍵を記憶する公開鍵記憶部と、
    前記測定装置において測定された測定データと当該測定データに対して前記第1の共通鍵を用いて生成された前記認証コードとを含む通信データに対して前記情報処理装置のセキュア領域において当該第1の共通鍵を用いて認証され、かつ、当該セキュア領域において前記測定データから前記第1の秘密鍵を用いて生成された前記第1の電子署名と、当該測定データとを含めたトランザクションデータを、前記情報処理装置から受信する受信部と、
    前記第1の公開鍵を用いて前記トランザクションデータに含まれる前記第1の電子署名を検証する検証部と、
    前記検証がされた場合、前記トランザクションデータに対してブロックチェーンへ記録するための電子署名であるノード署名を生成する署名生成部と、
    を備えるデータ記録システム
  13. 前記公開鍵記憶部は、前記情報処理装置に割り当てられた第2の秘密鍵と第2の公開鍵の組のうち当該第2の公開鍵をさらに記憶し、
    前記トランザクションデータは、前記セキュア領域において前記測定データ及び前記第1の電子署名に対して前記第2の秘密鍵を用いて生成された第2の電子署名をさらに含み、
    前記検証部は、前記第2の公開鍵を用いて前記トランザクションデータに含まれる前記第2の電子署名をさらに検証し、
    前記署名生成部は、前記第1の電子署名及び前記第2の電子署名の検証がされた場合に、前記ノード署名を生成する
    請求項12に記載のデータ記録システム
  14. コンピュータが、
    所定の測定装置において測定された測定データに対して当該測定装置との間における第1の共通鍵を用いて生成された認証コードと当該測定データとを含む通信データを、当該測定装置から取得し、
    セキュア領域内で前記第1の共通鍵を用いて前記通信データ内の前記認証コードの認証を行い、
    前記認証がされた場合に、前記測定装置に割り当てられた第1の秘密鍵と第1の公開鍵の組のうち当該第1の秘密鍵を用いて、前記通信データ内の前記測定データに対して前記セキュア領域内で第1の電子署名を生成し、
    前記測定データ及び前記第1の電子署名を含めたトランザクションデータを、ブロックチェーンへの記録を行わせるために所定のノードへ送信する、
    データ記録方法。
  15. 所定の測定装置において測定された測定データに対して当該測定装置との間における第1の共通鍵を用いて生成された認証コードと当該測定データとを含む通信データ内の当該認証コードに対して、セキュア領域内で前記第1の共通鍵を用いて認証を行う認証処理と、
    前記認証がされた場合に、前記測定装置に割り当てられた第1の秘密鍵と第1の公開鍵の組のうち当該第1の秘密鍵を用いて、前記通信データ内の前記測定データに対して前記セキュア領域内で第1の電子署名を生成する署名生成処理と、
    前記測定データ及び前記第1の電子署名を含めたトランザクションデータを、ブロックチェーンへの記録を行わせるための所定のノードへ送信するために、前記セキュア領域外へ出力する出力処理と、
    をコンピュータに実行させるプログラム。
  16. 情報処理装置とノードとを備えたデータ記録システムにおけるデータ記録方法あって、
    前記情報処理装置が、
    所定の測定装置において測定された測定データに対して当該測定装置との間における第1の共通鍵を用いて生成された認証コードと当該測定データとを含む通信データを、当該測定装置から取得し、
    セキュア領域内で前記第1の共通鍵を用いて前記通信データ内の前記認証コードの認証を行い、
    前記認証がされた場合に、前記測定装置に割り当てられた第1の秘密鍵と第1の公開鍵の組のうち当該第1の秘密鍵を用いて、前記通信データ内の前記測定データに対して前記セキュア領域内で第1の電子署名を生成し、
    前記測定データ及び前記第1の電子署名を含めたトランザクションデータを、ブロックチェーンへの記録を行わせるために前記ノードへ送信し、
    前記ノードが、
    前記測定装置において測定された測定データと当該測定データに対して前記第1の共通鍵を用いて生成された前記認証コードとを含む通信データに対して前記情報処理装置のセキュア領域において当該第1の共通鍵を用いて認証され、かつ、当該セキュア領域において前記測定データから前記第1の秘密鍵を用いて生成された前記第1の電子署名と、当該測定データとを含めたトランザクションデータを、前記情報処理装置から受信し、
    前記第1の公開鍵を用いて前記トランザクションデータに含まれる前記第1の電子署名を検証し、
    前記検証がされた場合、前記トランザクションデータに対してブロックチェーンへ記録するための電子署名であるノード署名を生成する、
    データ記録方法。
  17. 情報処理装置とノードとを備えたデータ記録システムのためのプログラムあって、
    所定の測定装置において測定された測定データに対して当該測定装置との間における第1の共通鍵を用いて生成された認証コードと当該測定データとを含む通信データ内の当該認証コードに対して、セキュア領域内で前記第1の共通鍵を用いて認証を行う認証処理と、
    前記認証がされた場合に、前記測定装置に割り当てられた第1の秘密鍵と第1の公開鍵の組のうち当該第1の秘密鍵を用いて、前記通信データ内の前記測定データに対して前記セキュア領域内で第1の電子署名を生成する署名生成処理と、
    前記測定データ及び前記第1の電子署名を含めたトランザクションデータを、ブロックチェーンへの記録を行わせるための前記ノードへ送信するために、前記セキュア領域外へ出力する出力処理と、
    を前記情報処理装置に実行させ、
    前記測定装置において測定された測定データと当該測定データに対して前記第1の共通鍵を用いて生成された前記認証コードとを含む通信データに対して前記情報処理装置のセキュア領域において当該第1の共通鍵を用いて認証され、かつ、当該セキュア領域において前記測定データから前記第1の秘密鍵を用いて生成された前記第1の電子署名と、当該測定データとを含めたトランザクションデータを、前記情報処理装置から受信する処理と、
    前記第1の公開鍵を用いて前記トランザクションデータに含まれる前記第1の電子署名を検証する処理と、
    前記検証がされた場合、前記トランザクションデータに対してブロックチェーンへ記録するための第2の電子署名を生成する処理と、
    前記ノードに実行させるプログラム。
JP2021541810A 2019-08-26 2019-08-26 情報処理装置、データ記録システム、データ記録方法及びプログラム Active JP7302664B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/033291 WO2021038684A1 (ja) 2019-08-26 2019-08-26 情報処理装置、ノード、データ記録方法及びコンピュータ可読媒体

Publications (3)

Publication Number Publication Date
JPWO2021038684A1 JPWO2021038684A1 (ja) 2021-03-04
JPWO2021038684A5 JPWO2021038684A5 (ja) 2022-03-31
JP7302664B2 true JP7302664B2 (ja) 2023-07-04

Family

ID=74685293

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021541810A Active JP7302664B2 (ja) 2019-08-26 2019-08-26 情報処理装置、データ記録システム、データ記録方法及びプログラム

Country Status (3)

Country Link
US (1) US20220303125A1 (ja)
JP (1) JP7302664B2 (ja)
WO (1) WO2021038684A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11397536B2 (en) * 2019-04-29 2022-07-26 Dennis John Glennon Phytosanitary treatment blockchain
GB2588659A (en) * 2019-10-31 2021-05-05 Nchain Holdings Ltd Communication protocol using blockchain transactions
US20210406887A1 (en) * 2020-06-24 2021-12-30 Mastercard Asia/Pacific Pte. Ltd. Method and system for merchant acceptance of cryptocurrency via payment rails
DE102020215135A1 (de) * 2020-12-01 2022-06-02 Robert Bosch Gesellschaft mit beschränkter Haftung Intelligenter Messzähler und Verfahren zur vertrauenswürdigen Bereitstellung von Messdaten in einer dezentralen Transaktionsdatenbank

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004128894A (ja) 2002-10-02 2004-04-22 Nec Corp 電子データ送受信システム
US20080262798A1 (en) 2007-01-31 2008-10-23 Samsung Electronics Co., Ltd. Method and system for performing distributed verification with respect to measurement data in sensor network
JP2009175923A (ja) 2008-01-23 2009-08-06 Dainippon Printing Co Ltd プラットフォーム完全性検証システムおよび方法
JP2017157926A (ja) 2016-02-29 2017-09-07 富士ゼロックス株式会社 情報処理装置及びプログラム
WO2018016160A1 (ja) 2016-07-21 2018-01-25 株式会社日立製作所 署名検証システム、署名検証方法及び記憶媒体
WO2018173603A1 (ja) 2017-03-21 2018-09-27 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 更新処理方法、車載ネットワークシステムおよび電子制御ユニット
JP2019505150A (ja) 2015-12-21 2019-02-21 マスターカード インターナシヨナル インコーポレーテツド デジタル署名を用いた変形ブロックチェーンについての方法及びシステム

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005107139A1 (ja) * 2004-04-28 2005-11-10 Matsushita Electric Industrial Co., Ltd. 通信システム、共通鍵制御装置、及び一般通信装置
WO2011105350A1 (ja) * 2010-02-24 2011-09-01 ルネサスエレクトロニクス株式会社 無線通信装置及び認証処理方法
CN102769831B (zh) * 2011-05-03 2015-11-25 财团法人资讯工业策进会 基地台及其上行传输方法
KR101262844B1 (ko) * 2011-11-08 2013-05-09 한국전자통신연구원 네트워크 접근제어를 위한 원격검침데이터 중계장치 및 방법
US9530008B2 (en) * 2013-05-29 2016-12-27 Infineon Technologies Ag System and method for a processing device with a priority interrupt
KR102046326B1 (ko) * 2015-09-02 2019-11-19 엘에스산전 주식회사 데이터 처리 장치
CN105515768B (zh) * 2016-01-08 2017-07-21 腾讯科技(深圳)有限公司 一种更新密钥的方法、装置和***
CN109906443B (zh) * 2016-11-03 2023-10-13 维萨国际服务协会 用于形成通用记录的***和方法
US10977384B2 (en) * 2017-11-16 2021-04-13 Microsoft Technoogy Licensing, LLC Hardware protection for differential privacy
EP3565179B1 (en) * 2018-04-30 2022-10-19 Merck Patent GmbH Composite security marking and methods and apparatuses for providing and reading same

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004128894A (ja) 2002-10-02 2004-04-22 Nec Corp 電子データ送受信システム
US20080262798A1 (en) 2007-01-31 2008-10-23 Samsung Electronics Co., Ltd. Method and system for performing distributed verification with respect to measurement data in sensor network
JP2009175923A (ja) 2008-01-23 2009-08-06 Dainippon Printing Co Ltd プラットフォーム完全性検証システムおよび方法
JP2019505150A (ja) 2015-12-21 2019-02-21 マスターカード インターナシヨナル インコーポレーテツド デジタル署名を用いた変形ブロックチェーンについての方法及びシステム
JP2017157926A (ja) 2016-02-29 2017-09-07 富士ゼロックス株式会社 情報処理装置及びプログラム
WO2018016160A1 (ja) 2016-07-21 2018-01-25 株式会社日立製作所 署名検証システム、署名検証方法及び記憶媒体
WO2018173603A1 (ja) 2017-03-21 2018-09-27 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 更新処理方法、車載ネットワークシステムおよび電子制御ユニット

Also Published As

Publication number Publication date
US20220303125A1 (en) 2022-09-22
WO2021038684A1 (ja) 2021-03-04
JPWO2021038684A1 (ja) 2021-03-04

Similar Documents

Publication Publication Date Title
JP7302664B2 (ja) 情報処理装置、データ記録システム、データ記録方法及びプログラム
US10075820B2 (en) Secure broadcast beacon communications
JP7416775B2 (ja) 周辺デバイス
US11038694B1 (en) Devices, methods, and systems for cryptographic authentication and provenance of physical assets
US11032278B2 (en) System, method and apparatus for generating device identifier
US10116645B1 (en) Controlling use of encryption keys
CN110050437B (zh) 分布式证书注册的装置和方法
CN110460439A (zh) 信息传输方法、装置、客户端、服务端及存储介质
KR20190001546A (ko) 네트워크 상의 장치에 대한 정보를 추적하기 위한 블록체인의 사용
CN109997119B (zh) 安全元件安装和设置
US20160006570A1 (en) Generating a key derived from a cryptographic key using a physically unclonable function
US10003467B1 (en) Controlling digital certificate use
EP4258593A1 (en) Ota update method and apparatus
JP2018523369A (ja) ハッシュ木ベースのデータ署名を処理するための方法及び機器
JP6693577B2 (ja) 暗号鍵配信システム、鍵配信ecu、鍵配信プログラム、及び暗号鍵配信方法
CN113051590A (zh) 一种数据处理方法和相关设备
US20200044838A1 (en) Data encryption method and system using device authentication key
CN114679340B (zh) 一种文件共享方法、***、设备及可读存储介质
US20190354610A1 (en) Storage device and block chain enabled communication
CN112088376A (zh) 一种文件存储方法、装置及存储介质
WO2018213875A1 (en) Asymmetric cryptography and authentication
JP6939313B2 (ja) 分散認証システム
CN110622127A (zh) 用于以计算机支持的方式处理随机位模式的方法和设备
CN114205086A (zh) 基于区块链的数字证书处理方法以及装置
WO2019032580A1 (en) APPARATUS AND METHOD FOR ENCAPSULATION OF PRIVATE KEYS OF PROFILE CERTIFICATE OR OTHER DATA

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220114

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220114

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230314

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230512

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: 20230523

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230605

R151 Written notification of patent or utility model registration

Ref document number: 7302664

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151