(57)【要約】【課題】暗号化装置のデータの秘匿性を向上させること。【解決手段】暗号化装置であって、公開鍵暗号方式によって生成された暗号鍵の登録主体を認証する認証部と、前記認証部によって認証された前記登録主体が登録する前記暗号鍵を記憶する、暗号鍵記憶部と、共通鍵暗号方式によって生成された共通鍵を記憶する共通鍵記憶部と、前記暗号鍵記憶部に記憶された前記暗号鍵によって暗号化された前記共通鍵を記憶する暗号化共通鍵記憶部と、繰り返し生成されるデータを、前記共通鍵を使用して、所定のタイミング毎に異なる態様で暗号化し、前記データを消去する暗号化部と、前記暗号化部による暗号化によって生成された暗号化データを記憶する暗号化データ記憶部と、を備える。【選択図】図２
2012105068.tif 000002
【特許請求の範囲】
【請求項１】
公開鍵暗号方式によって生成された暗号鍵の登録主体を認証する認証部と、
前記認証部によって認証された前記登録主体が登録する前記暗号鍵を記憶する、暗号鍵記憶部と、
共通鍵暗号方式によって生成された共通鍵を記憶する共通鍵記憶部と、
前記暗号鍵記憶部に記憶された前記暗号鍵によって暗号化された前記共通鍵を記憶する暗号化共通鍵記憶部と、
繰り返し生成されるデータを、前記共通鍵を使用して、所定のタイミング毎に異なる態様で暗号化し、前記データを消去する暗号化部と、
前記暗号化部による暗号化によって生成された暗号化データを記憶する暗号化データ記憶部と、
を備える暗号化装置。
【請求項２】
前記暗号化部は、
共通鍵暗号方式によって生成された一時共通鍵で前記データを暗号化し、前記一時共通鍵及び前記データを消去するデータ暗号化部と、
前記共通鍵で前記一時共通鍵を暗号化することによって生成される暗号化一時共通鍵を記憶する暗号化一時共通鍵記憶部と、
を備え、
前記データ暗号化部は、前記所定のタイミング毎に異なる前記一時共通鍵で前記データを暗号化する請求項１に記載の暗号化装置。
【請求項３】
前記暗号化部は、
前記所定のタイミング毎に異なる前記一時共通鍵を生成する一時共通鍵生成部をさらに備え、
前記データ暗号化部は、前記一時共通鍵生成部によって生成された前記一時共通鍵で前記データを暗号化する請求項２に記載の暗号化装置。
【請求項４】
前記暗号化部は、
共通鍵暗号方式によって生成された一時共通鍵を複数記憶する一時共通鍵記憶部と、
前記一時共通鍵記憶部に記憶される複数の一時共通鍵を、前記共通鍵で暗号化して記憶する暗号化一時共通鍵記憶部と、
前記所定のタイミング毎に異なる前記一時共通鍵で前記データを暗号化し、前記データを消去するデータ暗号化部と、
を備え、
前記一時共通鍵記憶部は、所定の事態の発生により前記一時共通鍵のデータを消失する請求項１に記載の暗号化装置。
【請求項５】
前記暗号化部は、
前記所定のタイミング毎に異なる挿入データを挿入することによって挿入済データを生成する挿入部と、
前記共通鍵で前記挿入済データを暗号化することによって前記暗号化データを生成し、前記データ及び前記挿入済データを消去するデータ暗号化部と、
を備える請求項１に記載の暗号化装置。
【請求項６】
前記共通鍵記憶部は、所定の事態の発生により前記共通鍵のデータを消失する、請求項１〜５のいずれか一つに記載の暗号化装置。
【請求項７】
暗号化装置と復号化装置とを備える暗号化復号化システムであって、
前記暗号化装置は、
公開鍵暗号方式によって生成された暗号鍵の登録主体を認証する認証部と、
前記認証部によって認証された前記登録主体が登録する前記暗号鍵を記憶する、暗号鍵記憶部と、
共通鍵暗号方式によって生成された共通鍵を記憶する共通鍵記憶部と、
前記暗号鍵記憶部に記憶された前記暗号鍵によって暗号化された前記共通鍵を記憶する暗号化共通鍵記憶部と、
繰り返し生成されるデータを、前記共通鍵を使用して、所定のタイミング毎に異なる態様で暗号化し、前記データを消去する暗号化部と、
前記暗号化部による暗号化によって生成された暗号化データを記憶する暗号化データ記憶部と、を備え、
前記復号化装置は、
前記暗号化装置の前記暗号鍵記憶部に記憶される前記暗号鍵に対応する復号鍵を記憶する復号鍵記憶部と、
前記復号鍵記憶部に記憶される前記復号鍵で、前記暗号化装置の前記暗号化共通鍵記憶部に記憶される前記暗号化共通鍵を復号化して前記共通鍵を復元する共通鍵復号化部と、
復元された前記共通鍵を使用して、前記暗号化データ記憶部に記憶される前記暗号化データを復号化し、前記繰り返し生成されるデータを復元するデータ復元部と、
を備えることを特徴とする暗号化復号化システム。
【請求項８】
公開鍵暗号方式によって生成された暗号鍵を記憶する暗号鍵記憶部と、共通鍵暗号方式によって生成された共通鍵を記憶する共通鍵記憶部と、前記暗号鍵記憶部に記憶された前記暗号鍵によって暗号化された前記共通鍵を記憶する暗号化共通鍵記憶部と、暗号化データを記憶する暗号化データ記憶部と、を備える暗号化装置が行う暗号化方法であって、
前記暗号鍵の登録主体を認証し、認証された前記登録主体によって登録される前記暗号鍵を前記暗号鍵記憶部に登録する認証ステップと、
繰り返し生成されるデータを、前記共通鍵を使用して、所定のタイミング毎に異なる態様で暗号化することによって前記暗号化データを生成し、前記データを消去する暗号化ステップと、
を有する暗号化方法。
【請求項９】
公開鍵暗号方式によって生成された暗号鍵を記憶する暗号鍵記憶部と、共通鍵暗号方式によって生成された共通鍵を記憶する共通鍵記憶部と、前記暗号鍵記憶部に記憶された前記暗号鍵によって暗号化された前記共通鍵を記憶する暗号化共通鍵記憶部と、暗号化データを記憶する暗号化データ記憶部と、を備えるコンピュータに対し、
前記暗号鍵の登録主体を認証し、認証された前記登録主体によって登録される前記暗号鍵を前記暗号鍵記憶部に登録する認証ステップと、
繰り返し生成されるデータを、前記共通鍵を使用して、所定のタイミング毎に異なる態様で暗号化することによって前記暗号化データを生成し、前記データを消去する暗号化ステップと、
を実行させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データを暗号化する技術に関する。
【背景技術】
【０００２】
データの秘匿性を維持するために、データに暗号化処理を施す技術が提案されている。例えば、特許文献１に開示された暗号装置では、個別鍵入力部から入力された個別鍵と、公開鍵入力部から入力された公開鍵とを用いて、ファイル読み込み部によって読み込まれたファイルに対して暗号化処理が行われる。具体的には、暗号装置は、個別鍵を用いてファイルに対して暗号化処理を行い、暗号文を生成する。また、暗号装置は、公開鍵を用いて個別鍵を暗号化し鍵情報を生成し、暗号文に鍵情報に付加する。このような暗号装置によれば、個別鍵を鍵情報として暗号文と一緒に保管しておくため、個別鍵を喪失した場合にも鍵情報より個別鍵を再生成できる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平７−５６５０７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、例えば公共の場所に設置する必要があるなどのように、暗号化装置の物理的なセキュリティを十分に維持することができないような環境では、従来の暗号化装置では十分にデータの秘匿性を維持することができないおそれがあった。
上記事情に鑑み、本発明は、暗号化装置のデータの秘匿性を向上させる技術を提供することを目的としている。
【課題を解決するための手段】
【０００５】
本発明の一態様は、暗号化装置であって、公開鍵暗号方式によって生成された暗号鍵の登録主体を認証する認証部と、前記認証部によって認証された前記登録主体が登録する前記暗号鍵を記憶する、暗号鍵記憶部と、共通鍵暗号方式によって生成された共通鍵を記憶する共通鍵記憶部と、前記暗号鍵記憶部に記憶された前記暗号鍵によって暗号化された前記共通鍵を記憶する暗号化共通鍵記憶部と、繰り返し生成されるデータを、前記共通鍵を使用して、所定のタイミング毎に異なる態様で暗号化し、前記データを消去する暗号化部と、前記暗号化部による暗号化によって生成された暗号化データ（暗号化データ、暗号化挿入済データ）を記憶する暗号化データ記憶部と、を備える。
【０００６】
本発明の一態様は、上記の暗号化装置であって、前記暗号化部は、共通鍵暗号方式によって生成された一時共通鍵で前記データを暗号化し、前記一時共通鍵及び前記データを消去するデータ暗号化部と、前記共通鍵で前記一時共通鍵を暗号化することによって生成される暗号化一時共通鍵を記憶する暗号化一時共通鍵記憶部と、を備え、前記データ暗号化部は、前記所定のタイミング毎に異なる前記一時共通鍵で前記データを暗号化する。
【０００７】
本発明の一態様は、上記の暗号化装置であって、前記暗号化部は、前記所定のタイミング毎に異なる前記一時共通鍵を生成する一時共通鍵生成部をさらに備え、前記データ暗号化部は、前記一時共通鍵生成部によって生成された前記一時共通鍵で前記データを暗号化する。
【０００８】
本発明の一態様は、上記の暗号化装置であって、前記暗号化部は、共通鍵暗号方式によって生成された一時共通鍵を複数記憶する一時共通鍵記憶部と、前記一時共通鍵記憶部に記憶される複数の一時共通鍵を、前記共通鍵で暗号化して記憶する暗号化一時共通鍵記憶部と、前記所定のタイミング毎に異なる前記一時共通鍵で前記データを暗号化し、前記データを消去するデータ暗号化部と、を備え、前記一時共通鍵記憶部は、所定の事態の発生により前記一時共通鍵のデータを消失する。
【０００９】
本発明の一態様は、上記の暗号化装置であって、前記暗号化部は、前記所定のタイミング毎に異なる挿入データを挿入することによって挿入済データを生成する挿入部と、前記共通鍵で前記挿入済データを暗号化することによって前記暗号化データを生成し、前記データ及び前記挿入済データを消去するデータ暗号化部と、を備える。
【００１０】
本発明の一態様は、上記の暗号化装置であって、前記共通鍵記憶部は、所定の事態の発生により前記共通鍵のデータを消失する。
【００１１】
本発明の一態様は、暗号化装置と復号化装置とを備える暗号化復号化システムであって、前記暗号化装置は、公開鍵暗号方式によって生成された暗号鍵の登録主体を認証する認証部と、前記認証部によって認証された前記登録主体が登録する前記暗号鍵を記憶する、暗号鍵記憶部と、共通鍵暗号方式によって生成された共通鍵を記憶する共通鍵記憶部と、前記暗号鍵記憶部に記憶された前記暗号鍵によって暗号化された前記共通鍵を記憶する暗号化共通鍵記憶部と、繰り返し生成されるデータを、前記共通鍵を使用して、所定のタイミング毎に異なる態様で暗号化し、前記データを消去する暗号化部と、前記暗号化部による暗号化によって生成された暗号化データを記憶する暗号化データ記憶部と、を備え、前記復号化装置は、前記暗号化装置の前記暗号鍵記憶部に記憶される前記暗号鍵に対応する復号鍵を記憶する復号鍵記憶部と、前記復号鍵記憶部に記憶される前記復号鍵で、前記暗号化装置の前記暗号化共通鍵記憶部に記憶される前記暗号化共通鍵を復号化して前記共通鍵を復元する共通鍵復号化部と、復元された前記共通鍵を使用して、前記暗号化データ記憶部に記憶される前記暗号化データを復号化し、前記繰り返し生成されるデータを復元するデータ復元部と、を備える。
【００１２】
本発明の一態様は、公開鍵暗号方式によって生成された暗号鍵を記憶する暗号鍵記憶部と、共通鍵暗号方式によって生成された共通鍵を記憶する共通鍵記憶部と、前記暗号鍵記憶部に記憶された前記暗号鍵によって暗号化された前記共通鍵を記憶する暗号化共通鍵記憶部と、暗号化データを記憶する暗号化データ記憶部と、を備える暗号化装置が行う暗号化方法であって、前記暗号鍵の登録主体を認証し、認証された前記登録主体によって登録される前記暗号鍵を前記暗号鍵記憶部に登録する認証ステップと、繰り返し生成されるデータを、前記共通鍵を使用して、所定のタイミング毎に異なる態様で暗号化することによって前記暗号化データを生成し、前記データを消去する暗号化ステップと、を有する。
【００１３】
本発明の一態様は、公開鍵暗号方式によって生成された暗号鍵を記憶する暗号鍵記憶部と、共通鍵暗号方式によって生成された共通鍵を記憶する共通鍵記憶部と、前記暗号鍵記憶部に記憶された前記暗号鍵によって暗号化された前記共通鍵を記憶する暗号化共通鍵記憶部と、暗号化データを記憶する暗号化データ記憶部と、を備えるコンピュータに対し、前記暗号鍵の登録主体を認証し、認証された前記登録主体によって登録される前記暗号鍵を前記暗号鍵記憶部に登録する認証ステップと、繰り返し生成されるデータを、前記共通鍵を使用して、所定のタイミング毎に異なる態様で暗号化することによって前記暗号化データを生成し、前記データを消去する暗号化ステップと、を実行させるためのコンピュータプログラムである。
【発明の効果】
【００１４】
本発明により、暗号化装置のデータの秘匿性を向上させることが可能となる。
【図面の簡単な説明】
【００１５】
【図１】暗号化復号化システムのシステム構成を表すシステム構成図である。
【図２】暗号化装置の第一実施形態の機能構成を表すブロック図である。
【図３】暗号化装置の前処理の動作の流れを表すフローチャートである。
【図４】暗号化装置の暗号化処理の動作の流れを表すフローチャートである。
【図５】復号化装置の第一実施形態の機能構成を表すブロック図である。
【図６】復号化装置の復号化処理の動作の流れを表すフローチャートである。
【図７】暗号化装置の第二実施形態の機能構成を表すブロック図である。
【図８】暗号化装置の暗号化処理の動作の流れを表すフローチャートである。
【図９】暗号化装置の第三実施形態の機能構成を表すブロック図である。
【図１０】暗号化装置の暗号化処理の動作の流れを表すフローチャートである。
【図１１】復号化装置の第三実施形態の機能構成を表すブロック図である。
【図１２】復号化装置の復号化処理の動作の流れを表すフローチャートである。
【発明を実施するための形態】
【００１６】
図１は、暗号化復号化システム１のシステム構成を表すシステム構成図である。暗号化復号化システム１は、データ生成装置１０、暗号化装置２０、復号化装置３０を備える。
データ生成装置１０は、記録されるべきデータを繰り返し生成し、生成したデータを暗号化装置２０へ出力する。データ生成装置１０は、例えばログ記録装置である。ログとは、なんらかの履歴を表す情報であり、例えばコンピュータの利用者の履歴を表す情報や、データ通信の通信内容の履歴を表す情報である。
【００１７】
以下、データ生成装置１０の具体例として、自動料金収受システム（ＥＴＣシステム：Electronic Toll Collection system）に用いられるログ記録装置について説明する。自動料金収受システムでは、自動車に搭載された車載器がクレジットカードの番号を読み出し、読み出した情報を暗号化して路側機へ無線で送信する。路側機にはログ記録装置が接続されており、ログ記録装置は、路側機と車載器との間で行われた無線通信の履歴を記録する。記録される履歴には、例えば、無線通信が行われた日時、車載器の識別情報、車載器から送信されたデータ等が含まれる。データ生成装置１０がこのようなログ記録装置である場合、データ生成装置１０は、記録される履歴のデータ（以下、「履歴データ」という。）を生成し、暗号化装置１０へ出力する。
【００１８】
データ生成装置１０が履歴データを暗号化装置１０へ出力するタイミングは適宜設定される。データ生成装置１０は、１回の支払いのために行われる無線通信毎に、一つの履歴データを生成して暗号化装置２０へ出力しても良い。また、データ生成装置１０は、複数回分の支払いの無線通信に関する履歴を表す一つの履歴データを生成して、暗号化装置２０へ出力しても良い。
【００１９】
暗号化装置２０は、認証された主体によって登録された暗号鍵を記憶する。暗号化装置２０が記憶する暗号鍵は、公開鍵暗号方式によって生成されたデータである。また、暗号化装置２０は、共通鍵暗号方式によって生成された共通鍵を記憶し、暗号鍵によって暗号化された共通鍵（以下、「暗号化共通鍵」という。）も記憶する。そして、暗号化装置２０は、データ生成装置１０から出力されたデータを、共通鍵を使用して、所定のタイミング毎に異なる態様で暗号化し、暗号化されたデータ（以下、「暗号化データ」という。）を記憶する。暗号化装置２０は、暗号化が済んだ平文のデータを消去する。したがって、暗号化データは記憶されるが、暗号化されていないデータは記憶されない。
【００２０】
異なる態様で暗号化する処理とは、すなわち、平文のときには同一のデータであっても暗号化された後には異なるデータとなるように暗号化する処理を示す。例えば、異なる共通鍵で暗号化することによって、異なる態様での暗号化処理を実現しても良い。例えば、暗号化の対象となっているデータに対して異なる挿入データを挿入して暗号化することによって、異なる態様での暗号化処理を実現しても良い。
【００２１】
復号化装置３０は、暗号化装置２０に記憶される暗号鍵に対応する復号鍵を記憶する。復号化装置３０は、この復号鍵で暗号化装置２０に記憶される暗号化共通鍵を復号化し、共通鍵を復元する。そして、復号化装置３０は、復元された共通鍵を使用して、暗号化データを復号化し、データ生成装置１０から出力されたデータを復元する。復号化装置３０に対し、暗号化装置２０に記憶されるデータが入力される方法は、どのような方法であっても良い。例えば、暗号化装置２０と復号化装置３０とをケーブルで接続することによって、暗号化装置２０に記憶されるデータが復号化装置３０へ入力されても良い。
上述したように、異なる態様で暗号化する処理には複数の実現方法がある。以下、３つの異なる構成の暗号化装置２０（２０ａ〜２０ｃ）及び２つの異なる構成の復号化装置３０（３０ａ、３０ｃ）について説明する。暗号化装置２０ｂに対応する復号化装置３０の構成は、復号化装置３０ａと同じであるため説明を省略する。
【００２２】
［第一実施形態］
図２は、暗号化装置２０の第一実施形態（暗号化装置２０ａ）の機能構成を表すブロック図である。暗号化装置２０ａは、バスで接続されたＣＰＵ（Central Processing Unit）やメモリや補助記憶装置などを備え、暗号化プログラムを実行する。暗号化装置２０ａは、認証部２０１、暗号鍵記憶部２０２、共通鍵記憶部２０３、共通鍵生成部２０４、消去部２０５、共通鍵暗号化部２０６、暗号化共通鍵記憶部２０７、暗号化部２０８ａ、暗号化データ記憶部２０９を備える装置として機能する。暗号化装置２０ａの各機能の全て又は一部は、ＡＳＩＣ（Application Specific Integrated Circuit）やＰＬＤ（Programmable Logic Device）やＦＰＧＡ（Field Programmable Gate Array）等のハードウェアを用いて実現されても良い。暗号化プログラムは、コンピュータ読み取り可能な記録媒体に記録されても良い。コンピュータ読み取り可能な記録媒体とは、例えばフレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置である。
【００２３】
認証部２０１は、暗号化装置２０ａに対して暗号鍵を登録しようとする主体（以下、「登録主体」という。）を認証する。登録主体は、人間であっても良いし、暗号化装置２０ａに対して通信可能に接続された情報処理装置であっても良い。認証部２０１は、登録主体によって入力される認証情報に基づいて認証を行う。認証部２０１が行う認証処理には、既存のどのような認証技術が適用されても良い。例えば、認証部２０１に適用される認証技術は、ハッシュ関数を利用したパスワード認証技術であっても良いし、公開鍵暗号アルゴリズムを利用した電子署名認証技術であっても良いし、指紋認証技術であっても良いし、虹彩認証技術であっても良い。認証部２０１は、登録主体が正当な登録主体であると認証した場合には、登録主体によって入力される暗号鍵を暗号鍵記憶部２０２に書き込む。一方、認証部２０１は、登録主体が正当な登録主体ではない場合には、登録主体によって入力される暗号鍵を暗号鍵記憶部２０２に書き込まない。
【００２４】
暗号鍵記憶部２０２は、磁気ハードディスク装置や半導体記憶装置などの記憶装置である。暗号鍵記憶部２０２は、認証部２０１によって書き込まれる暗号鍵を記憶する。
共通鍵記憶部２０３は、磁気ハードディスク装置や半導体記憶装置などの記憶装置である。共通鍵記憶部２０３は、共通鍵生成部２０４によって生成された共通鍵を記憶する。
共通鍵記憶部２０４は、乱数を生成し、生成された乱数を用いて既存の共通鍵暗号方式のアルゴリズムにしたがって共通鍵を生成する。
【００２５】
消去部２０５は、所定の条件が満たされた場合に、共通鍵記憶部２０３に記憶されている共通鍵のデータを、復元できないように消去する。したがって、消去部２０５によって消去がされた場合には、共通鍵記憶部２０３は共通鍵のデータを消失する。所定の条件とは、暗号化装置２０ａの物理的なセキュリティを維持できないと推定される状態を表す条件である。消去部２０５は、設定される所定の条件に応じて、その条件を満たすか否か判定するのに必要となる検出装置（センサ）を備える。例えば、暗号化装置２０ａが、所定の閾値以上に揺れたことが検出されたことを条件としても良い。また、暗号化装置２０ａの周囲に人が進入したことが検出されたことを条件としても良い。また、暗号化装置２０ａに接続されているケーブル（電源ケーブルや通信ケーブル等）が引き抜かれたことが検出されたことを条件としても良い。また、上記のケーブルが切断されたことが検出されたことを条件としても良い。また、暗号化装置２０ａに対して主電源から電力が供給されなくなったことが検出されたことを条件としても良い。このような条件を消去部２０５に設定する場合には、主電源からの電力が途絶えた後にも少なくとも消去部２０５が動作できる程度の電力を供給する無停電電源装置を備える必要がある。
【００２６】
共通鍵暗号化部２０６は、暗号鍵記憶部２０２に記憶されている暗号鍵で、共通鍵記憶部２０３に記憶されている共通鍵を暗号化する。そして、共通鍵暗号化部２０６は、暗号化した共通鍵を暗号化共通鍵記憶部２０７に書き込む。
暗号化共通鍵記憶部２０７は、磁気ハードディスク装置や半導体記憶装置などの記憶装置である。暗号化共通鍵記憶部２０７は、共通鍵暗号化部２０６によって暗号化された共通鍵を記憶する。
暗号化部２０８ａは、データ生成装置１０から出力されたデータを、共通鍵記憶部２０３に記憶される共通鍵を使用して、所定のタイミング毎に異なる態様で暗号化する。暗号化部２０８ａは、タイミング毎に異なる一時共通鍵で暗号化することによって、異なる態様での暗号化処理を実現する。以下、暗号化部２０８ａについてさらに詳細に説明する。
【００２７】
暗号化部２０８ａは、一時共通鍵生成部２１１、一時共通鍵暗号化部２１２、データ暗号化部２１３を備える。
一時共通鍵生成部２１１は、所定のタイミング毎に一時共通鍵を生成する。所定のタイミングとは、例えばデータ生成装置１０から新たなデータが一つ出力されるタイミングであっても良いし、所定の時刻になったタイミングであっても良いし、前回の一時共通鍵の生成から所定の時間が経過したタイミングであっても良いし、その他のタイミングであっても良い。他にも、例えばデータ生成装置１０から出力されるデータが上記の履歴データである場合には、履歴データに含まれる車載器の識別情報が変化したタイミングであっても良い。一時共通鍵生成部２１１は、乱数を生成し、生成された乱数を用いて既存の共通鍵暗号方式のアルゴリズムにしたがって一時共通鍵を生成する。そして、一時共通鍵生成部２１１は、新たな一時共通鍵を生成すると、古くなった一時共通鍵を、復元できないように消去する。
【００２８】
一時共通鍵暗号化部２１２は、共通鍵記憶部２０３に記憶される共通鍵で、一時共通鍵生成部２１１によって生成された一時共通鍵を暗号化する。以下の説明では、暗号化された一時共通鍵を「暗号化一時共通鍵」という。そして、一時共通鍵暗号化部２１２は、暗号化が済んだ一時共通鍵の平文データを、復元できないように消去する。
データ暗号化部２１３は、一時共通鍵生成部２１１によって生成された一時共通鍵で、データ生成装置１０から出力されたデータを暗号化する。データ暗号化部２１３は、暗号化データと、データの暗号化に用いられた一時共通鍵の暗号化一時共通鍵とを対応付けて暗号化データ記憶部２０９に書き込む。そして、データ暗号化部２１３は、処理に用いた一時共通鍵と、暗号化が済んだ平文のデータとを、復元できないように消去する。
【００２９】
暗号化データ記憶部２０９は、磁気ハードディスク装置や半導体記憶装置などの記憶装置である。暗号化データ記憶部２０９は、データ暗号化部２１３によって書き込まれる暗号化データ及び暗号化一時共通鍵を対応付けて記憶する。
図３は、暗号化装置２０ａの前処理の動作の流れを表すフローチャートである。暗号化装置２０ａは、データ生成装置１０から出力されるデータを暗号化する前に、図３に示される前処理を実行する。まず、暗号化装置２０ａの認証部２０１は、登録主体の認証を行う（ステップＳ１０１）。認証部２０１は、登録主体が正当な登録主体ではない場合には（ステップＳ１０２−ＮＯ）、登録主体によって入力される暗号鍵を暗号鍵記憶部２０２に書き込まず、図３に示される前処理を終了する。一方、認証部２０１は、登録主体が正当な登録主体であると認証した場合には（ステップＳ１０２−ＹＥＳ）、登録主体によって入力される暗号鍵を暗号鍵記憶部２０２に書き込む（ステップＳ１０４）。次に、共通鍵暗号化部２０６は、暗号鍵記憶部２０２に記憶されている暗号鍵で、共通鍵記憶部２０３に記憶されている共通鍵を暗号化する（ステップＳ１０５）。次に、共通鍵暗号化部２０６は、暗号化された共通鍵（暗号化共通鍵）を、暗号化共通鍵記憶部２０７に書き込む（ステップＳ１０６）。以上の処理で、図３に示される前処理が終了する。
【００３０】
図４は、暗号化装置２０ａの暗号化処理の動作の流れを表すフローチャートである。暗号化装置２０ａは、図３に示される前処理が完了した後、データ生成装置１０から出力されるデータに対して図４に示される暗号化処理を実行する。まず、暗号化装置２０ａの一時共通鍵生成部２１１は、所定のタイミングが到来しているか否か判定する（ステップＳ２０１）。所定のタイミングが到来している場合には（ステップＳ２０１−ＹＥＳ）、一時共通鍵生成部２１１は、一時共通鍵を生成する（ステップＳ２０２）。そして、一時共通鍵暗号化部２１２は、一時共通鍵生成部２１１によって生成された最新の一時共通鍵を共通鍵で暗号化する（ステップＳ２０３）。所定のタイミングが到来していない場合（ステップＳ２０１−ＮＯ）又はステップＳ２０３の処理の後、データ暗号化部２１３は、一時共通鍵生成部２１１によって生成された最新の一時共通鍵で、データ生成装置１０から入力したデータを暗号化する（ステップＳ２０４）。ステップＳ２０４の処理の後、データ暗号化部２１３は、暗号化データと、データの暗号化に用いられた一時共通鍵の暗号化一時共通鍵とを対応付けて暗号化データ記憶部２０９に書き込む（ステップＳ２０５）。以上の処理で、図４に示される暗号化処理が終了する。暗号化装置２０ａは、データ生成装置１０からデータが出力される度に、図４に示される暗号化処理を実行する。
【００３１】
図５は、復号化装置３０の第一実施形態（復号化装置３０ａ）の機能構成を表すブロック図である。復号化装置３０ａは、バスで接続されたＣＰＵやメモリや補助記憶装置などを備え、復号化プログラムを実行する。復号化装置３０ａは、入力部３０１、復号鍵記憶部３０２、共通鍵復号化部３０３、データ復元部３０４ａを備える装置として機能する。復号化装置３０ａの各機能の全て又は一部は、ＡＳＩＣやＰＬＤやＦＰＧＡ等のハードウェアを用いて実現されても良い。復号化プログラムは、コンピュータ読み取り可能な記録媒体に記録されても良い。なお、復号化装置３０ａは、物理的なセキュリティが維持されている環境にて使用される。
【００３２】
入力部３０１は、暗号化装置２０ａの暗号鍵記憶部２０２に記憶されている暗号鍵に対応する復号鍵の入力を受け付ける。入力部３０１は、復号鍵の入力を受けると、その復号鍵を復号鍵記憶部３０２に書き込む。
復号鍵記憶部３０２は、磁気ハードディスク装置や半導体記憶装置などの記憶装置である。復号鍵記憶部３０２は、入力部３０１によって書き込まれる復号鍵を記憶する。
【００３３】
共通鍵復号化部３０３は、復号鍵記憶部３０２に記憶されている復号鍵で、暗号化装置２０ａの暗号化共通鍵記憶部２０７に記憶されている暗号化共通鍵を復号化し、共通鍵を復元する。
データ復元部３０４ａは、共通鍵復号化部３０３によって復号化された共通鍵を使用して、暗号化データ記憶部２０９に記憶される暗号化データを復号化し、データ生成装置１０から出力されたデータを復元する。以下、データ復元部３０４ａについてさらに詳細に説明する。
【００３４】
データ復元部３０４ａは、一時共通鍵復号化部３０５、データ復号化部３０６を備える。一時共通鍵復号化部３０５は、共通鍵復号化部３０３によって復号化された共通鍵で、暗号化装置２０ａの暗号化データ記憶部２０９に記憶されている暗号化一時共通鍵を復号化し、一時共通鍵を復元する。データ復号化部３０６は、復元された一時共通鍵で、復元される前の暗号化一時共通鍵と対応付けて暗号化データ記憶部２０９に記憶されていた暗号化データを復号化する。データ復号化部３０６は、この復号化処理によって、データ生成装置１０から出力されたデータを復元する。そして、データ復号化部３０６は復元したデータを出力する。データの出力先は、他の情報処理装置であっても良いし、記憶装置であっても良いし、画像表示装置であっても良いし、印刷装置であっても良い。
【００３５】
図６は、復号化装置３０ａの復号化処理の動作の流れを表すフローチャートである。図６の復号化処理を開始する前に、復号化装置３０ａの復号鍵記憶部３０２には復号鍵が書き込まれている。復号化装置３０ａは、暗号化装置２０ａに記憶されている情報及び復号鍵を用いて、データ生成装置１０から出力されたデータを復元する。まず、復号化装置３０ａの共通鍵復号化部３０３が、復号鍵記憶部３０２に記憶されている復号鍵で暗号化共通鍵を復号化し、共通鍵を復元する（ステップＳ３０１）。次に、一時共通鍵復号化部３０５が、復元された共通鍵で暗号化一時共通鍵を復号化し、一時共通鍵を復元する（ステップＳ３０２）。次に、データ復号化部３０６が、復元された一時共通鍵で、復号化される前の暗号化一時共通鍵に対応していた暗号化データを復号化する（ステップＳ３０３）。この処理によって、データ生成装置１０から出力されたデータが復元される。そして、データ復号化部３０６は、復元したデータを出力する（ステップＳ３０４）。
【００３６】
第一実施形態の暗号化装置２０ａでは、認証部２０１による認証を受けた登録主体のみが、暗号化装置２０ａにおいて使用される暗号鍵を暗号化装置２０ａに入力し登録することができる。そのため、たとえ暗号化装置２０ａが公共の場所に設置されて不特定多数の者に触れられる可能性が生じたとしても、正当な権限を有していない者（認証を受けられない者）によって勝手に暗号鍵が登録されてしまうことを防止できる。したがって、暗号化装置２０ａのデータの秘匿性を向上させることができる。
【００３７】
また、暗号化装置２０ａでは、データ生成装置１０から出力されるデータを、公開鍵暗号方式によって生成された暗号鍵ではなく、共通鍵暗号方式によって生成された一時共通鍵で暗号化する。そのため、公開鍵暗号方式によって生成された暗号鍵で暗号化する場合に比べて、計算コストを低減させ、暗号化処理に要する時間を短縮することができる。特に、データ生成装置１０は繰り返しデータを出力するため、暗号化装置２０ａは繰り返し暗号化処理を実行する必要がある。このような状況においては、暗号化処理に時間を要してしまうと実時間での暗号化ができなくなってしまうおそれがある。そのため、上記のように計算コストを低減させ、暗号化処理に要する時間を短縮することは非常に大きな効果を奏する。
【００３８】
また、一時共通鍵は共通鍵で暗号化されて、この一時共通鍵で暗号化された暗号化データと対応付けて暗号化データ記憶部２０９に書き込まれる。また、一時共通鍵は、一時共通鍵生成部２１１、一時共通鍵暗号化部２１２、データ暗号化部２１３のそれぞれによって、処理が終わると復元できないように消去される。そのため、復号鍵を有していなければ暗号化データを復号化することはできなくなる。したがって、暗号化データの秘匿性が向上する。
【００３９】
また、上述したように一時共通鍵は、共通鍵で暗号化される。そのため、一時共通鍵が暗号鍵で暗号化される場合に比べて、計算コストを低減させ、暗号化処理に要する時間を短縮することができる。すなわち、暗号化装置２０ａは、公開鍵暗号方式によって生成された暗号鍵による暗号化処理は、前処理において共通鍵を暗号化する時にのみ実行される。そして、図４に示されるように、データ生成装置１０から繰り返し出力されるデータを暗号化する際には、公開鍵暗号方式によって生成された暗号鍵による暗号化処理は行われない。そのため、計算コストを低減させ、暗号化処理に要する時間を短縮することができる。
【００４０】
また、暗号化装置２０ａは、データ生成装置１０から出力されたデータを、所定のタイミング毎に異なる態様で暗号化する。具体的には、暗号化装置２０ａでは、所定のタイミング毎に異なる一時共通鍵でデータを暗号化する。そのため、たとえデータ生成装置１０から同じデータが出力されたとしても、所定のタイミング毎に異なる暗号化データが生成される。そのため、万が一暗号化データが漏洩した場合にも、第三者による暗号化データの解析が困難であり、平文のデータを推測することや、暗号化のアルゴリズムを特定すること等を困難にすることができる。
【００４１】
また、暗号化装置２０ａの消去部２０５は、暗号化装置２０ａの物理的なセキュリティを維持できないと推定される状態を検出した場合に、共通鍵記憶部２０３に記憶されている共通鍵のデータを復元できないように消去する。そのため、暗号化装置２０ａの物理的なセキュリティを維持できなくなった際に、共通鍵が漏洩してしまうことを防止できる。したがって、第三者が共通鍵を用いて暗号化一時共通鍵及び暗号化データを復号化してしまうことを防止できる。
【００４２】
＜変形例＞
共通鍵記憶部２０３は、揮発性記憶装置であっても良い。この場合、共通鍵記憶部２０３は、自身に電力が供給されなくなった場合に、共通鍵のデータが消失し復元できなくなる。そのため、共通鍵記憶部２０３が揮発性記憶装置である場合には、暗号化装置２０ａは消去部２０５を備えなくとも良い。また、共通鍵記憶部２０３が揮発性記憶装置である場合には、消去部２０５は、所定の条件が満たされた場合に共通鍵記憶部２０３への電力の供給を遮断するように構成されても良い。
【００４３】
共通鍵記憶部２０３が記憶する共通鍵は、暗号化装置２０ａの製造時に既に共通鍵記憶部２０３に書き込まれていても良い。この場合、暗号化装置２０ａは、共通鍵生成部２０４を備えなくとも良い。
データ暗号化部２１３は、暗号化データと暗号化一時共通鍵とを、異なる記憶装置にそれぞれ書き込んでも良い。例えば、データ暗号化部２１３は、暗号化データを暗号化データ記憶部２０９に書き込み、暗号化一時共通鍵を不図示の暗号化一時共通鍵記憶部に書き込んでも良い。この場合、データ暗号化部２１３は、暗号化データに対し、対応する暗号化一時共通鍵の識別情報を対応付けて書き込んでも良い。また、データ暗号化部２１３は、暗号化一時共通鍵に対し、対応する暗号化データの識別情報を対応付けて書き込んでも良い。
【００４４】
［第二実施形態］
図７は、暗号化装置２０の第二実施形態（暗号化装置２０ｂ）の機能構成を表すブロック図である。暗号化装置２０ｂは、暗号化部２０８ａに代えて暗号化部２０８ｂを備える点と、消去部２０５に代えて消去部２２５を備える点と、で暗号化装置２０ａと異なり、その他の構成は暗号化装置２０ａと同じである。消去部２２５は、所定の条件が満たされた場合に、共通鍵記憶部２０３に記憶されている共通鍵だけではなく、一時共通鍵記憶部２２１に記憶されている一時共通鍵も消去する。暗号化部２０８ｂは、タイミング毎に一時共通鍵を生成するのではなく、予め複数の一時共通鍵を記憶しておきその中から一つの一時共通鍵を選択して使用する。暗号化装置２０ｂによって暗号化された暗号化データを復号化する復号化装置は、復号化装置３０の第一実施形態（復号化装置３０ａ）と同じ構成であるため、説明を省略する。以下、暗号化部２０８ｂについて詳細に説明する。
【００４５】
暗号化部２０８ｂは、一時共通鍵記憶部２２１、選択部２２２、一時共通鍵暗号化部２２３、データ暗号化部２２４を備える。
一時共通鍵記憶部２２１は、磁気記憶装置や半導体記憶装置などの記憶装置である。一時共通鍵記憶部２２１は、予め生成された複数の一時共通鍵を記憶する。
【００４６】
選択部２２２は、所定のタイミング毎に一時共通鍵記憶部２２１から一時共通鍵を選択する。所定のタイミングとは、一時共通鍵生成部２１１における所定のタイミングと同じである。選択部２２２は、例えば一時共通鍵記憶部２２１に記憶される複数の一時共通鍵の中から、ランダムに一つを選択しても良い。選択部２２２は、少なくとも前回選択された一時共通鍵とは異なる一時共通鍵を選択することが望ましい。
【００４７】
一時共通鍵暗号化部２２３は、一時共通鍵生成部２１１によって生成された一時共通鍵ではなく、選択部２２２によって選択された一時共通鍵を暗号化する。この点を除けば、一時共通鍵暗号化部２２３の構成は一時共通鍵暗号化部２１２と同じである。
データ暗号化部２２４は、一時共通鍵生成部２１１によって生成された一時共通鍵ではなく、選択部２２２によって選択された一時共通鍵でデータを暗号化する。この点を除けば、データ暗号化部２２４の構成はデータ暗号化部２１３と同じである。
【００４８】
図８は、暗号化装置２０ｂの暗号化処理の動作の流れを表すフローチャートである。暗号化装置２０ｂは、図３に示される前処理が完了した後、データ生成装置１０から出力されるデータに対して図８に示される暗号化処理を実行する。以下、暗号化装置２０ａの暗号化処理（図４）と異なる点についてのみ説明する。所定のタイミングが到来している場合には（ステップＳ２０１−ＹＥＳ）、選択部２２２は、一時共通鍵記憶部２２１に記憶されている複数の一時共通鍵の中から一時共通鍵を選択する（ステップＳ２１２）。この処理を除けば、暗号化装置２０ｂの処理の流れは暗号化装置２０ａの処理の流れと同じである。
第二実施形態の暗号化装置２０ｂでは、第一実施形態の暗号化装置２０ａと同様の作用及び効果を奏する。さらに、第二実施形態の暗号化装置２０ｂでは、一時共通鍵を生成する必要が無くなる。そのため、データの暗号化に要する時間を短縮することが可能となる。また、第二実施形態の暗号化装置２０ｂは、第一実施形態の暗号化装置２０ａと同様の変形がなされても良い。
【００４９】
［第三実施形態］
図９は、暗号化装置２０の第三実施形態（暗号化装置２０ｃ）の機能構成を表すブロック図である。暗号化装置２０ｃは、暗号化部２０８ａに代えて暗号化部２０８ｃを備える点と、暗号化データ記憶部２０９に代えて暗号化データ記憶部２３９を備える点と、で暗号化装置２０ａと異なり、その他の構成は暗号化装置２０ａと同じである。暗号化部２０８ｃは、タイミング毎に異なる一時共通鍵でデータを暗号化するのではなく、データに対してタイミング毎に異なる挿入データを挿入して暗号化する。以下、暗号化部２０８ｃ及び暗号化データ記憶部２３９について詳細に説明する。
【００５０】
暗号化部２０８ｃは、挿入データ生成部２３１及びデータ暗号化部２３２を備える。
挿入データ生成部２３１は、所定のタイミング毎に挿入データを生成する。所定のタイミングとは、一時共通鍵生成部２１１における所定のタイミングと同じである。挿入データ生成部２３１は、乱数を生成し、生成された乱数を挿入データとして出力する。挿入データのデータ長は、固定であっても良いし変動しても良い。挿入データ生成部２３１は、新たな挿入データを生成すると、古くなった挿入データを、復元できないように消去しても良い。
【００５１】
データ暗号化部２３２は、データ生成装置１０から出力されたデータに対し、挿入データ生成部２３１によって出力された挿入データを挿入する。挿入データの挿入場所は、予め決められた場所であっても良いし、その都度異なる場所（例えばランダムに選択された場所）であっても良い。データ暗号化部２３２は、挿入データが挿入されたデータ（以下、「挿入済データ」という。）を、共通鍵記憶部２０３に記憶されている共通鍵で暗号化する。データ暗号化部２３２は、挿入済データが暗号化されたデータ（以下、「暗号化挿入済データ」という。）と挿入データとを対応付けて暗号化データ記憶部２３９に書き込む。そして、データ暗号化部２３２は、暗号化が済んだ平文のデータを復元できないように消去する。
【００５２】
暗号化データ記憶部２３９は、磁気ハードディスク装置や半導体記憶装置などの記憶装置である。暗号化データ記憶部２３９は、データ暗号化部２３２によって書き込まれる暗号化挿入済データ及び挿入データを対応付けて記憶する。
【００５３】
図１０は、暗号化装置２０ｃの暗号化処理の動作の流れを表すフローチャートである。暗号化装置２０ｃは、図３に示される前処理が完了した後、データ生成装置１０から出力されるデータに対して図１０に示される暗号化処理を実行する。まず、暗号化装置２０ｃの挿入データ生成部２３１は、所定のタイミングが到来しているか否か判定する（ステップＳ４０１）。所定のタイミングが到来している場合には（ステップＳ４０１−ＹＥＳ）、挿入データ生成部２３１は、挿入データを生成する（ステップＳ４０２）。所定のタイミングが到来していない場合（ステップＳ４０１−ＮＯ）又はステップＳ４０２の処理の後、データ暗号化部２３２は、挿入データ生成部２３１によって生成された最新の挿入データを、データ生成装置１０から出力されたデータに挿入する（ステップＳ４０３）。次に、データ暗号化部２３２は、挿入済データを、共通鍵で暗号化する（ステップＳ４０４）。そして、データ暗号化部２３２は、暗号化挿入済データと、データに挿入された挿入データとを対応付けて暗号化データ記憶部２３９に書き込む（ステップＳ４０５）。以上の処理で、図１０に示される暗号化処理が終了する。暗号化装置２０ｃは、データ生成装置１０からデータが出力される度に、図１０に示される暗号化処理を実行する。
【００５４】
図１１は、復号化装置３０の第三実施形態（復号化装置３０ｃ）の機能構成を表すブロック図である。復号化装置３０ｃは、データ復元部３０４ａに代えてデータ復元部３０４ｃを備える点で復号化装置３０ａと異なり、その他の構成は復号化装置３０ａと同じである。以下、データ復元部３０４ｃについて詳細に説明する。
データ復元部３０４ｃは、データ復号化部３２１及び挿入データ除去部３２２を備える。
【００５５】
データ復号化部３２１は、共通鍵復号化部３０３によって復元された共通鍵で、暗号化装置２０ｃに記憶されていた暗号化挿入済データを復号化する。この処理によって、データ復号化部３２１は挿入済データを復元する。
挿入データ除去部３２２は、データ復号化部３２１によって復元された挿入済データから、復元される前の暗号化挿入済データと対応付けて暗号化データ記憶部２３９に記憶されていた挿入データを除去する。挿入データ除去部３２２は、この処理によって、データ生成装置１０から出力されたデータを復元する。そして、挿入データ除去部３２２は復元したデータを出力する。データの出力先は、他の情報処理装置であっても良いし、記憶装置であっても良いし、画像表示装置であっても良いし、印刷装置であっても良い。
【００５６】
図１２は、復号化装置３０ｃの復号化処理の動作の流れを表すフローチャートである。図１２の復号化処理を開始する前に、復号化装置３０ｃの復号鍵記憶部３０２には復号鍵が書き込まれている。復号化装置３０ｃは、暗号化装置２０ｃに記憶されている情報及び復号鍵を用いて、データ生成装置１０から出力されたデータを復元する。まず、復号化装置３０ｃの共通鍵復号化部３０３が、復号鍵記憶部３０２に記憶されている復号鍵で暗号化共通鍵を復号化し、共通鍵を復元する（ステップＳ５０１）。次に、データ復号化部３２１が、復元された共通鍵で暗号化挿入済データを復号化し、挿入済データを復元する（ステップＳ５０２）。次に、挿入データ除去部３２２が、復元された挿入済データから、復号化される前の暗号化挿入済データに対応していた挿入データを除去する（ステップＳ５０３）。この処理によって、データ生成装置１０から出力されたデータが復元される。そして、挿入済データ除去部３２２は、復元したデータを出力する（ステップＳ５０４）。
【００５７】
第三実施形態の暗号化装置２０ｃでは、認証部２０１による認証を受けた登録主体のみが、暗号化装置２０ｃにおいて使用される暗号鍵を暗号化装置２０ｃに入力し登録することができる。そのため、第一実施形態の暗号化装置２０ａと同様に、データの秘匿性を向上させることができる。
また、暗号化装置２０ｃでは、データ生成装置１０から出力されるデータを、公開鍵暗号方式によって生成された暗号鍵ではなく、共通鍵暗号方式によって生成された共通鍵で暗号化する。そのため、第一実施形態の暗号化装置２０ａと同様に、計算コストを低減させ、暗号化処理に要する時間を短縮することができる。
【００５８】
また、暗号化装置２０ｃは、データ生成装置１０から出力されたデータを、所定のタイミング毎に異なる態様で暗号化する。具体的には、暗号化装置２０ｃでは、所定のタイミング毎に異なる挿入データをデータに挿入し、挿入済データを暗号化する。そのため、たとえデータ生成装置１０から同じデータが出力されたとしても、所定のタイミング毎に異なる暗号化データが生成される。そのため、万が一暗号化データが漏洩した場合にも、暗号化データの解析が困難であり、平文のデータを推測することや、暗号化のアルゴリズムを特定すること等を困難にすることができる。
【００５９】
また、暗号化装置２０ｃの消去部２０５は、暗号化装置２０ｃの物理的なセキュリティを維持できないと推定される状態を検出した場合に、共通鍵記憶部２０３に記憶されている共通鍵のデータを復元できないように消去する。そのため、暗号化装置２０ｃの物理的なセキュリティを維持できなくなった際に、共通鍵が漏洩してしまうことを防止できる。したがって、第三者が共通鍵を用いて暗号化データを復号化してしまうことを防止できる。
【００６０】
＜変形例＞
共通鍵記憶部２０３は、揮発性記憶装置であっても良い。この場合、共通鍵記憶部２０３は、自身に電力が供給されなくなった場合に、共通鍵のデータが消失し復元できなくなる。そのため、共通鍵記憶部２０３が揮発性記憶装置である場合には、暗号化装置２０ｃは消去部２０５を備えなくとも良い。また、共通鍵記憶部２０３が揮発性記憶装置である場合には、消去部２０５は、所定の条件が満たされた場合に共通鍵記憶部２０３への電力の供給を遮断するように構成されても良い。
【００６１】
共通鍵記憶部２０３が記憶する共通鍵は、暗号化装置２０ｃの製造時に既に共通鍵記憶部２０３に書き込まれていても良い。この場合、暗号化装置２０ｃは、共通鍵生成部２０４を備えなくとも良い。
データ暗号化部２３２は、暗号化挿入済データと挿入データとを、異なる記憶装置にそれぞれ書き込んでも良い。例えば、データ暗号化部２３２は、暗号化挿入済データを暗号化データ記憶部２３９に書き込み、挿入データを不図示の挿入データ記憶部に書き込んでも良い。この場合、データ暗号化部２３２は、暗号化挿入済データに対し、対応する挿入データの識別情報を対応付けて書き込んでも良い。また、データ暗号化部２３２は、挿入データに対し、対応する暗号化挿入済データの識別情報を対応付けて書き込んでも良い。
【００６２】
また、挿入データ生成部２３１は、予め定められた所定のデータ長の挿入データを生成しても良い。さらに、データ暗号化部２３２は、予め定められた所定の位置に挿入データを挿入しても良い。このように構成された場合、挿入データ除去部３２２は、挿入データを取得することなく、挿入済データから挿入データを除去できる。そのため、データ暗号化部２３２は、挿入データを書き込まずに、暗号化挿入済データのみを暗号化データ記憶部２３９に書き込んでも良い。
【００６３】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【符号の説明】
【００６４】
１…暗号化復号化システム，  １０…データ生成装置，  ２０ａ，２０ｂ，２０ｃ…暗号化装置，  ３０ａ，３０ｃ…復号化装置，  ２０１…認証部，  ２０２…暗号鍵記憶部，  ２０３…共通鍵記憶部，  ２０４…共通鍵生成部，  ２０５…消去部，  ２０６…共通鍵暗号化部，  ２０７…暗号化共通鍵記憶部，  ２０８ａ，２０８ｂ，２０８ｃ…暗号化部，  ２０９…暗号化データ記憶部，  ２１１…一時共通鍵生成部，  ２１２…一時共通鍵暗号化部，  ２１３…データ暗号化部，  ２２１…一時共通鍵記憶部，  ２２２…選択部，  ２２３…一時共通鍵暗号化部，  ２２４…データ暗号化部，  ２３１…挿入データ生成部，  ２３２…データ暗号化部，  ３０１…入力部，  ３０２…復号鍵記憶部，  ３０３…共通鍵復号化部，  ３０４ａ，３０４ｃ…データ復元部，  ３０５…一時共通鍵復号化部，  ３０６…データ復号化部，  ３２１…データ復号化部，  ３２２…挿入データ除去部
【図１】
2012105068.tif 000003
【図２】
2012105068.tif 000004
【図３】
2012105068.tif 000005
【図４】
2012105068.tif 000006
【図５】
2012105068.tif 000007
【図６】
2012105068.tif 000008
【図７】
2012105068.tif 000009
【図８】
2012105068.tif 000010
【図９】
2012105068.tif 000011
【図１０】
2012105068.tif 000012
【図１１】
2012105068.tif 000013
【図１２】
2012105068.tif 000014