JP7253809B2 - 情報処理システム、情報処理方法、IoTデバイス、情報処理装置およびその制御プログラム - Google Patents

情報処理システム、情報処理方法、IoTデバイス、情報処理装置およびその制御プログラム Download PDF

Info

Publication number
JP7253809B2
JP7253809B2 JP2020093685A JP2020093685A JP7253809B2 JP 7253809 B2 JP7253809 B2 JP 7253809B2 JP 2020093685 A JP2020093685 A JP 2020093685A JP 2020093685 A JP2020093685 A JP 2020093685A JP 7253809 B2 JP7253809 B2 JP 7253809B2
Authority
JP
Japan
Prior art keywords
iot device
data
blockchain
information processing
management server
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
JP2020093685A
Other languages
English (en)
Other versions
JP2021190808A (ja
Inventor
和弘 東
真也 岡崎
Original Assignee
株式会社ユビキタスAi
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 株式会社ユビキタスAi filed Critical 株式会社ユビキタスAi
Priority to JP2020093685A priority Critical patent/JP7253809B2/ja
Publication of JP2021190808A publication Critical patent/JP2021190808A/ja
Application granted granted Critical
Publication of JP7253809B2 publication Critical patent/JP7253809B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)

Description

特許法第30条第2項適用 ウェブサイトの掲載日 令和元年11月13日 ウェブサイトのアドレス https://www.ubiquitous-ai.com/news/2019/003035.html
特許法第30条第2項適用 カタログ発行日 令和元年11月20日 発行者名 株式会社ユビキタスAIコーポレーション 刊行物名 カタログ
特許法第30条第2項適用 展示日 令和元年11月20日から令和元年11月22日 展示会名 Embedded Technology 2019/組込み総合技術展 IoT Technology 2019/IoT総合技術展
特許法第30条第2項適用 開催日 令和2年2月5日から令和2年2月6日 集会名 <組込みxIoT>総合技術展 ET・IoT Technology NAGOYA 2020
特許法第30条第2項適用 開催日 令和元年12月6日 集会名 Arm Tech Symposia 2019
情報処理システム、情報処理方法、IoTデバイス、情報処理装置およびその制御プログラムに関する。
上記技術分野において、特許文献1には、IoTシステムに含まれるIoTデバイスとセンタサーバ間の相互認証を、通信装置としての管理サーバやルート認証局などの仲介により行う技術が開示されている。また、特許文献2には、クライアント端末で実行されるブロックチェーンアプリが分散ファイル共有アプリを実行することにより、ユーザ/グループ認証や、コンテンツの一意性の保証、サービスリポジトリ、ファイルのデータ/アクセスログ管理、ファイルのアクセス制御等の機能を実行する技術が開示されている。
特開2018-082353号公報 特開2018-081464号公報
しかしながら、上記文献に記載の技術では、IoTデバイスのセキュアな管理とその保存データのセキュアな管理とを効率的に組み合わせることができなかった。
本発明の目的は、上述の課題を解決する技術を提供することにある。
上記目的を達成するため、本発明に係る情報処理システムは、
認証されたIoTデバイスからのデータを保存するための情報処理システムであって、
IoTデバイスと、
前記IoTデバイスから送信された、前記IoTデバイスに固有の第1識別子を含む要求に応答して、前記固有の第1識別子が登録済みであると確認した場合に、前記IoTデバイスの信頼性を証明する第1クライアント証明書を前記IoTデバイスに配布するデバイス管理部と、
前記IoTデバイスから送信された前記第1クライアント証明書に基づいて前記IoTデバイスを認証し、前記IoTデバイスから送信されたデータをブロックチェーン化しながら分散保存するブロックチェーン管理部と、
を備え
前記ブロックチェーン管理部は、前記データの保存を依頼して認証された前記IoTデバイスの一覧であるデバイスリストを依頼順にブロックチェーン化しながら分散保存する。
また、上記目的を達成するため、本発明に係る情報処理システムは、
認証されたIoTデバイスからのデータを保存するための情報処理システムであって、
IoTデバイスと、
前記IoTデバイスから送信された、前記IoTデバイスに固有の第1識別子を含む要求に応答して、前記固有の第1識別子が登録済みであると確認した場合に、前記IoTデバイスの信頼性を証明する第1クライアント証明書を前記IoTデバイスに配布するデバイス管理部と、
前記IoTデバイスから送信された前記第1クライアント証明書に基づいて前記IoTデバイスを認証し、前記IoTデバイスから送信されたデータをブロックチェーン化しながら分散保存するブロックチェーン管理部と、
を備え、
前記固有の第1識別子は、前記IoTデバイスを識別するためのデバイス識別情報と、前記ブロックチェーン管理部を識別するためのブロックチェーン管理部識別情報とを含む。
上記目的を達成するため、本発明に係る情報処理方法は、
認証されたIoTデバイスからのデータを保存するための情報処理方法であって、
デバイス管理部が、IoTデバイスから送信された、前記IoTデバイスに固有の第1識別子を含む要求に応答して、前記固有の第1識別子が登録済みであると確認した場合に、前記IoTデバイスの信頼性を証明する第1クライアント証明書を前記IoTデバイスに配布するデバイス管理ステップと、
ブロックチェーン管理部が、前記IoTデバイスから送信された前記第1クライアント証明書に基づいて前記IoTデバイスを認証し、前記IoTデバイスから送信されたデータをブロックチェーン化しながら分散保存するブロックチェーン管理ステップと、
を含み、
前記ブロックチェーン管理ステップにおいては、前記データの保存を依頼して認証された前記IoTデバイスの一覧であるデバイスリストを依頼順にブロックチェーン化しながら分散保存する
上記目的を達成するため、本発明に係る情報処理装置は、
IoTデバイスにおいて、サーバとの通信を司る情報処理部としての情報処理装置であって、
IoTデバイスを管理するデバイス管理サーバに対して前記IoTデバイスに固有の識別子を含む要求を送信して、前記デバイス管理サーバにおいて前記固有の識別子が登録済みであると確認された場合に前記デバイス管理サーバから配布された前記IoTデバイスの信頼性を証明するクライアント証明書を取得する証明書取得部と、
前記クライアント証明書に基づいてブロックチェーン管理サーバの認証を受け、前記ブロックチェーン管理サーバにデータを送信してブロックチェーン化しながら分散保存させる保存指示部と、
を備え
前記固有の識別子は、前記IoTデバイスを識別するためのデバイス識別情報と、前記ブロックチェーン管理サーバにおいて前記データをブロックチェーン化しながら分散保存するブロックチェーン管理部を識別するためのブロックチェーン管理部識別情報とを含み、
前記クライアント証明書は、前記ブロックチェーン管理部識別情報を含む
上記目的を達成するため、本発明に係る情報処理装置の制御プログラムは、
IoTデバイスにおいて、サーバとの通信を司る情報処理部としての情報処理装置の制御プログラムであって、
IoTデバイスを管理するデバイス管理サーバに対して前記IoTデバイスに固有の識別子を含む要求を送信して、前記デバイス管理サーバにおいて前記固有の識別子が登録済みであると確認された場合に前記デバイス管理サーバから配布された前記IoTデバイスの信頼性を証明するクライアント証明書を取得する証明書取得ステップと、
前記クライアント証明書に基づいてブロックチェーン管理サーバの認証を受け、前記ブロックチェーン管理サーバにデータを送信してブロックチェーン化しながら分散保存させるデータ保存指示ステップと、
をコンピュータに実行させる情報処理装置の制御プログラムであって、
前記固有の識別子は、前記IoTデバイスを識別するためのデバイス識別情報と、前記ブロックチェーン管理サーバにおいて前記データをブロックチェーン化しながら分散保存するブロックチェーン管理部を識別するためのブロックチェーン管理部識別情報とを含み、
前記クライアント証明書は、前記ブロックチェーン管理部識別情報を含む
本発明によれば、IoTデバイスのセキュアな管理とその保存データのセキュアな管理とを効率的に組み合わせることができる。
第1実施形態に係る情報処理システムの構成を示すブロック図である。 第2実施形態に係る情報処理システムの動作概要を示すブロック図である。 第2実施形態に係る情報処理システムの構成を示すブロック図である。 第2実施形態に係るデバイス管理システムの動作手順(デバイス認証、使用中止)の概要を示すシーケンス図である。 第2実施形態に係るデバイス管理システムの動作手順(データ保存)の概要を示すシーケンス図である。 第2実施形態に係るデバイス管理システムの動作手順(データ閲覧)の概要を示すシーケンス図である。 第2実施形態に係る情報処理部を含むIoTデバイスの機能構成を示すブロック図である。 第2実施形態に係るアクティベーション要求手順を示すシーケンス図である。 第2実施形態に係るアクティベーション要求コマンドのパラメータの構成を示す図である。 第2実施形態に係るアクティベーション要求コマンドへの応答データの構成例を示す図である。 第2実施形態に係るポーリング要求コマンドへの応答データの構成例を示す図である。 第2実施形態に係るSSLまたはTLSによるデータ通信手順を示すシーケンス図である。 第2実施形態に係るSSLまたはTLSによるデータ通信におけるサーバ証明書の構成を示す図である。 第2実施形態に係るブロックチェーン管理サーバにおけるブロックチェーンの状態を示す図である。 第2実施形態に係る情報処理部を含むIoTデバイスのハードウェア構成を示すブロック図である。 第2実施形態に係る情報処理部の処理手順を示すフローチャートである。 第3実施形態に係るデバイス管理システムの動作手順(データ保存)の概要を示すシーケンス図である。 第3実施形態に係る情報処理部を含むIoTデバイスの機能構成を示すブロック図である。 第4実施形態に係るブロックチェーン管理サーバにおけるブロックチェーンの状態を示す図である。 第5実施形態に係るブロックチェーン管理サーバにおけるブロックチェーンの状態を示す図である。 第6実施形態に係る情報処理システムの動作概要を示すブロック図である。
以下に、図面を参照して、本発明の実施の形態について例示的に詳しく説明する。ただし、以下の実施の形態に記載されている構成要素は単なる例示であり、本発明の技術範囲をそれらのみに限定する趣旨のものではない。
[第1実施形態]
第1実施形態としての情報処理システム100について、図1を用いて説明する。情報処理システム100は、認証されたIoTデバイス101からのデータを保存するためのシステムである。
図1に示すように、情報処理システム100は、IoTデバイス101と、デバイス管理部102と、ブロックチェーン管理部103と、を含む。デバイス管理部102は、IoTデバイス101から送信された、IoTデバイス101に固有の第1識別子111を含む要求に応答して、IoTデバイス101の信頼性を証明するクライアント証明書114を配布する。ブロックチェーン管理部103は、IoTデバイス101から送信されたクライアント証明書114に基づいてIoTデバイス101を認証し、IoTデバイス101から送信されたデータをブロックチェーン化しながら分散保存する。
本実施形態によれば、IoTデバイスのセキュアな管理とその保存データのセキュアな管理とを効率的に組み合わせることができる。すなわち、IoTデバイスに固有の識別子の認証によるクライアント証明書の配布と、配布されたクライアント証明書を用いたデータのブロックチェーン化しながらの分散保存とが効率的に組み合わされる。
[第2実施形態]
次に、本発明の第2実施形態に係る情報処理システム200について説明する。本実施形態に係る情報処理システム200において、IoTデバイスはデバイス管理サーバによって識別情報が認証されると、クライアント証明書と秘密鍵と公開鍵とを配布される。なお、クライアント証明書に公開鍵が含まれて配布される場合もある。IoTデバイスは、データを保存したい場合、配布されたクライアント証明書と公開鍵とをブロックチェーン管理サーバに送信して認証されると、サーバ証明書を配布される。IoTデバイスは、保存したいデータからハッシュ値を生成し、ハッシュ値もしくはデータとハッシュ値とを暗号鍵で暗号化してブロックチェーン管理サーバに送付して保存を指示する。ブロックチェーン管理サーバは、IoTデバイスから送付された暗号化データを復号鍵で復号して、復号されたデータをブロックチェーンで管理して保存する。
一方、ブロックチェーン管理サーバに保存されたデータを閲覧したいユーザは、ユーザ端末がデバイス管理サーバによって認証されると、ブロックチェーンで管理して保存されたデータを読み出して閲覧する。
《情報処理システム》
以下、図2~図4Cを参照して、本実施形態の情報処理システムの構成および動作を説明する。
(動作概要)
図2は、本実施形態に係る情報処理システム200の動作概要を示すブロック図である。
AIの進化やIoTデバイスの普及に伴い、IoTデバイスが生成するデータを事業に活かそうという動きが活発になっている。一方で、事業活動で利用されるデータには高い信頼性が求められ、IoTデバイスや、IoTデバイスが生成したデータの正当性が、これまで以上に重要になっている。
情報処理システム200において、IoTデバイス210は、デバイス管理サーバ220によりクライアントとして認証を受けて、クライアント証明書と、秘密鍵および公開鍵221とを発行してもらう。ここで、秘密鍵および公開鍵221は、SSL/TLS通信するための共通鍵を交換するために使用される。そして、IoTデバイス210は、デバイス管理サーバ220の認証結果であるクライアント証明書を用いて、ブロックチェーン機能を有するブロックチェーン管理サーバ230にブロックチェーン232で管理するハッシュ値の管理を依頼する。保存するデータのハッシュ値もしくはデータとそのハッシュ値211は、ブロックチェーン管理サーバ230と交換された暗号鍵(本実施形態では共通鍵)で暗号化され、ブロックチェーン管理サーバ230においては、復号鍵(本実施形態では共通鍵)により復号される。なお、IoTデバイス210としては、エネルギーシステム、車載機器、産業機器、ヘルスケア機器、オフィス機器、スマート家電、電子錠などのシステムにおいてデータ収集に用いられるデバイスがある。
このように、情報処理システム200において、デバイス管理サーバ220は、IoT機器のライフサイクルをマネジメントするセキュアIoTサービス開発ソリューションを提供している。また、ブロックチェーン管理サーバ230は、ブロックチェーン232の管理機能を提供する。
すなわち、本実施形態では、IoTデバイス210は、デバイス管理サーバ220から認証を受けてブロックチェーン管理サーバ230のブロックチェーン232を更新するための組込み制御部の組込みを行う。この制御部が、IoTデバイス210とブロックチェーン管理サーバ230とを連携させる。そして、デバイス管理サーバ220が提供するIoTデバイス210のライフサクルマネジメント機能と、ブロックチェーン管理サーバ230のブロックチェーン232を活用したデータ改ざん防止機能とにより、IoTデバイス210や生成された情報を管理する際のセキュリティをより強固にする。また、開発予算を抑えながら、サービスで扱うデータの正当性向上を実現する。さらに、より信頼性の高いIoTサービスの運営を実現する。なお、本実施形態の情報処理システム200は、エネルギーシステム、車載機器、産業機器、ヘルスケア機器、オフィス機器、スマート家電、電子錠などのシステムでのデータの改ざん防止ソリューションにおいても、採用できる。
(構成)
図3は、本実施形態に係る情報処理システム200の構成を示すブロック図である。
情報処理システム200は、IoTデバイス210と、デバイス管理サーバ220と、ブロックチェーン管理サーバ230と、ユーザ端末240と、デバイス製造者250と、を含む。
IoTデバイス210は、デバイス管理サーバ220に管理され、ブロックチェーン管理サーバ230にブロックチェーンで管理されるハッシュ値を送信するデバイスである。IoTデバイス210は、FOTA(Firmware Over The Air),TrustZone,TPM(Trusted Platform Module)などの機能を有してよい。デバイス管理サーバ220は、デバイス管理(Device management)と、証明書管理および鍵管理(Certification/Key management)との機能を有して、IoTデバイス210を管理するサーバである。ブロックチェーン管理サーバ230は、デバイス管理サーバ220がIoTデバイス210に配布した証明書および鍵を認証し、IoTデバイス210からのブロックチェーンで管理されるハッシュ値を、ブロックチェーン機能を用いて保存するサーバである。ブロックチェーン管理サーバ230はIoTデバイス210から送信されるデータを保存するStorage serversの機能を持ってもよい。ユーザ端末240は、デバイス管理サーバ220に管理され、ブロックチェーン管理サーバ230に保存されたデータをそのまま、あるいは解析してユーザが閲覧するための端末である。デバイス製造者250は、IoTデバイス210を製造する製造者であり、例えばIoTデバイス210に固有の識別子などを含むデバイス情報を付して、Device Lifecycle Managementを実現させる。
(動作シーケンス)
以下、図4A乃至図4Cにしたがって、本実施形態に係る情報処理システム200の動作手順の概要を示す。
(デバイス認証動作と使用中止動作)
図4Aは、実施形態に係る情報処理システム200の動作手順(デバイス認証、使用中止)の概要を示すシーケンス図である。
デバイス管理サーバ220は、ステップS401において、認証局としてブロックチェーン管理サーバ230に登録する。一方、IoTデバイス210は、ステップS405において、デバイスに固有の識別子となり得るデバイス情報を記憶する。また、IoTデバイス210は、ステップS407において、デバイスに固有の識別子となり得るサービス情報を記憶する。
その後、ステップS410において、デバイスを認証するためのデバイスアクティベーション処理として、IoTデバイス210からデバイス管理サーバ220に公開鍵と、秘密鍵と、IoTデバイス210が正当であること(信頼性)を証明するクライアント証明書とを要求して、取得して保持する。ここで、ステップS410の処理が要求部の要求ステップと、保持部の保持ステップとに相当する。
デバイス認証のデバイスアクティベーション処理(S410)において、IoTデバイス210は、ステップS411において、デバイスに固有の識別子を添付した要求メッセージにより、公開鍵と秘密鍵とクライアント証明書とを要求する。なお、デバイスに固有の識別子には、デバイス情報やサービス情報が含まれてよい。デバイス管理サーバ220は、ステップS412において、デバイスに固有の識別子がデバイス管理サーバ220に登録済みかを確認する。そして、デバイス登録が確認できれば、デバイス管理サーバ220は、ステップS413において、サービス事業者の情報を含むクライアント証明書を生成する。デバイス管理サーバ220は、ステップS414において、IoTデバイス210からの要求に応答して公開鍵と秘密鍵とクライアント証明書とをIoTデバイス210に送信する。IoTデバイス210は、ステップS415において、受信した公開鍵と秘密鍵とクライアント証明書とを機密に記憶して保持する。
また、デバイス管理サーバ220は、ステップS416において、一意の識別子(例えば、UUID:Universally Unique Identifier)を生成する。そして、デバイス管理サーバ220は、ステップS417において、一意の識別子(UUID)をIoTデバイス210に送信する。IoTデバイス210は、ステップS418において、受信した一意の識別子(UUID)を機密に記憶して保持する。なお、ステップS416の一意の識別子(UUID)の生成をステップS414の前に実行して、ステップS417の一意の識別子(UUID)の送信はステップS414に含ませてもよい。また、公開鍵および秘密鍵と、クライアント証明書とを別々にデバイス管理サーバ220からIoTデバイス210に送信してもよい。
次に、ステップS430において、デバイスの使用を中止または停止するためのデバイスデアクティベーション処理として、デバイス管理サーバ220の指示に従い、IoTデバイス210から公開鍵と秘密鍵とクライアント証明書とを消去する処理の手順を説明する。
デバイスの使用を中止または停止するためのデバイスデアクティベーション処理(S430)において、IoTデバイス210は、ステップS431において、デバイス管理サーバ220にデバイス認証(S410)で取得した一意の識別子(UUID)を用いてポーリングする。デバイス管理サーバ220は、ステップS433において、IoTデバイス210が使用中止になる場合には、公開鍵と秘密鍵とクライアント証明書との削除指示をIoTデバイス210に送信する。IoTデバイス210は、ステップS434において、機密に保持された公開鍵と秘密鍵とクライアント証明書とをIoTデバイス210から消去する。
なお、IoTデバイス210の使用中止は、デバイス管理サーバ220の判断であっても、ステップS432に示すようにブロックチェーン管理サーバ230から通知されても、IoTデバイス210からの要求であってもよい。さらに、他の条件に基づいてもよく特に制限はない。例えば、デバイス管理サーバ220との1回のセッション毎、あるいは、所定セッションごとに消去して更新するように構成してもよい。また、所定時間経過ごとに、消去して更新するように構成してもよい。
(データ保存動作)
図4Bは、本実施形態に係る情報処理システム200の動作手順(データ保存)の概要を示すシーケンス図である。
ステップS220のデータ保存では、例えばSSL(Secure Sockets Layer)方式やTLS(Transport Layer Security)方式によるデータ通信を含むサービス処理として、IoTデバイス210からブロックチェーン管理サーバ230にサービスを要求して、ブロックチェーン管理のサービスを受ける。なお、ステップ420の処理が暗号化通信部の暗号化通信ステップに相当する。
データ通信を含むサービス処理(S420)において、IoTデバイス210は、ステップS421において、デバイス認証(S410)で取得した公開鍵とクライアント証明書を添付してブロックチェーン管理サーバ230にサービス(アクセス)を要求する。ブロックチェーン管理サーバ230は、ステップS422において、公開鍵とクライアント証明書とに基づいてIoTデバイス210が正当なデバイスか否かを認証する。正当なデバイスと認証されたならば、ブロックチェーン管理サーバ230は、ステップS423において、サービス(アクセス)許可として、ブロックチェーン管理サーバ230が正当なサービス提供者であることを証明するサーバ証明書をIoTデバイス210に送信する。IoTデバイス210は、ステップS424において、受信したサーバ証明書によりブロックチェーン管理サーバ230が正当なサービス提供者であること認証する。そして、IoTデバイス210とブロックチェーン管理サーバ230は、ステップS425において、データの暗号鍵および復号鍵として使用される共通鍵を交換する。かかる共通鍵は、デバイス管理サーバ220から配布された秘密鍵および公開鍵を使用して生成される。
IoTデバイス210がデータの保存を必要とする場合、IoTデバイス210は、ステップS426において、保存されるデータからハッシュ値を生成して保持する。そして、IoTデバイス210は、ステップS427において、ハッシュ値もしくは保存データとハッシュ値とを暗号鍵で暗号化して、暗号化データをブロックチェーン管理サーバ230に送信する。なお、IoTデバイス210とブロックチェーン管理サーバ230との間の通信は、REST(REpresentational State Transfer)プロトコルに従った通信が望ましい。しかしながら、限定されるものではない。ブロックチェーン管理サーバ230は、ステップS428において、受信した暗号化データを復号鍵で復号する。そして、ブロックチェーン管理サーバ230は、ステップS429において、ハッシュ値もしくは復号データとハッシュ値とを保存する。なお、ここでは、復号データを保存したが、IoTデバイス210から送られた暗号化データをそのまま保存し、保存された暗号化データを閲覧する閲覧先に復号鍵を送って、暗号化データを復号する構成にしてもよい。また、IoTデバイス210はブロックチェーン管理サーバ230にハッシュ値を送信し、対応するデータをデータ保存用サーバなどに送信してもよい。この場合のデータ保存用サーバの識別情報は、ブロックチェーン管理サーバ230から配布されても予めIoTデバイス210に保持させてもよい。
(データ閲覧動作)
図4Cは、本実施形態に係る情報処理システム200の動作手順(データ閲覧)の概要を示すシーケンス図である。なお、図4CにおけるステップS445、S447およびS450は、デバイス(IoTデバイス)が端末(ユーザ端末)に置き換えられて、図4AステップS405,S407およびS410と類似の手順であるので、説明を省略する。なお、データ閲覧を実行する構成要素をデータ提供部とも称する。
ステップ460は、ブロックチェーン管理サーバ230からユーザ端末240への保存データの公開処理である。保存データの公開処理(S460)において、ユーザ端末240が保存データの閲覧を求める場合、まず、ユーザ端末240は、ステップS461において、クライアント証明書と公開鍵とをブロックチェーン管理サーバ230に送信する。ブロックチェーン管理サーバ230は、ステップS462において、ユーザ端末を認証すると、アクセス許可をサーバ証明書と共にユーザ端末240に送信する。ユーザ端末240は、ステップS464において、サーバを認証する。そして、ユーザ端末240とブロックチェーン管理サーバとは、ステップS465において、データの暗号鍵および復号鍵として使用する共通鍵を交換する。ここで、共通鍵はデバイス管理サーバ220から配布された秘密鍵および公開鍵を使用して交換される。ユーザ端末240は、ステップS466において、データ閲覧要請をブロックチェーン管理サーバ230に送る。
ブロックチェーン管理サーバ230は、ステップS467において、保存データを暗号鍵で暗号化して、ユーザ端末240に送る。ユーザ端末240は、ステップS468において、受信した暗号化データを復号鍵で復号して、ユーザに閲覧させる。
《IoTデバイスの機能構成》
図5は、本実施形態に係る情報処理部501を含むIoTデバイス210の機能構成を示すブロック図である。なお、図5において、図2乃至図4Cと同様の構成要素には同じ参照番号を付して、重複する説明を省略する。
IoTデバイス210は、本実施形態の情報処理部501を構成するSE(Secure Element)511と、SE制御部512と、DE(Device Element)制御部513と、通信制御部514と、を備える。IoTデバイス210は、DE502を備える。
通信制御部514は、ネットワークを介して、デバイス管理サーバ220やブロックチェーン管理サーバ230との通信を制御する。なお、通信制御部514は、SE制御部512およびDE制御部513の通信制御に兼用されてもよいし、それぞれ別個に設けられてもよい。
SE制御部512は、要求メッセージ送信部522と、鍵および証明書受信部523と、鍵および証明書保持部524と、鍵および証明書消去部525と、を有する。要求メッセージ送信部522は、デバイス管理サーバ220への要求メッセージ(例えば、Activate reqやPolling reqなど)を送信する。鍵および証明書受信部523は、デバイス管理サーバ220から要求メッセージに応答して返信された公開鍵と秘密鍵とクライアント証明書とを受信する。鍵および証明書保持部524は、受信された公開鍵と秘密鍵とクライアント証明書とをSE511に機密に保持する。鍵および証明書消去部525は、IoTデバイス210を使用しなくなった場合に、あるいは、使用を避ける場合、あるいは、定期的にデバイス認証を更新する場合などに、公開鍵と秘密鍵とクライアント証明書とを消去する。SE制御部512は、証明書取得部を構成する。
DE制御部513は、証明書および鍵送信部531と、サーバ証明書受信部532と、ハッシュ値算出部533と、SSL/TLS処理部535と、を有する。証明書および鍵送信部531は、ブロックチェーンを管理するブロックチェーン管理サーバ230にデバイス管理サーバ220から配布されたクライアント証明書と公開鍵とを送信する。サーバ証明書受信部532は、ブロックチェーン管理サーバ230においてクライアント証明書によりIoTデバイス210が認証されたことの通知として、サーバ証明書を受信する。ハッシュ値算出部533は、ハッシュ値保持部534を有し、DE502からブロックチェーン管理サーバ230に送るデータのハッシュ値を生成し、それをハッシュ値保持部534に一時保持する。ハッシュ値保持部534は、最新のハッシュ値に更新される。SSL/TLS処理部535は、ブロックチェーン管理サーバ230と交換した、データの暗号鍵を用いてデータおよびハッシュ値とを暗号化し、SSL方式やTLS方式によりブロックチェーン管理サーバ230との暗号化データの通信を実行する。DE制御部513は、データ保存指示部を構成する。ここで、データの暗号鍵となる共通鍵はデバイス管理サーバ220から配布された秘密鍵および公開鍵を使用して交換される。
(アクティベーション要求:図中では、“Activate req”で示す)
図6Aは、本実施形態に係るアクティベーション要求手順を示すシーケンス図である。
図6Aにおいて、IoTデバイス210は、SE(Secure Element)511とSE制御部512とを含む情報処理部501(本実施形態の情報処理装置に相当)と、DE(Device Element)502と、を備える。なお、図6Aでは、図6Aの処理には登場しないDE制御部513を図示していない。ここで、SE511は、公開鍵、秘密鍵、クライアント証明書、あるいは、一意の識別子(UUID)を機密に保持する保持部を構成する。また、SE制御部512は、デバイス管理サーバ220との通信による情報取得およびSE511に対する情報の機密保持を制御する。また、DE502は、IoTデバイス210に固有の処理を行う部分であり、例えばIoTデバイス210がセンサならばセンサ部分、IoTデバイス210がスマートフォンならばスマートフォンとしての機能部分などを表している。なお、この機能部の分け方は、本実施形態においてIoTデバイス210を説明する一例であって別の機能部に分けることもできる。
情報処理部501のSE制御部512は、ステップS601において、デバイス管理サーバ220にアクティベーション要求(Activate req)を送信する。アクティベーション要求のBodyにはパラメータ、例えば、JSONとして、デバイスに固有の識別子が設定される。デバイスに固有の識別子としては、デバイス情報(デバイス識別情報)やサービス情報(ブロックチェーン管理サーバ識別情報:ブロックチェーン管理部識別情報とも称す)が含まれてよい。
ステップS603において、デバイス管理サーバ220からSE制御部512に、アクティベーション要求の応答として、例えばStatus 200(HTTP Status CodeのOK)が返され、そのBodyにはバイナリデータが含まれている。このバイナリデータは、ステップS605において、SE制御部512からSE511に送信され、ステップS607においてSE511からの機密保持完了を示すSEレスポンスを受けると、最初のバイナリデータがSE511内に保持されたことが分かる。
以降、ステップS610において、SE制御部512は、SE511からのSEレスポンスを次のバイナリデータを要求する再開要求(Resume req)としてデバイス管理サーバ220に送信し、次のバイナリデータを受信し、SE511に機密に保持する処理を繰り返す。このバイナリデータに、公開鍵と秘密鍵とクライアント証明書、および/または、一意の識別子(UUID)のデータが含まれている。
最後に、SE制御部512は、ステップS621において、デバイス管理サーバ220に対し再開要求(Resume req)を送信する。しかし、所望データの送信が完了したデバイス管理サーバ220からは、ステップS623において、例えばStatus 204(HTTP Status CodeのNo Content)を返し、アクティベーション要求の手順が終了する。
(アクティベーション要求コマンドのパラメータ)
図6Bは、本実施形態に係るアクティベーション要求コマンドのパラメータ600の構成を示す図である。
図6Bには、JSON(JavaScript(登録商標) Object Notation)の例を示すが、本実施形態と同様の動作を実現する他の異なるパラメータであってもよい。
アクティベーション要求コマンドのパラメータ600は、サービス情報(ブロックチェーン管理サーバ識別情報)630とデバイス情報(デバイス識別情報)640とを含む。サービス情報630は、サービスプロバイダーID(SP)と、サービスID(sv)と、サービスバージョン(version)などを含む。デバイス識別情報640は、IoTデバイスの造者名(manufacturer)と、IoTデバイスのモデル名(model)と、IoTデバイスのシリアル番号(serial)と、IoTデバイスのソフトウェアバージョン(sw_ver)と、IoTデバイスのハードウェアバージョン(hw_ver)と、を含む。なお、サービス情報630とデバイス識別情報640は、上記例に限定されるものではない。また、サービス固有拡張データ(extended object)は、サービスについての拡張データである。また、図6Aのサービス情報630とデバイス識別情報640とのそれぞれから少なくとも1つのパラメータが組み合わされるのが望ましい。
(アクティベーション要求コマンドへの応答データ)
図6Cは、本実施形態に係るアクティベーション要求コマンドへの応答データ601の構成例を示す図である。
応答データ601は、クライアント証明書650と、公開鍵および秘密鍵660と、一意の識別子(UUID)670と、を含む。クライアント証明書650には、発行先としてサービス事業者など(ブロックチェーン管理サーバ識別情報)が含まれ、発行者として証明書の発行機関(デバイス管理サーバ識別情報)が含まれ、有効期限が含まれる。なお、これら応答データ601のSE511への機密な保持は、クライアント証明書650と、公開鍵および秘密鍵660とが関連付けられていれば、共通の記憶領域に保持されても異なる記憶領域に保持されてもよい。
なお、クライアント証明書680に示すように、公開鍵がクライアント証明書680に含まれて配布されてもよい。
(ポーリング要求コマンドへの応答データ)
図6Dは、本実施形態に係るポーリング要求コマンドへの応答データ601の構成例を示す図である。
ポーリング要求コマンドへの応答データ601は、本実施形態においては、デバイス管理サーバ220からの公開鍵と秘密鍵とクライアント証明書との削除指示が含まれるが、これに限定されるものではない。
(データ保存要求)
図7Aは、本実施形態に係るSSLまたはTLSによるデータ通信手順を示すシーケンス図である。
図7Aにおいては、IoTデバイス210に、ブロックチェーン管理サーバ230とのSSLまたはTLSによるデータ通信を処理するDE制御部513が含まれる。なお、図7Aには、SE制御部512を図示していないが情報処理部501に含まれている。
DE制御部513は、ステップS701において、SE511から公開鍵とクライアント証明書とを読み出す。このSE511からの公開鍵とクライアント証明書との読み出しは、SE制御部512を経由して行われてよい。DE制御部513は、ステップS703において、ブロックチェーン管理サーバ230へのアクセス(データ保存)要求を、公開鍵およびクライアント証明書と共に送信する。そして、アクセス(データ保存ス)要求の応答として、DE制御部513は、ステップS705において、ブロックチェーン管理サーバ230からサーバ証明書を含むアクセス許可通知を受信する。ここで、SSL/TLSのハンドシェイクでDHE(Ephemeral Diffie-Hellman)を用いる場合は、ステップS707において別途の鍵交換処理が実行される。
DE制御部513は、ステップS709において、DE502に送信データ(本例の場合は、センサデータ)を要求する。その後、DE制御部513は、ステップS710において、DE502からブロックチェーン管理サーバ230へのセンサデータおよびセンサデータのハッシュ値の送信を繰り返す。なお、1回の送信で全データが送信される場合は、繰り返しはない。ステップS721において、DE502からセンサデータの送信終了が通知されると、DE制御部513は、ステップS723において、センサデータ終了をブロックチェーン管理サーバ230に通知する。そして、DE制御部513は、ステップS725において、DE制御部513からの受信完了通知を受信して、データ送信を終了する。そして、IoTデバイス210とブロックチェーン管理サーバ230は他のフェーズに移行する。この場合に、サービスを提供するブロックチェーン管理サーバ230が変更されてもよい。
(サーバ証明書)
図7Bは、実施形態に係るSSLまたはTLSによるデータ通信におけるサーバ証明書750の構成を示す図である。
サーバ証明書750は、データとして、証明書の発行先(ブロックチェーン管理サーバ運用者:ブロックチェーン管理サーバ識別情報)と、証明書の発行機関(認証局識別情報:デバイス管理サーバ識別情報)と、証明書の有効期間などを含む。また、RSA方式を使用する場合、サーバ証明書750は、ウェブサイトのRSA秘密鍵に対応するRSA公開鍵を含んでいる。
(ブロックチェーン)
図7Cは、本実施形態に係るブロックチェーン管理サーバにおけるブロックチェーン232の状態を示す図である。
図7Cにおいては、ブロックチェーン管理サーバ230に保存するデータをブロックチェーン化して保存する。図7Cにおいて、初回の保存データ701、2回目の保存データ702、3回目の保存データ703、4回目の保存データ704、が示されている。
《IoTデバイスのハードウェア構成》
図8は、本実施形態に係る情報処理部501を含むIoTデバイス210のハードウェア構成を示すブロック図である。なお、図8において、図5および図6と同じ構成要素には同じ参照番号を付して、重複する説明を省略する。
図8で、CPU(Central Processing Unit)810は演算制御用のプロセッサであり、プログラムを実行することで図5の機能を実現する。なお、CPU810は、それぞれの機能に対応して複数あってもよく、例えば、後述するNon Secure WorldとSecure Worldとは、異なるCPUで実現してもよい。また、SE制御部の処理とデバイスの処理とを、異なるCPUで並行に実行してもよい。ROM(Read Only Memory)820は、初期データおよびプログラムなどの固定データおよびプログラムを記憶する。ネットワークインタフェース830は、ネットワークを介して、デバイス管理サーバ220やブロックチェーン管理サーバ230との通信を制御する。SE511は、情報処理部501に含まれる機密情報の保持部であり、デバイス管理サーバ220に認証されて取得され、ブロックチェーン管理サーバ230とのSSL/TLS処理に使用される、公開鍵と秘密鍵とクライアント証明書とを機密に記憶する。また、SE511は、デバイス管理サーバ220へのアクセスに使用される一意の識別子(UUID)も記憶する。DE502は、本IoTデバイス210が実現するデバイス機能を実行する。
RAM(Random Access Memory)840は、CPU810が一時記憶のワークエリアとして使用するランダムアクセスメモリである。RAM840には、本実施形態の実現に必要なデータを記憶する領域が確保されている。送信コマンド841は、SE制御部512が外部装置に対して送信するアクティベーションやポーリングなどのコマンドである。送信パラメータ842は、送信コマンド841に付与されるJSONなどのパラメータである。送信データ843は、送信コマンド841に付与される、例えばデバイスがセンサ機能を有する場合は検出データである。受信コマンド844は、SE制御部512が外部装置から受信するコマンドである。受信パラメータ845は、受信コマンド844に付与される、例えばSE511からの機密情報の削除指示を含むパラメータである。受信データ846は、受信コマンド844に付与される、例えばデバイスがアプリケーションを更新・変更可能な場合はアプリケーションプログラムである。保存データ847は、IoTデバイス210がブロックチェーン管理サーバ230に保存するデータであり、例えばIoTデバイス210がセンサ機器であれば、センサデータである。ハッシュ値848は、保存データ847と以前のハッシュ値とともに算出された最新のハッシュ値である。入出力データ849は、入出力インタフェース860を介して入出力機器などと交換するデータである。
ストレージ850は、データベースや各種のパラメータ、あるいは本実施形態の実現に必要な以下のデータまたはプログラムが記憶さる不揮発メモリである。デバイス識別情報640は、図6Bに示したアクティベーションコマンドのパラメータとして使用され得るデータである。サービス情報630は、図6Bに示したアクティベーションコマンドのパラメータとして使用され得るデータである。ハッシュ値算出アルゴリズム851は、保存データ847のハッシュ値を算出するためのアルゴリズムである。通信アルゴリズム852は、本IoTデバイス210のSE制御部512やDE制御部513がデバイス管理サーバ220やブロックチェーン管理サーバ230と通信ために使用する通信プロトコルやシーケンス、フォーマットなどを記憶する。
ストレージ850には、以下のプログラムが格納される。デバイス制御プログラム853は、本IoTデバイス210全体を制御するプログラムである。SE制御プログラム854は、SE制御部512を実現するプログラムである。SE制御プログラム854は、デバイスアクティベーションモジュール855とデバイスデアクティベーションモジュール856とを含む。デバイスアクティベーションモジュール855は、デバイス管理サーバ220との間でデバイスをアクティベーションする、すなわち、公開鍵と秘密鍵とクライアント証明書とを受信してSE511に機密に保持するモジュールである。デバイスデアクティベーションモジュール856は、デバイス管理サーバ220からの指示でデバイスをデアクティベーション、すなわち、アクティベーション時に取得した公開鍵と秘密鍵とクライアント証明書とを消去するモジュールである。DE制御プログラム857は、ブロックチェーン管理サーバ230と接続してデータやハッシュ値を保存するためのプログラムであり、サービスアクティベーションモジュール858を有する。サービスアクティベーションモジュール858は、ブロックチェーン管理サーバ230との間でサービスとしてのデータ保存をアクティベーションして実行するモジュールである。
入出力インタフェース860は、入出力デバイスとのデータ入出力を制御するためのインタフェースを行なう。本実施形態においては、入出力インタフェース860には、表示部861と、操作部862と、IoTデバイスがセンサの場合のセンサ部863とが接続される。入出力インタフェース860には、さらに、撮像部やGPS位置算出部、などが接続されてもよい。
なお、図8のRAM840やストレージ850には、IoTデバイス210や情報処理部501が有する汎用の機能や他の実現可能な機能に関連するプログラムやデータは図示されていない。
《情報処理部の処理手順》
図9は、実施形態に係る情報処理部501の処理手順を示すフローチャートである。このフローチャートは、図8のCPU810がRAM840を使用して実行し、図5の情報処理部501の機能構成部を実現する。
情報処理部501は、ステップS920において、SE511に公開鍵、秘密鍵、クライアント証明書が記憶されているか否かをチェックする。そして、情報処理部501は、ステップS921において、SE511内に公開鍵、秘密鍵、クライアント証明書が有るか無いかにより、分岐する。公開鍵、秘密鍵、クライアント証明書が無いと判定した場合、情報処理部501は、ステップS923において、対応するパラメータとしてデバイス情報やサービス情報から選ばれたデバイスに固有の識別子を取得して設定する。情報処理部501は、ステップS925において、アクティベーションメッセージをデバイス管理サーバ220に送信する。情報処理部501は、ステップS927において、アクティベーションメッセージへの応答として、デバイス管理サーバ220による認証後の、応答メッセージの受信を待つ。そして、情報処理部501は、ステップS931において、応答メッセージから公開鍵と秘密鍵とクライアント証明書とを抽出して機密にSE511に記憶する。なお、図示していないが、一意の識別子(UUID)も受信して機密にSE511に記憶する。
SE511内に公開鍵、秘密鍵、クライアント証明書が有ると判定された場合、情報処理部501は、ステップS941において、所定の閾値時間が経過したか否かを判定する。所定の閾値時間が経過したと判定した場合、情報処理部501は、ステップS943において、対応するパラメータとして、一意の識別子(UUID)をSE511から取得して設定する。情報処理部501は、ステップS945において、ポーリングメッセージを送信する。情報処理部501は、ステップS947において、ポーリングメッセージへの応答を待つ。ポーリングメッセージへの応答を受信すると、情報処理部501は、ステップS949において、公開鍵と秘密鍵とクライアント証明書との消去指示であるか否かを判定する。公開鍵と秘密鍵とクライアント証明書との消去指示であれば、情報処理部501は、ステップS951において、公開鍵と秘密鍵とクライアント証明書との消去処理を実行する。公開鍵と秘密鍵とクライアント証明書との消去指示でなければ、他の指示された処理を実行する。なお、SE511に公開鍵、秘密鍵、クライアント証明書が記憶されているか否かのチェックにおいては、全てが揃っている場合を有り、1つでも欠けていれば無いと判定するのが望ましい。
SE511内に公開鍵、秘密鍵、クライアント証明書が有り、所定の閾値時間が経過ししていないと判定された場合、情報処理部501は、ステップS961において、IoTデバイス210からブロックチェーン管理サーバ230へのデータやハッシュ値の保存であるか否かを判定する。データやハッシュ値の保存であると判定された場合、情報処理部501は、ステップS963において、SE511からクライアント証明書と公開鍵とを取得する。そして、情報処理部501は、ステップS965において、アクティベーションメッセージをブロックチェーン管理サーバ230に送信する。情報処理部501は、ステップS967において、アクティベーションメッセージへの応答としてブロックチェーン管理サーバ230による認証後の、サーバ証明書の受信を待つ。そして、情報処理部501は、ステップS969において、ブロックチェーン管理サーバ230との間でデータの暗号鍵および復号鍵を交換する。なお、本実施例では、暗号鍵および復号鍵として共通鍵が用いられ、共通鍵はデバイス管理サーバ220から配布された秘密鍵および公開鍵を使用して交換される。情報処理部501は、ステップS971において、保存するデータから新たなハッシュ値を算出して保持する。そして、情報処理部501は、ステップS973において、ハッシュ値もしくはデータおよびハッシュ値を暗号鍵で暗号化し、暗号化データを認証されたブロックチェーン管理サーバ230に送信する。
本実施形態によれば、IoTデバイスのセキュアな管理とその保存データのセキュアな管理とを効率的に組み合わせることができる。すなわち、IoTデバイスを管理するデバイス管理サーバから認証の上、配布されたクライアント証明書、秘密鍵および公開鍵を使用し、ブロックチェーン管理サーバとIoTデバイス認証を行うことで、ブロックチェーンで管理するデータ保存と効率的に組み合わせることができた。
[第3実施形態]
次に、本発明の第3実施形態に係る情報処理システムについて説明する。本実施形態に係る情報処理システムは、上記第2実施形態と比べると、IoTデバイスがハッシュ値を算出する機能を有しないので、ブロックチェーン管理サーバがIoTデバイスから受信したデータからハッシュ値を算出してブロックチェーン化して保存する点で異なる。その他の構成および動作は、第2実施形態と同様であるため、同じ構成および動作については同じ符号を付してその詳しい説明を省略する。なお、本実施形態においては、データ保存動作のシーケンスとIoTデバイスの機能構成とを説明するが、図7Aのシーケンス、図8ノハードウェア構成、図9のフローチャートにおいても、ハッシュ値算出の構成および手順が削除される。
(データ保存動作)
図10は、本実施形態に係るデバイス管理システムの動作手順(データ保存S1020)の概要を示すシーケンス図である。なお、図10において、図4Bと同様のステップには同じステップ番号を付して、重複する説明は省略する。
IoTデバイス1010は、ステップS1026において、保存データを暗号鍵で暗号化してブロックチェーン管理サーバ1030に送信する。ブロックチェーン管理サーバ1030は、ステップS1027において、暗号化情報を復号鍵で復号する。そして、ブロックチェーン管理サーバ1030は、ステップS1028において、復号された保存データからハッシュ値を生成して保持する。ブロックチェーン管理サーバ1030は、ステップS1029において、保存データとハッシュ値とをブロックチェーン化しながら分散保存する。
《IoTデバイスの機能構成》
図11は、本実施形態に係る情報処理部を含むIoTデバイス1010の機能構成を示すブロック図である。なお、図11において、図5と同じ構成要素には同じ参照番号を付して、重複する説明を省略する。
図11においては、DE制御部1013にハッシュ値算出部が無く、IoTデバイス1010のデータはそのままSSL/TLS処理部535で暗号鍵によって暗号化されて、ブロックチェーン管理サーバ1030に送信される。
本実施形態によれば、IoTデバイスにハッシュ値算出機能を付加する必要が無いので、組込み制御部の簡素化となり簡単な変更で情報処理システムを構成できる。
[第4実施形態]
次に、本発明の第4実施形態に係る情報処理システムについて説明する。本実施形態に係る情報処理システムは、上記第2実施形態および第3実施形態と比べると、ブロックチェーン管理サーバがIoTデバイスのクライアント証明書およびデバイスID(UUID)のリストをブロックチェーン化して保存する点で異なる。すなわち、暗号化データの保存を依頼して認証されIoTデバイスの一覧であるデバイスリストを依頼順にブロックチェーン化して保存する。その他の構成および動作は、第2実施形態または第3実施形態と同様であるため、同じ構成および動作については同じ符号を付してその詳しい説明を省略する。
(ブロックチェーン)
図12は、本実施形態に係るブロックチェーン管理サーバにおけるブロックチェーンの状態を示す図である。なお、図12において、図7Cと同じ構成要素には同じ参照番号を付して、重複する説明を省略する。
図12においては、ブロックチェーン管理サーバ230にデータやハッシュ値を保存したIoTデバイスの情報をブロックチェーン化して保存する。図12において、第1IoTデバイスの保存データ1201、第2IoTデバイスの保存データ1202、第3IoTデバイスの保存データ1203、第4IoTデバイスの保存データ1204、が示されている。
なお、図12においては、各IoTデバイスがデバイス管理サーバ220から配布されたクライアント証明書およびデバイスID(UUID)をブロックチェーン化して保存しているが、ブロックチェーン化するデバイス情報はこれに限定されない。また、同じIoTデバイスのデータを異なるブロックチェーン管理サーバに保存する場合には、別のクライアント証明書およびデバイスIDが配布される。また、IoTデバイスは、機密保持のために、クライアント証明書を1回のセッション毎、あるいは、所定セッションごと、あるいは、所定時間経過ごとに、クライアント証明書およびデバイスIDを消去して更新する。その場合には、新たにブロックチェーンの最後尾にリンクされることになる。
本実施形態によれば、上記実施形態の効果に加えて、データを保存したIoTデバイスの機密性をさらに高めた管理をすることができる。
[第5実施形態]
次に、本発明の第5実施形態に係る情報処理システムについて説明する。本実施形態に係る情報処理システムは、上記第2実施形態乃至第4実施形態と比べると、ブロックチェーン管理サーバがIoTデバイスにおける脆弱性評価結果をブロックチェーン化して保存する点で異なる。すなわち、IoTデバイスに対して不図示のサーバからの擬似攻撃あるいはIoTデバイス内でのウィルスの擬似攻撃に対する脆弱性評価の結果を評価順にブロックチェーン化して保存する。その他の構成および動作は、第2実施形態から第4実施形態と同様であるため、同じ構成および動作については同じ符号を付してその詳しい説明を省略する。
(ブロックチェーン)
図13は、本実施形態に係るブロックチェーン管理サーバにおけるブロックチェーンの状態を示す図である。なお、図13において、図7Cおよび図12と同じ構成要素には同じ参照番号を付して、重複する説明を省略する。
図13においては、ブロックチェーン管理サーバ230にデータやハッシュ値を保存したIoTデバイスの脆弱性評価結果をブロックチェーン化して保存する。図13において、IoTデバイスの初回の脆弱性評価結果1301、2回目の脆弱性評価結果1302、3回目の脆弱性評価結果1303、4回目の脆弱性評価結果1304、が示されている。
本実施形態によれば、上記実施形態の効果に加えて、データを保存したIoTデバイスの機密性の評価結果を保存することにより、さらに高めた管理をすることができる。
[第6実施形態]
次に本発明の第6実施形態に係る情報処理システム1400について説明する。本実施形態に係る情報処理システム1200は、上記第2実施形態乃至第5実施形態と比べると、デバイス管理サーバとブロックチェーン管理サーバとが相互監視あるいはデータ交換を行う点で異なる。その他の構成および動作は、第2実施形態から第5実施形態と同様であるため、同じ構成および動作については同じ符号を付してその詳しい説明を省略する。
《情報処理システムの動作概要》
図14は、本実施形態に係る情報処理システム1400の動作概要を示すブロック図である。なお、図14において、図2と同様の構成要素には同じ参照番号を付して、重複する説明を省略する。
図14において、情報処理システム1400のデバイス管理サーバ1420とブロックチェーン管理サーバ1430とは、互いを監視すると共に、互いのデータを交換して(図14の1401参照)、情報処理システム1400における機密性をさらに高め、不正やエラーを効率的に防ぐ。例えば、互いに内部で見付けた不正やエラーの情報を交換することにより、不正やエラーをより厳格に効率的に防ぐことができる。
本実施形態によれば、上記実施形態の効果に加えて、情報処理システムの機密性をさらに高め、不正やエラーを効率的に防ぐことができる。
[他の実施形態]
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明の技術的範囲で当業者が理解し得る様々な変更をすることができる。また、それぞれの実施形態に含まれる別々の特徴を如何様に組み合わせたシステムまたは装置も、本発明の技術的範囲に含まれる。
また、本発明は、複数の機器から構成されるシステムに適用されてもよいし、単体の装置に適用されてもよい。さらに、本発明は、実施形態の機能を実現する情報処理プログラムが、システムあるいは装置に供給され、内蔵されたプロセッサによって実行される場合にも適用可能である。本発明の機能をコンピュータで実現するために、コンピュータにインストールされるプログラム、あるいはそのプログラムを格納した媒体、そのプログラムをダウンロードさせるサーバも、プログラムを実行するプロセッサも本発明の技術的範囲に含まれる。特に、少なくとも、上述した実施形態に含まれる処理ステップをコンピュータに実行させるプログラムを格納した非一時的コンピュータ可読媒体(non-transitory computer readable medium)は本発明の技術的範囲に含まれる。

