説明

暗号装置、暗号方法、復号装置および復号方法

【課題】暗号化や復号化の処理にかかる負荷を抑制しつつ、暗号強度を向上すること。
【解決手段】サーバ1から端末装置2に通信を行なう場合、まず平文のデータに対して自己相関性を低減させる処理を行ない、その結果得られたデータである二次データに対して暗号化処理を行なう。そして、暗号化によって生成された暗号文をネットワーク3を介して送信する。端末装置2は受信した暗号文に対して復号化処理を行なうことで二次データを取り出すことができ、取り出した二次データに対して自己相関性を復元する処理(後処理)を行なって平文データを得る。

【発明の詳細な説明】
【技術分野】
【0001】
この発明は、平文データを暗号化する暗号装置、暗号方法および暗号化されたデータを復号化する復号装置、復号方法に関し、特に暗号化や復号化の処理にかかる負荷を抑制しつつ、暗号強度を向上する暗号装置、暗号方法、復号装置および復号方法に関する。
【背景技術】
【0002】
従来、通信内容を第三者から秘匿するため通信の暗号化が行なわれてきた。例えば、特許文献1は、音声データを圧縮し、その後暗号化する技術を開示しており、特許文献2は、データを換字処理によって暗号化する技術を開示している。また、特許文献3は、特定のテーブルを使用した暗号化を開示しており、特許文献4は暗号化を行なう際に入力データを所定の値に変換する変換表の設定について開示している。
【0003】
【特許文献1】特開平8−316951号公報
【特許文献2】特許第262223号公報
【特許文献3】特開平9−114373号公報
【特許文献4】特許第3029381号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
ところで、コンピュータが広く利用され、またその処理能力が著しく向上している現在、古典的な暗号方法は簡易に解読され得る状況となっている。そこで、強固な暗号強度が必要である場合には代数曲線理論などを利用した高度な暗号が採用されることが多い。
【0005】
しかしながら、高度な暗号は正当な利用者においても古典的な暗号に比べて必要な計算量が極めて大きくなる。そのため、車載端末や携帯端末など限られた演算能力(低速のCPUなど)しか持たない端末では、全ての通信に暗号化を行なうことが困難であるという問題点があった。
【0006】
一方で、暗号の不正な解読には、通信データの偏り(特定のビット列が繰り返し現れるなど、自己相関性が高い状態)を手掛かりとする手法が知られている。特に平文に大きな偏りがある場合、暗号化によってかかる偏りを解消し、十分な暗号強度を確保するためにはより高度な暗号処理が必要となり、計算量のさらなる増大を引き起こしていた。
【0007】
本発明は、上述した従来技術における問題点を解消し、課題を解決するためになされたものであり、暗号化や復号化の処理にかかる負荷を抑制しつつ、暗号強度を向上する暗号装置、暗号方法、復号装置および復号方法を提供することを目的とする。
【課題を解決するための手段】
【0008】
上述した課題を解決し、目的を達成するため、請求項1の発明に係る暗号方法は、平文データを暗号化する暗号方法であって、前記平文データに対して自己相関性を低減させる処理を行なって二次データとして出力する自己相関性低減工程と、前記二次データを暗号化する暗号化処理工程と、を含んだことを特徴とする。
【0009】
この請求項1の発明によれば暗号方法は、平文データに対して自己相関性を低減させる処理を行なって二次データとして出力し、二次データを暗号化する。
【0010】
また、請求項2の発明に係る暗号方法は、請求項1に記載の発明において、前記自己相関性低減工程は、前記平文データから特定のビット列を切り捨てて前記二次データとして出力することを特徴とする。
【0011】
この請求項2の発明によれば暗号方法は、平文データから特定のビット列を切り捨てて二次データとして出力し、二次データを暗号化する。
【0012】
また、請求項3の発明に係る暗号方法は、請求項1に記載の発明において、前記自己相関性低減方法は、前記平文データが特定のビット列を含む場合には当該ビット列を切り捨てて前記二次データとして出力し、前記平文データが圧縮済データである場合は当該平文データをそのまま前記二次データとして出力し、前記平文データが前記特定のビット列を含まず、かつ圧縮済データでない場合に当該平文データに所定の圧縮処理を行なって前記二次データとして出力することを特徴とする。
【0013】
この請求項3の発明によれば暗号方法は、平文データが特定のビット列を含む場合には当該ビット列を切り捨てて二次データとして出力し、平文データが圧縮済データである場合は当該平文データをそのまま二次データとして出力し、平文データが特定のビット列を含まず、かつ圧縮済データでない場合に当該平文データに所定の圧縮処理を行なって二次データとして出力し、二次データを暗号化する。
【0014】
また、請求項4の発明に係る復号装置は、暗号化されたデータを復号化する復号装置であって、前記暗号化されたデータに対して復号化処理を行なう復号化処理手段と、前記復号化処理によって得られたデータに対し、所定の自己相関性復元処理を施して平文データを出力する自己相関性復元手段と、を備えたことを特徴とする。
【0015】
この請求項4の発明によれば復号装置は、暗号化されたデータに対して復号化処理を行なった後、所定の自己相関性復元処理を施して平文データを出力する。
【0016】
また、請求項5の発明に係る復号方法は、暗号化されたデータを復号化する復号方法であって、前記暗号化されたデータに対して復号化処理を行なう復号化処理工程と、前記復号化処理によって得られたデータに対し、所定の自己相関性復元処理を施して平文データを出力する自己相関性復元工程と、を含んだことを特徴とする。
【0017】
この請求項5の発明によれば復号方法は、暗号化されたデータに対して復号化処理を行なった後、所定の自己相関性復元処理を施して平文データを出力する。
【0018】
また、請求項6の発明に係る暗号装置は、平文データを暗号化する暗号装置であって、前記平文データに対して自己相関性を低減させる処理を行なって二次データとして出力する自己相関性低減手段と、前記二次データを暗号化する暗号化処理手段と、を備えたことを特徴とする。
【0019】
この請求項6の発明によれば暗号装置は、平文データに対して自己相関性を低減させる処理を行なって二次データとして出力し、二次データを暗号化する。
【発明の効果】
【0020】
請求項1の発明によれば暗号方法は、平文データに対して自己相関性を低減させる処理を行なって二次データとして出力し、二次データを暗号化するので、暗号化や復号化の処理にかかる負荷を抑制しつつ、暗号強度を向上する暗号方法を得ることができるという効果を奏する。
【0021】
また、請求項2の発明によれば暗号方法は、平文データから特定のビット列を切り捨てて二次データとして出力し、二次データを暗号化するので、簡易な処理で暗号化や復号化の処理にかかる負荷を抑制し、かつ暗号強度を向上する暗号方法を得ることができるという効果を奏する。
【0022】
また、請求項3の発明によれば暗号方法は、平文データが特定のビット列を含む場合には当該ビット列を切り捨てて二次データとして出力し、平文データが圧縮済データである場合は当該平文データをそのまま二次データとして出力し、平文データが特定のビット列を含まず、かつ圧縮済データでない場合に当該平文データに所定の圧縮処理を行なって二次データとして出力し、二次データを暗号化するので、データの種別に応じて暗号化や復号化の処理にかかる負荷を抑制しつつ、暗号方法を向上する暗号装置を得ることができるという効果を奏する。
【0023】
また、請求項4の発明によれば復号装置は、暗号化されたデータに対して復号化処理を行なった後、所定の自己相関性復元処理を施して平文データを出力するので、復号化の処理にかかる負荷を抑制しつつ、強固な暗号通信を行なう復号装置を得ることができるという効果を奏する。
【0024】
また、請求項5の発明によれば復号方法は、暗号化されたデータに対して復号化処理を行なった後、所定の自己相関性復元処理を施して平文データを出力するので、復号化の処理にかかる負荷を抑制しつつ、強固な暗号通信を行なう復号方法を得ることができるという効果を奏する。
【0025】
また、請求項6の発明によれば暗号装置は、平文データに対して自己相関性を低減させる処理を行なって二次データとして出力し、二次データを暗号化するので、暗号化や復号化の処理にかかる負荷を抑制しつつ、暗号強度を向上する暗号装置を得ることができるという効果を奏する。
【発明を実施するための最良の形態】
【0026】
以下に添付図面を参照して、この発明に係る暗号装置、暗号方法、復号装置および復号方法の好適な実施例について詳細に説明する。
【実施例】
【0027】
図1は、本発明の実施の形態である暗号通信の概念を説明する説明図である。同図では、サーバ1と端末装置2がネットワーク3を介して接続している。ここで、端末装置は車載用の情報端末や携帯電話などである。
【0028】
同図に示すように、サーバ1から端末装置2に通信を行なう場合、まず平文のデータに対して自己相関性を低減させる処理を行ない、その結果得られたデータである二次データに対して暗号化処理を行なう。そして、暗号化によって生成された暗号文をネットワーク3を介して送信する。
【0029】
従って、端末装置2は受信した暗号文に対して復号化処理を行なうことで二次データを取り出すことができ、取り出した二次データに対して自己相関性を復元する処理(後処理)を行なって平文データを得る。
【0030】
同様に、端末装置2からサーバ1に通信を行なう場合、端末装置2が平文のデータに対して自己相関性を低減させる処理を行ない、その結果得られたデータである二次データに対して暗号化処理を行なう。そして、暗号化によって生成された暗号文をネットワーク3を介してサーバ1に送信する。
【0031】
その後、サーバ1は受信した暗号文に対して復号化処理を行なうことで二次データを取り出し、さらに取り出した二次データに対して自己相関性を復元する処理(後処理)を行なって平文データを得る。
【0032】
このように、暗号化に先立って予め自己相関性を低減させる処理を施すことで、比較的処理負荷が小さく、暗号化処理自体によって得られる暗号強度の小さいアルゴリズムを採用した場合であっても、最終的に得られる暗号文の自己相関性を低減してデータの偏りを減らし、解読の難度を上げることができる。
【0033】
つづいてサーバ1の具体的な構成例について、図2に示した概要構成図を参照して説明する。同図に示すように、サーバ1はその内部に前処理部10、暗号化処理部20、送信処理部31、認証ID作成部32、端末情報データベース33、認証処理部34、受信処理部35、復号化処理部40、後処理部50、ルール変更処理部60およびルール記憶部61を有する。
【0034】
前処理部10は、平文のデータに対して自己相関性を低減させる処理を行なって二次データを作成する処理部であり、作成した二次データを暗号化処理部20に出力する。暗号化処理部20は、二次データに対して暗号化処理を行なって暗号データを作成する処理部であり、作成した暗号データを送信処理部31および認証ID作成部32に出力する。
【0035】
端末情報データベース33は、サーバ1と通信する端末装置群(端末装置2を含む)について、各端末装置に固有の識別情報を格納している。認証ID作成部32は、データの送信先である端末装置の識別情報と、暗号化処理部20が作成した暗号データとを用いて、通信時に使用する認証IDを作成する。そして、送信処理部31は、暗号化処理部20が作成した暗号データに認証ID作成部32が作成した認証IDを付加して送信する処理を行なう。
【0036】
受信処理部35は、外部からデータを受信した場合に、認証IDを認証処理部34に、暗号データ(受信データの本文)を認証処理部34と復号化処理部40にそれぞれ出力する。
【0037】
認証処理部34は、認証IDと暗号データ、および端末情報データベース33を用いて認証処理を実行し、データの送信元が正規の利用者であることを確認する処理を行なう。
【0038】
復号化処理部40は、受信処理部35が出力した暗号データに対して復号化処理を行なう処理部である。この復号化処理によって、暗号データから二次データ(平文データに自己相関性低減処理を施したデータ)を得ることができる。後処理部50は、復号化処理部40が出力する二次データに対して自己相関性を復元させる処理を行ない、平文データとして出力する。
【0039】
ルール記憶部61は、前処理部10による自己相関性低減処理、暗号化処理部20による暗号化処理、認証ID作成部32による認証ID作成処理の具体的な内容を記憶している。また、認証処理部34は、認証処理時に認証IDの作成ルールを参照して認証処理を実行し、復号化処理部40は暗号化処理の処理内容を参照して復号化処理を実行し、後処理部50は自己相関性低減処理の処理内容を参照して自己相関性復元処理を実行する。
【0040】
ルール変更処理部60は、ルール記憶部61が記憶するこれらの処理内容を変更する処理を行なう。また、ルール変更処理部60による変更処理自体の処理内容についてもルール記憶部61に記憶されており、この変更処理自体の内容も変更可能である。
【0041】
端末装置2の具体的な構成は、図3に示すようにサーバ1が有する端末情報データベース33に替えて端末識別情報36を有し、認証ID作成部37および認証処理部38がこの端末識別情報36を用いて認証IDの作成処理や認証処理を行なう点が異なる他はサーバ1と同一であるので、同一の構成要素に同一の符号を付して説明を省略する。
【0042】
端末識別情報36は、自端末に固有の情報の識別情報である。認証ID作成部37は、この端末識別情報36と、暗号化処理部20が作成した暗号データとを用いて、通信時に使用する認証IDを作成する。また、認証処理部38は、受信した認証IDと暗号データ、および端末識別情報36を用いて認証処理を実行し、データの送信元が正規の利用者であることを確認する処理を行なう。
【0043】
つぎに、各処理部の詳細な構成と具体的な処理内容について説明する。まず前処理部10は、その内部に平文受付部11、分類処理部12、特定ビット切捨て部13および圧縮処理部14を有する。
【0044】
平文受付部11は、暗号化して送信すべき平文データを受け付ける処理部であり、分類処理部12は、平文受付部11が受け付けた平文データを分類する処理を行なう。具体的には、分類処理部12は、平文データを「特定のビット列を含むデータ」、「何らかの圧縮が行なわれている圧縮済みデータ」、「特定のビット列を含まず、圧縮も行なわれていないデータ」の何れかに分類する。
【0045】
特定ビット切捨て部13は、分類処理部12によって「特定のビット列を含むデータ」に分類された平文データに対し、特定のビット列を切り捨てる処理を行なう。例えば、図4に示すように、平文データが「上位3ビットが0」であるデータの集合である場合には、共通する上位3ビットを切捨てて残りのデータを連結し、切捨ての条件、すなわち上位3ビットが0であることを示す識別情報を付加して二次データとして出力する。
【0046】
なお、ここでは上位3ビットが全て0である場合を例に説明をおこなったが、例えば下位のビットが揃っている場合、内部の特定の位置に共通するビット列が存在する場合などについても同様に取り扱うことができる。また、共通するビット列は全て0である場合や全て1である場合に限らず、例えば「00101」などの任意のビット列が共通している場合にも同様に取り扱うことができる。
【0047】
このように、共通するビット列を切り捨てることで、平文データの自己相関性を簡易に低減することが可能である。
【0048】
一方、分類処理部12によって「何らかの圧縮が行なわれている圧縮済みデータ」に分類されたデータについては、圧縮によって自己相関性が低減されていると考えられるので、そのまま二次データとして出力する。
【0049】
さらに、分類処理部12によって特定のビット列を含まず、圧縮も行なわれていないデータ」に分類された平文データに対しては、圧縮処理部14が所定の圧縮処理を行なうことで自己相関性を低減し、二次データとして出力する。ここで、通常の圧縮アルゴリズムでは圧縮後のファイルの冒頭にデータの圧縮方式を示す情報が付加されるが、圧縮処理部14はこの圧縮方式を示す情報を排除することで、第三者による復元を阻害する。
【0050】
このように、平文データを分類して分類結果に応じた処理を行なうことで、簡易にかつ効果的に平文データの自己相関性を低減することができる。なお、前処理部10が出力する二次データに対し、いずれの分類に従った処理を行なったかを示す情報を付加しても良い。
【0051】
また、分類処理部12による分類の処理内容は分類ルールとして、特定ビット切捨て部13による処理内容はビット切捨てルールとして、圧縮処理部14による処理内容は圧縮ルールとしてそれぞれルール記憶部61に記憶されている。
【0052】
つづいて、暗号化処理部20の構成と処理について説明する。暗号化処理部20は、その内部にブロック分割処理部21、ブロック入替処理部22、偽装処理部23、換字処理部24を有する。
【0053】
ブロック分割処理部21は、前処理部10が出力した二次データを図5に示すように複数の断片(ブロック)に分割する。ここで、1つのブロックの大きさは例えば1〜256バイトの範囲で不等間隔となるように分割することが好ましい。また、二次データ自体の大きさが例えば4バイト以下などである場合には分割をおこなわない。
【0054】
ブロック入替処理部22は、同じく図5に示したように、ブロック分割処理部21によって生成されたブロックを入れ替える(並べ替える)処理を行なう。この入替後のブロックの順序は、元の二次データ上での出現順序に対してランダムに見える必要がある。
【0055】
偽装処理部23は、ブロック入替処理部22が出力したブロック列を図6に示すように偽装データに埋め込んで、三次データとして出力する処理を行なう。偽装データは、元の平文データとは無関係な実行可能バイナリや画像データ、音声データなどである。また、この偽装データへのブロック列の埋め込みを行なった後にも、偽装データ自体に矛盾が生じないようにする必要がある。そのため、ブロックを埋め込む場所は、偽装データにおいて任意のビットパターンの出現が認められている領域となる。
【0056】
例えば、実行可能バイナリでは、任意のビットパターンの出現が認められているのは、命令列、データ初期値、固定データなどのセクションである。仮に、ヘッダセクションや再配置情報のセクションにブロック列を埋め込んだ場合、埋め込み後の偽装データ(三次データ)に対して実行可能バイナリとしての正当性検査がおこなわれた際に、埋め込んだブロックが不審なデータとして検出されてしまう可能性がある。
【0057】
さらに、元々の偽装データには、その各所にファイル内の他のセクションやデータを指すポインタが埋め込まれている。このため、ブロックを埋め込む際には各種ポインタの値を補正し、ポインタと指標先のデータとの関係の整合性を保つ。
【0058】
なお、元々が実行可能バイナリや画像データ、音声データなどである偽装データには、その冒頭にデータの種別を示す情報が付加されている。これを残してしまうと、次段で三次データに対して換字法による暗号化を行なった際に、解読(換字後の暗号化データから三次データを特定)するための手掛かりとなる可能性がある。そこで、偽装データに本来備わっていた、その種別を示す情報は、偽装処理部23によって除去しておく。
【0059】
ところで、偽装データとして使用するデータは、そのサイズが埋め込んだブロックのサイズに比して大きいほど埋め込んだブロックの特定が困難になり、偽装効果が高くなる。しかしながら、偽装データのサイズが大きいと後段の処理や通信時における負荷も大きくなる。
【0060】
そこで、偽装処理部23は、その内部に偽装データ選択部23aを設け、この偽装データ選択部23aが元のデータの重要度やデータサイズに基づいて偽装データを選択する。例えば、重要度の高いデータを送信する場合には、暗号強度最優先モードとしてサイズの大きい偽装データを使用し、重要度の低いデータを送信する場合には通信量最優先モードとしてサイズの小さい偽装データを使用する。また、これらのモードの間にさらに1以上の中間モードを設定し、適宜選択することが好ましい。
【0061】
なお、偽造データはサーバ1や端末装置2内部に予め用意したものから選択しても良いし、偽装処理を行なう際に作成しても良い。また、サーバ1や端末装置2が有する他のデータのうち、偽装データとして使用可能なものから選択してもよい。
【0062】
換字処理部24は、偽装処理部23が出力した三次データに対して、換字法を用いた暗号化処理を行ない、処理結果を暗号データとして出力する。
【0063】
ブロック分割処理部21による分割の処理内容を示す分割ルール、ブロック入替処理部22によるブロック入替の処理内容を示す入替ルール、偽装処理部23による埋め込みの処理内容および偽装データ選択部23aによる偽装データ選択の処理内容を示す偽装ルール、換字処理部24が換字に使用する換字表は、それぞれルール記憶部61に記憶されている。
【0064】
認証ID作成部32は、図7に示すように、端末情報データベース33からデータの送信先である端末装置の端末識別情報を取得し、この端末識別情報と暗号データとを用いて認証IDを作成する。例えば、暗号データと端末識別情報とからそれぞれ所定のルールでデータを抜き出して結合する、または、一方向性ハッシュ関数を用いてハッシュ値を算出し、その排他的論理輪を作成する、などの処理によって認証IDを作成する。
【0065】
このように、暗号データと端末識別情報から認証IDを作成することで接続の度に異なる認証IDを使用することとなり、端末識別情報そのものを公開鍵として使用する場合に比してなりすましなどによる不正な接続をより効果的に防ぐことができる。なお、認証ID作成部32による認証ID作成処理の処理内容は、ID作成ルールとしてルール記憶部61に記憶されている。
【0066】
ルール変更処理部60は、既に述べた各種ルールを変更する処理を行なう。自己相関性低減処理や暗号化処理、ID作成処理などの処理の内容や、それらに使用される各種パラメータが固定されていると、多くの事例を収集・分析することによって第三者に処理内容やパラメータを見破られる可能性があるためである。
【0067】
具体的には、処理内容やパラメータ、すなわちルールに対して有効回数の上限を設定し、使用回数が上限に達した場合には新しいルールに更新する。
【0068】
この機能を実現するため、各ルールには「常用ルール」と「予備ルール」の2組を保持しておく。そして、常用ルールに「使用可能回数の残り」を示すカウンタを用意し、使用の度に更新する。
【0069】
この「使用可能回数の残り」が「0」となった場合には、ルール変更処理部60はそれまで「予備ルール」であったルールを「常用ルール」に切り替え、以降の処理で使用する。さらに、ルール変更処理部60は、新しい「予備ルール」を作成することで、次回のルール切り替えに備える。
【0070】
このルール変更処理部60による変更処理自体の処理内容についてもルール記憶部61に変更ルールとして記憶されており、この変更処理自体の内容を変更することで安全性をさらに高めることができる。
【0071】
なお、新たな予備ルールの変更はサーバ1で行ない、端末装置2には変更した新たなルールを通知する。端末装置2では、受け取った予備ルールをルール記憶部61に格納する。
【0072】
復号化処理部40は、その内部に換字処理部41、偽装解除部42、ブロック入替処理部43、ブロック結合処理部44を有する。換字処理部41は、換字表を用いて暗号化データに施された換字を解除して、三次データに復元する処理部である。
【0073】
偽装解除部42は、偽装ルールに基づいて、三次データに埋め込まれていたブロックを取り出す処理を行なう。さらに、このブロックの順序をブロック入替処理部43が入れ替えルールに基づいて並べ替え、元の順序に戻した後、ブロック結合処理部44が結合処理を行なうことで二次データを得ることができる。
【0074】
後処理部50は、その内部に分類処理部51、特定ビット付加部52、解凍処理部53、平文出力部54を有する。
【0075】
分類処理部51は、その二次データに対してどのような自己相関性低減処理が行なわれているかを識別して分類する処理部である。この分類の結果、二次データが特定のビットを切り捨てられている場合、特定ビット付加部52によって切り捨てられたビットを復元して平文出力部54に送る。
【0076】
また、二次データが自己相関性提言処理において所定の圧縮処理を施されている場合には、解凍処理部53によって解凍処理をおこなって自己相関性を復元し、平文出力部54に送る。さらに、二次データが自己相関性低減処理において何の処理も施されていない場合(すなわち、予め何らかの圧縮処理が行なわれている圧縮済みデータであった場合)には、分類処理部51はそのデータをそのまま平文出力部54に送る。
【0077】
そして、平文出力部54は、特定ビット付加部52、解凍処理部53もしくは分類処理部51が出力したデータを平文データとして出力する。
【0078】
つぎに、前処理部10の処理動作について、図8のフローチャートを参照して説明する。この処理フローは、平文受付部11が暗号化すべき平文データを受け付けた場合に開始される。
【0079】
分類処理部12は、まず、平文データに特定のビット列が存在するか否かを判定する(ステップS101)。その結果、特定のビット列が存在する場合には、特定ビット切捨て部13がそのビット列を切り捨てた(ステップS105)後、二次データとして出力し(ステップS104)、処理を終了する。
【0080】
一方、特定のビット列が存在しない場合(ステップS101,No)、次に分類処理部は平文データが圧縮済ファイルであるか否かを判定する(ステップS102)。その結果、圧縮済ファイルである場合には(ステップS102,Yes)そのまま二次データとして出力して(ステップS104)処理を終了し、圧縮済ファイルでない場合(ステップS102,No)には、圧縮処理部14によって所定の圧縮処理を施した(ステップS103)後、二次データとして出力し(ステップS104)、処理を終了する。
【0081】
上述してきたように、本実施例にかかるサーバ1および端末装置2は、暗号化に先立って予め自己相関性を低減させる処理を施すことで、暗号化や復号化の処理にかかる負荷を抑制しつつ、暗号強度を向上している。
【0082】
そのため、車載端末や携帯端末など限られた演算能力(低速のCPUなど)しか持たない端末であっても必要に応じて暗号通信をおこなうことができる。また、処理負荷の軽減が求められる通信においても、許容される処理負荷の範囲内で通信内容を秘匿することができる。
【産業上の利用可能性】
【0083】
以上のように、本発明にかかる暗号装置、暗号方法、復号装置および復号方法は、通信の秘匿に有用であり、特に暗号強度の処理負荷のバランスを取ることに適している。
【図面の簡単な説明】
【0084】
【図1】本発明の実施の形態である暗号通信の概念を説明する説明図である。
【図2】図1に示したサーバの概要構成を示す概要構成図である。
【図3】図1に示した端末装置の概要構成を示す概要構成図である。
【図4】特定ビットの切捨てによる自己相関性低減について説明する説明図である。
【図5】二次データの分割と並べ替えについて説明する説明図である。
【図6】偽装データへの埋め込みについて説明する説明図である。
【図7】認証IDの作成について説明する説明図である。
【図8】自己相関性低減処理の処理動作について説明するフローチャートである。
【符号の説明】
【0085】
1 サーバ
2 端末装置
3 ネットワーク
10 前処理部
11 平文受付部
12 分類処理部
13 特定ビット切捨て部
14 圧縮処理部
20 暗号化処理部
21 ブロック分割処理部
22 ブロック入替処理部
23 偽装処理部
23a 偽装データ選択部
24 換字処理部
31 送信処理部
32,37 認証ID作成部
33 端末情報データベース
34,38 認証処理部
35 受信処理部
36 端末識別情報
40 復号化処理部
41 換字処理部
42 偽装解除部
43 ブロック入替処理部
44 ブロック結合処理部
50 後処理部
51 分類処理部
52 特定ビット付加部
53 解凍処理部
54 平文出力部
60 ルール変更処理部
61 ルール記憶部

