(57)【要約】      （修正有）【課題】電子装置にセキュリティ機能を提供する。【解決手段】セキュリティ装置２０は、第１の通信部２０１、第１の判定部２０２、第１のメッセージタイプ情報記憶部３０１、第１のセキュリティ処理部２０３及び第２の通信部２０４を有する。第１の通信部２０１は、電子装置１０との間で平文メッセージの送受信を行う。第１の判定部２０２は、第１の通信部２０１により平文メッセージが受信されると、第１のメッセージタイプ情報記憶部３０１に記憶されたメッセージタイプ情報に基づいて、平文メッセージがセキュリティ処理の対象であるか否かを判定する。第１のセキュリティ処理部２０３は、第１の判定部２０２によりセキュリティ処理の対象である判定された場合、平文メッセージに対してセキュリティ処理を行う。第２の通信部２０４は、ネットワークＮとの間で平文メッセージや認証メッセージの送受信を行う。【選択図】図４
2017084131.tif 000002
【特許請求の範囲】
【請求項１】
電子装置と直接に接続されるセキュリティ通信装置であって、
前記電子装置からメッセージを受信する第１の受信手段と、
前記第１の受信手段により受信された前記メッセージがセキュリティ処理の対象であるか否かを判定する第１の判定手段と、
前記第１の判定手段により前記メッセージがセキュリティ処理の対象であると判定された場合、該メッセージに対応するセキュリティ情報に基づいて、前記メッセージに対して所定のセキュリティ処理を行う第１のセキュリティ手段と、
前記第１のセキュリティ手段によるセキュリティ処理後のメッセージを、前記セキュリティ通信装置とネットワークを介して接続される他の電子装置に送信する第１の送信手段と、
を有するセキュリティ通信装置。
【請求項２】
前記第１の判定手段は、
前記メッセージに含まれるＥｔｈｅｒｔｙｐｅフィールドの値に基づいて、該メッセージがセキュリティ処理の対象であるか否かを判定する、請求項１に記載のセキュリティ通信装置。
【請求項３】
前記第１のセキュリティ手段は、
前記第１の判定手段により前記メッセージがセキュリティ処理の対象であると判定された場合、該メッセージに対応するセキュリティ情報に基づいて、前記メッセージからメッセージ認証符号を算出し、該メッセージ認証符号を前記メッセージに付加する、請求項１又は２に記載のセキュリティ通信装置。
【請求項４】
前記セキュリティ情報には、前記メッセージ認証符号を算出するための算出方式と、該算出に用いられるパラメータとが含まれる、請求項３に記載のセキュリティ通信装置。
【請求項５】
前記電子装置は、国際標準規格ＩＥＣ６１８５０に準拠したＩＥＤである、請求項１ないし４のいずれか１項に記載のセキュリティ通信装置。
【請求項６】
電子装置と直接に接続されるセキュリティ通信装置であって、
前記セキュリティ通信装置とネットワークを介して接続される他の電子装置からメッセージを受信する第２の受信手段と、
前記第２の受信手段により受信されたメッセージがセキュリティ処理の対象であるか否かを判定する第２の判定手段と、
前記第２の判定手段により前記メッセージがセキュリティ処理の対象であると判定された場合、該メッセージに対応するセキュリティ情報に基づいて、前記メッセージに対して所定のセキュリティ処理を行う第２のセキュリティ手段と、
前記第２のセキュリティ手段によるセキュリティ処理後のメッセージを、前記電子装置に送信する第２の送信手段と、
を有するセキュリティ通信装置。
【請求項７】
前記第２の判定手段は、
前記メッセージに含まれるＥｔｈｅｒｔｙｐｅフィールドの値に基づいて、該メッセージがセキュリティ処理の対象であるか否かを判定する、請求項６に記載のセキュリティ通信装置。
【請求項８】
前記第２のセキュリティ手段は、
前記第２の判定手段により前記メッセージがセキュリティ処理の対象であると判定された場合、該メッセージに対応するセキュリティ情報に基づいて、前記メッセージからメッセージ認証符号を算出し、該メッセージの完全性を検証する、請求項６又は７に記載のセキュリティ通信装置。
【請求項９】
前記セキュリティ情報には、前記メッセージ認証符号を算出するための算出方式と、該算出に用いられるパラメータとが含まれる、請求項８に記載のセキュリティ通信装置。
【請求項１０】
前記電子装置は、国際標準規格ＩＥＣ６１８５０に準拠したＩＥＤである、請求項６ないし９のいずれか１項に記載のセキュリティ通信装置。
【請求項１１】
電子装置と直接に接続されるセキュリティ通信装置に用いられるセキュリティ通信方法であって、
前記電子装置からメッセージを受信する第１の受信手順と、
前記第１の受信手順により受信された前記メッセージがセキュリティ処理の対象であるか否かを判定する第１の判定手順と、
前記第１の判定手順により前記メッセージがセキュリティ処理の対象であると判定された場合、該メッセージに対応するセキュリティ情報に基づいて、前記メッセージに対して所定のセキュリティ処理を行う第１のセキュリティ手順と、
前記第１のセキュリティ手順によるセキュリティ処理後のメッセージを、前記セキュリティ通信装置とネットワークを介して接続される他の電子装置に送信する第１の送信手順と、
を有するセキュリティ通信方法。
【請求項１２】
電子装置と直接に接続されるセキュリティ通信装置に用いられるセキュリティ通信方法であって、
前記セキュリティ通信装置とネットワークを介して接続される他の電子装置からメッセージを受信する第２の受信手順と、
前記第２の受信手順により受信されたメッセージがセキュリティ処理の対象であるか否かを判定する第２の判定手順と、
前記第２の判定手順により前記メッセージがセキュリティ処理の対象であると判定された場合、該メッセージに対応するセキュリティ情報に基づいて、前記メッセージに対して所定のセキュリティ処理を行う第２のセキュリティ手順と、
前記第２のセキュリティ手順によるセキュリティ処理後のメッセージを、前記電子装置に送信する第２の送信手順と、
を有するセキュリティ通信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、セキュリティ通信装置及びセキュリティ通信方法に関する。
【背景技術】
【０００２】
変電所等の施設内の機器を制御する制御システムが知られている（例えば特許文献１参照）。このような変電所内の各機器は、例えば、国際標準規格であるＩＥＣ６１８５０に準拠して構築される。
【０００３】
変電所内の機器としては、例えば、開閉器、駆動装置、発電機、又は変圧器等の主装置、及び主装置を制御するＩＥＤ（Intelligent Electronic Device）と呼ばれる電子装置が挙げられる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１４−９８９８８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ここで、例えば、電子装置間のメッセージが平文で送受信される場合、第三者に当該メッセージが改ざん等されるおそれがある。
【０００６】
しかしながら、ＩＥＤ等の電子装置では、メモリやＣＰＵ（Central Processing Unit）等のリソースに制約があることが多く、メッセージ認証等のセキュリティ機能を当該電子装置に搭載することが難しい場合がある。
【０００７】
本発明の実施の形態は、上記の点に鑑みてなされたもので、セキュリティ機能を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するため、本発明の実施の形態では、電子装置と直接に接続されるセキュリティ通信装置であって、前記電子装置からメッセージを受信する第１の受信手段と、前記第１の受信手段により受信された前記メッセージがセキュリティ処理の対象であるか否かを判定する第１の判定手段と、前記第１の判定手段により前記メッセージがセキュリティ処理の対象であると判定された場合、該メッセージに対応するセキュリティ情報に基づいて、前記メッセージに対して所定のセキュリティ処理を行う第１のセキュリティ手段と、前記第１のセキュリティ手段によるセキュリティ処理後のメッセージを、前記セキュリティ通信装置とネットワークを介して接続される他の電子装置に送信する第１の送信手段と、を有する。
【発明の効果】
【０００９】
本発明の実施の形態によれば、セキュリティ機能を提供することができる。
【図面の簡単な説明】
【００１０】
【図１】本実施形態に係る制御システムの一例を示す図である。
【図２】本実施形態に係る制御システムのセキュリティ処理の概略を示す図である。
【図３】本実施形態に係るセキュリティ装置のハードウェア構成の一例を示す図である。
【図４】本実施形態に係るセキュリティ装置の機能構成の一例を示す図である。
【図５】メッセージタイプ情報の一例を示す図である。
【図６】セキュリティ設定情報の一例を示す図である。
【図７】本実施形態に係るセキュリティ装置が平文メッセージを受信する場合の全体処理の一例を示すフローチャートである。
【図８】平文メッセージのイーサネット（登録商標）フレームの一例を示す図である。
【図９】本実施形態に係るメッセージ認証符号の付加処理の一例を示すフローチャートである。
【図１０】セキュリティ情報の一例を示す図である。
【図１１】認証メッセージのイーサネットフレームの一例を示す図である。
【図１２】本実施形態に係る認証メッセージの作成処理の一例を示すフローチャートである。
【図１３】本実施形態に係るセキュリティ装置が認証メッセージを受信する場合の全体処理の一例を示す図である。
【図１４】本実施形態に係るメッセージの検証処理の一例を示すフローチャートである。
【図１５】セキュリティ情報の他の例を示す図である。
【図１６】本実施形態に係る平文メッセージの作成処理の一例を示すフローチャートである。
【発明を実施するための形態】
【００１１】
以下、本発明の実施形態について、図面を参照しながら詳細に説明する。
【００１２】
＜システム構成＞
まず、本実施形態に係る制御システム１のシステム構成について、図１を参照しながら説明する。図１は、本実施形態に係る制御システムの一例を示す図である。
【００１３】
図１に示す制御システム１は、例えば変電所等の施設内において国際標準規格であるＩＥＣ６１８５０に準拠して構築されたシステム環境であり、複数の電子装置１０と、複数のセキュリティ装置２０と、複数の主装置３０とを有する。
【００１４】
電子装置１０は、例えばＩＥＤ等であり、当該電子装置１０に接続された主装置３０の制御を行う。また、電子装置１０は、セキュリティ装置２０を介してＬＡＮ（Local Area Network）等のネットワークＮに接続されている。
【００１５】
なお、電子装置１０は、例えば、ＧＯＯＳＥ（Generic Object Oriented System Event）やＳＶ（Sampled Value）等のＩＥＣ６１８５０に準拠した通信規格により、他の電子装置１０との間で通信を行うことで、主装置３０の制御を行う。すなわち、電子装置１０は、例えば、所定の間隔で定常的に又は所定のイベント発生時にバースト的に他の電子装置１０から送信されたメッセージに基づいて主装置３０を制御する。
【００１６】
セキュリティ装置２０は、電子装置１０に対してセキュリティ機能を提供する。すなわち、セキュリティ装置２０は、複数の電子装置１０の間で送受信されるメッセージにセキュリティ処理を行うことで、電子装置１０に対してセキュリティ機能を提供する。
【００１７】
なお、セキュリティ装置２０は、例えば、ＬＡＮケーブル等を介して電子装置１０に直接接続されている。ただし、これに限られず、セキュリティ装置２０は、例えば、電子装置１０に内蔵されていても良い。
【００１８】
主装置３０は、例えば、開閉器、駆動装置、発電機、又は変圧器等である。ただし、主装置３０は、これらに限られず、電子装置１０により制御される種々の装置が含まれても良い。
【００１９】
なお、以降では、複数の電子装置１０について、各々を区別して記載するときは、「電子装置１０Ａ」、「電子装置１０Ｂ」等と表す。また、電子装置１０Ａに直接接続されたセキュリティ装置２０を「セキュリティ装置２０Ａ」と表す。同様に、電子装置１０Ｂに直接接続されたセキュリティ装置２０を「セキュリティ装置２０Ｂ」と表す。
【００２０】
ここで、本実施形態に制御システムのセキュリティ処理の概略について、図２を参照しながら説明する。図２は、本実施形態に係る制御システムのセキュリティ処理の概略を示す図である。
【００２１】
図２では、電子装置１０Ａから電子装置１０Ｂに対して、ＧＯＯＳＥやＳＶ等の通信規格によるメッセージを送信する場合を示している。
【００２２】
Ｓ１）まず、電子装置１０Ａは、例えば、所定の間隔で定常的に又は所定のイベント発生時に、メッセージをセキュリティ装置２０Ａに送信する。
【００２３】
Ｓ２）セキュリティ装置２０Ａは、電子装置１０Ａからメッセージを受信すると、当該メッセージからメッセージ認証符号を算出する。そして、セキュリティ装置２０Ａは、算出したメッセージ認証符号を当該メッセージに付加して、セキュリティ装置２０Ｂに送信する。
【００２４】
Ｓ３）セキュリティ装置２０Ｂは、セキュリティ装置２０Ａからメッセージ認証符号が付加されたメッセージを受信すると、当該メッセージの完全性を検証する。そして、セキュリティ装置２０Ａは、メッセージの完全性が検証されると、メッセージ認証符号を除去したメッセージを電子装置１０Ｂに送信する。
【００２５】
Ｓ４）電子装置１０Ｂは、セキュリティ装置２０Ｂからメッセージを受信すると、当該メッセージ基づいて主装置３０を制御する。
【００２６】
以上のように、本実施形態に係る制御システム１では、電子装置１０とセキュリティ装置２０との間は、メッセージ認証符号が付加されていないメッセージ（以降、「平文メッセージ」と表す。）が送受信される。一方、本実施形態に係る制御システム１では、セキュリティ装置２０間（すなわち、ネットワークＮ上）では、メッセージ認証符号が付加されたメッセージ（以降、「認証メッセージ」と表す。）が送受信される。
【００２７】
これにより、本実施形態に係る制御システム１では、例えば、第三者により改ざん等されたメッセージに基づいて、主装置３０が不正に制御されるような事態を防止することができる。
【００２８】
また、本実施形態に係る制御システム１では、電子装置１０に直接接続されたセキュリティ装置２０においてメッセージ認証等のセキュリティ処理を行う。このため、本実施形態に係る制御システム１では、電子装置１０のメモリやＣＰＵ等のリソースに制約がある場合においても、電子装置１０間でセキュアなメッセージを送受信することができる。
【００２９】
なお、図２に示したように、本実施形態では、セキュリティ装置２０がメッセージ認証を行う場合について説明したが、セキュリティ装置２０により提供されるセキュリティ機能は、これに限られない。例えば、セキュリティ装置２０は、電子装置１０間で送受信されるメッセージの暗号化及び復号等を行っても良い。
【００３０】
＜ハードウェア構成＞
次に、本実施形態に係るセキュリティ装置２０のハードウェア構成について、図３を参照しながら説明する。図３は、本実施形態に係るセキュリティ装置のハードウェア構成の一例を示す図である。
【００３１】
図３に示すセキュリティ装置２０は、ＣＰＵ２１と、ＲＡＭ（Random Access Memory）２２と、ＲＯＭ（Read Only Memory）２３と、記憶装置２４と、第１の通信Ｉ／Ｆ２５と、第２の通信Ｉ／Ｆ２６とを有する。これらの各ハードウェアは、それぞれがバスＢで相互に接続されている。
【００３２】
ＲＡＭ２２は、電源を切ってもプログラムやデータを保持することができる不揮発性の半導体メモリである。ＲＯＭ２３は、セキュリティ装置２０のネットワーク設定等のデータやプログラム等が格納されている。
【００３３】
ＣＰＵ２１は、ＲＯＭ２３や記憶装置２４等からプログラムやデータをＲＡＭ２２上に読み出し、処理を実行することで、セキュリティ装置２０の全体の制御や機能や実現する演算装置である。
【００３４】
記憶装置２４は、プログラムやデータを記憶している不揮発性のメモリであり、例えば、フラッシュメモリやＳＳＤ（Solid State Drive）等である。記憶装置２４に格納されるデータには、例えば、本実施形態を実現するプログラム等がある。
【００３５】
第１の通信Ｉ／Ｆ２５は、セキュリティ装置２０を電子装置１０に接続するためのインタフェースである。第２の通信Ｉ／Ｆ２６は、セキュリティ装置２０をネットワークＮに接続するためのインタフェースである。
【００３６】
本実施形態に係るセキュリティ装置２０は、図３に示すハードウェア構成を有することにより、後述するような各種処理を実現できる。
【００３７】
＜機能構成＞
次に、本実施形態に係るセキュリティ装置２０の機能構成について、図４を参照しながら説明する。図４は、本実施形態に係るセキュリティ装置の機能構成の一例を示す図である。
【００３８】
セキュリティ装置２０は、第１の通信部２０１と、第１の判定部２０２と、第１のセキュリティ処理部２０３と、第２の通信部２０４と、第２の判定部２０５と、第２のセキュリティ処理部２０６とを有する。これら各機能部は、セキュリティ装置２０にインストールされた１以上のプログラムが、ＣＰＵ２１に実行させる処理により実現される。
【００３９】
また、セキュリティ装置２０は、第１のメッセージタイプ情報記憶部３０１と、第１のセキュリティ設定情報記憶部３０２と、第２のメッセージタイプ情報記憶部３０３と、第２のセキュリティ設定情報記憶部３０４と、セキュリティ情報記憶部３０５とを有する。これら各記憶部は、例えば、記憶装置２４等を用いて実現可能である。
【００４０】
第１の通信部２０１は、電子装置１０との間で平文メッセージの送受信を行う。すなわち、第１の通信部２０１は、電子装置１０から平文メッセージを受信するとともに、第２のセキュリティ処理部２０６において認証メッセージからメッセージ認証符号を除去した平文メッセージを電子装置１０に送信する。
【００４１】
第１の判定部２０２は、第１の通信部２０１により平文メッセージが受信されると、第１のメッセージタイプ情報記憶部３０１に記憶されたメッセージタイプ情報３０１Ｄに基づいて、当該平文メッセージがセキュリティ処理の対象であるか否かを判定する。
【００４２】
第１のセキュリティ処理部２０３は、第１の判定部２０２によりセキュリティ処理の対象である判定された場合、平文メッセージに対してセキュリティ処理を行う。
【００４３】
すなわち、第１のセキュリティ処理部２０３は、受信した平文メッセージに基づいて、第１のセキュリティ設定情報記憶部３０２からセキュリティ設定情報３０２Ｄを取得する。そして、第１のセキュリティ処理部２０３は、取得したセキュリティ設定情報３０２Ｄに基づいて、セキュリティ情報記憶部３０５からセキュリティ情報３０５Ｄを取得して、当該セキュリティ情報３０５Ｄに基づくセキュリティ処理を行う。
【００４４】
より具体的には、第１のセキュリティ処理部２０３は、セキュリティ情報３０５Ｄに含まれるセキュリティ方式やセキュリティパラメータに基づいて、平文メッセージからメッセージ認証符号を算出する。そして、第１のセキュリティ処理部２０３は、当該平文メッセージに当該メッセージ認証符号を付加して認証メッセージを作成する。
【００４５】
第２の通信部２０４は、ネットワークＮとの間で平文メッセージや認証メッセージの送受信を行う。
【００４６】
第２の判定部２０５は、第２の通信部２０４により平文メッセージ又は認証メッセージが受信されると、第２のメッセージタイプ情報記憶部３０３に記憶されたメッセージタイプ情報３０３Ｄに基づいて、当該平文メッセージ又は当該認証メッセージがセキュリティ処理の対象であるか否かを判定する。
【００４７】
第２のセキュリティ処理部２０６は、第２の判定部２０５によりセキュリティ処理の対象であると判定された認証メッセージに対して、当該認証メッセージを検証した上で、認証メッセージからメッセージ認証符号を除去した平文メッセージを作成する。
【００４８】
すなわち、第２のセキュリティ処理部２０６は、受信した認証メッセージに基づいて、第２のセキュリティ設定情報記憶部３０４からセキュリティ設定情報３０４Ｄを取得する。そして、第２のセキュリティ処理部２０６は、取得したセキュリティ設定情報３０４Ｄに基づいて、セキュリティ情報記憶部３０５からセキュリティ情報３０５Ｄを取得して、当該セキュリティ情報３０５Ｄに基づくセキュリティ処理を行う。
【００４９】
より具体的には、第２のセキュリティ処理部２０６は、セキュリティ情報３０５Ｄに含まれるセキュリティ方式やセキュリティパラメータに基づいて、認証メッセージからメッセージ認証符号を算出する。そして、第２のセキュリティ処理部２０６は、算出したメッセージ認証符号と、認証メッセージに含まれるメッセージ認証符号とに基づいて、当該認証メッセージの完全性を検証した上で、当該メッセージ認証符号を除去した平文メッセージを作成する。
【００５０】
第１のメッセージタイプ情報記憶部３０１及び第２のメッセージタイプ情報記憶部３０３は、それぞれメッセージタイプ情報３０１Ｄ及びメッセージタイプ情報３０３Ｄを記憶する。
【００５１】
ここで、第１のメッセージタイプ情報記憶部３０１及び第２のメッセージタイプ情報記憶部３０３に記憶されたメッセージタイプ情報３０１Ｄ及びメッセージタイプ情報３０３Ｄについて、図５を参照しながら説明する。図５は、メッセージタイプ情報の一例を示す図である。
【００５２】
図５（ａ）は、第１のメッセージタイプ情報記憶部３０１に記憶されたメッセージタイプ情報３０１Ｄの一例を示している。メッセージタイプ情報３０１Ｄは、セキュリティ処理の対象となる（上位層の）プロトコルを示す情報であり、イーサネットフレームのＥｔｈｅｒｔｙｐｅフィールドの値（タイプ値）を示すタイプと、当該タイプ値により示されるプロトコル名とが関連付けられている。
【００５３】
これにより、第１の判定部２０２は、受信した平文メッセージのタイプ値を含むメッセージタイプ情報３０１Ｄが第１のメッセージタイプ情報記憶部３０１に記憶されている場合、セキュリティ処理の対象であると判定する。
【００５４】
図５（ｂ）は、第２のメッセージタイプ情報記憶部３０３に記憶されたメッセージタイプ情報の一例を示している。上記と同様に、メッセージタイプ情報３０３Ｄは、セキュリティ処理の対象となるプロトコルを示す情報であり、タイプと、プロトコル名とが関連付けられている。
【００５５】
これにより、第２の判定部２０５は、受信した平文メッセージ又は認証メッセージのタイ値を含むメッセージタイプ情報３０３Ｄが第２のメッセージタイプ情報記憶部３０３に記憶されている場合、セキュリティ処理の対象であると判定する。
【００５６】
なお、本実施形態に係るセキュリティ装置２０は、第１のメッセージタイプ情報記憶部３０１及び第２のメッセージタイプ情報記憶部３０３を有するものとしたが、これに限られない。例えば、セキュリティ装置２０は、第２のメッセージタイプ情報記憶部３０３を有していなくても良い。この場合、第２の判定部２０５は、第１のメッセージタイプ情報記憶部３０１に記憶されたメッセージタイプ情報３０１Ｄに基づいて、受信した平文メッセージ又は認証メッセージがセキュリティ処理の対象であるか否かを判定すれば良い。
【００５７】
第１のセキュリティ設定情報記憶部３０２及び第２のセキュリティ設定情報記憶部３０４は、セキュリティ設定情報を記憶する。
【００５８】
ここで、第１のセキュリティ設定情報記憶部３０２及び第２のセキュリティ設定情報記憶部３０４に記憶されたセキュリティ設定情報３０２Ｄ及びセキュリティ設定情報３０４Ｄについて、図６を参照しながら説明する。図６は、セキュリティ設定情報の一例を示す図である。
【００５９】
図６（ａ）は、第１のセキュリティ設定情報記憶部３０２に記憶されたセキュリティ設定情報の一例を示している。セキュリティ設定情報３０２Ｄは、メッセージに応じたセキュリティを示す情報である。セキュリティ設定情報３０２Ｄは、タイプと、イーサネットフレームの宛先ＭＡＣ（Media Access Control）アドレスフィールドの値（宛先ＭＡＣアドレス値）を示す宛先ＭＡＣアドレスとに対して、セキュリティ処理名及びセキュリティ情報ＩＤが関連付けられている。
【００６０】
これにより、例えば、平文メッセージのタイプ値が「88-B8」、宛先ＭＡＣアドレス値が「01-0C-CD-01-00-11」である場合、第１のセキュリティ処理部２０３は、セキュリティ情報ＩＤ「ID001」のセキュリティ情報３０５Ｄに基づいて、「HMAC-SHA-256」のセキュリティ処理を行う。すなわち、第１のセキュリティ処理部２０３は、セキュリティ情報ＩＤ「ID001」のセキュリティ情報３０５Ｄに基づいて、平文メッセージから認証メッセージを作成する。
【００６１】
このように、セキュリティ設定情報３０２Ｄには、メッセージのタイプ及び宛先ＭＡＣアドレスに応じて、第１のセキュリティ処理部２０３により行われるセキュリティ処理に関する情報が対応付けられている。
【００６２】
図６（ｂ）は、第２のセキュリティ設定情報記憶部３０４に記憶されたセキュリティ設定情報の一例を示している。上記と同様に、セキュリティ設定情報３０４Ｄは、メッセージに応じたセキュリティを示す情報であり、タイプと、宛先ＭＡＣアドレスとに対して、セキュリティ処理名及びセキュリティ情報ＩＤが関連付けられている。
【００６３】
これにより、例えば、認証メッセージのタイプ値が「88-B8」、宛先ＭＡＣアドレス値が「01-0C-CD-01-00-01」である場合、第２のセキュリティ処理部２０６は、セキュリティ情報ＩＤ「ID101」のセキュリティ情報３０５Ｄに基づいて、「HMAC-SHA-256」のセキュリティ処理を行う。すなわち、第２のセキュリティ処理部２０６は、セキュリティ情報ＩＤ「ID101」のセキュリティ情報３０５Ｄに基づいて、認証メッセージを検証した上で、当該認証メッセージから平文メッセージを作成する。
【００６４】
このように、セキュリティ設定情報３０４Ｄには、メッセージのタイプ及び宛先ＭＡＣアドレスに応じて、第２のセキュリティ処理部２０６により行われるセキュリティ処理に関する情報が対応付けられている。
【００６５】
なお、本実施形態に係るセキュリティ装置２０は、第１のセキュリティ設定情報記憶部３０２及び第２のセキュリティ設定情報記憶部３０４を有するものとしたが、これに限られない。例えば、セキュリティ装置２０は、第２のセキュリティ設定情報記憶部３０４を有していなくても良い。この場合、第２のセキュリティ処理部２０６は、第２のセキュリティ設定情報記憶部３０４に記憶されたセキュリティ設定情報３０４Ｄに基づいて、セキュリティ処理を行えば良い。
【００６６】
セキュリティ情報記憶部３０５は、セキュリティ情報ＩＤ毎に、セキュリティ情報３０５Ｄを記憶する。なお、セキュリティ情報３０５Ｄの詳細については後述する。
【００６７】
＜処理の詳細＞
次に、本実施形態に係る制御システム１の処理の詳細について説明する。
【００６８】
まず、直接接続された電子装置１０からセキュリティ装置２０が平文メッセージを受信する場合の処理について、図７を参照しながら説明する。すなわち、以降で説明する処理は、図２におけるＳ２）の処理の詳細である。図７は、本実施形態に係るセキュリティ装置が平文メッセージを受信する場合の全体処理の一例を示すフローチャートである。
【００６９】
まず、セキュリティ装置２０の第１の通信部２０１は、直接接続された電子装置１０から平文メッセージを受信する（ステップＳ７０１）。
【００７０】
ここで、第１の通信部２０１が受信した平文メッセージのイーサネットフレームのフレームフォーマット１０００の一例を図８に示す。
【００７１】
図８に示すように、フレームフォーマット１０００は、ＳＦＤ（Start of Frame Delimiter）フィールド１００１と、宛先ＭＡＣアドレスフィールド１００２と、送信元ＭＡＣアドレスフィールド１００３とを有する。また、フレームフォーマット１０００は、ＴＰＩＤ（Tag Protocol Identifier）フィールド１００４と、ＴＣＩ（Tag Control Information）フィールド１００５と、Ｅｔｈｅｒｔｙｐｅフィールド１００６と、ＡＰＰＩＤ（Application Identifier）フィールド１００７とを有する。さらに、フレームフォーマット１０００は、長さフィールド１００８と、予約１フィールド１００９と、予約２フィールド１０１０と、ＡＰＤＵ（Application Protocol Data Unit）フィールド１０１１と、ＦＣＳ（Frame Check Sequence）フィールド１０１２とを有する。
【００７２】
このように、第１の通信部２０１は、フレームフォーマット１０００の構造を有する平文メッセージを電子装置１０から受信する。
【００７３】
次に、セキュリティ装置２０の第１の判定部２０２は、第１の通信部２０１により平文メッセージが受信されると、当該平文メッセージに含まれるＥｔｈｅｒｔｙｐｅフィールド１００６の値（タイプ値）を取得する（ステップＳ７０２）。
【００７４】
次に、セキュリティ装置２０の第１の判定部２０２は、取得したタイプ値を含むメッセージタイプ情報３０１Ｄが第１のメッセージタイプ情報記憶部３０１に存在するか否かを判定する（ステップＳ７０３）。すなわち、第１の判定部２０２は、平文メッセージに含まれるＥｔｈｅｒｔｙｐｅフィールド１００６の値に応じて、当該平文メッセージがセキュリティ処理の対象であるか否かを判定する。
【００７５】
具体的には、例えば、ステップＳ７０２で取得されたタイプ値が「88-B8」（プロトコル名「ＧＯＯＳＥ」）や「880BA」（プロトコル名「ＳＶ」）である場合、第１の判定部２０２は、当該タイプ値を含むメッセージタイプ情報３０１Ｄが存在すると判定する。したがって、この場合、第１の判定部２０２は、受信した平文メッセージがセキュリティ処理の対象であると判定する。
【００７６】
ステップＳ７０３において、該当のメッセージタイプ情報３０１Ｄが存在すると判定された場合、セキュリティ装置２０の第１のセキュリティ処理部２０３は、平文メッセージに対してメッセージ認証符号を付加するセキュリティ処理を行う（ステップＳ７０４）。すなわち、第１のセキュリティ処理部２０３は、平文メッセージに対してメッセージ認証符号を付加して、認証メッセージを作成する。なお、本ステップにおけるメッセージ認証符号の付加処理の詳細については後述する。
【００７７】
そして、セキュリティ装置２０の第２の通信部２０４は、第１のセキュリティ処理部２０３により認証メッセージが作成されると、当該認証メッセージを、宛先ＭＡＣアドレスフィールド１００２に指定された宛先に送信（マルチキャスト）する（ステップＳ７０５）。
【００７８】
これにより、本実施形態に係る制御システム１では、電子装置１０から他の電子装置１０宛に認証メッセージが送信される。
【００７９】
一方、ステップＳ７０３において、該当のメッセージタイプ情報３０１Ｄが存在しないと判定された場合、セキュリティ装置２０の第２の通信部２０４は、平文メッセージを、宛先ＭＡＣアドレスフィールド１００２に指定された宛先に送信（マルチキャスト）する（ステップＳ７０６）。
【００８０】
このように、セキュリティ装置２０は、セキュリティ処理の対象でない平文メッセージを、直接接続された電子装置１０から受信した場合は、そのままネットワークＮに送信する。
【００８１】
次に、上記のステップＳ７０４におけるメッセージ認証符号の付加処理の詳細について、図９を参照しながら説明する。図９は、本実施形態に係るメッセージ認証符号の付加処理の一例を示すフローチャートである。
【００８２】
まず、第１のセキュリティ処理部２０３は、平文メッセージに含まれる宛先ＭＡＣアドレスフィールド１００２の値（宛先ＭＡＣアドレス値）を取得する（ステップＳ９０１）。
【００８３】
次に、第１のセキュリティ処理部２０３は、上記で取得したタイプ値及び宛先ＭＡＣアドレス値を含むセキュリティ設定情報３０２Ｄが第１のセキュリティ設定情報記憶部３０２に存在するか否かを判定する（ステップＳ９０２）。
【００８４】
ステップＳ９０２において、該当のセキュリティ設定情報３０２Ｄが存在すると判定された場合、第１のセキュリティ処理部２０３は、当該セキュリティ設定情報３０２Ｄを第１のセキュリティ設定情報記憶部３０２から取得する（ステップＳ９０３）。
【００８５】
次に、第１のセキュリティ処理部２０３は、取得したセキュリティ設定情報３０２Ｄに含まれるセキュリティ情報ＩＤのセキュリティ情報３０５Ｄを、セキュリティ情報記憶部３０５から取得する（ステップＳ９０４）。
【００８６】
例えば、平文メッセージから取得されたタイプ値及び宛先ＭＡＣアドレス値がそれぞれ「88-B8」及び「01-0C-CD-01-00-11」である場合、該当のセキュリティ設定情報３０２Ｄに含まれるセキュリティ情報ＩＤは、「ID001」である。したがって、この場合、第１のセキュリティ処理部２０３は、セキュリティ情報ＩＤ「ID001」のセキュリティ情報３０５Ｄをセキュリティ情報記憶部３０５から取得する。
【００８７】
ここで、セキュリティ情報記憶部３０５に記憶されるセキュリティ情報３０５Ｄについて、図１０を参照しながら説明する。図１０は、セキュリティ情報の一例を示す図である。
【００８８】
図１０に示すセキュリティ情報３０５Ｄは、セキュリティ情報ＩＤと、セキュリティ方式と、１以上のセキュリティパラメータとを有する。
【００８９】
セキュリティ情報ＩＤは、セキュリティ情報３０５Ｄを一意に識別する識別情報である。セキュリティ方式は、平文メッセージに対して行うセキュリティ処理の方式であり、例えば、「ＨＭＡＣ−ＳＨＡ−２５６」や「ＨＭＡＣ−ＭＤ５」等の各種のメッセージ認証方式が含まれる。また、セキュリティパラメータは、セキュリティ方式に指定されたメッセージ認証方式に用いられるパラメータである。なお、セキュリティパラメータは、秘密鍵や共通鍵とも称される。
【００９０】
続いて、第１のセキュリティ処理部２０３は、取得したセキュリティ情報３０５Ｄに基づいて、平文メッセージからメッセージ認証符号を算出し、当該メッセージ認証符号を付加した認証メッセージを作成する（ステップＳ９０５）。
【００９１】
一方、ステップＳ９０２において、該当のセキュリティ設定情報３０２Ｄが存在しないと判定された場合、第１のセキュリティ処理部２０３は、平文メッセージを破棄する（ステップＳ９０６）。なお、このように平文メッセージが破棄された場合、第２の通信部２０４は、上記のステップＳ７０５の処理を行わない。
【００９２】
ここで、第１のセキュリティ処理部２０３により作成された認証メッセージのイーサネットフレームのフレームフォーマット２０００の一例を図１１に示す。
【００９３】
図１１に示すように、フレームフォーマット２０００は、図８に示すフレームフォーマット１０００に対して、拡張部分の長さフィールド２００１と、ＣＲＣ（Cyclic Redundancy Check）フィールド２００２と、拡張フィールド２００３とを有する点が異なる。
【００９４】
以降では、ステップＳ９０５において、第１のセキュリティ処理部２０３により、フレームフォーマット１０００の平文メッセージからフレームフォーマット２０００の認証メッセージを作成する場合の処理について、図１２を参照しながら説明する。図１２は、本実施形態に係る認証メッセージの作成処理の一例を示すフローチャートである。なお、以降では、ステップＳ９０４において、図１０に示すセキュリティ情報３０５Ｄが取得されたものとして説明する。したがって、第１のセキュリティ処理部２０３は、セキュリティ方式として「ＨＭＡＣ−ＳＨＡ−２５６」、セキュリティパラメータとして「ＸＸＸＸＸＸ」用いてメッセージ認証符号を算出するものとする。
【００９５】
まず、第１のセキュリティ処理部２０３は、平文メッセージの予約１フィールド１００９に、拡張フィールド２０１２の長さ（３２バイト）を書き込み、当該予約１フィールド１００９を、拡張部分の長さフィールド２００１とする（ステップＳ１２０１）。
【００９６】
次に、第１のセキュリティ処理部２０３は、平文メッセージのＥｔｈｅｒｔｙｐｅフィールド１００６から拡張部分の長さフィールド２００１までのＣＲＣを算出して、当該算出結果を予約２フィールド１０１０に書き込む。そして、第１のセキュリティ処理部２０３は、予約２フィールド１０１０を、ＣＲＣフィールド２００２とする（ステップＳ１２０２）。
【００９７】
次に、第１のセキュリティ処理部２０３は、セキュリティパラメータ「ＸＸＸＸＸＸ」を用いて、Ｅｔｈｅｒｔｙｐｅフィールド１００６からＡＰＤＵフィールド１０１１までの値をＨＭＡＣ−ＳＨＡ−２５６により計算してメッセージ認証符号を算出する。そして、第１のセキュリティ処理部２０３は、算出したメッセージ認証符号を拡張フィールド２００３に書き込む（ステップＳ１２０３）。
【００９８】
続いて、第１のセキュリティ処理部２０３は、ＦＣＳを再計算して、算出結果をＦＣＳフィールド１０１２に書き込む（ステップＳ１２０４）。
【００９９】
以上により、本実施形態に係るセキュリティ装置２０では、平文メッセージから認証メッセージが作成される。
【０１００】
次に、直接接続された電子装置１０に対してセキュリティ装置２０が平文メッセージを送信する場合の処理について、図１３を参照しながら説明する。すなわち、以降で説明する処理は、図２におけるＳ３）の処理の詳細である。図１３は、本実施形態に係るセキュリティ装置が認証メッセージを受信する場合の全体処理の一例を示す図である。
【０１０１】
まず、セキュリティ装置２０の第２の通信部２０４は、ネットワークＮから認証メッセージ又は平文メッセージを受信する（ステップＳ１３０１）。なお、以降では、ネットワークＮから受信する認証メッセージ又は平文メッセージを、単に「受信メッセージ」と表す。
【０１０２】
次に、セキュリティ装置２０の第２の判定部２０５は、第２の通信部２０４により受信メッセージが受信されると、当該受信メッセージに含まれるＥｔｈｅｒｔｙｐｅフィールド１００６の値（タイプ値）を取得する（ステップＳ１３０２）。
【０１０３】
次に、セキュリティ装置２０の第２の判定部２０５は、第２のメッセージタイプ情報記憶部３０３において、取得したタイプ値を含むメッセージタイプ情報３０３Ｄが存在するか否かを判定する（ステップＳ１３０３）。すなわち、第２の判定部２０５は、受信メッセージに含まれるＥｔｈｅｒｔｙｐｅフィールド１００６の値に応じて、当該受信メッセージがセキュリティ処理の対象であるか否かを判定する。
【０１０４】
ステップＳ１３０３において、該当のメッセージタイプ情報３０３Ｄが存在すると判定された場合、第２のセキュリティ処理部２０６は、受信メッセージを検証するセキュリティ処理を行う（ステップＳ１３０４）。すなわち、第２のセキュリティ処理部２０６は、受信メッセージの完全性を検証する。そして、第２のセキュリティ処理部２０６は、受信メッセージの完全性が保たれていることを示す検証結果である場合、当該受信メッセージ（すなわち、認証メッセージ）からメッセージ認証符号を除去して、平文メッセージを作成する。なお、本ステップにおけるメッセージの検証処理の詳細については後述する。
【０１０５】
続いて、セキュリティ装置２０の第１の通信部２０１は、第２のセキュリティ処理部２０６により平文メッセージが作成されると、当該平文メッセージを、直接接続された電子装置１０に送信する（ステップＳ１３０５）。
【０１０６】
これにより、本実施形態に係る制御システム１では、他の電子装置１０から送信された認証メッセージが平文化される。
【０１０７】
一方、ステップＳ１３０３において、該当のメッセージタイプ情報３０３Ｄが存在しないと判定された場合、第１の通信部２０１は、受信メッセージ（すなわち、平文メッセージ）を、直接接続された電子装置１０に送信する（ステップＳ１３０６）。このように、セキュリティ装置２０は、ネットワークＮを介して他の電子装置１０から、セキュリティ処理の対象でない平文メッセージを受信した場合は、直接接続された電子装置１０にそのまま送信する。
【０１０８】
次に、上記のステップＳ１３０４におけるメッセージの検証処理の詳細について、図１４を参照しながら説明する。図１４は、本実施形態に係るメッセージの検証処理の一例を示すフローチャートである。
【０１０９】
まず、第２のセキュリティ処理部２０６は、受信メッセージに含まれる宛先ＭＡＣアドレスフィールド１００２の値（宛先ＭＡＣアドレス値）を取得する（ステップＳ１４０１）。
【０１１０】
次に、第２のセキュリティ処理部２０６は、上記で取得したタイプ値及び宛先ＭＡＣアドレス値を含むセキュリティ設定情報３０４Ｄが第２のセキュリティ設定情報記憶部３０４に存在するか否かを判定する（ステップＳ１４０２）。
【０１１１】
ステップＳ１４０２において、該当のセキュリティ設定情報３０４Ｄが存在すると判定された場合、第２のセキュリティ処理部２０６は、当該セキュリティ設定情報３０４Ｄを第２のセキュリティ設定情報記憶部３０４から取得する（ステップＳ１４０３）。
【０１１２】
次に、第２のセキュリティ処理部２０６は、取得したセキュリティ設定情報３０４Ｄに含まれるセキュリティ情報ＩＤのセキュリティ情報３０５Ｄを、セキュリティ情報記憶部３０５から取得する（ステップＳ１４０４）。
【０１１３】
例えば、受信メッセージから取得されたタイプ値及び宛先ＭＡＣアドレス値がそれぞれ「88-BA」及び「01-0C-CD-04-00-33」である場合、該当のセキュリティ設定情報３０４Ｄに含まれるセキュリティ情報ＩＤは、「ID102」である。したがって、この場合、第２のセキュリティ処理部２０６は、セキュリティ情報ＩＤ「ID102」のセキュリティ情報３０５Ｄをセキュリティ情報記憶部３０５から取得する。
【０１１４】
続いて、第２のセキュリティ処理部２０６は、取得したセキュリティ情報３０５Ｄに基づいて、受信メッセージからメッセージ認証符号を算出する（ステップＳ１４０５）。
【０１１５】
すなわち、例えば、ステップＳ１４０４において、図１５に示すセキュリティ情報３０５Ｄが取得された場合、第２のセキュリティ処理部２０６は、セキュリティパラメータ「ＹＹＹＹＹＹ」を用いて、受信メッセージのＥｔｈｅｒｔｙｐｅフィールド１００６からＡＰＤＵフィールド１０１１までの値をＨＭＡＣ−ＳＨＡ−２５６により計算してメッセージ認証符号を算出する。
【０１１６】
次に、第２のセキュリティ処理部２０６は、算出したメッセージ認証符号に基づいて、受信メッセージの完全性を検証する（ステップＳ１４０６）。すなわち、第２のセキュリティ処理部２０６は、例えば、算出したメッセージ認証符号と、受信メッセージの拡張フィールド２００３に含まれるメッセージ認証符号とが一致するか否かにより、当該受信メッセージの完全性を検証する。
【０１１７】
なお、受信メッセージが平文メッセージである場合、平文メッセージは拡張フィールド２００３を有しないため、第２のセキュリティ処理部２０６による検証結果は、受信メッセージの完全性が保たれていないことを示すものとなる。
【０１１８】
ステップＳ１４０６において、検証結果が受信メッセージの完全性が保たれていることを示すものである場合、第２のセキュリティ処理部２０６は、受信メッセージ（すなわち、認証メッセージ）からメッセージ認証符号を除去した平文メッセージを作成する（ステップＳ１４０７）。
【０１１９】
一方、ステップＳ１４０２において、該当のセキュリティ設定情報３０４Ｄが存在しないと判定された場合、又はステップＳ１４０６において、検証結果が受信メッセージの完全性が保たれていないことを示すものである場合、第２のセキュリティ処理部２０６は、受信メッセージを破棄する（ステップＳ１４０８）。この場合、受信メッセージが改ざん等されている可能性があるためである。
【０１２０】
以降では、ステップＳ１４０７において、第２のセキュリティ処理部２０６により、フレームフォーマット２０００の認証メッセージからフレームフォーマット１０００の平文メッセージを作成する場合の処理について、図１６を参照しながら説明する。図１６は、本実施形態に係る平文メッセージの作成処理の一例を示すフローチャートである。
【０１２１】
まず、第２のセキュリティ処理部２０６は、認証メッセージの拡張部分の長さフィールド２００１及びＣＲＣフィールド２００２をゼロクリアして、それぞれ予約１フィールド１００９及び予約２フィールド１０１０とする（ステップＳ１６０１）。
【０１２２】
次に、第２のセキュリティ処理部２０６は、認証メッセージの拡張フィールド２００３を除去する（ステップＳ１６０２）。
【０１２３】
続いて、第２のセキュリティ処理部２０６は、ＦＣＳを再計算して、算出結果をＦＣＳフィールド１０１２に書き込む（ステップＳ１６０３）。
【０１２４】
以上により、本実施形態に係るセキュリティ装置２０では、認証メッセージから平文メッセージが作成される。
【０１２５】
＜まとめ＞
以上のように、本実施形態に係る制御システム１では、電子装置１０の間でメッセージの送受信を行う際に、当該電子装置１０に直接接続されたセキュリティ装置２０でセキュリティ処理を行う。これにより、本実施形態に係る制御システム１では、電子装置１０の間でセキュアにメッセージの送受信を行うことができる。
【０１２６】
また、本実施形態に係る制御システム１では、セキュリティ装置２０においてセキュリティ処理を行うため、例えば、電子装置１０のメモリやＣＰＵ等のリソースの制約を受けることなく、セキュアなメッセージの送受信を行うことができる。
【０１２７】
以上、本発明の実施形態について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【０１２８】
１        制御システム
１０      電子装置
２０      セキュリティ装置
３０      主装置
２０１    第１の通信部
２０２    第１の判定部
２０３    第１のセキュリティ処理部
２０４    第２の通信部
２０５    第２の判定部
２０６    第２のセキュリティ処理部
３０１    第１のメッセージタイプ情報記憶部
３０２    第１のセキュリティ設定情報記憶部
３０３    第２のメッセージタイプ情報記憶部
３０４    第２のセキュリティ設定情報記憶部
３０５    セキュリティ情報記憶部
Ｎ        ネットワーク
【図１】
2017084131.tif 000003
【図２】
2017084131.tif 000004
【図３】
2017084131.tif 000005
【図４】
2017084131.tif 000006
【図５】
2017084131.tif 000007
【図６】
2017084131.tif 000008
【図７】
2017084131.tif 000009
【図８】
2017084131.tif 000010
【図９】
2017084131.tif 000011
【図１０】
2017084131.tif 000012
【図１１】
2017084131.tif 000013
【図１２】
2017084131.tif 000014
【図１３】
2017084131.tif 000015
【図１４】
2017084131.tif 000016
【図１５】
2017084131.tif 000017
【図１６】
2017084131.tif 000018