Claims (15)

  1. 認証されたIoTデバイスからのデータを保存するための情報処理システムであって、
    IoTデバイスと、
    前記IoTデバイスから送信された、前記IoTデバイスに固有の第1識別子を含む要求に応答して、前記固有の第1識別子が登録済みであると確認した場合に、前記IoTデバイスの信頼性を証明する第1クライアント証明書を前記IoTデバイスに配布するデバイス管理部と、
    前記IoTデバイスから送信された前記第1クライアント証明書に基づいて前記IoTデバイスを認証し、前記IoTデバイスから送信されたデータをブロックチェーン化しながら分散保存するブロックチェーン管理部と、
    を備え
    前記ブロックチェーン管理部は、前記データの保存を依頼して認証された前記IoTデバイスの一覧であるデバイスリストを依頼順にブロックチェーン化しながら分散保存する情報処理システム。
  2. 前記IoTデバイスは、前記データからハッシュ値を算出するハッシュ値算出部を備え、前記ハッシュ値もしくは前記データおよび前記ハッシュ値を前記ブロックチェーン管理部に送信し、
    前記ブロックチェーン管理部は、前記ハッシュ値もしくは前記データおよび前記ハッシュ値をブロックチェーン化しながら分散保存する請求項1に記載の情報処理システム。
  3. 前記デバイスリストは、前記第1クライアント証明書と、前記IoTデバイスに対して前記デバイス管理部から設定された一意の識別子(UUID:Universally Unique Identifier)とを含む請求項1または2に記載の情報処理システム。
  4. ブロックチェーン化しながら分散保存された前記IoTデバイスのデータを要求するユーザ端末をさらに備え、
    前記デバイス管理部は、前記ユーザ端末からの前記ユーザ端末に固有の第2識別子を含む要求に応答して、前記ユーザ端末の信頼性を証明する第2クライアント証明書を配布し、
    前記ブロックチェーン管理部は、前記ユーザ端末からの前記第2クライアント証明書に基づいて前記ユーザ端末を認証し、ブロックチェーン化しながら分散保存された前記IoTデバイスのデータを、前記ユーザ端末に提供する請求項1乃至のいずれか1項に記載の情報処理システム。
  5. 前記デバイス管理部は、前記IoTデバイスと前記ブロックチェーン管理部との間でデータを暗号化してSSL/TLS通信するための共通鍵を交換するために使用する秘密鍵および公開鍵をさらに前記IoTデバイスに配布し、前記IoTデバイスは、前記秘密鍵および前記公開鍵で交換した共通鍵で暗号化したデータを前記ブロックチェーン管理部に送信する請求項1乃至のいずれか1項に記載の情報処理システム。
  6. 認証されたIoTデバイスからのデータを保存するための情報処理システムであって、
    IoTデバイスと、
    前記IoTデバイスから送信された、前記IoTデバイスに固有の第1識別子を含む要求に応答して、前記固有の第1識別子が登録済みであると確認した場合に、前記IoTデバイスの信頼性を証明する第1クライアント証明書を前記IoTデバイスに配布するデバイス管理部と、
    前記IoTデバイスから送信された前記第1クライアント証明書に基づいて前記IoTデバイスを認証し、前記IoTデバイスから送信されたデータをブロックチェーン化しながら分散保存するブロックチェーン管理部と、
    を備え、
    前記固有の第1識別子は、前記IoTデバイスを識別するためのデバイス識別情報と、前記ブロックチェーン管理部を識別するためのブロックチェーン管理部識別情報とを含む情報処理システム。
  7. 前記第1クライアント証明書は、前記ブロックチェーン管理部識別情報を含む請求項に記載の情報処理システム。
  8. 認証されたIoTデバイスからのデータを保存するための情報処理方法であって、
    デバイス管理部が、IoTデバイスから送信された、前記IoTデバイスに固有の第1識別子を含む要求に応答して、前記固有の第1識別子が登録済みであると確認した場合に、前記IoTデバイスの信頼性を証明する第1クライアント証明書を前記IoTデバイスに配布するデバイス管理ステップと、
    ブロックチェーン管理部が、前記IoTデバイスから送信された前記第1クライアント証明書に基づいて前記IoTデバイスを認証し、前記IoTデバイスから送信されたデータをブロックチェーン化しながら分散保存するブロックチェーン管理ステップと、
    を含み、
    前記ブロックチェーン管理ステップにおいては、前記データの保存を依頼して認証された前記IoTデバイスの一覧であるデバイスリストを依頼順にブロックチェーン化しながら分散保存する情報処理方法。
  9. 認証されたIoTデバイスからのデータを保存するための情報処理方法であって、
    デバイス管理部が、IoTデバイスから送信された、前記IoTデバイスに固有の第1識別子を含む要求に応答して、前記固有の第1識別子が登録済みであると確認した場合に、前記IoTデバイスの信頼性を証明する第1クライアント証明書を前記IoTデバイスに配布するデバイス管理ステップと、
    ブロックチェーン管理部が、前記IoTデバイスから送信された前記第1クライアント証明書に基づいて前記IoTデバイスを認証し、前記IoTデバイスから送信されたデータをブロックチェーン化しながら分散保存するブロックチェーン管理ステップと、
    を含み、
    前記固有の第1識別子は、前記IoTデバイスを識別するためのデバイス識別情報と、前記ブロックチェーン管理部を識別するためのブロックチェーン管理部識別情報とを含む情報処理方法。
  10. 前記第1クライアント証明書は、前記ブロックチェーン管理部識別情報を含む請求項9に記載の情報処理方法。
  11. IoTデバイスにおいて、サーバとの通信を司る情報処理部としての情報処理装置であって、
    IoTデバイスを管理するデバイス管理サーバに対して前記IoTデバイスに固有の識別子を含む要求を送信して、前記デバイス管理サーバにおいて前記固有の識別子が登録済みであると確認された場合に前記デバイス管理サーバから配布された前記IoTデバイスの信頼性を証明するクライアント証明書を取得する証明書取得部と、
    前記クライアント証明書に基づいてブロックチェーン管理サーバの認証を受け、前記ブロックチェーン管理サーバにデータを送信してブロックチェーン化しながら分散保存させる保存指示部と、
    を備え
    前記固有の識別子は、前記IoTデバイスを識別するためのデバイス識別情報と、前記ブロックチェーン管理サーバにおいて前記データをブロックチェーン化しながら分散保存するブロックチェーン管理部を識別するためのブロックチェーン管理部識別情報とを含み、
    前記クライアント証明書は、前記ブロックチェーン管理部識別情報を含む情報処理装置。
  12. 前記データからハッシュ値を算出するハッシュ値算出部を備え、
    前記保存指示部は、前記ハッシュ値もしくは前記データおよび前記ハッシュ値を前記ブロックチェーン管理サーバに送信する請求項11に記載の情報処理装置。
  13. 前記証明書取得部は、
    前記クライアント証明書の配布を要求する要求メッセージであって、前記IoTデバイスに固有の識別子を含む要求メッセージを、前記デバイス管理サーバに送信する第1送信部と、
    前記デバイス管理サーバに前記識別子が登録済みであると確認した場合に前記デバイス管理サーバが配布した、前記クライアント証明書を受信する第1受信部と、
    受信した前記クライアント証明書を保持する保持部と、
    を有する請求項11または12に記載の情報処理装置。
  14. 請求項11乃至13のいずれか1項に記載の情報処理装置を、サーバとの通信を司る情報処理部として有するIoTデバイス。
  15. IoTデバイスにおいて、サーバとの通信を司る情報処理部としての情報処理装置の制御プログラムであって、
    IoTデバイスを管理するデバイス管理サーバに対して前記IoTデバイスに固有の識別子を含む要求を送信して、前記デバイス管理サーバにおいて前記固有の識別子が登録済みであると確認された場合に前記デバイス管理サーバから配布された前記IoTデバイスの信頼性を証明するクライアント証明書を取得する証明書取得ステップと、
    前記クライアント証明書に基づいてブロックチェーン管理サーバの認証を受け、前記ブロックチェーン管理サーバにデータを送信してブロックチェーン化しながら分散保存させるデータ保存指示ステップと、
    をコンピュータに実行させる情報処理装置の制御プログラムであって、
    前記固有の識別子は、前記IoTデバイスを識別するためのデバイス識別情報と、前記ブロックチェーン管理サーバにおいて前記データをブロックチェーン化しながら分散保存するブロックチェーン管理部を識別するためのブロックチェーン管理部識別情報とを含み、
    前記クライアント証明書は、前記ブロックチェーン管理部識別情報を含む情報処理装置の制御プログラム
