(57)【要約】【課題】  平文を暗号化するとき、暗号化されたデータの解析が困難な暗文を生成し、復号化によりその利用を図ることを課題とする。【解決手段】  暗号化装置及び復号化装置を有する暗号化復号化システムが提供される。暗号化装置は、平文を複数のブロックに分割する分割手段（１０４）と、平文をブロック毎に異なる暗号化手法で暗号化を行う暗号化手段（１０５〜１０７）とを有し、復号化装置は、暗文を複数のブロックに分割する分割手段と、暗文をブロック毎に異なる復号化手法で復号化を行う復号化手段とを有する。【選択図】        図１
2006292958.tif 000002
【特許請求の範囲】
【請求項１】
平文を複数のブロックに分割する分割手段と、
前記平文をブロック毎に異なる暗号化手法で暗号化を行う暗号化手段と
を有することを特徴とする暗号化装置。
【請求項２】
前記暗号化手段は、複数の暗号化手法が所定の順番で前記ブロック毎に順に選択され前記ブロック毎に異なる暗号化を行うことを特徴とする請求項１記載の暗号化装置。
【請求項３】
前記暗号化手段は、前記平文の最初のブロックの暗号化手法は前記複数の暗号化手法のうちからランダムに選択され、その後は前記ランダムに選択された暗号化手法に応じて所定の順番で暗号化手法が選択される請求項２記載の暗号化装置。
【請求項４】
前記複数の暗号化手法は所定の順番で巡回して選択され、最初の暗号化手法の開始点がランダムに選択される請求項３記載の暗号化装置。
【請求項５】
さらに、前記分割されたブロック長を記録する管理手段を有することを特徴とする請求項１〜４のいずれか１項に記載の暗号化装置。
【請求項６】
さらに、前記最初のブロック又は最後のブロックの暗号化に利用された暗号化手法を記録する管理手段を有することを特徴とする請求項１〜４のいずれか１項に記載の暗号化装置。
【請求項７】
さらに、前記分割されたブロック長、及び前記最初のブロック又は最後のブロックの暗号化に利用された暗号化手法を記録する管理手段を有することを特徴とする請求項１〜４のいずれか１項に記載の暗号化装置。
【請求項８】
暗文を複数のブロックに分割する分割手段と、
前記暗文をブロック毎に異なる復号化手法で復号化を行う復号化手段と
を有することを特徴とする復号化装置。
【請求項９】
前記復号化手段は、複数の復号化手法が所定の順番で前記ブロック毎に順に選択され前記ブロック毎に異なる復号化を行うことを特徴とする請求項８記載の復号化装置。
【請求項１０】
さらに、ブロック長を記憶する管理手段を有し、
前記分割手段は、前記ブロック長で分割することを特徴とする請求項８又は９記載の復号化装置。
【請求項１１】
さらに、前記最初のブロック又は最後のブロックの暗号化に利用された暗号化手法を記憶する管理手段を有し、
前記復号化手段は、最初のブロック又は最後のブロックの暗号化に利用された暗号化手法に応じて、所定の復号化手法の順番で復号化を行うことを特徴とする請求項８又は９記載の復号化装置。
【請求項１２】
さらに、ブロック長、及び最初のブロック又は最後のブロックの暗号化に利用された暗号化手法を記憶する管理手段を有し、
前記分割手段は、前記ブロック長で分割し、
前記復号化手段は、前記最初のブロック又は最後のブロックの暗号化に利用された暗号化手法に応じて、所定の復号化手法の順番で復号化を行うことを特徴とする請求項８又は９記載の復号化装置。
【請求項１３】
前記複数の復号化手法は所定の順番で巡回して選択され、最初の復号化手法の開始点が前記最初のブロック又は最後のブロックの暗号化に利用された暗号化手法に応じて選択される請求項１１又は１２記載の復号化装置。
【請求項１４】
平文を複数のブロックに分割する分割ステップと、
前記平文をブロック毎に異なる暗号化手法で暗号化を行う暗号化ステップと
を有することを特徴とする暗号化方法。
【請求項１５】
暗文を複数のブロックに分割する分割ステップと、
前記暗文をブロック毎に異なる復号化手法で復号化を行う復号化ステップと
を有することを特徴とする復号化方法。
【請求項１６】
請求項１４記載の暗号化方法の各ステップをコンピュータに実行させるためのプログラム。
【請求項１７】
請求項１５記載の復号化方法の各ステップをコンピュータに実行させるためのプログラム。
【請求項１８】
暗号化装置及び復号化装置を有する暗号化復号化システムであって、
前記暗号化装置は、
平文を複数のブロックに分割する分割手段と、
前記平文をブロック毎に異なる暗号化手法で暗号化を行う暗号化手段とを有し、
前記復号化装置は、
暗文を複数のブロックに分割する分割手段と、
前記暗文をブロック毎に異なる復号化手法で復号化を行う復号化手段とを有することを特徴とする暗号化復号化システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、暗号化技術及び復号化技術に関する。
【背景技術】
【０００２】
従来、多量のデータを効率良く処理するために、種々のデータ処理システムが提案されている。しかし、データ処理を行うシステムから、データを一時的にディスクなどの記録媒体上のファイルへデータを出力し、他の処理システムへのデータの受渡しを行うような場合、データを参照される危険性がある。従って、機密保護の点で、このようなデータを解読の困難な方法で暗号化する技術が不可欠である。従来の手段は、暗号化のためのテーブル作成手段や暗号化手法自体を複雑化し、特殊な方法で暗号化することで、解読を困難にするものであった。若しくは、異なる暗号化手法を用いてデータに暗号化を複数かけることで、解読を困難にするものであった（例えば、特許文献１参照）。
【０００３】
【特許文献１】特開2000-10476号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、暗号化のためのテーブル作成手段や暗号化手法自体を複雑化し、特殊な方法で暗号化することで、解読を困難にするという従来の暗号化技術は、データ処理システムの構造を複雑にし、更に、暗号化手法自体が判明してしまうと、その暗号の解読が容易になってしまうという問題点を有している。
【０００５】
更には、異なる暗号化手法を用いてデータに暗号化を複数回かけることは、暗号化の処理に多くの時間を要する。
【０００６】
本発明は、上記事情に鑑みてなされたもので、暗号化対象となる平文を複数のブロックに区切り、そのブロック毎に異なるパターンの変換を適用することにより、より解読困難な暗号化、及びこのように暗号化されたデータの復号化を行うことを目的とする。
【課題を解決するための手段】
【０００７】
本発明の暗号化装置は、平文を複数のブロックに分割する分割手段と、前記平文をブロック毎に異なる暗号化手法で暗号化を行う暗号化手段とを有することを特徴とする。
また、本発明の復号化装置は、暗文を複数のブロックに分割する分割手段と、前記暗文をブロック毎に異なる復号化手法で復号化を行う復号化手段とを有することを特徴とする。
また、本発明の復号化方法は、平文を複数のブロックに分割する分割ステップと、前記平文をブロック毎に異なる暗号化手法で暗号化を行う暗号化ステップとを有することを特徴とする。
また、本発明の復号化方法は、暗文を複数のブロックに分割する分割ステップと、前記暗文をブロック毎に異なる復号化手法で復号化を行う復号化ステップとを有することを特徴とする。
また、本発明のプログラムは、上記の暗号化方法の各ステップをコンピュータに実行させるためのプログラムである。
また、本発明のプログラムは、上記の復号化方法の各ステップをコンピュータに実行させるためのプログラムである。
また、本発明の暗号化復号化システムは、暗号化装置及び復号化装置を有する暗号化復号化システムであって、前記暗号化装置は、平文を複数のブロックに分割する分割手段と、前記平文をブロック毎に異なる暗号化手法で暗号化を行う暗号化手段とを有し、前記復号化装置は、暗文を複数のブロックに分割する分割手段と、前記暗文をブロック毎に異なる復号化手法で復号化を行う復号化手段とを有することを特徴とする。
【発明の効果】
【０００８】
平文を暗号化するとき、同一平文の中で暗号化手法がブロック毎に異なるので、暗号化されたデータの解析が困難な暗文を生成し、復号化によりその利用を図ることができる。
【発明を実施するための最良の形態】
【０００９】
（第１の実施形態）
図１は、本発明の第１の実施形態に係るデータ暗号化装置の構成のブロック図を示す。１０１は、データ暗号化装置１０２への入力部を示し、ここから暗号化される平文、ならびにデータ受信部１０４の暗号化対象ブロック長設定レジスタに対する設定値等が入力される。更に、入力部１０１は、フィルタ管理部１０８に対し、暗号化対象データとフィルタテーブル１０７の初期テーブル値との対応を取るため、暗号化対象データ識別マークが入力される。データ暗号化装置１０２は、データ受信部１０４、暗号化処理部１０５、初期フィルタ選択部１０６、フィルタテーブル１０７で構成される。データ受信部１０４は、入力部１０１から入力される暗号化対象データを暗号化処理部１０５へ送信する機能と入力部１０１から入力された暗号化対象データをある量のブロック長に区切り、そのブロック長毎にフィルタテーブル１０７に対し、フィルタ切り替え信号１０９を出力する機能を有する。データ受信部１０４がフィルタテーブル１０７に対し、フィルタ切り替え信号１０９を出力するのは、データ受信部１０４に内蔵される不図示の暗号化対象ブロック長設定レジスタに設定された容量の平文を受信し終えたときである。不図示の暗号化対象ブロック長設定レジスタの値を初期値とし不図示のカウンタを設定し、平文を受信するたびにカウンタの値をディクリメントしていき、カウンタ値が０（零）になったら、フィルタ切り替え信号１０９を出力する。フィルタ切り替え信号１０９をフィルタテーブル１０７が受信すると、フィルタテーブル１０７は暗号化処理部１０５に対し、暗号化用フィルタ値をロードする。加えて、データ受信部１０４の不図示のカウンタに不図示の暗号化対象ブロック長設定レジスタの値を再度設定し、残りの平文の受信を行う。暗号化処理部１０５は、データ暗号化装置１０２の中枢を担う部分であり、フィルタテーブル１０７からロードされた暗号化フィルタを基に、データ受信部１０４から出力された平文に対し暗号化処理を施し、暗文を生成する。生成した暗文は、出力部１０３へ出力される。出力部１０３は、データ暗号化装置１０２から出力された暗文を受信する部分である。出力部１０３が受信した暗文は、不図示のメモリを介してＨＤＤ等不図示の記録装置に格納される。初期フィルタ選択部１０６は、フィルタテーブル１０７にある暗号化フィルタの中から、データ暗号化装置１０２が受信した最初の平文を暗号化する為のフィルタ番号を選択する信号を出力する機能を持つ。これは、データ暗号化装置１０２が起動されたら、ランダムに値を出力する。尚、初期フィルタ選択部１０６は、フィルタテーブル１０７に格納されている暗号化フィルタの枚数に相当する値しか生成しないのは言うまでもない。フィルタテーブル１０７は、暗号化処理部１０５へロードする暗号化フィルタを複数、格納している。暗号化処理部１０５へ暗号化フィルタをロードするトリガとなるのは、初期フィルタ選択部１０６から出力される、平文を最初に暗号化するときに使用するフィルタを選択する信号を受信したとき、ならびに、データ受信部１０４から出力されるフィルタ切り替え信号１０９を受信したときである。フィルタ管理部１０８は、暗号化対象の平文の識別マークと、平文を暗号化するときに最後に暗号化処理部１０５で使われるフィルタ番号と、暗号化フィルタを変更する単位となるデータブロック長とを管理する機能を持つ。これは、書き換え可能な不揮発性メモリやＨＤＤ等を利用する。
【００１０】
図２は、本発明の第１の実施形態に係るデータ復号化装置の構成のブロック図である。２０１は、データ復号化装置２０２への入力部を示し、ここから復号化される暗文、ならびにデータ受信部２０４の復号化対象ブロック長設定レジスタに対する設定値等が入力される。更に、入力部２０１は、フィルタ管理部１０８に対し、復号化対象データとフィルタテーブル２０７の初期テーブル値を選択する為、識別マークに対応する復号化対象データ選択信号を出力する。データ復号化装置２０２は、データ受信部２０４、復号化処理部２０５、フィルタテーブル２０７で構成される。データ受信部２０４は、入力部２０１から入力される復号化対象データを復号化処理部２０５へ送信する機能と入力部２０１から入力された復号化対象データをある量のブロック長に区切り、そのブロック長毎にフィルタテーブル２０７に対し、フィルタ切り替え信号２０９を出力する機能を有する。データ受信部２０４がフィルタテーブル２０７に対し、フィルタ切り替え信号２０９を出力するのは、データ受信部２０４に内蔵される不図示の復号化対象ブロック長設定レジスタに設定された容量の暗文を受信し終えたときである。不図示の復号化対象ブロック長設定レジスタの値を初期値とし不図示のカウンタを設定し、平文を受信するたびにカウンタの値をディクリメントしていき、カウンタ値が０（零）になったら、フィルタ切り替え信号２０９を出力する。フィルタ切り替え信号２０９をフィルタテーブル２０７が受信すると、フィルタテーブル２０７は復号化処理部２０５に対し、復号化化用フィルタ値をロードする。加えて、データ受信部２０４の不図示のカウンタに不図示の復号化対象ブロック長設定レジスタの値を再度設定し、残りの暗文の受信を行う。復号化処理部２０５は、データ復号化装置２０２の中枢を担う部分であり、フィルタテーブル２０７からロードされた復号化フィルタを基に、データ受信部２０４から出力された暗文に対し復号化処理を施し、平文を生成する。生成した平文は、出力部２０３へ出力される。出力部２０３は、データ復号化装置２０２から出力された平文を受信する部分である。出力部２０３が受信した平文は、不図示のメモリを介してＨＤＤ等不図示の記録装置に格納される。もしくは、複合機等で利用されていれば、印刷されたり、ネットワークデバイスに送信されたりする。フィルタテーブル２０７は、復号化処理部２０５へロードする復号化フィルタを複数、格納している。復号化処理部２０５へ復号化フィルタをロードするトリガとなるのは、フィルタ管理部１０８から出力される初期フィルタ選択信号２１０、ならびに、データ受信部２０４から出力されるフィルタ切り替え信号２０９を受信したときである。フィルタ管理部１０８は、復号化対象の暗文の識別マークと、平文を暗号化するときに最後に暗号化処理部１０５で使われたフィルタ番号と、暗号化フィルタを変更する単位となるデータブロック長とを管理する機能を持つ。これは、書き換え可能な不揮発性メモリやＨＤＤ等を利用する。
【００１１】
図３は、本発明の第１の実施形態に係るデータ暗号化装置１０２において、平文を暗号化する処理の流れを示した図である。ステップＳ３０１は、暗号化対象の平文に対応したユニークな識別マークをフィルタ管理部１０８に記録する処理を示す。ステップＳ３０２は、暗号化対象の平文に対し暗号化フィルタを変更する単位となるデータブロック長をフィルタ管理部１０８に記録する処理を示す。ステップＳ３０３は、暗号化装置１０２を起動する処理を行う。ステップＳ３０４は、データ暗号化装置１０２を起動し、暗号化の処理が終了したか否かを判断するステップである。ここで、暗号化処理が終了していれば、処理をステップＳ３０５へ、終了していなければ暗号化処理を継続する。ステップＳ３０５は、暗号化対象データの暗号化が全て終了した場合の処理で、最後の平文のブロックを暗号化したときに使ったフィルタテーブル１０７のフィルタ番号をフィルタ管理部１０８へ記録する処理を示す。
【００１２】
図４は、本発明の第１の実施形態に係るデータ復号化装置２０２において、暗文を復号化する処理の流れを示した図である。ステップＳ４０１は、復号化対象の暗文に対応したユニークな識別マーク（暗号化の時に付されたもの）をフィルタ管理部１０８から読み出す処理を示す。ステップＳ４０２は、復号化対象の暗文に対し復号化フィルタを変更する単位となるデータブロック長をフィルタ管理部1０８から読み出す処理を行う。ステップＳ４０３は、復号化対象の暗文に対し最初に適用する復号化フィルタを設定するための情報を読み出し、フィルタテーブル２０７に設定する処理を行う。この最初に適用する復号化フィルタは、復号化対象の暗文を生成するとき最後にフィルタテーブル１０７で選択されたフィルタ番号である。ステップＳ４０４は、復号化処理装置２０２を起動する処理を行う。
【００１３】
図５は、本発明の第１の実施形態に係るデータ暗号化装置１０２のフィルタテーブル１０７の構成を示した図である。フィルタテーブル１０７は複数のフィルタで構成される。これは、リコンフィギュアラブルプロセッサや書き換え可能なメモリを用いて構成しても良いし、予めフィルタを決めて回路を構成しても、どちらでも構わない。暗号化処理を行う場合、フィルタテーブル１０７は、初期フィルタ選択部１０６から出力される信号により、最初の平文の暗号化に使うフィルタが選択され、その選択されたフィルタが暗号化処理部１０５へロードされる。その後は、データ受信部１０４から出力されるフィルタ切り替え信号１０９によって順次、暗号化処理用フィルタが変更され、その都度、暗号化処理部１０５へフィルタ値がロードされる。例えば、初期フィルタ選択部１０６から３番のフィルタを選択するように指示が出たら、最初の平文に対する暗号化処理を行う為のフィルタは、５０３のフィルタ３となり、これが暗号化処理部１０５へロードされる。その後は、フィルタテーブル１０７がフィルタ切り替え信号１０９を受信する毎に、５０４のフィルタ４  →  ５０５のフィルタ５  →  ５００のフィルタ０  →  ・・・・というように、フィルタを循環して暗号化処理部１０５へフィルタをロードする。
【００１４】
図６は、本発明の第１の実施形態に係るデータ復号化装置２０２のフィルタテーブル２０７の構成を示した図である。フィルタテーブル２０７は複数のフィルタで構成される。これは、リコンフィギュアラブルプロセッサや書き換え可能なメモリを用いて構成しても良いし、予めフィルタを決めて回路を構成しても、どちらでも構わない。復号化処理を行う場合、フィルタテーブル２０７は、フィルタ管理部１０８に格納されている復号化対象ファイルが暗号化されたとき、最後に利用されたフィルタ番号をフィルタ管理部１０８からロードする。それにより、最初の暗文の復号化に使うフィルタが選択され、その選択されたフィルタが復号化処理部２０５へロードされる。その後は、データ受信部２０４から出力されるフィルタ切り替え信号２０９によって順次、復号化処理用フィルタが変更され、その都度、復号化処理部２０５へフィルタ値がロードされる。例えば、復号化処理の最初に３番のフィルタを選択するように指示が出たら、最初の暗文に対する復号化処理を行う為のフィルタは、５０３のフィルタ３となり、これが復号化処理部２０５へロードされる。その後は、フィルタテーブル２０７がフィルタ切り替え信号２０９を受信する毎に、５０２のフィルタ２  →  ５０１のフィルタ１  →  ５００のフィルタ０  →  ５０５のフィルタ５  →  ・・・・というように、フィルタを循環（巡回）して復号化処理部２０５へフィルタをロードする。なお、ここでは、各データブロックの暗号化が、前データブロックの暗号化結果の影響を受ける暗号化方式を考慮して、復号化は暗号化と逆順で行われるものとしている。しかしながら、各データブロックの暗号化・復号化が独立に実行できる方式であれば、復号化は暗号化と正順で行なうようにしてもよい。その場合、フィルタ管理部１０８は、最後に暗号化処理部１０５で使われるフィルタ番号を管理し、フィルタテーブル２０７は、最後に使われるフィルタ番号ではなく、初期フィルタ選択部１０６で選択された最初に暗号化処理部１０５で使われるフィルタ番号を管理し、暗号化と同一順でフィルタを循環させるようにすればよい。
【００１５】
（第２の実施形態）
図７は、本発明の第２の実施形態に係る暗号化装置、ならびに復号化装置のデータ受信部の構成を２カウンタ方式にした図である。初期値１  ７０１、初期値２  ７０２はデータ受信部に入力部から送信されたデータ（初期値データ）とsel1信号、sel2信号により、それぞれの初期値レジスタに書き込みが行われる。７０３は、セレクターでToggle ７０７の出力値により、カウンタ１  ７０４への書き込みデータである初期値１  ７０１を選択するか、カウンタ２  ７０５への書き込みデータである初期値２  ７０２を選択する。カウンタ１  ７０４、ならびに、カウンタ２  ７０５への書き込みはＬｏａｄ  ７０８の出力で切り替えられる。カウンタ１  ７０４、カウンタ２  ７０５はダウンカウンタである。データ受信部がデータを受信する毎に有効になっているカウンタの値がディクリメントされていく。カウンタの値が０（零）になると、そのカウンタはフィルタ切り替え信号を出力する。尚、フィルタ切り替え信号は、パルスであり、ＯＲ素子  ７０６を通して、不図示のフィルタテーブルに出力される。Ｔｏｇｇｌｅ  ７０７は、トグル回路であり、この回路へパルスが入力される毎に出力を反転させる。Ｌｏａｄ  ７０８は、初期値１  ７０１、初期値２  ７０２を、カウンタ１  ７０４、カウンタ２  ７０５へロードするパルスを出力する。図１のデータ受信部１０４を図７の構成にすることで、平文を暗号化するとき、２種類のブロック長毎に暗号化を実施することが可能となる。このとき、図１のフィルタ管理部１０８には、暗号化対象データの識別マークと、平文を暗号化したときに最後に使ったテーブル番号の他に、２種類のブロック長設定値が格納されることになる。カウンタ数を増やすことで、同一平文を暗号化する際に、平文を分割するブロック長の数が増え、その各々に対して異なる暗号化処理が施されるので解読が困難になる。
【００１６】
（第３の実施形態）
図８は、本発明の第３の実施形態に係るコンピュータのハードウエア構成例を示す。本実施形態は、前記第１及び第２の実施形態の装置をコンピュータで実現する例を示す。バス８０１には、中央処理装置（ＣＰＵ）８０２、ＲＯＭ８０３、ＲＡＭ８０４、ネットワークインタフェース８０５、入力装置８０６、出力装置８０７及び外部記憶装置８０８が接続されている。ＣＰＵ８０２は、データの処理又は演算を行うと共に、バス８０１を介して接続された各種構成要素を制御するものである。ＲＯＭ８０３には、予めＣＰＵ８０２の制御手順（コンピュータプログラム）を記憶させておき、このコンピュータプログラムをＣＰＵ８０２が実行することにより、起動する。外部記憶装置８０８にコンピュータプログラムが記憶されており、そのコンピュータプログラムがＲＡＭ８０４にコピーされて実行される。ＲＡＭ８０４は、データの入出力、送受信のためのワークメモリ、各構成要素の制御のための一時記憶として用いられる。外部記憶装置８０８は、例えばハードディスク記憶装置やＣＤ−ＲＯＭ等であり、電源を切っても記憶内容が消えない。ＣＰＵ８０２は、ＲＡＭ８０４内のコンピュータプログラムを実行することにより、第１及び第２の実施形態の処理を行う。ネットワークインタフェース８０５は、インターネット等のネットワークに接続するためのインタフェースである。入力装置８０６は、例えばキーボード及びマウス等であり、各種指定又は入力等を行うことができる。出力装置８０７は、ディスプレイ及びプリンタ等である。
【００１７】
本実施形態は、コンピュータがプログラムを実行することによって実現することができる。また、プログラムをコンピュータに供給するための手段、例えばかかるプログラムを記録したＣＤ−ＲＯＭ等のコンピュータ読み取り可能な記録媒体又はかかるプログラムを伝送するインターネット等の伝送媒体も本発明の実施形態として適用することができる。また、上記のプログラムを記録したコンピュータ読み取り可能な記録媒体等のコンピュータプログラムプロダクトも本発明の実施形態として適用することができる。上記のプログラム、記録媒体、伝送媒体及びコンピュータプログラムプロダクトは、本発明の範疇に含まれる。記録媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等を用いることができる。
【００１８】
以上のように、第１〜第３の実施形態の暗号化装置は、平文を複数のブロックに分割する分割手段と、平文をブロック毎に異なる暗号化手法で暗号化を行う暗号化手段とを有する。暗号化手段は、複数の暗号化手法（フィルタ番号）が所定の順番でブロック毎に順に選択されブロック毎に異なる暗号化を行う。その際、平文の最初のブロックの暗号化手法は複数の暗号化手法のうちからランダムに選択され、その後はランダムに選択された暗号化手法に応じて所定の順番で暗号化手法が選択される。複数の暗号化手法は所定の順番で循環して選択され、最初の暗号化手法の開始点がランダムに選択される。なお、フィルタ管理部１０８に最後のブロックの暗号化に利用された暗号化手法を記録する場合を例に説明したが、その代わりに最初のブロックの暗号化に利用された暗号化手法を記録するようにしてもよい。フィルタ管理部１０８は、分割されたブロック長、及び最初のブロック又は最後のブロックの暗号化に利用された暗号化手法を記録する。なお、暗号化手法は、フィルタの切り替えに限定されず、他の方法により異ならせてもよい。
【００１９】
復号化装置は、暗文を複数のブロックに分割する分割手段と、暗文をブロック毎に異なる復号化手法で復号化を行う復号化手段とを有する。復号化手段は、複数の復号化手法が所定の順番で前記ブロック毎に順に選択され前記ブロック毎に異なる復号化を行う。フィルタ管理部１０８は、ブロック長、及び最初のブロック又は最後のブロックの暗号化に利用された暗号化手法を記憶する。分割手段は、前記ブロック長で分割する。復号化手段は、前記最初のブロック又は最後のブロックの暗号化に利用された暗号化手法に応じて、所定の復号化手法の順番で復号化を行う。複数の復号化手法は所定の順番で巡回して選択され、最初の復号化手法の開始点が前記最初のブロック又は最後のブロックの暗号化に利用された暗号化手法に応じて選択される。
【００２０】
第１〜第３の実施形態は、暗号化が必要なデータを暗号化する際に、１つの平文データを任意のデータ量のブロックに分割し、その分割されたデータ毎に暗号化のフィルタを変換して異なる暗号化手法で暗号化処理を行うことによって、解読が困難な暗号化データを生成すると共に、このように暗号化されたデータを復号化して利用することができる。
【００２１】
平文を暗号化するとき、同一平文の中で暗号化手法が、決められたデータ量毎に異なるので、暗号化されたデータの解析が困難な暗号の生成、若しくは、利用を図ることができる。
【００２２】
なお、上記実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
【図面の簡単な説明】
【００２３】
【図１】本発明の第１の実施形態に係るデータ暗号化装置の構成のブロック図である。
【図２】本発明の第１の実施形態に係るデータ復号化装置の構成のブロック図である。
【図３】本発明の第１の実施形態に係るデータ暗号化装置において、平文を暗号化する処理の流れを示した図である。
【図４】本発明の第１の実施形態に係るデータ復号化装置において、暗文を復号化する処理の流れを示した図である。
【図５】本発明の第１の実施形態に係るデータ暗号化装置１０２のフィルタテーブル１０７の構成を示した図である。
【図６】本発明の第１の実施形態に係るデータ復号化装置２０２のフィルタテーブル２０７の構成を示した図である。
【図７】本発明の第２の実施形態に係る暗号化装置、ならびに復号化装置のデータ受信部の構成を２カウンタ方式にした図である。
【図８】本発明の第３の実施形態に係るコンピュータのハードウエア構成例を示すブロック図である。
【符号の説明】
【００２４】
１０１  入力部
１０２  データ暗号化装置
１０３  出力部
１０４  データ受信部
１０５  暗号化処理部
１０６  初期フィルタ選択部
１０７  フィルタテーブル
１０８  フィルタ管理部
１０９  フィルタ切り替え信号
２０１  入力部
２０２  データ復号化装置
２０３  出力部
２０４  データ受信部
２０５  復号化処理部
２０７  フィルタテーブル
２０９  フィルタ切り替え信号
８０１  バス
８０２  ＣＰＵ
８０３  ＲＯＭ
８０４  ＲＡＭ
８０５  ネットワークインタフェース
８０６  入力装置
８０７  出力装置
８０８  外部記憶装置
【図１】
2006292958.tif 000003
【図２】
2006292958.tif 000004
【図３】
2006292958.tif 000005
【図４】
2006292958.tif 000006
【図５】
2006292958.tif 000007
【図６】
2006292958.tif 000008
【図７】
2006292958.tif 000009
【図８】
2006292958.tif 000010