(57)【要約】      （修正有）【課題】送受信毎に更新した鍵データを用いて通信データを暗号化及び復号するデータ送信元装置を提供する。【解決手段】データ送信元装置１０は、時系列データ２１０を有するデータ送信先装置２０と接続され、最新値を暗号化した暗号化済み最新値をデータ送信先装置２０に送信する。データ送信元装置１０は、暗号化する最新値１１２に対する前回値１１３および前々回値１１４に基づいて暗号化に用いる暗号化鍵４２０を作成する鍵生成部１０２と、暗号化鍵４２０を用いて、最新値１１２を暗号化して暗号化済み最新値４４０を作成する暗号化部１０４と、暗号化済み最新値４４０を送信する送信部１０５とを有し、暗号化済み最新値４４０を送信する毎に暗号化鍵生成部１０２が毎回暗号化鍵を作成する。【選択図】図４
2020036145.tif 000002
【特許請求の範囲】
【請求項１】
過去データを有するデータ送信先装置と接続され、最新データを暗号化した暗号化済み最新データを前記データ送信先装置に送信するデータ送信元装置であって、
送信するデータを時系列で蓄積する時系列データ記憶部と、
前記時系列データ記憶部に蓄積され過去に送信された前記過去データに基づいて暗号化に用いる暗号化鍵を作成する暗号化鍵生成部と、
前記暗号化鍵生成部により作成された前記暗号化鍵を用いて、前記暗号化済み最新データを作成する暗号化部と、
前記暗号化部で作成した前記暗号化済み最新データを前記デ−タ送信先装置に送信する送信部と、
を有するデータ送信元装置。
【請求項２】
前記暗号化部は、
更に、暗号化後の完全性を検証するための認証タグを作成し、
前記送信部は、
更に、前記認証タグを前記データ送信先装置に送信する、請求項１に記載のデータ送信元装置。
【請求項３】
前記暗号化鍵生成部は、
暗号化する前記最新データに対する前記時系列データ記憶部に蓄積した過去データの内、第１のランダム算出部を用いて所定の数だけ過去データを取得し、該過去データに基づいて暗号化に用いる前記暗号化鍵を作成する、請求項１又は２に記載のデータ送信元装置。
【請求項４】
前記暗号化鍵作成部は、
暗号化する前記最新データに対する前記時系列データ記憶部に蓄積した過去データの内、前記最新データが格納された系列から所定の数だけ過去にさかのぼり前記所定の数だけ過去データを取得し、該過去データに基づいて暗号化に用いる前記暗号化鍵を作成する、請求項１または２に記載のデータ送信元装置。
【請求項５】
前記暗号化鍵作成部は、
前記所定の数だけ過去データが取得できなかった場合、取得できた過去データに基づいて暗号化に用いる前記暗号化鍵を作成する、請求項３または４に記載のデータ送信元装置。
【請求項６】
前記暗号化鍵生成部は、
識別コードが異なる複数の最新データを暗号化してまとめて１回で送信する場合、前記複数の最新データの内、第２のランダム算出部を用いて最新データを１つだけ選定し、選定した該最新データに対する前記過去データに基づいてまとめて１回で送信する複数の最新データの暗号化に共通で用いる前記暗号鍵を１つだけ作成する、
請求項１乃至５の何れか一項に記載のデータ送信元装置。
【請求項７】
前記暗号化鍵生成部は、
識別コードが異なる複数の最新データを暗号化してまとめて１回で送信する場合、前記複数の最新データのそれぞれに対する前記過去データに基づいて暗号化に用いる前記暗号化鍵をそれぞれ作成する、
請求項１乃至５の何れか一項に記載のデータ送信元装置。
【請求項８】
過去データと最新データを有するデータ送信元装置と接続されるデータ送信先装置において、
前記最新データを暗号化した暗号化済み最新データを前記データ送信元装置から受信する受信部と、
過去に受信した前記最新データを前記過去データとして時系列で蓄積する時系列データ記憶部と、
前記時系列データ記憶部に蓄積された前記過去データに基づいて前記暗号化済み最新データの復号に用いる復号鍵を作成する復号鍵生成部と、
前記復号鍵を用いて、前記暗号化済み最新データを復号して最新データを作成する復号部と、
前記復号部により作成された前記最新データを前記過去データとして前記時系列データ記憶部に格納する格納部と、
を有するデータ送信先装置。
【請求項９】
前記受信部は、
更に、前記暗号化済み最新データの完全性を検証するための第１の認証タグを前記データ送信元装置から受信し、
前記復号部は、
更に、復号した前記最新データから第２の認証タグを作成し、該第２の認証タグと前記前記第１の認証タグとを用いて、前記暗号化済み最新データの完全性を検証する、請求項８に記載のデータ送信先装置。
【請求項１０】
前記復号鍵生成部は、
前記データ送信元装置から送信されたパケットのヘッダ情報を基に装置IDマッピング情報からデータ送信元装置を特定し、前記ヘッダ情報を基に前記時系列データ記憶部から暗号化済み最新データに対する過去データを取得し、取得した該過去データに基づいて復号に用いる復号鍵を作成する、
請求項８又は９に記載のデータ送信先装置。
【請求項１１】
前記復号部は、
前記受信部が前記暗号化済み最新データを受信した後に、前記復号鍵を作成し、
前記復号鍵生成部は、
前記格納部が前記最新データを格納した場合、前記復号鍵を削除する、
請求項８乃至１０の何れか一項に記載のデータ送信先装置。
【請求項１２】
最新データと過去データを有するデータ送信元装置と過去データを有するデータ送信先装置が接続されたデータ処理システムであって、
データ送信元装置は、
送信するデータを時系列で蓄積する時系列データ記憶部と、
前記時系列データ記憶部に蓄積され過去に送信された前記過去データに基づいて暗号化に用いる暗号化鍵を作成する暗号化鍵生成部と、
前記暗号化鍵生成部により作成された前記暗号化鍵を用いて、前記最新データを暗号化した暗号化済み最新データを作成する暗号化部と、
前記暗号化部で作成した前記暗号化済み最新データを前記デ−タ送信先装置に送信する送信部と、
を有し、
データ送信先装置は、
前記暗号化済み最新データを前記データ送信元装置から受信する受信部と、
過去に受信した前記最新データを前記過去データとして時系列で蓄積する時系列データ記憶部と、
前記時系列データ記憶部に蓄積された前記過去データに基づいて復号に用いる復号鍵を作成する復号鍵生成部と、
前記復号鍵生成部により作成された前記復号鍵を用いて、前記暗号化済み最新データを復号して最新データを作成する復号部と、
前記復号部により作成された前記最新データを前記過去データとして前記時系列データ記憶部に格納する格納部と、
を有するデータ処理システム。
【請求項１３】
過去データを有するデータ送信先装置と接続され、最新データを暗号化した暗号化済み最新データを前記データ送信先装置に送信するデータ送信元装置に用いられるデータ処理方法であって、
送信するデータを時系列で蓄積する時系列データ記憶部と、
前記時系列データ記憶部に蓄積され過去に送信された前記過去データに基づいて認証付き暗号化に用いる暗号化鍵を作成する暗号化鍵生成手順と、
前記暗号化鍵生成手順により作成された前記暗号化鍵を用いて、前記最新データを前記認証付き暗号方式により暗号化した前記暗号化済み最新データと該暗号化済み最新データの完全性を検証するための認証タグとを作成する暗号化手順と、
前記暗号化手順で作成した前記暗号化済み最新データと、前記認証タグとを前記デ−タ送信先装置に送信する送信手順と、
を有する、
データ処理方法。
【請求項１４】
過去データと最新データを有するデータ送信元装置と接続されるデータ送信先装置に用いられるデータ処理方法であって、
前記最新データが認証付き暗号方式により暗号化された暗号化済み最新データと、該暗号化済み最新データの完全性を検証するための認証タグとを前記データ送信元装置から受信する受信手順と、
過去に受信した前記最新データを前記過去データとして時系列で蓄積する時系列データ記憶部と、
前記過去データを前記時系列データ記憶部より取得し、取得した前記過去データに基づいて前記暗号化済み最新データの復号に用いる復号鍵を作成する復号鍵生成手順と、
暗号化された最新データに対する前記過去データに基づいて、認証付き暗号に用いる復号鍵を作成する復号鍵作成手順と、
前記復号鍵作成手順により作成された前記復号鍵と、前記受信手順により受信された前記認証タグとを用いて、前記暗号化済み最新データを前記認証付き暗号方式により復号して、最新データを作成し、該最新データから認証タグを作成する復号手順と、
前記復号手順により作成された前記最新データを前記過去データとして前記時系列データ記憶部に格納する格納部手順と、
を有する、
データ処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ送信元装置、データ送信先装置、データ処理システム及びデータ処理方法に関する。
【背景技術】
【０００２】
近年、あらゆるものがネットワークに繋がるようになり、各種制御装置・計測装置、情報家電、携帯電話などの組込機器についてもセキュリティ対策が急務となっている。セキュリティ対策として例えば、不正な手段で第三者が通信データを見られないようにするためにデータを暗号化して通信する技術として暗号化に公開鍵を使い復号に秘密鍵を使う公開鍵暗号方式と、暗号化と復号に共通の共通鍵を使う共通鍵暗号方式が一般的に知られている。また、第三者が通信データの内容を書き換える（改ざんする）場合は公開鍵暗号方式に基づくデジタル署名によって検知することが可能となっている。しかしながら、組込機器はある目的に特化した専用機である場合が多く、汎用PCと比べてCPU（Central Processing Unit）処理能力が低く、メモリ資源も少ないため、公開鍵暗号方式のように高度な演算処理が使えない場合が多い。また、公開鍵暗号方式が使えた場合でも公開鍵および秘密鍵の生産管理ならびにデータ送信元およびデータ送信先の組込機器間での鍵の共有や交換をどうするかなどの課題がある。同様に共通鍵暗号方式においても共通鍵の共有や交換においての課題がある。
【０００３】
組込機器（計測装置）間でデータ送受信するシステムについて電気量をサンプリングし、高調波電流データを算出し、この高調波電流データから鍵データを作成し、送受信毎に鍵データを変更して認証タグデータを作成する技術が知られている（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１３−１９７７５９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１は、高調波電流データを基に鍵データを作成するが、高調波電流データを取得するために通常、実施する計測データのサンプリング周期よりも高速でサンプリングする必要があり鍵データを作成するために高度な演算処理及び負荷がかかってしまう。
【０００６】
本発明の一実施形態は、上記の点に鑑みてなされたものであり、装置が保持するデータを基に鍵データを作成し、送受信毎に更新した鍵データを用いて通信データを暗号化及び復号することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するため、本発明の一実施形態は、過去データを有するデータ送信先装置と接続され、最新データを暗号化した暗号化済み最新データを前記データ送信先装置に送信するデータ送信元装置であって、データを時系列で蓄積する時系列データ記憶部と、前記時系列データ記憶部に蓄積された前記過去データに基づいて暗号化に用いる暗号化鍵を作成する暗号化鍵生成部と、前記暗号化鍵生成部により作成された前記暗号化鍵を用いて、前記暗号化済み最新データを作成する暗号化部と、前記暗号化部で作成した前記暗号化済み最新データを前記デ−タ送信先装置に送信する送信部と、を有し、前記暗号化鍵生成部は、前記最新データを取得する毎に前記暗号化鍵を作成し、前記暗号化部は、前記鍵生成部が前記暗号化鍵を作成する毎に前記最新データを暗号化した前記暗号化済み最新データを作成し、前記送信部は、前記暗号化部で前記暗号化済み最新データを作成する毎に前記暗号化済み最新データを前記デ−タ送信先装置に送信する。
【発明の効果】
【０００８】
本発明の一実施形態によれば、装置間で鍵の受け渡し及び管理を不要とし、装置間で送受信するデータは、毎回、異なる鍵を用いて暗号化したデータであるため、セキュリティ強度の低下を防ぐことが期待できる。
【図面の簡単な説明】
【０００９】
【図１】第一の実施形態に係るデータ処理システムのシステム構成の一例を示す図である。
【図２】第一の実施形態に係るデータ送信元装置のハードウェア構成の一例を示す図である。
【図３】第一の実施形態に係るデータ送信先装置のハードウェア構成の一例を示す図である。
【図４】第一の実施形態に係るデータ処理システムの機能構成の一例を示す図である。
【図５】第一の実施形態に係るデータ送信元装置における過去データ取得から送信までの処理の一例を示すフローチャートである。
【図６】第一の実施形態に係るデータ送信先装置における最新データを格納する処理の一例を示すフローチャートである。
【図７】第一の実施形態に係るデータ送信元装置における暗号化鍵を作成する処理の一例を示すフローチャートである。
【図８】第一の実施形態に係るデータ送信先装置における復号鍵を作成する処理の一例を示すフローチャートである。
【図９】第一の実施形態に係るデータ処理システムの機能構成の一例を示す図である。
【図１０】第一の実施形態に係るデータ処理システムの機能構成の一例を示す図である。
【図１１】第一の実施形態に係るデータ送信先装置における装置ＩＤテーブルの一例を示す図である。
【図１２】第一の実施形態に係るデータ送信元装置における通信パケットの一例を示す図である。
【発明を実施するための形態】
【００１０】
以下、本発明の実施の形態について、図面を参照しながら詳細に説明する。
【００１１】
［第一の実施形態］
＜システム構成＞
まず、本実施形態に係るデータ処理システム１のシステム構成について、図１を参照しながら説明する。図１は、本実施形態に係るデータ処理システム１のシステム構成の一例を示す図である。
【００１２】
図１に示すように、本実施形態に係るデータ処理システム１は、データを送信するデータ送信元装置１０と、データを受信するデータ送信先装置２０とを有し、例えば制御用LAN及びインターネットや電話回線網等のネットワークＮを介して通信可能に接続されている。なお、データ送信先装置１０とデータ送信元装置２０とは、例えばＢｌｕｅｔｏｏｔｈ（登録商標）等の近距離無線通信及び専用の通信線や共通バスを介して通信可能に接続されていても良い。
【００１３】
データ送信元装置１０は、センサ等から各種計測データを定期的または必要時に収集し、収集した時系列で計測データを蓄積するデータ処理装置であり、組込機器に分類される計測装置である。データ送信元装置１０は、最新データ提供処理部１００と、時系列データ記憶部１１０とを有する。
【００１４】
時系列データ記憶部１１０は、各種計測データを時系列に記憶する。以降、時系列に蓄積した計測データの内、最新の計測データを最新データ（＝最新値）１１２、過去の計測データを過去データ１１１と表す。過去データ１１１の内、最新データを収集したタイミングの１つ前に収集した計測データを前回データ（＝前回値）、２つ前に収集した計測データを前々回データ（＝前々回値）と表す。
【００１５】
また、最新データ提供処理部１００は、最新データ１１２を認証付き暗号（ＡＥ：Authenticated Encryption又はＡＥＡＤ：Authenticated Encryption with Associated Data）の手法により暗号化する。そして、最新データ提供処理部１００は、当該暗号化後の最新データ（後述する暗号化済み最新データ及び認証タグ）をデータ送信先装置２０に提供する。このとき、最新データ提供処理部１００は、過去データ１１１に基づき暗号化鍵を作成した上で、当該暗号鍵を用いて最新データ１１２を暗号化する。なお、認証タグは、メッセージ認証符号（ＭＡＣ：Message Authentication Code）とも称され、暗号化後の最新データの完全性（すなわち、当該暗号化後の最新データが改ざん等されていないこと）を検証するための情報である。
【００１６】
データ送信先装置２０は、例えば計測装置、制御装置等の組込機器またはクラウド上にあるサーバである。データ送信先装置２０は、最新データ格納処理部２００と、時系列データ記憶部２１０とを有する。
【００１７】
最新データ格納処理部２００は、データ送信元装置１０から提供された暗号化済み最新データ及び認証タグを、認証付き暗号の手法ににより復号し、最新データ４７０を作成する。このとき、最新データ格納処理部２００は、データ送信元装置２０が有する過去データ１１１に基づき復号鍵を作成した上で、当該復号鍵を用いて暗号化済み最新データを復号する。また、暗号化鍵および復号鍵の作成に使われる過去データは、対象となる最新データに対する過去データから抽出される。データ送信元装置とデータ送信先装置で同じ計測データが使われる（つまり値が同じ）。
【００１８】
このように、本実施形態に係るデータ処理システム１では、データ送信元装置１０が、認証付き暗号の手法を用いて、最新データ１１２をデータ送信先装置２０に提供する。これにより、本実施形態に係るデータ処理システム１では、例えば、悪意のある第三者がネッワーク上で暗号化済み最新データを傍受しても解読を難しくし、さらに、不正な最新データをデータ送信先装置２０に送ったとしても、書き込まれてしまうような事態（すなわち、時系列データ記憶部に不正な最新データを格納してしまうような事態）を防止することができる。
【００１９】
また、このとき、本実施形態に係るデータ処理システム１では、データ送信元装置１０が有する過去データ１１１に基づいて暗号化鍵を作成すると共に、データ送信先装置２０が有する過去データ１１１に基づいて復号鍵を作成する。これにより、本実施形態に係るデータ処理システム１では、データ送信先装置１０及びデータ送信元装置２０は、それぞれ暗号化鍵及び復号鍵を管理しておく必要がない。更に、本実施形態に係るデータ処理システム１では、最新データを取得する度に、暗号化鍵及び復号鍵を更新することができる。
【００２０】
なお、本実施形態は、データ送信先装置２０が有する時系列データ記憶部２１０に最新の計測データを格納する場合について説明するが、これに限られず、最新データは、データ送信元装置１０が、計測データを収集したタイミングで計測データを基に演算した結果である演算値、制御値等についても同様に適用することができる。
【００２１】
＜ハードウェア構成＞
次に、本実施形態に係るデータ送信元装置１０のハードウェア構成について、図２を参照しながら説明する。図２は、本実施形態に係るデータ送信元装置１０のハードウェア構成の一例を示す図である。
【００２２】
図２に示すように、本実施形態に係るデータ処理装置１０は、ＣＰＵ６０１と、ＲＡＭ（Random Access Memory）６０２と、フラッシュＲＯＭ（Read Only Memory）６０３と、外部Ｉ／Ｆ６０４と、通信Ｉ／Ｆ６０５とを有する。これら各ハードウェアは、バス６０７により相互に通信可能に接続されている。  外部Ｉ／Ｆ６０４は、外部装置とのインタフェースである。外部装置には、記録媒体６０４ａ等がある。データ処理装置１０は、外部Ｉ／Ｆ６０４を介して、記録媒体６０４ａの読み取りや書き込みを行うことができる。
【００２３】
記録媒体６０４ａには、例えば、フレキシブルディスク、ＣＤ（Compact Disc）、ＤＶＤ（Digital Versatile Disk）、ＳＤメモリカード（Secure Digital memory card）、ＵＳＢ（Universal Serial Bus）メモリカード等がある。
【００２４】
ＣＰＵ６０１は、フラッシュＲＯＭ６０３からプログラムやデータをＲＡＭ６０２上に読み出し、処理を実行することで、データ送信元装置１０全体の制御や機能を実現する演算装置である。
【００２５】
フラッシュＲＯＭ６０３は、電源を切ってもプログラムやデータを保持することができる不揮発性の半導体メモリである。フラッシュＲＯＭ６０３には、例えば、時系列データ記憶部１１０、最新データ提供処理部１００を実現するプログラム等が格納されている。
ＲＡＭ６０２は、プログラムやデータを一時保持する揮発性の半導体メモリである。
【００２６】
通信Ｉ／Ｆ６０５は、データ送信元装置１０をネットワークＮに接続するためのインタフェースである。データ送信元装置１０は、通信Ｉ／Ｆ６０５を介して、最新データを認証付き暗号の手法により暗号化した最新データ（すなわち、暗号化済み最新データ及び認証タグ）をデータ送信元装置２０に送信することができる。
【００２７】
また、センサ等から各種計測データを定期的または必要時に収集するための通信インターフェース及び収集した計測データを時系列データ記憶部１１０に格納するプログラムを有する（図示せず）。また、プログラムやデータを格納している不揮発性のメモリとして、例えば、ＨＤＤ（Hard Disk Drive）等を備えても良い。プログラムやデータには、最新データ提供処理部１００を実現するプログラム、時系列で計測データを蓄積する時系列データ記憶部等がある。
【００２８】
本実施形態に係るデータ送信元装置１０は、図２に示すハードウェア構成を有することにより、後述する各種処理を実現することができる。
【００２９】
次に、本実施形態に係るデータ送信先装置２０のハードウェア構成について、図３を参照しながら説明する。図３は、本実施形態に係るデータ送信先装置２０のハードウェア構成の一例を示す図である。
【００３０】
図３に示すように、本実施形態に係るデータ送信先装置２０は、外部Ｉ／Ｆ７０１と、ＲＡＭ７０２と、ＣＰＵ７０３と、フラッシュＲＯＭ７０４と、通信Ｉ／Ｆ７０５とを有する。これら各ハードウェアは、バス７０６により相互に通信可能に接続されている。
【００３１】
外部Ｉ／Ｆ７０１は、外部装置とのインタフェースである。外部装置には、記録媒体７０１ａ等がある。データ送信先装置２０は、外部Ｉ／Ｆ７０１を介して、記録媒体７０１ａの読み取りや書き込みを行うことができる。記録媒体７０１ａには、例えば、ＳＤメモリカードやＵＳＢメモリカード等がある。
【００３２】
ＲＡＭ７０２は、プログラムやデータを一時保持する揮発性の半導体メモリである。ＣＰＵ７０３は、フラッシュＲＯＭ７０４からプログラムやデータをＲＡＭ７０２上に読み出し、処理を実行することで、データ送信元装置２０全体の制御や機能を実現する演算装置である。
【００３３】
フラッシュＲＯＭ７０４は、電源を切ってもプログラムやデータを保持することができる不揮発性の半導体メモリである。フラッシュＲＯＭ７０４には、例えば、時系列データ記憶部２１０、最新データ格納処理部２００を実現するプログラム等が格納されている。
【００３４】
通信Ｉ／Ｆ７０５は、データ送信先装置２０をネットワークＮに接続するためのインタフェースである。データ送信先装置２０は、通信Ｉ／Ｆ７０５を介して、暗号化済み最新データ及び認証タグをデータ送信元装置１０から受信することができる。また、プログラムやデータを格納している不揮発性のメモリとして、例えば、ＨＤＤ（Hard Disk Drive）等を備えても良い。プログラムやデータには、最新データ格納処理部２００を実現するプログラム、時系列で計測データを蓄積する時系列データ記憶部等がある。
【００３５】
本実施形態に係るデータ送信先装置２０は、図３に示すハードウェア構成を有することにより、後述する各種処理を実現することができる。
【００３６】
＜機能構成＞
次に、本実施形態に係るデータ処理システム１の機能構成について、図４を参照しながら説明する。図４は、本実施形態に係るデータ処理システム１の機能構成の一例を示す図である。
【００３７】
図４に示すように、本実施形態に係るデータ送信元装置１０の最新データ提供部１００は、鍵生成部１０２と、暗号化部１０４と、通信部１０５とを有する。なお、最新データ提供部１００は、データ送信元装置１０にインストールされた１以上のプログラムが、ＣＰＵ６０６に実行させる処理により実現される。
【００３８】
鍵生成部１０２は、時系列データ記憶部１１０に記憶されている暗号化する最新データに対する過去データの内、前回データ１１３と前々回データ１１４を抽出し、所定のアルゴリズムを用いて、前回データ１１３と前々回データ１１４から暗号化鍵４２０を作成する。  
【００３９】
暗号化部１０４は、鍵生成部１０２により作成された暗号化鍵４２０を用いた認証付き暗号の手法により、最新データ１１２を暗号化して、暗号化済み最新データ４４０と認証タグ４５０とを作成する。
【００４０】
認証付き暗号の手法には、例えば、ＥｔＭ（Encrypt-then-MAC）やＥ＆Ｍ（Encrypt-and-MAC）等が挙げられる。
【００４１】
ＥｔＭでは、暗号化部１０４は、暗号化鍵４２０を用いて最新データ１１２を暗号化して、暗号化済み最新データ４４０を作成する。そして、暗号化部１０４は、所定のハッシュ関数と暗号化鍵４２０とを用いて、暗号化済み最新データ４４０のハッシュ値を算出して、算出したハッシュ値を認証タグ４５０とする。
【００４２】
Ｅ＆Ｍでは、暗号化部１０４は、暗号化鍵４２０を用いて最新データ１１２を暗号化して、暗号化済み最新データ４４０を作成する。そして、暗号化部１０４は、所定のハッシュ関数と暗号化鍵４２０とを用いて、最新データ１１２のハッシュ値を算出して、算出したハッシュ値を認証タグ４５０とする。
【００４３】
なお、暗号化部１０４は、認証付き暗号の手法として、ＭｔＥ（MAC-then-Encrypt）を用いても良い。ただし、この場合、暗号化部１０４は、最新データ１１２と、当該最新データ１１２から作成した認証タグとを連結した上で暗号化して、暗号化済み最新データ４４０を作成する。
【００４４】
通信部１０５は、暗号化部１０４により作成された暗号化済み最新データ４４０と認証タグ４５０とをデータ送信先装置２０に送信する。
【００４５】
図４に示すように、本実施形態に係るデータ送信先装置２０の最新データ格納処理部２００は、通信部２０１と、鍵生成部２０２と、復号部２０３と、通知部２０４と、判定部２０５と、格納部２０７とを有する。なお、最新データ格納処理部２００は、データ送信先装置２０にインストールされた１以上のプログラムが、ＣＰＵ７０３に実行させる処理により実現される。
【００４６】
通信部２０１は、暗号化済み最新データ４４０と認証タグ４５０とをデータ送信先装置１０から受信する。
【００４７】
鍵生成部２０２は、時系列データ記憶部２１０に記憶されている、暗号化した最新データに対する過去データの内、前回データ１１３と前々回データ１１４を抽出し、データ送信元装置１０の鍵生成部１０２と同一のアルゴリズムを用いて、データ送信先装置２０が有する前回データ１１３と前々回データ１１４（すなわち、データ送信先装置２０のフラッシュＲＯＭ７０４に格納されている前回データ１１４と前々回データ１１３）から復号鍵４６０を作成する。
【００４８】
復号部２０３は、鍵生成部２０２により作成された復号鍵４６０を用いた認証付き暗号の手法により、通信部２０１により受信された暗号化済み最新データ４４０を復号して、最新データ４７０を作成する。
【００４９】
判定部２０５は、通信部２０１により受信された認証タグ４５０を検証する。すなわち、判定部２０５は、例えば、復号部２０３が復号した最新データ４７０から認証タグを作成した上で、作成した認証タグと、認証タグ４５０とが一致するか否かにより、認証タグ４５０の検証結果が正当又は不当のいずれであるかを判定する。
【００５０】
なお、復号部２０３及び判定部２０５は、データ送信元装置１０の暗号化部１０４と同一の認証付き暗号の手法を用いて、暗号化済み最新データ４４０の復号と認証タグ４５０の検証とを行う。また、復号部２０３は、判定部２０５の処理を含むものであっても良い。  
【００５１】
通知部２０４は、判定部２０５による認証タグ４５０の検証結果が不当（すなわち、判定部２０５が作成した認証タグと、通信部２０１が受信した認証タグ４５０とが一致しない）場合、最新データを時系列データ記憶部へ格納できなかったこと（格納失敗）を通知する。
【００５２】
格納部２０７は、判定部２０５による認証タグ４５０の検証結果が正当（すなわち、判定部２０５が作成した認証タグと、通信部２０１が受信した認証タグ４５０とが一致する）場合、時系列データ記憶部に復号した最新データ４７０を格納する。これにより、データ送信元装置１０の時系列データ記憶部に記憶されている最新データ１１２と、データ送信先装置２０の時系列データ記憶部に記憶された最新データ４７０は、同一のデータとなる。  
【００５３】
＜処理の詳細＞
次に、本実施形態に係るデータ処理システム１の処理の詳細について説明する。
【００５４】
＜＜データ処理装置１０における過去データ取得から送信までの処理＞＞
以降では、デ゛ータ送信元装置１０における過去データ取得からデータ送信先装置２０への送信までの処理について、図５を参照しながら説明する。図５は、本実施形態に係るデータ送信先装置１０における過去データ（前回データ１１３、前々回データ１１４）の取得から送信までの処理の一例を示すフローチャートである。なお、図５に示す処理は、データ送信元装置１０がセンサ等から最新の計測データを収集し、時系列データ記憶部１１０に最新データ１１２が記憶されたタイミングで実行される。
【００５５】
まず、鍵生成部１０２は、最新データ１１２に対する過去データ（前回データ１１３、前々回データ１１４）を時系列データ記憶部１１０から取得する（ステップＳ５０１）。時系列データ記憶部に格納されたデータは、センサ等から収集した計測データである。センサ等の入力元に対応する計測データごとに識別コードが付いており、センサ等からの計測データ収集タイミングで時系列に格納されているため、該当する最新データ及びその最新データに対する過去データ（前回データ１１３、前々回データ１１４）を取得することは容易である。
【００５６】
次に、鍵生成部１０２は、所定のアルゴリズムを用いて、過去データ（前回データ１１３、前々回データ１１４）から暗号化鍵４２０を作成する（ステップＳ５０２）。例えば、鍵生成部１０２は、過去データ（前回データ１１３、前々回データ１１４）を連結して１つのバイナリデータを当該アルゴリズムに入力することで、当該アルゴリズムの出力として暗号化鍵４２０を作成する。なお、所定のアルゴリズムには、例えば、所定のハッシュ関数等を用いることができる。また、鍵生成部１０２は、当該連結したバイナリデータ自体を暗号化鍵４２０としても良い。
【００５７】
次に、暗号化部１０４は、上記のステップＳ５０２で作成された暗号化鍵４２０を用いた認証付き暗号の手法により、最新データ１１２を暗号化して、暗号化済み最新データ４４０と認証タグ４５０とを作成する（ステップＳ５０３）。
【００５８】
次に、通信部１０５は、上記のステップＳ５０３で作成された暗号化済み最新データ４４０と認証タグ４５０とをデータ送信先装置２０に送信する（ステップＳ５０４）。
【００５９】
以上により、本実施形態に係るデータ処理システム１では、データ送信元装置１０で作成された暗号化済み最新データ４４０及び認証タグ４５０がデータ送信先装置２０に送信される。
【００６０】
＜＜＜データ送信元装置が暗号化鍵を作成する処理[その１]＞＞
上述した図５のＳ５０２では、鍵生成部１０２が、所定のアルゴリズムを用いて、過去データ（前回データ１１３、前々回データ１１４）から暗号化鍵４２０を作成することを説明した。
【００６１】
以降では、暗号化鍵を作成する処理について、図７及び図４、９、１０を参照しながらさらに詳細を説明する。図７は、本実施形態に係るデータ送信元装置１０が暗号鍵を作成する処理の一例を示すフローチャートである。
【００６２】
まず、鍵生成部１０２は、時系列データ記憶部１１０の中に前回データ１１３または前々回データ１１４が存在するか検索する（ステップ７０１）。Ｓ７０１でどちらかの過去データが存在する場合、次に、前回データ１１３と前々回データ１１４が存在するか検索する（ステップ７０２）。Ｓ７０２で前回データ１１３、前々回データとも存在する場合（ステップ７０２  ＹＥＳ）、過去データ（前回データ１１３、前々回データ１１４）から暗号化鍵４２０を作成する（ステップ７０３）。図４は、前回データ１１３、前々回データ１１４ともに存在する場合における本実施形態に係るデータ処理システム１の機能構成の一例を示す図である。
【００６３】
Ｓ７０２に戻り、前々回データ１１４が無い場合（ステップ７０２  ＮＯ）、過去データ（前回データ）を基に暗号化鍵を作成する（ステップ７０４）。図９は、前々回データが無い場合における本実施形態に係るデータ処理システム１の機能構成の一例を示す図である。
【００６４】
さらに、Ｓ７０１に戻り、前回データ１１３と前々回データとも存在しない場合（ステップ７０１  ＮＯ）、データ送信元装置１０が保持する自装置の装置ＩＤを基に暗号化鍵を作成する（ステップ７０５）。図１０は、前回データ１１３、前々回データ１１４ともに存在しない場合における本実施形態に係るデータ処理システム１の機能構成の一例を示す図である。
【００６５】
＜＜＜データ送信元装置が暗号化鍵を作成する処理  [その２]＞＞
上述の＜＜＜データ送信元装置が暗号化鍵を作成する処理  [その１]＞＞では、暗号化鍵を作成する処理について、図７のフローチャートに沿って説明した。ここでは、その他、第２の暗号化鍵を作成する処理について説明する。[その１]との対比で主な特徴部分は、図５のＳ５０１に相当する。
【００６６】
まず、鍵生成部１０２は、暗号化する最新データに対する時系列データ記憶部１１０に蓄積した過去データの内、第１のランダム算出部を用いて所定の数だけ過去データを取得する。取得した過去データに基づいて暗号化に用いる暗号化鍵を作成する。第１のランダム算出部は、所定の数だけランダム関数を用いて過去データの格納場所を特定し、該当する過去データを取得する。時系列データ記憶部１１０には、過去データが時系列に順番に蓄積されているので過去データを特定することは容易である。また、鍵生成部２０２についても同様に行われるものとする。また、過去データが無い、または一部無い場合は、[その１]と同様の処理とすれば良い。
【００６７】
＜＜＜データ送信元装置が暗号化鍵を作成する処理  [その３]＞＞
ここでは、その他、第３の暗号化鍵を作成する処理について説明する。[その１]との対比で主な特徴部分は、図５のＳ５０１に相当する。
【００６８】
まず、鍵生成部１０２は、暗号化する最新データに対する時系列データ記憶部１１０に蓄積した過去データの内、最新データが格納された系列から所定の数だけ過去にさかのぼり所定の数だけ過去データを取得し、取得した過去データに基づいて暗号化に用いる暗号化鍵を作成する。時系列データ記憶部１１０には、過去データが時系列に順番に蓄積されているので過去データを特定することは容易である。また、鍵生成部２０２についても同様に行われるものとする。また、過去データが無い、または一部無い場合は、[その１]と同様の処理とすれば良い。
【００６９】
＜＜＜データ送信元装置が暗号化鍵を作成する処理  [その４]＞＞
ここでは、その他、第４の暗号化鍵を作成する処理について説明する。
【００７０】
まず、鍵生成部１０２は、識別コードが異なる複数の最新データを暗号化してまとめて１回で送信する場合、複数の最新データの内、第２のランダム算出部を用いて最新データを１つだけ選定し、選定した該最新データに対する前記過去データに基づいてまとめて１回で送信する複数の最新データの暗号化に共通で用いる暗号鍵を１つだけ作成する。また、選定した最新データに対する過去データの取得方法は、上述した[その１]〜[その３]のいずれか、またはその組み合わせであっても良い。
【００７１】
＜＜＜データ送信元装置が暗号化鍵を作成する処理  [その５]＞＞
ここでは、その他、第５の暗号化鍵を作成する処理について説明する。
【００７２】
まず、鍵生成部１０２は、識別コードが異なる複数の最新データを暗号化してまとめて１回で送信する場合、前記複数の最新データのそれぞれに対する前記過去データに基づいて暗号化に用いる暗号化鍵をそれぞれ作成する。また、最新データのそれぞれに対する過去データの取得方法は、上述した[その１]〜[その３]のいずれか、またはその組み合わせであっても良い。
【００７３】
＜＜データ送信先装置２０が最新データを時系列データ記憶部に格納する処理＞＞
以降では、データ送信先装置２０が最新データ４７０を時系列データ記憶部２１０に格納する処理について、図６を参照しながら説明する。図６は、本実施形態に係るデータ送信先装置２０が最新データ１１２を時系列データ記憶部２１０に格納する処理の一例を示すフローチャートである。
【００７４】
まず、通信部２０１は、暗号化済み最新データ４４０と認証タグ４５０とをデータ送信元装置１０から受信する（ステップＳ６０１）。
【００７５】
次に、鍵生成部２０２は、データ送信元装置１０の鍵生成部１０２と同一のアルゴリズムを用いて、データ送信先装置２０が有する過去データ（前回データ１１３、前々回データ１１４）から復号鍵４６０を作成する（ステップＳ６０２）。
【００７６】
次に、復号部２０３は、上記のステップＳ６０２で作成された復号鍵４６０を用いた認証付き暗号の手法により、上記のステップＳ６０１で受信された暗号化済み最新データ４４０を復号して、最新データ４７０を作成する（ステップＳ６０３）。
【００７７】
次に、判定部２０５は、上記のステップＳ６０１で受信された認証タグ４５０を検証する（ステップＳ６０４）。すなわち、判定部２０５は、例えば、上記のステップＳ６０３で作成された最新データ４７０から認証タグを作成した上で、作成した認証タグと、認証タグ４５０とが一致するか否かにより、認証タグ４５０の検証結果が正当又は不当のいずれであるかを判定する。
【００７８】
ステップＳ６０４において、検証結果が正当であると判定された場合、格納部２０７は、上記のステップＳ６０３で作成された最新データ４７０を時系列データ記憶部に格納する（ステップＳ６０５）。
【００７９】
このように最新データ４７０が格納された時系列データ記憶部２１０は、データ送信元装置１０の時系列データ記憶部１１０に記憶されているデータと同一のデータとなる。
【００８０】
一方、ステップＳ６０４において、検証結果が不当である（正当でない）と判定された場合、通知部２０４は、最新データを時系列データ記憶部に格納できなかったこと（格納失敗）を通知する（ステップＳ６０６）。通知部２０４は、例えば、ＬＥＤ（Light Emitting Diode）ランプを点灯させる、ブザー音を発する等により、最新データ４７０の格納失敗を通知すれば良い。また、通知部２０４は、所定のメールアドレス宛に格納失敗を示すメールを送信することにより、最新データの格納失敗を通知しても良い。
＜＜＜データ送信先装置が復号鍵を作成する処理＞＞
上述した図６のＳ６０２では、鍵生成部２０２が、所定のアルゴリズムを用いて、過去データ（前回データ１１３、前々回データ１１４）から復号鍵４６０を作成することを説明した。
【００８１】
以降では、復号鍵を作成する処理について、図８及び図４、９、１０を参照しながらさらに詳細を説明する。図８は、本実施形態に係るデータ送信先装置２０が復号鍵を作成する処理の一例を示すフローチャートである。
【００８２】
まず、鍵生成部２０２は、時系列データ記憶部２１０の中に前回データ１１３または前々回データ１１４が存在するか検索する（ステップ８０１）。Ｓ８０１でどちらかの過去データが存在する場合、次に、前回データ１１３と前々回データ１１４が存在するか検索する（ステップ８０２）。Ｓ８０２で前回データ１１３、前々回データとも存在する場合（ステップ８０２  ＹＥＳ）、過去データ（前回データ１１３、前々回データ１１４）から復号鍵４６０を作成する（ステップ８０３）。図４は、前回データ１１３、前々回データ１１４ともに存在する場合における本実施形態に係るデータ処理システム１の機能構成の一例を示す図である。
【００８３】
Ｓ８０２に戻り、前々回データ１１４が無い場合（ステップ８０２  ＮＯ）、過去データ（前回データ）を基に復号鍵を作成する（ステップ８０４）。図９は、前々回データが無い場合における本実施形態に係るデータ処理システム１の機能構成の一例を示す図である。
【００８４】
さらに、Ｓ８０１に戻り、前回データ１１３と前々回データ１１４とも存在しない場合（ステップ８０１  ＮＯ）、データ送信元装置１０が保持する自装置の装置ＩＤを基に暗号化鍵を作成する（ステップ７０５）。図１０は、前回データ１１３、前々回データ１１４ともに存在しない場合における本実施形態に係るデータ処理システム１の機能構成の一例を示す図である。さらに図１１は、本実施形態に係るデータ送信先装置における装置IDテーブルの構成の一例を示す図である。図１１が示す装置ＩＤテーブル３００は、データ送信元装置の情報が予め設定されメモリ領域に記憶されている。装置ＩＤテーブル３００には、データ送信元装置１０の装置固有ＩＤである装置ＩＤの情報と、装置ＩＤに対応するパケット情報としてデータ送信元装置の装置名称とＩＰアドレスで構成されている。データ送信先装置２０は、データ送信元装置から送信された通信パケットのヘッダ情報を参照し、ヘッダ情報入っている送信元装置の装置名称またはＩＰアドレスを取得し、装置テーブル３００のパケット情報と照合し、送信元の装置ＩＤを装置テーブルから取得することができる。
【００８５】
このようにすることで、第三者がネットワーク上に流れる通信パケットの情報を入手できたとしても暗号化鍵及び復号鍵の元となる情報は入手できないために通信パケット上のデータを解読することはできない。従って、前回データ１１３と前々回データ１１４とも存在しない場合（ステップ８０１  ＮＯ）、データ送信元装置１０が保持する自装置の装置ＩＤを基に暗号化鍵を作成しても安全が保たれる。
＜補足説明  通信パケットの構成＞
次に、本実施形態に係るデータ送信元装置における通信パケットの機能構成について、図１２を参照しながら説明する。図１２は、本実施形態に係るデータ送信元装置における通信パケットの機能構成の一例を示す図である。
【００８６】
図１２に示すように、本実施形態に係るデータ送信元装置１０が送信に用いる通信パケットは、ヘッダ部とデータ部に分類され、ヘッダ部には、送信先アドレスまたは送信先装置名称、送信元アドレスまたは送信元装置名称、メッセージ種別、メッセージＩＤ、デタサイズ等が割り付けられ、データ部には、データが割り付けられる。データ送信元装置が暗号化済み最新データ４４０と認証タグ４５０をデータ送信先装置に送信する場合、通信部１０５は、ヘッダ部にデータ送信先装置の送信先アドレスまたは送信先装置名称、データ送信元装置の送信元アドレスまたは送信元装置名称、計測データを通知するメッセージ種別、計測データに対応する識別コード等のメッセージＩＤ、データサイズ等を入力し、データ部に送信する暗号化済み最新データ４４０と認証タグ４５０をセットで入力し、通信パケットを作成して送信する。
【００８７】
また、複数の最新データを送る場合、メッセージＩＤに複数の識別コードをセットし、暗号化済み最新データと認証タグがセットになった複数のデータをデータ部に入力すれば良い。また、複数のデータに対して暗号化鍵を１つ作成する場合、複数の認証済み最新データに１つの認証タグをセットにしたデータをデータ部に入力すれば良い。
＜まとめ＞
以上により、本実施形態に係るデータ処理システム１では、データ送信先装置２０は、データ送信元装置１０から受信した暗号化済み最新データ４４０及び認証タグ４５０に基づいて、最新データを時系列データ記憶部２１０に格納することができる。これにより、本実施形態に係るデータ処理システム１では、例えば、不正な最新データがデータ送信先装置２０に書き込まれてしまうような事態（すなわち、時系列データ記憶部に不正な最新データを格納してしまうような事態）を防止することができる。
【００８８】
また、本実施形態に係るデータ処理システム１では、データ送信元装置１０が有する過去データ１１１に基づいて暗号化鍵４２０が作成されると共に、データ送信先装置２０が有する過去データ１１１に基づいて復号鍵４６０が作成される。このため、本実施形態に係るデータ処理システム１では、データ送信元装置１０及びデータ送信先装置２０は、それぞれ暗号化鍵４２０及び復号鍵４６０を管理しておく必要がない（すなわち、フラッシュＲＯＭ６０３、７０４にそれぞれ暗号化鍵４２０や復号鍵４６０を記憶させておく必要がない。）。したがって、本実施形態に係るデータ処理システム１では、暗号化鍵４２０や復号鍵４６０の漏洩も防止することができる。
【００８９】
更に、本実施形態に係るデータ処理システム１では、過去データに基づいて暗号化鍵４２０及び復号鍵４６０が作成されるため、最新データを時系列データ記憶部１１０，２１０に格納する度に、暗号化鍵４２０及び復号鍵４６０も更新することができる。したがって、本実施形態に係るデータ処理システム１では、万が一、暗号化鍵４２０や復号鍵４６０が漏洩した場合であっても、過去データの更新により、鍵が更新され、その後、不正な最新データがデータ送信先装置２０に書き込まれてしまうような事態を防止することができる。なお、最新データが格納された後は、暗号化鍵４２０及び復号鍵４６０の情報を直ちに削除し、データ処理システム１に記憶させておかないようにすることが望ましい。
【００９０】
なお、本発明は、具体的に開示された上記の実施形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
【符号の説明】
【００９１】
１        データ処理システム
１０      データ送信元装置
２０      データ送信先装置
１００    最新データ提供処理部
１０２    鍵生成部
１０４    暗号化部
１０５    通信部
１１１    過去データ
１１２    最新データ
１１３    前回データ
１１４    前々回データ
１１５    装置ＩＤ
１１６    装置ＩＤテーブルのパケットのヘッダ情報
２００    最新データ格納処理部
２０１    通信部
２０２    鍵生成部
２０３    復号部
２０４    通知部
２０５    判定部
２０７    格納部
３００    装置ＩＤテーブル
４２０    暗号化鍵
４４０    暗号化済み最新データ
４５０    認証タグ
４６０    復号鍵
４７０    最新データ
【図１】
2020036145.tif 000003
【図２】
2020036145.tif 000004
【図３】
2020036145.tif 000005
【図４】
2020036145.tif 000006
【図５】
2020036145.tif 000007
【図６】
2020036145.tif 000008
【図７】
2020036145.tif 000009
【図８】
2020036145.tif 000010
【図９】
2020036145.tif 000011
【図１０】
2020036145.tif 000012
【図１１】
2020036145.tif 000013
【図１２】
2020036145.tif 000014