(57)【要約】【課題】  第三者機関での運用を容易にし、時限復号システムの全体構成を簡単にして運用を容易にする。【解決手段】  共通鍵で暗号化した暗号文と復号指定時刻とに基づいて自己解凍可能な圧縮ファイルを生成する手段（１）と、生成された圧縮ファイルおよび復号時に使用する第三者機関の鍵証明書（４）が書き込まれる記憶媒体（２）と、第三者機関が発行する現在時刻証明書（５）に添付されたデジタル署名を検証し、現在時刻証明書から取り出した現在時刻と、記憶媒体から読み出した自己解凍圧縮ファイル内に記憶されている復号指定時刻とを比較し、復号指定時刻が現在時刻より未来でないことを条件に、共通鍵を用いて暗号文を復号する手段（３）とを備えたものである。【選択図】        図１
2005051479.tif 000002
【特許請求の範囲】
【請求項１】
共通鍵で暗号化した暗号文と復号指定時刻とに基づいて自己解凍可能な圧縮ファイルを生成する手段と、
生成された圧縮ファイルおよび復号時に使用する第三者機関の鍵証明書が書き込まれる記憶媒体と、
第三者機関が発行する現在時刻証明書に添付されたデジタル署名を検証し、現在時刻証明書から取り出した現在時刻と、記憶媒体から読み出した自己解凍圧縮ファイル内に記憶されている復号指定時刻とを比較し、復号指定時刻が現在時刻より未来でないことを条件に、共通鍵を用いて暗号文を復号する手段と、
を備えた時限暗号化／復号システム。
【請求項２】
前記記憶媒体がＩＣカードであることを特徴とする請求項１記載の時限暗号化／復号システム。
【請求項３】
共通鍵で暗号化した暗号文と復号指定時刻とに基づいて自己解凍可能な圧縮ファイルを生成する手段と、
生成された圧縮ファイルおよび復号時に使用する第三者機関の鍵証明書が書き込まれ、自己解凍手段を有するＩＣカードとからなり、
前記自己解凍手段は、第三者機関が発行する現在時刻証明書に添付されたデジタル署名を検証し、現在時刻証明書から取り出した現在時刻と、自己解凍圧縮ファイル内に記憶されている復号指定時刻とを比較し、復号指定時刻が現在時刻より未来でないことを条件に、共通鍵を用いて暗号文を復号することを特徴とする時限暗号化／復号システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は暗号化されたデータについて、事前に設定した期間が経過するまで復号が困難となる時限暗号化／復号装置に関する。
【背景技術】
【０００２】
従来、暗号化されたデータがある期間誰にもその内容を知られたくない場合には、次のような２つの提案がされている
1)計算量的に、ある程度の期間復号が困難な問題を用いる。
2)信頼できる第三者機関（trusted agent ）に対して、復号に必要な情報の一部を預け一定期間の管理を委託する（非特許文献１）。
【０００３】
1)の方法は、例えば解読方法が公知の暗号を用いて、最速の解読法とコンピュータの計算能力（将来のコンピュータの発達も考慮）から、解読までに必要な時間を大まかに設定する方法である。
2)の方法は、例えば信頼できる第三者機関に鍵やアルゴリズム、暗号文の一部等を預けることで、復号の時期を制御するものである。
【非特許文献１】Numao,M.,"Timed-Release Threshold Cryptosystem,"                        SCIS'99   Rivest,L.R.,Shamir,A.,and Wagner,D.A.,                        "Time-lock puzzles and timed-release Crpto,"MIT                         Technical Paper,1996
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上記1)の方法は、計算能力の発達の見積もりが困難であり、想定した期間内に暗号文が解読される、あるいは想定した期間が過ぎても解読ができないといったことが起こり得る。
2)の方法は、利用者が多くなると、第三者機関における鍵等のデータの管理が極めて困難になる。また、鍵管理などで第三者機関を完全に信用することができないというポリシーを持っている場合には、複数の第三者機関を利用して、秘密情報分散法を援用しなければならない（非特許文献２）。
【非特許文献２】Shamir,A."How to share a secret",Communications                         of theACM,Vol.22,pp.612-613 November 1979
【課題を解決するための手段】
【０００５】
本発明は上記課題を解決しようとするものであり、第三者機関での運用を容易にし、時限復号システムの全体構成を簡単にして運用を容易にすることを目的とする。
【０００６】
本発明は、復号に必要なデータ、暗号文の一部、あるいはアルゴリズムそのものなどをＩＣカード等の耐タンパー性を持ち、かつ演算能力のある媒体に格納し、第三者機関からの何らかの情報を確認することで、復号を可能にするものである。この第三者機関からの情報には、デジタル署名やMAC(Message Authentication Code)が施されていて、ＩＣカード等の真正性を確認してからその情報を利用してしても良く、第三者機関が情報の制限をすることで、復号の時期を制限しても良く、あるいは第三者機関からは日時や時刻の情報がただ出力されるだけで、ＩＣカード等が復号の時期を制限しても良い。
【発明の効果】
【０００７】
第三者機関が個々のデータを復号するのに必要な情報を減らすことができるため、第三者機関の運用が容易になる。
複数の第三者機関による秘密情報分散を行わなくてもよいため、時限復号システム全体の構成が簡単で運用が容易になる。
【発明を実施するための最良の形態】
【０００８】
以下、本発明の実施の形態について説明する。
図１は本発明の暗号化／復号システムの例を説明する概念図である。
メッセージ送信者側では、暗号化プログラムを搭載したＰＣ（パーソナルコンピュータ）１を使用し、秘匿しておきたいメッセージＭを暗号化する。ＰＣにおける暗号化は、復号指定時刻Ｔ1 （秘匿されたメッセージの復号を可能ならしめる期日・時刻）、鍵Ｋを入力し、ＤＥＳやＲＣ５等のよく知られた共通鍵暗号化方式で暗号化し、さらにこの暗号文と復号指定時刻Ｔ1 とを合成して自己解凍が可能な形式の圧縮ファイルを作成する。ここで圧縮ファイルの暗号文ＥK （Ｍ，Ｔ1 ）は、鍵Ｋを用いてＭを暗号化し、時刻Ｔ1 までは復号を不可能に設定した暗号文である。なお、鍵ＫはＩＣカード２内に予め格納されているものを読み取ってもよいし、他の方法で与えてもよい。
【０００９】
自己解凍が可能な形式の圧縮ファイルは、ＩＣカード２内に書き込まれる。なお、ハードディスクやＣＤＲ等の通常のＰＣ外部記憶媒体に記憶させてもよい。ＩＣカードまたは外部記録媒体への書き込みが終了したら、書き込みの成功／失敗の如何にかかわらず、書き込み終了後に、メモリ上に残存していた暗号文と圧縮ファイルをメモリ上から消去する。この消去はメモリ領域を特定の値（ゼロ等）で埋めるなどの方法で行う。
【００１０】
また、ＰＣ１から復号時に利用する予定の第三者機関の公開鍵証明書４をＩＣカード２内に書き込む。この書き込みエリアは、正当なカード保持者以外の者にはアクセスできないように、ＰＩＮ等によってアクセス制御されていなければならない。
【００１１】
ＩＣカード内に書き込まれた自己解凍形式の圧縮ファイルは受信者側のＰＣ３に読み込まれて自己解凍され、復号されたメッセージＭが得られる。このとき、第三者機関が発行した現在時刻証明書５を必要とする。すなわち、現在時刻証明書に添付された第三者機関のデジタル署名を検証し、現在時刻証明書の真正性を確かめる。デジタル署名検証の際に必要な第三者機関の公開鍵はＩＣカード内に記憶されているものを使用する。
【００１２】
現在時刻証明書の真正性が確認できたら、証明書から現在時刻Ｔ（秘匿されたメッセージの復号を実際に試みるときの時刻）を取り出し、自己解凍圧縮ファイル内に記憶されているＴ1 とＴを比較し、
Ｔ1 ＞Ｔ（ここで＞はＴ1 がＴより未来の時刻であることを示す）
であれば、解凍失敗のメッセージを返して処理を終了する。
【００１３】
Ｔ1 が現在時刻Ｔ以前の時刻ならば、鍵Ｋを用いてメモリＭを復号して出力する。鍵ＫはＩＣカード内に予め格納されているものを読み取ってもよいし、他の方法で与えてもよい。
【００１４】
図２は暗号化時の処理フローを説明する図である。
【００１５】
ＰＣ上の暗号化のプログラムは、入力としてメッセージＭ、鍵Ｋ、復号指定時刻Ｔ1 を取り込み（ステップＳ１）、鍵Ｋを用いてメッセージＭを暗号化する（ステップＳ２）。次いで、作成された暗号文と復号指定時刻Ｔ1 とを合成して、ＰＣ上で自己解凍が可能な形式の圧縮ファイルを作成し（ステップＳ３）、作成された自己解凍形式の圧縮ファイルを、ＩＣカード内に書き込む（ステップＳ４）。  ＩＣカードへの書き込みが終了したら、書き込みの成功／失敗の如何にかかわらず、書き込み終了後に、メモリ上に残存していた暗号文と圧縮ファイルをメモリ上から消去する（ステップＳ５）。次いで、復号時に利用する予定の第三者機関の公開鍵証明書をＩＣカード内に書き込む（ステップＳ６）。
【００１６】
図３は自己解凍時の処理フローを説明する図である。
第三者機関が発行した現在時刻証明書を取得し（ステップＳ１１）、現在時刻証明書に添付された第三者機関のデジタル署名を検証して現在時刻証明書の真正性を確かめる（ステップＳ１２）。現在時刻証明書が真正か否か判断し（ステップＳ１３）、真正性が確認できたら、現在時刻証明書から現在時刻Ｔを取り出し、自己解凍圧縮ファイル内に記憶されているＴ1 とＴを比較する（ステップＳ１４）。次いでＴ1 ＜Ｔか否か判断し、現在時刻が復号指定時刻を過ぎていれば鍵Ｋを用いてメッセージＭを復号して出力する（ステップＳ１６）。ステップＳ１３において現在時刻証明書が真正でなく、あるいはステップＳ１５においてＴ1 ＞Ｔの場合は、解凍失敗のメッセージを返して処理を終了する。
【００１７】
上記の例において復号プログラムが、時刻確認ロジック部と復号ロジック部から構成されており、復号プログラムがデータ（暗号文）を読み込んで動作する形式で本システムを実装した場合、攻撃者は時刻確認ロジック部だけを何らかの手段でパスしてしまえば、通常の暗号プログラムと同様に、鍵と暗号文だけで復号可能なデータがＰＣのメモリ上に展開されているため、指定した時刻にならなくても、鍵さえ入手すれば復号されてしまう可能性があった。しかし上記の例においては、時刻確認プログラム・ロジックと復号プログラム・ロジックと暗号文とを一体化した自己解凍形式の圧縮ファイルであるため、このような攻撃法は困難となる。
【００１８】
なお、上記の例においては復号時にＰＣ上で自己解凍していたが、ＩＣカード内に自己解凍するプログラムを組み込んでおき、ＩＣカード内で自己解凍するようにしてよい。
【図面の簡単な説明】
【００１９】
【図１】本発明のシステムの例を説明する概念図である。
【図２】暗号化時の処理フローを説明する図である。
【図３】復号時の処理フローを説明する図である。
【符号の説明】
【００２０】
１，３…パターンコンピュータ、２…ＩＣカード、４…公開鍵証明書、５…現在時刻証明書。
【図１】
2005051479.tif 000003
【図２】
2005051479.tif 000004
【図３】
2005051479.tif 000005