(57)【要約】【課題】  暗号鍵を用いてセキュリティ機能を具備する通信装置に関して、特に使用する暗号鍵を更新するとともに世代管理することにより通信セキュリティ及びデータの到達性を向上させる通信装置を提供する。【解決手段】  通信装置１００は、暗号鍵生成手段３が前記暗号鍵情報を一定の暗号鍵生成時間ごとに生成し、共通鍵生成手段４が共通鍵情報を前記暗号鍵生成時間より長く設定された共通鍵生成時間ごとに生成時の時刻に対して一意に生成し、共通鍵適用手段５が前記共通鍵情報を用いて前記暗号鍵情報の暗号化又は復号化を実施し、暗号鍵配布手段６が前記暗号鍵情報を、通信対象の複数の通信ノードに前記暗号鍵生成時間より短く設定された暗号鍵配布時間ごとに一斉配布するように前記データ送受信手段１に依頼し、より高いセキュリティで通信を行う。【選択図】    図１
2010098597.tif 000002
【特許請求の範囲】
【請求項１】
他の通信ノードとのデータの送受信を行うデータ送受信手段と、平文データを編集する平文データ処理手段とを備え、他の通信ノードに暗号鍵情報を定期的に配布し、他の通信ノードから当該暗号鍵情報を用いて暗号化された暗号化データを受信した場合には当該暗号鍵情報を用いて当該暗号化データを平文データに復号化し、他の通信ノードへの送信を行う場合には他の通信ノードから配布された相手先鍵情報を用いて平文データを暗号化データに暗号化し、通信ノード間で双方向通信を行う通信装置において、
前記暗号鍵情報を一定の暗号鍵生成時間ごとに生成する暗号鍵生成手段と、
前記暗号鍵生成手段により生成された暗号鍵情報に暗号化又は復号化を実施するための共通鍵情報を、前記暗号鍵生成時間より長く設定された共通鍵生成時間ごとに前記通信ノード間で共通する共通鍵情報として生成時の時刻に対して一意に生成する共通鍵生成手段と、
前記共通鍵生成手段により生成された共通鍵情報を用いて、前記暗号鍵生成手段にて生成された前記暗号鍵情報の暗号化又は他の通信ノードから受付けた前記暗号鍵情報の復号化を実施する共通鍵適用手段と、
前記共通鍵適用手段により暗号化された前記暗号鍵情報を、通信対象の複数の通信ノードに前記暗号鍵生成時間より短く設定された暗号鍵配布時間ごとに一斉配布するように前記データ送受信手段に依頼する暗号鍵配布手段とを備える
通信装置。
【請求項２】
請求項１に記載の通信装置において、
前記暗号鍵生成手段により生成された暗号鍵情報を最新暗号鍵情報として保持し、当該最新暗号鍵情報の少なくとも一世代前の暗号鍵情報を旧暗号鍵情報として保持する暗号鍵管理手段と、
前記データ送受信手段にて受信された前記暗号化データを、前記最新暗号鍵情報を用いて前記平文データに復号化し、当該平文データの処理を前記平文データ処理手段に依頼する復号化手段と、
前記暗号鍵配布手段による前記最新暗号鍵情報の配布からの一定時間内に、前記データ送受信手段で受信された前記暗号化データが、前記復号化手段により当該最新暗号鍵情報を用いて正常に復号化されたかを判断する正常復号判断手段と、
前記正常復号判断手段により前記暗号化データが正常に復号化されなかったと判断された場合に、前記復号化手段に前記旧暗号鍵情報を使用して当該暗号化データを再度復号化するように指示する旧鍵使用指示手段とを備える
通信装置。
【請求項３】
請求項２に記載の通信装置において、
前記共通鍵生成手段により生成された共通鍵情報を最新共通鍵情報として保持し、当該最新共通鍵情報の少なくとも一世代前の共通鍵情報を旧共通鍵情報として保持する共通鍵管理手段と、
前記暗号鍵配布手段による前記最新暗号鍵情報の配布からの一定時間内に、前記データ送受信手段にて受信された前記暗号鍵情報が、前記共通鍵適用手段により前記最新共通鍵情報を用いて正常に復号化されたかを、さらに判断する正常復号判断手段と、
前記正常復号判断手段により前記暗号鍵情報が正常に復号化されなかったと判断された場合に、前記共通鍵適用手段に前記旧共通鍵情報を使用して当該暗号鍵情報を再度復号化するように、さらに指示する旧鍵使用指示手段とを備える
通信装置。
【請求項４】
請求項２又は請求項３に記載の通信装置において、
前記データ送受信手段にて受信された前記暗号化データにハッシュ値が含まれるものとし、
前記正常復号判断手段が、前記復号化手段により復号化された平文データに対してハッシュ計算を行い、当該ハッシュ計算の結果と前記ハッシュ値とを比較して一致するかを判断することにより、当該平文データが当該復号化手段により前記最新暗号鍵情報を用いて正常に復号化されたかを判断する
通信装置。
【請求項５】
請求項３に記載の通信装置において、
前記データ送受信手段にて受信された前記暗号鍵情報にハッシュ値が含まれるものとし、
前記正常復号判断手段が、前記共通鍵適用手段により復号化された暗号鍵情報に対してハッシュ計算を行い、当該ハッシュ計算の結果と前記ハッシュ値とを比較して一致するかを判断することにより、当該暗号鍵情報が当該共通鍵適用手段により前記最新共通鍵情報を用いて正常に復号化されたかを判断する
通信装置。
【請求項６】
他の通信ノードとのデータの送受信を行うデータ送受信工程と、平文データを編集する平文データ処理工程とを備え、他の通信ノードに暗号鍵情報を定期的に配布し、他の通信ノードから当該暗号鍵情報を用いて暗号化された暗号化データを受信した場合には当該暗号鍵情報を用いて当該暗号化データを平文データに復号化し、他の通信ノードへの送信を行う場合には他の通信ノードから配布された相手先鍵情報を用いて平文データを暗号化データに暗号化し、通信ノード間で双方向通信を行う通信方法において、
前記暗号鍵情報を一定の暗号鍵生成時間ごとに生成する暗号鍵生成工程と、
前記暗号鍵生成工程により生成された暗号鍵情報に暗号化又は復号化を実施するための共通鍵情報を、前記暗号鍵生成時間より長く設定された共通鍵生成時間ごとに前記通信ノード間で共通する共通鍵情報として生成時の時刻に対して一意に生成する共通鍵生成工程と、
前記共通鍵生成工程により生成された共通鍵情報を用いて、前記暗号鍵生成工程にて生成された前記暗号鍵情報の暗号化又は他の通信ノードから受付けた前記暗号鍵情報の復号化を実施する共通鍵適用工程と、
前記共通鍵適用工程により暗号化された前記暗号鍵情報を、通信対象の複数の通信ノードに前記暗号鍵生成時間より短く設定された暗号鍵配布時間ごとに一斉配布するように前記データ送受信工程に依頼する暗号鍵配布工程とを備える
通信方法。
【請求項７】
他の通信ノードとのデータの送受信を行うデータ送受信手段、平文データを編集する平文データ処理手段を備え、他の通信ノードに暗号鍵情報を定期的に配布し、他の通信ノードから当該暗号鍵情報を用いて暗号化された暗号化データを受信した場合には当該暗号鍵情報を用いて当該暗号化データを平文データに復号化し、他の通信ノードへの送信を行う場合には他の通信ノードから配布された相手先鍵情報を用いて平文データを暗号化データに暗号化し、通信ノード間で双方向通信を行うようにコンピュータを機能させる通信プログラムにおいて、
前記暗号鍵情報を一定の暗号鍵生成時間ごとに生成する暗号鍵生成手段、
前記暗号鍵生成手段により生成された暗号鍵情報に暗号化又は復号化を実施するための共通鍵情報を、前記暗号鍵生成時間より長く設定された共通鍵生成時間ごとに前記通信ノード間で共通する共通鍵情報として生成時の時刻に対して一意に生成する共通鍵生成手段、
前記共通鍵生成手段により生成された共通鍵情報を用いて、前記暗号鍵生成手段にて生成された前記暗号鍵情報の暗号化又は他の通信ノードから受付けた前記暗号鍵情報の復号化を実施する共通鍵適用手段、
前記共通鍵適用手段により暗号化された前記暗号鍵情報を、通信対象の複数の通信ノードに前記暗号鍵生成時間より短く設定された暗号鍵配布時間ごとに一斉配布するように前記データ送受信手段に依頼する暗号鍵配布手段としてコンピュータを機能させる
通信プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、暗号鍵を用いてセキュリティ機能を具備する通信装置に関して、特に使用する暗号鍵を更新するとともに世代管理することにより通信セキュリティ及びデータの到達性を向上させる通信装置に関する。
【背景技術】
【０００２】
通信装置は、一般的に、通信セキュリティを確保するために暗号化通信を行い、当該暗号化通信に用いる暗号鍵を定期的に更新し、当該暗号鍵を定期的に他の通信ノードに通知している。しかし、当該通信装置は、定期的に通知している暗号鍵が何らかの原因により正常に通信先に通知できない場合や通信ノード間の暗号鍵の更新タイミングに時間的なずれを生じた場合には、更新前の古い暗号鍵で暗号化された暗号化データを通信先から受信する可能性がある。この場合には、当該通信装置は、暗号化データを送受信する通信装置ノード間における暗号鍵の不一致により、一時的に通信が不通となるというという問題がある。
【０００３】
この問題を解決するために、従来の通信装置は、新たに配布された暗号鍵を新鍵として保持する新鍵メモリと、前回配布された暗号鍵を旧鍵として保持する旧鍵メモリと、当該新鍵による暗号通信の不成功により当該旧鍵メモリに保持された旧鍵による暗号通信に切替える手段とを備えたものがある（例えば、特許文献１参照）。
【特許文献１】特開２００７−２６７３０１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかし、従来の通信装置は、各通信ノードで共通に所有された共通鍵にて暗号鍵を暗号化して他の通信ノードに配布するが、当該共通鍵が固定化されているために、当該共通鍵が解読された場合には、暗号鍵が更新されたとしても更新の都度に暗号鍵が解読されてしまうこととなり、セキュリティ上、重大な欠陥を生じるという課題を有する。
【０００５】
本発明は前記課題を解消するためになされたもので、各々異なる時間間隔で共通鍵及び暗号鍵を定期的に更新し、共通鍵及び暗号鍵の世代管理を行うことにより、通信時のセキュリティを向上し、データの到達性を向上させる通信装置の提供を目的とする。
【課題を解決するための手段】
【０００６】
本願に開示する通信装置は、他の通信ノードとのデータの送受信を行うデータ送受信手段と、平文データを編集する平文データ処理手段とを備え、他の通信ノードに暗号鍵情報を定期的に配布し、他の通信ノードから当該暗号鍵情報を用いて暗号化された暗号化データを受信した場合には当該暗号鍵情報を用いて当該暗号化データを平文データに復号化し、他の通信ノードへの送信を行う場合には他の通信ノードから配布された相手先鍵情報を用いて平文データを暗号化データに暗号化し、通信ノード間で双方向通信を行う通信装置において、前記暗号鍵情報を一定の暗号鍵生成時間ごとに生成する暗号鍵生成手段と、前記暗号鍵生成手段により生成された暗号鍵情報に暗号化又は復号化を実施するための共通鍵情報を、前記暗号鍵生成時間より長く設定された共通鍵生成時間ごとに前記通信ノード間で共通する共通鍵情報として生成時の時刻に対して一意に生成する共通鍵生成手段と、前記共通鍵生成手段により生成された共通鍵情報を用いて、前記暗号鍵生成手段にて生成された前記暗号鍵情報の暗号化又は他の通信ノードから受付けた前記暗号鍵情報の復号化を実施する共通鍵適用手段と、前記共通鍵適用手段により暗号化された前記暗号鍵情報を、通信対象の複数の通信ノードに前記暗号鍵生成時間より短く設定された暗号鍵配布時間ごとに一斉配布するように前記データ送受信手段に依頼する暗号鍵配布手段とを備えるものである。
【０００７】
このように、本願に開示する通信装置は、暗号鍵生成手段が前記暗号鍵情報を一定の暗号鍵生成時間ごとに生成し、共通鍵生成手段が共通鍵情報を前記暗号鍵生成時間より長く設定された共通鍵生成時間ごとに生成時の時刻に対して一意に生成し、共通鍵適用手段が前記共通鍵情報を用いて前記暗号鍵情報の暗号化又は復号化を実施し、暗号鍵配布手段が前記暗号鍵情報を、通信対象の複数の通信ノードに前記暗号鍵生成時間より短く設定された暗号鍵配布時間ごとに一斉配布するように前記データ送受信手段に依頼することから、前記暗号鍵情報のみならず前記共通鍵情報をも定期的に更新することとなり、より高いセキュリティで通信を行うことができる。
【０００８】
また、本願に開示する通信装置は必要に応じて、前記暗号鍵生成手段により生成された暗号鍵情報を最新暗号鍵情報として保持し、当該最新暗号鍵情報の少なくとも一世代前の暗号鍵情報を旧暗号鍵情報として保持する暗号鍵管理手段と、前記データ送受信手段で受信された前記暗号化データを、前記最新暗号鍵情報を用いて前記平文データに復号化し、当該平文データの処理を前記平文データ処理手段に依頼する復号化手段と、前記暗号鍵配布手段による前記最新暗号鍵情報の配布からの一定時間内に、前記データ送受信手段で受信された前記暗号化データが、前記復号化手段により当該最新暗号鍵情報を用いて正常に復号化されたかを判断する正常復号判断手段と、前記正常復号判断手段により前記暗号化データが正常に復号化されなかったと判断された場合に、前記復号化手段に前記旧暗号鍵情報を使用して当該暗号化データを再度復号化するように指示する旧鍵使用指示手段とを備えるものである。
【０００９】
このように、本願に開示する通信装置は、暗号鍵管理手段が前記暗号鍵生成手段により生成された暗号鍵情報を最新暗号鍵情報として保持し、当該最新暗号鍵情報の少なくとも一世代前の暗号鍵情報を旧暗号鍵情報として保持し、復号化手段が受信した前記暗号化データを、前記最新暗号鍵情報を用いて前記平文データに復号化し、当該平文データの処理を前記平文データ処理手段に依頼し、正常復号判断手段が前記暗号鍵配布手段による前記最新暗号鍵情報の配布からの一定時間内に、受信した前記暗号化データが最新暗号鍵情報を用いて正常に復号化されたかを判断し、前記暗号化データが正常に復号化されなかった場合に、旧鍵使用指示手段が前記復号化手段に前記旧暗号鍵情報を使用して当該暗号化データを再度復号化するように指示することから、暗号鍵情報の更新タイミングにより更新前の古い暗号鍵情報で暗号化された暗号化データを他の通信ノードから受信した場合にも、当該暗号化データを破棄せずに古い暗号鍵情報で復号化できることとなり、暗号鍵情報の不一致による通信不通を回避してデータの到達性を向上させることができる。
【００１０】
また、本願に開示する通信装置は必要に応じて、前記共通鍵生成手段により生成された共通鍵情報を最新共通鍵情報として保持し、当該最新共通鍵情報の少なくとも一世代前の共通鍵情報を旧共通鍵情報として保持する共通鍵管理手段と、前記暗号鍵配布手段による前記最新暗号鍵情報の配布からの一定時間内に、前記データ送受信手段にて受信された前記暗号鍵情報が、前記共通鍵適用手段により前記最新共通鍵情報を用いて正常に復号化されたかを、さらに判断する正常復号判断手段と、前記正常復号判断手段により前記暗号鍵情報が正常に復号化されなかったと判断された場合に、前記共通鍵適用手段に前記旧共通鍵情報を使用して当該暗号鍵情報を再度復号化するように、さらに指示する旧鍵使用指示手段とを備えるものである。
【００１１】
このように、本願に開示する通信装置は、共通鍵管理手段が前記共通鍵情報を最新共通鍵情報として保持し、当該最新共通鍵情報の少なくとも一世代前の共通鍵情報を旧共通鍵情報として保持し、前記正常復号判断手段が前記最新暗号鍵情報の配布からの一定時間内に、前記データ送受信手段にて受信された前記暗号鍵情報が前記最新共通鍵情報を用いて正常に復号化されたかをさらに判断し、前記暗号鍵情報が正常に復号化されなかった場合に、前記旧鍵使用指示手段が前記共通鍵適用手段に前記旧共通鍵情報を使用して当該暗号鍵情報を再度復号化するようにさらに指示することから、共通鍵情報の更新タイミングにより更新前の古い共通鍵情報で暗号化された暗号鍵情報を他の通信ノードから受信した場合にも、当該暗号鍵情報を破棄せずに古い共通鍵情報で復号化できることとなり、暗号鍵情報の不一致による通信不通を回避して、データの到達性を一層向上させることができる。
【００１２】
また、本願に開示する通信装置は必要に応じて、前記データ送受信手段により受付けられた前記暗号化データにハッシュ値が含まれるものとし、前記正常復号判断手段が、前記復号化手段により復号化された平文データに対してハッシュ計算を行い、当該ハッシュ計算の結果と前記ハッシュ値とを比較して一致するかを判断することにより、当該平文データが当該復号化手段により前記最新暗号鍵情報を用いて正常に復号化されたかを判断するものである。このように、本願に開示する通信装置は、前記正常復号判断手段がハッシュ計算を用いて平文データが前記最新暗号鍵情報を用いて正常に復号化されたかを判断することから、正確かつ高速に前記最新暗号鍵情報を用いた復号化の結果検証ができることとなり、当該結果検証に要する処理負荷を抑えることができる。
【００１３】
また、本願に開示する通信装置は必要に応じて、前記データ送受信手段により受付けられた前記暗号鍵情報にハッシュ値が含まれるものとし、前記正常復号判断手段が、前記共通鍵適用手段により復号化された暗号鍵情報に対してハッシュ計算を行い、当該ハッシュ計算の結果と前記ハッシュ値とを比較して一致するかを判断することにより、当該暗号鍵情報が当該共通鍵適用手段により前記最新共通鍵情報を用いて正常に復号化されたかを判断するものである。このように、本願に開示する通信装置は、前記正常復号判断手段がハッシュ計算を用いて平文データが前記最新共通鍵情報を用いて正常に復号化されたかを判断することから、正確かつ高速に前記最新共通鍵情報を用いた復号化の結果検証ができることとなり、当該結果検証に要する処理負荷を抑えることができる。
【発明を実施するための最良の形態】
【００１４】
（本発明の第１の実施形態）
以下、本発明の第１の実施形態に係る通信装置を、図１から図１０に基づいて説明する。図１は本発明の第１の実施形態に係る通信装置の構成を示すブロック図、図２はこの図１に記載された通信装置のデータレイアウト例及びデータ遷移例、図３はこの図１に記載された通信装置のネットワーク構成図、図４はこの図１に記載された通信装置の暗号鍵情報及び共通鍵情報の生成のフローチャート、図５はこの図１に記載された通信装置の現在鍵配布のフローチャート、図６はこの図１に記載された通信装置の現在鍵の配布フロー図、図７はこの図１に記載された通信装置の送信データ受信のフローチャート、図８はこの図１に記載された通信装置の送信データ復号化の説明図、図９はこの図１に記載された通信装置の現在鍵の更新にタイムラグが発生した場合の処理フロー図、図１０はこの図１に記載された通信装置の共通鍵の更新にタイムラグが発生した場合の処理フロー図を示す。
【００１５】
図１において、本実施形態に係る通信装置としての通信ユニット１００は、通信装置１００と同様の機能を備える複数の他の通信ユニット１００ｘとのデータの送受信を行うデータ送受信手段１と、平文データを編集する平文データ処理手段２と、暗号鍵情報を一定の暗号鍵生成時間ごとに生成する暗号鍵生成手段３と、この暗号鍵生成手段３により生成された暗号鍵情報を最新暗号鍵情報として暗号鍵情報３１ａに保持し、この最新暗号鍵情報の一世代前の暗号鍵情報を旧暗号鍵情報としてこの暗号鍵情報３１ａに保持する暗号鍵管理手段３１と、この暗号鍵生成手段３により生成された暗号鍵情報に暗号化又は復号化を実施するための共通鍵情報を、この暗号鍵生成時間より長く設定された共通鍵生成時間ごとに通信ノード間で共通する共通鍵情報として生成時の時刻に対して一意に生成する共通鍵生成手段４と、この共通鍵生成手段４により生成された共通鍵情報を最新共通鍵情報として共通鍵情報４１ａに保持し、この最新共通鍵情報の一世代前の共通鍵情報を旧共通鍵情報としてこの共通鍵情報４１ａに保持する共通鍵管理手段４１と、この共通鍵生成手段４により生成された共通鍵情報を用いて、この暗号鍵生成手段３にて生成された暗号鍵情報の暗号化又は他の通信ユニット１００ｘから受付けた暗号鍵情報の復号化を実施する共通鍵適用手段５と、この共通鍵適用手段５により暗号化された暗号鍵情報を、通信対象の複数の通信ユニット１００ｘにこの暗号鍵生成時間より短く設定された暗号鍵配布時間ごとに一斉配布するようにこのデータ送受信手段１に依頼する暗号鍵配布手段６と、前記データ送受信手段にて受信された前記暗号化データを、この最新暗号鍵情報を用いて前記平文データに復号化し、この平文データの処理をこの平文データ処理手段２に依頼する復号化手段７と、この暗号鍵配布手段６によるこの最新暗号鍵情報の配布からの一定時間内に、前記データ送受信手段で受信された前記暗号化データが、この復号化手段７によりこの最新暗号鍵情報を用いて正常に復号化されたかを判断する正常復号判断手段８と、この正常復号判断手段８により前記暗号化データが正常に復号化されなかったと判断された場合に、この復号化手段７に前記旧暗号鍵情報を使用してこの暗号化データを再度復号化するように指示する旧鍵使用指示手段９と、他の通信ユニット１００ｘの暗号化鍵情報を相手先鍵情報１０ａに登録して管理する相手先鍵管理手段１０と、この他の通信ユニット１００ｘから受信された暗号化データにする平文データを暗号化する暗号化手段１１と、この相手先鍵情報１０ａに未登録の他の通信ユニット１００ｘとの一斉同報の送受信時に固定鍵情報を用いて送受信するデータを暗号化又は復号化する固定鍵適用手段１２とを備える。
【００１６】
また、この正常復号判断手段８は、さらに、この暗号鍵配布手段６による最新暗号鍵情報の配布からの一定時間内に、このデータ送受信手段１にて受信されたこの暗号鍵情報が、この共通鍵適用手段５によりこの最新共通鍵情報を用いて正常に復号化されたかを判断する。
【００１７】
また、この旧鍵使用指示手段９は、さらに、この正常復号判断手段８によりこの暗号鍵情報が正常に復号化されなかったと判断された場合に、この共通鍵適用手段５にこの旧共通鍵情報を使用してこの暗号鍵情報を再度復号化するように指示する。
【００１８】
また、この暗号鍵情報３１ａは、図２（ａ）に示すように、旧鍵項目と、現在鍵項目と、次回更新鍵項目とを備えることができる。この旧鍵項目は、更新前の一世代前に使用された前記暗号鍵情報である旧鍵を示す。また、この現在鍵項目は、現在使用中の前記暗号鍵情報である現在鍵を示す。また、この次回更新鍵項目は、次回更新される前記暗号鍵情報である次回更新鍵を示す。
【００１９】
また、この共通鍵情報４１ａは、同図（ｂ）に示すように、旧共通鍵項目と、現在共通鍵項目と、次回更新共通鍵項目とを備えることができる。この旧共通鍵項目は、更新前の一世代前に使用された前記共通鍵情報である旧共通鍵を示す。また、この現在共通鍵項目は、現在使用中の前記共通鍵情報である現在共通鍵を示す。また、この次回更新共通鍵項目は、次回更新される前記共通鍵情報である次回更新共通鍵を示す。
【００２０】
また、この相手先鍵情報１０ａは、同図（ｃ）に示すように、相手先番号項目と、相手先鍵項目とを備えることができる。この相手先番号項目は、データ通信の相手先である他の通信ユニット１００ｘを特定する識別番号を示す。また、この相手先鍵項目は、この他の通信ユニット１００ｘから配布された前記暗号鍵情報を示す。
【００２１】
本実施形態のネットワーク構成は、図３に示すように、無線通信を行う前記通信ユニット１００、１００ｘ、１００ｙと、この通信ユニット１００、１００ｘ、１００ｙを統括して管理するサーバー２００と、このサーバー２００と有線接続され、この通信ユニット１００、１００ｘ、１００ｙと無線通信を行い、この通信ユニット１００、１００ｘ、１００ｙとこのサーバー２００との相互通信を中継するゲートウェイ３００とを備える。
【００２２】
この通信ユニット１００ｘは、この通信ユニット１００の定常的な通信対象で複数存在し、双方の暗号鍵情報を定期的に配布し合い、相互間通信、いわゆるＡｄ Ｈｏｃ；アドホックな通信を実現する。また、この通信ユニット１００ｙは、この通信ユニット１００の定常的な通信の対象外で複数存在し、この通信ユニット１００との相互間で暗号鍵情報の配布は行われないが、他の通信ユニット、例えばこの通信ユニット１００ｙ間でアドホックな通信を行う。このように、前記通信ユニット１００、１００ｘ、１００ｙは、無線通信の相互接続で実現されるマルチホップ通信により無線アドホックネットワークを自律的に構築する。
【００２３】
以下、前記構成に基づく本実施形態の通信装置の動作について説明する。
まず、前記共通鍵管理手段４１による共通鍵情報４１ａの管理動作について説明する。前記通信ユニット１００としての通信ユニットＡは、図４（ａ）に示すように、前回更新からＴ０時間経過したかを判断する（Ｓ１）。このＴ０時間は、例えば、６時間や１２時間のように数時間単位で設定されることが可能である。
【００２４】
前記共通鍵生成手段４は、このＳ１の判断により前回更新からＴ０時間経過した場合には、前記最新共通鍵情報としての最新共通鍵を生成時刻により一意に生成する（Ｓ２）。この共通鍵生成手段４は、例えば、この生成時刻にＧｒｅｅｎｗｉｃｈ Ｍｅａｎ Ｔｉｍｅ；グリニッジ標準時（ＧＭＴ）を利用してこの最新共通鍵を生成することができる。
【００２５】
この共通鍵生成手段４は、この最新共通鍵が生成時刻により一意に決められるため、前記通信ユニット１００、１００ｘ、１００ｙの最新共通鍵を、配布の手続きを必要とせずに一斉に更新することができる。前記共通鍵管理手段４１は、この最新共通鍵を前記共通鍵情報４１ａに前記次回更新共通鍵として設定する（同Ｓ２）。
【００２６】
前記共通鍵管理手段４１は、この設定後に、前記共通鍵情報４１ａに設定された現在共通鍵を現在共通鍵Ｃｏｐｙとして複製して一時的に記憶する（Ｓ３）。前記共通鍵管理手段４１は、この記憶後に、前記共通鍵情報４１ａの現在共通鍵として前記Ｓ２で設定した次回更新共通鍵を設定する（Ｓ４）。
【００２７】
前記共通鍵管理手段４１は、この設定後に、前記共通鍵情報４１ａの次回更新共通鍵として前記現在共通鍵Ｃｏｐｙを設定する（Ｓ５）。前記共通鍵管理手段４１は、この設定後に、前記共通鍵情報４１ａの旧共通鍵として前記現在共通鍵Ｃｏｐｙを設定する（Ｓ６）。また、前記共通鍵生成手段４は、前記Ｓ１の判断により前回更新からＴ０時間経過していない場合には、前記Ｓ２からＳ６までの処理は行わない。
【００２８】
このように、前記共通鍵管理手段４１は、前記次回更新共通鍵を前記現在共通鍵に関連付けて管理するため、この次回更新共通鍵がこの現在共通鍵をバックアップすることとなり、この現在共通鍵の更新中にこの現在共通鍵が使用されるというイレギュラーな状態をこの次回更新共通鍵により回避することができる。
【００２９】
次に、前記暗号鍵管理手段３１による暗号鍵情報３１ａの管理動作について説明する。
前記通信ユニットＡは、同図（ｂ）に示すように、前回更新からＴ１時間経過したかを判断する（Ｓ１１）。このＴ１時間は、前記Ｔ０時間より短い時間で設定され、例えば、１０分や２０分のように数十分単位で設定されることが可能である。
【００３０】
前記暗号鍵生成手段３は、このＳ１１の判断により前回更新から前記Ｔ１時間経過した場合には、前記最新暗号鍵情報としての最新鍵を生成する（Ｓ１２）。前記暗号鍵生成手段３は、例えば乱数を用いて毎回異なる最新鍵を生成することができる。前記暗号鍵管理手段３１は、この最新鍵を前記暗号鍵情報３１ａに次回更新鍵として設定する（同Ｓ１２）。
【００３１】
前記暗号鍵管理手段３１は、この設定後に、前記暗号鍵情報３１ａに設定された現在鍵を現在鍵Ｃｏｐｙとして複製して一時的に記憶する（Ｓ１３）。前記暗号鍵管理手段３１は、この記憶後に、前記暗号鍵情報３１ａの前記現在鍵として前記Ｓ１２にて設定された次回更新鍵を設定する（Ｓ１４）。
【００３２】
前記暗号鍵管理手段３１は、この設定後に、前記暗号鍵情報３１ａの次回更新鍵として前記現在鍵Ｃｏｐｙを設定する（Ｓ１５）。前記暗号鍵管理手段３１は、この設定後に、前記暗号鍵情報３１ａの旧鍵として前記現在鍵Ｃｏｐｙを設定する（Ｓ１６）。また、前記鍵生成手段４は、前記Ｓ１１の判断により前回更新から前記Ｔ１時間を経過していない場合には、前記Ｓ１２からＳ１６までの処理は行わない。
【００３３】
このように、前記暗号鍵管理手段３１は、前記次回更新鍵を前記現在鍵に関連付けて管理するため、この次回更新鍵がこの現在鍵をバックアップすることとなり、この現在鍵の更新中にこの現在鍵が使用されるというイレギュラーな状態をこの次回更新鍵により回避することができる。前記暗号鍵管理手段３１は、図２（ｄ）に示すように、この次回更新鍵が生成された時点でのデータ遷移に関して、パターン１、パターン２、パターン３、、、と、この次回更新鍵がこの現在鍵に遷移し、この現在鍵が前記旧鍵に遷移する。また、このデータ遷移は、前記共通鍵管理手段４１による前記共通鍵情報４１ａの管理に関しても、次回更新鍵を次回更新共通鍵と読み替え、現在鍵を現在共通鍵と読み替え、旧鍵を旧共通鍵と読み替えることにより、同図（ｄ）と同様に行われる。
【００３４】
次に、この現在鍵の配布動作を説明する。
前記通信ユニットＡは、図５に示すように、前記暗号鍵情報として更新生成された現在鍵を、前記通信ユニット１００ｘとしての１つである通信ユニットＢに送信する。この送信に関して、前記通信ユニットＡの暗号鍵配布手段６は、まず、前回通知からＴ２時間経過したかにより通知時間に到達したかを判断する（Ｓ２１）。このＴ２時間は、前記Ｔ１時間よりもさらに短い時間で設定され、例えば、１分や５分のように数分単位で設定されることが可能である。
【００３５】
前記共通鍵適用手段５は、前記最新共通鍵を用いて、前記現在鍵を暗号化する（Ｓ２２）。前記データ送受信手段１は、この暗号化された現在鍵を前記通信ユニット１００ｘに対してブロードキャスト送信を行う（Ｓ２３）
以下、このブロードキャスト送信を受信した前記通信ユニットＢの動作を説明する。
【００３６】
前記通信ユニットＢのデータ送受信手段１は、前記通信ユニットＡからデータを受信し、このデータが前記暗号鍵配布用データかを判断する（Ｓ３１）。前記共通鍵適用手段５は、この判断により前記暗号鍵配布用データの場合には、前記現在共通鍵を用いて、この暗号鍵配布用データを復号化する（Ｓ３２）。
【００３７】
前記正常復号判断手段８は、この復号化が正常に行なわれたかを判断する（Ｓ３３）。前記相手先鍵管理手段１０は、この判断によりこの復号化が正常な場合には、前記暗号鍵配布用データから前記通信ユニットＡの現在鍵を取り出す（Ｓ３４）。前記相手先鍵管理手段１０は、この通信ユニットＡの現在鍵を前記相手先鍵情報１０ａに登録する（Ｓ３５）。
【００３８】
また、前記旧鍵使用指示手段９は、前記Ｓ３３の判断によりこの復号化が正常でない場合には、前記共通鍵適用手段５に対して、前記旧共通鍵を用いて前記暗号鍵配布用データを復号化するように指示する（Ｓ３６）。この共通鍵適用手段５は、この旧共通鍵を用いてこの暗号鍵配布用データを復号化するように指示する（同Ｓ３６）。
【００３９】
前記正常復号判断手段８は、この復号化が正常に行なわれたかを判断する（Ｓ３７）。前記相手先鍵管理手段１０は、この判断によりこの復号化が正常な場合には、前記Ｓ３４と同様に前記通信ユニットＡの現在鍵を取り出し、前記Ｓ３５と同様に、この通信ユニットＡの現在鍵を前記相手先鍵情報１０ａに登録する。また、前記正常復号判断手段８は、前記Ｓ３７の判断によりこの復号化が正常でない場合には、前記暗号鍵配布用データを破棄する（Ｓ３８）。
【００４０】
このように、前記通信ユニットＡは、図６に示すように、ブロードキャスト送信により、例えばこのブロードキャスト送信の送信先の１つである前記通信ユニットＢに対して更新された前記現在鍵の定期的な配布を行うことができる。同図において、Ｘ０からＸ４は、前記暗号鍵配布用データとして送信される前記現在共通鍵で暗号化された前記現在鍵を示す。また、同図において、タイムゾーンＡ、Ｂ、Ｃは、時刻に応じて更新される前記現在共通鍵としての共通鍵Ａ、Ｂ、Ｃに対応した時間帯を示す。
【００４１】
まず、前記通信ユニットＡは、このタイムゾーンＡにおいて、この現在鍵Ｘ０を更新生成し、この現在鍵Ｘ０を前記Ｔ２時間ごとにブロードキャスト送信する。この通信ユニットＡは、この現在鍵Ｘ０の更新から前記Ｔ１時間後に新たな現在鍵Ｘ１を更新生成し、この現在鍵Ｘ１を前記Ｔ２時間ごとにブロードキャスト送信する。この通信ユニットＡは、前記Ｔ２時間ごとに現在鍵Ｘ２、Ｘ３、Ｓ４を更新生成し、以降、同様に繰り返す。
【００４２】
また、前記通信ユニットＡは、前記タイムゾーンＡの発生から前記Ｔ０時間後には、前記現在共通鍵が共通鍵Ｂに更新され、前記タイムゾーンＢの期間に入り、前記現在鍵をこの共通鍵Ｂで暗号化してブロードキャスト送信する。また、この通信ユニットＡは、このタイムゾーンＢの発生から前記Ｔ０時間後には、前記タイムゾーンＣの期間に入り、以降、同様に繰り返す。
【００４３】
また、前記通信ユニットＢも、前記通信ユニットＡと同様に、ブロードキャスト送信により、例えば送信先の１つである前記通信ユニットＡに対して定期的に更新された前記現在鍵の配布を行うことができる。このように、前記通信ユニットＡ及び前記通信ユニットＢは、現在鍵を定期的に相互配布して更新し、双方向の暗号化通信を行うことができる。
【００４４】
次に、前記通信ユニット１００は、他の通信ユニット１００ｘから送信データを受信した場合には、この他の通信ユニット１００ｘに配布した前記現在鍵を用いてこの送信データを復号化する。この復号化に関して、この通信ユニット１００のデータ送受信手段１は、図７に示すように、まず、この送信データが自分宛のデータであるかを判断する（Ｓ４０１）。
【００４５】
前記復号化手段７は、この判断によりこの送信データが自分宛のデータである場合には、前記暗号鍵情報３１ａに基づいて、前記現在鍵を用いて復号化する（Ｓ４０２）。この復号化手段７は、図８に示すように、このＳ４０２の復号化により、この送信データである送信データＤＴ１から平文データＤＴ２とハッシュＤＴ３とを取得する。
【００４６】
前記正常復号判断手段８は、図７及び図８に示すように、この復号化された送信データに含まれるハッシュＤＴ３を取得する（Ｓ４０３）。また、この正常復号判断手段８は、この平文データＤＴ２に基づいてハッシュＤＴ４をハッシュ計算する（Ｓ４０４）。この正常復号判断手段８は、このハッシュＤＴ３とハッシュＤＴ４とが一致するかを比較判断する（Ｓ４０５）。
【００４７】
前記復号化手段７は、このＳ４０５の比較判断によりこのハッシュＤＴ３とハッシュＤＴ４とが一致する場合には、この送信データＤＴ１からこのハッシュＤＴ３を除去して取得した平文データＤＴ２を、前記平文データ処理手段２に出力する（Ｓ４０６）。この平文データ処理手段２は、この平文データＤＴ２を受付けて後続のデータ処理を行う。
【００４８】
このように、前記正常復号判断手段８は、ハッシュ計算を用いて前記復号化手段７による復号化が正常かを判断することから、正確かつ高速にこの復号化の結果検証ができることとなり、この結果検証にかかる処理負荷を抑えることができる。
【００４９】
また、前記固定鍵適用手段１２は、図７に示すように、前記Ｓ４０１にて受信した送信データが自分宛のデータでない場合には、前記固定鍵情報としての固定鍵を用いて、この送信データを復号化する（Ｓ４０７）。
【００５０】
また、前記復号化手段７は、前記Ｓ４０５にて前記ハッシュＤＴ３と前記ハッシュＤＴ４とが一致しない場合には、この送信データが自分宛のデータであるかを判断する（Ｓ４０８）。前記暗号鍵配布手段６は、この判断によりこの送信データが自分宛のデータである場合には、前記旧鍵が前記現在鍵の配布後からの有効期間を示す旧鍵有効期間Ｔ３が有効かを判断する（Ｓ４０９）。この旧鍵有効期間Ｔ３は、前記現在鍵の更新後から発生し、例えば、数分単位で設定することができる。
【００５１】
前記復号化手段７は、図７及び図８に示すように、前記Ｓ４０２にて前記平文データＤＴ２及びハッシュＤＴ３に復号化した送信データに対して、復号化前の送信データＤＴ１への復元化、即ち暗号化を行う（Ｓ４１０）。前記復号化手段７は、前記暗号鍵情報３１ａに基づいて、この復元化された送信データＤＴ１に対して前記旧鍵を用いて再度復号化を行う（Ｓ４１１）。この復号化手段７は、このＳ４１１の復号化により、この送信データＤＴ１から平文データＤＴ２１とハッシュＤＴ３１とを取得する。
【００５２】
前記正常復号判断手段８は、図７及び図８に示すように、この復号化された送信データに含まれるハッシュＤＴ３１を取得する（Ｓ４１２）。また、この正常復号判断手段８は、この平文データＤＴ２１に基づいてハッシュＤＴ４１を計算する（Ｓ４１３）。この正常復号判断手段８は、このハッシュＤＴ３１とハッシュＤＴ４１とが一致するかを比較判断する（Ｓ４１４）。
【００５３】
前記復号化手段７は、このＳ４１４の比較判断によりこのハッシュＤＴ３１とハッシュＤＴ４１とが一致する場合には、この送信データＤＴ１からこのハッシュＤＴ３１を除去して取得した平文データＤＴ２１を、前記平文データ処理手段２に出力する（Ｓ４１５）。以降、前記平文データ処理手段２は、この平文データＤＴ２１を受付けて後続のデータ処理を行う。
【００５４】
ここで、前記通信ユニットＡは、図９に示すように、前記現在共通鍵の同期性が保たれている前提で、前記Ｔ２時間ごとに前記現在鍵Ｘ０、Ｘ１、、、を前記通信ユニットＢに配布する場合を解説する。前記通信ユニットＡは、例えば、前記現在鍵Ｘ１の最初の配布が何らかの原因で失敗したことにより、一世代前の現在鍵Ｘ０で暗号化された送信データＤＡＴＡ１を受信した場合にも、前記Ｔ３時間の期間内であればこの現在鍵Ｘ０を用いてこの送信データＤＡＴＡ１を正常に復号化することができる。前記通信ユニットＡは、前記通信ユニットＢがこの現在鍵Ｘ１を正常に受信するまでの現在鍵のずれを生じる期間Ｄにおいても、データ通信を正常に行うことができる。
【００５５】
このように、前記復号化手段７は、前記現在鍵の送受信による更新タイミングにより更新前の古い現在鍵で暗号化された暗号化データを他の通信ノードから受信した場合にも、この暗号化データを破棄せずに前記暗号鍵情報３１ａに保持された前記旧鍵で復号化できることとなり、暗号鍵情報の不一致による通信不通を回避してデータの到達性を向上させることができる。
【００５６】
なお、前記復号化手段７は、前記Ｓ４１０にて、復号化前の送信データＤＴ１への復元化のための暗号化を行ったが、例えば、送信データＤＴ１を記憶するバッファ領域を具備することにより、この復号化前にこの送信データＤＴ１をこのバッファ領域に一時的に退避させて保持することでこの暗号化を代用することも可能である。
【００５７】
また、前記相手先鍵管理手段１０は、他の通信ユニット１００ｘからこの通信ユニット１００ｘの現在鍵を受信した場合には、前記現在共通鍵を用いて復号化し、この復号化された現在鍵をこの通信ユニット１００ｘごとの前記相手先鍵として相手先鍵情報１０ａに登録する。この現在鍵の受信に関して、この通信ユニット１００は、図７において、前記現在鍵を前記現在共通鍵に、前記旧鍵を前記旧共通鍵に、前記送信データを前記配布された現在鍵に読み替え、さらに前記Ｓ４０１及び前記Ｓ４０８での自分宛てのデータかの判定を除外したシーケンスに従い、図７と同様な処理を行う。
【００５８】
ここで、前記通信ユニットＡは、図１０に示すように、前記Ｔ２時間ごとに前記現在鍵Ｘ０、Ｘ１、、、を前記通信ユニットＢから配布される場合を解説する。前記通信ユニットＡは、例えば、前記現在鍵Ｘ０の最後の配布に遅延が発生したことにより、一世代前の共通鍵Ａで暗号化された現在鍵Ｘ０を受信した場合にも、前記Ｔ３時間の期間内であればこの共通鍵Ａを用いてこの現在鍵Ｘ０を正常に復号化することができる。
【００５９】
前記通信ユニットＡは、この復号化により、この遅延が発生した場合にも、前記期間Ｄのように前記通信ユニットＢとの現在鍵のずれを生じる期間を発生させずに、データ通信を正常に行うことができる。このように、前記復号化手段７は、何らかの原因で更新前の古い共通鍵で暗号化された現在鍵を他の通信ノードから受信した場合にも、この現在鍵を破棄せずに古い共通鍵で復号化できることとなり、現在鍵の不一致による通信不通を回避して、データの到達性を一層向上させることができる。
【００６０】
また、前記固定鍵適用手段１２は、前記通信ユニット１００との定常的な通信の対象外であり前記現在鍵の相互間配布を行わない前記通信ユニット１００ｙを含めてブロードキャスト送信する必要がある場合には、前記固定鍵を用いてこのブロードキャスト送信を行うことができる。この固定鍵は、更新されずに前記通信ユニット１００、１００ｘ、１００ｙにて共通に備えることができる。
また、本実施形態に係る通信ユニット１００のハードウエア構成は、ＣＰＵ、メモリ、記憶装置、無線通信装置、及び上記各部を接続するバスからなる。
【００６１】
（本発明のその他の実施形態）
本発明のその他の実施形態としては、前記第１の実施形態では前記暗号鍵情報３１ａは、現在鍵及び旧鍵の２つの暗号鍵を記憶して管理したが、この旧鍵として一世代前までの複数の暗号鍵を記憶することも可能である。前記旧鍵使用指示手段９は、この場合には、この複数の旧鍵のうちいづれかの適合する暗号鍵を選択することができることとなり、特に通信に遅延が発生して一世代前より以前の現在鍵で暗号化された送信データを受信した場合にも、この送信データを正常に処理することができ、通信の到達性をさらに向上させることができる。
なお、上述の各実施形態における通信ユニットは、無線アドホック通信により構築されるネットワークであれば用途に限定されずに広範囲に適用することが可能である。
【００６２】
［付記］  以上の実施例を含む実施形態に関し、更に以下の付記を開示する。
（付記１）他の通信ノードとのデータの送受信を行うデータ送受信手段と、平文データを編集する平文データ処理手段とを備え、他の通信ノードに暗号鍵情報を定期的に配布し、他の通信ノードから当該暗号鍵情報を用いて暗号化された暗号化データを受信した場合には当該暗号鍵情報を用いて当該暗号化データを平文データに復号化し、他の通信ノードへの送信を行う場合には他の通信ノードから配布された相手先鍵情報を用いて平文データを暗号化データに暗号化し、通信ノード間で双方向通信を行う通信装置において、前記暗号鍵情報を一定の暗号鍵生成時間ごとに生成する暗号鍵生成手段と、前記暗号鍵生成手段により生成された暗号鍵情報に暗号化又は復号化を実施するための共通鍵情報を、前記暗号鍵生成時間より長く設定された共通鍵生成時間ごとに前記通信ノード間で共通する共通鍵情報として生成時の時刻に対して一意に生成する共通鍵生成手段と、前記共通鍵生成手段により生成された共通鍵情報を用いて、前記暗号鍵生成手段にて生成された前記暗号鍵情報の暗号化又は他の通信ノードから受付けた前記暗号鍵情報の復号化を実施する共通鍵適用手段と、前記共通鍵適用手段により暗号化された前記暗号鍵情報を、通信対象の複数の通信ノードに前記暗号鍵生成時間より短く設定された暗号鍵配布時間ごとに一斉配布するように前記データ送受信手段に依頼する暗号鍵配布手段とを備える通信装置。
【００６３】
（付記２）前記暗号鍵生成手段により生成された暗号鍵情報を最新暗号鍵情報として保持し、当該最新暗号鍵情報の少なくとも一世代前の暗号鍵情報を旧暗号鍵情報として保持する暗号鍵管理手段と、前記データ送受信手段にて受信された前記暗号化データを、前記最新暗号鍵情報を用いて前記平文データに復号化し、当該平文データの処理を前記平文データ処理手段に依頼する復号化手段と、前記暗号鍵配布手段による前記最新暗号鍵情報の配布からの一定時間内に、前記データ送受信手段で受信された前記暗号化データが、前記復号化手段により当該最新暗号鍵情報を用いて正常に復号化されたかを判断する正常復号判断手段と、前記正常復号判断手段により前記暗号化データが正常に復号化されなかったと判断された場合に、前記復号化手段に前記旧暗号鍵情報を使用して当該暗号化データを再度復号化するように指示する旧鍵使用指示手段とを備える付記１記載の通信装置。
【００６４】
（付記３）前記共通鍵生成手段により生成された共通鍵情報を最新共通鍵情報として保持し、当該最新共通鍵情報の少なくとも一世代前の共通鍵情報を旧共通鍵情報として保持する共通鍵管理手段と、前記暗号鍵配布手段による前記最新暗号鍵情報の配布からの一定時間内に、前記データ送受信手段にて受信された前記暗号鍵情報が、前記共通鍵適用手段により前記最新共通鍵情報を用いて正常に復号化されたかを、さらに判断する正常復号判断手段と、前記正常復号判断手段により前記暗号鍵情報が正常に復号化されなかったと判断された場合に、前記共通鍵適用手段に前記旧共通鍵情報を使用して当該暗号鍵情報を再度復号化するように、さらに指示する旧鍵使用指示手段とを備える付記２記載の通信装置。
【００６５】
（付記４）前記データ送受信手段にて受信された前記暗号化データにハッシュ値が含まれるものとし、前記正常復号判断手段が、前記復号化手段により復号化された平文データに対してハッシュ計算を行い、当該ハッシュ計算の結果と前記ハッシュ値とを比較して一致するかを判断することにより、当該平文データが当該復号化手段により前記最新暗号鍵情報を用いて正常に復号化されたかを判断する付記２又は付記３に記載の通信装置。
【００６６】
（付記５）前記データ送受信手段にて受信された前記暗号鍵情報にハッシュ値が含まれるものとし、前記正常復号判断手段が、前記共通鍵適用手段により復号化された暗号鍵情報に対してハッシュ計算を行い、当該ハッシュ計算の結果と前記ハッシュ値とを比較して一致するかを判断することにより、当該暗号鍵情報が当該共通鍵適用手段により前記最新共通鍵情報を用いて正常に復号化されたかを判断する付記３に記載の通信装置。
【００６７】
（付記６）他の通信ノードとのデータの送受信を行うデータ送受信工程と、平文データを編集する平文データ処理工程とを備え、他の通信ノードに暗号鍵情報を定期的に配布し、他の通信ノードから当該暗号鍵情報を用いて暗号化された暗号化データを受信した場合には当該暗号鍵情報を用いて当該暗号化データを平文データに復号化し、他の通信ノードへの送信を行う場合には他の通信ノードから配布された相手先鍵情報を用いて平文データを暗号化データに暗号化し、通信ノード間で双方向通信を行う通信方法において、前記暗号鍵情報を一定の暗号鍵生成時間ごとに生成する暗号鍵生成工程と、前記暗号鍵生成工程により生成された暗号鍵情報に暗号化又は復号化を実施するための共通鍵情報を、前記暗号鍵生成時間より長く設定された共通鍵生成時間ごとに前記通信ノード間で共通する共通鍵情報として生成時の時刻に対して一意に生成する共通鍵生成工程と、前記共通鍵生成工程により生成された共通鍵情報を用いて、前記暗号鍵生成工程にて生成された前記暗号鍵情報の暗号化又は他の通信ノードから受付けた前記暗号鍵情報の復号化を実施する共通鍵適用工程と、前記共通鍵適用工程により暗号化された前記暗号鍵情報を、通信対象の複数の通信ノードに前記暗号鍵生成時間より短く設定された暗号鍵配布時間ごとに一斉配布するように前記データ送受信工程に依頼する暗号鍵配布工程とを備える通信方法。
【００６８】
（付記７）前記暗号鍵生成工程により生成された暗号鍵情報を最新暗号鍵情報として保持し、当該最新暗号鍵情報の少なくとも一世代前の暗号鍵情報を旧暗号鍵情報として保持する暗号鍵管理工程と、前記データ送受信工程にて受信された前記暗号化データを、前記最新暗号鍵情報を用いて前記平文データに復号化し、当該平文データの処理を前記平文データ処理工程に依頼する復号化工程と、前記暗号鍵配布工程による前記最新暗号鍵情報の配布からの一定時間内に、前記データ送受信工程で受信された前記暗号化データが、前記復号化工程により当該最新暗号鍵情報を用いて正常に復号化されたかを判断する正常復号判断工程と、前記正常復号判断工程により前記暗号化データが正常に復号化されなかったと判断された場合に、前記復号化工程に前記旧暗号鍵情報を使用して当該暗号化データを再度復号化するように指示する旧鍵使用指示工程とを備える付記６記載の通信方法。
【００６９】
（付記８）前記共通鍵生成工程により生成された共通鍵情報を最新共通鍵情報として保持し、当該最新共通鍵情報の少なくとも一世代前の共通鍵情報を旧共通鍵情報として保持する共通鍵管理工程と、前記暗号鍵配布工程による前記最新暗号鍵情報の配布からの一定時間内に、前記データ送受信工程にて受信された前記暗号鍵情報が、前記共通鍵適用工程により前記最新共通鍵情報を用いて正常に復号化されたかを、さらに判断する正常復号判断工程と、前記正常復号判断工程により前記暗号鍵情報が正常に復号化されなかったと判断された場合に、前記共通鍵適用工程に前記旧共通鍵情報を使用して当該暗号鍵情報を再度復号化するように、さらに指示する旧鍵使用指示工程とを備える付記７記載の通信方法。
【００７０】
（付記９）前記データ送受信工程にて受信された前記暗号化データにハッシュ値が含まれるものとし、前記正常復号判断工程が、前記復号化工程により復号化された平文データに対してハッシュ計算を行い、当該ハッシュ計算の結果と前記ハッシュ値とを比較して一致するかを判断することにより、当該平文データが当該復号化工程により前記最新暗号鍵情報を用いて正常に復号化されたかを判断する付記７又は付記８に記載の通信方法。
【００７１】
（付記１０）前記データ送受信工程にて受信された前記暗号鍵情報にハッシュ値が含まれるものとし、前記正常復号判断工程が、前記共通鍵適用工程により復号化された暗号鍵情報に対してハッシュ計算を行い、当該ハッシュ計算の結果と前記ハッシュ値とを比較して一致するかを判断することにより、当該暗号鍵情報が当該共通鍵適用工程により前記最新共通鍵情報を用いて正常に復号化されたかを判断する付記８に記載の通信方法。
【００７２】
（付記１１）他の通信ノードとのデータの送受信を行うデータ送受信手段、平文データを編集する平文データ処理手段を備え、他の通信ノードに暗号鍵情報を定期的に配布し、他の通信ノードから当該暗号鍵情報を用いて暗号化された暗号化データを受信した場合には当該暗号鍵情報を用いて当該暗号化データを平文データに復号化し、他の通信ノードへの送信を行う場合には他の通信ノードから配布された相手先鍵情報を用いて平文データを暗号化データに暗号化し、通信ノード間で双方向通信を行うようにコンピュータを機能させる通信プログラムにおいて、前記暗号鍵情報を一定の暗号鍵生成時間ごとに生成する暗号鍵生成手段、前記暗号鍵生成手段により生成された暗号鍵情報に暗号化又は復号化を実施するための共通鍵情報を、前記暗号鍵生成時間より長く設定された共通鍵生成時間ごとに前記通信ノード間で共通する共通鍵情報として生成時の時刻に対して一意に生成する共通鍵生成手段、前記共通鍵生成手段により生成された共通鍵情報を用いて、前記暗号鍵生成手段にて生成された前記暗号鍵情報の暗号化又は他の通信ノードから受付けた前記暗号鍵情報の復号化を実施する共通鍵適用手段、前記共通鍵適用手段により暗号化された前記暗号鍵情報を、通信対象の複数の通信ノードに前記暗号鍵生成時間より短く設定された暗号鍵配布時間ごとに一斉配布するように前記データ送受信手段に依頼する暗号鍵配布手段としてコンピュータを機能させる通信プログラム。
【００７３】
（付記１２）前記暗号鍵生成手段により生成された暗号鍵情報を最新暗号鍵情報として保持し、当該最新暗号鍵情報の少なくとも一世代前の暗号鍵情報を旧暗号鍵情報として保持する暗号鍵管理手段、前記データ送受信手段にて受信された前記暗号化データを、前記最新暗号鍵情報を用いて前記平文データに復号化し、当該平文データの処理を前記平文データ処理手段に依頼する復号化手段、前記暗号鍵配布手段による前記最新暗号鍵情報の配布からの一定時間内に、前記データ送受信手段で受信された前記暗号化データが、前記復号化手段により当該最新暗号鍵情報を用いて正常に復号化されたかを判断する正常復号判断手段、前記正常復号判断手段により前記暗号化データが正常に復号化されなかったと判断された場合に、前記復号化手段に前記旧暗号鍵情報を使用して当該暗号化データを再度復号化するように指示する旧鍵使用指示手段としてコンピュータを機能させる付記１１記載の通信プログラム。
【００７４】
（付記１３）前記共通鍵生成手段により生成された共通鍵情報を最新共通鍵情報として保持し、当該最新共通鍵情報の少なくとも一世代前の共通鍵情報を旧共通鍵情報として保持する共通鍵管理手段、前記暗号鍵配布手段による前記最新暗号鍵情報の配布からの一定時間内に、前記データ送受信手段にて受信された前記暗号鍵情報が、前記共通鍵適用手段により前記最新共通鍵情報を用いて正常に復号化されたかを、さらに判断する正常復号判断手段、前記正常復号判断手段により前記暗号鍵情報が正常に復号化されなかったと判断された場合に、前記共通鍵適用手段に前記旧共通鍵情報を使用して当該暗号鍵情報を再度復号化するように、さらに指示する旧鍵使用指示手段としてコンピュータを機能させる付記１２記載の通信プログラム。
【００７５】
（付記１４）前記データ送受信手段にて受信された前記暗号化データにハッシュ値が含まれるものとし、前記正常復号判断手段が、前記復号化手段により復号化された平文データに対してハッシュ計算を行い、当該ハッシュ計算の結果と前記ハッシュ値とを比較して一致するかを判断することにより、当該平文データが当該復号化手段により前記最新暗号鍵情報を用いて正常に復号化されたかを判断するようにコンピュータを機能させる付記１２又は付記１３に記載の通信プログラム。
【００７６】
（付記１５）前記データ送受信手段にて受信された前記暗号鍵情報にハッシュ値が含まれるものとし、前記正常復号判断手段が、前記共通鍵適用手段により復号化された暗号鍵情報に対してハッシュ計算を行い、当該ハッシュ計算の結果と前記ハッシュ値とを比較して一致するかを判断することにより、当該暗号鍵情報が当該共通鍵適用手段により前記最新共通鍵情報を用いて正常に復号化されたかを判断するようにコンピュータを機能させる付記１３に記載の通信プログラム。
【図面の簡単な説明】
【００７７】
【図１】本発明の第１の実施形態に係る通信装置の構成を示すブロック図
【図２】本発明の第１の実施形態に係る通信装置のデータレイアウト例及びデータ遷移例
【図３】本発明の第１の実施形態に係る通信装置のネットワーク構成図
【図４】本発明の第１の実施形態に係る通信装置の暗号鍵情報及び共通鍵情報の生成のフローチャート
【図５】本発明の第１の実施形態に係る通信装置の現在鍵配布のフローチャート
【図６】本発明の第１の実施形態に係る通信装置の現在鍵の配布フロー図
【図７】本発明の第１の実施形態に係る通信装置の送信データ受信のフローチャート
【図８】本発明の第１の実施形態に係る通信装置の送信データ復号化の説明図
【図９】本発明の第１の実施形態に係る通信装置の現在鍵の更新にタイムラグが発生した場合の処理フロー図
【図１０】本発明の第１の実施形態に係る通信装置の共通鍵の更新にタイムラグが発生した場合の処理フロー図
【符号の説明】
【００７８】
１  データ送受信手段
２  平文データ処理手段
３  暗号鍵生成手段
３１  暗号鍵管理手段
３１ａ  暗号鍵情報
４  共通鍵生成手段
４１  共通鍵管理手段
４１ａ  共通鍵情報
５  共通鍵適用手段
６  暗号鍵配布手段
７  復号化手段
８  正常復号判断手段
９  旧鍵使用指示手段
１０  相手先鍵管理手段
１０ａ  相手先鍵情報
１１  暗号化手段
１２  固定鍵適用手段
１００、１００ｘ、１００ｙ  通信ユニット
２００  サーバー
３００  ゲートウェイ
【図１】
2010098597.tif 000003
【図２】
2010098597.tif 000004
【図３】
2010098597.tif 000005
【図４】
2010098597.tif 000006
【図５】
2010098597.tif 000007
【図７】
2010098597.tif 000008
【図８】
2010098597.tif 000009
【図９】
2010098597.tif 000010
【図１０】
2010098597.tif 000011
【図６】
2010098597.tif 000012