【特許請求の範囲】
【請求項1】
平文データを暗号化する暗号方法であって、
前記平文データに対して自己相関性を低減させる処理を行なって二次データとして出力する自己相関性低減工程と、
前記二次データを暗号化する暗号化処理工程と、
を含んだことを特徴とする暗号方法。
【請求項2】
前記自己相関性低減工程は、前記平文データから特定のビット列を切り捨てて前記二次データとして出力することを特徴とする請求項1に記載の暗号方法。
【請求項3】
前記自己相関性低減方法は、前記平文データが特定のビット列を含む場合には当該ビット列を切り捨てて前記二次データとして出力し、前記平文データが圧縮済データである場合は当該平文データをそのまま前記二次データとして出力し、前記平文データが前記特定のビット列を含まず、かつ圧縮済データでない場合に当該平文データに所定の圧縮処理を行なって前記二次データとして出力することを特徴とする請求項1に記載の暗号方法。
【請求項4】
暗号化されたデータを復号化する復号装置であって、
前記暗号化されたデータに対して復号化処理を行なう復号化処理手段と、
前記復号化処理によって得られたデータに対し、所定の自己相関性復元処理を施して平文データを出力する自己相関性復元手段と、
を備えたことを特徴とする復号装置。
【請求項5】
暗号化されたデータを復号化する復号方法であって、
前記暗号化されたデータに対して復号化処理を行なう復号化処理工程と、
前記復号化処理によって得られたデータに対し、所定の自己相関性復元処理を施して平文データを出力する自己相関性復元工程と、
を含んだことを特徴とする復号方法。
【請求項6】
平文データを暗号化する暗号装置であって、
前記平文データに対して自己相関性を低減させる処理を行なって二次データとして出力する自己相関性低減手段と、
前記二次データを暗号化する暗号化処理手段と、
を備えたことを特徴とする暗号装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate