(57)【特許請求の範囲】
【請求項１】
少なくともデータフィールドとレングスフィールドとを有した通信データの送受信を行う通信手段と、
上記通信手段において送受信される通信データのデータフィールド内のデータを、暗号化処理あるいは復号化処理する暗号処理手段と、
上記通信手段において受信した通信データのレングスフィールドの値と、予め装置内に記憶している最小レングス値を比較するレングス比較手段と、
上記通信手段において送受信される通信データのデータフィールド内のデータを順次暗号化処理あるいは復号化処理する際に、上記レングス比較手段の比較により、レングスフィールドの値が最小レングス値より小さいと判断された場合に、不正データを検出したものとし、残りのデータに対して暗号化処理あるいは復号化処理を施さないように制御する制御手段と
を有することを特徴とする暗号通信装置。
【請求項２】
少なくともデータフィールドとレングスフィールドとを有した通信データの送受信を行う通信手段と、
上記通信手段において送受信される通信データのデータフィールド内のデータを、暗号化処理あるいは復号化処理する暗号処理手段と、
上記通信手段において受信した通信データのレングスフィールドの値と、上記受信した通信データのデータフィールドのデータ長とを比較するレングス比較手段と、
上記通信手段において送受信される通信データのデータフィールド内のデータを順次暗号化処理あるいは復号化処理する際に、上記レングス比較手段の比較により、レングスフィールドの値とデータフィールドのデータ長が不一致と判断された場合に、不正データを検出したものとし、残りのデータに対して暗号化処理あるいは復号化処理を施さないように制御する制御手段と
を有することを特徴とする暗号通信装置。
【請求項３】
少なくともレングスフィールドとデータフィールドとを有する通信データの送受信を行う通信手段と、
上記通信手段において送受信される通信データのデータフィールド内のデータを、暗号化処理あるいは復号化処理する暗号処理手段と、
上記通信手段において受信した通信データのレングスフィールドの値と、予め装置内に記憶している最小レングス値を比較するレングス比較手段と、
上記レングス比較手段の比較により、レングスフィールドの値が最小レングス値より小さいと判断された場合に、データフィールド内のデータと異なるダミーデータに対して、暗号化処理あるいは復号化処理を施すように制御する制御手段と
を有することを特徴とする暗号通信装置。
【請求項４】
少なくともレングスフィールドとデータフィールドとを有する通信データの送受信を行う通信手段と、
上記通信手段において送受信される通信データのデータフィールド内のデータを、暗号化処理あるいは復号化処理する暗号処理手段と、
上記通信手段において受信した通信データのレングスフィールドの値と、上記受信した通信データのデータフィールドのデータ長とを比較するレングス比較手段と、
上記レングス比較手段の比較により、レングスフィールドの値とデータフィールドのデータ長が不一致と判断された場合に、データフィールド内のデータと異なるダミーデータに対して、暗号化処理あるいは復号化処理を施すように制御する制御手段と
を有することを特徴とする暗号通信装置。
【請求項５】
請求項３または４に記載の暗号通信装置において、
上記暗号処理手段に入力する入力データを切り替える切り替え手段を有し、
上記制御手段は、上記切り替え手段をデータフィールド内の正常データとは異なるダミーデータ側に切り替えることにより、ダミーデータに対して、暗号化処理あるいは復号化処理を施すように制御することを特徴とする暗号通信装置。
【請求項６】
請求項３から５のいずれかに記載の暗号通信装置において、
乱数を生成する乱数生成手段を有し、
上記制御手段は、上記乱数生成手段により生成された乱数を、上記ダミーデータとして用いることを特徴とする暗号通信装置。
【請求項７】
少なくともレングスフィールドとデータフィールドとを有する通信データの送受信を行う通信手段と、
上記通信手段において送受信される通信データのデータフィールド内のデータを、暗号化処理あるいは復号化処理する暗号処理手段と、
上記暗号処理手段用の正常な鍵を格納する不揮発性メモリと、
上記通信手段において受信した通信データのレングスフィールドの値と、予め装置内に記憶している最小レングス値を比較するレングス比較手段と、
上記レングス比較手段の比較により、レングスフィールドの値が最小レングス値より小さいと判断された場合に、正常な鍵以外のダミー鍵を用いて、暗号化処理あるいは復号化処理を施すように制御する制御手段と
を有することを特徴とする暗号通信装置。
【請求項８】
少なくともレングスフィールドとデータフィールドとを有する通信データの送受信を行う通信手段と、
上記通信手段において送受信される通信データのデータフィールド内のデータを、暗号化処理あるいは復号化処理する暗号処理手段と、
上記暗号処理手段用の正常な鍵を格納する不揮発性メモリと、
上記通信手段において受信した通信データのレングスフィールドの値と、上記受信した通信データのデータフィールドのデータ長とを比較するレングス比較手段と、
上記レングス比較手段の比較により、レングスフィールドの値とデータフィールドのデータ長が不一致と判断された場合に、正常な鍵以外のダミー鍵を用いて、暗号化処理あるいは復号化処理を施すように制御する制御手段と
を有することを特徴とする暗号通信装置。
【請求項９】
請求項７または請求項８に記載の暗号通信装置において、
上記暗号処理手段で使用する鍵を切り替える鍵切り替え手段を有し、
上記制御手段は、鍵切り替え手段を正常な鍵以外のダミー鍵に切り替えることにより、暗号化処理あるいは復号化処理を施すように制御することを特徴とする暗号通信装置。
【請求項１０】
請求項７から９のいずれかに記載の暗号通信装置において、
乱数を生成する乱数生成手段を有し、
上記制御手段は、上記乱数生成手段により生成された乱数を、上記ダミー鍵として用いることを特徴とする暗号通信装置。
【請求項１１】
上記通信手段において送受信される通信データは、コマンドフィールドを有し、
上記レングス比較手段は、上記通信データのコマンドフィールドの値に応じて最小レングス値を特定することを特徴とする請求項１または３または７のいずれかに記載の暗号通信装置。
【請求項１２】
上記レングス比較手段は、上記通信手段において送受信される通信データのトランザクション順に応じて最小レングス値を特定することを特徴とする請求項１または３または７のいずれかに記載の暗号通信装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、暗号通信装置内の秘密情報を読み出す困難性（耐タンパ性）を向上させる装置に関するものである。
【０００２】
【従来の技術】
暗号通信分野における認証方法としては数多くの提案がなされているが、通常、ある秘密情報を知っている者を本人と（検証者が）確かめることで、認証が行われる。例えば、特開平２０００−１８２１０２号公報に示された従来の認証方法では、あらかじめ共通鍵をＡ（証明者側暗号通信装置）とＢ（検証者側暗号通信装置）の双方で保持しておき、以下の手順で相手を認証していた。
（１）Ａは乱数Ｒ１を生成し、Ｂに乱数Ｒ１を送信する。
（２）Ｂは乱数Ｒ１と共通鍵から認証子１を生成し、また、乱数Ｒ２も生成する。そして、認証子１と乱数Ｒ２をＡに送信する。
（３）Ａは乱数Ｒ１と共通鍵から認証子を生成し、Ｂから受信した認証子１と一致するかを検査する（これによりＡはＢを認証）。
（４）次に、Ａは乱数Ｒ２と共通鍵から認証子２を生成し、認証子２をＢに送信する。
（５）Ｂは乱数Ｒ２と共通鍵から認証子を生成し、Ａから受信した認証子２と一致するかを検査する（これによりＢはＡを認証）。
【０００３】
また、共通鍵（秘密鍵）生成のために複数の情報を別々に保持しておき、共通鍵（秘密鍵）を共有せず、認証時や鍵共有時に共通鍵（秘密鍵）を生成することで認証する方法も開示されている。さらに、零知識証明技術に基づいた暗号認証方法（Ｆｉａｔ−Ｓｈａｍｉｒ法等）や、公開鍵と秘密鍵の２つの非対称なデータ暗号鍵を用いる方法（公開鍵暗号方式）、即ち、暗号化を公開された鍵（あるいは秘密鍵）で行い、秘密鍵（あるいは公開鍵）で復号化を行う方法も様々な装置で使用されている。
【０００４】
これらの認証方法が搭載された暗号通信装置では、通常、秘密情報（暗号処理で用いる鍵等）を不揮発性メモリに記録し、これをマイクロプロセッサがアクセス制御することで、容易な読み出しを不可能とする耐タンパ性を実現していた。例えば、モバイルコマースシステムの基地局、携帯電話とスマートカード等で構成される複数の暗号通信装置やノンストップ自動料金収受システムの路側機と車載器及びスマートカードで構成される複数の暗号通信装置等では、所定のコマンドを送信（または受信）し、これに対するレスポンスを受信（または送信）するという方法でアクセスが行われる。
【０００５】
このようなコマンドとレスポンスは、暗号通信装置間の通信ラインを介して行われるが、通信ラインは外部から物理的にアクセスすることが比較的容易であるため、通信ラインを流れるデータを外部から観測されたり、不正データを意図的に挿入されたりする可能性が高い。
【０００６】
さらに近年、故障解析、タイミング解析、電力解析などの各種解析／攻撃法が提案されたことにより、不揮発性メモリ上の秘密情報は読み出せないとする考え方が覆されはじめている。
【０００７】
【発明が解決しようとする課題】
上述したような従来の暗号通信装置では、秘密情報を用いて演算（または処理や変換）を行う際に、電力波形や処理時間など攻撃者に有益な情報が外部にもれてしまい、なりすましや改ざん、通信の回線盗聴などに対して充分なセキュリティの確保ができないという課題を有していた。
【０００８】
また、暗号通信装置の情報フローに対する対策も不十分であったため、解読等の攻撃機会が増加し、その結果、偽造被害が増加するという問題点があった。
【０００９】
この発明は上記のような問題点を解消するためになされたもので、充分なセキュリティを確保しつつ、耐タンパ性に優れた暗号通信装置を得ることを目的とする。
【００１０】
【課題を解決するための手段】
【００１２】
本発明に係る暗号通信装置は、少なくともデータフィールドとレングスフィールドとを有した通信データの送受信を行う通信手段と、
上記通信手段において送受信される通信データのデータフィールド内のデータを、暗号化処理あるいは復号化処理する暗号処理手段と、
上記通信手段において受信した通信データのレングスフィールドの値と、予め装置内に記憶している最小レングス値を比較するレングス比較手段と、
上記通信手段において送受信される通信データのデータフィールド内のデータを順次暗号化処理あるいは復号化処理する際に、上記レングス比較手段の比較により、レングスフィールドの値が最小レングス値より小さいと判断された場合に、不正データを検出したものとし、残りのデータに対して暗号化処理あるいは復号化処理を施さないように制御する制御手段とを有することを特徴とする。
また、上記レングス比較手段の比較により、レングスフィールドの値とデータフィールドのデータ長が不一致と判断された場合に、不正データを検出したものとし、残りのデータに対して暗号化処理あるいは復号化処理を施さないように制御することを特徴とする。
【００１３】
本発明に係る暗号通信装置は、少なくともレングスフィールドとデータフィールドとを有する通信データの送受信を行う通信手段と、上記通信手段において送受信される通信データのデータフィールド内のデータを、暗号化処理あるいは復号化処理する暗号処理手段と、上記通信手段において受信した通信データのレングスフィールドの値と、予め装置内に記憶している最小レングス値を比較するレングス比較手段と、上記レングス比較手段の比較により、レングスフィールドの値が最小レングス値より小さいと判断された場合に、データフィールド内のデータと異なるダミーデータに対して、暗号化処理あるいは復号化処理を施すように制御する制御手段とを有することを特徴とする。
【００１４】
本発明に係る暗号通信装置は、少なくともレングスフィールドとデータフィールドとを有する通信データの送受信を行う通信手段と、上記通信手段において送受信される通信データのデータフィールド内のデータを、暗号化処理あるいは復号化処理する暗号処理手段と、上記通信手段において受信した通信データのレングスフィールドの値と、上記受信した通信データのデータフィールドのデータ長とを比較するレングス比較手段と、上記レングス比較手段の比較により、レングスフィールドの値とデータフィールドのデータ長が不一致と判断された場合に、データフィールド内のデータと異なるダミーデータに対して、暗号化処理あるいは復号化処理を施すように制御する制御手段とを有することを特徴とする。
【００１６】
上記暗号通信装置は、更に、上記暗号処理手段に入力する入力データを切り替える切り替え手段を有し、上記制御手段は、上記切り替え手段をデータフィールド内の正常データとは異なるダミーデータ側に切り替えることにより、ダミーデータに対して、暗号化処理あるいは復号化処理を施すように制御することを特徴とする。
【００１７】
上記暗号通信装置は、更に、乱数を生成する乱数生成手段を有し、
上記制御手段は、上記乱数生成手段により生成された乱数を、上記ダミーデータとして用いることを特徴とする。
【００１８】
本発明に係る暗号通信装置は、少なくともレングスフィールドとデータフィールドとを有する通信データの送受信を行う通信手段と、上記通信手段において送受信される通信データのデータフィールド内のデータを、暗号化処理あるいは復号化処理する暗号処理手段と、上記暗号処理手段用の正常な鍵を格納する不揮発性メモリと、上記通信手段において受信した通信データのレングスフィールドの値と、予め装置内に記憶している最小レングス値を比較するレングス比較手段と、上記レングス比較手段の比較により、レングスフィールドの値が最小レングス値より小さいと判断された場合に、正常な鍵以外のダミー鍵を用いて、暗号化処理あるいは復号化処理を施すように制御する制御手段とを有することを特徴とする。
【００１９】
本発明に係る暗号通信装置は、少なくともレングスフィールドとデータフィールドとを有する通信データの送受信を行う通信手段と、上記通信手段において送受信される通信データのデータフィールド内のデータを、暗号化処理あるいは復号化処理する暗号処理手段と、上記暗号処理手段用の正常な鍵を格納する不揮発性メモリと、上記通信手段において受信した通信データのレングスフィールドの値と、上記受信した通信データのデータフィールドのデータ長とを比較するレングス比較手段と、上記レングス比較手段の比較により、レングスフィールドの値とデータフィールドのデータ長が不一致と判断された場合に、正常な鍵以外のダミー鍵を用いて、暗号化処理あるいは復号化処理を施すように制御する制御手段とを有することを特徴とする。
【００２１】
上記暗号通信装置は、更に、上記暗号処理手段で使用する鍵を切り替える鍵切り替え手段を有し、
上記制御手段は、鍵切り替え手段を正常な鍵以外のダミー鍵に切り替えることにより、暗号化処理あるいは復号化処理を施すように制御することを特徴とする。
【００２２】
上記暗号通信装置は、更に、乱数を生成する乱数生成手段を有し、
上記制御手段は、上記乱数生成手段により生成された乱数を、上記ダミー鍵として用いることを特徴とする。
【００２３】
上記通信手段において送受信される通信データは、コマンドフィールドを有し、
上記レングス比較手段は、上記通信データのコマンドフィールドの値に応じて最小レングス値を特定することを特徴とする。
【００２４】
上記レングス比較手段は、上記通信手段において送受信される通信データのトランザクション順に応じて最小レングス値を特定することを特徴とする。
【００２５】
【発明の実施の形態】
実施の形態１．
実施の形態１について図１から図４を用いて説明する。図１は、この発明の実施の形態１による暗号通信装置の構成を示す図、図２は、暗号通信装置間の通信データの構成を示す図、図３は、暗号通信装置の動作フローを示す図、図４は、通信データ内の暗号化されたデータ（または署名データ）を復号する（または署名検証する）手順や平文データを署名生成する手順を示す図である。
【００２６】
図１において、１は、少なくともレングスフィールドとデータフィールドを有した通信データ８の送受信を行う通信手段で、例えば、スマートカード用の接触式インタフェースや非接触式インタフェース、セントロニクス社準拠のパラレルインタフェースやＲＳ２３２Ｃなどのシリアルインタフェース、ＩＥＥＥ１３９４やＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）などの有線インタフェース、赤外線通信、Ｂｌｕｅｔｏｏｔｈ、無線ＬＡＮやＤＳＲＣ（Ｄｅｄｉｃａｔｅｄ  ｓｈｏｒｔ  Ｒａｎｇｅ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ）、あるいは携帯電話に用いられているような無線インタフェースや専用のインタフェースなどが用いられる。
２は、通信手段１で受信した通信データ８を解読するとともに（または送信する通信データ８を生成するとともに）装置全体を制御する制御手段であり、例えば、ＣＰＵやロジック回路、あるいは必要に応じてＲＯＭやＲＡＭなどから構成される。
３は、暗号処理時に使用する鍵等の秘密情報を記憶する不揮発メモリ、４は、乱数を生成する乱数生成手段、５は、データを暗号あるいは復号処理する（または署名生成あるいは署名検証する）暗号処理手段である。
６は、通信データ８のレングスフィールドの値と予め装置内に記憶している最小レングス値を比較するレングス比較手段、あるいはレングスフィールドの値とデータフィールドのデータ長を比較するレングス比較手段である。
７は、暗号通信装置であり、本実施の形態１では通信データ８のやり取りを行うことで、証明側の暗号通信装置７（図面左側）を検証側の暗号通信装置７（図面右側）が認証するような構成の一例を示している。
【００２７】
また、８は、通信データであり、図２に示すように、少なくともレングスフィールド９とデータフィールド１０から構成されており、レングスフィールド９には、認証データ等が格納されるデータフィールド１０のレングス値が格納されている。なお、データフィールド１０内には暗号化されたデータ、暗号化されていない平文データ、あるいは両者が混在したデータのいずれかで構成される。
【００２８】
動作を説明する前に、この発明の特徴である耐タンパ性向上策の方針について説明する。従来の暗号通信装置では、秘密情報を用いて演算を行う際に電力波形や処理時間など攻撃者に有益な情報が外部にもれてしまい、その結果、偽造被害が増加するという問題点があった。さらに詳しく説明すると、例えば、攻撃者は暗号通信装置内の電源ラインを観測しつつ、通信ラインから不正データを意図的に挿入して、秘密情報を用いた演算を行う際の電力波形や処理時間などを解析することで秘密情報を暴露し、なりすましや改ざん、通信の回線盗聴などの悪事を働く可能性を秘めていた。故に、様々な外部脅威から充分なセキュリティを確保しつつ、耐タンパ性に優れた暗号通信装置を得るためには、以下のような対抗策を講じるようにすればよい。
（１）不正データの意図的挿入等を検出し、攻撃者に有益情報をもらさない。
（２）情報フロー（通信手順や認証データのデータ構造等）を複雑にする。
【００２９】
次に、動作について図１から図４を用いて説明する。まず、証明者側の暗号通信装置７（図面左側）では、装置全体を制御する制御手段２が、以下の手順に従って検証側の暗号通信装置７（図面右側）に通信データ８を送信する。
（１）乱数生成手段４用いて乱数Ｒ１を生成する。
（２）次に、証明者側の暗号通信装置７内に存在する（アプリケーションの種類を示す）アプリケーションＩＤと前記乱数Ｒ１を連結する。
（３）連結したデータを暗号処理手段５に入力して暗号化する。この時の暗号処理用の鍵としては不揮発性メモリ３内に記憶している秘密情報を使用する。
（４）そして、証明者側の暗号通信装置７では、通信手段１を通して検証側の暗号通信装置７に通信データ８を送信する。ここで、通信データ８のレングスフィールド９にはデータフィールド１０のデータ長を示す「２４」、データフィールド１０には２４バイトの「（暗号化された）アプリケーションＩＤと乱数Ｒ１、（暗号化されていない）アプリケーションＩＤ」が格納されている。
【００３０】
一方、データ受信側となる検証側の暗号通信装置７では、図３（ａ）に示すように装置全体を制御する制御手段２が以下の手順でデータを処理する。
（１）通信手段１を介して通信データ８を受信する（ステップ１１）。
（２）通信データ８のレングスフィールド９の値を、例えば、制御手段２や不揮発性メモリ３内に記憶している最小レングス値とレングス比較手段６で比較する（ステップ１２）。ここで、最小レングス値とは、正常な通信データ８内のデータフィールド１０の最小データ長に等しく、予め設定されているものである。
（３）もし、レングスフィールド９の値が最小レングス値以上であれば、不正のない通信データ８と解釈し、データフィールド１０のデータを復号処理する（ステップ１３）。即ち、図４（ａ）に示すように、データフィールド１０内の暗号化データと不揮発性メモリ３内に格納している秘密鍵１５から復号化データ１６ａを生成して、通常の通信トランザクション処理を実行したり、図４（ｂ）に示すように平文データを署名生成処理し、署名データ１６ｂを生成する。本実施の形態では、図４（ａ）のデータフローを用いて復号化されたアプリケーションＩＤとデータフィールド１０内の暗号化されていないアプリケーションＩＤを比較し、一致していれば証明者側を認証する。
（４）一方、図３（ａ）のステップ１２でレングスフィールド９の値が最小レングス値未満であれば、不正データと解釈し、データフィールド１０のデータを復号処理しない（ステップ１４）。これは、例えば、攻撃者が通信ラインから不正データを意図的に挿入し、秘密情報を用いた演算を行う際の電力波形や処理時間などの解析を未然に防ぐもので、特に、不揮発性メモリ３に記憶している秘密情報を用いた暗号処理手段５を動作させないようにするとともに、短い不正データを用いた短時間の解析や攻撃に対する困難性を向上させたものである。
【００３１】
また、データ受信側となる検証側の暗号通信装置７では、図３（ｂ）に示すように装置全体を制御する制御手段２が以下の手順でデータを処理してもよい。
（１）通信手段１を介して通信データ８を受信する（ステップ１１）。
（２）通信データ８のデータフィールド１０を図示しないデータ長カウント手段にてカウントし、前記データ長カウント手段の出力値とレングスフィールド９の値をレングス比較手段６で比較する（ステップ１７）。
（３）もし、レングスフィールド９の値と前記データ長カウント手段の出力値が一致していれば、不正のない通信データ８と解釈し、データフィールド１０のデータを復号処理する（ステップ１３）。即ち、図４（ａ）に示すように、データフィールド１０内の暗号化データと不揮発性メモリ３内に格納している秘密鍵１５から復号化データ１６ａを生成し、通常の通信トランザクション処理を実行したり、図４（ｂ）に示すように平文データを署名生成処理し、署名データ１６ｂを生成する。例えば、復号化されたアプリケーションＩＤとデータフィールド１０内の暗号化されていないアプリケーションＩＤを比較し、一致していれば証明者側を認証する。
（４）一方、レングスフィールド９の値が前記データ長カウント手段の出力値と不一致であれば、不正データと解釈し、データフィールド１０のデータを復号処理しない（ステップ１４）。これも、攻撃者が通信ラインから不正データを意図的に挿入して、秘密情報を用いた演算を行う際の電力波形や処理時間などの解析を未然に防ぐものである。
【００３２】
以上のように、本実施の形態においては、受信した通信データ８のレングスフィールド９の値と予め装置内に記憶している最小レングス値を比較するレングス比較手段６、あるいはレングスフィールド９の値とデータフィールド１０のデータ長を比較するレングス比較手段６を備え、前記レングスフィールド値が前記最小レングス値より小さい場合、あるいはレングスフィールド値とデータフィールドのデータ長が不一致の場合にはデータフィールド１０内のデータに対しても復号処理（あるいは暗号処理や署名処理）を施さないように構成にしたので、攻撃者に有益情報をもらさないという、耐タンパ性に優れた暗号通信装置が得られる効果がある。
【００３３】
なお、この実施の形態では本発明の主旨を逸脱しない範囲で種々の変更や組み合わせが可能である。例えば、図３（ａ）と図３（ｂ）を組み合わせた構成、即ち、通信データ８を受信後、レングスフィールド９の値と最小レングス値を比較し、次に、レングスフィールド９の値とデータフィールド１０のデータ長を比較して、データフィールド１０内の暗号化（あるいは復号化）されたデータまたは平文データに対して復号化（あるいは暗号化、署名生成または署名検証）するかどうかを決めるようにしてもよく、また、比較の順番も特に限定しない。加えて、レングス比較手段６を共通化せず、それぞれ設けるような構成にしてもよい。
【００３４】
また、上述した実施の形態では、最小レングス値を制御手段２や不揮発性メモリ３内に記憶しているように記述したが、装置内であればよく特に限定しない。また、様々な比較を行う際に比較対象の値を範囲に含めることにより、「〜より小さい場合」を「〜以下の場合」、あるいは「〜以上の場合」を「〜より大きい場合」のような表現に修正したとしても同様の効果を奏することは言うまでもない。
【００３５】
また、本実施の形態に示す暗号通信装置７は、相互認証、本人認証、データ認証等、暗号と通信を必要とする分野であれば、特に用途や構成を限定せず種々の変更が可能である。例えば、実施の形態１では、左側の暗号通信装置７を右側の暗号通信装置７で認証するような構成にしているが、逆の構成にしたり、相互に認証したり、複数回認証するような構成にしてもよい。また、認証時には、共通鍵を用いる方法や公開鍵を用いる方法（署名生成・署名検証含）等を採用してもよく、特に限定しない。加えて、通信データ８を一方の暗号通信装置７内で暗号化してから他方で復号化するのではなく、復号化してから暗号化するようにしてもよく、また、公開鍵方式で乱数を交換後に、その乱数をセッション鍵として暗号通信するようにしてもよい。さらに、一方の暗号通信装置７で平文データを受信後に一方向性関数でハッシュ値を求めて、このハッシュ値に対する署名生成処理を行い、他方の暗号通信装置７で署名検証するようにしてもよく特に限定しない。加えて、上述した実施の形態では、アプリケーションＩＤで認証するようにしたが、乱数での認証や契約情報などを認証するようにしてもよく特に限定しない。さらに、図３（ａ）のステップ１３や１４は「データフィールド１０内の一部を復号処理する／しない」、あるいは「データフィールド１０内のすべてを復号処理する／しない」と解釈したり、「復号処理」の部分を「暗号処理」や「署名生成」ならびに「署名検証」等と置き換えても同様の効果を奏する。また、上述した動作フローは認証フェーズの一例を示したものであり、適宜追加したり変更したりしてもよい。
【００３６】
また、図１の構成において、図面左側の暗号通信装置７を携帯電話とし、図面右側の暗号通信装置７をスマートカードと想定した場合には、図示しない携帯電話用基地局やクレジットカード認証局との通信手段や通信フローを適宜追加することができる。加えて、図１においては、説明を容易にするために暗号通信装置７を２つ並べた構成について述べたが、単独でも複数組み合わせた構成にしてもよく、また、本発明の暗号通信装置７と他の暗号通信装置を組み合わせるようにしてもよい。
さらに、図５に示すように、通信データ８においてコマンドフィールド１８をレングスフィールド９やデータフィールド１０の先頭に加えるようにしてもよい。コマンドフィールド１８を設けることは、互いに定めた固定的な通信トランザクションを汎用的にできるという効果がある。例えば、先頭のコマンドフィールド１８を制御手段２等で解読することで、現在のフェーズが認証データであることや特定データの読みだし要求等であることがわかり、より利便性に優れた装置となる。
【００３７】
加えて、上述した例では、最小レングス値を固定としているが、例えば、予め装置内に図６や図７に示すようなテーブル等を格納しておき、最小レングス値をコマンドフィールド１８の値（コマンド）に対応させて変化させたり、通信トランザクションの手順に応じて変化させたりするようにすれば、より耐タンパ性に優れた装置が提供できる。具体的な動作フローは以下の通りである。
１．コマンドと最小レングス値を対応させる場合
（１）通信手段１を介して通信データ８を受信し、コマンドフィールド１８の内容（コマンド）を解読する。
（２）図６から前記コマンドに対応する最小レングス値を求め、通信データ８のレングスフィールド９の値を、前記最小レングス値とレングス比較手段６で比較する。
（３）以下、上述した手順と同様。
２．通信トランザクション順と最小レングス値を対応させる場合
（１）通信手段１を介して通信データ８を受信し、通信トランザクションの順番を図示しないカウント手段で確認する。
（２）図７から前記通信トランザクションの順番に対応する最小レングス値を求め、通信データ８のレングスフィールド９の値を、前記最小レングス値とレングス比較手段６で比較する。
（３）以下、上述した手順と同様。
尚、この動作は最小レングス値を用いる他の形態においても有効である。
【００３８】
実施の形態２．
実施の形態２について図８及び図９を用いて説明する。図８（ａ）は、本発明の暗号通信装置７を用いた駐車場システムの例であり、図面右側の暗号通信装置７が路側機、図面左側の暗号通信装置７が車載器に相当し、図８（ａ）における同一符号は図１とそれぞれ同一または相当部分を指している。また、図８（ｂ）は本発明の動作フローを示す図、図９は暗号化された通信データ８のデータフィールド１０の一例を示す図である。
【００３９】
駐車場システムは、車両の車種情報や車両が通過した時刻などの料金計算に必要な情報と、クレジットカード番号等の決済に必要な利用者の情報とを車両に装着されている車載器と料金所に設置されている路側機との間で無線通信することにより、料金所でも停止することなく車両の通行を可能とするシステムである。暗号通信装置７である路側機と車載器は相互に認証するとともに、決済情報を含む様々なデータをやり取りするため、セキュリティの確保は必須である。故に、本発明の実施の形態２では、上述した対策方針の「不正データの意図的挿入を検出し、攻撃者に有益情報をもらさない」ような対抗策を講じたものである。
【００４０】
次に、動作について図８及び図９を用いて説明する。動作としては、上述した実施の形態１とほぼ同様で、まず、車載器側の暗号通信装置７（図面左側）では、装置全体を制御する制御手段２が、以下の手順に従って路側機の暗号通信装置７（図面右側）に通信データ８を送信する。
（１）乱数生成手段４用いて乱数Ｒ１を生成する。
（２）次に、車載器側の暗号通信装置７内に存在するアプリケーションＩＤ、前記乱数Ｒ１、契約情報を図９のように連結する。
（３）連結したデータを暗号処理手段５に入力して暗号化する。この時の暗号処理用の鍵としては不揮発性メモリ３内に記憶している秘密情報を使用する。
（４）そして、車載器側の暗号通信装置７では、通信手段１を通して路側機の暗号通信装置７に通信データ８を送信する。
【００４１】
一方、データ受信側となる路側機の暗号通信装置７では、図８（ｂ）に示すように装置全体を制御する制御手段２が、以下の手順でデータを処理する。
（１）通信手段１を介して通信データ８を受信する（ステップ１１）。
（２）通信データ８のデータフィールド１０内の先頭ブロックを暗号処理手段５に入力して復号化する（ステップ２０）。この時の暗号処理用の鍵としては不揮発性メモリ３内に記憶している秘密情報を使用する。
（３）もし、復号化されたデータが規定のアプリケーションＩＤでない場合には不正データと解釈し（ステップ２１）、残りのデータフィールド１０のデータを復号処理しない（ステップ２２）。これは、攻撃者が通信ラインから不正データを意図的に挿入して、秘密情報を用いた演算を行う際の電力波形や処理時間などの解析を未然に防ぐもので、特に、不揮発性メモリ３に記憶している秘密情報を用いた暗号処理手段５を動作させずに、短い不正データを用いた短時間の解析や攻撃に対する困難性を向上させたものである。
（４）一方、復号化されたデータが規定のデータであり、かつデータ処理が完了していなければ（ステップ２３）、次のデータフィールド１０内のブロックを暗号処理手段５で復号し（ステップ２０）、不正なデータであるかをチェックする（ステップ２１）。そして、データ処理が完了していなければ、ステップ２０を繰り返し、データ処理が完了していれば復号処理を正常に終了する（ステップ２４）。なお、上述した「データ処理が完了している」とはレングスフィールド９のレングス長に対応した復号処理が完了していることを意味している。
【００４２】
本実施の形態においては、データフィールド１０内の暗号化（あるいは復号化）されたデータを順次復号処理（あるいは暗号処理、署名処理）を施しながらデータを解読する際に、不正データを検出した場合には、残りのデータに対して復号処理（あるいは暗号処理、署名処理）を施さないように構成したので、攻撃者に有益情報をもらさないという、耐タンパ性に優れた暗号通信装置が得られる効果がある。
【００４３】
なお、この実施の形態においても種々の変更が可能で、例えば、実施の形態１で述べたような内容の適用や種々の変更が可能である。さらに、実施の形態１と実施の形態２を組み合わせることも可能であり、例えば、以下のような動作フローをとることも可能である。
（１）通信データ８を受信した後、レングスフィールド９の値と最小レングス値を比較し、レングスフィールド９の値が小さければデータフィールド１０内のデータを復号処理しない。
（２）一方、レングスフィールド９の値が最小レングス値以上であれば、データフィールド１０内のデータを復号処理し、不正データであるかをチェックする。（３）復号化されたデータが不正データの場合には残りのデータを復号処理せず、正常データの場合にはデータ処理が完了するまで、データフィールド１０内の復号処理と不正データのチェックを繰り返す。
【００４４】
また、上述した例では、アプリケーションＩＤを解読することで不正データかどうかを区別したが、検証できるデータであれば特に限定しない。例えば、レングスフィールド９の値を暗号化データの中に格納してチェックしたり、一方向性関数を用いた認証子や署名データ、あるいは相互の乱数や読み出すレコード番号の値など特に規定しない。ここでは、データフィールド１０内のデータを逐次復号処理しながら、不正データを検出した場合には残りのデータを復号処理しないという主旨を逸脱しない範囲で種々の変更が可能である。例えば、図９のデータフォーマットや復号するブロックサイズ等についても限定されない。
【００４５】
実施の形態３．
実施の形態３について説明する。本実施の形態は、実施の形態１と実施の形態２を改良したもので、レングスフィールド９の値が最小レングス値より小さい場合、またはレングスフィールド９の値がデータフィールド１０のデータ長と一致しない場合、あるいはデータフィールド１０内に不正データを検出した場合には、受信データ以外のダミーデータを用いて復号処理（あるいは暗号処理または署名処理）するようにしたものである。
【００４６】
図１０、図１１は本実施の形態３におけるデータフローを説明するための図であり、図１０及び図１１（ａ）において、３０は最小レングス値との比較や不正データを検出するステップ、３１は、ダミーデータを用いて復号処理するステップ、３２は、暗号処理手段５の入力データとなるダミーデータであり、図１０における同一符号は、図３あるいは図８（ｂ）と、図１１（ａ）における同一符号は、図４とそれぞれ同一または相当部分を指している。
【００４７】
次に動作について図１、図８（ａ）、図１０及び図１１（ａ）を用いて説明するが、図１、図８（ａ）については実施の形態１、２とほぼ同様であるため、図１０、図１１（ａ）を中心に説明する。本実施の形態における概略動作フローは以下の通りである。
（１）通信データ８を受信した後（ステップ１１）、レングスフィールド９の値と最小レングス値を比較し（ステップ３０）、レングスフィールド９の値が小さければデータフィールド１０内のデータではなくダミーデータを用いて復号処理するか（ステップ３１）、あるいは不正データ検出（ステップ３０）以降は、ダミーデータを用いて復号処理する（ステップ３１）。
（２）一方、レングスフィールド９の値が最小レングス値以上であれば、データフィールド１０内のデータを復号処理するか（ステップ１３）、あるいは不正データがなければデータフィールド１０内のデータを復号処理する（ステップ１３）。なお、復号処理では図１１（ａ）に示すように、制御手段２の指示により暗号処理手段５には正常データとは異なるダミーデータ３２を入力し、復号化データ１６を得るようにしている。
【００４８】
ここで、ダミーデータについて詳細に説明する。ダミーデータとは、攻撃者に対し、あたかも正常のデータを用いて復号処理（あるいは暗号処理または署名処理）しているようにみせかけるもので、例えば、正常な受信データを１バイトずらしたり、反転させたデータを使用したり、あるいは制御手段２内のメモリ内容そのものをダミーデータとしたりする。または、予めダミーデータを不揮発性メモリ３に格納しておき、前記データを使用したり、複数のダミーデータを切り替えたり、あるいは図示しないカウンタ手段の出力値をダミーデータとしてもよい。さらに、上述した正常な受信データを１バイトずらしたものに予め不揮発性メモリ３に格納しておいたダミーデータを排他的論理和演算して最終的なダミーデータとしたり、様々な演算や加工を施してしてダミーデータとすることもできる。加えて、復号化データ１６自身をダミーデータとして使いまわしてもよい。
【００４９】
以上のように、レングスフィールド値が最小レングス値より小さい場合、あるいはデータフィールド内に不正データを検出した場合には、受信データ以外のダミーデータを用いて復号処理（あるいは暗号処理または署名処理）したので、耐タンパ性に優れた装置を得ることができるという効果を奏する。
【００５０】
なお、この実施の形態においても実施の形態１や２で述べたような内容の適用や種々の変更が可能である。例えば、上述した実施の形態３では、実施の形態１と実施の形態２を組み合わせたものについて説明したが、それぞれを単独に構成するようにしてもよい。即ち、実施の形態１における図３のステップ１４の代わりに図１０のステップ３１を用いるようにしてもよく、また、実施の形態２における図８（ｂ）のステップ２２の代わりに図１０のステップ３１を用いるようにしてもよい。また、図１０のステップ３０は、レングスフィールド９の値と最小レングス値の比較、不正データの検出及びレングスフィールド９の値とデータフィールド１０のデータ長の比較を行うようにしてもよい。
【００５１】
さらに、図１１（ｂ）に示すように、データフィールド１０内の暗号化データ（あるいは復号化データまたは平文データ）とダミーデータを切り替える切り替え手段３３を設けるようにしてもよい。この場合の動作フローを、図１０を用いながら説明する。
（１）通信データ８を受信した後、レングスフィールド９の値と最小レングス値を比較し（ステップ３０）、レングスフィールド９の値が小さければデータフィールド１０内の正常データではなくダミーデータを用いて復号処理するか、あるいは不正データ検出以降は、ダミーデータを用いて復号処理する（ステップ３１）。
（２）一方、レングスフィールド９の値が最小レングス値以上であれば、データフィールド１０内のデータを復号処理するか、あるいは不正データがなければデータフィールド１０内のデータを復号処理する（ステップ１３）。なお、復号処理は、図１１（ｂ）に示すように、制御手段２による切り替え手段３３の制御に応じてデータフィールド１０内の暗号化データ（あるいは復号化データまたは平文データ）とダミーデータを切り替える。ここで、切り替え手段３３はＨ／Ｗ構成でも、Ｓ／Ｗ構成でもよく限定されない。
【００５２】
実施の形態４．
実施の形態４について説明する。本実施の形態は、実施の形態３を改良したもので、ダミーデータの代わりに乱数生成手段４の出力であるランダムメッセージを用いたものであり、図１２における同一符号は図１１（ａ）とそれぞれ同一または相当部分を指している。なお、本発明の実施の形態４も、上述した対策方針の「不正データの意図的挿入を検出し、攻撃者に有益情報をもらさない」ような対抗策を講じたものである。
【００５３】
次に動作について図１、図１０及び図１２を用いて説明するが、実施の形態３とほほ同様であるため図１２を中心に説明する。本実施の形態における動作フロー概略は以下の通りである。
（１）通信データ８を受信した後、レングスフィールド９の値が小さい場合、あるいはレングスフィールド９の値とデータフィールド１０のデータ長が不一致の場合、あるいは不正データを検出した場合、データフィールド１０内の正常データではなくランダムメッセージを用いて復号処理する。即ち、図１２に示すように乱数生成手段４の出力を暗号処理手段５に入力し、不揮発性メモリ３内に格納している秘密鍵１５をもちいて復号化データ１６を生成する。
（２）一方、レングスフィールド９の値が最小レングス値以上の場合、あるいはレングスフィールド９の値とデータフィールド１０のデータ長が一致している場合、あるいは不正データがなければデータフィールド１０内の正常データを復号処理する。
【００５４】
以上のように、レングスフィールド９の値が最小レングス値より小さい場合、あるいはレングスフィールド９の値とデータフィールド１０のデータ長が不一致の場合、あるいはデータフィールド１０内に不正データを検出した場合には、乱数生成手段４の出力であるランダムメッセージを用いて復号処理（あるいは暗号処理または署名処理）したので、耐タンパ性に優れた暗号通信装置が得られるという効果を奏する。
【００５５】
なお、この実施の形態においても実施の形態１〜３で述べたような内容の適用、種々の変更や組み合わせが可能である。例えば、暗号処理手段５への入力データを乱数生成手段４の出力だけではなく、乱数生成手段４の出力と実施の形態３で述べたダミーデータの両者を切り替えて使用したり、あるいは演算や加工したりして入力するようにしてもよい。さらに、乱数生成手段４はＨ／Ｗ構成による真性乱数であることが望ましいが、擬似乱数やＳ／Ｗ処理としてもよく、特に限定されない。
【００５６】
実施の形態５．
実施の形態５について説明する。本実施の形態５は、実施の形態１から実施の形態４を改良したもので、復号処理時（あるいは暗号処理時または署名処理時）に、暗号処理手段５に使用する鍵の代わりにダミー鍵を用いたものである。ここで、ダミー鍵とは、攻撃者に対し、あたかも正常の鍵を用いて復号処理しているようにみせかけるものである。なお、図１３における同一符号は図４とそれぞれ同一または相当部分を指している。なお、本発明の実施の形態５も、上述した対策方針の「不正データの意図的挿入を検出し、攻撃者に有益情報をもらさない」ような対抗策を講じたものである。
【００５７】
次に動作について図１と図１３を用いて説明するが、実施の形態１〜４とほぼ同様であるため図１３を中心に説明する。本実施の形態における概略動作フローは以下の通りである。
（１）通信データ８を受信した後、レングスフィールド９の値が最小レングス値より小さい場合、あるいはレングスフィールド９の値とデータフィールド１０のデータ長が不一致している場合、あるいは不正データを検出した場合、データフィールド１０内の正常データとダミー鍵４０を用いて復号処理する。即ち、図１３に示すように不揮発性メモリ３内に格納している秘密鍵とは異なるダミー鍵４０をもちいて復号化データ１６を生成する。
（２）一方、レングスフィールド９の値が最小レングス値以上の場合、あるいはレングスフィールド９の値とデータフィールド１０のデータ長が一致している場合、あるいは不正データがなければデータフィールド１０内の正常データを復号処理する。
【００５８】
ここで、ダミー鍵４０について詳細に説明する。ダミー鍵４０としては、例えば、正常な鍵の値に所定の値を加算したり、シフトさせた値を使用したり、あるいは制御手段２内のメモリ内容やプログラムカウンタの値をダミー鍵４０としたりしてもよい。また、予めダミー鍵４０を不揮発性メモリ３に格納しておき、このダミー鍵４０を使用したり、複数のダミー鍵４０を切り替えたり、様々な演算や加工を施してしてダミー鍵４０とすることができる。いずれにしてもダミー鍵４０は、正常な鍵と異なる鍵であればよい。
【００５９】
以上のように、レングスフィールド９の値が最小レングス値より小さい場合、あるいはレングスフィールド９の値とデータフィールド１０のデータ長が不一致の場合、あるいはデータフィールド１０内に不正データを検出した場合には、不揮発性メモリ３内に格納している暗号処理手段５用の鍵以外のダミー鍵４０を用いて復号処理（あるいは暗号処理）したので、より耐タンパ性に優れた暗号通信装置が得られる効果がある。
【００６０】
なお、この実施の形態においても実施の形態１〜４で述べたような内容の適用、種々の変更や組み合わせが可能である。
【００６１】
実施の形態６．
実施の形態６について説明する。本実施の形態は、実施の形態５を改良したもので、レングスフィールド値が最小レングス値より小さい場合、あるいはレングスフィールド９の値とデータフィールド１０のデータ長が不一致の場合、あるいはデータフィールド１０内に不正データを検出した場合には、乱数生成手段４の出力であるダミー鍵を用いて復号処理（あるいは暗号処理または署名処理）をするようにしたものである。なお、図１４における同一符号は図４や図１１とそれぞれ同一または相当部分を指しており、また、図１４（ｃ）や図１４（ｄ）における３４は秘密鍵１５と乱数生成手段４の出力を切り替える鍵切り替え手段である。なお、本発明の実施の形態６も、上述した対策方針の「不正データの意図的挿入を検出し、攻撃者に有益情報をもらさない」ような対抗策を講じたものである。
【００６２】
次に動作について図１と図１４を用いて説明するが、実施の形態１〜５とほぼ同様であるため図１４を中心に説明する。
まず、本実施の形態における概略動作フローを図１４（ａ）から順に説明する。（１）通信データ８を受信した後、レングスフィールド９の値が小さい場合、あるいはレングスフィールド９の値とデータフィールド１０のデータ長が不一致である場合、あるいは不正データを検出した場合、データフィールド１０内の正常データと乱数生成手段４の出力を用いて復号処理する。
（２）一方、レングスフィールド９の値が最小レングス値以上の場合、あるいはレングスフィールド９の値とデータフィールド１０のデータ長が一致している場合、あるいは不正データがなければデータフィールド１０内の正常データを復号処理する。
【００６３】
次に、本実施の形態６の変形例を図１４（ｂ）をもとに説明する。概略動作フローは、以下の通りである。
（１）通信データ８を受信した後、レングスフィールド９の値が最小レングス値より小さい場合、あるいはレングスフィールド９の値とデータフィールド１０のデータ長が不一致である場合、あるいは不正データを検出した場合、切り替え手段３３用いてデータフィールド１０内の正常データとは異なるダミーデータ３２側に切り替え、乱数生成手段４の出力を用いて復号処理する。
（２）一方、レングスフィールド９の値が最小レングス値以上の場合、あるいはレングスフィールド９の値とデータフィールド１０のデータ長が一致している場合、あるいは不正データがなければデータフィールド１０内の正常データを復号処理する（この時には、切り替え手段３３は制御手段２により左側に切り替えられている）。
【００６４】
次に、本実施の形態６の変形例を図１４（ｃ）をもとに説明する。概略動作フローは、以下の通りである。
（１）通信データ８を受信した後、レングスフィールド９の値が最小レングス値より小さい場合、あるいはレングスフィールド９の値とデータフィールド１０のデータ長が不一致である場合、あるいは不正データを検出した場合、鍵切り替え手段３４を用いて秘密鍵１５とは異なる乱数生成手段４側に切り替え、データフィールド１０内の正常データを復号処理する。
（２）一方、レングスフィールド９の値が最小レングス値以上の場合、あるいはレングスフィールド９の値とデータフィールド１０のデータ長が一致している場合、あるいは不正データがなければデータフィールド１０内の正常データを秘密鍵（正常な鍵）で復号処理する。
【００６５】
次に、本実施の形態６の変形例を図１４（ｄ）をもとに説明する。概略動作フローは、以下の通りである。
（１）通信データ８を受信した後、レングスフィールド９の値が最小レングス値より小さい場合、あるいはレングスフィールド９の値とデータフィールド１０のデータ長が不一致である場合、あるいは不正データを検出した場合、切り替え手段３３を用いて正常データとは異なるダミーデータ３２を用いるとともに、鍵切り替え手段３４を用いて乱数生成手段４の出力を含むダミー鍵４０に切り替えて復号処理する。
（２）一方、レングスフィールド９の値が最小レングス値以上の場合、あるいはレングスフィールド９の値とデータフィールド１０のデータ長が一致している場合、あるいは不正データがなければデータフィールド１０内の正常データを秘密鍵（正常な鍵）で復号処理する（この時には、切り替え手段３３は制御手段２により左側、鍵切り替え手段３４は上側に切り替えられている）。
【００６６】
以上のように、レングスフィールド値が最小レングス値より小さい場合、あるいはレングスフィールド９の値とデータフィールド１０のデータ長が不一致である場合、あるいはデータフィールド内に不正データを検出した場合には、乱数生成手段４の出力であるダミー鍵４０を用いて復号処理（あるいは暗号処理または署名処理）するようにしたので、より耐タンパ性に優れた暗号通信装置が得られる効果がある。
【００６７】
なお、この実施の形態においても実施の形態１〜５で述べたような内容の適用や種々の変更及び組み合わせが可能である。例えば、図１４のステップ１０における「データフィールド内の暗号化データ」は「復号化データや平文データ」と解釈することもでき、また、ステップ１６の「復号化データ」は「暗号化データや署名生成データあるいは署名検証データ」と表現することもできる。加えて、秘密鍵１５は公開鍵であってよく、また、ダミーデータ３２は乱数生成手段３２の出力であってもよいことは言うまでもない。
【００６８】
暗号通信装置は、コンピュータであり、各要素はプログラムにより処理を実行することができる。また、プログラムを記憶媒体に記憶させ、記憶媒体からコンピュータに読み取られるようにすることができる。
【００６９】
【発明の効果】
攻撃者が通信ラインから不正データを意図的に挿入して、秘密情報を用いた演算を行う際の電力波形や処理時間などの解析を未然に防ぐという効果がある。これにより、耐タンパ性に優れた暗号通信装置が得られる。
【００７０】
また、ダミーデータやダミー鍵を使うので、解析を困難にすることができる。
【図面の簡単な説明】
【図１】  実施の形態１による暗号通信装置の構成を示す図。
【図２】  暗号通信装置間の通信データ構成を示す図。
【図３】  暗号通信装置の動作フローを示す図。
【図４】  通信データ内の暗号化されたデータ（または署名データ）を復号する（または署名検証する）手順や平文データを署名生成する手順を示す図。
【図５】  コマンドフィールドを有する通信データ構成を示す図。
【図６】  コマンド最小レングス値の対応テーブルの例を示す図。
【図７】  通信トランザクションと最小レングス値の対応テーブルの例を示す図。
【図８】  実施の形態２の構成とフローを示す図。
【図９】  実施の形態２の通信データ構成を示す図。
【図１０】  実施の形態３の処理フローを示す図。
【図１１】  実施の形態３のデータフローを示す図。
【図１２】  実施の形態４のデータフローを示す図。
【図１３】  実施の形態５のデータフローを示す図。
【図１４】  実施の形態６の構成とフローを示す図。
【符号の説明】
１  通信手段、２  制御手段、３  不揮発性メモリ、４  乱数生成手段、５  暗号処理手段、６  レングス比較手段、７  暗号通信装置、８  通信データ、９レングスフィールド、１０  データフィールド、１５  秘密鍵、１６  復号化データ、１８  コマンドフィールド、３２  ダミーデータ、３３  切り替え手段、３４  鍵切り替え手段、４０  ダミー鍵。
【図１】
0003902440.tif 000002
【図２】
0003902440.tif 000003
【図３】
0003902440.tif 000004
【図４】
0003902440.tif 000005
【図５】
0003902440.tif 000006
【図６】
0003902440.tif 000007
【図７】
0003902440.tif 000008
【図８】
0003902440.tif 000009
【図９】
0003902440.tif 000010
【図１０】
0003902440.tif 000011
【図１１】
0003902440.tif 000012
【図１２】
0003902440.tif 000013
【図１３】
0003902440.tif 000014
【図１４】
0003902440.tif 000015