(57)【要約】【課題】端末装置から管理装置へと通信データが途切れることなく流れる環境において、通信データの停止を行なうことなく、端末装置の乗っ取りを抑制し得る、通信システム、管理装置、端末装置、通信方法、及びプログラムを提供する。【解決手段】管理装置３０は、メッセージ認証コードを生成するための２以上の鍵データを有し、端末装置２０にデータを送信する場合に、データに２以上の鍵データそれぞれを用いて作成した２以上のメッセージ認証コードを付加し、データを端末装置２０に送信する。端末装置２０は、２以上の鍵データのいずれかと同一の鍵データを１つ有し、管理装置３０からデータを受信した場合に、受信したデータに付加されたメッセージ認証コードを取得し、メッセージ認証コードのいずれかが、自身が有する鍵データと同一の鍵データで作成されている場合に、受信したデータは管理装置３０から送信されてきたデータであると判定する。【選択図】図１
2019016987.tif 000002
【特許請求の範囲】
【請求項１】
データを連続して送信する端末装置と、前記端末装置からの前記データを受信する管理装置と、を備え、
前記管理装置は、
メッセージ認証コードを生成するための２以上の鍵データを有し、
前記端末装置にデータを送信する場合に、送信対象となるデータに、前記２以上の鍵データそれぞれを用いて作成した２以上のメッセージ認証コードを付加して、前記送信対象となるデータを前記端末装置に送信し、
前記端末装置は、
前記２以上の鍵データのいずれかと同一の鍵データを１つ有し、
前記管理装置からデータを受信した場合に、受信したデータに付加されているメッセージ認証コードを取得し、
取得したメッセージ認証コードのいずれかが、自身が有する鍵データと同一の鍵データで作成されている場合に、受信したデータは前記管理装置から送信されてきたデータであると判定する、
ことを特徴とする通信システム。
【請求項２】
前記端末装置が、
前記管理装置に連続して送信するデータそれぞれに、自身が有する鍵データで生成したメッセージ認証コードを付加し、
前記管理装置は、
前記端末装置から連続して送信されてきたデータを受信した場合に、受信した前記データに付加されているメッセージ認証コードを取得し、
取得したメッセージ認証コードが、自身が有する前記２以上の鍵データのいずれかと同一の鍵データで作成されている場合に、受信したデータは前記端末装置から送信されてきたデータであると判定する、
請求項１に記載の通信システム。
【請求項３】
データを連続して送信する端末装置から前記データを受信する、管理装置であって、
メッセージ認証コードを生成するための２以上の鍵データを格納する、格納部と、
前記端末装置にデータを送信する場合に、送信対象となるデータに、前記２以上の鍵データそれぞれを用いて作成した２以上のメッセージ認証コードを付加する、コード付加部と、
前記メッセージ認証コードが付加された、前記送信対象となるデータを前記端末装置に送信する、データ送信部と、
を備えている、ことを特徴とする管理装置。
【請求項４】
前記端末装置から連続して送信されてきたデータを受信した場合に、受信した前記データに付加されているメッセージ認証コードを取得する、コード取得部と、
取得された前記メッセージ認証コードが、前記格納部に格納されている前記２以上の鍵データのいずれかと同一の鍵データで作成されている場合に、受信したデータは前記端末装置から送信されてきたデータであると判定する、判定部と、
を更に備えている、請求項３に記載の管理装置。
【請求項５】
管理装置に対してデータを連続して送信する端末装置であって、
前記管理装置が有する２以上の鍵データのいずれかと同一の鍵データを１つ格納する、格納部と、
前記管理装置からデータを受信した場合に、受信したデータに付加されているメッセージ認証コードを取得する、コード取得部と、
取得された前記メッセージ認証コードのいずれかが、前記格納部に格納されている前記鍵データと同一の鍵データで作成されている場合に、受信した前記データは前記管理装置から送信されてきたデータであると判定する、判定部と、
を備えている、ことを特徴とする端末装置。
【請求項６】
前記管理装置に連続して送信するデータそれぞれに、前記格納部に格納されている前記鍵データで生成したメッセージ認証コードを付加する、コード付加部を更に備えている、
請求項５に記載の端末装置。
【請求項７】
データを連続して送信する端末装置と、前記端末装置からの前記データを受信する管理装置と、を用い、
（ａ）前記管理装置によって、メッセージ認証コードを生成するための２以上の鍵データそれぞれを用いて、２以上のメッセージ認証コードを作成する、ステップと、
（ｂ）前記管理装置によって、前記端末装置にデータを送信する場合に、送信対象となるデータに、前記２以上のメッセージ認証コードを付加して、前記送信対象となるデータを前記端末装置に送信する、ステップと、
（ｃ）前記端末装置によって、前記管理装置からデータを受信した場合に、受信したデータに付加されているメッセージ認証コードを取得する、ステップと、
（ｄ）前記（ｃ）のステップで取得されたメッセージ認証コードのいずれかが、前記端末装置自身が有する鍵データと同一の鍵データで作成されている場合に、前記端末装置によって、受信したデータは前記管理装置から送信されてきたデータであると判定する、ステップと、
を有することを特徴とする通信方法。
【請求項８】
（ｅ）前記端末装置によって、前記管理装置に連続して送信するデータそれぞれに、自身が有する鍵データで生成したメッセージ認証コードを付加する、ステップと、
（ｆ）前記管理装置によって、前記端末装置から連続して送信されてきたデータを受信した場合に、受信した前記データに付加されているメッセージ認証コードを取得する、ステップと、
（ｇ）前記（ｆ）のステップで取得されたメッセージ認証コードが、前記管理装置自身が有する前記２以上の鍵データのいずれかと同一の鍵データで作成されている場合に、前記管理装置によって、受信したデータは前記端末装置から送信されてきたデータであると判定する、ステップと、
を更に有する、
請求項７に記載の通信方法。
【請求項９】
コンピュータによって、データを連続して送信する端末装置から前記データを受信するためのプログラムであって、
前記コンピュータに、
（ａ）メッセージ認証コードを生成するための２以上の鍵データそれぞれを用いて、２以上のメッセージ認証コードを作成する、ステップと、
（ｂ）前記端末装置にデータを送信する場合に、送信対象となるデータに、前記２以上のメッセージ認証コードを付加する、ステップ、
（ｃ）前記メッセージ認証コードが付加された、前記送信対象となるデータを前記端末装置に送信する、ステップと、
を実行させる、プログラム。
【請求項１０】
前記コンピュータに、
（ｄ）前記端末装置から連続して送信されてきたデータを受信した場合に、受信した前記データに付加されているメッセージ認証コードを取得する、ステップと、
（ｅ）前記（ｄ）のステップで取得された前記メッセージ認証コードが、前記２以上の鍵データのいずれかと同一の鍵データで作成されている場合に、受信したデータは前記端末装置から送信されてきたデータであると判定する、ステップと、
を更に実行させる、請求項９に記載のプログラム。
【請求項１１】
コンピュータによって、管理装置に対してデータを連続して送信するためのプログラムであって、
前記コンピュータに、
（ａ）前記管理装置が有する２以上の鍵データのいずれかと同一の鍵データを取得する、ステップと、
（ｂ）前記管理装置からデータを受信した場合に、受信したデータに付加されているメッセージ認証コードを取得する、ステップと、
（ｃ）前記（ｂ）のステップで取得された前記メッセージ認証コードのいずれかが、前記（ａ）のステップで取得された前記鍵データと同一の鍵データで作成されている場合に、受信した前記データは前記管理装置から送信されてきたデータであると判定する、ステップと、
を実行させる、プログラム。
【請求項１２】
前記コンピュータに、
（ｄ）前記管理装置に連続して送信するデータそれぞれに、前記（ａ）のステップで取得された前記鍵データで生成したメッセージ認証コードを付加する、ステップを更に実行させる、
請求項１１に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メッセージ認証コードを用いた通信システム、それに用いられる管理装置、同じく端末装置、及び通信方法に関し、更には、これらを実現するためのプログラムに関する。
【背景技術】
【０００２】
メッセージ認証コード（ＭＡＣ：Message Authentication Code）、メッセージを認証するための情報であり、近年、データ通信においてデータが改竄されているかどうかを検証する際に利用されている。例えば、特許文献１は、ＭＡＣを利用して、監視カメラから出力された画像データの改竄を検証するシステムを開示している。
【０００３】
具体的には、特許文献１に開示されたシステムは、監視カメラと、管理装置とを備えている。特許文献１に開示されたシステムでは、監視カメラは、まず、保護対象となる画像データと鍵データとを用いて、ＭＡＣを生成する。次に、監視カメラは、保護対象となる画像データと、生成したＭＡＣとを一緒に管理装置に送信する。
【０００４】
また、特許文献１に開示されたシステムでは、管理装置は、自身が保持する鍵データと受信した画像データとからＭＡＣを生成し、生成したＭＡＣと送信されてきたＭＡＣとを比較して、データの改竄の有無を判定する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００６−２３７８６０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、特許文献１に開示されたシステムでは、管理装置は監視カメラに対して種々の指示命令を送る場合があるが、監視カメラにおいて、送信されてきた指示命令が正当であるかどうかを判断する術はない。このため、特許文献１に開示されたシステムでは、監視カメラが外部から乗っ取られる可能性がある。
【０００７】
一方、監視カメラから管理装置に画像データを送る場合と同様に、管理装置からもＭＡＣと共に指示命令を送るようにすれば、上述の乗っ取りの問題は解消できるとも考えられる。
【０００８】
しかしながら、特許文献１に開示されたシステムにおいて、監視カメラには、実際には、ＭＡＣを生成する仕組みが搭載されていないので、管理装置から監視カメラにＭＡＣと共に指示命令が送信されても、監視カメラは指示命令が正当であるかどうかを判定できない。このため、上述の乗っ取りの問題を解消することは実際には困難である。
【０００９】
また、仮に、監視カメラに、ＭＡＣを生成する仕組みを搭載して、管理装置からの指示命令が正当であるかどうかを判定できるようにしても、両者において同時に鍵データの更新がなされない場合は、上述の乗っ取りの問題は完全には解消されない。従って、この問題の解消のためには、両者において同時にＭＡＣ用の鍵データを更新できるようにする必要があるが、この場合は、監視カメラからの画像データの送信を一時的に停止する必要性が発生してしまう。更に、管理装置と監視カメラとで同時にＭＡＣ用の鍵データを更新することは、通信環境、プロッセの性能、メモリの転送速度等の違いにより、極めて困難である。
【００１０】
本発明の目的の一例は、上記問題を解消し、端末装置から管理装置へと通信データが途切れることなく流れる環境において、通信データの停止を行なうことなく、端末装置の乗っ取りを抑制し得る、通信システム、管理装置、端末装置、通信方法、及びプログラムを提供することにある。
【課題を解決するための手段】
【００１１】
上記目的を達成するため、本発明の一側面における通信システムは、データを連続して送信する端末装置と、前記端末装置からの前記データを受信する管理装置と、を備え、
前記管理装置は、
メッセージ認証コードを生成するための２以上の鍵データを有し、
前記端末装置にデータを送信する場合に、送信対象となるデータに、前記２以上の鍵データそれぞれを用いて作成した２以上のメッセージ認証コードを付加して、前記送信対象となるデータを前記端末装置に送信し、
前記端末装置は、
前記２以上の鍵データのいずれかと同一の鍵データを１つ有し、
前記管理装置からデータを受信した場合に、受信したデータに付加されているメッセージ認証コードを取得し、
取得したメッセージ認証コードのいずれかが、自身が有する鍵データと同一の鍵データで作成されている場合に、受信したデータは前記管理装置から送信されてきたデータであると判定する、
ことを特徴とする。
【００１２】
上記目的を達成するため、本発明の一側面における管理装置は、データを連続して送信する端末装置から前記データを受信する、管理装置であって、
メッセージ認証コードを生成するための２以上の鍵データを格納する、格納部と、
前記端末装置にデータを送信する場合に、送信対象となるデータに、前記２以上の鍵データそれぞれを用いて作成した２以上のメッセージ認証コードを付加する、コード付加部と、
前記メッセージ認証コードが付加された、前記送信対象となるデータを前記端末装置に送信する、データ送信部と、
を備えている、ことを特徴とする。
【００１３】
上記目的を達成するため、本発明の一側面における端末装置は、管理装置に対してデータを連続して送信する端末装置であって、
前記管理装置が有する２以上の鍵データのいずれかと同一の鍵データを１つ格納する、格納部と、
前記管理装置からデータを受信した場合に、受信したデータに付加されているメッセージ認証コードを取得する、コード取得部と、
取得された前記メッセージ認証コードのいずれかが、前記格納部に格納されている前記鍵データと同一の鍵データで作成されている場合に、受信した前記データは前記管理装置から送信されてきたデータであると判定する、判定部と、
を備えている、ことを特徴とする。
【００１４】
上記目的を達成するため、本発明の一側面における通信方法は、データを連続して送信する端末装置と、前記端末装置からの前記データを受信する管理装置と、を用い、
（ａ）前記管理装置によって、メッセージ認証コードを生成するための２以上の鍵データそれぞれを用いて、２以上のメッセージ認証コードを作成する、ステップと、
（ｂ）前記管理装置によって、前記端末装置にデータを送信する場合に、送信対象となるデータに、前記２以上のメッセージ認証コードを付加して、前記送信対象となるデータを前記端末装置に送信する、ステップと、
（ｃ）前記端末装置によって、前記管理装置からデータを受信した場合に、受信したデータに付加されているメッセージ認証コードを取得する、ステップと、
（ｄ）前記（ｃ）のステップで取得されたメッセージ認証コードのいずれかが、前記端末装置自身が有する鍵データと同一の鍵データで作成されている場合に、前記端末装置によって、受信したデータは前記管理装置から送信されてきたデータであると判定する、ステップと、
を有することを特徴とする。
【００１５】
上記目的を達成するため、本発明の一側面における第１のプログラムは、コンピュータによって、データを連続して送信する端末装置から前記データを受信するためのプログラムであって、
前記コンピュータに、
（ａ）メッセージ認証コードを生成するための２以上の鍵データそれぞれを用いて、２以上のメッセージ認証コードを作成する、ステップと、
（ｂ）前記端末装置にデータを送信する場合に、送信対象となるデータに、前記２以上のメッセージ認証コードを付加する、ステップ、
（ｃ）前記メッセージ認証コードが付加された、前記送信対象となるデータを前記端末装置に送信する、ステップと、
を実行させることを特徴とする。
【００１６】
上記目的を達成するため、本発明の一側面における第２のプログラムは、コンピュータによって、管理装置に対してデータを連続して送信するためのプログラムであって、
前記コンピュータに、
（ａ）前記管理装置が有する２以上の鍵データのいずれかと同一の鍵データを取得する、ステップと、
（ｂ）前記管理装置からデータを受信した場合に、受信したデータに付加されているメッセージ認証コードを取得する、ステップと、
（ｃ）前記（ｂ）のステップで取得された前記メッセージ認証コードのいずれかが、前記（ａ）のステップで取得された前記鍵データと同一の鍵データで作成されている場合に、受信した前記データは前記管理装置から送信されてきたデータであると判定する、ステップと、
を実行させることを特徴とする。
【発明の効果】
【００１７】
以上のように、本発明によれば、端末装置から管理装置へと通信データが途切れることなく流れる環境において、通信データの停止を行なうことなく、端末装置の乗っ取りを抑制することができる。
【図面の簡単な説明】
【００１８】
【図１】図１は、本発明の実施の形態１における、通信システム、管理装置、及び端末装置の概略構成を示すブロック図である。
【図２】図２は、本発明の実施の形態１における、通信システム、管理装置、及び端末装置の具体的構成を示すブロック図である。
【図３】図３は、本発明の実施の形態１における管理装置の動作を示すフロー図である。
【図４】図４は、本発明の実施の形態１における端末装置の動作を示すフロー図である。
【図５】図５は、本発明の実施の形態１における通信システムでの鍵データの更新処理を説明するための図である。
【図６】図６は、本発明の実施の形態２における、通信システム、管理装置、及び端末装置の概略構成を示すブロック図である。
【図７】図７は、本発明の実施の形態２における端末装置の動作を示すフロー図である。
【図８】図８は、本発明の実施の形態２における管理装置の動作を示すフロー図である。
【図９】図９は、本発明の実施の形態２における通信システムでの鍵データの更新処理を説明するための図である。
【図１０】図１０は、本発明の実施の形態１及び２における管理装置または端末装置を実現するコンピュータの一例を示すブロック図である。
【発明を実施するための形態】
【００１９】
（実施の形態１）
以下、本発明の実施の形態１における、通信システム、管理装置、端末装置、通信方法、及びプログラムについて、図１〜図５を参照しながら説明する。
【００２０】
［システム構成］
最初に、本実施の形態１における通信システム、管理装置、及び端末装置の概略構成について、図１を用いて説明する。図１は、本発明の実施の形態１における、通信システム、管理装置、及び端末装置の概略構成を示すブロック図である。
【００２１】
図１に示すように、本実施の形態１における通信システム１０は、データを連続して送信する端末装置２０と、端末装置２０からのデータを受信する管理装置３０とを備えている。端末装置２０と、管理装置３０とは、ネットワーク等を介して、データ通信可能に接続されている。
【００２２】
管理装置３０は、メッセージ認証コードを生成するための２以上の鍵データ３１を有している。また、管理装置３０は、端末装置２０にデータを送信する場合に、送信対象となるデータに、２以上の鍵データ３１それぞれを用いて作成した２以上のメッセージ認証コード（ＭＡＣ：Message Authentication Code）を付加して、送信対象となるデータを端末装置２０に送信する。なお、図１の例では、管理装置３０が有する鍵データ３１は２つであり、管理装置は、ＭＡＣ１とＭＡＣ２とを作成し、これらをデータに付加している。
【００２３】
端末装置２０は、２以上の鍵データのいずれかと同一の鍵データを１つ有している。端末装置２０は、外部からデータを受信した場合に、受信したデータに付加されているＭＡＣを取得する。また、端末装置２０は、取得したＭＡＣのいずれかが、自身が有する鍵データと同一の鍵データで作成されている場合に、受信したデータは管理装置３０から送信されてきたデータであると判定する。
【００２４】
以上のように、本実施の形態１では、管理装置３０は、２つ以上の鍵データを有し、端末装置２０は、この２つ以上の鍵データのいずれかと同一の鍵データを１つ有している。このため、まず、管理装置３０で、端末装置２０が有する鍵データと別の鍵データを更新し、次に、端末装置２０の鍵データを更新された鍵データに更新し、その後、管理装置３０の残りの鍵データを更新すれば、通信データを途切れさせることなく、鍵データの更新が可能となる。従って、本実施の形態１によれば、端末装置２０から管理装置３０へと通信データが途切れることなく流れる環境において、通信データの停止を行なうことなく、端末装置２０の乗っ取りを抑制することができる。
【００２５】
続いて、図２を用いて、本実施の形態１における通信システム、管理装置、及び端末装置の構成について、より具体的に説明する。図２は、本発明の実施の形態１における、通信システム、管理装置、及び端末装置の具体的構成を示すブロック図である。
【００２６】
図２の例では、端末装置２０は、通信機能を備えた撮像装置、例えば、ネットワークカメラであり、撮影画像の画像データを連続して管理装置３０に送信する。図２に示すように、本実施の形態１では、端末装置２０は、データ通信部２２と、撮像部２３と、格納部２４と、コード取得部２５と、判定部２６とを備えている。
【００２７】
データ通信部２２は、データ送信部及びデータ受信部として機能し、管理装置３０との間でデータ通信を行なう。データ通信部２２は、データを管理装置３０に送信し、管理装置３０から送信されてきた、ＭＡＣが付加されたデータを受信する。
【００２８】
撮像部２３は、対象となる領域を撮影し、撮影画像の画像データを生成し、生成した画像データをデータ通信部２２に渡す。具体的には、撮像部２３は、光学レンズ群と、固体撮像素子と、固体撮像素子の制御回路等を含んでいる。
【００２９】
格納部２４は、管理装置３０が有する２以上の鍵データのいずれかと同一の鍵データ２１を１つ格納する。コード取得部２５は、管理装置３０からデータを受信した場合に、受信したデータに付加されているＭＡＣを取得する。判定部２６は、取得されたＭＡＣのいずれかが、格納部２４に格納されている鍵データ２１と同一の鍵データで作成されている場合に、受信したデータは管理装置３０から送信されてきたデータであると判定する。
【００３０】
また、図２に示すように、本実施の形態１では、管理装置３０は、データ通信部３２と、データ処理部３３と、格納部３４と、コード付加部３５とを備えている。
【００３１】
データ通信部３２は、データ送信部及びデータ受信部として機能し、端末装置２０との間でデータ通信を行なう。データ通信部３２は、ＭＡＣが付加されたデータを端末装置２０に送信し、端末装置２０から送信されてきた画像データを受信する。
【００３２】
データ処理部３３は、データ通信部３２によって端末装置２０からの画像データが受信されると、受信された画像データを取得し、取得した画像データに対して各種処理を行なう。具体的には、データ処理部３３は、各種画像処理、画像データの格納処理、ディスプレイ装置への出力処理等を行なう。
【００３３】
また、データ処理部３３は、端末装置２０に送信するためのデータを作成する。作成されたデータは、後述するようにコード付加部３５によってＭＡＣが付加された後に、データ通信部３２によって送信される。また、本実施の形態１において、端末装置２０への送信対象となるデータとしては、端末装置２０を制御するための制御データが挙げられる。
【００３４】
格納部３４は、ＭＡＣを生成するための２以上の鍵データを格納する。コード付加部３５は、端末装置２０にデータを送信する場合に、送信対象となるデータに、２以上の鍵データそれぞれを用いて、２以上のＭＡＣを生成する。また、コード付加部３５は、送信対象となるデータに、生成した各ＭＡＣを付加する。
【００３５】
［システム動作］
次に、本実施の形態１における通信システム１０の動作について図３及び図４を用いて説明する。以下の説明においては、適宜図１及び図２を参酌する。また、本実施の形態１では、通信システム１０を動作させることによって、通信方法が実施される。よって、本実施の形態１における通信方法の説明は、以下の通信システム１０の動作説明に代える。
【００３６】
最初に、図３を用いて、管理装置３０の動作について説明する。図３は、本発明の実施の形態１における管理装置の動作を示すフロー図である。図３は、管理装置３０が端末装置２０にデータを送信する場合について示している。なお、図３には示されていないが、端末装置２０から管理装置３０へは連続して画像データが送信されており、データ通信部３２による画像データの受信と、データ処理部３３によるデータ処理とは、常に行なわれている。
【００３７】
図３に示すように、まず、データ処理部３３が、端末装置２０に送信するためのデータを生成する（ステップＡ１）。また、データ処理部３３は、作成したデータを、コード付加部３５に渡す。
【００３８】
次に、コード付加部３５は、格納部３４から２以上の鍵データを取得し、取得した鍵データそれぞれ毎に、ＭＡＣを生成し、生成した各ＭＡＣを、データ処理部３３から受け取ったデータに付加する（ステップＡ２）。また、コード付加部３５は、ＭＡＣが付加されたデータをデータ通信部３２に渡す。
【００３９】
次に、データ通信部３２は、ステップＡ２でＭＡＣが付加されたデータを、端末装置２０に送信する（ステップＡ３）。このように、ステップＡ１〜Ａ３が実行されると、ＭＡＣが付加されたデータが、端末装置２０に送信される。
【００４０】
続いて、図４を用いて、端末装置２０の動作について説明する。図４は、本発明の実施の形態１における端末装置の動作を示すフロー図である。図４は、端末装置２０が、管理装置３０から、ＭＡＣが付加されたデータを受信した場合について示している。なお、図４には示されていないが、端末装置２０は、管理装置３０に対して連続して画像データを送信している。
【００４１】
図４に示すように、まず、データ通信部２２は、管理装置３０からのＭＡＣが付加されたデータを受信する（ステップＢ１）。また、データ通信部２２は、受信したデータを、コード取得部２５に渡す。
【００４２】
次に、コード取得部２５は、ステップＢ１で受信されたデータから、ＭＡＣを取得する（ステップＢ２）。また、コード取得部２５は、取得したＭＡＣを、判定部２６に渡す。
【００４３】
次に、判定部２６は、格納部２４から鍵データ２１を取得し、取得した鍵データ２１からＭＡＣを作成する（ステップＢ３）。次に、判定部２６は、ステップＢ３で作成したＭＡＣが、ステップＢ２で取得されたＭＡＣのいずれかに一致しているかどうかを判定する（ステップＢ４）。
【００４４】
ステップＢ４の判定の結果、ステップＢ３で作成したＭＡＣが、ステップＢ２で取得されたＭＡＣのいずれかに一致している場合は、判定部２６は、ステップＢ１で受信したデータは、管理装置３０から送信されてきたデータであると判定する（ステップＢ５）。この場合、端末装置２０は、送信されてきたデータに基づいて処理を実行する。
【００４５】
一方、ステップＢ４の判定の結果、ステップＢ３で作成したＭＡＣが、ステップＢ２で取得されたＭＡＣのいずれかに一致していない場合は、判定部２６は、ステップＢ１で受信したデータは、管理装置３０から送信されてきたデータではないと判定する（ステップＢ６）。この場合、端末装置２０は、送信されてきたデータを破棄する。
【００４６】
ここで、図５を用いて、本実施の形態１における鍵データ２１及び３１における更新処理について説明する。図５は、本発明の実施の形態１における通信システムでの鍵データの更新処理を説明するための図である。
【００４７】
図５の例では、管理装置３０は、鍵データＡ及び鍵データＢを有している。また、管理装置３０は、鍵データＡからＭＡＣ１を生成し、鍵データＢからＭＡＣ２を生成する。そして、管理装置３０は、ＭＡＣ１及びＭＡＣ２が付加したデータを端末装置２０に送信する。
【００４８】
端末装置２０は、当初、鍵データＢを有している。管理装置３０から送信されたデータには、鍵データＢから生成されたＭＡＣ２が付加されているので、端末装置２０は、このデータは管理装置３０から送信されてきたデータであると判定する。
【００４９】
このような状況において、管理装置３０では、鍵データＡのみが鍵データＣに更新されたとする。この場合、管理装置３０は、鍵データＣからＭＡＣ３を生成し、ＭＡＣ２及びＭＡＣ３が付加されたデータを端末装置２０に送信する。そして、この場合であっても、送信されてきたデータには、鍵データＢから生成されたＭＡＣ２が付加されているので、端末装置２０は、このデータは管理装置３０から送信されてきたデータであると判定する。
【００５０】
その後、端末装置２０において、鍵データＢが鍵データＣに更新されたとする。これにより、端末装置２０は、鍵データＣが生成されたＭＡＣ３が付加されているかどうかによって判定を行なうが、上述したように、管理装置３０からのデータには、先の更新でＭＡＣ３が付加されているので、端末装置２０は、このデータは管理装置３０から送信されてきたデータであると判定する。
【００５１】
このように、本実施の形態１では、管理装置３０は、２つ以上の鍵データを有し、端末装置２０は、この２つ以上の鍵データのいずれかと同一の鍵データを１つ有している。従って、両者において、通信データを途切れさせることなく、別々に鍵データを更新できる。また、両者間での鍵データの更新が同期していなくても、端末装置２０は、データが管理装置３０から送信されてきたものであるかどうかを判定することができる。
【００５２】
また、本実施の形態１において、鍵データの更新は、管理装置３０と端末装置２０とで同期させる必要がないため、更新処理は、外部の装置からの指示によって、装置毎に、任意のタイミングで行なわれても良いし、人手によって装置毎に行なわれていても良い。
【００５３】
［プログラム］
本実施の形態１における第１のプログラムは、コンピュータに、図３に示すステップＡ１〜Ａ３を実行させるプログラムであれば良い。このプログラムをコンピュータにインストールし、実行することによって、本実施の形態１における管理装置３０を実現することができる。この場合、コンピュータのＣＰＵ（Central Processing Unit）は、データ通信部３２、データ処理部３３、及びコード付加部３５として機能し、処理を行なう。
【００５４】
また、本実施の形態１における第１のプログラムは、複数のコンピュータによって構築されたコンピュータシステムによって実行されても良い。この場合は、例えば、各コンピュータが、それぞれ、データ通信部３２、データ処理部３３、及びコード付加部３５のいずれかとして機能しても良い。
【００５５】
本実施の形態１における第２のプログラムは、コンピュータに、図４に示すステップＢ１〜Ｂ６を実行させるプログラムであれば良い。このプログラムをコンピュータにインストールし、実行することによって、本実施の形態１における端末装置２０を実現することができる。この場合、コンピュータのＣＰＵ（Central Processing Unit）は、データ通信部２２、コード取得部２５、及び判定部２６として機能し、処理を行なう。
【００５６】
また、本実施の形態１における第２のプログラムは、複数のコンピュータによって構築されたコンピュータシステムによって実行されても良い。この場合は、例えば、各コンピュータが、それぞれ、データ通信部２２、コード取得部２５、及び判定部２６のいずれかとして機能しても良い。
【００５７】
（実施の形態２）
次に、本発明の実施の形態２における、通信システム、管理装置、端末装置、通信方法、及びプログラムについて、図６〜図９を参照しながら説明する。
【００５８】
［システム構成］
最初に、本実施の形態２における通信システム、管理装置、及び端末装置の概略構成について、図６を用いて説明する。図６は、本発明の実施の形態２における、通信システム、管理装置、及び端末装置の概略構成を示すブロック図である。
【００５９】
図６に示すように、本実施の形態２における通信システム１１も、図２に示した実施の形態１における通信システム１０と同様に、データを連続して送信する端末装置４０と、端末装置４０からのデータを受信する管理装置５０とを備えている。また、本実施の形態２でも、端末装置４０は、撮像装置である。
【００６０】
但し、本実施の形態２においては、管理装置５０だけでなく、端末装置４０も、送信するデータにＭＡＣを付加することができ、この点で、実施の形態２における通信システム１１は、実施の形態１における通信システム１０と異なっている。以下に、実施の形態１との相違点を中心に説明する。
【００６１】
図６に示すように、本実施の形態２においては、端末装置４０は、データ通信部２２、撮像部２３、格納部２４、コード取得部２５、及び判定部２６に加えて、コード付加部２７を備えている。
【００６２】
コード付加部２７は、管理装置５０に連続して送信するデータそれぞれに、格納部２４に格納されている鍵データ２１で生成したＭＡＣを付加する。具体的には、本実施の形態２では、コード付加部２７は、撮像部２３で生成された画像データに、鍵データ２１で作成したＭＡＣを付加する。また、データ通信部２２は、本実施の形態２においては、ＭＡＣが付加された画像データを、管理装置５０に送信する。
【００６３】
また、図６に示すように、本実施の形態２においては、管理装置５０は、データ通信部３２、データ処理部３３、格納部３４、及びコード付加部３５に加えて、コード取得部３６と、判定部３７とを備えている。
【００６４】
コード取得部３６は、端末装置から連続して送信されてきたデータを受信した場合に、受信したデータに付加されているＭＡＣを取得する。判定部３７は、取得されたＭＡＣが、格納部３４に格納されている２以上の鍵データ３１のいずれかと同一の鍵データで作成されている場合に、受信したデータは端末装置４０から送信されてきたデータであると判定する。
【００６５】
［システム動作］
次に、本実施の形態２における通信システム１１の動作について図７及び図８を用いて説明する。以下の説明においては、適宜図６を参酌する。また、本実施の形態２では、通信システム１１を動作させることによって、通信方法が実施される。よって、本実施の形態２における通信方法の説明は、以下の通信システム１１の動作説明に代える。
【００６６】
最初に、図７を用いて、端末装置４０の動作について説明する。図７は、本発明の実施の形態２における端末装置の動作を示すフロー図である。図７は、端末装置４０が管理装置５０にデータを連続して送信する場合について示している。なお、図７には示されていないが、本実施の形態２においても、端末装置４０は、図４に示したステップＢ１〜Ｂ５を実行する。
【００６７】
図７に示すように、端末装置４０においては、まず、撮像部２３が、対象となる領域を撮影し、撮影画像の画像データを生成し、生成した画像データを出力すると、コード付加部２７が、画像データを取得する（ステップＣ１）。
【００６８】
次に、コード付加部２７は、格納部２４から鍵データ２１を取得し、取得した鍵データ２１からＭＡＣを生成し、生成したＭＡＣを、受け取った画像データに付加する（ステップＣ２）。また、コード付加部２７は、ＭＡＣが付加された画像データをデータ通信部２２に渡す。
【００６９】
次に、データ通信部２２は、ステップＣ２でＭＡＣが付加されたデータを、管理装置５０に送信する（ステップＣ３）。このように、ステップＣ１〜Ｃ３が実行されると、ＭＡＣが付加された画像データが、管理装置５０に送信される。
【００７０】
続いて、図８を用いて、管理装置５０の動作について説明する。図８は、本発明の実施の形態２における管理装置の動作を示すフロー図である。図８は、管理装置５０が、端末装置４０から、ＭＡＣが付加されたデータを受信した場合について示している。なお、図８には示されていないが、本実施の形態２においても、管理装置５０は、図３に示したステップＡ１〜Ａ３を実行する。
【００７１】
図８に示すように、管理装置５０においては、まず、データ通信部３２は、端末装置４０からのＭＡＣが付加された画像データを受信する（ステップＤ１）。また、データ通信部３２は、受信した画像データを、コード取得部３６に渡す。
【００７２】
次に、コード取得部３６は、ステップＤ１で受信された画像データから、ＭＡＣを取得する（ステップＤ２）。また、コード取得部３６は、取得したＭＡＣを、判定部３７に渡す。
【００７３】
次に、判定部３７は、格納部３４から各鍵データ３１を取得し、取得した鍵データ３１毎に、それぞれからＭＡＣを作成する（ステップＢ３）。次に、判定部２６は、ステップＢ３で作成したＭＡＣのいずれかが、ステップＢ２で取得されたＭＡＣに一致しているかどうかを判定する（ステップＤ４）。
【００７４】
ステップＤ４の判定の結果、ステップＤ３で作成したＭＡＣのいずれかが、ステップＤ２で取得されたＭＡＣに一致している場合は、判定部３７は、ステップＤ１で受信した画像データは、端末装置４０から送信されてきたデータであると判定する（ステップＤ５）。この場合、管理装置５０は、送信されてきた画像データに対して処理を実行する。
【００７５】
一方、ステップＤ４の判定の結果、ステップＤ３で作成したＭＡＣのいずれもが、ステップＤ２で取得されたＭＡＣに一致していない場合は、判定部３７は、ステップＤ１で受信した画像データは、端末装置４０から送信されてきたデータではないと判定する（ステップＤ６）。この場合、管理装置５０は、送信されてきた画像データを破棄する。
【００７６】
ここで、図９を用いて、本実施の形態２における鍵データ２１及び３１における更新処理について説明する。図９は、本発明の実施の形態２における通信システムでの鍵データの更新処理を説明するための図である。
【００７７】
図９の例では、端末装置４０は、鍵データＢを有している。管理装置５０は、鍵データＡ及び鍵データＢを有している。端末装置４０は、鍵データＢからＭＡＣ２を生成し、ＭＡＣ２を付加したデータ（画像データ）を管理装置５０に送信する。
【００７８】
この場合、管理装置５０は、鍵データＢを有しており、端末装置４０から送信されたデータには、鍵データＢから生成されたＭＡＣ２が付加されているので、このデータは端末装置４０から送信されてきたデータであると判定する。
【００７９】
また、管理装置５０は、鍵データＡ及び鍵データＢを有しているので、鍵データＡからＭＡＣ１を生成し、鍵データＢからＭＡＣ２を生成する。そして、管理装置３０は、ＭＡＣ１及びＭＡＣ２が付加したデータを端末装置２０に送信する。
【００８０】
この場合、端末装置４０は、鍵データＢを有しているので、ＭＡＣ２を生成する。従って、端末装置４０は、管理装置３０から送信されたてきた、ＭＡＣ１及びＭＡＣ２が付加されてきたデータは、管理装置３０から送信されてきたデータであると判定する。
【００８１】
また、管理装置５０において、鍵データＡのみが鍵データＣに更新されたとする。この場合、管理装置５０は、鍵データＣからＭＡＣ３を生成し、ＭＡＣ２及びＭＡＣ３が付加されたデータを端末装置４０に送信する。そして、この場合であっても、送信されてきたデータには、鍵データＢから生成されたＭＡＣ２が付加されているので、端末装置４０は、このデータは管理装置５０から送信されてきたデータであると判定する。
【００８２】
その後、端末装置４０において、鍵データＢが鍵データＣに更新されたとする。この場合、端末装置４０は、鍵データＣからＭＡＣ３を生成し、ＭＡＣ３が付加されたデータを管理装置５０に送信する。そして、管理装置５０は、鍵データＣを有しており、ＭＡＣ３を生成できるので、端末装置４０における更新後のデータも、端末装置４０から送信されてきたデータであると判定する。
【００８３】
また、端末装置４０において、鍵データＢが鍵データＣに更新された後に、管理装置５０がＭＡＣ２及びＭＡＣ３が付加されたデータを端末装置４０に送信したとする。この場合、端末装置４０は、鍵データＣが生成されたＭＡＣ３が付加されているかどうかによって判定を行なう。管理装置５０からのデータには、先の更新でＭＡＣ３が付加されているので、端末装置４０は、このデータは管理装置５０から送信されてきたデータであると判定する。
【００８４】
このように、本実施の形態２では、端末装置４０から送信されてくるデータにもＭＡＣが付加されるので、管理装置５０は、連続して送信されてくるデータの改竄を検知することが可能となる。
【００８５】
また、管理装置５０は、２つ以上の鍵データを有し、端末装置４０は、この２つ以上の鍵データのいずれかと同一の鍵データを１つ有している。従って、本実施の形態２においても、両者において、通信データを途切れさせることなく、別々に鍵データを更新できる。また、本実施の形態２においても、両者間での鍵データの更新が同期していなくても、端末装置４０及び管理装置５０は互いに、データが正当なものであるかどうかを判定することができる。
【００８６】
また、本実施の形態２でも、鍵データの更新は、管理装置５０と端末装置４０とで同期させる必要がないため、更新処理は、外部の装置からの指示によって、装置毎に、任意のタイミングで行なわれても良いし、人手によって装置毎に行なわれていても良い。
【００８７】
［プログラム］
本実施の形態２における第１のプログラムは、コンピュータに、図８に示すステップＤ１〜Ｄ６を実行させるプログラムであれば良い。このプログラムをコンピュータにインストールし、実行することによって、本実施の形態２における管理装置５０を実現することができる。この場合、コンピュータのＣＰＵ（Central Processing Unit）は、データ通信部３２、コード取得部３６、及び判定部３７として機能し、処理を行なう。
【００８８】
また、本実施の形態２における第１のプログラムは、複数のコンピュータによって構築されたコンピュータシステムによって実行されても良い。この場合は、例えば、各コンピュータが、それぞれ、データ通信部３２、コード取得部３６、及び判定部３７のいずれかとして機能しても良い。
【００８９】
本実施の形態２における第２のプログラムは、コンピュータに、図７に示すステップＣ１〜Ｃ３を実行させるプログラムであれば良い。このプログラムをコンピュータにインストールし、実行することによって、本実施の形態２における端末装置４０を実現することができる。この場合、コンピュータのＣＰＵ（Central Processing Unit）は、データ通信部２２及びコード付加部２７として機能し、処理を行なう。
【００９０】
また、本実施の形態２における第２のプログラムは、複数のコンピュータによって構築されたコンピュータシステムによって実行されても良い。この場合は、例えば、各コンピュータが、それぞれ、データ通信部２２及びコード付加部２７のいずれかとして機能しても良い。
【００９１】
（物理構成）
ここで、実施の形態１及び２におけるプログラムを実行することによって、端末装置及び管理装置を実現するコンピュータの一例について図１０を用いて説明する。図１０は、本発明の実施の形態１及び２における管理装置または端末装置を実現するコンピュータの一例を示すブロック図である。
【００９２】
図１０に示すように、コンピュータ１１０は、ＣＰＵ１１１と、メインメモリ１１２と、記憶装置１１３と、入力インターフェイス１１４と、表示コントローラ１１５と、データリーダ／ライタ１１６と、通信インターフェイス１１７とを備える。これらの各部は、バス１２１を介して、互いにデータ通信可能に接続される。
【００９３】
ＣＰＵ１１１は、記憶装置１１３に格納された、本実施の形態におけるプログラム（コード）をメインメモリ１１２に展開し、これらを所定順序で実行することにより、各種の演算を実施する。メインメモリ１１２は、典型的には、ＤＲＡＭ（Dynamic Random Access Memory）等の揮発性の記憶装置である。また、本実施の形態におけるプログラムは、コンピュータ読み取り可能な記録媒体１２０に格納された状態で提供される。なお、本実施の形態におけるプログラムは、通信インターフェイス１１７を介して接続されたインターネット上で流通するものであっても良い。
【００９４】
また、記憶装置１１３の具体例としては、ハードディスクドライブの他、フラッシュメモリ等の半導体記憶装置が挙げられる。入力インターフェイス１１４は、ＣＰＵ１１１と、キーボード及びマウスといった入力機器１１８との間のデータ伝送を仲介する。表示コントローラ１１５は、ディスプレイ装置１１９と接続され、ディスプレイ装置１１９での表示を制御する。
【００９５】
データリーダ／ライタ１１６は、ＣＰＵ１１１と記録媒体１２０との間のデータ伝送を仲介し、記録媒体１２０からのプログラムの読み出し、及びコンピュータ１１０における処理結果の記録媒体１２０への書き込みを実行する。通信インターフェイス１１７は、ＣＰＵ１１１と、他のコンピュータとの間のデータ伝送を仲介する。
【００９６】
また、記録媒体１２０の具体例としては、ＣＦ（Compact Flash（登録商標））及びＳＤ（Secure Digital）等の汎用的な半導体記憶デバイス、フレキシブルディスク（Flexible Disk）等の磁気記録媒体、又はＣＤ−ＲＯＭ（Compact Disk Read Only Memory）などの光学記録媒体が挙げられる。
【００９７】
なお、本実施の形態１及び２における端末装置及び管理装置は、それぞれ、プログラムがインストールされたコンピュータではなく、各部に対応したハードウェアを用いることによっても実現可能である。更に、端末装置及び管理装置は、それぞれ、一部がプログラムで実現され、残りの部分がハードウェアで実現されていてもよい。
【産業上の利用可能性】
【００９８】
以上のように、本発明によれば、端末装置から管理装置へと通信データが途切れることなく流れる環境において、通信データの停止を行なうことなく、端末装置の乗っ取りを抑制することができる。本発明は、例えば、監視カメラシステム等に有用である。
【符号の説明】
【００９９】
１０  通信システム（実施の形態１）
１１  通信システム（実施の形態２）
２０  端末装置（実施の形態１）
２１  鍵データ
２２  データ通信部
２３  撮像部
２４  格納部
２５  コード取得部
２６  判定部
２７  コード付加部
３０  管理装置（実施の形態１）
３１  鍵データ
３２  データ通信部
３３  データ処理部
３４  格納部
３５  コード付加部
３６  コード取得部
３７  判定部
４０  端末装置（実施の形態２）
５０  管理装置（実施の形態２）
１１０  コンピュータ
１１１  ＣＰＵ
１１２  メインメモリ
１１３  記憶装置
１１４  入力インターフェイス
１１５  表示コントローラ
１１６  データリーダ／ライタ
１１７  通信インターフェイス
１１８  入力機器
１１９  ディスプレイ装置
１２０  記録媒体
１２１  バス
【図１】
2019016987.tif 000003
【図２】
2019016987.tif 000004
【図３】
2019016987.tif 000005
【図４】
2019016987.tif 000006
【図５】
2019016987.tif 000007
【図６】
2019016987.tif 000008
【図７】
2019016987.tif 000009
【図８】
2019016987.tif 000010
【図９】
2019016987.tif 000011
【図１０】
2019016987.tif 000012