(57)【要約】【課題】暗号化や復号化の処理にかかる負荷を抑制しつつ、暗号強度を向上すること。【解決手段】サーバ１から端末装置２に通信を行なう場合、まず平文のデータに対して自己相関性を低減させる処理を行ない、その結果得られたデータである二次データに対して暗号化処理を行なう。そして、暗号化によって生成された暗号文をネットワーク３を介して送信する。端末装置２は受信した暗号文に対して復号化処理を行なうことで二次データを取り出すことができ、取り出した二次データに対して自己相関性を復元する処理（後処理）を行なって平文データを得る。【選択図】        図１
2007193137.tif 000002
【特許請求の範囲】
【請求項１】
平文データを暗号化する暗号方法であって、
前記平文データに対して自己相関性を低減させる処理を行なって二次データとして出力する自己相関性低減工程と、
前記二次データを暗号化する暗号化処理工程と、
を含んだことを特徴とする暗号方法。
【請求項２】
前記自己相関性低減工程は、前記平文データから特定のビット列を切り捨てて前記二次データとして出力することを特徴とする請求項１に記載の暗号方法。
【請求項３】
前記自己相関性低減方法は、前記平文データが特定のビット列を含む場合には当該ビット列を切り捨てて前記二次データとして出力し、前記平文データが圧縮済データである場合は当該平文データをそのまま前記二次データとして出力し、前記平文データが前記特定のビット列を含まず、かつ圧縮済データでない場合に当該平文データに所定の圧縮処理を行なって前記二次データとして出力することを特徴とする請求項１に記載の暗号方法。
【請求項４】
暗号化されたデータを復号化する復号装置であって、
前記暗号化されたデータに対して復号化処理を行なう復号化処理手段と、
前記復号化処理によって得られたデータに対し、所定の自己相関性復元処理を施して平文データを出力する自己相関性復元手段と、
を備えたことを特徴とする復号装置。
【請求項５】
暗号化されたデータを復号化する復号方法であって、
前記暗号化されたデータに対して復号化処理を行なう復号化処理工程と、
前記復号化処理によって得られたデータに対し、所定の自己相関性復元処理を施して平文データを出力する自己相関性復元工程と、
を含んだことを特徴とする復号方法。
【請求項６】
平文データを暗号化する暗号装置であって、
前記平文データに対して自己相関性を低減させる処理を行なって二次データとして出力する自己相関性低減手段と、
前記二次データを暗号化する暗号化処理手段と、
を備えたことを特徴とする暗号装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、平文データを暗号化する暗号装置、暗号方法および暗号化されたデータを復号化する復号装置、復号方法に関し、特に暗号化や復号化の処理にかかる負荷を抑制しつつ、暗号強度を向上する暗号装置、暗号方法、復号装置および復号方法に関する。
【背景技術】
【０００２】
従来、通信内容を第三者から秘匿するため通信の暗号化が行なわれてきた。例えば、特許文献１は、音声データを圧縮し、その後暗号化する技術を開示しており、特許文献２は、データを換字処理によって暗号化する技術を開示している。また、特許文献３は、特定のテーブルを使用した暗号化を開示しており、特許文献４は暗号化を行なう際に入力データを所定の値に変換する変換表の設定について開示している。
【０００３】
【特許文献１】特開平８−３１６９５１号公報
【特許文献２】特許第２６２２２３号公報
【特許文献３】特開平９−１１４３７３号公報
【特許文献４】特許第３０２９３８１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、コンピュータが広く利用され、またその処理能力が著しく向上している現在、古典的な暗号方法は簡易に解読され得る状況となっている。そこで、強固な暗号強度が必要である場合には代数曲線理論などを利用した高度な暗号が採用されることが多い。
【０００５】
しかしながら、高度な暗号は正当な利用者においても古典的な暗号に比べて必要な計算量が極めて大きくなる。そのため、車載端末や携帯端末など限られた演算能力（低速のＣＰＵなど）しか持たない端末では、全ての通信に暗号化を行なうことが困難であるという問題点があった。
【０００６】
一方で、暗号の不正な解読には、通信データの偏り（特定のビット列が繰り返し現れるなど、自己相関性が高い状態）を手掛かりとする手法が知られている。特に平文に大きな偏りがある場合、暗号化によってかかる偏りを解消し、十分な暗号強度を確保するためにはより高度な暗号処理が必要となり、計算量のさらなる増大を引き起こしていた。
【０００７】
本発明は、上述した従来技術における問題点を解消し、課題を解決するためになされたものであり、暗号化や復号化の処理にかかる負荷を抑制しつつ、暗号強度を向上する暗号装置、暗号方法、復号装置および復号方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上述した課題を解決し、目的を達成するため、請求項１の発明に係る暗号方法は、平文データを暗号化する暗号方法であって、前記平文データに対して自己相関性を低減させる処理を行なって二次データとして出力する自己相関性低減工程と、前記二次データを暗号化する暗号化処理工程と、を含んだことを特徴とする。
【０００９】
この請求項１の発明によれば暗号方法は、平文データに対して自己相関性を低減させる処理を行なって二次データとして出力し、二次データを暗号化する。
【００１０】
また、請求項２の発明に係る暗号方法は、請求項１に記載の発明において、前記自己相関性低減工程は、前記平文データから特定のビット列を切り捨てて前記二次データとして出力することを特徴とする。
【００１１】
この請求項２の発明によれば暗号方法は、平文データから特定のビット列を切り捨てて二次データとして出力し、二次データを暗号化する。
【００１２】
また、請求項３の発明に係る暗号方法は、請求項１に記載の発明において、前記自己相関性低減方法は、前記平文データが特定のビット列を含む場合には当該ビット列を切り捨てて前記二次データとして出力し、前記平文データが圧縮済データである場合は当該平文データをそのまま前記二次データとして出力し、前記平文データが前記特定のビット列を含まず、かつ圧縮済データでない場合に当該平文データに所定の圧縮処理を行なって前記二次データとして出力することを特徴とする。
【００１３】
この請求項３の発明によれば暗号方法は、平文データが特定のビット列を含む場合には当該ビット列を切り捨てて二次データとして出力し、平文データが圧縮済データである場合は当該平文データをそのまま二次データとして出力し、平文データが特定のビット列を含まず、かつ圧縮済データでない場合に当該平文データに所定の圧縮処理を行なって二次データとして出力し、二次データを暗号化する。
【００１４】
また、請求項４の発明に係る復号装置は、暗号化されたデータを復号化する復号装置であって、前記暗号化されたデータに対して復号化処理を行なう復号化処理手段と、前記復号化処理によって得られたデータに対し、所定の自己相関性復元処理を施して平文データを出力する自己相関性復元手段と、を備えたことを特徴とする。
【００１５】
この請求項４の発明によれば復号装置は、暗号化されたデータに対して復号化処理を行なった後、所定の自己相関性復元処理を施して平文データを出力する。
【００１６】
また、請求項５の発明に係る復号方法は、暗号化されたデータを復号化する復号方法であって、前記暗号化されたデータに対して復号化処理を行なう復号化処理工程と、前記復号化処理によって得られたデータに対し、所定の自己相関性復元処理を施して平文データを出力する自己相関性復元工程と、を含んだことを特徴とする。
【００１７】
この請求項５の発明によれば復号方法は、暗号化されたデータに対して復号化処理を行なった後、所定の自己相関性復元処理を施して平文データを出力する。
【００１８】
また、請求項６の発明に係る暗号装置は、平文データを暗号化する暗号装置であって、前記平文データに対して自己相関性を低減させる処理を行なって二次データとして出力する自己相関性低減手段と、前記二次データを暗号化する暗号化処理手段と、を備えたことを特徴とする。
【００１９】
この請求項６の発明によれば暗号装置は、平文データに対して自己相関性を低減させる処理を行なって二次データとして出力し、二次データを暗号化する。
【発明の効果】
【００２０】
請求項１の発明によれば暗号方法は、平文データに対して自己相関性を低減させる処理を行なって二次データとして出力し、二次データを暗号化するので、暗号化や復号化の処理にかかる負荷を抑制しつつ、暗号強度を向上する暗号方法を得ることができるという効果を奏する。
【００２１】
また、請求項２の発明によれば暗号方法は、平文データから特定のビット列を切り捨てて二次データとして出力し、二次データを暗号化するので、簡易な処理で暗号化や復号化の処理にかかる負荷を抑制し、かつ暗号強度を向上する暗号方法を得ることができるという効果を奏する。
【００２２】
また、請求項３の発明によれば暗号方法は、平文データが特定のビット列を含む場合には当該ビット列を切り捨てて二次データとして出力し、平文データが圧縮済データである場合は当該平文データをそのまま二次データとして出力し、平文データが特定のビット列を含まず、かつ圧縮済データでない場合に当該平文データに所定の圧縮処理を行なって二次データとして出力し、二次データを暗号化するので、データの種別に応じて暗号化や復号化の処理にかかる負荷を抑制しつつ、暗号方法を向上する暗号装置を得ることができるという効果を奏する。
【００２３】
また、請求項４の発明によれば復号装置は、暗号化されたデータに対して復号化処理を行なった後、所定の自己相関性復元処理を施して平文データを出力するので、復号化の処理にかかる負荷を抑制しつつ、強固な暗号通信を行なう復号装置を得ることができるという効果を奏する。
【００２４】
また、請求項５の発明によれば復号方法は、暗号化されたデータに対して復号化処理を行なった後、所定の自己相関性復元処理を施して平文データを出力するので、復号化の処理にかかる負荷を抑制しつつ、強固な暗号通信を行なう復号方法を得ることができるという効果を奏する。
【００２５】
また、請求項６の発明によれば暗号装置は、平文データに対して自己相関性を低減させる処理を行なって二次データとして出力し、二次データを暗号化するので、暗号化や復号化の処理にかかる負荷を抑制しつつ、暗号強度を向上する暗号装置を得ることができるという効果を奏する。
【発明を実施するための最良の形態】
【００２６】
以下に添付図面を参照して、この発明に係る暗号装置、暗号方法、復号装置および復号方法の好適な実施例について詳細に説明する。
【実施例】
【００２７】
図１は、本発明の実施の形態である暗号通信の概念を説明する説明図である。同図では、サーバ１と端末装置２がネットワーク３を介して接続している。ここで、端末装置は車載用の情報端末や携帯電話などである。
【００２８】
同図に示すように、サーバ１から端末装置２に通信を行なう場合、まず平文のデータに対して自己相関性を低減させる処理を行ない、その結果得られたデータである二次データに対して暗号化処理を行なう。そして、暗号化によって生成された暗号文をネットワーク３を介して送信する。
【００２９】
従って、端末装置２は受信した暗号文に対して復号化処理を行なうことで二次データを取り出すことができ、取り出した二次データに対して自己相関性を復元する処理（後処理）を行なって平文データを得る。
【００３０】
同様に、端末装置２からサーバ１に通信を行なう場合、端末装置２が平文のデータに対して自己相関性を低減させる処理を行ない、その結果得られたデータである二次データに対して暗号化処理を行なう。そして、暗号化によって生成された暗号文をネットワーク３を介してサーバ１に送信する。
【００３１】
その後、サーバ１は受信した暗号文に対して復号化処理を行なうことで二次データを取り出し、さらに取り出した二次データに対して自己相関性を復元する処理（後処理）を行なって平文データを得る。
【００３２】
このように、暗号化に先立って予め自己相関性を低減させる処理を施すことで、比較的処理負荷が小さく、暗号化処理自体によって得られる暗号強度の小さいアルゴリズムを採用した場合であっても、最終的に得られる暗号文の自己相関性を低減してデータの偏りを減らし、解読の難度を上げることができる。
【００３３】
つづいてサーバ１の具体的な構成例について、図２に示した概要構成図を参照して説明する。同図に示すように、サーバ１はその内部に前処理部１０、暗号化処理部２０、送信処理部３１、認証ＩＤ作成部３２、端末情報データベース３３、認証処理部３４、受信処理部３５、復号化処理部４０、後処理部５０、ルール変更処理部６０およびルール記憶部６１を有する。
【００３４】
前処理部１０は、平文のデータに対して自己相関性を低減させる処理を行なって二次データを作成する処理部であり、作成した二次データを暗号化処理部２０に出力する。暗号化処理部２０は、二次データに対して暗号化処理を行なって暗号データを作成する処理部であり、作成した暗号データを送信処理部３１および認証ＩＤ作成部３２に出力する。
【００３５】
端末情報データベース３３は、サーバ１と通信する端末装置群（端末装置２を含む）について、各端末装置に固有の識別情報を格納している。認証ＩＤ作成部３２は、データの送信先である端末装置の識別情報と、暗号化処理部２０が作成した暗号データとを用いて、通信時に使用する認証ＩＤを作成する。そして、送信処理部３１は、暗号化処理部２０が作成した暗号データに認証ＩＤ作成部３２が作成した認証ＩＤを付加して送信する処理を行なう。
【００３６】
受信処理部３５は、外部からデータを受信した場合に、認証ＩＤを認証処理部３４に、暗号データ（受信データの本文）を認証処理部３４と復号化処理部４０にそれぞれ出力する。
【００３７】
認証処理部３４は、認証ＩＤと暗号データ、および端末情報データベース３３を用いて認証処理を実行し、データの送信元が正規の利用者であることを確認する処理を行なう。
【００３８】
復号化処理部４０は、受信処理部３５が出力した暗号データに対して復号化処理を行なう処理部である。この復号化処理によって、暗号データから二次データ（平文データに自己相関性低減処理を施したデータ）を得ることができる。後処理部５０は、復号化処理部４０が出力する二次データに対して自己相関性を復元させる処理を行ない、平文データとして出力する。
【００３９】
ルール記憶部６１は、前処理部１０による自己相関性低減処理、暗号化処理部２０による暗号化処理、認証ＩＤ作成部３２による認証ＩＤ作成処理の具体的な内容を記憶している。また、認証処理部３４は、認証処理時に認証ＩＤの作成ルールを参照して認証処理を実行し、復号化処理部４０は暗号化処理の処理内容を参照して復号化処理を実行し、後処理部５０は自己相関性低減処理の処理内容を参照して自己相関性復元処理を実行する。
【００４０】
ルール変更処理部６０は、ルール記憶部６１が記憶するこれらの処理内容を変更する処理を行なう。また、ルール変更処理部６０による変更処理自体の処理内容についてもルール記憶部６１に記憶されており、この変更処理自体の内容も変更可能である。
【００４１】
端末装置２の具体的な構成は、図３に示すようにサーバ１が有する端末情報データベース３３に替えて端末識別情報３６を有し、認証ＩＤ作成部３７および認証処理部３８がこの端末識別情報３６を用いて認証ＩＤの作成処理や認証処理を行なう点が異なる他はサーバ１と同一であるので、同一の構成要素に同一の符号を付して説明を省略する。
【００４２】
端末識別情報３６は、自端末に固有の情報の識別情報である。認証ＩＤ作成部３７は、この端末識別情報３６と、暗号化処理部２０が作成した暗号データとを用いて、通信時に使用する認証ＩＤを作成する。また、認証処理部３８は、受信した認証ＩＤと暗号データ、および端末識別情報３６を用いて認証処理を実行し、データの送信元が正規の利用者であることを確認する処理を行なう。
【００４３】
つぎに、各処理部の詳細な構成と具体的な処理内容について説明する。まず前処理部１０は、その内部に平文受付部１１、分類処理部１２、特定ビット切捨て部１３および圧縮処理部１４を有する。
【００４４】
平文受付部１１は、暗号化して送信すべき平文データを受け付ける処理部であり、分類処理部１２は、平文受付部１１が受け付けた平文データを分類する処理を行なう。具体的には、分類処理部１２は、平文データを「特定のビット列を含むデータ」、「何らかの圧縮が行なわれている圧縮済みデータ」、「特定のビット列を含まず、圧縮も行なわれていないデータ」の何れかに分類する。
【００４５】
特定ビット切捨て部１３は、分類処理部１２によって「特定のビット列を含むデータ」に分類された平文データに対し、特定のビット列を切り捨てる処理を行なう。例えば、図４に示すように、平文データが「上位３ビットが０」であるデータの集合である場合には、共通する上位３ビットを切捨てて残りのデータを連結し、切捨ての条件、すなわち上位３ビットが０であることを示す識別情報を付加して二次データとして出力する。
【００４６】
なお、ここでは上位３ビットが全て０である場合を例に説明をおこなったが、例えば下位のビットが揃っている場合、内部の特定の位置に共通するビット列が存在する場合などについても同様に取り扱うことができる。また、共通するビット列は全て０である場合や全て１である場合に限らず、例えば「００１０１」などの任意のビット列が共通している場合にも同様に取り扱うことができる。
【００４７】
このように、共通するビット列を切り捨てることで、平文データの自己相関性を簡易に低減することが可能である。
【００４８】
一方、分類処理部１２によって「何らかの圧縮が行なわれている圧縮済みデータ」に分類されたデータについては、圧縮によって自己相関性が低減されていると考えられるので、そのまま二次データとして出力する。
【００４９】
さらに、分類処理部１２によって特定のビット列を含まず、圧縮も行なわれていないデータ」に分類された平文データに対しては、圧縮処理部１４が所定の圧縮処理を行なうことで自己相関性を低減し、二次データとして出力する。ここで、通常の圧縮アルゴリズムでは圧縮後のファイルの冒頭にデータの圧縮方式を示す情報が付加されるが、圧縮処理部１４はこの圧縮方式を示す情報を排除することで、第三者による復元を阻害する。
【００５０】
このように、平文データを分類して分類結果に応じた処理を行なうことで、簡易にかつ効果的に平文データの自己相関性を低減することができる。なお、前処理部１０が出力する二次データに対し、いずれの分類に従った処理を行なったかを示す情報を付加しても良い。
【００５１】
また、分類処理部１２による分類の処理内容は分類ルールとして、特定ビット切捨て部１３による処理内容はビット切捨てルールとして、圧縮処理部１４による処理内容は圧縮ルールとしてそれぞれルール記憶部６１に記憶されている。
【００５２】
つづいて、暗号化処理部２０の構成と処理について説明する。暗号化処理部２０は、その内部にブロック分割処理部２１、ブロック入替処理部２２、偽装処理部２３、換字処理部２４を有する。
【００５３】
ブロック分割処理部２１は、前処理部１０が出力した二次データを図５に示すように複数の断片（ブロック）に分割する。ここで、１つのブロックの大きさは例えば１〜２５６バイトの範囲で不等間隔となるように分割することが好ましい。また、二次データ自体の大きさが例えば４バイト以下などである場合には分割をおこなわない。
【００５４】
ブロック入替処理部２２は、同じく図５に示したように、ブロック分割処理部２１によって生成されたブロックを入れ替える（並べ替える）処理を行なう。この入替後のブロックの順序は、元の二次データ上での出現順序に対してランダムに見える必要がある。
【００５５】
偽装処理部２３は、ブロック入替処理部２２が出力したブロック列を図６に示すように偽装データに埋め込んで、三次データとして出力する処理を行なう。偽装データは、元の平文データとは無関係な実行可能バイナリや画像データ、音声データなどである。また、この偽装データへのブロック列の埋め込みを行なった後にも、偽装データ自体に矛盾が生じないようにする必要がある。そのため、ブロックを埋め込む場所は、偽装データにおいて任意のビットパターンの出現が認められている領域となる。
【００５６】
例えば、実行可能バイナリでは、任意のビットパターンの出現が認められているのは、命令列、データ初期値、固定データなどのセクションである。仮に、ヘッダセクションや再配置情報のセクションにブロック列を埋め込んだ場合、埋め込み後の偽装データ（三次データ）に対して実行可能バイナリとしての正当性検査がおこなわれた際に、埋め込んだブロックが不審なデータとして検出されてしまう可能性がある。
【００５７】
さらに、元々の偽装データには、その各所にファイル内の他のセクションやデータを指すポインタが埋め込まれている。このため、ブロックを埋め込む際には各種ポインタの値を補正し、ポインタと指標先のデータとの関係の整合性を保つ。
【００５８】
なお、元々が実行可能バイナリや画像データ、音声データなどである偽装データには、その冒頭にデータの種別を示す情報が付加されている。これを残してしまうと、次段で三次データに対して換字法による暗号化を行なった際に、解読（換字後の暗号化データから三次データを特定）するための手掛かりとなる可能性がある。そこで、偽装データに本来備わっていた、その種別を示す情報は、偽装処理部２３によって除去しておく。
【００５９】
ところで、偽装データとして使用するデータは、そのサイズが埋め込んだブロックのサイズに比して大きいほど埋め込んだブロックの特定が困難になり、偽装効果が高くなる。しかしながら、偽装データのサイズが大きいと後段の処理や通信時における負荷も大きくなる。
【００６０】
そこで、偽装処理部２３は、その内部に偽装データ選択部２３ａを設け、この偽装データ選択部２３ａが元のデータの重要度やデータサイズに基づいて偽装データを選択する。例えば、重要度の高いデータを送信する場合には、暗号強度最優先モードとしてサイズの大きい偽装データを使用し、重要度の低いデータを送信する場合には通信量最優先モードとしてサイズの小さい偽装データを使用する。また、これらのモードの間にさらに１以上の中間モードを設定し、適宜選択することが好ましい。
【００６１】
なお、偽造データはサーバ１や端末装置２内部に予め用意したものから選択しても良いし、偽装処理を行なう際に作成しても良い。また、サーバ１や端末装置２が有する他のデータのうち、偽装データとして使用可能なものから選択してもよい。
【００６２】
換字処理部２４は、偽装処理部２３が出力した三次データに対して、換字法を用いた暗号化処理を行ない、処理結果を暗号データとして出力する。
【００６３】
ブロック分割処理部２１による分割の処理内容を示す分割ルール、ブロック入替処理部２２によるブロック入替の処理内容を示す入替ルール、偽装処理部２３による埋め込みの処理内容および偽装データ選択部２３ａによる偽装データ選択の処理内容を示す偽装ルール、換字処理部２４が換字に使用する換字表は、それぞれルール記憶部６１に記憶されている。
【００６４】
認証ＩＤ作成部３２は、図７に示すように、端末情報データベース３３からデータの送信先である端末装置の端末識別情報を取得し、この端末識別情報と暗号データとを用いて認証ＩＤを作成する。例えば、暗号データと端末識別情報とからそれぞれ所定のルールでデータを抜き出して結合する、または、一方向性ハッシュ関数を用いてハッシュ値を算出し、その排他的論理輪を作成する、などの処理によって認証ＩＤを作成する。
【００６５】
このように、暗号データと端末識別情報から認証ＩＤを作成することで接続の度に異なる認証ＩＤを使用することとなり、端末識別情報そのものを公開鍵として使用する場合に比してなりすましなどによる不正な接続をより効果的に防ぐことができる。なお、認証ＩＤ作成部３２による認証ＩＤ作成処理の処理内容は、ＩＤ作成ルールとしてルール記憶部６１に記憶されている。
【００６６】
ルール変更処理部６０は、既に述べた各種ルールを変更する処理を行なう。自己相関性低減処理や暗号化処理、ＩＤ作成処理などの処理の内容や、それらに使用される各種パラメータが固定されていると、多くの事例を収集・分析することによって第三者に処理内容やパラメータを見破られる可能性があるためである。
【００６７】
具体的には、処理内容やパラメータ、すなわちルールに対して有効回数の上限を設定し、使用回数が上限に達した場合には新しいルールに更新する。
【００６８】
この機能を実現するため、各ルールには「常用ルール」と「予備ルール」の２組を保持しておく。そして、常用ルールに「使用可能回数の残り」を示すカウンタを用意し、使用の度に更新する。
【００６９】
この「使用可能回数の残り」が「０」となった場合には、ルール変更処理部６０はそれまで「予備ルール」であったルールを「常用ルール」に切り替え、以降の処理で使用する。さらに、ルール変更処理部６０は、新しい「予備ルール」を作成することで、次回のルール切り替えに備える。
【００７０】
このルール変更処理部６０による変更処理自体の処理内容についてもルール記憶部６１に変更ルールとして記憶されており、この変更処理自体の内容を変更することで安全性をさらに高めることができる。
【００７１】
なお、新たな予備ルールの変更はサーバ１で行ない、端末装置２には変更した新たなルールを通知する。端末装置２では、受け取った予備ルールをルール記憶部６１に格納する。
【００７２】
復号化処理部４０は、その内部に換字処理部４１、偽装解除部４２、ブロック入替処理部４３、ブロック結合処理部４４を有する。換字処理部４１は、換字表を用いて暗号化データに施された換字を解除して、三次データに復元する処理部である。
【００７３】
偽装解除部４２は、偽装ルールに基づいて、三次データに埋め込まれていたブロックを取り出す処理を行なう。さらに、このブロックの順序をブロック入替処理部４３が入れ替えルールに基づいて並べ替え、元の順序に戻した後、ブロック結合処理部４４が結合処理を行なうことで二次データを得ることができる。
【００７４】
後処理部５０は、その内部に分類処理部５１、特定ビット付加部５２、解凍処理部５３、平文出力部５４を有する。
【００７５】
分類処理部５１は、その二次データに対してどのような自己相関性低減処理が行なわれているかを識別して分類する処理部である。この分類の結果、二次データが特定のビットを切り捨てられている場合、特定ビット付加部５２によって切り捨てられたビットを復元して平文出力部５４に送る。
【００７６】
また、二次データが自己相関性提言処理において所定の圧縮処理を施されている場合には、解凍処理部５３によって解凍処理をおこなって自己相関性を復元し、平文出力部５４に送る。さらに、二次データが自己相関性低減処理において何の処理も施されていない場合（すなわち、予め何らかの圧縮処理が行なわれている圧縮済みデータであった場合）には、分類処理部５１はそのデータをそのまま平文出力部５４に送る。
【００７７】
そして、平文出力部５４は、特定ビット付加部５２、解凍処理部５３もしくは分類処理部５１が出力したデータを平文データとして出力する。
【００７８】
つぎに、前処理部１０の処理動作について、図８のフローチャートを参照して説明する。この処理フローは、平文受付部１１が暗号化すべき平文データを受け付けた場合に開始される。
【００７９】
分類処理部１２は、まず、平文データに特定のビット列が存在するか否かを判定する（ステップＳ１０１）。その結果、特定のビット列が存在する場合には、特定ビット切捨て部１３がそのビット列を切り捨てた（ステップＳ１０５）後、二次データとして出力し（ステップＳ１０４）、処理を終了する。
【００８０】
一方、特定のビット列が存在しない場合（ステップＳ１０１，Ｎｏ）、次に分類処理部は平文データが圧縮済ファイルであるか否かを判定する（ステップＳ１０２）。その結果、圧縮済ファイルである場合には（ステップＳ１０２，Ｙｅｓ）そのまま二次データとして出力して（ステップＳ１０４）処理を終了し、圧縮済ファイルでない場合（ステップＳ１０２，Ｎｏ）には、圧縮処理部１４によって所定の圧縮処理を施した（ステップＳ１０３）後、二次データとして出力し（ステップＳ１０４）、処理を終了する。
【００８１】
上述してきたように、本実施例にかかるサーバ１および端末装置２は、暗号化に先立って予め自己相関性を低減させる処理を施すことで、暗号化や復号化の処理にかかる負荷を抑制しつつ、暗号強度を向上している。
【００８２】
そのため、車載端末や携帯端末など限られた演算能力（低速のＣＰＵなど）しか持たない端末であっても必要に応じて暗号通信をおこなうことができる。また、処理負荷の軽減が求められる通信においても、許容される処理負荷の範囲内で通信内容を秘匿することができる。
【産業上の利用可能性】
【００８３】
以上のように、本発明にかかる暗号装置、暗号方法、復号装置および復号方法は、通信の秘匿に有用であり、特に暗号強度の処理負荷のバランスを取ることに適している。
【図面の簡単な説明】
【００８４】
【図１】本発明の実施の形態である暗号通信の概念を説明する説明図である。
【図２】図１に示したサーバの概要構成を示す概要構成図である。
【図３】図１に示した端末装置の概要構成を示す概要構成図である。
【図４】特定ビットの切捨てによる自己相関性低減について説明する説明図である。
【図５】二次データの分割と並べ替えについて説明する説明図である。
【図６】偽装データへの埋め込みについて説明する説明図である。
【図７】認証ＩＤの作成について説明する説明図である。
【図８】自己相関性低減処理の処理動作について説明するフローチャートである。
【符号の説明】
【００８５】
１    サーバ
２    端末装置
３    ネットワーク
１０    前処理部
１１    平文受付部
１２    分類処理部
１３    特定ビット切捨て部
１４    圧縮処理部
２０    暗号化処理部
２１    ブロック分割処理部
２２    ブロック入替処理部
２３    偽装処理部
２３ａ  偽装データ選択部
２４    換字処理部
３１    送信処理部
３２，３７    認証ＩＤ作成部
３３    端末情報データベース
３４，３８    認証処理部
３５    受信処理部
３６    端末識別情報
４０    復号化処理部
４１    換字処理部
４２    偽装解除部
４３    ブロック入替処理部
４４    ブロック結合処理部
５０    後処理部
５１    分類処理部
５２    特定ビット付加部
５３    解凍処理部
５４    平文出力部
６０    ルール変更処理部
６１    ルール記憶部
【図１】
2007193137.tif 000003
【図２】
2007193137.tif 000004
【図３】
2007193137.tif 000005
【図４】
2007193137.tif 000006
【図５】
2007193137.tif 000007
【図６】
2007193137.tif 000008
【図７】
2007193137.tif 000009
【図８】
2007193137.tif 000010