(57)【要約】【課題】社会インフラシステムを変更することなく、システム全体の安全性を高めることができるクライアント側通信制御装置を提供することである。【解決手段】実施形態のクライアント側通信制御装置は、クライアント装置とネットワーク通信網との間に接続される。クライアント側通信制御装置は、認証部と、制御部と、を持つ。前記制御部は、クライアント秘密鍵及びクライアント証明書を前記クライアント側通信制御装置に送信すると共に、サーバ秘密鍵及びサーバ証明書をサーバ側通信制御装置に送信するプライベート認証局により発行された、前記クライアント秘密鍵、及び前記クライアント証明書を用いた相互認証処理と、前記クライアント装置により送信される情報を暗号化するとともに、前記サーバ装置により送信された情報を復号する暗号化復号処理とのうち少なくとも一方の処理を、前記認証部に依頼する。【選択図】図１
2020048239.tif 000002
【特許請求の範囲】
【請求項１】
クライアント装置とネットワーク通信網との間に接続されるクライアント側通信制御装置であって、
認証部と、
前記認証部に記憶させるクライアント秘密鍵、及びクライアント証明書を前記クライアント側通信制御装置に送信すると共に、前記クライアント装置の通信先であるサーバ装置のために使用されるサーバ秘密鍵、及びサーバ証明書を、前記サーバ装置と前記ネットワーク通信網との間に接続されるサーバ側通信制御装置に送信するプライベート認証局により発行された、前記クライアント秘密鍵、及び前記クライアント証明書を用いる相互認証を前記サーバ側通信制御装置との間で行う相互認証処理と、前記クライアント装置により前記サーバ装置に対して送信される情報を、前記クライアント側通信制御装置と前記サーバ側通信制御装置との間で決定された共通鍵を用いて暗号化するとともに、前記サーバ装置により前記クライアント装置に対して送信された情報を、前記共通鍵を用いて復号する暗号化復号処理とのうち少なくとも一方の処理を前記認証部に、依頼する制御部と
を有するクライアント側通信制御装置。
【請求項２】
前記制御部は、前記相互認証を前記クライアント装置に対して情報を送信した通信装置との間で行うように前記認証部に依頼し、前記相互認証の結果に基づいて前記通信装置に対して前記クライアント装置との通信を許可するか否かを判定し、判定結果を前記プライベート認証局に送信する
請求項１に記載のクライアント側通信制御装置。
【請求項３】
前記制御部は、前記クライアント装置に対して送信された前記クライアント装置のファームウェアに関する情報の内容が正しいか否かの検証を前記プライベート認証局により発行された鍵を用いて行うファームウェア検証処理を前記認証部に依頼する
請求項１又は請求項２に記載のクライアント側通信制御装置。
【請求項４】
前記認証部は、前記クライアント装置に対する通信が許可される通信機器に関する情報を示す送信先リストに基づいて、前記クライアント装置に対して情報を送信した通信装置に対する前記クライアント装置との通信を許可するか否かを判定する
請求項１から請求項３のいずれか一項に記載のクライアント側通信制御装置。
【請求項５】
有効期限に基づいて更新された前記クライアント証明書を、前記プライベート認証局から受信する
請求項１から請求項４の何れか一項に記載のクライアント側通信制御装置。
【請求項６】
前記クライアント側通信制御装置による前記相互認証処理において、相互に正当性が証明されなかった場合、前記プライベート認証局により前記クライアント証明書が無効化される
請求項１から請求項５の何れか一項に記載のクライアント側通信制御装置。
【請求項７】
サーバ装置とネットワーク通信網との間に接続されるサーバ側通信制御装置であって、
認証部と、
サーバ秘密鍵、及びサーバ証明書を前記サーバ側通信制御装置に送信すると共にし、前記サーバ装置の通信先であるクライアント装置に記憶させるクライアント秘密鍵、及びクライアント証明書を、前記サーバ装置と前記ネットワーク通信網との間に接続されるクライアント側通信制御装置に送信するプライベート認証局により発行された前記サーバ秘密鍵、及び前記サーバ証明書を用いる相互認証を前記クライアント側通信制御装置との間で行う相互認証処理と、前記サーバ装置により前記クライアント装置に対して送信される情報を、前記サーバ側通信制御装置と前記クライアント側通信制御装置との間で決定された共通鍵を用いて暗号化するとともに、前記クライアント装置により前記サーバ装置に対して送信された情報を、前記共通鍵を用いて復号する暗号化復号処理とのうち少なくとも一方の処理を前記認証部に、依頼する制御部と
を有するサーバ側通信制御装置。
【請求項８】
前記制御部は、前記相互認証を前記サーバ装置に対して情報を送信した通信装置との間で行うように前記認証部に依頼し、前記相互認証の結果に基づいて前記通信装置に対して前記サーバ装置との通信を許可するか否かを判定し、判定結果を前記プライベート認証局に送信する
請求項７に記載のサーバ側通信制御装置。
【請求項９】
前記制御部は、前記サーバ装置に対して送信された前記サーバ装置のファームウェアに関する情報の内容が正しいか否かの検証を前記プライベート認証局により発行された鍵を用いて行うファームウェア検証処理を前記認証部に依頼する
請求項７又は請求項８に記載のサーバ側通信制御装置。
【請求項１０】
前記認証部は、前記サーバ装置に対する通信が許可される通信機器に関する情報を示す送信先リストに基づいて、前記サーバ装置に対して情報を送信した通信装置に対する前記サーバ装置との通信を許可するか否かを判定する
請求項７から請求項９のいずれか一項に記載のサーバ側通信制御装置。
【請求項１１】
有効期限に基づいて更新された前記サーバ証明書を、前記プライベート認証局から受信する
請求項７から請求項１０のいずれか一項に記載のサーバ側通信制御装置。
【請求項１２】
前記サーバ側通信制御装置による前記相互認証処理において、相互に正当性が証明されなかった場合、前記プライベート認証局により前記サーバ証明書が無効化される
請求項７から請求項１１のいずれか一項に記載のサーバ側通信制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、クライアント側通信制御装置、およびサーバ側通信制御装置に関する。
【背景技術】
【０００２】
監視カメラ等の社会インフラシステムにおいては、取り扱われるデータや機器の制御がマルウェア等の攻撃から防御される必要がある。しかしながら、社会インフラシステムを構成する機器類は頻繁に置換えることが難しい。このため、安全対策が不十分になってしまうという問題があった。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−１１７８８７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明が解決しようとする課題は、社会インフラシステムを変更することなく、社会インフラシステムの安全性を向上させることができるクライアント側通信制御装置、およびサーバ側通信制御装置を提供することである。
【課題を解決するための手段】
【０００５】
実施形態のクライアント側通信制御装置は、クライアント装置とネットワーク通信網との間に接続される。クライアント側通信制御装置は、認証部と、制御部と、を持つ。前記制御部は、前記認証部に記憶させるクライアント秘密鍵、及びクライアント証明書を前記クライアント側通信制御装置に送信すると共に、前記クライアント装置の通信先であるサーバ装置のために使用されるサーバ秘密鍵、及びサーバ証明書を、前記サーバ装置と前記ネットワーク通信網との間に接続されるサーバ側通信制御装置に送信するプライベート認証局により発行された、前記クライアント秘密鍵、及び前記クライアント証明書を用いる相互認証を前記サーバ側通信制御装置との間で行う相互認証処理と、前記クライアント装置により前記サーバ装置に対して送信される情報を、前記クライアント側通信制御装置と前記サーバ側通信制御装置との間で決定された共通鍵を用いて暗号化するとともに、前記サーバ装置により前記クライアント装置に対して送信された情報を、前記共通鍵を用いて復号する暗号化復号処理とのうち少なくとも一方の処理を、前記認証部に依頼する。
【図面の簡単な説明】
【０００６】
【図１】実施形態の通信制御システム１の構成例を示す図。
【図２】実施形態のクライアント装置１０、およびサーバ装置２０の機能構成例を示すブロック図。
【図３】実施形態のクライアント側通信制御装置３０、およびサーバ側通信制御装置３１の機能構成例を示すブロック図。
【図４】実施形態のＩＣカード４０のハードウェア構成例を示す図。
【図５】実施形態のＩＣカード４０の機能構成例を示すブロック図。
【図６】実施形態の通信制御管理装置５０の機能構成例を示すブロック図。
【図７】実施形態の通信制御システム１が行う処理の一例を示すシーケンスチャート。
【発明を実施するための形態】
【０００７】
以下、実施形態のクライアント側通信制御装置、およびサーバ側通信制御装置を、図面を参照して説明する。
【０００８】
図１は、実施形態の通信制御システム１の構成例を示す図である。通信制御システム１は、クライアント装置１０（１０−１〜１０−Ｎ）と、サーバ装置２０と、クライアント側通信制御装置３０（３０−１〜３０−Ｎ）（「第１の通信制御装置」の一例）と、サーバ側通信制御装置３１（「第１の通信制御装置」の一例）と、通信制御管理装置５０（「プライベート認証局」の一例）と、ネットワーク６０と、ゲートウェイ７０と、を備える。以下の説明においては、ネットワーク６０と、ネットワーク６０とクライアント装置１０等とを接続するゲートウェイ７０と、をまとめて「ネットワークＮＷ」とも称する。
【０００９】
クライアント装置１０は、クライアント側通信制御装置３０を介してネットワークＮＷと接続する。サーバ装置２０は、サーバ側通信制御装置３１を介してネットワークＮＷと接続する。なお、クライアント装置１０、およびサーバ装置２０の構成の詳細については後述する。
【００１０】
クライアント側通信制御装置３０は、クライアント装置１０とネットワークＮＷとの間に接続され、クライアント装置１０とサーバ装置２０との間の通信を仲介する。クライアント側通信制御装置３０は、クライアント装置１０によりサーバ装置２０に対して送信されるデータを取得し、取得したデータをサーバ装置２０に対して出力する。ここで、クライアント側通信制御装置３０は、サーバ装置２０に対してデータを送信する際に、クライアント装置１０から取得したデータを暗号化し、暗号化したデータをサーバ装置２０に対して送信する。
【００１１】
また、クライアント側通信制御装置３０は、サーバ装置２０によりクライアント装置１０に対して送信されるデータを取得し、取得したデータをクライアント装置１０に対して出力する。ここで、クライアント側通信制御装置３０が取得するデータは暗号化されたデータである。クライアント側通信制御装置３０は、クライアント装置１０にデータを出力する際に、サーバ装置２０からサーバ側通信制御装置３１を介して取得したデータを復号し、復号したデータをクライアント装置１０に出力する。
【００１２】
サーバ側通信制御装置３１は、サーバ装置２０とネットワークＮＷとの間に接続され、クライアント装置１０とサーバ装置２０との間の通信を仲介する。サーバ側通信制御装置３１は、サーバ装置２０によりクライアント装置１０に対して送信されるデータを取得し、取得したデータをクライアント装置１０に対して送信する。ここで、サーバ側通信制御装置３１は、クライアント装置１０に対してデータを送信する際に、サーバ装置２０から取得したデータを暗号化し、暗号化したデータをクライアント装置１０に対して送信する。
【００１３】
また、サーバ側通信制御装置３１は、クライアント装置１０によりサーバ装置２０に対して送信されるデータを取得し、取得したデータをサーバ装置２０に対して出力する。ここで、サーバ側通信制御装置３１が取得するデータは暗号化されたデータである。サーバ側通信制御装置３１は、サーバ装置２０にデータを出力する際に、クライアント装置１０からクライアント側通信制御装置３０を介して取得したデータを復号し、復号したデータをサーバ装置２０に出力する。
【００１４】
本実施形態において、クライアント側通信制御装置３０およびサーバ側通信制御装置３１が行うデータの暗号化には、例えば、ＳＳＬ（Secure Socket Layer）／ＴＬＳ（Transport Layer Security）のプロトコルによる暗号化が行われる。クライアント側通信制御装置３０およびサーバ側通信制御装置３１は、例えば、ＳＳＬ／ＴＬＳプロトコルを、ＨＴＴＰと組み合わせることで、ＨＴＴＰに含まれるデータを暗号化し、安全性を向上させたＨＴＴＰＳ（HTTP Secure）に置き換える。
【００１５】
なお、クライアント側通信制御装置３０およびサーバ側通信制御装置３１が行うデータの暗号化は、ＨＴＴＰをＨＴＴＰＳとすることに限定されない。クライアント側通信制御装置３０およびサーバ側通信制御装置３１は、ＳＳＬ／ＴＬＳプロトコルを種々の通信プロトコルと組み合わせることにより、安全性を向上させたセキュアな通信プロトコルに置き換えてもよい。例えば、クライアント側通信制御装置３０およびサーバ側通信制御装置３１は、ＦＴＰ（File Transfer Protocol）をＦＴＰＳ（FTP Secure）に置き換えてもよい。
【００１６】
本実施形態においては、クライアント側通信制御装置３０、またはサーバ側通信制御装置３１により暗号化されたデータがネットワークＮＷに出力される。換言すると、本実施形態においては、ネットワークＮＷを流れるデータは、暗号化されたデータであり。このため、ネットワークＮＷで送受信されるデータに対し、外部から悪意をもってアクセスされデータが盗聴されてしまうような危険を回避し、安全性を向上させる。なお、ここでいうデータの盗聴とは、「データを盗み見る行為」または「データを抜き取る行為」をいう。
【００１７】
通信制御管理装置５０は、クライアント側通信制御装置３０に対し、クライアント証明書、および秘密鍵を発行する。例えば、通信制御管理装置５０は、クライアント証明書、および秘密鍵を記憶させたＩＣカードを発行する。また、通信制御管理装置５０は、ＩＣカードが装着されたクライアント側通信制御装置３０に対し、ＩＣカードに記憶させるクライアント証明書、および秘密鍵を、ネットワークＮＷを介して送信する。
【００１８】
また、通信制御管理装置５０は、サーバ側通信制御装置３１に対し、サーバ証明書、および秘密鍵を発行する。例えば、通信制御管理装置５０は、サーバ証明書、および秘密鍵を記憶させたＩＣカードを発行する。また、通信制御管理装置５０は、ＩＣカードが装着されたサーバ側通信制御装置３１に対し、ＩＣカードに記憶させるサーバ証明書、および秘密鍵を、ネットワークＮＷを介して送信する。クライアント証明書、サーバ証明書、および秘密鍵のそれぞれは、クライアント側通信制御装置３０とサーバ側通信制御装置３１とが暗号化通信を行う場合に用いる共通鍵（セッション鍵）を決定するために必要な情報である。
【００１９】
ここでは、クライアント装置１０、およびサーバ装置２０の構成について説明する。クライアント装置１０とサーバ装置２０とは、社会インフラシステムを構築する構成要素（コンポーネント）である。社会インフラとは、例えば、道路交通網、発電設備、配送電設備、水処理設備、又はガス配給設備等、社会基盤を整えるために必要な設備である。社会インフラシステムとは、例えば、社会インフラを監視し、状況の変化を把握し、その変化に対応することにより、社会インフラを安定的に動作させる仕組みである。以下においては、クライアント装置１０とサーバ装置とは、道路や公共設備などを監視する監視システムのコンポーネントである場合を例に説明する。この場合、クライアント装置１０は、道路の状況等が撮像された撮像データを、ネットワークＮＷを介して送信する装置（ネットワーク監視カメラ）である。サーバ装置２０は、クライアント装置１０により送信された撮像データを、ネットワークＮＷを介して受信する装置である。
【００２０】
なお、クライアント装置１０とサーバ装置２０とは、監視システムのコンポーネントに限定されることはない。例えば、クライアント装置１０とサーバ装置とは、発電設備や配送電設備における電力状況をモニタリングするシステムのコンポーネントであってもよいし、物流センタにおける配送状況を取得するシステム、あるいは工場や研究機関における設備の稼働状況を取得するシステム等のコンポーネントであってもよい。
【００２１】
図２は、実施形態のクライアント装置１０、およびサーバ装置２０の機能構成例を示すブロック図である。
【００２２】
クライアント装置１０は、ＮＷ（ネットワーク）通信部１１と、クライアント制御部１２と、撮像部１３とを備える。ＮＷ通信部１１は、例えば、クライアント装置１０のイーサネット（登録商標）のポートである。本実施形態では、ＮＷ通信部１１は、クライアント側通信制御装置３０に接続され、クライアント装置１０からサーバ装置２０に対して送信されるデータをクライアント側通信制御装置３０に出力する。なお、ＮＷ通信部１１は、従来のシステムであれば、ネットワークＮＷに接続され、ネットワークＮＷを介して、サーバ装置２０と通信を行う機能部に相当する。
【００２３】
クライアント制御部１２は、例えば、ＣＰＵなどを含むプロセッサであり、クライアント装置１０を統括的に制御する。クライアント制御部１２は、例えば、サーバ装置２０からの制御に従い、撮像部１３に撮像を開始または停止させたり、撮像部１３に対し撮像するカメラの方向や、撮像する際の倍率等の撮像条件を設定したりする。
【００２４】
撮像部１３は、クライアント制御部１２の指示に従い、所定箇所における風景を撮像する。撮像部１３は、撮像したデータ（撮像データ）を、クライアント制御部１２に出力する。
【００２５】
サーバ装置２０は、ＮＷ（ネットワーク）通信部２１と、サーバ制御部２２と、撮像データ記憶部２３とを備える。ＮＷ通信部２１は、例えば、サーバ装置２０のイーサネット（登録商標）のポートである。本実施形態では、ＮＷ通信部２１は、サーバ側通信制御装置３１に接続され、サーバ装置２０からクライアント装置１０に対して送信されるデータをサーバ側通信制御装置３１に出力する。なお、ＮＷ通信部２１は、従来のシステムであれば、ネットワークＮＷに接続され、ネットワークＮＷを介して、クライアント装置１０と通信を行う機能部に相当する。
【００２６】
サーバ制御部２２は、例えば、ＣＰＵなどを含むプロセッサであり、サーバ装置２０を統括的に制御する。サーバ制御部２２は、例えば、クライアント装置１０により撮像された撮像データを、撮像データ記憶部２３に記憶させる。撮像データ記憶部２３は、サーバ制御部２２の指示に従い、撮像データを記憶する。
【００２７】
従来のシステムにおいて、クライアント装置１０とサーバ装置２０とが、互いのＮＷ通信部およびネットワークＮＷを介して接続された場合、クライアント装置とサーバ装置２０との間の通信には、ネットワーク監視カメラにおける一般的な通信プロトコルであるＨＴＴＰが用いられる。
【００２８】
この場合、クライアント装置１０、またはサーバ装置２０によりネットワークＮＷに出力された、暗号化されていない情報（いわゆる、平文）がネットワークＮＷを流れる。この場合、外部から悪意をもってネットワークＮＷ上のデータが取得されてしまうと、容易に撮像データが盗聴されたり、改ざんされたりする危険性がある。このような不正な攻撃に対する対策として、クライアント装置１０には撮像データを暗号化させてネットワークＮＷに出力させることが考えられる。例えば、クライアント装置１０のクライアント制御部１２は、撮像データを暗号化し、暗号化した撮像データをネットワークＮＷに出力する。しかしながら、そもそも監視カメラが備えるＣＰＵ等のプロセッサは、撮像データの圧縮や符号化の用途に用いられるために用いられる用途で用いられることが一般的であるため、さらに暗号化のための処理を行うだけの資源（リソース）を備えていない。このような場合、クライアント制御部１２が元々有するＣＰＵでは、撮像データを暗号化させることができない。クライアント制御部１２に撮像データを暗号化させる場合には、撮像データを暗号化するためのプロセッサを、更にクライアント制御部１２に搭載させる等、クライアント制御部１２のハードウェア構成の変更や置換えが必要となることが考えられる。しかしながら、クライアント装置１０は、監視カメラ等の社会インフラを構成するコンポーネントであるため、ハードウェア構成を変更したり置換えたりすることが容易にはできない。このような事情を鑑みると、クライアント装置１０変更を加えることなく、撮像データが暗号化されてネットワークＮＷに出力されることが望ましい。
【００２９】
本実施形態において、クライアント装置１０とネットワークＮＷとの間に接続されたクライアント側通信制御装置３０が、クライアント装置１０が送信するデータを暗号化してネットワークＮＷに出力する。また、サーバ装置２０とネットワークＮＷとの間に接続されたサーバ側通信制御装置３１が、サーバ装置２０が送信する制御データを暗号化してネットワークＮＷに出力する。これにより、クライアント装置１０、およびサーバ装置２０を変更することなく、ネットワークＮＷを流れる撮像データの安全性を向上させる。
【００３０】
ここでは、クライアント側通信制御装置３０、およびサーバ側通信制御装置３１の構成について図３を用いて説明する。図３は、実施形態のクライアント側通信制御装置３０、およびサーバ側通信制御装置３１の機能構成例を示すブロック図である。クライアント側通信制御装置３０、およびサーバ側通信制御装置３１の機能構成は同じである。このため、以下では、一方（例えば、クライアント側通信制御装置３０）の構成について説明し、他方（例えば、サーバ側通信制御装置３１）の構成については説明を省略する。また、以下では、クライアント側通信制御装置３０とサーバ側通信制御装置３１とを区別しない場合には、単に、通信制御装置３０（３１）などと称する。
【００３１】
図３に示すように、通信制御装置３０（３１）は、ＮＷ（ネットワーク）通信部３２と、制御部３３と、装置通信部３４と、リーダライタ３５と、ＩＣカード４０とを備える。
【００３２】
ここで、ＩＣカード４０は、「認証部」の一例である。
【００３３】
ＮＷ通信部３２は、ネットワークＮＷに接続され、ネットワークＮＷを介して、他方の通信制御装置３０（３１）と通信を行う。
【００３４】
制御部３３は、例えば、ＣＰＵなどを含むプロセッサであり、通信制御装置３０（３１）を統括的に制御する。制御部３３は、例えば、リーダライタ３５を介して、ＩＣカード４０にコマンドを送信するとともに、ＩＣカード４０からレスポンスを受信する。また、制御部３３は、ＩＣカード４０から受信したレスポンスに基づく情報を、ＮＷ通信部３２を介して、他方の通信制御装置３０（３１）に送信する。また、制御部３３は、ＮＷ通信部３２を介して、他方の通信制御装置３０（３１）から受信した情報に基づいて、ＩＣカード４０にコマンドを送信する。
【００３５】
装置通信部３４は、装置（クライアント装置１０、またはサーバ装置２０）に接続され、装置と通信を行う。具体的には、クライアント側通信制御装置３０の装置通信部３４は、クライアント装置１０に接続され、クライアント装置１０からの撮像データを取得するとともに、復号された制御データをクライアント装置１０に出力する。また、サーバ側通信制御装置３１の装置通信部３４は、サーバ装置２０に接続され、サーバ装置２０からの制御データを取得するとともに、復号された撮像データをサーバ装置２０に出力する。
【００３６】
リーダライタ３５は、ＩＣカード４０のコンタクト部３６を介して、ＩＣカード４０の間の通信を行う。
【００３７】
ＩＣカード４０は、例えば、プラスチックのカード基材に、ＩＣモジュール４１を実装して形成されている。すなわち、ＩＣカード４０は、ＩＣモジュール４１と、ＩＣモジュール４１が埋め込まれたカード基材とを備える。また、ＩＣカード４０は、通信制御装置３０（３１）に着脱可能に装着され、コンタクト部３６を介して通信制御装置３０（３１）と通信可能である。
【００３８】
ＩＣカード４０は、例えば、通信制御装置３０（３１）が送信したコマンド（処理要求）を、コンタクト部３６を介して受信し、受信したコマンドに応じた処理（コマンド処理）を実行する。そして、ＩＣカード４０は、コマンド処理の実行結果であるレスポンス（処理応答）を通信制御装置３０（３１）にコンタクト部３６を介して送信する。
【００３９】
ＩＣモジュール４１は、コンタクト部３６と、ＩＣチップ４２とを備える。コンタクト部３６は、ＩＣカード４０が動作するために必要な各種信号の端子を有している。ここで、各種信号の端子は、電源電圧、クロック信号、リセット信号などを通信制御装置３０（３１）から供給を受ける端子、及び、通信制御装置３０（３１）と通信するためのシリアルデ―タ入出力端子（ＳＩＯ端子）を有する。ＩＣチップ４２は、例えば、１チップのマイクロプロセッサなどのＬＳＩ（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）認証を取得したセキュアエレメントと呼ばれる耐タンパ性の高いチップを搭載してもよい。このチップを用いて、秘密鍵や公開鍵を含む証明書を記憶させることにより、非常に高い安全性を維持することができる。
【００９７】
また、実施形態の通信制御システム１においては、サーバ装置２０や通信制御管理装置５０等から、通信制御装置３０（３１）を介して、クライアント装置１０のプログラムを更新させるようにしてもよい。通信制御装置３０（３１）を介してプログラムの更新（ファームウェアのアップデート）が行われることにより、安全にクライアント装置１０の機能を更新させることができる。このようにサーバ装置２０からクライアント装置１０に対してファームウェアが送信される場合、サーバ装置２０から送信されるファームウェアには、例えばサーバ側通信制御装置３１により暗号化されたサーバ装置２０の署名が付与される。この場合、クライアント装置１０では、クライアント側通信制御装置３０により署名が復号されることにより、送信されたファームウェアが間違いなくサーバ装置２０から送信されたファームウェアであると判定することができる。これにより、あたかもサーバ装置２０であるかのように装う不正な端末から、不正なファームウェアがクライアント装置１０に送信されてしまった場合であっても、クライアント装置１０に対し不正なファームウェアに基づく誤った更新がなされてしまうことを排除することができる。
【００９８】
また、このように通信制御装置３０（３１）を介して通信が行われることにより、サーバ装置２０や通信制御管理装置５０等からクライアント装置１０にファームウェアを安全に更新することができるため、作業員が複数のクライアント装置１０に対して物理的に各々のクライアント装置１０が設置されている場所まで移動してファームウェアのアップデート作業を行う場合と比較して、作業コストを低減させることも可能である。
【００９９】
また、実施形態の通信制御システム１においては、サーバ装置２０や通信制御管理装置５０等から、通信制御装置３０（３１）を介して、クライアント装置１０の起動や停止を行ってもよい。通信制御装置３０（３１）を介して起動や停止（リモートアクティベーション）が行われることにより、安全にクライアント装置１０の機能を更新させることができ、セキュアな遠隔制御を実現させることができる。
【０１００】
また、実施形態の通信制御システム１においては、クライアント装置１０、およびサーバ装置２０が有線により通信する場合を例に説明したが、これに限定されることはない。クライアント装置１０、およびサーバ装置２０のうち少なくともいずれかが無線ＬＡＮ等により無線通信を行う装置であってもよい。例えば、クライアント装置１０が無線通信によりサーバ装置２０と通信を行う場合、クライアント側通信制御装置３０は、無線による通信機能を有し、クライアント装置１０により送信されるデータを暗号化し、暗号化したデータを、無線通信によりサーバ装置２０に送信する。
【０１０１】
なお、上述した実施形態の通信制御システム１において、クライアント側通信制御装置３０がサーバ側通信制御装置３１と通信を行う例を説明したが、クライアント側通信制御装置３０の通信先はこれに限定されることはない。例えば、クライアント側通信制御装置３０−１は、クライアント側通信制御装置３０−２と通信を行ってもよい。クライアント側通信制御装置３０−１は、クライアント側通信制御装置３０−２から通信開始の合図を受信した場合、まずクライアント側通信制御装置３０−２との間で相互認証を行い、クライアント側通信制御装置３０−２が正当な通信端末であることを確認する。そして、相互認証が正しく行われた場合、クライアント側通信制御装置３０−１は、クライアント側通信制御装置３０−２から受信した情報をクライアント装置１０に出力する。暗号を使用して送信データに認証子が付与されることにより、通信情報の改ざんの検出及び送信者の特定が可能となる。このため、本実施形態の通信制御システム１においては、クライアント側通信制御装置３０とサーバ側通信制御装置３１との通信、及びクライアント側通信制御装置３０同士の通信において、「正しい相手から」、「改ざんされていないデータを受け取る」ことを確実にすることができる。
【０１０２】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
【符号の説明】
【０１０３】
１…通信制御システム、１０…クライアント装置、２０…サーバ装置、３０クライアント側通信制御装置、３１…サーバ側通信制御装置、４０…ＩＣカード、４０２…コマンド処理部、４０３…暗号化復号部、４０５…証明書情報記憶部、４０６…秘密情報記憶部。
【図１】
2020048239.tif 000003
【図２】
2020048239.tif 000004
【図３】
2020048239.tif 000005
【図４】
2020048239.tif 000006
【図５】
2020048239.tif 000007
【図６】
2020048239.tif 000008
【図７】
2020048239.tif 000009