(57)【要約】【課題】メッセージの秘匿性を実現しながらメッセージ認証のために必要な暗号化処理や復号化処理を減らし、処理時間を短縮させたり処理に必要なハードウェアの要求性能を下げたりすることができるメッセージ認証方法を提供する。【解決手段】送信装置１１では、メッセージデータ３１が分割され分割メッセージデータ３３が生成される。そして、認証データ３４と分割メッセージデータ３３とが結合され、共通鍵３６を用いて暗号処理が行われ暗号データ３７が生成される。受信装置２１では、受信した暗号データ３９に対して共通鍵４０を用いて復号処理が行われ、メッセージパケット４５（認証データ４１と分割メッセージデータ４３）が生成される。そして、認証データ４１と予め記憶する認証データ４９とを比較し、分割メッセージデータ４３の認証を行う。認証に成功すれば他の分割メッセージデータ４３と結合してメッセージデータ４７を生成する。【選択図】図４
2005012466.tif 000002
【特許請求の範囲】
【請求項１】
メッセージデータに所定の認証データが付加されたメッセージパケットに暗号鍵が用いられて暗号化されて生成された暗号データに対し、復号鍵を用いて復号化してメッセージデータと認証データとを生成し、
生成した前記認証データが、前記暗号化される前に前記メッセージデータに付加された前記所定の認証データと同一か否かを判定することによって、前記復号化して生成した前記メッセージデータの認証を行うメッセージ認証方法。
【請求項２】
請求項１に記載のメッセージ認証方法において、
前記暗号化及び前記復号化の手法は、共通鍵ブロック暗号手法であることを特徴とするメッセージ認証方法。
【請求項３】
請求項１に記載のメッセージ認証方法において、
前記暗号化及び前記復号化の手法は、共通鍵ストリーム暗号手法であることを特徴とするメッセージ認証方法。
【請求項４】
請求項１〜請求項３の何れかに記載のメッセージ認証方法において、
前記所定の認証データは、予め乱数に基づいて生成されたデータであることを特徴とするメッセージ認証方法。
【請求項５】
請求項１〜請求項３の何れかに記載のメッセージ認証方法において、
前記所定の認証データは、全てのビットが０によって構成されたデータ又は全てのビットが１によって構成されたデータであることを特徴とするメッセージ認証方法。
【請求項６】
請求項１〜請求項３の何れかに記載のメッセージ認証方法において、
前記所定の認証データは、車両のナンバープレートに関する情報に基づいて生成されたデータであることを特徴とするメッセージ認証方法。
【請求項７】
送信装置と受信装置とを備えるメッセージ認証システムであって、
前記送信装置は、
認証データ及び暗号鍵を記憶する記憶手段と、
メッセージデータを取得するメッセージデータ取得手段と、
前記メッセージデータ取得手段が取得した前記メッセージデータに前記記憶手段が記憶する前記認証データを付加してメッセージパケットを生成するメッセージパケット生成手段と、
前記メッセージパケット生成手段が生成した前記メッセージパケットを前記記憶手段が記憶する前記暗号鍵を用いて暗号処理を行うことにより暗号データを生成する暗号処理実行手段と、
前記暗号処理実行手段が生成した前記暗号データを送信する暗号データ送信手段と、
を有し、
前記受信装置は、
復号鍵と、前記送信装置の前記記憶手段が記憶する前記認証データと同一の認証データとを記憶する記憶手段と、
前記送信装置から送信された前記暗号データを受信する暗号データ受信手段と、
前記暗号データ受信手段が受信した前記暗号データを前記記憶手段が記憶する前記復号鍵を用いて復号処理を行うことによりメッセージパケットを生成する復号処理実行手段と、
前記復号処理実行手段が生成した前記メッセージパケットからメッセージデータと認証データとを生成し、生成したその認証データと、前記記憶手段が記憶する前記認証データとを比較し、これらの認証データが同一である場合は前記メッセージパケットから生成した前記メッセージデータは正常であると認証し、これらの認証データが同一でない場合は前記メッセージパケットから生成した前記メッセージデータは異常であると認証する認証手段と、
を有することを特徴とするメッセージ認証システム。
【請求項８】
請求項７に記載のメッセージ認証システムにおいて、
前記送信装置の前記暗号処理実行手段が実行する前記暗号処理及び、前記受信装置の前記復号処理実行手段が実行する前記復号処理の手法は、共通鍵ブロック暗号手法であることを特徴とするメッセージ認証システム。
【請求項９】
請求項７に記載のメッセージ認証システムにおいて、
前記送信装置の前記暗号処理実行手段が実行する前記暗号処理及び、前記受信装置の前記復号処理実行手段が実行する前記復号処理の手法は、共通鍵ストリーム暗号手法であることを特徴とするメッセージ認証システム。
【請求項１０】
請求項７〜請求項９の何れかに記載のメッセージ認証システムにおいて、
前記送信装置の前記記憶手段が記憶する前記認証データ及び、前記受信装置の前記記憶手段が記憶する前記認証データは、予め乱数に基づいて生成されたデータであることを特徴とするメッセージ認証システム。
【請求項１１】
請求項７〜請求項９の何れかに記載のメッセージ認証システムにおいて、
前記送信装置の前記記憶手段が記憶する前記認証データ及び、前記受信装置の前記記憶手段が記憶する前記認証データは、全てのビットが０によって構成されたデータ又は全てのビットが１によって構成されたデータであることを特徴とするメッセージ認証システム。
【請求項１２】
請求項７〜請求項１０の何れかに記載のメッセージ認証システムにおいて、
前記送信装置の前記記憶手段が記憶する前記認証データ及び、前記受信装置の前記記憶手段が記憶する前記認証データは、車両のナンバープレートに関する情報に基づいて生成されたデータであることを特徴とするメッセージ認証システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、メッセージ通信において送信時のメッセージと受信時のメッセージとが一致していることを証明するメッセージ認証方法等に関する。
【０００２】
【従来の技術】
通信ネットワークを介して電子データ化されたメッセージを伝送する際の、第三者による改竄等によって発生する送信時のメッセージと受信時のメッセージとの不一致を検出できる様々なメッセージ認証方法が提案されている。
【０００３】
例えば、暗号・復号処理を用いてメッセージ認証する方法（方法１）や、暗号・復号処理と一方向関数処理（例えばハッシュ処理）とを組み合わせてメッセージ認証する方法（方法２）や、特許文献１に記載の方法（方法３）等がある。
まず方法１について図６に示す説明図を用いて説明する。送信側は、まず送信対象であるメッセージデータ１０１に対してパディング開始ビット１０３とパディング１０５とを付加してメッセージパケット１０７を構成する。そして、このメッセージパケット１０７に対して共通鍵Ａを用いて暗号処理を施し暗号文１１１ａを生成する。また、メッセージパケット１０７に対してハッシュ処理を施しハッシュ値１０９を生成し、そのハッシュ値１０９に対して共通鍵Ｂを用いて暗号処理を施しメッセージ認証子１１１ｂを生成する。このようにして生成した暗号文１１１ａとメッセージ認証子１１１ｂとを合わせて送信データ１１１を構成し、受信側に送信する。
【０００４】
一方、受信側では、受信データ１１３を暗号文１１３ａとメッセージ認証子１１３ｂとに予め定められたビット数にしたがって分割する。そして、暗号文１１３ａについては、共通鍵Ａを用いて復号処理を施しメッセージパケット１１５を生成し、さらに生成したメッセージパケット１１５からメッセージデータ１１６を取り出すと共にメッセージパケット１１５にハッシュ処理を施しハッシュ値１１７を生成する。一方、メッセージ認証子１１３ｂについては、共通鍵Ｂを用いて復号処理を施しハッシュ値１１９を生成する。そして、これらのハッシュ値１１７とハッシュ値１１９とを比較する比較処理を行い、これらのハッシュ値が同値であればメッセージデータ１１６は送信途中に改竄されずに送信されたと判断する。
【０００５】
次に方法２について図７に示す説明図を用いて説明する。送信側は、まず送信対象であるメッセージデータ１２１に対してパディング開始ビット１２３とパディング１２５とを付加してメッセージパケット１２７を構成する。そして、このメッセージパケット１２７に対して共通鍵Ａを用いて暗号処理を施し暗号文１２９ａを生成する。また、メッセージパケット１２７に対して共通鍵Ｂを用いて暗号処理を施し、その結果生成された暗号文をメッセージ認証子１２９ｂとする。そして、これらの暗号文１２９ａとメッセージ認証子１２９ｂとを合わせて送信データ１２９を構成し、受信側に送信する。
【０００６】
一方、受信側では、受信データ１３１を暗号文１３１ａとメッセージ認証子１３１ｂとに予め定められたビット数にしたがって分割する。そして、暗号文１３１ａについては、共通鍵Ａを用いて復号処理を施してメッセージパケット１３３を生成し、このメッセージパケット１３３からメッセージデータ１３５を取り出すと共にメッセージパケット１３３に対して共通鍵Ｂを用いて暗号処理を施してメッセージ認証子１３７を生成する。そして、このメッセージ認証子１３７と受信データ１３１を分割して生成したメッセージ認証子１３１ｂとを比較する比較処理を行い、これらのメッセージ認証子が同値であればメッセージデータ１３５は送信途中で改竄されずに送信されたと判断する。
【０００７】
次に方法３について図８に示す説明図を用いて説明する。送信側は、まず送信対象であるメッセージデータ１４１に対してパディング開始ビット１４３とパディング１４５と鍵１４７とを付加してメッセージパケット１４９を構成する。そして、このメッセージパケット１４９に対してハッシュ処理を行い、生成されたハッシュ値をメッセージ認証子１５１とする。このようにして生成されたメッセージ認証子１５１をメッセージデータ１４１に付加して送信データ１５３を構成し、受信側に送信する。
【０００８】
一方、受信側では、受信データ１５５をメッセージデータ１５７とメッセージ認証子１５９とに分割し、メッセージデータ１５７にパディング開始ビット１６１とパディング１６３と鍵１６５とを付加してメッセージパケット１６７を構成する。そしてこのメッセージパケット１６７に対してハッシュ処理を行いメッセージ認証子１６９を生成し、このメッセージ認証子１６９と受信データ１５５を分割して生成したメッセージ認証子１５９とを比較する比較処理を行い、これらのメッセージ認証子が同値であればメッセージデータ１５７は送信途中で改竄されずに送信されたと判断する。
【０００９】
【特許文献１】
特開２００１−３１８６００号公報
【００１０】
【発明が解決しようとする課題】
このように従来のメッセージ認証方法のうち方法１と方法２は、送信側において暗号化処理を２回、受信側において復号化処理を２回行う必要があるため、暗号化処理や復号化処理を１回だけ行う場合と比べて、処理時間がかかるといった問題や処理に必要なハードウェアの要求性能が高いといった問題があった。また、方法３は、送信側及び受信側において暗号化処理はそれぞれ１回ずつであるが、メッセージ自体が暗号化されておらず秘匿性に欠けるといった問題があった。
【００１１】
本発明は、このような問題に鑑みなされたものであり、メッセージの秘匿性を実現しながらメッセージ認証のために必要な暗号化処理や復号化処理を減らし、処理時間を短縮させたり処理に必要なハードウェアの要求性能を下げたりすることができるメッセージ認証方法等を提供することを目的とする。
【００１２】
【課題を解決するための手段及び発明の効果】
上記課題を解決するためになされた請求項１に記載のメッセージ認証方法は、メッセージデータに所定の認証データが付加され、更にこれらに暗号鍵が用いられて暗号化されて生成された暗号データに対し、復号鍵を用いて復号化してメッセージデータと認証データとを生成し、生成した認証データが、暗号化される前にメッセージデータに付加された所定の認証データと同一か否かを判定することによって、復号化して生成したメッセージデータの認証を行うメッセージ認証方法である。
【００１３】
なお、ここで言うメッセージデータというのは、伝達させたいデータを意味し、例えば文字データや写真データや音声データや映像データ等が考えられる。また、所定の認証データ、暗号鍵及び復号鍵は、メッセージデータをやりとりする当事者間でのみ周知である。ただし、公開鍵と秘密鍵の２種類の鍵を用いる暗号化手法を用いる場合における公開鍵についてはこの限りではない。また、「認証を行う」というのは、生成した認証データと暗号化される前にメッセージデータに付加された所定の認証データとが同一であるかを判定した結果、同一であれば「復号化して生成したメッセージデータ」は改竄等がなされておらず送信側で送信されたメッセージデータと同じであると認定し、同一でなければ「復号化して生成したメッセージデータ」は改竄等がなされたものであると認定することを意味する。
【００１４】
このメッセージ認証方法であれば、従来の技術のように認証時に復号化処理を２回行わないため、処理時間を短縮させることができ、必要なハードウェアの要求性能を下げることができる。また、暗号化する側も、従来の技術のように暗号化処理を２回行う必要がないため、処理時間を短縮させることができ、必要なハードウェアの要求性能を下げることができる。また、メッセージデータ自体も暗号化されているので秘匿性も高い。
【００１５】
また、このようなメッセージ認証方法を実装したメッセージ認証システムとしては、請求項７に記載のような送信装置と受信装置を備えたメッセージ認証システムが考えられる。この送信装置は、認証データ及び暗号鍵を記憶する記憶手段と、メッセージデータを取得するメッセージデータ取得手段と、メッセージデータ取得手段が取得したメッセージデータに記憶手段が記憶する認証データを付加してメッセージパケットを生成するメッセージパケット生成手段と、メッセージパケットを記憶手段が記憶する暗号鍵を用いて暗号処理を行うことにより暗号データを生成する暗号処理実行手段と、暗号データを送信する暗号データ送信手段と、を有する。
【００１６】
一方、受信装置は、復号鍵と、送信装置の記憶手段が記憶する認証データと同一の認証データとを記憶する記憶手段と、送信装置から送信された暗号データを受信する暗号データ受信手段と、暗号データ受信手段が受信した暗号データを記憶手段が記憶する復号鍵を用いて復号処理を行うことによりメッセージパケットを生成する復号処理実行手段と、復号処理実行手段が生成したメッセージパケットからメッセージデータと認証データとを生成し、生成したその認証データと、記憶手段が記憶する認証データとを比較し、これらの認証データが同一である場合はメッセージパケットから生成したメッセージデータは正常であると認証し、これらの認証データが同一でない場合はメッセージパケットから生成したメッセージデータは異常であると認証する認証手段と、を有する。
【００１７】
なお、送信装置の記憶手段が記憶する認証データと受信装置の記憶手段が記憶する認証データとは、完全同一でなくてもよい。実質的に同一または、同一であると確かめることができる認証データであればよい。例えば「１２３４５６７８９」という送信装置の記憶手段が記憶する認証データに対し、受信装置の記憶手段が記憶する認証データは「１から９までの数字を昇順に並べたデータ」といった内容を意味する認証データでもよい。
【００１８】
このようなメッセージ認証システムであれば、請求項１に記載のメッセージ認証方法によって得られる効果と同等の効果を得ることができる。
ところで、暗号化及び復号化の手法は、例えば公開鍵を用いた公開鍵手法を用いるようになっていてもよいが、請求項２に記載のメッセージ認証方式のように、共通鍵ブロック暗号手法を用いるようになっていてもよい。共通鍵ブロック暗号手法としては、例えばＤＥＳ（Ｄａｔａ  Ｅｎｃｒｙｐｔｉｏｎ  Ｓｔａｎｄａｒｄ）やＦＥＡＬ（Ｆａｓｔ  Ｅｎｃｒｙｐｔｉｏｎ  Ａｌｇｏｒｉｔｈｍ）等が考えられる。
【００１９】
他の暗号手法を用いる場合と比べて、このような共通鍵ブロック暗号手法を用いる場合は、暗号化対象のデータサイズが大きければ大きいほど効率よくブロック単位で暗号化できるため暗号化対象のデータサイズの大きさの割には処理時間も短く済み、必要なハードウェアの要求性能も低い。
【００２０】
また、このようなメッセージ認証方法を実装したメッセージ認証システムとしては、請求項８に記載のようなメッセージ認証システムが考えられる。このメッセージ認証システムは、請求項７に記載のメッセージ認証システムにおいて、送信装置の暗号処理実行手段が実行する暗号処理及び受信装置の復号処理実行手段が実行する復号処理の手法が、共通鍵ブロック暗号手法を用いるようになったものである。
【００２１】
このようなメッセージ認証システムであれば、請求項２に記載のメッセージ認証方法によって得られる効果と同様の効果を得ることができる。
他にも、請求項３に記載のメッセージ認証方法のように、共通鍵ストリーム暗号手法を用いるようになっていてもよい。共通鍵ストリーム暗号手法としては、ＲＣ４（Ｒｉｖｅｓｔ’ｓ  Ｃｉｐｈｅｒ  ４）等が考えられる。
【００２２】
他の暗号手法を用いる場合と比べて、このような共通鍵ストリーム暗号手法を用いる場合は、処理が単純であるため高速化も容易であり、必要なハードウェアの要求性能も低い。
また、このようなメッセージ認証方法を実装したメッセージ認証システムとしては、請求項９に記載のようなメッセージ認証システムが考えられる。このメッセージ認証システムは、請求項７に記載のメッセージ認証システムにおいて、送信装置の暗号処理実行手段が実行する暗号処理及び受信装置の復号処理実行手段が実行する復号処理の手法は、共通鍵ストリーム暗号手法を用いるようになったものである。
【００２３】
このようなメッセージ認証システムであれば、請求項３に記載のメッセージ認証方法によって得られる効果と同様の効果を得ることができる。
ところで、認証データとしては、好ましくは暗号化側及び復号化側しか知り得ないような複雑なビット列から構成されるデータがよい。例えば請求項４に記載のメッセージ認証方法のように、所定の認証データは、予め乱数に基づいて生成したデータであるとよい。このようにして生成された認証データであれば、第三者には非常に推測がしづらく、セキュリティの強度を上げることができる。
【００２４】
また、このような認証方法を実装したメッセージ認証システムとしては、請求項１０に記載のようなメッセージ認証システムが考えられる。このメッセージ認証システムは、送信装置の記憶手段が記憶する認証データ及び、受信装置の記憶手段が記憶する認証データが、予め乱数に基づいて生成されたデータであるメッセージ認証システムである。
【００２５】
このようなメッセージ認証システムであれば、請求項４に記載のメッセージ認証方法によって得られる効果と同様の効果が得られる。
しかし、暗号化側及び復号化側しか知り得ないような複雑なビット列から構成される認証データを暗号化側と復号化側とに予め配布しておくことが容易でない場合がある。そのような場合は、請求項５に記載のメッセージ認証方法のように、認証データは全てのビットが０によって構成されたデータ又は全てのビットが１によって構成されたデータであってもよい。
【００２６】
通常、改竄が行われた場合は、この認証データ部分にも改竄の影響が現れる。このため、たとえ全てのビットが０であったり全てのビットが１であるようなありふれた認証データであっても、暗号鍵の秘密性が維持されていれば、認証データとして十分に機能する。
【００２７】
このようなメッセージ認証方法を実装したメッセージ認証システムとしては、請求項１１に記載のようなメッセージ認証システムが考えられる。このメッセージ認証システムは、送信装置の記憶手段が記憶する認証データ及び受信装置の記憶手段が記憶する認証データが、全てのビットが０によって構成されたデータ又は全てのビットが１によって構成されたデータであるメッセージ認証システムである。なお、送信装置の記憶手段及び受信装置の記憶手段は、認証データそのままの状態に記憶していなくてもよい。所望の認証データを生成できる情報を記憶していてもよい。例えば「構成ビット数は１６で、全てのビットが０」といった情報を各々の記憶手段が記憶していてもよい。
【００２８】
このようなメッセージ認証システムであれば、請求項５に記載のメッセージ認証方法によって得られる効果と同様の効果が得られる。
また、請求項６に記載のメッセージ認証方法のように、認証データは、車両のナンバープレートに関する情報に基づいて生成されたデータであってもよい。このようなメッセージ認証方法が用いられる具体的な状況としては、車両内に搭載された装置同士の通信に用いる場合や、他の車両との通信に用いる場合が想定される。
【００２９】
このような場合、認証データの設定を容易に行うことができ、利用者の使い勝手がよくなる。なぜなら、近年電子ナンバープレートシステムが実用化されつつあり、この電子ナンバープレートから有線や無線等によって車両ナンバー等を容易に取得することができるからである。また、車両ナンバーであれば、電子ナンバープレートを搭載していなくとも利用者がナンバープレートを視認すれば容易に設定することができる点も理由として挙げられる。
【００３０】
このようなメッセージ認証方法を実装したメッセージ認証システムとしては、請求項１２に記載のようなメッセージ認証システムが考えられる。このメッセージ認証システムは、送信装置の記憶手段が記憶する認証データ及び受信装置の記憶手段が記憶する認証データは、車両のナンバープレートに関する情報に基づいて生成されたデータであるメッセージ認証システムである。
【００３１】
このようなメッセージ認証システムであれば、請求項６に記載のメッセージ認証方法によって得られる効果と同様の効果が得られる。
【００３２】
【発明の実施の形態】
以下、本発明が適用された実施例について図面を用いて説明する。尚、本発明の実施の形態は、下記の実施例に何ら限定されることはなく、本発明の技術的範囲に属する限り種々の形態を採りうる。
【００３３】
図１は、本実施例のメッセージ認証システムの概略構成を表すブロック図である。図１に示すように本実施例のメッセージ認証システムは、送信装置１１と受信装置２１とを備える。このうち送信装置１１は、操作部１３と制御部１４と記憶部１５と表示部１６と通信部１７とを備える。
【００３４】
操作部１３は、タッチパネルやキースイッチ等から構成され、利用者から各種の操作指示を受け付ける。
記憶部１５は、ＲＡＭやハードディスク等のデータの読み出し及び書き込みが可能な媒体を備え、制御部１４から渡されたデータを記憶したり、逆に制御部１４から指定されたデータを制御部１４に渡したりする。
【００３５】
表示部１６は、液晶ディスプレイや有機ＥＬディスプレイ等から構成され、制御部１４からの指令により様々な情報を表示させることができる。
通信部１７は、図示しないケーブルによって受信装置２１に接続され、受信装置２１との通信の際のプロトコル処理等の通信機能を担う。
【００３６】
制御部１４は、周知のＣＰＵ、ＲＯＭ、ＲＡＭ及びそれらを結ぶバス等から構成され、記憶部１５に記憶されたプログラムに基づいて後述する送信処理を実行する。
一方、受信装置２１は、操作部２３と制御部２４と記憶部２５と通信部２７と表示部２６とを備える。
【００３７】
操作部２３は、タッチパネルやキースイッチ等から構成され、利用者から各種の操作指示を受け付ける。
記憶部２５は、ＲＡＭやハードディスク等のデータの読み出し及び書き込みが可能な媒体を備え、制御部２４から渡されたデータを記憶したり、逆に制御部２４から指定されたデータを制御部２４に渡したりする。
【００３８】
表示部２６は、液晶ディスプレイや有機ＥＬディスプレイ等から構成され、制御部２４からの指令により様々な情報を表示させることができる。
通信部２７は、図示しないケーブルによって送信装置１１の通信部１７に接続され、送信装置１１との通信の際のプロトコル処理等の通信機能を担う。
【００３９】
制御部２４は、周知のＣＰＵ、ＲＯＭ、ＲＡＭ及びそれらを結ぶバス等から構成され、記憶部２５に記憶されたプログラムに基づいて後述する受信処理を実行する。
ここまでで本実施例のメッセージ認証システムの概略構成を説明したが、ここで本実施例のメッセージ認証システムを構成する各部位と特許請求の範囲に記載の用語との対応を示す。送信装置１１については、操作部１３が送信装置のメッセージデータ取得手段に相当し、制御部１４が送信装置のメッセージパケット生成手段及び暗号処理実行手段に相当し、記憶部１５が送信装置の記憶手段に相当し、通信部１７が送信装置の暗号データ送信手段に相当する。受信装置２１については、制御部２４が受信装置の復号処理実行手段と認証手段に相当し、記憶部２５が受信装置の記憶手段に相当し、通信部２７が暗号データ受信手段に相当する。
【００４０】
次に、利用者によって送信装置１１の操作部１３にメッセージデータを送信する旨の指令が入力された際に送信装置１１の制御部１４で実行される送信処理について、図２に示す送信処理のフローチャートを用いて説明する。なお、このメッセージデータというのは、予め利用者が操作部１３を操作することによって入力されて記憶部１５に記憶された文字データのことである。このメッセージデータは、他の装置から送信されて記憶部１５に記憶されたものであってもよい。また、文字データに限らず、画像データや動画データ等であってもよい。
【００４１】
（１）送信処理
送信処理が開始されるとまず、記憶部１５に記憶されたメッセージデータを読み出す（Ｓ１０５）。そして、メッセージデータを通信の際の送信単位に分割する（Ｓ１１０）。この送信単位は例えば４バイトや８バイト等である。もちろん更に大きな単位であってもよい。
【００４２】
次に、予め記憶部１５に記憶されている認証データを読み出し、読み出した認証データに対して分割したメッセージデータの１つ目を付加してメッセージパケットを生成する（Ｓ１１５）。ここで言う認証データは、送信装置１１と受信装置２１とで統一されたデータであり、例えば２バイトや４バイト程度の第三者が容易には推測できない内容及び長さのデータである。もちろん更に長いデータであってもよい。ここでは、疑似乱数に基づいて生成されたデータを認証データとする。
【００４３】
次に、予め記憶部１５に記憶されている鍵を用いてブロック暗号化手法（例えばＤＥＳやＦＥＡＬ等）により暗号データを生成する（Ｓ１２０）。なお、ここで用いる鍵は後述する、受信装置２１の制御部２４で実行される受信処理の際に用いられる鍵と同一（つまり共通鍵）である。そして、生成した暗号データを通信部１７を介して受信装置２１に送信する（Ｓ１２５）。送信後は、Ｓ１１０で分割したメッセージデータのうち、未送信のメッセージデータが存在するか否かによって分岐する（Ｓ１３０）。未送信の分割したメッセージデータが存在するのであればＳ１１５に戻り、未送信の分割したメッセージデータが存在しない、つまり全てのメッセージデータを送信し終えたのであれば本処理（送信処理）を終了する。
【００４４】
次に、送信装置１１から暗号データが送信されてきた際に受信装置２１の制御部２４で実行される受信処理について、図３に示す受信処理のフローチャートを用いて説明する。
（２）受信処理
受信処理が開始されるとまず、通信部２７を介して送信装置１１から暗号データを受信する（Ｓ２０５）。続いて受信した暗号データに対し、予め記憶部２５に記憶されている鍵を用いて復号化処理を行いメッセージパケットを生成する（Ｓ２１０）。そして、生成したメッセージパケットから認証データを取り出して予め記憶部２５に記憶されている認証データと比較し（Ｓ２１５）、これらの認証データが一致するか否かによって処理を分岐する（Ｓ２２０）。これらの認証データが一致するのであればＳ２３０に進み、これらの認証データが一致しないのであれば表示部２６にその旨を表示させ（Ｓ２２５）、本処理（受信処理）を終了する。
【００４５】
Ｓ２３０では、メッセージパケットから分割メッセージデータを取り出して本来のメッセージデータを構成する（Ｓ２３０）。そして次のステップでは、メッセージデータが完成したか否かを判定し、メッセージデータが完成したのであれば本処理（受信処理）を終了し、メッセージデータが完成していないのであればＳ２０５に戻り、メッセージデータが完成するまでＳ２０５からＳ２３５までのステップを繰り返す。
【００４６】
ここまでで送信処理と受信処理について説明したが、次にこれらの処理全体を図４の説明図を用いて説明する。図４に示すように、まず送信装置１１でメッセージデータ３１が分割されて分割メッセージデータ３３が生成される。この分割されて生成される分割メッセージデータ３３の長さは、認証データ３４と結合させた際に既定の長さになる長さである。そして、認証データ３４と分割メッセージデータ３３とが結合されてメッセージパケット３５が生成されると共通鍵３６を用いて暗号処理が実行され、暗号データ３７が生成される。なお、この暗号処理はブロック暗号化手法が用いられ、前述した既定の長さ、つまりメッセージパケット３５の単位で暗号処理される。暗号データ３７が生成されると受信装置２１に送信される。
【００４７】
受信装置２１では、暗号データ３７の受信データである暗号データ３９を受け取ると、共通鍵４０を用いて復号処理が実行され、メッセージパケット４５が生成される。なお、この共通鍵４０は暗号処理時に用いられた共通鍵３６と同一である。生成されたメッセージパケット４５は、認証データ４１と分割メッセージデータ４３とに分離され、このうち認証データ４１は、予め受信装置２１の記憶部２５に記憶されている認証データ４９と比較し、一致するかどうかを判定する。判定した結果、これらの認証データが一致するのであれば、分割メッセージデータ４３をすでに受信済みの分割メッセージデータ４３と結合してメッセージデータ４７を生成する。もちろん、受信済みの分割メッセージデータ４３がないのであれば、次に受信される分割メッセージデータ４３のために記憶しておく。
【００４８】
このようにして、送信装置１１で分割された全ての分割メッセージデータ３３が受信装置２１に送信されるまで、これらの処理が繰り返される。
本実施例のメッセージ認証システムによれば、従来の技術のように認証時（つまり受信時）に復号化処理を２回行わないため、処理時間を短縮させることができ、必要なハードウェアの要求性能を下げることができる。また、暗号化する側（送信装置１１）も、従来の技術のように暗号化処理を２回行う必要がないため、処理時間を短縮させることができ、必要なハードウェアの要求性能を下げることができる。また、メッセージデータ自体も暗号化されているので秘匿性も高い。また、従来の技術の方法１及び方法２に比べ、相対的に送信データのサイズを小さくすることができる。なぜなら、方法１では、メッセージパケット１０７を暗号処理して生成した暗号文１１１ａに対し、さらにメッセージパケット１０７のハッシュ値を暗号処理したメッセージ認証子１１１ｂを付加して送信データ１１１を生成していた（図６参照）。また、方法２では、メッセージパケット１２７を共通鍵Ａによって暗号処理されたものと、メッセージパケット１２７を共通鍵Ｂによって暗号処理されたものとを合わせて送信データ１２９を生成していた（図７参照）。一方、本実施例のメッセージ認証システムは、メッセージパケット３５を暗号処理したものだけによって暗号データ３７（つまり送信データ）を生成する。このため多くの場合、方法１や方法２に比べ本実施例のメッセージ認証システムのほうが、同サイズの送信データの中に多くの情報を含ませることができ、効率のよい通信を行うことができる。
【００４９】
以下、他の実施例について述べる。
（１）上記実施例では、認証データ３４，４９は、第三者が容易には推測できないような疑似乱数に基づいて生成したデータであったが、全てのビットが０であるようなデータであってもよい。具体例を図５の説明図を用いて説明する。
【００５０】
まず送信装置１１でメッセージデータ５０が分割されて分割メッセージデータ５１が生成される。この分割されて生成された分割メッセージデータ５１の長さは、後述する認証データ５５及び識別ビット５３と結合させた際に既定の長さになる長さである。分割メッセージデータ５１が生成されると、分割メッセージデータ５１の最後部に「１」である識別ビット５３と全てのビットが「０」である認証データ５５とが結合されてメッセージパケット５７が生成される。メッセージパケット５７が生成されると共通鍵５８を用いて暗号処理が実行され、暗号データ５９が生成される。なお、この暗号処理はブロック暗号化手法が用いられ、前述した既定の長さ、つまりメッセージパケット５７の単位で暗号処理される。暗号データ５９が生成されると受信装置２１に送信される。
【００５１】
受信装置２１では、暗号データ５９の受信データである暗号データ６１を受け取ると、共通鍵６２を用いて復号処理が実行され、メッセージパケット６９が生成される。なお、この共通鍵６２は暗号処理時に用いられた共通鍵５８と同一である。生成されたメッセージパケット６９は、分割メッセージデータ６３と識別ビット６５と認証データ６７とに分離され、このうち認証データ６７は、予め受信装置２１の記憶部２５に記憶されている認証データ７３と比較し、一致するかどうかを判定する。判定した結果、これらの認証データが一致するのであれば、分割メッセージデータ６３をすでに受信済みの分割メッセージデータ６３と結合してメッセージデータ７１を生成する。もちろん、受信済みの分割メッセージデータ６３がないのであれば、次に受信される分割メッセージデータ６３のために記憶しておく。このようにして、送信装置１１で分割された全ての分割メッセージデータ５１が受信装置２１に送信されるまで、これらの処理が繰り返される。
【００５２】
通常、改竄が行われた場合は、認証データ６７にも改竄の影響が現れる。このため、たとえ認証データ５５の全てのビットが０というありふれた認証データであっても、暗号鍵の秘密性が維持されていれば、認証データとして十分に機能する。したがって、このようなメッセージ認証システムであっても、上記実施例のメッセージ認証システムと同様の効果を得ることができる。
【００５３】
なお、認証データ５５，７３は、全てのビットが１であってもよい。その際は、識別ビット５３は「０」であるとよい。
（２）暗号化及び復号化の手法は共通鍵ストリーム暗号手法であってもよい。例えば、ＲＣ４等が考えられる。このような共通鍵ストリーム暗号手法を用いる場合は、メッセージパケットの長さに自由度が生まれると共に、処理が単純であるため高速化も容易であり、必要なハードウェアの要求性能も低い。
【００５４】
（３）認証データ３４，４９としては、車両のナンバープレートに関する情報に基づいて生成されたデータ（例えば車両ナンバー）であってもよい。具体的な状況としては、送信装置１１と受信装置２１とが単一の車両内に設置されて通信を行う場合や、異なる車両に設置されて通信を行う場合が想定される。このように車両に搭載されて用いられる場合は、車両のナンバープレートに関する情報に基づいて生成されたデータを認証データ３４，４９とすれば、認証データ３４，４９の決定に特別なアルゴリズム等が必要でなくなり、利用者にとって都合がよい。
【図面の簡単な説明】
【図１】実施例のメッセージ認証システムのブロック図である。
【図２】送信処理の処理過程を示すフローチャートである。
【図３】受信処理の処理過程を示すフローチャートである。
【図４】実施例の認証処理を説明するための説明図である。
【図５】他の認証処理を説明するための説明図である。
【図６】従来の認証処理を説明するための説明図である。
【図７】従来の認証処理を説明するための説明図である。
【図８】従来の認証処理を説明するための説明図である。
【符号の説明】
１１…送信装置、１３…操作部、１４…制御部、１５…記憶部、１６…表示部、１７…通信部、２１…受信装置、２３…操作部、２４…制御部、２５…記憶部、２６…表示部、２７…通信部。
【図１】
2005012466.tif 000003
【図２】
2005012466.tif 000004
【図３】
2005012466.tif 000005
【図４】
2005012466.tif 000006
【図５】
2005012466.tif 000007
【図６】
2005012466.tif 000008
【図７】
2005012466.tif 000009
【図８】
2005012466.tif 000010