説明

通信装置および通信システム

【課題】安全性の高い暗号通信を提供可能な通信装置を得ること。
【解決手段】認証側の通信装置10Aが、乱数を生成し、自身を識別するための固有情報および乱数を被認証側の通信装置10Bに送信するとともに、この乱数から第1の乱数および第2の乱数を生成し、固有情報および第1の乱数と装置間で共有するマスター鍵とを用いた暗号化処理により一時鍵を生成し、第2の乱数を一時鍵で暗号化して第1の検証データを生成し、さらに、第1の検証データと、被認証側の通信装置10Bにより固有情報および乱数に基づき生成され送られてきた第2の検証データとを比較検証することにより、被認証側の通信装置に対する認証処理を行う。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、暗号通信を行う通信装置および通信システムに関する。
【背景技術】
【0002】
従来、様々な暗号通信システムが提案されている。たとえば、下記特許文献1では、固有情報をIVとし、チャレンジデータをrawとして暗号キーを生成し、そのチャレンジデータを暗号キーで暗号化して検証データを作成し、公衆通信網を利用して暗号キーを通知している。
【0003】
【特許文献1】特開2006−339963号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
上記特許文献1の技術では、固有情報をIVとし、チャレンジデータをrawとして暗号キーを生成しており、固有情報,チャレンジデータともに秘密情報ではない。このため、暗号キー生成方法が推測され、暗号キーを盗まれる恐れがある、という問題があった。
【0005】
本発明は、上記に鑑みてなされたものであって、より安全性の高い暗号通信を提供可能な通信装置および通信システムを得ることを目的とする。
【課題を解決するための手段】
【0006】
上述した課題を解決し、目的を達成するために、本発明は、被認証側の通信装置と暗号通信を行う通信装置であって、乱数を生成する認証側乱数生成手段と、自身を識別するための固有情報および前記乱数を前記被認証側の通信装置に送信するとともに、前記乱数に所定の処理を施して第1の乱数および第2の乱数を生成し、前記固有情報および前記第1の乱数と装置間で共有するマスター鍵とを用いた暗号化処理により一時鍵を生成する認証側制御手段と、前記第2の乱数を前記一時鍵で暗号化して第1の検証データを生成する認証側暗号処理手段と、を備え、前記認証側制御手段は、さらに、前記第1の検証データと、前記被認証側の通信装置により前記固有情報および前記乱数に基づき生成され送られてきた第2の検証データとを比較検証することにより、前記被認証側の通信装置に対する認証処理を行うことを特徴とする。
【発明の効果】
【0007】
この発明によれば、鍵生成および暗号処理に使用されるデータは、装置外部からの把握が困難となり、より安全性の高い暗号通信を提供することが可能となる、という効果を奏する。また、連接された固有情報と乱数から一時鍵を作成するので、検証データを作成するための一時鍵は毎回変わることとなるので、選択的平文攻撃などへの耐性を向上させることが可能となり、さらに安全性の高い暗号通信を提供できる、という効果を奏する。
【発明を実施するための最良の形態】
【0008】
以下に、本発明にかかる通信装置および通信システムの実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【0009】
実施の形態1.
図1は、本発明にかかる通信装置の実施の形態1の構成例を示す図である。図1の通信装置10は、通信部1と、CPUやロジック回路、シーケンスROMなどで構成される制御部2と、不揮発メモリ3と、乱数生成部4と、暗号処理部5と、を備えている。通信部1は、通信データの送受信を行う機能部であって、たとえば、スマートカード用の接触式インターフェースや非接触式インターフェース,パラレルインターフェース,シリアルインターフェース,IEEE1394やUSBなどの有線インターフェース,赤外線通信/Bluetooth/無線LAN/DSRC/携帯電話などの無線インターフェース、などが用いられる。
【0010】
制御部2は、通信装置10全体を制御するとともに、通信部1で受信した通信データを解析し、また、自身が送信する通信データを作成する。不揮発メモリ3は、暗号処理時に使用する固有情報や、マスター鍵といった秘密情報等を保持する。ここで、固有情報は、通信装置10の固体番号やIDといった情報であって、特に秘密情報ではない。また、マスター鍵は、予め装置間で共有している。乱数生成部4は、乱数を発生させる。暗号処理部5は、通信データを暗号化または復号化する。
【0011】
ここで、以上のように構成された通信装置を用いた認証処理の動作を説明する。認証を行う側の通信装置を通信装置10Aとし、認証される側の通信装置を通信装置10Bとする。通信装置10Aおよび10Bは、いずれも通信装置10と同じ構成を有する。
【0012】
図2は、本実施の形態における通信装置(通信装置10Aおよび10B)の相互認証の動作を示すシーケンス図である。通信装置10Aの制御部2は、不揮発メモリ3から固有情報を読み出し(ステップS1)、伝送するためのフォーマットの変換などを行う。つぎに、制御部2は、乱数生成部4に乱数の発生の指令を発行し、これを受けた乱数生成部4は、乱数を生成して(ステップS2)、制御部2に出力する。そして、制御部2は、固有情報および乱数を連接し、通信部1を介して通信装置10Bに向けて送信する(ステップS3)。
【0013】
また、通信装置10Aの制御部2は、ステップS2で生成された乱数を2つのパートに分割して乱数#1と乱数#2とし、固有情報および乱数#1を連接したものと、乱数#2とを得る。
【0014】
固有情報と乱数を連接したイメージを乱数の様々な分割例について示す。図3−1は、固有情報と乱数をそのまま連接した状態を示す図である。図3−2は、乱数のビット列を2分割した例を示す図である。図3−3は、乱数のビット列を2分割した別の例として、乱数#2、乱数#1の順に配置した例を示す図である。図3−4は、乱数の一部のビットを使用せずに、乱数#1と乱数#2とに分割した例を示す図である。図3−5は、乱数の一部のビットを、乱数#1と乱数#2の双方に用いた例を示す図である。このように、乱数は、様々な分割の仕方が可能である。分割の方法は、各通信装置内に予め設定されており、固定的であってもいいし、所定のルールに則って変動してもよい。
【0015】
つぎに、通信装置10Aの制御部2は、不揮発メモリ3からマスター鍵を読み出す。そして、連接した固有情報および乱数#1を平文とし、マスター鍵を暗号鍵として一時鍵を作成する(ステップS4)。図4は、一時鍵の作成方法を説明するための図である。
【0016】
つぎに、通信装置10Aの制御部2は、上記で作成した一時鍵および乱数#2と、暗号化処理の命令を暗号処理部5に通知する。命令を受信した暗号処理部5は、乱数#2を平文とし、通知された一時鍵を暗号鍵として暗号演算を行い、検証データ#1を作成して(ステップS5)、制御部2に出力する。
【0017】
一方、通信装置10Bの通信部1が通信装置10Aから固有情報および乱数を受信すると、通信装置10Bの制御部2では、通信装置10Aの制御部2と同様の処理で、乱数を、乱数#1と乱数#2に分割する(ステップS6)。
【0018】
つぎに、通信装置10Bの制御部2および暗号処理部5では、通信装置10Aと同様の処理で、一時鍵および検証データを作成する。すなわち、制御部2は、不揮発メモリ3からマスター鍵を読み出し、連接した固有情報および乱数#1を平文とし、マスター鍵を暗号鍵として一時鍵を作成する(ステップS7)。また、暗号処理部5は、乱数#2を平文とし、生成された一時鍵を新たに暗号鍵として暗号演算を行い、検証データ#2を作成し(ステップS8)、制御部2に出力する。そして、制御部2は、通信部1を用いて通信装置10Aに検証データを送信する(ステップS9)。
【0019】
通信装置10Aの制御部2は、通信部1を介して通信装置10Bから検証データ#2を受信すると(ステップS10)、自身(通信装置10A)が作成した検証データ#1と、被認証側(通信装置10B)から送信された検証データ#2とを比較する検証処理を行う(ステップS11)。具体的には、制御部2は、双方の検証データが一致したと判断した場合、通信装置10Bは正当な通信装置であると認定する。一方、一致しないと判断した場合、通信装置10Bを正当な通信装置とは認定せず、以後、通信装置10Bとの間の処理は行わない。
【0020】
通信装置10Aが通信装置10Bを正当な通信装置と認定すると、つぎに、通信装置10Bが通信装置10Aを認証する処理が行われる(ステップS12)。処理手順は、上記と同じである。通信装置10Bが通信装置10Aを正当な通信装置として認証すると、相互認証が完了し、以後は、互いにデータ通信を行うことができる。
【0021】
以上説明したように、本実施の形態では、暗号処理に乱数を用いるとともに、乱数部分を分割して暗号鍵の作成に用いることとした。これにより、鍵生成および暗号処理に使用されるデータは、装置外部からの把握が困難となり、より安全性の高い暗号通信を提供することが可能となる。また、連接された固有情報と乱数から一時鍵を作成するので、検証データを作成するための一時鍵は毎回変わることとなる。これにより、選択的平文攻撃などへの耐性を向上させることが可能となり、さらに安全性の高い暗号通信を提供できる。
【0022】
なお、上記実施の形態では、作成した一時鍵に対しては何ら制限を加えていないが、たとえば、作成した一時鍵または一時鍵のSUM値を記録しておき、過去に作成されたものと同じ一時鍵を再度作成した場合は、検証データを生成せずに、認証処理をやり直すこととしてもよい。このようにすることで、一時鍵は必ず変化することとなり、セキュリティを高めることができる。
【0023】
また、上記実施の形態では、図4に示したように一時鍵を作成することとしたが、他の方法を採用してもよい。図5は、他の一時鍵の作成方法(その2)を説明するための図である。図5の作成方法で用いるマスター鍵,暗号演算方法は、上記実施の形態と同様である。本作成方法では、(固有情報|乱数#1)をインクリメントし、都度それぞれについて暗号演算を行い、得られた結果を、“C0|C1|・・・|Cn”と連接する。そして、連接した結果をハッシュ演算し、一時鍵とする。インクリメントする回数“n”は、あらかじめ決めておいてもよく、また、乱数#1の下位4ビットの数など可変であってもよい。
【0024】
この場合、連接した固有情報および乱数#1と、一時鍵との関係が複雑になり、一時鍵の推定をさらに困難にすることが可能となる。
【0025】
実施の形態2.
実施の形態1では、乱数を分割して多段的に暗号化したものを検証データとして、通信装置間の認証に用いるとした。本実施の形態では、被認証側の通信装置がさらに乱数を生成し、この乱数を用いて検証データを加工してから送信する場合について説明する。
【0026】
実施の形態1に引き続き、通信端末10Aを認証側、通信装置Bを被認証側として、実施の形態1と異なる動作を中心に説明する。図6は、本実施の形態における通信装置(通信装置10Aおよび10B)の相互認証の動作を示すシーケンス図である。
【0027】
本実施の形態における動作は、実施の形態1における動作と比較すると、被認証側の通信装置10Bが、認証側の通信装置10Aから受信した乱数とは別に乱数の生成を行い、この乱数を検証データに連接して送信する点が異なっている。
【0028】
図6において、通信装置10Bの通信部1が、通信装置10Aから送信された固有情報および乱数を受信すると、上述同様にステップS6〜S8の処理が行われる。つぎに、通信装置10Bの制御部2は、乱数生成部4に、乱数の生成を指令する通知を発行する。これを受けた乱数生成部4が乱数を生成し(ステップS13)、制御部2に出力すると、制御部2は、既に作成した検証データ#2に、新たに生成された乱数を連接する。そして、制御部2は、(検証データ#2|乱数)を、通信部1を介して通信装置10Aに送信する(ステップS14)。
【0029】
通信装置10Aの制御部2は、通信装置10Bから(検証データ#2|乱数)を受信すると、検証データ受信処理を行う(ステップS15)。具体的には、検証データ#2および乱数の連接を外す。ここで、連接される箇所は、予め設定されるなどにより通信装置間で共有されている。
【0030】
つぎに、通信装置10Aの制御部2は、上述同様、自身(通信装置10A)が作成した検証データ#1と、被認証側(通信装置10B)から送信された検証データ#2とを比較する検証処理を行う(ステップS11)。具体的には、制御部2は、双方の検証データが一致したと判断した場合、通信装置10Bは正当な通信装置であると認定する。一方、一致しないと判断した場合、通信装置10Bを正当な通信装置とは認定せず、以後、通信装置10Bとの間の処理は行わない。
【0031】
以上説明したように、本実施の形態では、認証される側でも乱数を生成し、作成した検証データに連接して送信することとした。これにより、外部からは検証データの抽出が困難になる。すなわち、簡易な手段によって、より安全性を高めた通信装置を得ることができる。
【0032】
なお、上記実施の形態では、検証データに乱数を連接することとしたが、検証データを乱数でマスク(排他的論理和)して、その結果と乱数を連接して認証側に送ることとしてもよい。この場合、認証側は、受信したデータから連接した乱数を取り除き、その乱数を用いてマスクを外すことで検証データを得ることができるので、さらに安全性を高めることができる。
【産業上の利用可能性】
【0033】
以上のように、本発明にかかる通信装置は、相互認証を行う通信装置に有用であり、特に、暗号化したデータを用いて相互認証を行う通信装置に適している。
【図面の簡単な説明】
【0034】
【図1】本発明にかかる通信装置の実施の形態1の構成例を示す図である。
【図2】実施の形態1における通信装置の相互認証の動作を示すシーケンス図である。
【図3−1】固有情報と乱数をそのまま連接した状態を示す図である。
【図3−2】乱数のビット列を2分割した例を示す図である。
【図3−3】乱数のビット列を2分割した例を示す図である。
【図3−4】乱数の一部のビットを使用せずに乱数を分割した例を示す図である。
【図3−5】乱数の一部のビットを乱数#1と乱数#2の双方に用いた例を示す図である。
【図4】一時鍵の作成方法の一例を示す図である。
【図5】一時鍵の作成方法の一例を示す図である。
【図6】実施の形態2における通信装置の相互認証の動作を示すシーケンス図である。
【符号の説明】
【0035】
1 通信部
2 制御部
3 不揮発メモリ
4 乱数生成部
5 暗号処理部
10,10A,10B 通信装置

【特許請求の範囲】
【請求項1】
被認証側の通信装置と暗号通信を行う通信装置であって、
乱数を生成する認証側乱数生成手段と、
自身を識別するための固有情報および前記乱数を前記被認証側の通信装置に送信するとともに、前記乱数に所定の処理を施して第1の乱数および第2の乱数を生成し、前記固有情報および前記第1の乱数と装置間で共有するマスター鍵とを用いた暗号化処理により一時鍵を生成する認証側制御手段と、
前記第2の乱数を前記一時鍵で暗号化して第1の検証データを生成する認証側暗号処理手段と、
を備え、
前記認証側制御手段は、さらに、前記第1の検証データと、前記被認証側の通信装置により前記固有情報および前記乱数に基づき生成され送られてきた第2の検証データとを比較検証することにより、前記被認証側の通信装置に対する認証処理を行うことを特徴とする通信装置。
【請求項2】
前記被認証側の通信装置が生成した乱数と連接された状態で、前記第2の検証データを受信した場合、受信データを予め規定された位置で分離することにより、前記第2の検証データを得ることを特徴とする請求項1に記載の通信装置。
【請求項3】
前記第2の検証データが前記被認証側の通信装置が生成した乱数でマスクされ、かつ当該マスクデータと当該乱数が連接された状態で、前記第2の検証データを受信した場合、受信データを予め規定された位置で分離することによりマスクデータと乱数とを分離し、当該乱数を用いて当該マスクデータのマスクを解除することにより、前記第2の検証データを得ることを特徴とする請求項1に記載の通信装置。
【請求項4】
前記認証側制御手段は、前記所定の処理として、前記乱数の一部または全部を2分割し、一方を第1の乱数とし、他方を第2の乱数とすることを特徴とする請求項1、2または3に記載の通信装置。
【請求項5】
前記認証側制御手段は、前記所定の処理として、前記乱数の一部を共有する第1の乱数および第2の乱数を生成することを特徴とする請求項1、2または3に記載の通信装置。
【請求項6】
前記認証側制御手段にて生成した一時鍵が過去に生成した一時鍵と同じであると判断された場合、前記認証側暗号処理手段は、前記第1の検証データの生成を中止することを特徴とする請求項1〜5のいずれか一つに記載の通信装置。
【請求項7】
前記認証側制御手段は、前記固有情報および前記第1の乱数を、前記マスター鍵を用いて暗号化し、その結果を一時鍵とすることを特徴とする請求項1〜6のいずれか一つに記載の通信装置。
【請求項8】
前記認証側制御手段は、前記固有情報および前記第1の乱数を連接したデータ系列を所定の回数にわたってインクリメント演算し、当該演算前後の各データ系列を、前記マスター鍵を用いてそれぞれ暗号化し、得られた各暗号化データを連接したデータ系列に対してさらにハッシュ演算を行い、その結果を一時鍵とすることを特徴とする請求項1〜6のいずれか一つに記載の通信装置。
【請求項9】
前記請求項1に記載の通信装置として動作する認証側の通信装置と暗号通信を行う通信装置であって、
前記認証側の通信装置から送られてくる固有情報および乱数を受信した場合に、当該乱数に所定の処理を施して第3の乱数および第4の乱数を生成し、前記固有情報および前記第4の乱数と装置間で共有するマスター鍵とを用いた暗号化処理により一時鍵を生成する被認証側制御手段と、
前記第4の乱数を前記一時鍵で暗号化して第2の検証データを生成する被認証側暗号処理手段と、
を備え、
前記被認証側制御手段は、さらに、前記第2の検証データを前記認証側の通信装置に送信することを特徴とする通信装置。
【請求項10】
前記請求項1に記載の通信装置として動作する認証側の通信装置と暗号通信を行う通信装置であって、
前記認証側の通信装置から送られてくる固有情報および乱数を受信した場合に、当該乱数に所定の処理を施して第3の乱数および第4の乱数を生成し、前記固有情報および前記第4の乱数と装置間で共有するマスター鍵とを用いた暗号化処理により一時鍵を生成する被認証側制御手段と、
前記第4の乱数を前記一時鍵で暗号化して第2の検証データを生成する被認証側暗号処理手段と、
乱数を生成する被認証側乱数生成手段と、
を備え、
前記被認証側制御手段は、前記第2の検証データおよび前記被認証側乱数生成手段により生成された乱数に基づき生成した送信系列を、前記認証側の通信装置に送信することを特徴とする通信装置。
【請求項11】
前記送信系列を、前記第2の検証データと前記被認証側乱数生成手段により生成された乱数とを連接することにより生成することを特徴とする請求項10に記載の通信装置。
【請求項12】
前記送信系列を、前記第2の検証データを前記被認証側乱数生成手段により生成された乱数でマスクし、当該マスクデータと当該乱数とを連接することにより生成することを特徴とする請求項10に記載の通信装置。
【請求項13】
前記被認証側制御手段は、前記所定の処理として、前記認証側の通信装置から送られてきた乱数の一部または全部を2分割し、一方を第3の乱数とし、他方を第4の乱数とすることを特徴とする請求項9〜12のいずれか一つに記載の通信装置。
【請求項14】
前記被認証側制御手段は、前記所定の処理として、前記認証側の通信装置から送られてきた乱数の一部を共有する第3の乱数および第4の乱数を生成することを特徴とする請求項9〜12のいずれか一つに記載の通信装置。
【請求項15】
前記被認証側制御手段にて生成した一時鍵が過去に生成した一時鍵と同じであると判断された場合、前記被認証側暗号処理手段は、前記第2の検証データの生成を中止することを特徴とする請求項9〜14のいずれか一つに記載の通信装置。
【請求項16】
前記被認証側制御手段は、前記固有情報および前記第3の乱数を、前記マスター鍵を用いて暗号化し、その結果を一時鍵とすることを特徴とする請求項9〜15のいずれか一つに記載の通信装置。
【請求項17】
前記被認証側制御手段は、前記固有情報および前記第3の乱数を連接したデータ系列を所定の回数にわたってインクリメント演算し、当該演算前後の各データ系列を、前記マスター鍵を用いてそれぞれ暗号化し、得られた各暗号化データを連接したデータ系列に対してさらにハッシュ演算を行い、その結果を一時鍵とすることを特徴とする請求項9〜15のいずれか一つに記載の通信装置。
【請求項18】
前記請求項1に記載の通信装置の機能と、
前記請求項9に記載の通信装置の機能と、
を有し、
認証側または被認証側として動作可能なことを特徴とする通信装置。
【請求項19】
前記請求項2に記載の通信装置の機能と、
前記請求項11に記載の通信装置の機能と、
を有し、
認証側または被認証側として動作可能なことを特徴とする通信装置。
【請求項20】
前記請求項3に記載の通信装置の機能と、
前記請求項12に記載の通信装置の機能と、
を有し、
認証側または被認証側として動作可能なことを特徴とする通信装置。
【請求項21】
前記請求項1に記載の通信装置として動作する認証側の通信装置と、
前記請求項9に記載の通信装置として動作する被認証側の通信装置と、
を含むことを特徴とする通信システム。
【請求項22】
前記請求項2に記載の通信装置として動作する認証側の通信装置と、
前記請求項11に記載の通信装置として動作する被認証側の通信装置と、
を含むことを特徴とする通信システム。
【請求項23】
前記請求項3に記載の通信装置として動作する認証側の通信装置と、
前記請求項12に記載の通信装置として動作する被認証側の通信装置と、
を含むことを特徴とする通信システム。

【図1】
image rotate

【図2】
image rotate

【図3−1】
image rotate

【図3−2】
image rotate

【図3−3】
image rotate

【図3−4】
image rotate

【図3−5】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2009−278565(P2009−278565A)
【公開日】平成21年11月26日(2009.11.26)
【国際特許分類】
【出願番号】特願2008−130097(P2008−130097)
【出願日】平成20年5月16日(2008.5.16)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.Bluetooth
【出願人】(503121103)株式会社ルネサステクノロジ (4,790)
【Fターム(参考)】