(57)【要約】      （修正有）【課題】暗号鍵の漏えいリスクを低減する。【解決手段】データ処理システム１０において、データ送信装置は、データ送信装置を識別する識別情報と、複数のデータ送信装置が存在する場合に、データ送信装置のそれぞれで異なる値であり且つ暗号鍵ではない第１秘密情報と、を予め記憶し、データ収集装置との間での通信コネクションが成立する度にランダムな値の暗号鍵である一時鍵を生成し、生成した一時鍵と第１秘密情報とを掛け合わせた第３秘密情報を生成し、識別情報と第３秘密情報とをデータ収集装置へ送信する。秘密情報データベースは、複数のデータ送信装置のそれぞれについて、識別情報と、第１秘密情報の逆元である第２秘密情報とを関連付けて記憶する。データ収集装置は、受信した識別情報をキーに秘密情報データベースを検索し、受信した識別情報に対応する第２秘密情報を特定し、特定した第２秘密情報と受信した第３秘密情報とから一時鍵を算出する。【選択図】図１
2019154007.tif 000002
【特許請求の範囲】
【請求項１】
暗号化されたデータを送信するデータ送信装置と、
暗号化された前記データを受信して復号するデータ収集装置と、
秘密情報データベースと
を備え、
前記データ送信装置は、前記データ送信装置を識別する識別情報と、複数の前記データ送信装置が存在する場合に、前記データ送信装置のそれぞれで異なる値であり且つ暗号鍵ではない第１秘密情報と、を予め記憶し、前記データ収集装置との間での通信コネクションが成立する度にランダムな値の暗号鍵である一時鍵を生成し、生成した前記一時鍵と前記第１秘密情報とを掛け合わせた第３秘密情報を生成し、前記識別情報と前記第３秘密情報とを前記データ収集装置へ送信し、
前記秘密情報データベースは、複数の前記データ送信装置のそれぞれについて、前記識別情報と、前記第１秘密情報の逆元である第２秘密情報とを関連付けて記憶し、
前記データ収集装置は、受信した前記識別情報をキーに前記秘密情報データベースを検索し、受信した前記識別情報に対応する前記第２秘密情報を特定し、特定した前記第２秘密情報と受信した前記第３秘密情報とから前記一時鍵を算出する
ことを特徴とするデータ処理システム。
【請求項２】
前記秘密情報データベースは、前記データ収集装置と別体で構成される秘密情報管理装置に含まれ、
前記秘密情報管理装置は、前記データ収集装置から、前記識別情報を含む秘密情報要求を受信し、受信した前記識別情報をキーに前記秘密情報データベースを検索し、受信した前記識別情報に対応する前記第２秘密情報を特定し、特定した前記第２秘密情報を含む照合結果を、前記データ収集装置へ送信する
ことを特徴とする請求項１記載のデータ処理システム。
【請求項３】
前記データ収集装置の処理負荷を低減させるための装置であり、前記データ送信装置と前記データ収集装置の間に設けられるエッジ装置をさらに備え、
前記エッジ装置は、前記データ送信装置から、前記識別情報および前記第３秘密情報を受信し、受信した前記識別情報および前記第３秘密情報を、前記データ収集装置へ送信し、
前記データ収集装置は、前記秘密情報管理装置から前記照合結果を受信し、受信した前記照合結果を前記エッジ装置へ転送する
ことを特徴とする請求項２記載のデータ処理システム。
【請求項４】
前記データ収集装置と前記秘密情報管理装置との間の通信は、所定の暗号化プロトコルを用いることにより安全性が確保されていることを特徴とする請求項２または３記載のデータ処理システム。
【請求項５】
前記データ収集装置は、前記一時鍵を算出した後に、前記データ送信装置に対して、使い捨ての乱数であるチャレンジデータを送信し、
前記データ送信装置は、受信した前記チャレンジデータを前記一時鍵で暗号化してレスポンスデータを作成し、前記レスポンスデータを前記データ収集装置へ送信し、
前記データ収集装置は、受信した前記レスポンスデータを前記一時鍵で復号し、復号した結果と前記チャレンジデータとが一致するか否かを検証する
ことを特徴とする請求項１から４のいずれか１項に記載のデータ処理システム。
【請求項６】
前記逆元は、乗法的逆元であることを特徴とする請求項１−５のいずれか１項に記載のデータ処理システム。
【請求項７】
前記データ収集装置は、算出した前記一時鍵を揮発性メモリに記録することを特徴とする請求項１から６のいずれか１項に記載のデータ処理システム。
【請求項８】
前記データ送信装置は、センサデータを取得することを特徴とする請求項１から７のいずれか１項に記載のデータ処理システム。
【請求項９】
前記識別情報は、製品情報であることを特徴とする請求項１から８のいずれか１項に記載のデータ処理システム。
【請求項１０】
暗号化されたデータを送信するデータ送信装置と、暗号化された前記データを受信して復号するデータ収集装置と、を備えるデータ処理システムにおける暗号鍵共有方法であって、
秘密情報データベースに、複数の前記データ送信装置のそれぞれについて、前記データ送信装置を識別する識別情報と、複数の前記データ送信装置のそれぞれで異なる値であり且つ暗号鍵ではない第１秘密情報の逆元である第２秘密情報とを関連付けて記憶させ、
前記データ送信装置は、前記識別情報と前記第１秘密情報とを予め記憶し、前記データ収集装置との間での通信コネクションが成立する度にランダムな値の暗号鍵である一時鍵を生成し、生成した前記一時鍵と前記第１秘密情報とを掛け合わせた第３秘密情報を生成し、前記識別情報と前記第３秘密情報とを前記データ収集装置へ送信し、
前記データ収集装置は、受信した前記識別情報をキーに前記秘密情報データベースを検索し、受信した前記識別情報に対応する前記第２秘密情報を特定し、特定した前記第２秘密情報と受信した前記第３秘密情報とから前記一時鍵を算出する
ことを特徴とする暗号鍵共有方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ処理システム、および暗号鍵共有方法に関する。
【背景技術】
【０００２】
近年、様々な機器をネットワークに接続してデータ収集を行い、収集したデータをＡＩ（Artificial Intelligence）を利用して解析することが行われている。一方で、様々な機器がネットワークに接続することでサイバー攻撃の脅威にさらされることになるため、セキュリティ対策が必要となる。特に、センサデータの利活用という観点からすると、末端の機器から収集するセンシングデータを安全にクラウドまで届けることができるデータセキュリティが必要となる。
【０００３】
特許文献１には、共通鍵または公開鍵を用いて送信情報を暗号化して暗号化情報を生成することが記載されている。
【０００４】
特許文献２には、端末が、暗号鍵を用いてデータを暗号化した暗号化データと暗号鍵シェアをデータセンタに送信し、データセンタが暗号化データと暗号鍵シェアを対応付けて保管することが記載されている。
【０００５】
特許文献３において、クライアント１は、暗号化されたコンテンツと共通鍵ＩＤ（IDentification）が付与された共通鍵の半鍵をクライアント２に転送する。クライアント２は、鍵管理サーバ３に対し、共通鍵のＩＤ及び自己のクライアントＩＤを添えて半鍵の転送を要求する。鍵管理サーバ３は、共通鍵のＩＤ及び配信先を示すクライアントＩＤより、要求クライアントが正当なクライアントかをチェックした後、要求のあったクライアント２の公開鍵で登録された共通鍵を暗号化し送信する。クライアント２は、自己の秘密鍵で復号した鍵管理サーバからの共通鍵の半鍵と、クライアント１からのもう一方の半鍵とから共通鍵を合成し、それを用いて暗号化コンテンツを復号する。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１６−１４２６０８号公報
【特許文献２】特開２００８−２１９１７８号公報
【特許文献３】特開２００７−０８９０９８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
データセキュリティ確保の策として、データ暗号化が知られている。暗号化の方式には、共通鍵暗号方式と公開鍵暗号方式種類とがある。
【０００８】
共通鍵暗号方式は、暗号化する鍵と復号化する鍵とが等しい方式である。従って、共通鍵暗号方式の場合、鍵は事前に暗号化する側と復号化する側で共有しておく必要がある。
【０００９】
公開鍵暗号方式は、持ち主本人だけが知る秘密鍵と、広く公開される公開鍵の２種類の鍵を使用する方式である。公開鍵暗号方式において、暗号化するときには公開鍵が利用され、復号するときには秘密鍵が利用される。
【００１０】
事前に鍵を共有することが不要という点で、公開鍵暗号方式にもメリットがあるが、実装性および処理性能の観点では共通鍵暗号方式のほうが優れている。特に、センサデバイスの制御に利用されるマイコンのＲＯＭ（Read Only Memory）やＲＡＭ（Random Access Memory）の容量、およびＣＰＵ（Central Processing Unit）の能力は、一般的はパーソナルコンピュータと比較すると非常に少なく非力である。このような環境においてセンシングデータを安全に送信するために共通鍵暗号方式を採用することが適切である。
【００１１】
しかしながら、共通鍵暗号方式を採用する場合、以下のような課題を克服する必要がある。
【００１２】
センサデバイスなどはＯＳ（Operating System）やアプリケーションがＲＯＭに書き込まれた状態で出荷され、出荷後、基本的に書き換えは行われない。よって、共通鍵暗号方式の暗号化機能を実装する場合、暗号鍵は出荷前にＲＯＭに書き込まれる。この時、このセンサデバイスで暗号化されたデータを復号するためには、復号側システムでも同じ暗号鍵が必要になるが、暗号鍵を漏えいさせることなく復号側システムに実装しなければならない。しかしながら、センサデバイスの製造ベンダであれば暗号鍵を知ることはできるが、製造ベンダ以外の第三者がそのセンサデバイスを利用する場合に、暗号鍵をどのように実装するかが課題となる。一旦、暗号鍵が漏えいするとセンサデバイス側の鍵の更新に多大な労力とコストが発生するため、安易に暗号鍵を教えることはできない。このように、第三者が任意のセンサデバイスを利用してセキュアなデータ処理システムを構築する場合、復号側システムに対して暗号鍵を安全に供給し、かつ複雑な開発を必要としないようにすることが要望されている。
【００１３】
さらに、大量に生産されるセンサデバイスに埋め込まれる鍵はロットや製品単位で同じ鍵が使われるケースもある。このため、互い全く関係の無いシステム同士で同じ鍵が利用される状況が発生する。このような場合において、あるシステムで利用されている鍵が漏えいすると、悪意ある第三者によって、別のシステムの暗号化データが復号されてしまうことになる。
【００１４】
特許文献１−３記載の技術では、共通鍵暗号方式が有する上記課題を解決することは困難である。
【００１５】
本発明は、上記課題を解決するためになされたものであり、暗号鍵の漏えいリスクを低減させることが可能なデータ処理システム、および暗号鍵共有方法を提供することを目的とする。
【課題を解決するための手段】
【００１６】
本発明のデータ処理システムは、暗号化されたデータを送信するデータ送信装置と、暗号化された前記データを受信して復号するデータ収集装置と、秘密情報データベースと、を備え、前記データ送信装置は、前記データ送信装置を識別する識別情報と、複数の前記データ送信装置が存在する場合に、前記データ送信装置のそれぞれで異なる値であり且つ暗号鍵ではない第１秘密情報と、を予め記憶し、前記データ収集装置との間での通信コネクションが成立する度にランダムな値の暗号鍵である一時鍵を生成し、生成した前記一時鍵と前記第１秘密情報とを掛け合わせた第３秘密情報を生成し、前記識別情報と前記第３秘密情報とを前記データ収集装置へ送信し、前記秘密情報データベースは、複数の前記データ送信装置のそれぞれについて、前記識別情報と、前記第１秘密情報の逆元である第２秘密情報とを関連付けて記憶し、前記データ収集装置は、受信した前記識別情報をキーに前記秘密情報データベースを検索し、受信した前記識別情報に対応する前記第２秘密情報を特定し、特定した前記第２秘密情報と受信した前記第３秘密情報とから前記一時鍵を算出する。
【００１７】
本発明の暗号鍵共有方法は、暗号化されたデータを送信するデータ送信装置と、暗号化された前記データを受信して復号するデータ収集装置と、を備えるデータ処理システムにおける暗号鍵共有方法であって、秘密情報データベースに、複数の前記データ送信装置のそれぞれについて、前記データ送信装置を識別する識別情報と、複数の前記データ送信装置のそれぞれで異なる値であり且つ暗号鍵ではない第１秘密情報の逆元である第２秘密情報とを関連付けて記憶させ、前記データ送信装置は、前記識別情報と前記第１秘密情報とを予め記憶し、前記データ収集装置との間での通信コネクションが成立する度にランダムな値の暗号鍵である一時鍵を生成し、生成した前記一時鍵と前記第１秘密情報とを掛け合わせた第３秘密情報を生成し、前記識別情報と前記第３秘密情報とを前記データ収集装置へ送信し、前記データ収集装置は、受信した前記識別情報をキーに前記秘密情報データベースを検索し、受信した前記識別情報に対応する前記第２秘密情報を特定し、特定した前記第２秘密情報と受信した前記第３秘密情報とから前記一時鍵を算出することを特徴とする。
【発明の効果】
【００１８】
本発明によれば、暗号鍵の漏えいリスクを低減させることが可能となる。
【図面の簡単な説明】
【００１９】
【図１】本発明の第１の実施形態に係るデータ処理システムの構成例を示すブロック図である。
【図２】図１に示すデータ処理システムの動作例（暗号鍵共有方法）を示すフローチャートであり、詳細には、図１に示すデータ送信装置の動作例を示すフローチャートである。
【図３】図１に示すデータ処理システムの動作例（暗号鍵共有方法）を示すフローチャートであり、詳細には、図１に示すデータ収集装置の動作例を示すフローチャートである。
【図４】本発明の第２の実施形態に係るデータ処理システムの構成例を示すブロック図である。
【図５】図４に示す秘密情報データベースのデータ構成例を示す。
【図６】図４に示すデータ処理システムの第１の動作例（暗号鍵共有方法）を示すシーケンスチャートである。
【図７】図４に示すデータ処理システムの第２の動作例（暗号鍵共有方法）を示すシーケンスチャートである。
【図８】本発明の第３の実施形態に係るデータ処理システムの構成例を示すブロック図である。
【図９】図８に示すデータ処理システムの動作例（暗号鍵共有方法）を示すシーケンスチャートである。
【発明を実施するための形態】
【００２０】
［第１の実施形態］
（構成の説明）
図１は、本発明の第１の実施形態に係るデータ処理システム１０の構成例を示すブロック図である。
【００２１】
データ処理システム１０は、暗号化されたデータを送信するデータ送信装置１２と、暗号化されたデータを受信して復号するデータ収集装置１４と、秘密情報データベース１６と、を備える。
【００２２】
データ送信装置１２は、データ送信装置１２を識別する識別情報と第１秘密情報を予め記憶する。第１秘密情報は、複数のデータ送信装置１２が存在する場合に、データ送信装置１２のそれぞれで異なる値であり且つ暗号鍵ではない秘密の情報である。データ送信装置１２は、データ収集装置１４との間での通信コネクションが成立する度にランダムな値の暗号鍵である一時鍵を生成し、生成した一時鍵と第１秘密情報とを掛け合わせた第３秘密情報を生成する。データ送信装置１２は、予め記録された識別情報と生成された第３秘密情報とをデータ収集装置１４へ送信する。
【００２３】
秘密情報データベース１６は、複数のデータ送信装置１２のそれぞれについて、識別情報と第２秘密情報とを関連付けて記憶する。第２秘密情報は、複数のデータ送信装置１２のそれぞれが記憶する第１秘密情報の逆元である。例えば、第２秘密情報は、第１秘密情報の乗法的逆元である。詳細には、第１秘密情報と第２秘密情報はそれぞれ有限体上の元であり、それぞれを乗ずると１になる関係にある。
【００２４】
データ収集装置１４は、データ送信装置１２から受信した識別情報をキーに秘密情報データベース１６を検索する。データ収集装置１４は、受信した識別情報に対応する第２秘密情報を特定し、特定した第２秘密情報と受信した第３秘密情報とから一時鍵を算出する。
【００２５】
上述したように、第１秘密情報それ自体は、暗号鍵ではない。そして、第１秘密情報の逆元である第２秘密情報、および一時鍵と第１秘密情報とを掛け合わせた第３秘密情報は、第１秘密情報と同様に暗号鍵ではない。従って、仮に、これらの秘密情報が漏えいしたとしても、直ちに一時鍵が特定されるわけではない。
（動作の説明）
図２および図３は、図１に示すデータ処理システム１０の動作例（暗号鍵共有方法）を示すフローチャートである。詳細には、図２は、データ送信装置１２の動作例を説明するためのフローチャートである。図３は、データ収集装置１４の動作例を説明するためのフローチャートである。
【００２６】
なお、以下で説明する動作の前提として、データ送信装置１２は、識別情報と第１秘密情報とを予め記憶しているものとする。また、秘密情報データベース１６には、複数のデータ送信装置１２毎に、識別情報と第２秘密情報とが関連付けて記憶されている。
【００２７】
図２に示されるように、データ送信装置１２は、データ収集装置１４との間での通信コネクションが成立するか否かを判定する（ステップＳ１）。通信コネクションが成立していない場合（ステップＳ１においてＮｏ）は、ステップＳ１の処理が再度実行される。
【００２８】
データ収集装置１４との間での通信コネクションが成立した場合（ステップＳ１においてＹｅｓ）、データ送信装置１２は、一時鍵を生成する（ステップＳ２）。データ送信装置１２は、生成した一時鍵と第１秘密情報とを掛け合わせて第３秘密情報を生成する（ステップＳ３）。データ送信装置１２は、識別情報と第３秘密情報とをデータ収集装置１４へ送信する（ステップＳ４）。
【００２９】
データ送信装置１２は、所定のデータ（例えば、センシングデータ）を、ステップＳ２で生成した一時鍵にて暗号化する（ステップＳ５）。データ送信装置１２は、暗号化データを、データ収集装置１４へ送信する（ステップＳ６）。
【００３０】
図３に示されるように、データ収集装置１４は、データ送信装置１２から、識別情報および第３秘密情報を受信したか否かを判定する（ステップＳ１０）。識別情報および第３秘密情報を受信しない場合（ステップＳ１０においてＮｏ）、ステップＳ１０の処理が再度実行される。
【００３１】
識別情報および第３秘密情報を受信した場合（ステップＳ１０においてＹｅｓ）、データ収集装置１４は、受信した識別情報をキーに秘密情報データベース１６を検索し、受信した識別情報に対応する第２秘密情報を特定する（ステップＳ１１）。データ収集装置１４は、特定した第２秘密情報と受信した第３秘密情報とを乗算することによって一時鍵を算出する（ステップＳ１２）。
【００３２】
以上の処理により、データ収集装置１４は、データ送信装置１２との間で一時鍵を暗号鍵として共有することができる。
【００３３】
その後、データ収集装置１４は、データ送信装置１２から暗号化データを受信したか否かを判定する（ステップＳ１３）。暗号化データを受信しない場合（ステップＳ１３においてＮｏ）、ステップＳ１３の処理が再度実行される。
【００３４】
暗号化データを受信した場合（ステップＳ１３においてＹｅｓ）、データ収集装置１４は、ステップＳ１２で算出した一時鍵を用いて暗号化データを復号化する（ステップＳ１４）。これにより、データ収集装置１４は、所定のデータを得ることができる。
（効果の説明）
以上説明した第１の実施形態では、暗号化されたデータを復号化する側のシステムであるデータ収集装置１４において復号化時に使用される暗号鍵（本実施形態の一時鍵）は、それら自体は暗号鍵でなく、無意味な情報である、第２秘密情報および第３秘密情報に基づいて算出される。
【００３５】
また、データ送信装置１２とデータ収集装置１４との間において暗号鍵の共有化のために実施される通信では、一時鍵ではなく第３秘密情報が送信されるので、仮に、この第３秘密情報が傍受されたとしても直ちに一時鍵が特定されることはない。
【００３６】
さらに、図２および図３に示されるように、一時鍵は、データ送信装置１２とデータ収集装置１４との間での通信コネクションが成立する度に更新される。なぜならば、上述したように、一時鍵はランダムな値だからである。
【００３７】
すなわち、第１の実施形態によれば、暗号鍵の漏えいリスクを低減させることが可能となる。漏えいリスクが低減することにより、暗号鍵が漏えいした場合の作業（例えば、暗号化する側のシステムにおける暗号鍵の更新等）が不要となるか、あるいは軽減される。
【００３８】
さらに、データ送信装置１２の開発者によるデータ送信装置１２を利用する第三者への暗号鍵の公開は不要となる。さらに、第三者は、暗号鍵を意識しなくてもよい。よって、各装置の開発をスムーズに行うことが可能となる。
【００３９】
なお、秘密情報データベース１６の検索は、第１の実施形態のように、データ収集装置１４が直接実行してもよいし、後述する第２の実施形態のように、他の装置（秘密情報管理装置１０３）に検索を命令し結果だけを受信するようにしてもよい。
【００４０】
また、図２におけるステップＳ５、Ｓ６の各処理、および図３におけるステップＳ１３、Ｓ１４の各処理は、必ずしも課題を達成するために必要な処理ではない。
［第２の実施形態］
（構成の説明）
図４は、本発明の第２の実施形態に係るデータ処理システム１００の構成例を示すブロック図である。データ処理システム１００は、図１に示すデータ処理システム１０を基本とする構成を含む。データ処理システム１００は、データ送信装置１０１と、データ収集装置１０２と、秘密情報管理装置１０３と、を備える。なお、図４における、各装置間の接続、および各装置内の接続はあくまで一例である。
【００４１】
データ送信装置１０１は、代表的には、制御に利用されるマイコンのＲＯＭやＲＡＭの容量、およびＣＰＵの能力が、一般的なパーソナルコンピュータと比較して低い装置、例えば、センサデバイスである。以下では、データ送信装置１０１がセンサデバイスである場合を例に挙げる。データ送信装置１０１は、センシング対象の機器（図１において不図示）に備え付けられる。データ送信装置１０１は、センシング対象の機器の所定の物理量についてのデータ、例えば、温湿度、振動、音響、映像についてのデータを取得する。データ送信装置１０１は、通信部１０１１と、センサ部１０１２と、暗号化部１０１３と、ＲＡＭ１０１６と、記憶部１０１７と、を備える。
【００４２】
記憶部１０１７には、秘密情報Ａ（第１秘密情報の一例）と製品情報（識別情報の一例）とが記憶される。秘密情報Ａは、複数のデータ送信装置１０１が存在する場合にそれぞれのデータ送信装置１０１毎に異なる値であり且つ暗号鍵ではない情報である。製品情報は、データ送信装置１０１を識別するためのユニークな情報である。製品情報は、例えば、製造ベンダ、プロダクト名、またはそれに紐づくＩＤなどである。
【００４３】
センサ部１０１２は、計測したデータをセンサデータとして出力する。センサ部１０１２は、例えば、温湿度センサ、振動センサ、音響センサ、カメラなどである。
【００４４】
暗号化部１０１３は、データ送信装置１０１とデータ収集装置１０２との間で通信コネクションが形成される度に、ランダムな値の暗号鍵である一時鍵を生成する。一時鍵は、例えば、ＲＡＭ１０１６に記憶される。
【００４５】
暗号化部１０１３は、生成した一時鍵と記憶部１０１７に記憶された秘密情報Ａとを掛け合わせて秘密情報Ｃ（第３秘密情報の一例）を生成する。暗号化１０１３は、生成された秘密情報Ｃと記憶部１０１７に記憶された製品情報とを、通信部１０１１を介して、データ収集装置１０２へ送信する。
【００４６】
また、暗号化部１０１３は、センサ部１０１２から入力したセンサデータを、ＲＡＭ１０１６に記録された一時鍵を用いて暗号化する。暗号化部１０１３は、暗号化したセンサデータを、通信部１０１１を介して、データ収集装置１０２へ送信する。
【００４７】
通信部１０１１は、データ収集装置１０２との間でデータの送受信を行う。
【００４８】
データ収集装置１０２は、データ送信装置１０１と同じローカルなネットワーク上、またはインターネット上のクラウド内に存在してもよい。
【００４９】
データ収集装置１０２は、通信部１０２１と、解析部１０２２と、鍵生成部１０２３と、復号化部１０２４と、ＲＡＭ１０２５と、記憶部１０２６と、を備える。
【００５０】
通信部１０２１は、データ送信装置１０１および秘密情報管理装置１０３との間でデータの送受信を行う。
【００５１】
鍵生成部１０２３は、一時鍵を算出する。算出された一時鍵は、ＲＡＭ１０２５に記録される。一時鍵の算出方法については後述する。
【００５２】
復号化部１０２４は、通信部１０２１を介してデータ送信装置１０１から受信した、暗号化されたセンサデータを、ＲＡＭ１０２５に記録された一時鍵を用いて復号化することにより、センサデータを得る。復号化されたセンサデータは、例えば、記憶部１０２６に記憶される。
【００５３】
ＲＡＭ１０２５は、揮発性のメモリである。すなわち、データ収集装置１０２への電力供給が停止されると、ＲＡＭ１０２５に記録されたデータ、例えば、一時鍵は失われる。
【００５４】
解析部１０２２は、復号されたセンサデータを解析する。解析部１０２２は、必要に応じて、解析結果を、記憶部１０２６に記憶する。
【００５５】
秘密情報管理装置１０３は、データ収集装置１０２と別体で構成され、インターネット上のクラウド内、またはデータ収集装置１０２と同じローカルネットワーク内に存在する。
【００５６】
秘密情報管理装置１０３は、通信部１０３１と、検索部１０３２と、秘密情報データベース１０３３と、を備える。
【００５７】
通信部１０３１は、データ収集装置１０２との間でデータの送受信を行う。
【００５８】
秘密情報データベース１０３３は、複数のデータ送信装置１０１毎に、製品情報と、データ送信装置１０１のそれぞれが記憶する秘密情報Ａの、逆元であるそれぞれの秘密情報Ｂ（第２秘密情報の一例）とを関連付けて記憶する。例えば、秘密情報Ｂは、データ送信装置１０１に記録されている秘密情報Ａの乗法的逆元である。具体的には、秘密情報Ａと秘密情報Ｂはそれぞれ有限体上の元であり、それぞれを乗ずると１になる関係にある。
【００５９】
図５は、秘密情報データベース１０３３のデータ構成例を示す。図５において、製品情報は、ベンダ名とデバイス名とで構成される。例えば、ベンダ名が“Ａ社”であり、デバイス名が“Ｗ”である製品情報のデータ送信装置１０１の秘密情報Ｂは“３７４６”となる。このように、秘密情報データベース１０３３は、ベンダ名およびデバイス名と、秘密情報Ｂとを互いに関連づけて記録する。
【００６０】
検索部１０３２は、通信部１０３１を介して、データ収集装置１０２から受信した製品情報をキーに秘密情報データベース１０３３を検索する。
（第１の動作例の説明）
図６は、図４に示すデータ処理システム１００の第１の動作例（暗号鍵共有方法）を示すシーケンスチャートである。なお、本シーケンスチャートは、データ送信装置１０１とデータ収集装置１０２との間で通信コネクションが成立してから、データ送信装置１０１とデータ収集装置１０２との間で一時鍵が共有化されるまでの動作を説明するものである。従って、通信コネクションの成立判定、データの暗号化、暗号化データの送受信、および暗号化データの復号化については、図２および図３を参照されたい。
【００６１】
なお、データ収集装置１０２と秘密情報管理装置１０３との間の通信は、ＴＳＬ（Transport Layer Security）などの暗号化プロトコルにより安全性が確保されている。
【００６２】
データ送信装置１０１の暗号化部１０１３は、データ送信装置１０１とデータ収集装置１０２との間で通信コネクションが形成されると、一時鍵を生成する（ステップＳ２０）。暗号化部１０１３は、生成した一時鍵と秘密情報Ａとを掛け合わせて秘密情報Ｃを生成する（ステップＳ２１）。そして、暗号化部１０１３は、製品情報と秘密情報Ｃとを、通信部１０１１を介して、データ収集装置１０２へ送信する（ステップＳ２２）。
【００６３】
データ収集装置１０２の鍵生成部１０２３は、秘密情報ＣをＲＡＭ１０２５へ記録する。さらに、鍵生成部１０２３は、通信部１０２１を介して、秘密情報管理装置１０３に対して、製品情報を含む秘密情報要求を送信する（ステップＳ２３）。
【００６４】
秘密情報管理装置１０３の検索部１０３２は、秘密情報要求を受信すると、秘密情報要求に含まれる製品情報をキーに秘密情報データベース１０３３を検索し、受信した製品情報が登録されているか否かを判定する（ステップＳ２４）。検索部１０３２は、製品情報が登録されていれば、対応する秘密情報Ｂを取得する。
【００６５】
検索部１０３２は、通信部１０３１を介して、照合結果をデータ収集装置１０２へ送信する（ステップＳ２５）。製品情報が登録されている場合、照合結果は、ＯＫ（登録あり）ステータスと、秘密情報データベース１０３３から取得された秘密情報Ｂとを含む。製品情報が登録されていない場合、照合結果は、ＮＧ（登録なし）ステータスのみを含む。
【００６６】
ＯＫステータスを含む照合結果を受信した場合、データ収集装置１０２の鍵生成部１０２３は、ＲＡＭ１０２５に記録された秘密情報Ｃと、照合結果に含まれる秘密情報Ｂとを掛け合わせることで一時鍵を算出する（ステップＳ２６）。
【００６７】
ここで、秘密情報ＡをＳＡとし、秘密情報ＣをＳＣとし、秘密情報ＢをＳＢ（すなわち、１／ＳＡ）とし、一時鍵をＫＴとしたとき、鍵生成部１０２３は、（式１）を計算することにより、データ送信装置１０１で生成した一時鍵ＫＴを復元することができる。復元された一時鍵ＫＴは、ＲＡＭ１０２５に記録される。
【００６８】
ＳＣ×ＳＢ＝（ＳＡ×ＫＴ）×１／ＳＡ＝ＫＴ      （式１）
鍵生成部１０２３は、データ送信装置１０１に対して、共有ＯＫまたは共有ＮＧを送信する（ステップＳ２７）。鍵生成部１０２３は、秘密情報管理装置１０３からＯＫステータスを含む照合結果を受信した場合にはデータ送信装置１０１に対して共有ＯＫを送信し、秘密情報管理装置１０３からＮＧステータスを含む照合結果を受信した場合にはデータ送信装置１０１に対して共有ＮＧを送信する。
【００６９】
共有ＯＫの場合、データ送信装置１０１とデータ収集装置１０２との間で一時鍵の共有化が完了している。従って、以降、データ送信装置１０１はセンサデータを一時鍵で暗号化してデータ収集装置１０２へ送信し、データ収集装置１０２は復号化部１０２４がＲＡＭ１０２５に記録されている一時鍵を用いて暗号化データを復号することが可能となる。
【００７０】
一方の共有ＮＧの場合、データ送信装置１０１とデータ収集装置１０２との間で一時鍵の共有が完了していない。従って、データ収集装置１０２においてセンサデータを復号することは不可能である。すなわち、データ収集装置１０２は、センサデータを利用することはできない。
（効果の説明）
以上説明した第２の実施形態によれば、第１の実施形態と同様の効果を得ることが可能である。
【００７１】
さらに、第２の実施形態において、一時鍵は、データ収集装置１０２においてＲＡＭ１０２５に記憶される。ＲＡＭ１０２５は揮発性メモリであるため、データ収集装置１０２への電力供給が停止すると、ＲＡＭ１０２５に記録されている一時鍵は失われる。すなわち、次回、データ収集装置１０２が起動したとしても、新たに通信コネクションが成立するまでは一時鍵は存在しない。従って、一時鍵が不必要に維持される状態がより一層減るので、一時鍵が漏えいするリスクをより低減させることが可能となる。
（第２の動作例の説明）
図７は、図４に示すデータ処理システム１００の第２の動作例（暗号鍵共有方法）を示すシーケンスチャートである。
【００７２】
データ送信装置１０１とデータ収集装置１０２との間で一時鍵の共有が正しく行われないと、データ収集装置１０２は、受信したデータを正しく復号するができない。
【００７３】
そこで、図７は、この課題に対する対策としての第２の動作例を示すものである。第２の動作例の特徴は、一時鍵が完全値一致しているかどうかを確認するフェーズを持つ点にある。図７のステップＳ２０からステップＳ２６までの処理は、図６と同一である。
【００７４】
データ収集装置１０２の鍵生成部１０２３は、チャレンジデータを生成する（ステップＳ４０）。チャレンジデータは、使い捨ての乱数のことである。鍵生成部１０２３は、チャレンジデータをデータ送信装置１０１へ送信する（ステップＳ４１）。
【００７５】
データ送信装置１０１の暗号化部１０１３は、受信したチャレンジデータを一時鍵で暗号化してレスポンスデータを作成する（ステップＳ４２）。暗号化部１０１３は、レスポンスデータをデータ収集装置１０２へ送信する（ステップＳ４３）。
【００７６】
鍵生成部１０２３は、受信したレスポンスデータを自身が持つ一時鍵で復号し、復号結果がチャレンジデータと一致するかどうかを検証する（ステップＳ４４）。一致すれば同じ一時鍵が共有できていることが確認でき、一致しなければ共有に失敗していることになる。鍵生成部１０２３は、データ送信装置１０１に対して、検証結果（ＯＫまたはＮＧ）を送信する（ステップＳ４５）。
【００７７】
以上説明したように、図６の動作に、ステップＳ４０〜Ｓ４５の処理を追加することで、一時鍵の共有が成功しているかどうかを確認することができるので、データ収集装置１０２は、データ収集処理を確実に遂行することができる。
＜変形例＞
第２の実施形態では、識別情報の例として製品情報を挙げたが、識別情報は、データ送信装置１０１を識別できる情報であれば如何なる情報であってもよい。
【００７８】
また、第２の実施形態では、データ送信装置１０１がセンサデバイスである場合を例に挙げたが、データ送信装置１０１は、所定のデータを暗号化して送信する装置であれば如何なる装置であってもよい。
［第３の実施形態］
図８は、第３の実施形態に係るデータ処理システム２００の構成例を示すブロック図である。データ処理システム２００の、図４に示すデータ処理システム１００との違いは、データ処理システム２００が、さらに、エッジ装置１０４を備える点にある。
【００７９】
エッジ装置１０４は、データ収集装置１０２の処理負荷を低減させる目的で設置されるものである。エッジ装置１０４は、データ送信装置１０１とデータ収集装置１０２の間に設けられる。
【００８０】
エッジ装置１０４で一旦データの復号を行うため、一時鍵の共有が必要となる。また、エッジ装置１０４で処理したデータをデータ収集装置１０２へ送信するにあたり、再度暗号化し、データ収集装置１０２で復号するため、データ収集装置１０２でも一時鍵の共有が必要となる。
【００８１】
図９は、この時の処理の説明するシーケンスチャートである。図９に示されるように、エッジ装置１０４は、データ送信装置１０１から受信したデータ（製品情報および秘密情報Ｃ）をデータ収集装置１０２へ転送する（ステップＳ５０）。また、データ収集装置１０２は、秘密情報管理装置１０３から受信した照合結果を、エッジ装置１０４へ転送する（ステップＳ５５）。以上の動作により、エッジ装置１０４とデータ収集装置１０２は、同じ一時鍵を共有することが可能となる。
【００８２】
以上説明した第３の実施形態のデータ処理システム２００によれば、データ収集装置１０２の処理負荷を低減させつつも、データ収集装置１０２におけるデータ収集処理を確実に遂行することが可能となる。
［発明の利用が考えられる分野］
以上説明した第１〜第３の実施形態は、ネットワークに繋がり遠隔に存在する装置からの情報を収集するシステムなどあらゆる分野のシステムに適用可能である。上記システムは、例えば、工場などに設置された産業機械の稼働状況を監視するシステム、社会インフラや重要インフラなどの劣化状況を監視するシステム、防犯カメラシステム、あるいは生体情報を収集するシステムなどである。
【００８３】
以上、各実施形態を用いて本発明を説明したが、本発明の技術的範囲は、上記各実施形態の記載に限定されない。上記各実施形態に多様な変更又は改良を加えることが可能であることは当業者にとって自明である。従って、そのような変更又は改良を加えた形態もまた本発明の技術的範囲に含まれることは説明するまでもない。また、以上説明した各実施形態において使用される、数値や各構成の名称等は例示的なものであり適宜変更可能である。
【符号の説明】
【００８４】
１０  データ処理システム
１２  データ送信装置
１４  データ収集装置
１００  データ処理システム
１０１  データ送信装置
１０２  データ収集装置
１０３  秘密情報管理装置
１０４  エッジ装置
２００  データ処理システム
１０１１  通信部
１０１２  センサ部
１０１３  暗号化部
１０１６  ＲＡＭ
１０１７  記憶部
１０２１  通信部
１０２２  解析部
１０２３  鍵生成部
１０２４  復号化部
１０２５  ＲＡＭ
１０２６  記憶部
１０３１  通信部
１０３２  検索部
１０３３  秘密情報データベース
【図１】
2019154007.tif 000003
【図２】
2019154007.tif 000004
【図３】
2019154007.tif 000005
【図４】
2019154007.tif 000006
【図５】
2019154007.tif 000007
【図６】
2019154007.tif 000008
【図７】
2019154007.tif 000009
【図８】
2019154007.tif 000010
【図９】
2019154007.tif 000011