(57)【要約】      （修正有）【課題】通信回線を介して受信するデータの確認を行う情報処理システムを提供する。【解決手段】情報処理システム１は、データ収集装置２と、データ収集装置と通信網Ｃにより接続されるサーバ４および管理台帳６を備える。データ収集装置において、乱数発生部２２で発生させた時刻系列で規定されるタイミングでデータを取得し、乱数発生部で発生した時刻系列をハッシュ化し、送信部２３がデータ取得部で取得したデータと、ハッシュ化された時刻系列を、管理台帳に送信する。一方、サーバにおいて、受信部４３が管理台帳を受信し、乱数発生部４２がデータ収集装置側の乱数発生部と同じ乱数を発生する。そして乱数発生部で発生させた乱数をハッシュ化した検証用時刻系列と、受信したハッシュ化情報を比較することにより受信したデータの確認を行う。【選択図】図１
2020120235.tif 000002
【特許請求の範囲】
【請求項１】
取得タイミングを規定した時刻系列を発生させる乱数発生部と、
前記乱数発生部で発生させた時刻系列で規定されるタイミングで、データを取得するデータ取得部と、
前記乱数発生部で発生した時刻系列をハッシュ化するハッシュ化部と、
前記データ取得部で取得したデータと、ハッシュ化された時刻系列を送信する送信部と、を備える
情報処理装置。
【請求項２】
データ取得装置から送信されたデータと、データ収集タイミングを規定した時刻系列をハッシュ化したハッシュ化情報を受信する受信部と、
前記データ収集装置で発生させた時刻系列と同じ検証用時刻系列を発生させる検証用乱数発生部と、
前記検証用乱数発生部で発生させた検証用時刻系列をハッシュ化する検証用ハッシュ化部と、
受信したハッシュ化情報と、ハッシュ化された検証用時刻系列を比較することで、受信したデータの確認を行う確認部を備える
請求項１に記載の情報処理装置。
【請求項３】
前記データ取得部で取得するデータは、センサで計測したデータを含む
請求項１に記載の情報処理装置。
【請求項４】
前記データ取得部で取得するデータは、制御対象部を制御するデータを含む
請求項１に記載の情報処理装置。
【請求項５】
前記データ取得部で取得するデータは、センサで計測したデータと、制御対象部を制御するデータを含み、
前記制御対象部は、前記センサで計測する系に対する制御を行う
請求項１に記載の情報処理装置。
【請求項６】
前記送信部は、前記データ取得部で取得したデータと、ハッシュ化された時刻系列を管理台帳に送信する
請求項１に記載の情報処理装置。
【請求項７】
前記管理台帳はブロックチェーンである
請求項６に記載の情報処理装置。
【請求項８】
前記データ確認部は、前記確認部で確認が行われたデータを使用して、モデルを形成する学習部を備える
請求項１に記載の情報処理装置。
【請求項９】
前記データ確認部は、前記学習部で形成されたモデルを使用して、受信したデータの確認を行う
請求項８に記載の情報処理装置。
【請求項１０】
前記送信部により、前記データ取得部で取得したデータと、ハッシュ化された時刻系列とが他の情報処理装置に送信される
請求項１に記載の情報処理装置。
【請求項１１】
取得タイミングを規定した時刻系列を発生させる乱数発生処理と、
前記乱数発生処理で発生させた時刻系列で規定されるタイミングで、データを取得するデータ取得処理と、
前記乱数発生処理で発生した時刻系列をハッシュ化するハッシュ化処理と、
前記データ取得処理で取得したデータと、ハッシュ化された時刻系列を送信する送信処理と、を含む
情報処理装置における情報処理方法。
【請求項１２】
データ収集処理と、前記データ収集処理と通信可能なデータ確認処理とを含み、
前記データ収集処理は、
取得タイミングを規定した時刻系列を発生させる乱数発生処理と、
前記乱数発生処理で発生させた時刻系列で規定されるタイミングで、データを取得するデータ取得処理と、
前記乱数発生処理で発生した時刻系列をハッシュ化するハッシュ化処理と、
前記データ取得処理で取得したデータと、ハッシュ化された時刻系列を送信する送信処理と、を含み、
前記データ確認処理は、
前記送信処理から送信されたデータと、ハッシュ化された時刻系列を受信する受信処理と、
前記乱数発生処理で発生させた時刻系列と同じ検証用時刻系列を発生させる検証用乱数発生処理と、
前記検証用乱数発生処理で発生させた検証用時刻系列をハッシュ化する検証用ハッシュ化処理と、
ハッシュ化された時刻系列と、ハッシュ化された検証用時刻系列を比較することで、受信したデータの確認を行う確認処理を含む
情報処理装置における情報処理方法。
【請求項１３】
前記ハッシュ化処理は、取得したデータをハッシュ化し、
前記送信処理は、ハッシュ化されたデータを送信し、
前記検証用ハッシュ化処理は、受信したデータをハッシュ化し、
前記確認処理は、前記ハッシュ化処理でハッシュ化されたデータと、前記検証用ハッシュか処理でハッシュ化されたデータを比較することで、受信したデータの確認を行う
請求項１２に記載の情報処理方法。
【請求項１４】
取得タイミングを規定した時刻系列を発生させる乱数発生処理と、
前記乱数発生処理で発生させた時刻系列で規定されるタイミングで、データを取得するデータ取得処理と、
前記乱数発生処理で発生した時刻系列をハッシュ化するハッシュ化処理と、
前記データ取得処理で取得したデータと、ハッシュ化された時刻系列を送信する送信処理と、を実行可能とする
情報処理プログラム。
【請求項１５】
データ収集装置から送信されたデータと、データ収集タイミングを規定した時刻系列をハッシュ化したハッシュ化情報を受信する受信処理と、
前記データ収集装置で発生させた時刻系列と同じ検証用時刻系列を発生させる検証用乱数発生処理と、
前記検証用乱数発生処理で発生させた検証用時刻系列をハッシュ化する検証用ハッシュ化処理と、
受信したハッシュ化情報と、ハッシュ化された検証用時刻系列を比較することで、受信したデータの確認を行う確認処理を、情報処理装置に実行させる
請求項１４に記載の情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、情報処理装置、情報処理方法及び情報処理プログラムに関する。
【背景技術】
【０００２】
現在、通信回線を使用して、各種機器間におけるデータの送受信が行われている。各種機器で発生した異常は、できるだけ速やかに通報することが、機器を適切に利用する上では好ましい。特許文献１には、機器の異常を検知して、異常を分析し、適切な通報先へ機器の異常を通報することのできる異常通報装置が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平９−２３８３９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
現在、インターネットによる通信環境が整う中、各種機器間におけるデータの送受信は増加する一方であり、また、インターネット上でのデータ改ざん、データ破壊等、好ましくない状況が生じることも考えられるため、信憑性の高いデータを受信することが望まれている。
【０００５】
本開示は、確かなデータの送受信を行う情報処理装置、情報処理方法及び情報処理プログラムを提供することを目的の一つとする。
【課題を解決するための手段】
【０００６】
本開示の情報処理装置は、例えば、
取得タイミングを規定した時刻系列を発生させる乱数発生部と、
前記乱数発生部で発生させた時刻系列で規定されるタイミングで、データを取得するデータ取得部と、
前記乱数発生部で発生した時刻系列をハッシュ化するハッシュ化部と、
前記データ取得部で取得したデータと、ハッシュ化された時刻系列を送信する送信部と、を備える。
【０００７】
本開示の情報処理装置は、例えば、
データ収集装置から送信されたデータと、データ収集タイミングを規定した時刻系列をハッシュ化したハッシュ化情報を受信する受信部と、
前記データ収集装置で発生させた時刻系列と同じ検証用時刻系列を発生させる検証用乱数発生部と、
前記検証用乱数発生部で発生させた検証用時刻系列をハッシュ化する検証用ハッシュ化部と、
受信したハッシュ化情報と、ハッシュ化された検証用時刻系列を比較することで、受信したデータの確認を行う確認部を備える。
【０００８】
本開示の情報処理装置は、例えば、
前記データ取得部で取得するデータは、センサで計測したデータを含む。
【０００９】
本開示の情報処理装置は、例えば、
前記データ取得部で取得するデータは、制御対象部を制御するデータを含む。
【００１０】
本開示の情報処理装置は、例えば、
前記データ取得部で取得するデータは、センサで計測したデータと、制御対象部を制御するデータを含み、
前記制御対象部は、前記センサで計測する系に対する制御を行う。
【００１１】
本開示の情報処理装置は、例えば、
前記送信部は、前記データ取得部で取得したデータと、ハッシュ化された時刻系列を管理台帳に送信する。
【００１２】
本開示の情報処理装置は、例えば、
前記管理台帳はブロックチェーンである。
【００１３】
本開示の情報処理装置は、例えば、
前記データ確認部は、前記確認部で確認が行われたデータを使用して、モデルを形成する学習部を備える。
【００１４】
本開示の情報処理装置は、例えば、
前記データ確認部は、前記学習部で形成されたモデルを使用して、受信したデータの確認を行う。
【００１５】
本開示の情報処理装置における情報処理方法は、例えば、
取得タイミングを規定した時刻系列を発生させる乱数発生処理と、
前記乱数発生処理で発生させた時刻系列で規定されるタイミングで、データを取得するデータ取得処理と、
前記乱数発生処理で発生した時刻系列をハッシュ化するハッシュ化処理と、
前記データ取得処理で取得したデータと、ハッシュ化された時刻系列を送信する送信処理と、を含む。
【００１６】
本開示の情報処理装置における情報処理方法は、例えば、
データ収集処理と、前記データ収集処理と通信可能なデータ確認処理とを含み、
前記データ収集処理は、
取得タイミングを規定した時刻系列を発生させる乱数発生処理と、
前記乱数発生処理で発生させた時刻系列で規定されるタイミングで、データを取得するデータ取得処理と、
前記乱数発生処理で発生した時刻系列をハッシュ化するハッシュ化処理と、
前記データ取得処理で取得したデータと、ハッシュ化された時刻系列を送信する送信処理と、を含み、
前記データ確認処理は、
前記送信処理から送信されたデータと、ハッシュ化された時刻系列を受信する受信処理と、
前記乱数発生処理で発生させた時刻系列と同じ検証用時刻系列を発生させる検証用乱数発生処理と、
前記検証用乱数発生処理で発生させた検証用時刻系列をハッシュ化する検証用ハッシュ化処理と、
ハッシュ化された時刻系列と、ハッシュ化された検証用時刻系列を比較することで、受信したデータの確認を行う確認処理を含む。
【００１７】
本開示の情報処理装置における情報処理方法は、例えば、
前記ハッシュ化処理は、取得したデータをハッシュ化し、
前記送信処理は、ハッシュ化されたデータを送信し、
前記検証用ハッシュ化処理は、受信したデータをハッシュ化し、
前記確認処理は、前記ハッシュ化処理でハッシュ化されたデータと、前記検証用ハッシュか処理でハッシュ化されたデータを比較することで、受信したデータの確認を行う。
【００１８】
本開示の情報処理プログラムは、例えば、
取得タイミングを規定した時刻系列を発生させる乱数発生処理と、
前記乱数発生処理で発生させた時刻系列で規定されるタイミングで、データを取得するデータ取得処理と、
前記乱数発生処理で発生した時刻系列をハッシュ化するハッシュ化処理と、
前記データ取得処理で取得したデータと、ハッシュ化された時刻系列を送信する送信処理と、を実行可能とする。
【００１９】
本開示の情報処理プログラムは、例えば、
データ収集装置から送信されたデータと、データ収集タイミングを規定した時刻系列をハッシュ化したハッシュ化情報を受信する受信処理と、
前記データ収集装置で発生させた時刻系列と同じ検証用時刻系列を発生させる検証用乱数発生処理と、
前記検証用乱数発生処理で発生させた検証用時刻系列をハッシュ化する検証用ハッシュ化処理と、
受信したハッシュ化情報と、ハッシュ化された検証用時刻系列を比較することで、受信したデータの確認を行う確認処理を、情報処理装置に実行させる。
【図面の簡単な説明】
【００２０】
【図１】図１は、実施形態に係る情報処理システムの構成を説明するための図である。
【図２】図２は、実施形態に係るデータ収集装置で実行されるデータ収集処理を示すフロー図である。
【図３】図３は、実施形態に係るデータ収集装置で実行されるデータ収集処理を説明するための図である。
【図４】図４は、実施形態に係るサーバで実行される学習・異常検知処理を示すフロー図である。
【図５】図５は、ブロックチェーン技術の分類を示す表である。
【発明を実施するための形態】
【００２１】
以下、本開示の実施形態等について図面を参照しながら説明する。なお、説明は以下の順序で行う。
＜１．第１の実施形態＞
＜２．第１の変形例＞
＜３．第２の変形例＞
なお、以下に説明する実施形態等は本開示の好適な具体例であり、本開示の内容がこれらの実施形態に限定されるものではない。
【００２２】
＜１．第１の実施形態＞
図１は、実施形態に係る情報処理システムの構成を説明するための図である。本実施形態の情報処理システムは、データ収集装置２、センサ３１、制御対象装置３２、サーバ４（「データ確認装置」に相当）、出力部５、管理台帳６を有して構成されている。現在、ＩｏＴ（Internet of Things）と呼ばれる技術が普及しつつある。ＩｏＴは、物のインターネットと呼ばれることもあり、身の回りのあらゆるものをインターネットに接続することで、物の相互制御を実現することが可能である。
【００２３】
ＩｏＴでは、物にセンサを設けることで、物の状況、あるいは、物の周囲の状況を判定することが必要になる。また、ＩｏＴでは、制御対象装置３２を介して各種制御を行うことがある。本実施形態は、制御対象装置３２を使用して、ある系に対する制御を行い、その系に関する各種情報（データ）をセンサ３１で計測することを、１つの形態として想定している。すなわち、ある系についてみると、制御対象装置３２によってデータ（入力データ）が入力され、センサ３１によってデータ（出力データ）が計測される。このようなセンサ３１、制御対象装置３２を使用するＩｏＴ技術としては、例えば、以下で説明する事例が考えられる。
【００２４】
（１）スマート農業
ａ．広大な農場では、散布装置で農薬、肥料を散布し、散布された土壌の状態を計測する土壌センサを使用することが考えられる。土壌センサは、例えば、地中や水中のＥＣ（電気伝導度）、ｐＨ（酸性度）、地中温度、含水率といった環境情報を計測するものであって、土壌センサによって環境情報を計測し、散布装置による農薬、肥料の散布量を適切に管理することで、収穫量の拡大等を図ることが可能である。
【００２５】
（２）ドローン
ａ．プロペラを使用して、遠隔操縦あるいは自動操縦で飛行を行うドローンが各種分野で使用されている。制御対象装置３２として、プロペラを回転させる駆動部（モータ）とし、ドローンに搭載されたセンサ３１で、機器の動作状況、飛行状況等をセンシングし、動作プログラムとの整合性を確認し、安全、安定した飛行を行うことが考えられる。
ｂ．（１）で説明したスマート農業では、ドローンを使用した農薬散布、育成状況の監視などを行うことが考えられる。例えば、ドローンの農薬散布時に設定した飛行コースとＩＭＵ（Inertial Measurement Unit：慣性計測装置）、土壌センサの農薬による土壌変化の測定結果とを組み合わせることでさらに整合性を高めることができる。
【００２６】
（３）自動運転での実装
ａ．現在、自動車の運転の自動化（自動運転）の開発が進められている。このような自動運転では、自動車周囲の状況、あるいは、自動車の状態を検出するため、多数のセンサが設けられることになる。自動車に搭載された各種センサに適用することで、自動運転の制御命令との整合性を確認することが可能となる。
【００２７】
センサ３１は、収集した各種データをインターネット等の通信網Ｃに送信するため、データ収集装置２に接続されている。センサ３１とデータ収集装置２の接続形態は、有線であってもよいし、無線であってもよい。図１では、センサ３１とデータ収集装置２は、１対１で接続されているが、このような形態のみならず、１つのデータ収集装置２に複数のセンサ３１が接続される形態であってもよい。
【００２８】
制御対象装置３２は、データ収集装置２に有線、もしくは、無線で接続されている。本実施形態では、データ収集装置２から制御対象装置３２に送信される情報が、ある系に対する入力データとなり、当該系の各種情報をセンサ３１で計測することで、出力データが得られることになる。
【００２９】
データ収集装置２は、制御部２１、乱数発生部２２、送信部２３を有して構成されている。制御部２１は、センサ３１、制御対象装置３２、乱数発生部２２、送信部２３に接続されており、これらを統括して制御を行う。乱数発生部２２は、時刻系列Ｔとなる乱数を発生する。なお、乱数発生部２２（「乱数発生部」に相当）は、サーバ４側に設けられた乱数発生部４２と同一の乱数を発生することが可能である。したがって、サーバ４側の乱数発生部４２は、データ収集装置２で発生させた時刻系列Ｔを再現して生成することが可能となっている。
【００３０】
送信部２３は、制御部２１で形成した各種情報を通信網Ｃに送信することが可能である。本実施形態では、通信網Ｃ上の管理台帳６に情報を書き込むこととしている。この管理台帳６は、特定の装置に記憶される形態であってもよいが、ブロックチェーンで使用されるように分散した装置に記憶される形態であってもよい。
【００３１】
サーバ４は、管理台帳６を受信することで、センサ３１で計測したデータの取得、当該データによる学習処理、そして、学習結果に基づく異常検出処理等を行うことが可能となっている。サーバ４は、制御部４１、乱数発生部４２、受信部４３を有して構成されている。受信部４３は、通信網Ｃに接続されており、通信網Ｃから管理台帳を受信することが可能となっている。乱数発生部４２（「検証用乱数発生部」に相当）は、データ収集装置２側の乱数発生部２２と同じ乱数を発生することが可能である。このように、本実施形態の乱数発生部２２、４２は、全くランダムな値を出力するのではないため、疑似乱数発生部ということもできる。発生した乱数は、乱数発生部２２と同じ時刻系列Ｔであるが、ここでは、それと区別するため検証用時刻系列Ｔ’と呼ぶことにする。
【００３２】
サーバ４の制御部４１は、受信した管理台帳６に基づいて、学習処理と、異常検出処理を実行する。なお、本実施形態では、１つのサーバ４で学習処理と、異常検出処理（後で説明する学習・異常検出処理）を行うこととしているが、学習処理と、異常検出処理は、それぞれ異なるサーバで行うこととしてもよい。学習処理と、異常検出処理の結果は、制御部４１に接続された出力部５（例えば、表示部、プリンタ等）に出力されることが可能である。
【００３３】
以上、図１で説明した情報処理システム１を使用して、制御対象装置３２の制御、センサ３１のデータ収集処理、収集したデータによる学習処理、収集したデータの異常検出処理が実行される。本実施形態では、データ収集装置２において、データ収集処理が実行され、サーバ４において、学習・異常検知処理を実行することとしている。
【００３４】
図２は、実施形態に係るデータ収集装置２で実行されるデータ収集処理を示すフロー図である。また、図３は、実施形態に係るデータ収集装置で実行されるデータ収集処理を説明するための図である。
【００３５】
データ収集処理では、まず、乱数発生部２２によって、１期間分の時刻系列Ｔが発生される（Ｓ１０１）。図３は、データ収集処理を説明する図であって、横軸に時間の経過を取っている。図３中、例えば、最初の１期間においては、ｔ_1，ｔ_3，ｔ_4，ｔ_7…ｔ_nという時刻系列Ｔが乱数発生部２２で発生される。各ｔ_1，ｔ_3，ｔ_4，ｔ_7…ｔ_n中、添字１，３，７，…ｎは、時刻を示す数値であって、そのタイミング、時間間隔はランダムな値となっている。
【００３６】
次に、制御部２１は、時刻系列Ｔに基づいて、データ収集時刻の到来を監視し（Ｓ１０２）、データ収集時刻が到来した場合（Ｓ１０２：Ｙｅｓ）、制御対象装置３２を制御する値、すなわち、ある系に対する入力データ、及び、センサ３１を使用して測定した、ある系からの出力データを取得する（Ｓ１０３）。例えば、農場のハウス栽培で使用される暖房装置において、温度調整量を入力データ（操作データ）とし、ハウス内に設置された温度計の値を出力データ（計測データ）とすること等が考えられる。なお、測定結果としては、入力データ、出力データの何れか一方であってもよい。あるいは、入力データ、あるいは、出力データが複数存在することとしてもよい。
【００３７】
例えば、時刻ｔ_1が到来した場合、制御部２１は、制御対象装置３２の制御値である入力データ（操作データ）ａ_1、センサ３１で計測した出力データ（計測データ）ｍ_1を取得する。次に、１期間内において、データ収集時刻が完了していない場合（Ｓ１０４：Ｙｅｓ）、Ｓ１０２に戻って、次のデータ収集時刻の到来を待つ。Ｓ１０２〜Ｓ１０４を繰り返し実行することで、図３に示すように、最初の１期間分の時刻系列Ｔ（ｔ_1，ｔ_3，ｔ_4，ｔ_7…ｔ_n）に対応して、入力データ（操作データ）と出力データ（計測データ）の組からなる測定系列Ｍ_Ｔ（（ａ_1，ｍ_1），（ａ_3，ｍ_3），（ａ_4，ｍ_4），（ａ_7，ｍ_7），…（ａ_n，ｍ_n））が収集される。
【００３８】
１期間におけるデータ収集が完了した場合（Ｓ１０４：Ｙｅｓ）、時刻系列Ｔのハッシュ化（Ｓ１０５）、及び、測定系列Ｍ_Ｔのハッシュ化（Ｓ１０６）が実行される。ここでハッシュ化とは、時刻系列Ｔ（あるいは測定系列Ｍ_Ｔ）の値を、所定の関数（ハッシュ関数）に入力することで、ハッシュ値を得ることをいう。したがって、時刻系列Ｔをハッシュ化（Ｓ１０５）することで、第１ハッシュ値Ｈ１（Ｔ）が得られ、測定系列Ｍ_Ｔをハッシュ化（Ｓ１０６）することで、第２ハッシュ値Ｈ２（Ｍ_Ｔ）が得られる。
【００３９】
その後、測定系列Ｍ_Ｔ，第１ハッシュ値Ｈ１（Ｔ），第２ハッシュ値Ｈ２（Ｍ_Ｔ）は通信網Ｃに送信され、管理台帳６に登録される（Ｓ１０７）。以上で１期間分のデータ収集処理が完了することになる。１期間分のデータ収集処理が完了すると、次の１期間分のデータ収集処理が開始される。図３の場合、時刻系列Ｔ（ｔ_n＋2，ｔ_n＋3，ｔ_n＋4，ｔ_n＋8…ｔ_m）について、測定系列Ｍ_Ｔ（（ａ_n＋2，ｍ_n＋2），（ａ_n＋3，ｍ_n＋3），（ａ_n＋4，ｍ_n＋4），（ａ_n＋8，ｍ_n＋8），…（ａ_p，ｍ_p））のデータ取得、ハッシュ化等の各種処理が実行される。
【００４０】
なお、データ収集処理で使用する１期間は、適宜に定めることが可能である。乱数発生部２２では、各期間において、同じ個数のデータ収集時刻を生成することとしてもよい。この場合、各期間の時間長は必ずしも一定でなくてもよい。あるいは、各期間の時間長を同一としてもよい。この場合、データ収集時刻は必ずしも同じ個数でなくてもよい。あるいは、データ収集時刻の個数、及び、各期間の時間長をランダムとすることとしてもよい。
【００４１】
次に、管理台帳６に登録された各種情報、すなわち、測定系列Ｍ_Ｔ，第１ハッシュ値Ｈ１（Ｔ）、第２ハッシュ値Ｈ２（Ｍ_Ｔ）の使用について説明する。本実施形態では、管理台帳６に登録された各種情報は、サーバ４で使用される。サーバ４では、測定系列Ｍ_Ｔを参照することで、センサ３１による計測結果を確認し、各種処理あるいは制御等に使用することが可能である。また、本実施形態では、第１ハッシュ値Ｈ１（Ｔ）、第２ハッシュ値Ｈ２（Ｍ_Ｔ）を使用することで、測定系列Ｍ_Ｔが改ざんやデータ破壊等の無い適切なデータであることを確認することが可能である。また、適切な測定系列Ｍ_Ｔを使用して学習を行うことで、学習結果に基づく異常検出を行うことも可能となっている。
【００４２】
図４は、実施形態に係るサーバ４で実行される学習・異常検知処理を示すフロー図である。サーバ４は、通信網Ｃを介して管理台帳６を受信する（Ｓ２０１）。そして、受信した管理台帳６から１期間分の測定系列Ｍ_Ｔ，第１ハッシュ値Ｈ１（Ｔ）、第２ハッシュ値Ｈ２（Ｍ_Ｔ）を取得する（Ｓ２０２）。一方、サーバ４内の乱数発生部４２は、処理対象となっている期間における検証用時刻系列Ｔ'を生成する（Ｓ２０３）。
【００４３】
なお、前述したように、サーバ４の乱数発生部４２は、ある期間について、データ収集装置２の乱数発生部２２と同じ時刻系列Ｔを出力することが可能となっている。例えば、乱数発生部２２、２４は動作開始してから、同じテーブルを参照する、あるいは、同じアルゴリズムを使用することで同じ系列の乱数、すなわち、時刻系列Ｔを発生することができる。本実施形態では、データ収集装置２側の乱数発生部２２の出力を時刻系列Ｔ、サーバ４側の乱数発生部４２の出力を検証用時刻系列Ｔ’と呼んでいるが、ある同じ期間におおける時刻系列Ｔと検証用時刻系列Ｔ’は同一となる。したがって、受信した測定系列Ｍ_Ｔと、生成した検証用時刻系列Ｔを付き合わせることで、正確な測定データが完成することになる。
【００４４】
検証用時刻系列Ｔ’を生成後、当該検証用時刻系列Ｔ’をハッシュ化することで、検証用第１ハッシュ値Ｈ１（Ｔ’）が得られる（Ｓ２０４）。さらに本実施形態では、管理台帳６から取得した測定系列Ｍ_Ｔ'のハッシュ化を行い、検証用第２ハッシュ値Ｈ２（Ｍ_Ｔ'）を得る（Ｓ２０５）。ここでは、管理台帳６から取得した測定系列Ｍ_Ｔ'にはダッシュ「'」を付し、測定時に取得した測定系列Ｍ_Ｔと区別している。また、検証用時刻系列Ｔ'、管理台帳から取得した測定系列Ｍ_Ｔのハッシュ化に使用するハッシュ関数は、それぞれ、データ収集処理中、時刻系列Ｔに対するハッシュ化（Ｓ１０５）、測定系列Ｍ_Ｔに対するハッシュ化（Ｓ１０６）で使用したハッシュ関数と同一である。
【００４５】
そして、管理台帳６から取得（受信）した第１ハッシュ値Ｈ１（Ｔ）と検証用第１ハッシュ値Ｈ１（Ｔ’）を比較することで、データの確認が行われる（Ｓ２０６）。通信網Ｃ等において、改ざんやデータ破壊等が発生していなければ、第１ハッシュ値Ｈ１（Ｔ）と検証用第１ハッシュ値Ｈ１（Ｔ’）は一致する。一方、改ざんやデータ破壊等が発生している場合、第１ハッシュ値Ｈ１（Ｔ）と検証用第１ハッシュ値Ｈ１（Ｔ’）は異なることになり、管理台帳上の測定系列Ｍ_Ｔのデータ自体の真偽性も疑う必要が生じる。その場合、処理対象となっている期間のデータは適切でないことになる。第１ハッシュ値Ｈ１（Ｔ）と検証用第１ハッシュ値Ｈ１（Ｔ’）が一致している場合（Ｓ２０６：Ｙｅｓ）、次の確認処理へと進む。一方、第１ハッシュ値Ｈ１（Ｔ）と検証用第１ハッシュ値Ｈ１（Ｔ’）が一致していない場合（Ｓ２０６：Ｎｏ）、異常通知（Ｓ２１２）が実行される。
【００４６】
異常通知（Ｓ２１２）は、出力部５へのアラート出力を行う形態の他、異常と判断された当該期間のデータに異常であるフラグを付与する等、各種形態を使用することが可能である。なお、本実施形態では、異常通知（Ｓ２１２）の後、Ｓ２０２に戻って、管理台帳６内の各種データ確認を行うこととしているが、異常検知された場合には、その後の各種データ確認を中断することとしてもよい。
【００４７】
次に、管理台帳６から取得（受信）した第２ハッシュ値Ｈ２（Ｍ_Ｔ）と検証用第２ハッシュ値Ｈ２（Ｍ_Ｔ'）を比較することで、データの確認が行われる（Ｓ２０７）。第１ハッシュ値Ｈ１（Ｔ）の場合と同様、通信網Ｃ等において、改ざんやデータ破壊等が発生していなければ、第２ハッシュ値Ｈ２（Ｍ_Ｔ）と検証用第２ハッシュ値Ｈ２（Ｍ_Ｔ'）は一致する。一方、改ざんやデータ破壊等が発生している場合、第２ハッシュ値Ｈ２（Ｍ_Ｔ）と検証用第２ハッシュ値Ｈ２（Ｍ_Ｔ'）は異なることになり、管理台帳上の測定系列Ｍ_Ｔのデータ自体の真偽性も疑う必要が生じる。第２ハッシュ値Ｈ２（Ｍ_Ｔ）と検証用第２ハッシュ値Ｈ２（Ｍ_Ｔ'）が一致している場合（Ｓ２０７：Ｙｅｓ）、次の処理へと進む。一方、第２ハッシュ値Ｈ２（Ｍ_Ｔ）と検証用第２ハッシュ値Ｈ２（Ｍ_Ｔ'）が一致していない場合（Ｓ２０７：Ｎｏ）、異常通知（Ｓ２１２）が実行される。
【００４８】
第１ハッシュ値Ｈ１（Ｔ）、第２ハッシュ値Ｈ２（Ｍ_Ｔ）、共に一致している場合（Ｓ２０７：Ｙｅｓ）、管理台帳６から受信した測定系列Ｍ_Ｔをモデルと比較し、データ以上についての確認を行う。ここで、モデルとは、改ざんやデータ破壊が行われていないと判定された測定系列Ｍ_Ｔによって形成された情報であって、例えば、測定系列Ｍ_Ｔの同時分布ｑ（ａ，ｍ）〜Ｎ（ａ，ｍ）／ΣＮ（ａ'，ｍ'）を使用することが考えられる。このモデルとしての同時分布において、管理台帳６から受信した測定系列Ｍ_Ｔが、分布内の所定範囲（例えば、３σ）を超えている場合、データ異常ありと判断され（Ｓ２０９：Ｙｅｓ）、異常通知が行われる（Ｓ２１２）。
【００４９】
一方、測定系列Ｍ_Ｔをモデルと比較した結果、データ異常が無い場合（Ｓ２０９：Ｎｏ）、管理台帳６から受信した測定系列Ｍ_Ｔによる学習、すなわち、当該測定系列Ｍ_Ｔを使用してモデル形成が実行される。例えば、モデルとして上述する同時分布を使用する場合、これまでに形成していたモデルに、今回受信した測定系列Ｍ_Ｔを加えることで、新たなモデルが形成されることになる。
【００５０】
測定系列Ｍ_Ｔによる学習の実行後、管理台帳中、次の期間がある場合（Ｓ２１１：Ｙｅｓ）には、Ｓ２０２に戻り、次の期間に対するデータ確認等の処理が実行される。一方、次の期間が無い場合（Ｓ２１１：Ｎｏ）、学習・異常検知処理を終了する。
【００５１】
以上説明したように、本実施形態では、第１ハッシュ値Ｈ１（Ｔ）を使用した第１のデータ確認を行うこととしている。このような構成により、センサ３１、制御対象装置３２における時刻系列Ｔは、乱数発生部２２によってランダムに生成されているので、外部からの攻撃者はどの時刻のデータを正常値にする必要があるのかが分からない。一方、適切な使用者であるサーバ４側では、乱数発生部４２を共有しているため、時刻系列Ｔを確認することが可能である。
【００５２】
また、本実施形態では、時刻系列Ｔは、データ収集装置２、サーバ４のそれぞれで発生させるため、データ収集装置２から時刻系列Ｔを送信する必要は無い。したがって、データ収集装置２は、測定に関する全データを送信する必要は無いため、通信容量の削減、管理台帳のデータ量を削減する等により、コスト低減を図ることが可能となる。
【００５３】
また、本実施形態では、データ送信側であるデータ収集装置２に乱数発生部２２を搭載し、データ受信側であるサーバ４に乱数発生部４２を搭載するという簡易な構成で、確証の高いデータ取得、確認を行うことが可能となる。また、管理台帳６を使用して記録、管理を行うため、事後検証も容易に行うことが可能となっている。
【００５４】
さらに、本実施形態では、第２ハッシュ値Ｈ２（Ｍ_Ｔ）を使用した第２のデータ確認を行うことで、サーバ４で受信した測定系列Ｍ_Ｔに改ざんやデータ破壊が無いことを二重に確認することが可能となっている。また、改ざんやデータ破壊が無いと判定された測定系列Ｍ_Ｔを使用して測定系列Ｍ_Ｔの学習を行うことで、確証の高いモデルを使用して、測定系列Ｍ_Ｔに異常が無いか否かを判定することが可能となっている。特に、測定系列Ｍ_Ｔとして、ある系に対する入力データ、出力データの組を使用する場合、測定系列Ｍ_Ｔは、一定の関係を有するデータとなることが考えられ、学習によるモデル形成、並びに、モデルを使用した異常判定の有効性は高いものとなる。
【００５５】
なお、本実施形態では、サーバ４において、学習処理と異常検知処理を同時に行うこととしているが、学習処理と異常検知処理は、異なるタイミングで行うこととしてもよい。あるいは、異なるサーバ４を使用して行うこととしてもよい。
【００５６】
また、本実施形態における乱数発生部２２、４２、そして、制御部２１、４１で実行されるハッシュ化処理については、耐タンパー性を持たせることが好ましい。耐タンパー性は、暗号鍵による暗号化等、ソフトウエアによる秘匿性のみならず、特殊なパッケージにＩＣを封入する等、ハードウエアによる秘匿性の向上を図ることが考えられる。
【００５７】
なお、実施形態において、データ収集装置２は、サーバ４がその機能を持つようにし、同一のサーバで行われてもよいし、データ収集装置２がサーバでもよい（情報処理装置であってもよい。）。
【００５８】
本開示の少なくとも実施形態によれば、通信網を介してデータを送信する際、受信したデータの確認をすることが可能となる。なお、本明細書に記載された効果はあくまで例示であって限定されるものではなく、また他の効果があってもよい。また、例示された効果により本開示の内容が限定して解釈されるものではない。
【００５９】
なお、本実施形態で説明した情報処理システム１は、以下に説明する事例（変形例）としても使用することが可能である。
【００６０】
＜２．第１の変形例＞
例えば、仮想通貨ｅｔｈｅｒを発行するｅｔｈｅｒｅｕｍはチューリング完全な基盤を提供している。このようなスマートコントラクト（契約のスムーズな検証、執行、実行、交渉を意図したコンピュータプロトコルでブロックチェーン及び暗号通貨の用途の一つ）を利用して、異常検知を外部ユーザ（外部企業、あるいは、外部の個人）に委託してもよい。
【００６１】
ここで、ｅｔｈｅｒｅｕｍを含むブロックチェーン技術について説明しておく。「ブロックチェーン」は単なるデータ構造（ハッシュ関数によるデータの連なり構造）そのものを指す用語である。（ブロックチェーンという用語自体は、ビットコインが登場してから使われ始めた名称であって、元々は「ハッシュ・チェーン」と呼ばれたデータ構造のことをいう）。ただし最近では、ビットコインの中核技術で利用されたことで、用語の使い方が曖昧になっており、分散型共有台帳（a distributed shared ledger）もしくは台帳の作成方法（コンセンサス・アルゴリズム等）も含んだものを指す傾向がある。図５は、ブロックチェーン技術の分類を示す表である。図５の表に示されるように、分散型台帳の管理方法は、三種類のタイプ（管理者なし、複数組織、単一組織）に分類される。
【００６２】
管理者なしの分類に所属する仮想通貨は、分散型アプリケーションの１つであって、ブロックチェーン技術の応用である。ブロックチェーンがデータベース層の技術とするならば、仮想通貨はアプリケーション層に位置するといえる。例えばｂｉｔｃｏｉｎやｅｔｈｅｒがある。「ｅｔｈｅｒｅｕｍ」は、スマートコントラクトを実行する分散型アプリケーションを構築するためのプラットフォームの名称であり、関連するオープンソース・ソフトウェア・プロジェクトの総称である。このｅｔｈｅｒｅｕｍはパブリック型ブロックチェーンに分類される。ｅｔｈｅｒｅｕｍは、ｂｉｔｃｏｉｎがいわば「通貨の台帳」を提供していたことに対して（ｅｔｈｅｒという通貨の台帳と共に）「プログラムの台帳」を提供している。
【００６３】
本開示におけるｅｔｈｅｒの利用は、具体的には、データ収集における管理台帳６への登録をｅｔｈｅｒで行い、異常検知については、ハッシュ化とハッシュ値の確認を除いた処理を、外部ユーザに行わせ、異常発見時には通報させる契約とすることが考えられる。外部ユーザに対しては、通常の監視業務と、異常を発見した場合に報酬を払うものとする。また、異常発見時の報酬は通常の監視業務より多く設定する。なお、異常発見時には、ｅｔｈｅｒ側では、その異常発見が正しいものかを確認し、異常発見が正しい場合のみ、異常発見に対する報酬を支払うこととしてもよい。
【００６４】
なお、第１の変形例では、スマートコントラクトを使用した一形態として「ｅｔｈｅｒ」を使用した形態について説明を行ったが、スマートコントラクトを使用する形態であれば、他の形態（プラットフォーム）を使用することも可能である。また、第１の変形例で説明した外部ユーザへの一部処理委託は、スマートコントラクトに限られるものでは無く、図１等で説明した実施形態についても適用することが可能である。
【００６５】
＜３．第２の変形例＞
図１では、データ収集装置２とサーバ４間で情報処理システム１を構成することを説明したが、サーバ４に代え、複数のデータ収集装置２間で、互いにデータの確認を行うことで、データ以上の可能性を低減することとしてもよい。例えば、データ収集装置２が光源と光センサを備えている場合は、データ収集装置２間で、互いの光源を感知し合うことで互いのデータの整合性を高めることができる。また、相互のローカルな通信機能がある場合は、互いのデータのやり取り、もしくはチャレンジ＆レスポンスの結果等を測定データとして送信してもよい。
【００６６】
このように、データ収集装置２にデータ発信機能、及び、受信機能がある場合は、互いにデータをやり取りして整合性を高めることができる。
【００６７】
本開示は、装置、方法、プログラム、システム等により実現することもできる。例えば、上述した実施形態で説明した機能を行うプログラムをダウンロード可能とし、実施形態で説明した機能を有しない装置が当該プログラムをダウンロードすることにより、当該装置において実施形態で説明した制御を行うことが可能となる。本開示は、このようなプログラムを配布するサーバにより実現することも可能である。また、各実施形態、変形例で説明した事項は、適宜組み合わせることが可能である。
【００６８】
本開示は、以下の構成も採ることができる。
（１）
取得タイミングを規定した時刻系列を発生させる乱数発生部と、
前記乱数発生部で発生させた時刻系列で規定されるタイミングで、データを取得するデータ取得部と、
前記乱数発生部で発生した時刻系列をハッシュ化するハッシュ化部と、
前記データ取得部で取得したデータと、ハッシュ化された時刻系列を送信する送信部と、を備える
情報処理装置。
（２）
データ収集装置から送信されたデータと、データ収集タイミングを規定した時刻系列をハッシュ化したハッシュ化情報を受信する受信部と、
前記データ収集装置で発生させた時刻系列と同じ検証用時刻系列を発生させる検証用乱数発生部と、
前記検証用乱数発生部で発生させた検証用時刻系列をハッシュ化する検証用ハッシュ化部と、
受信したハッシュ化情報と、ハッシュ化された検証用時刻系列を比較することで、受信したデータの確認を行う確認部を備える
情報処理装置。
（３）
前記データ取得部で取得するデータは、センサで計測したデータを含む
（１）または（２）に記載の情報処理装置。
（４）
前記データ取得部で取得するデータは、制御対象部を制御するデータを含む
（１）から（３）の何れか１つに記載の情報処理装置。
（５）
前記データ取得部で取得するデータは、センサで計測したデータと、制御対象部を制御するデータを含み、
前記制御対象部は、前記センサで計測する系に対する制御を行う
（１）から（４）の何れか１つに記載の情報処理装置。
（６）
前記送信部は、前記データ取得部で取得したデータと、ハッシュ化された時刻系列を管理台帳に送信する
（１）から（５）の何れか１つに記載の情報処理装置。
（７）
前記管理台帳はブロックチェーンである
（６）の何れか１つに記載の情報処理装置。
（８）
前記データ確認部は、前記確認部で確認が行われたデータを使用して、モデルを形成する学習部を備える
（１）から（７）の何れか１つに記載の情報処理装置。
（９）
前記データ確認部は、前記学習部で形成されたモデルを使用して、受信したデータの確認を行う
（８）に記載の情報処理装置。
（１０）
前記送信部により、前記データ取得部で取得したデータと、ハッシュ化された時刻系列とが他の情報処理装置に送信される
（１）に記載の情報処理装置。
（１１）
取得タイミングを規定した時刻系列を発生させる乱数発生処理と、
前記乱数発生処理で発生させた時刻系列で規定されるタイミングで、データを取得するデータ取得処理と、
前記乱数発生処理で発生した時刻系列をハッシュ化するハッシュ化処理と、
前記データ取得処理で取得したデータと、ハッシュ化された時刻系列を送信する送信処理と、を含む
情報処理方法。
（１２）
データ収集処理と、前記データ収集処理と通信可能なデータ確認処理とを含み、
前記データ収集処理は、
取得タイミングを規定した時刻系列を発生させる乱数発生処理と、
前記乱数発生処理で発生させた時刻系列で規定されるタイミングで、データを取得するデータ取得処理と、
前記乱数発生処理で発生した時刻系列をハッシュ化するハッシュ化処理と、
前記データ取得処理で取得したデータと、ハッシュ化された時刻系列を送信する送信処理と、を含み、
前記データ確認処理は、
前記送信処理から送信されたデータと、ハッシュ化された時刻系列を受信する受信処理と、
前記乱数発生処理で発生させた時刻系列と同じ検証用時刻系列を発生させる検証用乱数発生処理と、
前記検証用乱数発生処理で発生させた検証用時刻系列をハッシュ化する検証用ハッシュ化処理と、
ハッシュ化された時刻系列と、ハッシュ化された検証用時刻系列を比較することで、受信したデータの確認を行う確認処理を含む
情報処理装置における情報処理方法。
（１３）
前記ハッシュ化処理は、取得したデータをハッシュ化し、
前記送信処理は、ハッシュ化されたデータを送信し、
前記検証用ハッシュ化処理は、受信したデータをハッシュ化し、
前記確認処理は、前記ハッシュ化処理でハッシュ化されたデータと、前記検証用ハッシュか処理でハッシュ化されたデータを比較することで、受信したデータの確認を行う
（１２）に記載の情報処理方法。
（１４）
取得タイミングを規定した時刻系列を発生させる乱数発生処理と、
前記乱数発生処理で発生させた時刻系列で規定されるタイミングで、データを取得するデータ取得処理と、
前記乱数発生処理で発生した時刻系列をハッシュ化するハッシュ化処理と、
前記データ取得処理で取得したデータと、ハッシュ化された時刻系列を送信する送信処理と、を実行可能とする
情報処理プログラム。
（１５）
データ収集装置から送信されたデータと、データ収集タイミングを規定した時刻系列をハッシュ化したハッシュ化情報を受信する受信処理と、
前記データ収集装置で発生させた時刻系列と同じ検証用時刻系列を発生させる検証用乱数発生処理と、
前記検証用乱数発生処理で発生させた検証用時刻系列をハッシュ化する検証用ハッシュ化処理と、
受信したハッシュ化情報と、ハッシュ化された検証用時刻系列を比較することで、受信したデータの確認を行う確認処理を、情報処理装置に実行させる
（１４）に記載の情報処理プログラム。
【符号の説明】
【００６９】
１：情報処理システム
２：データ収集装置
３：添字
４：サーバ
５：出力部
６：管理台帳
７：添字
２１：制御部
２２：乱数発生部
２３：送信部
２４：乱数発生部
３１：センサ
３２：制御対象装置
４１：制御部
４２：乱数発生部
４３：受信部
【図１】
2020120235.tif 000003
【図２】
2020120235.tif 000004
【図３】
2020120235.tif 000005
【図４】
2020120235.tif 000006
【図５】
2020120235.tif 000007