(57)【要約】      （修正有）【課題】社会インフラシステムを変更することなく、社会インフラシステムの安全性を向上させることができる通信制御装置を提供する。【解決手段】クライアント側通信制御装置３０は、無線通信部(リーダライタ３５)と、ネットワークノード部３２と、認証部４０と、仲介処理部３３Ａとを持つ。無線通信部は、電波の届く範囲に置かれた少なくとも一つのセンサデバイスと無線通信する。ネットワークノード部は、ネットワークを介してサーバ側通信制御装置と通信する。認証部は、センサデバイスから受信した情報を暗号化し、サーバ側通信制御装置を介してサーバ装置から受信した情報を復号する。仲介処理部は、認証部により暗号化された情報を前サーバ側通信制御装置を介してサーバ装置に送信し、認証部により復号された情報を線通信部を介してセンサデバイスに送信する。【選択図】図３
2020123785.tif 000002
【特許請求の範囲】
【請求項１】
電波の届く範囲に置かれた少なくとも一つのセンサデバイスと無線通信する無線通信部と、
ネットワークを介してサーバ側通信制御装置と通信するネットワークノード部と、
前記センサデバイスから受信した情報を暗号化し、前記サーバ側通信制御装置を介してサーバ装置から受信した情報を復号する認証部と、
前記認証部により暗号化された情報を前記サーバ側通信制御装置を介して前記サーバ装置に送信し、前記認証部により復号された情報を前記無線通信部を介して前記センサデバイスに送信する仲介処理部と、
を備える通信制御装置。
【請求項２】
前記認証部は、
プライベート認証局により発行された秘密情報であって、前記センサデバイスごとに異なる前記秘密情報を用いる相互認証を、前記サーバ側通信制御装置との間で行う、
請求項１に記載の通信制御装置。
【請求項３】
前記プライベート認証局により発行された前記秘密情報と、前記センサデバイスを識別する識別情報とを対応付けて管理する管理部と、をさらに備え、
前記認証部は、
前記センサデバイスから受信した情報に基づいて前記センサデバイスに対応する前記秘密情報を取得し、取得した前記秘密情報を用いて相互認証を行う、
請求項２に記載の通信制御装置。
【請求項４】
前記認証部は、
前記センサデバイスごとに共通鍵を決定し、決定された共通鍵を用いて、前記センサデバイスから受信した情報を暗号化し、前記決定された共通鍵を用いて、前記サーバ装置から受信した情報を復号する、
請求項２または３に記載の通信制御装置。
【請求項５】
前記認証部は、
前記センサデバイスが事前に登録されている識別情報に対応付けられている場合、前記センサデバイスから受信した情報を暗号化し、前記サーバ側通信制御装置を介して前記サーバ装置から受信した情報を復号する、
請求項１から４のうちいずれか一項に記載の通信制御装置。
【請求項６】
前記無線通信部は、
アクセスポイントとして機能する外部装置を介して、前記外部装置の電波の届く範囲に置かれたセンサデバイスと無線通信する、
請求項１から５のうちいずれか一項に記載の通信制御装置。
【請求項７】
前記仲介処理部は、
前記無線通信部と無線通信する第１センサデバイスとの接続状況に基づいて、前記無線通信部と無線通信する第２センサデバイスに対して所定のコマンドを送信する、
請求項１から６のうちいずれか一項に記載の通信制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、通信制御装置に関する。
【背景技術】
【０００２】
監視カメラ等の社会インフラシステムにおいては、取り扱われるデータや機器の制御がマルウェア等の攻撃から防御される必要がある。しかしながら、社会インフラシステムを構成する機器類は頻繁に置換えることは、経済的な理由など、さまざまな理由で難しい。このため、安全対策が不十分になってしまうという問題があった。
【０００３】
また、監視カメラ等の社会インフラシステムを構成する機器類が、無線通信でネットワークを介して接続される場合、より高いレベルの安全対策をシステムコンポーネント側に講じる必要があり、機器類を頻繁に置き換えることが困難な状況では、安全対策がさらに不十分になってしまうという問題があった。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−１１７８８７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明が解決しようとする課題は、社会インフラシステムを変更することなく、社会インフラシステムの安全性を向上させることができる通信制御装置を提供することである。
【課題を解決するための手段】
【０００６】
実施形態の通信制御装置は、無線通信部と、ネットワークノード部と、認証部と、仲介処理部とを持つ。無線通信部は、電波の届く範囲に置かれた少なくとも一つのセンサデバイスと無線通信する。ネットワークノード部は、ネットワークを介してサーバ側通信制御装置と通信する。認証部は、前記センサデバイスから受信した情報を暗号化し、前記サーバ側通信制御装置を介してサーバ装置から受信した情報を復号する。仲介処理部は、前記認証部により暗号化された情報を前記サーバ側通信制御装置を介して前記サーバ装置に送信し、前記認証部により復号された情報を前記無線通信部を介して前記センサデバイスに送信する。
【図面の簡単な説明】
【０００７】
【図１】実施形態の通信制御システム１の構成例を示す図。
【図２】実施形態のクライアント装置１０とサーバ装置２０の機能構成例を示すブロック図。
【図３】実施形態のクライアント側通信制御装置３０機能構成例を示すブロック図。
【図４】実施形態のサーバ側通信制御装置３１の機能構成例を示すブロック図。
【図５】実施形態のＩＣカード４０のハードウェア構成の一例を示す図。
【図６】実施形態のＩＣカード４０の機能構成例を示すブロック図。
【図７】実施形態の通信制御管理装置５０の機能構成の一例を示すブロック図。
【図８】実施形態の通信制御システム１が行う処理の一例を示すシーケンスチャート。
【図９】第２実施形態の通信制御システム１Ａの構成例を示す図。
【発明を実施するための形態】
【０００８】
以下、実施形態の通信制御装置を、図面を参照して説明する。
【０００９】
（第１実施形態）
図１は、実施形態の通信制御システム１の構成例を示す図である。通信制御システム１は、少なくとも一以上のクライアント装置１０（１０Ａ、１０Ｂ…）と、サーバ装置２０と、少なくとも一以上のクライアント側通信制御装置３０と、サーバ側通信制御装置３１と、通信制御管理装置５０とを備える。クライアント装置１０は、例えば、既に設置されている監視カメラや、その他ＩｏＴ機器などのセンサデバイスである。よって、クライアント装置１０は、暗号化処理や復号処理を実行するために必要な十分な機能を備えていない場合もある。
【００１０】
クライアント装置１０とクライアント側通信制御装置３０とは、無線通信で通信する。無線通信には、例えばＷｉ−Ｆｉ網、Ｂｌｕｅｔｏｏｔｈ（登録商標）などが含まれる。
クライアント装置１０とクライアント側通信制御装置３０の間のネットワークを、以下、第１ネットワークと記す。クライアント側通信制御装置３０は、クライアント装置１０の無線アクセスポイントとして機能する。
【００１１】
クライアント側通信制御装置３０は、ネットワークＮＷを介して、有線通信でサーバ側通信制御装置３１と通信する。クライアント側通信制御装置３０は、ゲートウェイの機能を備える。詳細については後述する。
【００１２】
サーバ側通信制御装置３１は、ネットワークＮＷを介して、有線通信でクライアント側通信制御装置３０と通信する。サーバ側通信制御装置３１とサーバ装置２０とは、有線で通信する。
【００１３】
つまり、クライアント装置１０は、クライアント側通信制御装置３０を介してネットワークＮＷと接続する。サーバ装置２０は、サーバ側通信制御装置３１を介してネットワークＮＷと接続する。なお、クライアント装置１０およびサーバ装置２０の構成の詳細については後述する。
【００１４】
クライアント側通信制御装置３０は、クライアント装置１０とネットワークＮＷとの間に接続され、クライアント装置１０とサーバ装置２０との間の通信を仲介する。クライアント側通信制御装置３０は、クライアント装置１０により取得されたデータをクライアント装置１０から受信し、受信したデータをサーバ装置２０に対して送信する。ここで、クライアント側通信制御装置３０は、サーバ装置２０に対してデータを送信する際に、クライアント装置１０から取得したデータを暗号化し、暗号化したデータをサーバ装置２０に対して送信する。
【００１５】
また、クライアント側通信制御装置３０は、サーバ装置２０からクライアント装置１０に対して送信されるデータをサーバ側通信制御装置３１から受信し、受信したデータをクライアント装置１０に対して送信する。ここで、クライアント側通信制御装置３０が受信するデータは、例えばサーバ側通信制御装置３１により暗号化されたデータである。クライアント側通信制御装置３０は、クライアント装置１０にデータを送信する際に、サーバ側通信制御装置３１を介してサーバ装置２０から受信したデータを復号し、復号したデータをクライアント装置１０に送信する。
【００１６】
サーバ側通信制御装置３１は、サーバ装置２０とネットワークＮＷとの間に接続され、クライアント装置１０とサーバ装置２０との間の通信を仲介する。サーバ側通信制御装置３１は、サーバ装置２０からクライアント装置１０に対して送信されるデータをサーバ装置２０から受信し、受信したデータをクライアント装置１０に対して送信する。ここで、サーバ側通信制御装置３１は、クライアント装置１０に対してデータを送信する際に、サーバ装置２０から取得したデータを暗号化し、暗号化したデータをクライアント装置１０に対して送信する。
【００１７】
また、サーバ側通信制御装置３１は、クライアント装置１０からサーバ装置２０に対して送信されるデータをクライアント側通信制御装置３０から受信し、受信したデータをサーバ装置２０に対して送信する。ここで、サーバ側通信制御装置３１が受信するデータは、例えばクライアント側通信制御装置３０により暗号化されたデータである。サーバ側通信制御装置３１は、サーバ装置２０にデータを送信する際に、クライアント側通信制御装置３０を介してクライアント装置１０から受信したデータを復号し、復号したデータをサーバ装置２０に送信する。
【００１８】
本実施形態において、クライアント側通信制御装置３０およびサーバ側通信制御装置３１が行うデータの暗号化には、例えば、ＳＳＬ（Secure Socket Layer）／ＴＬＳ（Transport Layer Security）のプロトコルによる暗号化が行われる。クライアント側通信制御装置３０およびサーバ側通信制御装置３１は、例えば、ＳＳＬ／ＴＬＳプロトコルを、ＨＴＴＰと組み合わせることで、ＨＴＴＰに含まれるデータを暗号化し、安全性を向上させたＨＴＴＰＳ（HTTP Secure）に置き換える。
【００１９】
なお、クライアント側通信制御装置３０およびサーバ側通信制御装置３１が行うデータの暗号化は、ＨＴＴＰをＨＴＴＰＳとすることに限定されない。クライアント側通信制御装置３０およびサーバ側通信制御装置３１は、ＳＳＬ／ＴＬＳプロトコルを種々の通信プロトコルと組み合わせることにより、安全性を向上させたセキュアな通信プロトコルに置き換えてもよい。例えば、クライアント側通信制御装置３０およびサーバ側通信制御装置３１は、ＦＴＰ（File Transfer Protocol）をＦＴＰＳ（FTP Secure）に置き換えてもよい。
【００２０】
本実施形態においては、クライアント側通信制御装置３０またはサーバ側通信制御装置３１により暗号化されたデータがネットワークＮＷに出力される。換言すると、本実施形態においては、ネットワークＮＷを流れるデータは、暗号化されたデータである。このため、ネットワークＮＷで送受信されるデータに対し、外部から悪意をもってアクセスされ、データが盗聴されてしまうような危険を回避し、安全性を向上させる。なお、ここでいうデータの盗聴とは、「データを盗み見る行為」または「データを抜き取る行為」をいう。
【００２１】
通信制御管理装置５０は、プライベート認証局として機能し、例えばクライアント装置１０ごとに、クライアント証明書、および秘密鍵を発行する。例えば、通信制御管理装置５０は、クライアント証明書、および秘密鍵を記憶させたＩＣカードを発行する。また、通信制御管理装置５０は、ＩＣカードが装着されたクライアント側通信制御装置３０に対し、ＩＣカードに記憶させるクライアント証明書、および秘密鍵を、ネットワークＮＷを介して送信する。なお、通信制御管理装置５０は、クライアント側通信制御装置３０が複数のクライアント装置１０Ａ，１０Ｂ…と通信する場合、クライアント装置１０Ａ，１０Ｂ…ごとに、クライアント証明書、および秘密鍵を発行し、発行した全てのクライアント証明書、および秘密鍵を記憶させたＩＣカードを発行する。
【００２２】
また、通信制御管理装置５０は、サーバ側通信制御装置３１に対し、サーバ証明書、および秘密鍵を発行する。例えば、通信制御管理装置５０は、サーバ証明書、および秘密鍵を記憶させたＩＣカードを発行する。また、通信制御管理装置５０は、ＩＣカードが装着されたサーバ側通信制御装置３１に対し、ＩＣカードに記憶させるサーバ証明書、および秘密鍵を、ネットワークＮＷを介して送信する。なお、通信制御管理装置５０は、クライアント側通信制御装置３０が複数のクライアント装置１０Ａ，１０Ｂ…と通信する場合、クライアント装置１０Ａ，１０Ｂ…ごとに、サーバ証明書、および秘密鍵を発行し、発行した全てのサーバ証明書、および秘密鍵を記憶させたＩＣカードを発行する。
【００２３】
クライアント証明書、および秘密鍵を記憶させたＩＣカードと、サーバ証明書、および秘密鍵を記憶させたＩＣカードとは、同一のＩＣカードであってもよく、別のＩＣカードであってもよい。また、クライアント装置１０Ａ，１０Ｂ…ごとに、クライアント証明書、サーバ証明書および秘密鍵を、それぞれ異なるＩＣカードに記憶させてもよい。
【００２４】
クライアント証明書、サーバ証明書、および秘密鍵のそれぞれは、クライアント側通信制御装置３０とサーバ側通信制御装置３１とが暗号化通信を行う場合に用いる共通鍵（セッション鍵）を決定するために必要な情報である。
【００２５】
また、通信制御管理装置５０は、正当なクライアント装置１０とクライアント側通信制御装置３０とのペアを登録する。正当なクライアント装置１０とは、例えば、無線通信を確立するために必要な正しいパスワード（例えば、Ｗｉ−Ｆｉのパスワード）を送信してきたクライアント装置１０などである。例えば、通信制御管理装置５０は、クライアント装置１０のアドレス情報と、クライアント側通信制御装置３０のアドレス情報とを取得し、両アドレス情報を対応付けたホワイトリストを作成し、自装置の記憶部に格納する。アドレス情報には、例えば、ＩＰアドレスやＭＡＣアドレスなどが含まれる。
【００２６】
通信制御管理装置５０は、作成したホワイトリストをクライアント側通信制御装置３０に送信する。クライアント側通信制御装置３０は、ホワイトリストに基づいて、正当なクライアント装置１０と通信する。これに限られず、通信制御管理装置５０は、ホワイトリストに基づいて、クライアント側通信制御装置３０に対し、ホワイトリストに登録されているアドレス情報のクライアント装置１０と接続するよう指示してもよい。また、ホワイトリストは、クライアント側通信制御装置３０により、上述した通りに作成されてもよい。
【００２７】
通信制御管理装置５０は、自装置の操作部を用いて管理者が入力することによりアドレス情報を取得してもよく、クライアント側通信制御装置３０からアドレス情報を取得してもよい。後者の場合、クライアント側通信制御装置３０は、初期設定の際に、正当なクライアント装置１０と無線通信を確立した時に取得したクライアント装置１０のアドレス情報と、自身のアドレス情報とを、ネットワークＮＷを介して通信制御管理装置５０に送信してもよい。
【００２８】
ここで、通信制御システム１の設置される環境の一例について説明する。クライアント装置１０とサーバ装置２０とは、社会インフラシステムを構築する構成要素（コンポーネント）である。社会インフラとは、例えば、道路交通網、発電設備、配送電設備、水処理設備、又はガス配給設備等、社会基盤を整えるために必要な設備である。社会インフラシステムとは、例えば、社会インフラを監視し、状況の変化を把握し、その変化に対応することにより、社会インフラを安定的に動作させる仕組みである。以下においては、クライアント装置１０とサーバ装置２０とは、道路や公共設備などを監視する監視システムのコンポーネントである場合を例に説明する。この場合、クライアント装置１０は、道路の状況等が撮像された撮像データを、ネットワークＮＷを介して送信する装置（ネットワーク監視カメラ）である。サーバ装置２０は、クライアント装置１０により送信された撮像データを、ネットワークＮＷを介して受信する装置である。
【００２９】
なお、クライアント装置１０とサーバ装置２０とは、監視システムのコンポーネントに限定されることはない。例えば、クライアント装置１０とサーバ装置とは、発電設備や配送電設備における電力状況をモニタリングするシステムのコンポーネントであってもよいし、物流センタにおける配送状況を取得するシステム、あるいは工場や研究機関における設備の稼働状況を取得するシステム等のコンポーネントであってもよい。
【００３０】
次に、クライアント装置１０およびサーバ装置２０の構成について説明する。図２は、実施形態のクライアント装置１０とサーバ装置２０の機能構成例を示すブロック図である。
【００３１】
クライアント装置１０は、通信部１１と、クライアント制御部１２と、撮像部１３とを備える。通信部１１は、例えば、クライアント側通信制御部３０と無線通信を確立する。通信部１１は、クライアント装置１０の使用可能な通信帯域で無線通信する。クライアント装置１０の使用可能な通信帯域は、自装置により設定されてもよく、外部装置からの指示に従って設定されてもよい。また、クライアント装置１０の使用可能な通信帯域は、外部装置からの指示に従って変更されてもよい。
【００３２】
クライアント制御部１２は、例えば、ＣＰＵ（Central Processing Unit）などを含むプロセッサであり、クライアント装置１０を統括的に制御する。クライアント制御部１２は、例えば、通信部１１を介してサーバ装置２０からコマンドを受信した場合、サーバ装置２０からの制御に従って撮像部１３に撮像を開始または停止させたり、撮像部１３に対し撮像するカメラの方向や、撮像する際の倍率等の撮像条件を設定したりする。
【００３３】
撮像部１３は、クライアント制御部１２の指示に従い、所定箇所における風景を撮像する。撮像部１３は、撮像したデータ（撮像データ）を、クライアント制御部１２に出力する。
【００３４】
サーバ装置２０は、通信部２１と、サーバ制御部２２と、撮像データ記憶部２３と、出力部２４とを備える。通信部２１は、例えば、サーバ装置２０のイーサネット（登録商標）のポートである。本実施形態では、通信部２１は、有線ケーブルを介してサーバ側通信制御装置３１に接続され、サーバ装置２０からクライアント装置１０に対して送信されるデータをサーバ側通信制御装置３１に出力する。
【００３５】
サーバ制御部２２は、例えば、ＣＰＵなどを含むプロセッサであり、サーバ装置２０を統括的に制御する。サーバ制御部２２は、例えば、クライアント装置１０に対して所定のコマンドを送信する。また、サーバ制御部２２は、例えば、クライアント装置１０により撮像された撮像データを、撮像データ記憶部２３に記憶させる。撮像データ記憶部２３は、サーバ制御部２２の指示に従い、撮像データを記憶する。
【００３６】
ここで、従来システムの一例について説明する。従来のシステムにおいて、クライアント装置とサーバ装置とが、互いの通信部およびネットワークを介して直接的に接続される場合、クライアント装置とサーバ装置との間の通信には、ネットワーク監視カメラにおける一般的な通信プロトコルであるＨＴＴＰが用いられる。この場合、クライアント装置またはサーバ装置によりネットワークに出力された、暗号化されていない情報（いわゆる、平文）がネットワークを流れる。この場合、外部から悪意をもってネットワーク上のデータが取得されてしまうと、容易に撮像データが盗聴されたり、改ざんされたりする危険性がある。
【００３７】
このような不正な攻撃に対する対策として、クライアント装置が、撮像データを暗号化させてネットワークＮＷに出力させることが考えられる。しかしながら、そもそも監視カメラが備えるＣＰＵ等のプロセッサは、撮像データの圧縮や符号化の用途に用いられるために用いられる用途で用いられることが一般的であるため、さらに暗号化のための処理を行うだけの資源（リソース）を備えていない。このような場合、クライアント装置が元々有するＣＰＵでは、撮像データを暗号化させることができない。クライアント装置に撮像データを暗号化させる場合には、撮像データを暗号化するためのプロセッサを、更にクライアント装置に搭載させる等、クライアント装置のハードウェア構成の変更や置換えが必要となることが考えられる。しかしながら、クライアント装置は、監視カメラ等の社会インフラを構成するコンポーネントであるため、ハードウェア構成を変更したり置換えたりすることが容易にはできない。このような事情を鑑みると、クライアント装置に変更を加えることなく、撮像データが暗号化されてネットワークに出力されることが望ましい。
【００３８】
本実施形態において、クライアント装置１０とネットワークＮＷとの間に接続されたクライアント側通信制御装置３０が、クライアント装置１０が送信するデータを暗号化してネットワークＮＷに出力する。また、サーバ装置２０とネットワークＮＷとの間に接続されたサーバ側通信制御装置３１が、サーバ装置２０が送信する制御データを暗号化してネットワークＮＷに出力する。これにより、クライアント装置１０、およびサーバ装置２０を変更することなく、ネットワークＮＷを流れる撮像データの安全性を向上させる。
【００３９】
また、本実施形態において、クライアント側通信制御装置３０は、ゲートウェイとしての機能も備える。これにより、ゲートウェイを用意する必要がなくなり、コストを抑えることができる。
【００４０】
次に、クライアント側通信制御装置３０の構成について説明する。図３は、実施形態のクライアント側通信制御装置３０の機能構成例を示すブロック図である。
【００４１】
図３に示すように、クライアント側通信制御装置３０は、ＮＷ（ネットワーク）ノード部３２と、制御部３３と、装置通信部３４と、リーダライタ３５と、ＩＣカード４０とを備える。ここで、ＩＣカード４０は、「認証部」の一例である。
【００４２】
ＮＷノード部３２は、ネットワークＮＷに接続され、ネットワークＮＷを介して、サーバ側通信制御装置３１と通信を行う。ＮＷノード部３２は、ゲートウェイの機能を備え、クライアント装置１０と無線通信する第１ネットワークと、サーバ側通信制御装置３１と通信する第２ネットワークとの間を相互に接続する。
【００４３】
制御部３３は、例えば、ＣＰＵなどを含むプロセッサであり、クライアント側通信制御装置３０を統括的に制御する。制御部３３は、例えば、仲介処理部３３Ａと、管理部３３Ｂとを備える。これらの機能部のうち一部または全部は、例えば、ＣＰＵなどのプロセッサが、記憶部に記憶されたプログラム（ソフトウェア）を実行することで実現される。また、これらの構成要素の機能のうち一部または全部は、ＬＳＩ（Large Scale Integration）やＡＳＩＣ（Application Specific Integrated Circuit）、ＦＰＧＡ（Field-Programmable Gate Array）等のハードウェア（回路部：circuitryを含む）によって実現されていてもよいし、ソフトウェアとハードウェアの協働によって実現されていてもよい。
【００４４】
仲介処理部３３Ａは、クライアント装置１０とサーバ装置２０との間の通信を仲介する。例えば、仲介処理部３３Ａは、装置通信部３４を介してクライアント装置１０から受信した情報に基づいて、リーダライタ３５を介してＩＣカード４０にコマンドを送信する。仲介処理部３３Ａは、ＩＣカード４０からレスポンスを受信し、ＩＣカード４０から受信したレスポンスに基づく情報を、ＮＷノード部３２を介してサーバ装置２０に送信する。また、仲介処理部３３Ａは、ＮＷノード部３２を介してサーバ側通信制御装置３１から受信した情報に基づいて、リーダライタ３５を介してＩＣカード４０にコマンドを送信する。仲介処理部３３Ａは、ＩＣカード４０からレスポンスを受信し、ＩＣカード４０から受信したレスポンスに基づく情報を、装置通信部３４を介してクライアント装置１０に送信する。ここで、仲介処理部３３Ａは、クライアント装置１０から受信した情報（例えば、アドレス情報）に基づいて、接続されている複数のクライアント装置１０Ａ、１０Ｂ…のうち、通信を仲介するクライアント装置を特定する。
【００４５】
管理部３３Ｂは、プライベート認証局である通信制御管理装置５０により発行された秘密情報と、クライアント装置１０を識別する識別情報（以下、クライアントＩＤと記す）とを対応付けて管理する。秘密情報には、例えば、クライアント証明書、秘密鍵等が含まれる。管理部３３Ｂは、例えば、クライアント装置１０から受信したアドレス情報（ＩＰアドレスやＭＡＣアドレス等）や、クライアント側通信制御装置３０とクライアント装置１０との接続状況の履歴情報を、記憶部３８の対応関係管理情報３８Ａに書き込む。対応関係管理情報３８Ａは、例えば、クライアントＩＤに、アドレス情報と、接続状況の履歴情報とを対応付けた情報である。アドレス情報は、例えば、ホワイトリストに登録されているアドレス情報である。接続状況の履歴情報には、例えば、最後に接続した時刻などが含まれる。一方、秘密情報は、クライアントＩＤに対応付けて、ＩＣカード４０に格納されている。
【００４６】
仲介処理部３３Ａは、対応関係管理情報３８Ａを参照して、秘密情報を要求するクライアント装置１０のクライアントＩＤを取得し、認証部であるＩＣカード４０に出力する。ＩＣカード４０は、入力されたクライアントＩＤに基づいて、秘密情報を読み出し、相互認証を行う。つまり、ＩＣカード４０は、クライアント装置１０ごとに異なる秘密情報を用いて、相互認証処理を実行する。こうすることで、ＩＣカード４０は、クライアント装置１０ごとに、サーバ側通信制御装置３１との間で相互認証を行うことができる。
【００４７】
仲介処理部３３Ａは、例えば、ＩＣカード４０によりサーバ側通信制御装置３１との相互認証が行われた場合、ＩＣカード４０により暗号化された情報をサーバ通信制御装置３１を介してサーバ装置２０に送信し、ＩＣカード４０により復号された情報を装置通信部３４を介してクライアント装置１０に送信する。例えば、仲介処理部３３Ａは、クライアントＩＤを用いて、暗号化処理や復号処理を実行するクライアント装置１０をＩＣカード４０に指示する。こうすることで、ＩＣカード４０は、仲介処理部３３Ａから入力されるクライアントＩＤに基づいて、クライアント装置１０ごとに異なる公開鍵を用いて、暗号化処理や復号処理を実行することができる。
【００４８】
仮に、正当なクライアント装置１０でない装置（以下、不当装置と記す）からサーバ装置２０への接続が要求された場合、不当装置のアドレス情報は対応関係管理情報３８Ａに登録されておらず、不当装置のアドレス情報に対応する秘密情報もＩＣカード４０に登録されていない。このため、仲介処理部３３Ａは、不当装置とサーバ装置２０との通信を仲介しない。仲介処理部３３Ａは、不当装置からサーバ装置２０への接続要求があった場合、その旨を示すログ情報を作成し、サーバ装置２０に通知してもよい。
【００４９】
また、仲介処理部３３Ａは、正当なクライアント装置１０との接続状況に基づいて、正当なクライアント装置１０とクライアント側通信制御装置３０との接続が解除されたと判定した場合、その旨を示すログ情報を作成し、サーバ装置２０に通知してもよい。例えば、仲介処理部３３Ａは、対応関係管理情報３８Ａの接続状況の履歴情報を参照し、接続していない時間が所定値以上ある場合、接続が解除されたと判定してもよく、クライアント装置１０から情報を最後に受信したときから所定時間が経過した場合、接続が解除されたと判定してもよい。また、仲介処理部３３Ａは、クライアント装置１０にクエリを送信し、所定時間内にレスポンスを受信しない場合、接続が解除されたと判定してもよい。また、仲介処理部３３Ａは、クライアント装置１０にピンを飛ばすことで、接続の解除の有無を判定してもよい。
【００５０】
また、仲介処理部３３Ａは、不当装置からサーバ装置２０への接続が要求された場合や、正当なクライアント装置１０とクライアント側通信制御装置３０との接続が解除された場合、正当なクライアント装置１０とサーバ装置２０との通信を制限してもよい。
【００５１】
装置通信部３４は、Ｗｉ−Ｆｉ網などの電波の届く範囲に置かれた少なくとも一つのクライアント装置１０と無線通信を行う。例えば、装置通信部３４は、クライアント装置１０からの撮像データを取得するとともに、復号された制御データをクライアント装置１０に送信する。
【００５２】
リーダライタ３５は、ＩＣカード４０のコンタクト部３６を介して、ＩＣカード４０の間の通信を行う。なお、クライアント側通信制御装置３０は、複数のリーダライタ３５を備え、通信するクライアント装置ごとに用意されたＩＣカード４０を搭載可能であってもよい。
【００５３】
記憶部３８は、例えば、ＲＡＭ、ＲＯＭなどによって実現される。記憶部３８は、プロセッサが実行するプログラムを格納する他、対応関係管理情報３８Ａを格納する。
【００５４】
ＩＣカード４０は、例えば、プラスチックのカード基材に、ＩＣモジュール４１を実装して形成されている。すなわち、ＩＣカード４０は、ＩＣモジュール４１と、ＩＣモジュール４１が埋め込まれたカード基材とを備える。
【００５５】
ＩＣモジュール４１は、コンタクト部３６と、ＩＣチップ４２とを備える。コンタクト部３６は、ＩＣカード４０が動作するために必要な各種信号の端子を有している。ここで、各種信号の端子は、電源電圧、クロック信号、リセット信号などをクライアント側通信制御装置３０から供給を受ける端子、及び、クライアント側通信制御装置３０と通信するためのシリアルデ―タ入出力端子（ＳＩＯ端子）を有する。ＩＣチップ４２は、例えば、１チップのマイクロプロセッサなどのＬＳＩ（Large Scale Integration）である。
【００５６】
ＩＣカード４０は、クライアント側通信制御装置３０に着脱可能に装着され、コンタクト部３６を介してクライアント側通信制御装置３０と通信可能である。例えば、ＩＣカード４０は、クライアント側通信制御装置３０が送信したコマンド（処理要求）を、コンタクト部３６を介して受信し、受信したコマンドに応じた処理（コマンド処理）を実行する。そして、ＩＣカード４０は、コマンド処理の実行結果であるレスポンス（処理応答）をクライアント側通信制御装置３０にコンタクト部３６を介して送信する。
【００５７】
次に、サーバ側通信制御装置３１の構成について説明する。図４は、実施形態のサーバ側通信制御装置３１の機能構成例を示すブロック図である。サーバ側通信制御装置３１は、一部において、クライアント側通信制御装置３０と同じ機能構成を有する。このため、以下異なる点について説明し、クライアント側通信制御装置３０が備える機能構成と同じ機能構成については、同一の符号を付して詳細な説明は省略する。また、クライアント側通信制御装置３０とサーバ側通信制御装置３１とを区別しない場合には、単に、通信制御装置３０（３１）などと称する。
【００５８】
図４に示すように、サーバ側通信制御装置３１は、ＮＷ通信部３９と、制御部３３と、装置通信部３４と、リーダライタ３５と、ＩＣカード４０とを備える。
【００５９】
ＮＷ通信部３９は、ネットワークＮＷに接続され、ネットワークＮＷを介して、クライアント側通信制御装置３０と通信を行う。
【００６０】
サーバ側通信制御装置３１の装置通信部３４は、サーバ装置２０に有線で接続され、サーバ装置２０からの制御データを取得するとともに、復号された撮像データをサーバ装置２０に出力する。
【００６１】
次に、ＩＣカード４０のハードウェア構成の一例について説明する。図５は、実施形態のＩＣカード４０のハードウェア構成の一例を示す図である。
【００６２】
上述した通り、ＩＣカード４０は、コンタクト部３６と、ＩＣチップ４２とを備えたＩＣモジュール４１を備えている。そして、ＩＣチップ４２は、ＵＡＲＴ（Universal Asynchronous Receiver Transmitter）４３と、ＣＰＵ４４と、ＲＯＭ（Read Only Memory）４５と、ＲＡＭ（Random Access Memory）４６と、ＥＥＰＲＯＭ（Electrically Erasable Programmable ROM）４７とを備える。また、各構成（４３から４７）は、内部バスＢＳを介して接続されている。
【００６３】
ＵＡＲＴ４３は、上述したＳＩＯ端子を介して、クライアント側通信制御装置３０とシリアルデータ通信を行う。ＵＡＲＴ４３は、ＳＩＯ端子を介して受信したシリアルデータ信号をパラレル変換したデータ（例えば、１バイトのデータ）を内部バスＢＳに出力する。また、ＵＡＲＴ４３は、内部バスＢＳを介して取得したデータをシリアル変換して、ＳＩＯ端子を介してクライアント側通信制御装置３０に出力する。ＵＡＲＴ４３は、例えば、ＳＩＯ端子を介してコマンドをクライアント側通信制御装置３０から受信する。また、ＵＡＲＴ４３は、ＳＩＯ端子を介してレスポンスをクライアント側通信制御装置３０に送信する。
【００６４】
ＣＰＵ４４は、ＲＯＭ４５又はＥＥＰＲＯＭ４７に記憶されているプログラムを実行して、ＩＣカード４０の各種処理を行う。ＣＰＵ４４は、例えば、コンタクト部３６を介して、ＵＡＲＴ４３が受信したコマンドに応じたコマンド処理を実行する。
【００６５】
ＲＯＭ４５は、例えば、マスクＲＯＭなどの不揮発性メモリであり、ＩＣカード４０の各種処理を実行するためのプログラム、及びコマンドテーブルなどのデータを記憶する。ＲＡＭ４６は、例えば、ＳＲＡＭ（Static RAM）などの揮発性メモリであり、ＩＣカード４０の各種処理を行う際に利用されるデータを一時記憶する。ＥＥＰＲＯＭ４７は、例えば、電気的に書き換え可能な不揮発性メモリである。ＥＥＰＲＯＭ４７は、ＩＣカード４０が利用する各種データを記憶する。ＥＥＰＲＯＭ４７は、例えば、ＩＣカード４０を利用した各種サービス（アプリケーション）に使用される情報を記憶する。
【００６６】
次に、ＩＣカード４０の構成の一例について説明する。図６は、実施形態のＩＣカード４０の機能構成例を示すブロック図である。ＩＣカード４０は、通信部４０Ａと、制御部４０Ｂと、記憶部４０Ｃとを備える。ここで、図６に示されるＩＣカード４０の各部は、図５に示されるＩＣカード４０のハードウェアを用いて実現される。
【００６７】
通信部４０Ａは、例えば、ＵＡＲＴ４３と、ＣＰＵ４４と、ＲＯＭ４５に記憶されているプログラムとにより実現され、コンタクト部３６を介して、例えば、クライアント側通信制御装置３０との間でコマンド及びレスポンスの送受信を行う。すなわち、通信部４０Ａは、所定の処理を要求するコマンド（処理要求）をクライアント側通信制御装置３０から受信するとともに、コマンドに対するレスポンス（処理応答）をクライアント側通信制御装置３０に送信する。通信部４０Ａは、ＵＡＲＴ４３を介してクライアント側通信制御装置３０から受信した受信データをＲＡＭ４６に記憶させる。また、通信部４０Ａは、ＲＡＭ４６に記憶されている送信データを、ＵＡＲＴ４３を介してクライアント側通信制御装置３０に送信する。
【００６８】
制御部４０Ｂは、例えば、ＣＰＵ４４と、ＲＡＭ４５と、ＲＯＭ４６又はＥＥＰＲＯＭ４７とにより実現され、ＩＣカード４０を統括的に制御する。制御部４０Ｂは、コマンド処理部４１Ｂと、暗号化復号部４２Ｂとを備える。
【００６９】
ここで、コマンド処理部４１Ｂが行う処理は、「認証処理」の一例である。また、暗号化復号部４２Ｂが行う処理は、「暗号化復号処理」の一例である。
【００７０】
コマンド処理部４１Ｂは、各種コマンド処理を実行する。コマンド処理部４１Ｂは、例えば、後述するＨＴＴＰＳリクエストを要求するコマンド処理として、ＳＳＬ／ＴＬＳハンドシェイクを行う。ＳＳＬ／ＴＬＳハンドシェイクでは、暗号化された通信に必要な鍵情報等の交換、および通信先の装置との相互認証を行う。ここで、相互認証とは、クライアント側通信制御装置３０とサーバ側通信制御装置３１とが、通信を行う前に、互いに正当に認証された装置であることを相互に確認する認証処理である。
【００７１】
コマンド処理部４１Ｂは、例えばハンドシェイクにおいて、暗号化処理や復号処理に用いる共通鍵を決定する。コマンド処理部４１Ｂは、クライアント証明書、サーバ証明書、および秘密鍵などの情報に基づいて、共通鍵を決定する。コマンド処理部４１Ｂは、決定した共通鍵を、クライアントＩＤを対応付けて、記憶部４０Ｃに格納する。
【００７２】
暗号化復号部４２Ｂは、データを暗号化する処理、および暗号化されたデータを復号する処理を実行する。暗号化復号部４２Ｂは、通信部４０Ａを介してクライアント装置１０（サーバ側通信制御装置３１の場合はサーバ装置２０）から受信したデータを暗号化する。また、暗号化復号部４２Ｂは、通信部４０Ａを介してサーバ装置２０（サーバ側通信制御装置３１の場合はクライアント装置１０）からネットワークＮＷを介して受信した暗号化されたデータを復号する。暗号化復号部４２Ｂは、記憶部４０Ｃを参照し、クライアント装置１０に対応する共通鍵を用いて、暗号化処理と復号処理を実行する。
【００７３】
記憶部４０Ｃは、例えば、ＥＥＰＲＯＭ４７により構成された記憶部であり、証明書情報記憶部４１Ｃと、秘密情報記憶部４２Ｃとを備える。証明書情報記憶部４１Ｃは、通信制御管理装置５０が発行したクライアント装置１０（サーバ側通信制御装置３１の場合はサーバ装置２０）に対する証明書を記憶する。具体的には、クライアント側通信制御装置３０に装着されるＩＣカード４０の証明書情報記憶部４１Ｃには、クライアント証明書を示す情報が記憶される。また、サーバ側通信制御装置３１に装着されるＩＣカード４０の証明書情報記憶部４１Ｃには、サーバ証明書を示す情報が記憶される。
【００７４】
秘密情報記憶部４２Ｃは、通信制御管理装置５０が発行したクライアント装置１０（サーバ側通信制御装置３１の場合はサーバ装置２０）に対する秘密鍵を記憶する。具体的には、クライアント側通信制御装置３０に装着されるＩＣカード４０の秘密情報記憶部４２Ｃには、クライアント側通信制御装置３０に対して発行された秘密鍵を示す情報が記憶される。また、サーバ側通信制御装置３１に装着されるＩＣカード４０の証明書情報記憶部４１Ｃには、サーバ側通信制御装置３１に対して発行された秘密鍵を示す情報が記憶される。
【００７５】
次に、通信制御管理装置５０の構成の一例について説明する。図７は、実施形態の通信制御管理装置５０の機能構成の一例を示すブロック図である。通信制御管理装置５０は、例えば、ＮＷ（ネットワーク）通信部５０Ａと、制御部５０Ｂと、記憶部５０Ｃとを備える。
【００７６】
ＮＷ通信部５０Ａは、ネットワークＮＷに接続され、ネットワークＮＷを介して、通信制御装置３０（３１）と通信を行う。
【００７７】
制御部５０Ｂは、例えば、ＣＰＵなどを含むプロセッサであり、通信制御管理装置５０を統括的に制御する。制御部５０Ｂは、主に通信制御装置３０（３１）の正当性を認めるプライベート認証局として機能する。制御部５０Ｂは、鍵生成部５１Ｂと、証明書発行部５２Ｂと、証明書更新部５３Ｂと、証明書管理部５４Ｂと、管理部５５Ｂとを備える。
【００７８】
鍵生成部５１Ｂは、例えば、通信制御装置３０（３１）からの認証申請に基づいて、後述する証明書に含まれる公開鍵に対応する秘密鍵の発行を行う。
【００７９】
証明書発行部５２Ｂは、例えば、通信制御装置３０（３１）からの認証申請に基づいて、通信制御装置３０（３１）の正当性を認める証明書の発行を行う。証明書には、公開鍵と、通信制御装置３０（３１）の所有者を示す情報が含まれる。
【００８０】
証明書更新部５３Ｂは、有効期限が渡過した証明書に対して新たな有効期限を設定することにより、証明書の更新を行う。証明書更新部５３Ｂは、例えば、通信制御装置３０（３１）からの更新申請に基づいて、当該通信制御装置３０（３１）に対して発行した証明書の有効期限を延長させた証明書を発行し、発行した証明書を通信制御装置３０（３１）に対して送信する。発行した証明書を示す情報が通信制御装置３０（３１）により受信され、通信制御装置３０（３１）のＩＣカード４０の証明書情報記憶部４１Ｃに記憶されることで、通信制御装置３０（３１）の証明書の有効期限が延長される。
【００８１】
証明書管理部５４Ｂは、既に発行済みの証明書に対する管理を行う。証明書管理部５４Ｂは、例えば、通信制御装置３０（３１）に装着されたＩＣカード４０の改ざん、または盗難等により相互認証において互いの正当性が証明されない場合に、通信制御装置３０（３１）に対して発行した証明書を無効化する処理を行う。また、証明書管理部５４Ｂは、通信制御装置３０（３１）からの問い合わせに基づいて、通信制御装置３０（３１）、および他の通信装置に対して発行した証明書が証明書管理部５４Ｂにより発行されたものか否か応答するようにしてもよい。また、証明書管理部５４Ｂは、定期的に、発行済みの証明書が正当な通信制御装置３０（３１）に使用されているかを確認するようにしてもよい。
【００８２】
管理部５５Ｂは、通信制御装置３０（３１）を管理する。例えば、管理部５５Ｂは、通信制御装置３０（３１）が行う相互認証を、ネットワークＮＷを介して遠隔制御する。
【００８３】
記憶部５０Ｃは、例えば鍵情報記憶部５１Ｃと、証明書情報記憶部５２Ｃとを備える。鍵情報記憶部５１Ｃは、例えば既に発行済みの公開鍵や、秘密鍵を示す情報を記憶する。証明書情報記憶部５２Ｃは、例えば既に発行済みの証明書を示す情報を記憶する。鍵情報記憶部５１Ｃと、証明書情報記憶部５２Ｃとは、例えば、鍵生成部５１Ｂが秘密鍵を発行する際、証明書発行部５２Ｂが証明書を発行する際などに参照される。また、鍵情報記憶部５１Ｃには、鍵生成部５１Ｂが発行した秘密鍵を示す情報が記憶される。また、証明書情報記憶部５２Ｃには、証明書発行部５２Ｂが発行した証明書を示す情報が記憶される。
【００８４】
次に、通信制御システム１が行う処理の一例について説明する。図８は、実施形態の通信制御システム１が行う処理の一例を示すシーケンスチャートである。
【００８５】
クライアント装置１０は、撮像データをサーバ装置２０に送信する場合、まずサーバ装置２０に対するＨＴＴＰリクエストを送信する（ステップＳ１）。クライアント装置１０が送信したＨＴＴＰリクエストは、クライアント側通信制御装置３０により取得される（ステップＳ２）。クライアント側通信制御装置３０は、サーバ側通信制御装置３１に対して、ＨＴＴＰＳのリクエスト（ClientHello）を送信する（ステップＳ４）。これにより、クライアント側通信制御装置３０とサーバ側通信制御装置３１との間のハンドシェイクが開始される（ステップＳ５）。
【００８６】
具体的には、クライアント側通信制御装置３０が送信するClientHelloには、例えば、ＴＬＳのバージョン、および通信に用いる暗号方式やアルゴリズムのリストを示す情報が含まれる。サーバ側通信制御装置３１は、ClientHelloに対する応答として、クライアント側通信制御装置３０に対しＨＴＴＰＳのレスポンス（ServerHello）を送信する。サーバ側通信制御装置３１が送信するServerHelloには、例えばClientHelloで提示された選択肢の中でサーバ装置２０が選択した情報が含まれる。換言すると、クライアント側通信制御装置３０からの提示に対し、サーバ側通信制御装置３１が選択を行うことで、通信における具体的な暗号化アルゴリズムが決定される。
【００８７】
そして、サーバ側通信制御装置３１は、暗号化通信に用いる共通鍵に必要な情報を送る。共通鍵に必要な情報には、例えば、サーバ装置２０に対して発行された公開鍵とその証明書を示す情報、およびクライアント装置１０の公開鍵とその証明書を送ることを要求する情報が含まれる。クライアント側通信制御装置３０は、サーバ側通信制御装置３１に対して、要求されているクライアント装置１０に対して発行された公開鍵とその証明書、及び暗号化通信に用いる共通鍵に必要な情報を送る。ここで、クライアント側通信制御装置３０は、対応関係管理情報３８Ａを参照し、要求されているクライアント装置１０のクライアントＩＤを取得する。クライアント側通信制御装置３０は、ＩＣカード４０から取得したクライアントＩＤに対応付けられている証明書（公開鍵を含む）などを読み出す。
【００８８】
クライアント側通信制御装置３０とサーバ側通信制御装置３１との間の相互認証は、例えば次のように行われる。クライアント側通信制御装置３０は、今までに受信したServerHello等から署名を生成し、サーバ側通信制御装置３１に送信する。サーバ側通信制御装置３１は、クライアント側通信制御装置３０から受信した署名を、クライアント側通信制御装置３０から受信した証明書に基づいて検証する。サーバ側通信制御装置３１は、検証が成功すると、その証明書が間違いなくクライアント側通信制御装置３０のものであると判定する。また、サーバ側通信制御装置３１は、今までに受信したClientHello等から署名を生成し、クライアント側通信制御装置３０に送信する。クライアント側通信制御装置３０は、サーバ側通信制御装置３１から受信した署名を、サーバ側通信制御装置３１から受信した証明書に基づいて検証する。クライアント側通信制御装置３０は、検証が成功すると、その証明書が間違いなくサーバ側通信制御装置３１のものであると判定する。
【００８９】
クライアント側通信制御装置３０とサーバ側通信制御装置３１との間の相互認証が正しく行われると、クライアント側通信制御装置３０とサーバ側通信制御装置３１とは、それぞれ暗号化に用いる共通鍵を生成して交換する。また、クライアント側通信制御装置３０は、クライアント装置１０ごとに、共通鍵を管理する。
【００９０】
サーバ側通信制御装置３１から送付されたサーバ装置２０に対して発行された公開鍵とその証明書が、クライアント側通信制御装置３０に許容される証明書であれば、サーバ側通信制御装置３１は、クライアント側通信制御装置３０から送付された公開鍵とその証明書が、サーバ側通信制御装置３１に許容される証明書であれば、ハンドシェイクを終了する。
【００９１】
サーバ側通信制御装置３１は、クライアント側通信制御装置３０とのハンドシェイクが確立されると、サーバ装置２０に対し、ＨＴＴＰリクエストを送信する（ステップＳ６）。ここで送信されるＨＴＴＰリクエストは、ステップＳ２においてクライアント装置１０から受信したＨＴＴＰリクエストである。
【００９２】
サーバ側通信制御装置３１により送信されたＨＴＴＰリクエストは、サーバ装置２０により受信される（ステップＳ７）。このとき、サーバ装置２０は、クライアント装置１０からＨＴＴＰリクエストが要求されたと認識する。このため、サーバ装置２０は、クライアント装置１０に対してＨＴＴＰレスポンスを応答する（ステップＳ８）。サーバ装置２０が送信したＨＴＴＰレスポンスは、サーバ側通信制御装置３１により取得される（ステップＳ９）。
【００９３】
サーバ側通信制御装置３１は、取得したサーバ装置２０からのＨＴＴＰレスポンスを、ステップＳ５のハンドシェイクにおいて決定された共通鍵を用いて暗号化する（ステップＳ１０）。サーバ側通信制御装置３１により暗号化されたＨＴＴＰレスポンスは、ネットワークＮＷを介してクライアント側通信制御装置３０に受信される（ステップＳ１１）。クライアント側通信制御装置３０は、受信したＨＴＴＰレスポンスを、共通鍵を用いて復号する（ステップＳ１２）。クライアント側通信制御装置３０により復号されたＨＴＴＰレスポンスは、クライアント装置１０に取得される（ステップＳ１３）。クライアント装置１０は、復号されたＨＴＴＰレスポンスを受信する（ステップＳ１４）。このとき、クライアント装置１０は、サーバ装置２０からＨＴＴＰレスポンスが応答されたと認識する。このため、クライアント装置１０は、サーバ装置２０に対し、撮像データを送信する（ステップＳ１５）。
【００９４】
クライアント装置１０が送信した撮像データは、クライアント側通信制御装置３０により取得される（ステップＳ１６）。クライアント側通信制御装置３０は、クライアント装置１０により送信された撮像データを、共通鍵を用いて暗号化する（ステップＳ１８）。クライアント側通信制御装置３０により暗号化された撮像データは、ネットワークＮＷを介してサーバ側通信制御装置３１に受信される（ステップＳ１９）。
【００９５】
サーバ側通信制御装置３１は、受信した撮像データを、共通鍵を用いて復号する（ステップＳ２０）。サーバ側通信制御装置３１により復号された撮像データは、サーバ装置２０にとり取得される（ステップＳ２１）。サーバ装置２０は、復号された撮像データを受信する（ステップＳ２２）。このとき、サーバ装置２０は、クライアント装置１０からの撮像データを受信したと認識する。
【００９６】
なお、上記フローチャートのステップＳ５において、クライアント側通信制御装置３０とサーバ側通信制御装置３１との間の相互認証が正しく行われなかった場合、クライアント側通信制御装置３０は、通信先との通信を許可しない。具体的には、クライアント側通信制御装置３０は、通信先から送信された情報をクライアント装置１０に出力しない。相互認証が正しく行われなかった場合、通信先がサーバ側通信制御装置３１に見せかけた不正な通信装置である可能性があるためである。この場合、クライアント側通信制御装置３０は、例えば、相互認証が正しく行われなかった場合の通信記録を通信制御管理装置５０に送信するようにしてもよい。これにより、通信制御管理装置５０は相互認証が正しく行われなかった場合の通信記録を取得することができ、管理下にあるクライアント側通信制御装置３０に対する不正な通信のパターンや頻度を把握することで、ネットワークの異常を監視することができる。
【００９７】
また、クライアント側通信制御装置３０は、上記フローチャートのステップＳ５において行われるハンドシェイクにおいて相互認証の代わりにクライアント装置１０に対する通信を許可する通信機器の情報を示す送信先リストに基づいて、通信先との通信を許可するか否かを判定するようにしてもよい。送信先リストに示される通信機器の情報は、例えばＵＲＬ（Uniform Resource Locator）である。クライアント側通信制御装置３０の制御部３３は、通信先のＵＲＬが送信先リストに登録されているＵＲＬである場合に当該通信先との通信を許可し、送信先リストに登録されていない場合には通信を許可しない。
【００９８】
また、制御部３３は、送信先リストを更新するようにしてもよい。制御部３３は、例えば、一定期間にクライアント装置１０に対する通信を許可された通信先のＵＲＬ、および許可されなかった通信先ＵＲＬを記憶させる。そして、制御部３３は、例えば、送信先リストに登録されたＵＲＬのうち、一定期間に通信が行われた通信先のＵＲＬを再度登録する等することにより送信先リストを更新する。あるいは、クライアント側通信制御装置３０は、一定期間に通信を許可された通信先ＵＲＬ、および許可されなかった通信先ＵＲＬを通信制御管理装置５０に送信するようにしてもよい。この場合、例えば、通信制御管理装置５０は、クライアント側通信制御装置３０と通信を行った通信先ＵＲＬに基づいて、送信先リストを更新するようにしてもよい。通信制御管理装置５０により送信先リストが更新されることで、通信制御管理装置５０が管理下にあるクライアント側通信制御装置３０と通信する通信機器を一括して管理することができる。
【００９９】
また、クライアント側通信制御装置３０は、ステップＳ５において行われるハンドシェイクが確立した後にクライアント装置１０に対して送信された情報（例えば、ファームウェアの更新プログラム）の内容が正しいか否かの検証を行うようにしてもよい。例えば、クライアント側通信制御装置３０の制御部３３は、ネットワークＮＷを介してクライアント装置１０のファームウェアの更新プログラムが送信された場合、検証用の鍵（検証鍵）を用いて検証する。この場合、通信制御管理装置５０は、例えば、クライアント側通信制御装置３０およびサーバ側通信制御装置３１それぞれに検証鍵を送信するようにしてもよい。
【０１００】
例えば、サーバ側通信制御装置３１は、クライアント装置１０へ送信する情報（平文）からハッシュ値を生成し、生成したハッシュ値を検証鍵で暗号化する。そして、サーバ側通信制御装置３１は、平文と暗号化したハッシュ値をさらに秘密鍵で暗号してクライアント装置１０へ送信する。また、クライアント側通信制御装置３０は共通鍵を用いて情報を復号化し、平文と暗号化されたハッシュ値とを取得する。
【０１０１】
また、クライアント側通信制御装置３０は、取得した平文からハッシュ値を生成するとともに、暗号化されたハッシュ値を検証鍵で復号する。クライアント側通信制御装置３０は、平文から生成したハッシュ値と、復号化したハッシュ値とが等しい値である場合、クライアント装置１０に対して送信された情報は正しい内容であると判定する。この場合、クライアント側通信制御装置３０は、復号した情報（平文）をクライアント装置１０に出力する。一方、クライアント側通信制御装置３０は、平文から生成したハッシュ値と復号化したハッシュ値が等しい値でない場合、クライアント装置１０に対して送信された情報は、サーバ装置２０またはサーバ側通信制御装置３１に見せかけた不正な通信装置から送信された不正な情報である可能性があると判定する。この場合、クライアント側通信制御装置３０は、復号した情報（平文）をクライアント装置１０に出力しない。
【０１０２】
これにより、クライアント装置１０は、検証済みである正しい内容であることが検証された情報のみを受け取ることができる。また、通常、クライアント装置１０がファームウェアを更新する際の更新プログラムの内容が正しいか否かの判定を行うと考えられるが、クライアント装置１０に代わりサーバ側通信制御装置３１がクライアント装置１０に対して送信された情報の内容を検証することにより、クライアント装置１０の処理負担を軽減させることが可能となる。
【０１０３】
（第２実施形態）
図９は、第２実施形態の通信制御システム１Ａの構成例を示す図である。通信制御システム１Ａは、他のアクセスポイント６０と、クライアント装置１０Ｃとを備える点で、通信制御システム１と異なる。他のアクセスポイント６０は、例えば、無線通信のアクセスポイントとなる汎用的な装置である。クライアント装置１０Ｃは、他のアクセスポイント６０を介して、クライアント側通信制御装置３０と無線通信する。クライアント装置１０Ｃは、クライアント側通信制御装置３０の電波の届く範囲に置かれていないセンサデバイスであって、他のアクセスポイント６０を介して、クライアント側通信制御装置３０と無線通信する。
【０１０４】
クライアント側通信制御装置３０は、クライアント装置１０Ｃとも、クライアント装置１０Ａ，１０Ｂと同様にして、上述したような処理を行う。つまり、クライアント側通信制御装置３０は、クライアント装置１０ＣのクライアントＩＤを用いて、通信制御管理装置５０によりクライアント装置１０Ｃに対して発行された秘密情報を管理し、クライアント装置１０Ｃとサーバ装置２０との通信を仲介する。
【０１０５】
このような構成とすることで、クライアント装置１０と無線通信するためのエリアごとにクライアント側通信制御装置３０を配置しなくても、無線通信のアクセスポイントとなる汎用的な装置を用いて、実施形態の通信制御システムを実現することができるようになる。
【０１０６】
以上説明したように、実施形態の通信制御システム１は、電波の届く範囲に置かれた少なくとも一つのセンサデバイスと無線通信する無線通信部と、ネットワークを介してサーバ側通信制御装置と通信するネットワークノード部と、前記センサデバイスから受信した情報を暗号化し、前記サーバ側通信制御装置を介してサーバ装置から受信した情報を復号する認証部と、前記認証部により暗号化された情報を前記サーバ側通信制御装置を介して前記サーバ装置に送信し、前記認証部により復号された情報を前記無線通信部を介して前記センサデバイスに送信する仲介処理部と、を備えることにより、社会インフラシステムを変更することなく、社会インフラシステムの安全性を向上させることができる通信制御装置を提供することができる。
【０１０７】
また、実施形態の通信制御システム１は、クライアント装置１０とネットワークＮＷとの間に接続されるクライアント側通信制御装置３０と、サーバ装置２０とネットワークＮＷとの間に接続されるサーバ側通信制御装置３１と、を備える。クライアント側通信制御装置３０は、ＩＣカード４０と、制御部３３を有する。制御部３３は、ＩＣカード４０に、相互認証と暗号化復号処理とのうち少なくとも一方の処理を依頼し、暗号化された情報をサーバ側通信制御装置３１に送信し、復号された情報をクライアント装置１０に送信する。サーバ側通信制御装置３１は、ＩＣカード４０と、制御部３３を有する。制御部３３は、ＩＣカード４０に、相互認証と暗号化復号処理とのうち少なくとも一方の処理を依頼し、暗号化された情報をクライアント側通信制御装置３０に送信し、復号された情報をサーバ装置２０に送信する。この場合、通信制御装置３０（３１）の制御部３３は、ＩＣカード４０に相互認証の処理のみをさせてもよいし、暗号化復号処理のみをさせてもよいし、相互認証と暗号化復号処理との両方の処理をさせてもよい。
【０１０８】
これにより、実施形態の通信制御システム１は、社会インフラシステムを変更することなく、社会インフラシステムの安全性を向上させることができる。クライアント装置１０からサーバ装置２０に対して送信されたＨＴＴＰプロトコルの撮像データ（いわゆる平文）が、クライアント側通信制御装置３０により、例えば、ＳＳＬ／ＴＬＳプロトコルと組み合わされて、安全性が向上されたＨＴＴＰＳに置き換えられるためである。また、サーバ装置２０かクライアント装置１０らに対して送信された制御データは、暗号化されるが、クライアント側通信制御装置３０により復号されて、クライアント装置１０に受信されるため、クライアント装置１０に復号させる処理を行わせる必要がなく、既存の装置を変更することなくそのまま利用することができる。
【０１０９】
また、実施形態の通信制御システム１では、クライアント側通信制御装置３０とサーバ側通信制御装置３１とが相互認証を行うため、いずれか一方方向のみの認証を行う場合よりも安全性を向上させることができる。一般的なクライアント端末とサーバ端末においては、サーバ端末に対して不特定多数のクライアント端末が通信を行うため、当該不特定多数のクライアント端末に対して正当なクライアント証明書を発行して管理し続けることは現実的ではない。しかしながら、社会インフラシステムにおいては、クライアント装置１０とサーバ装置２０の関係は明確に特定されている。このため、クライアント側通信制御装置３０とサーバ側通信制御装置３１とが相互認証を行うことが可能であり、安全性を向上させることができる。
【０１１０】
クライアント証明書を有していないクライアント端末の場合、サーバ端末と通信を行うために、サーバ端末が発行したＩＤやパスワードの入力を求められることがある。このようなパスワード認証においては、安全性を維持するために、パスワードに対し文字と数字を組合せた長文の文字列が要求されたり、定期的なパスワードの変更等が求められたりすることがある。しかしながら、覚えなければならないパスワードが増えると、管理が面倒になってしまい、パスワードをメモに残したり、ウェブブラウザに記録させたりするなど、かえってパスワードが漏洩してしまう場合があった。
【０１１１】
これに対し、実施形態の通信制御システム１では、クライアント側通信制御装置３０がクライアント証明書を有することにより、サーバ装置２０との間で確実に相互認証を行うことができる。このため、パスワード認証が不要となる。このため、パスワードを入力する手間や定期的に変更して管理する手間がなくなり、ユーザの利便性が向上する。つまり、ユーザに負担をかけることなく安全性を維持することができる。
【０１１２】
また、クライアント証明書を有していないクライアント端末が、ＩＤやパスワードによる認証に基づいてサーバ端末と通信を行う場合、ＩＤとパスワードが正しく入力できてしまえば、だれでもサーバ端末と通信することができてしまう。このため、クライアント端末を不正に乗っ取り、サーバ端末へ不正にアクセスすることが可能となってしまう。このため例えば、不正に乗っ取られたサーバ端末によってクライアント端末の機能が制限され、解除するために身代金が要求されるといったランサムウェアに感染する可能性があった。
【０１１３】
これに対し、実施形態の通信制御システム１では、クライアント装置１０とサーバ装置２０との間で、通信制御装置３０（３１）を介した相互認証が行われることや、アドレス情報に基づいて通信相手のクライアント装置１０が制限されることなどにより、クライアント装置１０やサーバ装置２０が不正に乗っ取られることがない。つまり、実施形態の通信制御システム１では、ランサムウェアに対する対策も可能となる。
【０１１４】
また、例えばネットワーク内に、管理者が不在の端末（野良デバイスともいう）がある場合、その端末が不正に乗っ取られることにより、その端末がマルウェア等の攻撃を行う不正な端末として利用されてしまう場合があった。これに対し、実施形態の通信制御システム１では、クライアント装置１０とサーバ装置２０との間で、通信制御装置３０（３１）を介した相互認証が行われることや、アドレス情報に基づいて通信相手のクライアント装置１０が制限されることなどにより、ネットワークＮＷの内部にある管理者が不在の端末が不正に乗っ取られて攻撃に利用された場合であっても、マルウェア等に感染することを防止することができる。
【０１１５】
また、実施形態の通信制御システム１では、サーバ装置２０がサーバ側通信制御装置３１に接続されており、サーバ装置２０の内部で認証処理を行わない。このため、サーバ装置２０の内部で証明書等を保持する必要がなく、サーバ側通信制御装置３１に接続されたサーバ装置２０が通信制御管理装置５０の管理下であることが明確となる。もっとも、サーバ装置２０が、すでにサーバ側通信制御装置３１に相当する機能部を有している場合には、必ずしもサーバ装置２０とネットワークＮＷとの間にサーバ側通信制御装置３１が物理的に接続される必要はない。この場合、サーバ装置２０が元々有するサーバ側通信制御装置３１に相当する機能部により、クライアント側通信制御装置３０との間の認証処理が行われる。
【０１１６】
また、実施形態の通信制御システム１では、ＩＣカード４０の制御部４０Ｂにおいて、相互認証と暗号化復号処理とのうち少なくともいずれか一方を行わせる。このため、通信制御装置３０（３１）の装置コストを抑制することができる。
【０１１７】
なお、実施形態の通信制御システム１においては、通信制御装置３０（３１）に装着されたＩＣカード４０が、相互認証と暗号化復号処理とのうち少なくともいずれか一方の処理を行う例を説明したが、当該処理を行う機能部がＩＣカードに限定されることはない。実施形態のＩＣカード４０としては、秘密鍵およびクライアント証明書（あるいは、サーバ証明書）を記憶する記憶機能と、相互認証と暗号化復号処理とのうち少なくともいずれか一方を行う処理機能を有している機能部であればよく、例えば、ＩＣチップが搭載されたＳＩＭカードであってもよい。
【０１１８】
また、実施形態の通信制御システム１においては、クライアント側通信制御装置３０のＩＣカード４０は、クライアント側通信制御装置３０に対して着脱可能に装着される。これにより、実施形態の通信制御システム１においては、ＩＣカード４０とクライアント側通信制御装置３０とが分離可能であるため、どちらか一方を交換する場合には、当該一方のデバイスを交換すればよい。例えば、ＩＣカード４０とクライアント側通信制御装置３０とが一体化された場合には、ＩＣカード４０に相当する部分を交換する場合には、クライアント側通信制御装置３０全体を交換しなければならないが、この場合と比較して、実施形態の通信制御システム１では、クライアント側通信制御装置３０が有するＩＣカード４０等の特定の部分を交換する場合のメンテナンスコストを抑制することができる。
【０１１９】
また、実施形態の通信制御システム１は、通信制御管理装置５０を更に備え、通信制御管理装置５０は、クライアント側通信制御装置３０に装着されたＩＣカード４０に記憶させる秘密鍵、及びクライアント証明書をクライアント側通信制御装置３０に送信し、サーバ側通信制御装置３１に装着されたＩＣカード４０に記憶させる秘密鍵、及びサーバ証明書をサーバ側通信制御装置３１に送信する。これにより、実施形態の通信制御システム１は、通信制御管理装置５０により発行された正当な秘密鍵、証明書を用いて、ハンドシェイクを行い、共通鍵を決定することができ、上述した効果を奏する他、社会インフラシステムの安全性を更に向上させることができる。
【０１２０】
以上、実施形態の通信制御システム１について説明したが、実施形態の構成は、上記例に限定されない。例えば、通信制御装置３０（３１）は、処理の負荷に基づき、ハードウェアにより通信制御装置３０（３１）の機能を実現するＨＳＭ（Hardware Security Module）を用いてもよい。
【０１２１】
また、実施形態の通信制御システム１においては、ＳＳＬ／ＴＬＳプロトコルを用いたセキュアな通信を常時行うようにしてもよいし、ＳＳＬ／ＴＬＳプロトコルを用いた通信を行うか否かを選択可能にしてもよい。また、クライアント装置１０とサーバ装置２０との間における双方向の通信のうち一方の方向の通信のみをＳＳＬ／ＴＬＳプロトコルを用いた通信としてもよい。また、ＳＳＬ／ＴＬＳプロトコルを用いたセキュアな通信を常時行うようにしてもよいし、ＳＳＬ／ＴＬＳプロトコルを用いた通信を行うか否かを選択可能にしてもよい。ＳＳＬ／ＴＬＳプロトコルを用いた通信を常時行うようにすることで、通信制御装置３０（３１）により認証された正当な通信制御装置３０（３１）とは異なる装置からの通信を遮断することができる。このため、クライアント装置１０やサーバ装置２０に対する不正なアクセスや、クライアント装置１０やサーバ装置２０がマルウェアに感染することを抑止することができる。
【０１２２】
また、実施形態の通信制御システム１においては、ＳＳＬ／ＴＬＳプロトコルを用いた通信を常時行い、クライアント装置１０やサーバ装置２０に対する不正なアクセスを記憶するようにしてもよい。この場合、通信制御管理装置５０に不正なアクセスの記録が送信されるようにしてもよい。通信制御管理装置５０は、不正なアクセスの有無を認識することができ、システム全体に対する大規模攻撃が開始される前の予兆の段階を検出して対策することが可能となる。
【０１２３】
また、実施形態の通信制御システム１においては、通信制御装置３０（３１）に装着するＩＣカード４０に、ＣＣ（Common Criteria/ISO15408）認証を取得したセキュアエレメントと呼ばれる耐タンパ性の高いチップを搭載してもよい。このチップを用いて、秘密鍵や公開鍵を含む証明書を記憶させることにより、非常に高い安全性を維持することができる。
【０１２４】
また、実施形態の通信制御システム１においては、サーバ装置２０や通信制御管理装置５０等から、通信制御装置３０（３１）を介して、クライアント装置１０のプログラムを更新させるようにしてもよい。通信制御装置３０（３１）を介してプログラムの更新（ファームウェアのアップデート）が行われることにより、安全にクライアント装置１０の機能を更新させることができる。このようにサーバ装置２０からクライアント装置１０に対してファームウェアが送信される場合、サーバ装置２０から送信されるファームウェアには、例えばサーバ側通信制御装置３１により暗号化されたサーバ装置２０の署名が付与される。この場合、クライアント装置１０では、クライアント側通信制御装置３０により署名が復号されることにより、送信されたファームウェアが間違いなくサーバ装置２０から送信されたファームウェアであると判定することができる。これにより、あたかもサーバ装置２０であるかのように装う不正な端末から、不正なファームウェアがクライアント装置１０に送信されてしまった場合であっても、クライアント装置１０に対し不正なファームウェアに基づく誤った更新がなされてしまうことを排除することができる。
【０１２５】
また、このように通信制御装置３０（３１）を介して通信が行われることにより、サーバ装置２０や通信制御管理装置５０等からクライアント装置１０にファームウェアを安全に更新することができるため、作業員が複数のクライアント装置１０に対して物理的に各々のクライアント装置１０が設置されている場所まで移動してファームウェアのアップデート作業を行う場合と比較して、作業コストを低減させることも可能である。
【０１２６】
また、実施形態の通信制御システム１においては、サーバ装置２０や通信制御管理装置５０等から、通信制御装置３０（３１）を介して、クライアント装置１０の起動や停止を行ってもよい。通信制御装置３０（３１）を介して起動や停止（リモートアクティベーション）が行われることにより、安全にクライアント装置１０の機能を更新させることができ、セキュアな遠隔制御を実現させることができる。
【０１２７】
なお、上述した実施形態の通信制御システム１において、クライアント側通信制御装置３０−１がサーバ側通信制御装置３１−１と通信を行う例を説明したが、クライアント側通信制御装置３０の通信先はこれに限定されることはない。例えば、クライアント側通信制御装置３０−１は、クライアント側通信制御装置３０−２と通信を行ってもよい。クライアント側通信制御装置３０−１は、クライアント側通信制御装置３０−２から通信開始の合図を受信した場合、まずクライアント側通信制御装置３０−２との間で相互認証を行い、クライアント側通信制御装置３０−２が正当な通信端末であることを確認する。そして、相互認証が正しく行われた場合、クライアント側通信制御装置３０−１は、クライアント側通信制御装置３０−２から受信した情報をクライアント装置１０に出力する。暗号を使用して送信データに認証子が付与されることにより、通信情報の改ざんの検出及び送信者の特定が可能となる。このため、本実施形態の通信制御システム１においては、クライアント側通信制御装置３０とサーバ側通信制御装置３１との通信、及びクライアント側通信制御装置３０同士の通信において、「正しい相手から」、「改ざんされていないデータを受け取る」ことを確実にすることができる。
【０１２８】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
【０１２９】
例えば、仲介処理部３３Ａは、クライアント側通信制御装置３０と接続されるクライアント装置１０Ａ、１０Ｂ、１０Ｃ…との接続状況に基づいて、所定のコマンドをクライアント装置１０Ａ、１０Ｂ、１０Ｃ…に送信してもよい。例えば、クライアント装置１０Ａの接続が解除された場合、クライアント側通信制御部装置３０は、クライアント装置１０Ａに対して再起動を指示するコマンドを送信する。また、クライアント装置１０Ａ、１０Ｂが相互的に動作する関係である場合、いずれか一方の接続が解除されたならば、クライアント側通信制御装置３０が、他の一方の接続も解除するためのコマンドを送信してもよい。こうすることで、クライアント側通信制御装置３０からの通報で接続が解除されたクライアント装置１０に管理者が到着する前に、クライアント装置１０に対して所定の動作を実行させることができる。よって、即時的な制御を実現することができる。
【０１３０】
言い換えると、クライアント装置１０Ａ，１０Ｂ，１０Ｃ…ごとに、自装置のクライアント側通信制御装置３０との接続状況や、他装置のクライアント側通信制御装置３０との接続状況などに応じて、動作条件が予め決められていてもよい。仲介処理部３３Ａは、接続状況に基づいて、合致する動作条件がある場合、動作条件を実行させるコマンドを対象のクライアント装置１０Ａ，１０Ｂ，１０Ｃ…に送信する。
【０１３１】
クライアント側通信制御装置３０は、複数のリーダライタ３５を備え、通信するクライアント装置ごとに用意されたＩＣカード４０を搭載可能であってもよい。
【符号の説明】
【０１３２】
１…通信制御システム、１０…クライアント装置、２０…サーバ装置、３０…クライアント側通信制御装置、３１…サーバ側通信制御装置、３３Ａ…仲介処理部、３３Ｂ…管理部
【図１】
2020123785.tif 000003
【図２】
2020123785.tif 000004
【図３】
2020123785.tif 000005
【図４】
2020123785.tif 000006
【図５】
2020123785.tif 000007
【図６】
2020123785.tif 000008
【図７】
2020123785.tif 000009
【図８】
2020123785.tif 000010
【図９】
2020123785.tif 000011