JP2020093685A 2020-05-28 2020-05-28 情報処理システム、情報処理方法、IoTデバイス、情報処理装置およびその制御プログラム Active JP7253809B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020093685A JP7253809B2 (ja) 2020-05-28 2020-05-28 情報処理システム、情報処理方法、IoTデバイス、情報処理装置およびその制御プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020093685A JP7253809B2 (ja) 2020-05-28 2020-05-28 情報処理システム、情報処理方法、IoTデバイス、情報処理装置およびその制御プログラム

Publications (2)

Publication Number Publication Date
JP2021190808A JP2021190808A (ja) 2021-12-13
JP7253809B2 true JP7253809B2 (ja) 2023-04-07

Family

ID=78847758

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020093685A Active JP7253809B2 (ja) 2020-05-28 2020-05-28 情報処理システム、情報処理方法、IoTデバイス、情報処理装置およびその制御プログラム

Country Status (1)

Country Link
JP (1) JP7253809B2 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002278839A (ja) 2001-03-15 2002-09-27 Sony Corp データアクセス管理システム、メモリ搭載デバイス、およびデータアクセス管理方法、並びにプログラム記憶媒体
JP2019079577A (ja) 2019-02-12 2019-05-23 富士通株式会社 通信方法、装置、及びプログラム
WO2019108435A1 (en) 2017-11-30 2019-06-06 Mocana Corporation System and method of device identification for enrollment and registration of a connected endpoint device, and blockchain service

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002278839A (ja) 2001-03-15 2002-09-27 Sony Corp データアクセス管理システム、メモリ搭載デバイス、およびデータアクセス管理方法、並びにプログラム記憶媒体
WO2019108435A1 (en) 2017-11-30 2019-06-06 Mocana Corporation System and method of device identification for enrollment and registration of a connected endpoint device, and blockchain service
JP2019079577A (ja) 2019-02-12 2019-05-23 富士通株式会社 通信方法、装置、及びプログラム

Also Published As

Publication number Publication date
JP2021190808A (ja) 2021-12-13

Similar Documents

Publication Publication Date Title
US11076290B2 (en) Assigning an agent device from a first device registry to a second device registry
JP2021505097A (ja) 接続されたエンドポイントデバイスのエンロールメント及び登録のためのデバイス識別のシステム及び方法、ならびにブロックチェーンサービス
US9137017B2 (en) Key recovery mechanism
KR20200099543A (ko) 트랜잭션 커넥터 및 브로커 서비스를 사용하여 블록 체인 네트워크에서 장치 라이프사이클 트랜잭션을 버전 블록들로서 기록하기 위한 시스템 및 방법
JP4607567B2 (ja) 証明書転送方法、証明書転送装置、証明書転送システム、プログラム及び記録媒体
JP5201716B2 (ja) 暗号モジュール配信システム、暗号管理サーバ装置、暗号処理装置、クライアント装置、暗号管理プログラム、暗号処理プログラム、およびクライアントプログラム
JP4576210B2 (ja) 証明書転送装置、証明書転送システム、証明書転送方法、プログラム及び記録媒体
JP4758095B2 (ja) 証明書無効化装置、通信装置、証明書無効化システム、プログラム及び記録媒体
JP5204553B2 (ja) グループ従属端末、グループ管理端末、サーバ、鍵更新システム及びその鍵更新方法
WO2015056008A1 (en) Method for assigning an agent device from a first device registry to a second device registry
JP2010514000A (ja) 電子装置にプログラム状態データをセキュアに記憶するための方法
JP2004507156A (ja) 任意通信サービスのセキュリティ確保
CN116601912A (zh) 提供加密安全的后秘密供应服务
JPWO2007099609A1 (ja) 機器認証システム、移動端末、情報機器、機器認証サーバ及び機器認証方法
JP2018041224A (ja) ソフトウェア更新システム
US20220294613A1 (en) Method and apparatus for transferring data in a publish-subscribe system
JP4564370B2 (ja) 情報管理システム及び情報管理方法
JP6894469B2 (ja) 情報処理装置およびその制御プログラム
JP6192495B2 (ja) 半導体素子、情報端末および半導体素子の制御方法、情報端末の制御方法
JP7253809B2 (ja) 情報処理システム、情報処理方法、IoTデバイス、情報処理装置およびその制御プログラム
US20190349348A1 (en) Registry apparatus, agent device, application providing apparatus and corresponding methods
JP2011227673A (ja) ファイル管理システム、ストレージサーバ、クライアント、ファイル管理方法およびプログラム
JP6743534B2 (ja) 情報処理装置、情報処理システム、プログラム及び情報処理方法
JP2013109544A (ja) 情報処理装置及びプログラム
WO2017159067A1 (ja) 情報処理装置およびエージェントシステム

Legal Events

Date Code Title Description
A80 Written request to apply exceptions to lack of novelty of invention

Free format text: JAPANESE INTERMEDIATE CODE: A80

Effective date: 20200626

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220905

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20220905

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

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230126

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230320

R150 Certificate of patent or registration of utility model

Ref document number: 7253809

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150