(57)【要約】【課題】暗号処理に用いられる鍵を簡便な処理で且つ第三者に漏洩する可能性を低減させるように管理すること。【解決手段】端末装置は、鍵生成の指示が入力されると、自装置に記憶されている鍵の全てのデータを消去し、乱数を生成し、生成された乱数を用いて鍵のデータを生成し、鍵のデータを、現在の時刻を表す時刻情報と、自装置を示す識別情報とともに、秘匿通信路を介して送信する。鍵管理装置は、秘匿通信路を介して、鍵のデータと、時刻情報と、識別情報と、を受信し、受信した鍵のデータを、同じタイミングで受信した時刻情報及び識別情報とともにデータベースに登録する。【選択図】図２
2013026840.tif 000002
【特許請求の範囲】
【請求項１】
端末装置が、鍵生成の指示が入力されると、自装置に記憶されている鍵の全てのデータを消去するステップと、
端末装置が、乱数を生成するステップと、
端末装置が、生成された乱数を用いて鍵のデータを生成するステップと、
端末装置が、前記鍵のデータを、現在の時刻を表す時刻情報と、自装置を示す識別情報とともに、秘匿通信路を介して送信するステップと、
鍵管理装置が、前記秘匿通信路を介して、前記鍵のデータと、前記時刻情報と、前記識別情報と、を受信するステップと、
鍵管理装置が、受信した前記鍵のデータを、同じタイミングで受信した前記時刻情報及び前記識別情報とともにデータベースに登録するステップと、
を有する鍵管理方法。
【請求項２】
端末装置が、
鍵生成の指示が入力されると、自装置に記憶されている鍵の全てのデータを消去する消去部と、
乱数を生成する乱数生成部と、
生成された乱数を用いて鍵のデータを生成する鍵生成部と、
前記鍵のデータを、現在の時刻を表す時刻情報と、自装置を示す識別情報とともに、秘匿通信路を介して送信する送信部と、
を備え、
鍵管理装置が、
前記秘匿通信路を介して、前記鍵のデータと、前記時刻情報と、前記識別情報と、を受信する通信部と、
受信した前記鍵のデータを、同じタイミングで受信した前記時刻情報及び前記識別情報とともにデータベースに登録するＤＢ追加部と、
を備える、鍵管理システム。
【請求項３】
鍵生成の指示が入力されると、自装置に記憶されている鍵の全てのデータを消去する消去部と、
乱数を生成する乱数生成部と、
生成された乱数を用いて鍵のデータを生成する鍵生成部と、
前記鍵のデータを、現在の時刻を表す時刻情報と、自装置を示す識別情報とともに、秘匿通信路を介して送信する送信部と、
を備える端末装置。
【請求項４】
鍵生成の指示が入力されると、自装置に記憶されている鍵の全てのデータを消去する消去部と、乱数を生成する乱数生成部と、生成された乱数を用いて鍵のデータを生成する鍵生成部と、前記鍵のデータを、現在の時刻を表す時刻情報と、自装置を示す識別情報とともに、秘匿通信路を介して送信する送信部と、を備える端末装置から、秘匿通信路を介して、前記鍵のデータと、前記時刻情報と、前記識別情報と、を受信する通信部と、
受信した前記鍵のデータを、同じタイミングで受信した前記時刻情報及び前記識別情報とともにデータベースに登録するＤＢ追加部と、
を備える、鍵管理装置。
【請求項５】
鍵生成の指示が入力されると、自装置に記憶されている鍵の全てのデータを消去する消去ステップと、
乱数を生成する乱数生成ステップと、
生成された乱数を用いて鍵のデータを生成する鍵生成ステップと、
前記鍵のデータを、現在の時刻を表す時刻情報と、自装置を示す識別情報とともに、秘匿通信路を介して送信する送信ステップと、
をコンピュータに実行させるためのコンピュータプログラム。
【請求項６】
鍵生成の指示が入力されると、自装置に記憶されている鍵の全てのデータを消去する消去部と、乱数を生成する乱数生成部と、生成された乱数を用いて鍵のデータを生成する鍵生成部と、前記鍵のデータを、現在の時刻を表す時刻情報と、自装置を示す識別情報とともに、秘匿通信路を介して送信する送信部と、を備える端末装置から、秘匿通信路を介して、前記鍵のデータと、前記時刻情報と、前記識別情報と、を受信する通信ステップと、
受信した前記鍵のデータを、同じタイミングで受信した前記時刻情報及び前記識別情報とともにデータベースに登録するＤＢ追加ステップと、
をコンピュータに実行させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、暗号処理に用いられる鍵の技術に関する。
【背景技術】
【０００２】
近年、データを暗号化する処理や、データに対してデジタル署名を付加する処理などが一般的に行われている。例えば、非特許文献１に開示された技術では、カメラに秘密鍵を内蔵しておき、カメラのデータに対してこの秘密鍵を用いた暗号化がなされる。暗号化やデジタル署名に用いられる秘密鍵は、データの所有者のみに明らかにされており、第三者には秘密となるように管理される必要がある。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】“Forging Canon Original Decision Data”，Dmitry Sklyarov，平成22年11月，CONFidence2.0
【発明の概要】
【発明が解決しようとする課題】
【０００４】
第三者が秘密鍵を得た場合、その秘密鍵を使って暗号化したデータ全てが秘密漏洩の危険にさらされる。また、その秘密鍵を使ってデジタル署名を行ったとしても、なりすましが行われるおそれがあり、信頼性が著しく低下する。例えば、全てのカメラにおいて同じ秘密鍵を用いて処理を行った場合、カメラに内蔵された秘密鍵が解読されると、全てのカメラの暗号機能が無効になってしまうおそれがある。
【０００５】
上記事情に鑑み、本発明は、暗号処理に用いられる鍵を簡便な処理で且つ第三者に漏洩する可能性を低減させるように管理する技術を提供することを目的としている。
【課題を解決するための手段】
【０００６】
本発明の一態様は、端末装置が、鍵生成の指示が入力されると、自装置に記憶されている鍵の全てのデータを消去するステップと、端末装置が、乱数を生成するステップと、端末装置が、生成された乱数を用いて鍵のデータを生成するステップと、端末装置が、前記鍵のデータを、現在の時刻を表す時刻情報と、自装置を示す識別情報とともに、秘匿通信路を介して送信するステップと、鍵管理装置が、前記秘匿通信路を介して、前記鍵のデータと、前記時刻情報と、前記識別情報と、を受信するステップと、鍵管理装置が、受信した前記鍵のデータを、同じタイミングで受信した前記時刻情報及び前記識別情報とともにデータベースに登録するステップと、を有する鍵管理方法である。
【０００７】
本発明の一態様は、端末装置が、鍵生成の指示が入力されると、自装置に記憶されている鍵の全てのデータを消去する消去部と、乱数を生成する乱数生成部と、生成された乱数を用いて鍵のデータを生成する鍵生成部と、前記鍵のデータを、現在の時刻を表す時刻情報と、自装置を示す識別情報とともに、秘匿通信路を介して送信する送信部と、を備え、鍵管理装置が、前記秘匿通信路を介して、前記鍵のデータと、前記時刻情報と、前記識別情報と、を受信する通信部と、受信した前記鍵のデータを、同じタイミングで受信した前記時刻情報及び前記識別情報とともにデータベースに登録するＤＢ追加部と、を備える、鍵管理システムである。
【０００８】
本発明の一態様は、鍵生成の指示が入力されると、自装置に記憶されている鍵の全てのデータを消去する消去部と、乱数を生成する乱数生成部と、生成された乱数を用いて鍵のデータを生成する鍵生成部と、前記鍵のデータを、現在の時刻を表す時刻情報と、自装置を示す識別情報とともに、秘匿通信路を介して送信する送信部と、を備える端末装置である。
【０００９】
本発明の一態様は、鍵生成の指示が入力されると、自装置に記憶されている鍵の全てのデータを消去する消去部と、乱数を生成する乱数生成部と、生成された乱数を用いて鍵のデータを生成する鍵生成部と、前記鍵のデータを、現在の時刻を表す時刻情報と、自装置を示す識別情報とともに、秘匿通信路を介して送信する送信部と、を備える端末装置から、秘匿通信路を介して、前記鍵のデータと、前記時刻情報と、前記識別情報と、を受信する通信部と、受信した前記鍵のデータを、同じタイミングで受信した前記時刻情報及び前記識別情報とともにデータベースに登録するＤＢ追加部と、を備える、鍵管理装置である。
【００１０】
本発明の一態様は、鍵生成の指示が入力されると、自装置に記憶されている鍵の全てのデータを消去する消去ステップと、乱数を生成する乱数生成ステップと、生成された乱数を用いて鍵のデータを生成する鍵生成ステップと、前記鍵のデータを、現在の時刻を表す時刻情報と、自装置を示す識別情報とともに、秘匿通信路を介して送信する送信ステップと、をコンピュータに実行させるためのコンピュータプログラムである。
【００１１】
本発明の一態様は、鍵生成の指示が入力されると、自装置に記憶されている鍵の全てのデータを消去する消去部と、乱数を生成する乱数生成部と、生成された乱数を用いて鍵のデータを生成する鍵生成部と、前記鍵のデータを、現在の時刻を表す時刻情報と、自装置を示す識別情報とともに、秘匿通信路を介して送信する送信部と、を備える端末装置から、秘匿通信路を介して、前記鍵のデータと、前記時刻情報と、前記識別情報と、を受信する通信ステップと、受信した前記鍵のデータを、同じタイミングで受信した前記時刻情報及び前記識別情報とともにデータベースに登録するＤＢ追加ステップと、をコンピュータに実行させるためのコンピュータプログラムである。
【発明の効果】
【００１２】
本発明により、暗号処理に用いられる鍵を簡便な処理で且つ第三者に漏洩する可能性を低減させるように管理することが可能となる。
【図面の簡単な説明】
【００１３】
【図１】鍵管理システムのシステム構成を表すシステム構成図である。
【図２】端末装置の機能構成を表す概略ブロック図である。
【図３】端末装置の処理の流れの具体例を示すフローチャートである。
【図４】鍵管理装置の機能構成を表す概略ブロック図である。
【図５】鍵データベースの概略を示す図である。
【図６】秘密鍵取得部の処理の流れの具体例を示すフローチャートである。
【発明を実施するための形態】
【００１４】
図１は、鍵管理システム１００のシステム構成を表すシステム構成図である。鍵管理システム１００は、複数の端末装置１０、鍵管理装置２０、ネットワーク３０を備える。端末装置１０及び鍵管理装置２０はネットワーク３０に接続されている。端末装置１０と鍵管理装置２０とは、ネットワーク３０を介して互いに通信可能である。
【００１５】
図２は、端末装置１０の機能構成を表す概略ブロック図である。端末装置１０は、バスで接続されたＣＰＵ（Central Processing Unit）やメモリや補助記憶装置などを備え、端末用プログラムを実行する。端末装置１０は、端末用プログラムの実行により、入力部１０１、秘密鍵記憶部１０２、秘密鍵消去部１０３、乱数生成部１０４、秘密鍵生成部１０５、ユニークＩＤ記憶部１０６、ユニークＩＤ取得部１０７、時刻情報出力部１０８、時刻情報取得部１０９、送信データ生成部１１０、送信部１１１、暗号化処理部１１２を備える装置として機能する。なお、端末装置１０の各機能の全て又は一部は、ＡＳＩＣ（Application Specific Integrated Circuit）やＰＬＤ（Programmable Logic Device）やＦＰＧＡ（Field Programmable Gate Array）等のハードウェアを用いて実現されても良い。端末用プログラムは、コンピュータ読み取り可能な記録媒体に記録されても良い。コンピュータ読み取り可能な記録媒体とは、例えばフレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置である。端末用プログラムは、ネットワーク等の伝送路を介して送受信されても良い。
【００１６】
入力部１０１は、端末装置１０に設けられた入力装置から入力信号を取得する。入力装置は、例えばマウスやボタンやキーボードやタッチパネル等の装置である。端末装置１０の操作者は、入力装置を操作することによって、秘密鍵を更新することを端末装置１０に指示することができる。入力部１０１は、入力装置から入力信号を取得すると、動作開始指示を秘密鍵消去部１０３に出力する。
【００１７】
秘密鍵記憶部１０２は、磁気ハードディスク装置や半導体記憶装置などの記憶装置を用いて構成される。秘密鍵記憶部１０２は、端末装置１０において用いられる秘密鍵のデータを記憶する。秘密鍵記憶部１０２は、秘密鍵のデータの読み出しに関しては、暗号化処理部１１２からのアクセスのみを許可し、その他の読み出しアクセスを拒絶する。そのため、原則として端末装置１０の使用者であっても暗号鍵のデータを取得することはできず、秘密鍵記憶部１０２に記憶されている秘密鍵のデータの漏洩が防止される。
【００１８】
秘密鍵消去部１０３は、入力部１０１から動作開始指示を受けると、秘密鍵記憶部１０２に記憶されている秘密鍵のデータを消去する。端末装置１０において秘密鍵記憶部１０２以外の記憶領域にも秘密鍵のデータが記録されている場合、秘密鍵消去部１０３は、全ての記憶領域から秘密鍵のデータを消去する。
【００１９】
乱数生成部１０４は、秘密鍵をランダムに生成するための乱数を生成する。乱数を元にして秘密鍵が生成されるため、秘密鍵のデータを参照しない限りは、秘密鍵のデータを知ることはできない。乱数生成部１０４は、例えば無作為性と予測不可能性を持つ既存の方法を用いて乱数を生成する。無作為性及び予測不可能性については、例えば以下の文献の２９９頁に記載されており、既存技術として従来から用いられている。結城浩著、“暗号技術入門”、ソフトバンククリエイティブ株式会社、ISBN4-7973-2297-7。このような乱数の生成方法の具体例としては、例えば一方向ハッシュ関数を使う方法がある（上記文献の３０８頁参照）。
【００２０】
秘密鍵生成部１０５は、乱数生成部１０４によって生成された乱数を用いて秘密鍵のデータを生成する。秘密鍵生成部１０５は、どのような既存の方法を適用して秘密鍵のデータを生成しても良い。例えば、秘密鍵生成部１０５は、乱数にハッシュ関数ＳＨＡ−２５６を適用して得られた２５６ビットの値を秘密鍵としても良い。秘密鍵生成部１０５は、生成した秘密鍵を秘密鍵記憶部１０２に書き込む。
【００２１】
ユニークＩＤ記憶部１０６は、磁気ハードディスク装置や半導体記憶部などの記憶装置を用いて構成される。ユニークＩＤ記憶部１０６は、端末装置１０に対して予め付与されているユニークＩＤを記憶する。ユニークＩＤは、他の端末装置１０と重複しない識別情報である。例えば、端末装置１０がコンピュータである場合には、ネットワークアダプタのＭＡＣアドレス（Media Access Control address）がユニークＩＤとして用いられても良い。例えば、端末装置１０が携帯電話装置である場合には、携帯電話装置の本体やＳＩＭカード等に記録されている固有の端末ＩＤ（例えばＩＭＳＩ（International Mobile Subscriber Identity））がユニークＩＤとして用いられても良い。
【００２２】
ユニークＩＤ取得部１０７は、ユニークＩＤ記憶部１０６からユニークＩＤを読み出して取得する。
時刻情報出力部１０８は、現在時刻を示す情報（時刻情報）を出力する。時刻情報出力部１０８は、例えば、端末装置１０に内蔵されている時計であっても良い。時刻情報出力部１０８は、例えば、ネットワーク３０を介して時刻情報を出力する時刻サーバーから時刻情報を受信し、受信した時刻情報を出力しても良い。時刻情報出力部１０８は、ＧＰＳ（Global Positioning System）によって衛星から時刻情報を受信し、受信した時刻情報を出力しても良い。時刻情報は、例えば年、月、日、時、分、秒、秒以下の値など全て含む。
【００２３】
時刻情報取得部１０９は、時刻情報出力部１０８から時刻情報を取得する。
送信データ生成部１１０は、秘密鍵生成部１０５によって生成された秘密鍵のデータと、ユニークＩＤ取得部１０７によって取得されたユニークＩＤと、時刻情報取得部１０９によって取得された時刻情報と、を含む送信データを生成する。
【００２４】
送信部１１１は、送信データ生成部１１０によって生成された送信データを、ネットワーク３０を介して鍵管理装置１０へ送信する。このとき、送信部１１１は、鍵管理装置２０との間で秘匿通信路を形成して送信データを送信する。秘匿通信路とは、送信側（端末装置１０）と受信側（鍵管理装置２０）以外の第三者によって送信データが判読されない通信路である。例えば、秘匿通信路は、ＴＣＰ／ＩＰ（Transmission Control Protocol／Internet Protocol）ネットワーク上のＳＳＬ（Secure Sockets Layer）通信を用いた通信路であっても良い。例えば、秘匿通信路は、送信側と受信側とが直結されている専用線により構築された通信路であっても良い。
【００２５】
暗号化処理部１１２は、端末装置１０の操作者による指示等に応じて、秘密鍵記憶部１０２に記憶されている秘密鍵を用いて、データの暗号化処理を行う。暗号化処理部１１２が暗号化を行う対象となるデータは、どのようなデータであっても良い。例えば、暗号化処理部１１２は、端末装置１０の操作者によって指定されたデータを暗号化しても良い。例えば、暗号化処理部１１２は、端末装置１０に搭載されたカメラで撮影された画像データを暗号化しても良い。
【００２６】
図３は、端末装置１０の処理の流れの具体例を示すフローチャートである。まず、入力装置が操作されることに応じて、入力部１０１が入力信号を取得し、動作開始指示を出力する（ステップＳ１０１）。次に、秘密鍵消去部１０３が、端末装置１０が備える記憶領域に記憶されている全ての秘密鍵のデータを消去する（ステップＳ１０２）。次に、乱数生成部１０４が乱数を生成する（ステップＳ１０３）。次に、秘密鍵生成部１０５が、乱数生成部１０４によって生成された乱数を用いて秘密鍵を生成する（ステップＳ１０４）。次に、ユニークＩＤ取得部１０７が、ユニークＩＤ記憶部１０６からユニークＩＤを読み出して取得する（ステップＳ１０５）。次に、時刻情報出力部１０９は、時刻情報出力部１０８から出力される時刻情報を取得する（ステップＳ１０６）。次に、送信データ生成部１１０が、秘密鍵のデータ、ユニークＩＤ及び時刻情報を用いて送信データを生成する。そして、送信部１１１が、秘匿通信路を介して送信データを鍵管理装置２０に送信する（ステップＳ１０７）。以上で、図３に示した処理が終了する。
【００２７】
図４は、鍵管理装置２０の機能構成を表す概略ブロック図である。鍵管理装置２０は、バスで接続されたＣＰＵやメモリや補助記憶装置などを備え、鍵管理プログラムを実行することによって、通信部２０１、鍵記憶部２０２、ＤＢ追加部２０３、リクエスト入力部２０４、秘密鍵取得部２０５、秘密鍵出力部２０６を備える装置として機能する。なお、鍵管理装置２０の各機能の全て又は一部は、ＡＳＩＣやＰＬＤやＦＰＧＡ等のハードウェアを用いて実現されても良い。鍵管理プログラムは、コンピュータ読み取り可能な記録媒体に記録されても良い。コンピュータ読み取り可能な記録媒体とは、例えばフレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置である。鍵管理プログラムは、ネットワーク等の伝送路を介して送受信されても良い。
【００２８】
通信部２０１は、ネットワーク３０を介して端末装置１０から送信データを受信する。このとき、通信部２０１は、端末装置１０との間で秘匿通信路を形成して送信データを受信する。
鍵記憶部２０２は、磁気ハードディスクや半導体記憶部などの記憶装置を用いて構成される。鍵記憶部２０２は、鍵データベースを記憶する。図５は、鍵データベースの概略を示す図である。鍵データベースは、レコードＩＤ毎に、ユニークＩＤ、秘密鍵のデータ、時刻情報を一つのレコードとして記録するデータベースである。鍵データベースは、レコードを表形式で管理している。レコードＩＤとユニークＩＤと秘密鍵と時刻情報とはそれぞれの列を有し、一つの行が１組のレコードを表す。鍵データベースには、同一のユニークＩＤについて複数のレコードが登録されても良い。
【００２９】
ＤＢ追加部２０３は、通信部２０１によって受信された送信データから、ユニークＩＤ、秘密鍵のデータ、時刻情報を抽出する。ＤＢ追加部２０３は、まだ鍵データベースに登録されていない新規のレコードＩＤを生成する。ＤＢ追加部２０３は、生成したレコードＩＤと、抽出したユニークＩＤ、秘密鍵のデータ及び時刻情報と、を一つのレコードとして鍵記憶部２０２の鍵データベースに登録する。
【００３０】
リクエスト入力部２０４は、鍵管理装置２０に設けられた入力装置から入力信号を取得する。入力装置は、例えばマウスやボタンやキーボードやタッチパネル等の装置である。鍵管理装置２０の操作者は、入力装置を操作することによって、秘密鍵を取得することのリクエストを鍵管理装置２０に指示することができる。このとき、鍵管理装置２０の操作者は、リクエストとともに、取得しようとする秘密鍵を生成した端末装置１０のユニークＩＤと、取得しようとする秘密鍵に関連する時刻情報と、を入力する。このように、鍵管理装置２０の操作者はユニークＩＤを入力する必要があることから、鍵管理装置２０の操作者は予めユニークＩＤを知っている。
【００３１】
取得しようとする秘密鍵に関連する時刻情報とは、取得しようとする秘密鍵が生成されたであろう時刻よりも後の時刻であり、次の秘密鍵が生成されたであろう時刻よりも前の時刻である。鍵管理装置２０の操作者は、取得しようとする秘密鍵に関連する時刻情報を適宜推測することによってリクエスト入力部２０４に入力する必要がある。リクエスト入力部２０４は、入力装置から上記リクエストと、ユニークＩＤと、時刻情報との入力を取得すると、取得したユニークＩＤ及び時刻情報とともに鍵取得指示を秘密鍵取得部２０５に出力する。
【００３２】
秘密鍵取得部２０５は、リクエスト入力部２０４から出力されたユニークＩＤ及び時刻情報に基づいて、鍵記憶部２０２の鍵データベースから秘密鍵を取得する。図６は、秘密鍵取得部２０５の処理の流れの具体例を示すフローチャートである。まず、秘密鍵取得部２０５は、リクエストとともに入力されたユニークＩＤを含む全てのレコードを、鍵データベースから取得する（ステップＳ２０１）。次に、秘密鍵取得部２０５は、取得した各レコードに記録されている時刻情報と、リクエストとともに入力された時刻情報とを比較する。そして、秘密鍵取得部２０５は、指定された時刻情報よりも過去の時刻情報の中で、最も新しい時刻情報のレコードを一つ選んで取得する（ステップＳ２０２）。秘密鍵取得部２０５は、レコードの取得に成功した場合（ステップＳ２０３−ＹＥＳ）、レコード内の秘密鍵のデータを秘密鍵出力部２０６に出力し、処理を終了する（ステップＳ２０４）。一方、秘密鍵取得部２０５は、レコードの取得に失敗した場合（ステップＳ２０３−ＮＯ）、すなわち条件に合致したレコードが無い場合、エラーを出力して処理を終了する（ステップＳ２０５）。
【００３３】
秘密鍵出力部２０６は、秘密鍵取得部２０５によって取得された秘密鍵のデータを、所定の機能部に出力する。例えば、リクエストの入力時に記憶領域や記憶媒体などが指定された場合には、秘密鍵出力部２０６は、指定された記憶領域や記憶媒体に秘密鍵のデータを記録しても良い。例えば、リクエストの入力時に宛先（例えばユニークＩＤに対応する端末装置１０）が指定された場合には、秘密鍵出力部２０６は、秘匿通信路を確立して指定された宛先に対して秘密鍵のデータを送信しても良い。例えば、秘密鍵のデータを用いて処理を行う機能が予め設定されている場合には、秘密鍵出力部２０６は、設定されている機能に対して秘密鍵のデータを出力しても良い。
【００３４】
通信部２０１及びＤＢ追加部２０３が行う処理と、リクエスト入力部２０４、秘密鍵取得部２０５及び秘密鍵出力部２０６が行う処理と、はそれぞれ独立に実行されても良い。
【００３５】
上述した鍵管理システム１００では、端末装置１０の入力部１０１が操作される度に、それまで秘密鍵記憶部１０２に記憶されていた秘密鍵のデータが端末装置１０から消去され、新しい秘密鍵のデータが生成される。この秘密鍵のデータは、端末装置１０の持ち主すら取得することはできない。そのため、端末装置１０の持ち主等の人為的なミスにより秘密鍵のデータが漏洩してしまうことを防ぐことができる。
【００３６】
また、秘密鍵のデータは、秘匿通信路を経由して鍵管理装置２０に送信されるため、その通信経路においても第三者への漏洩が防止される。そして、端末装置１０の秘密鍵消去部１０３によって消去された秘密鍵のデータは、鍵管理装置２０の鍵データベースにしか存在しない。そのため、秘密鍵のデータが第三者に漏洩する可能性を低く抑えることが可能となる。したがって、秘密鍵のデータを用いた不正行為を防止することが可能となる。
【００３７】
また、上述した鍵管理システム１００では、端末装置１０の入力部１０１が操作される度に、それまで秘密鍵記憶部１０２に記憶されていた秘密鍵のデータが端末装置１０から消去され、新しい秘密鍵のデータが生成される。このように頻繁に秘密鍵が変更されるため、万が一秘密鍵が第三者に解読されたとしても、その影響を、解読された秘密鍵を使っていた期間の処理みに限定することができる。
【００３８】
＜適用例＞
次に、鍵管理システム１００を適用した具体的なシステムの例について説明する。端末装置１０は、デジタルカメラを搭載した携帯電話機として構成される。暗号化処理部１１２は、搭載カメラで撮影された写真のメッセージ認証コードを生成する。デジタルデータは、複製や受け渡しが容易であるという利点を持つが、その反面改ざんを容易に行うことも可能である。そのため、真実とは異なる写真のねつ造を許し得るという欠点も持つ。そこで、暗号化処理部１１２は、デジタルデータの改ざんを判定するために、メッセージ認証コードを計算し、写真のデータにメッセージ認証コードを付与する。暗号化処理部１１２は、メッセージ認証コードの生成において、秘密鍵記憶部１０２に記憶されている秘密鍵のデータを用いる。
【００３９】
鍵管理装置２０は、写真のデジタルデータが真に端末装置１０のカメラで撮影されたままのデータであるか否かを判定する。不図示の判定部は、鍵管理装置２０の秘密鍵出力部２０６によって出力された秘密鍵のデータと、判定の対象となっている写真のデジタルデータと、を用いてメッセージ認証コードを計算する。判定部は、計算されたメッセージ認証コードと、デジタルデータに付与されているメッセージ認証コードとを比較する。判定部は、両者が一致すれば、デジタルデータは正当なデータ（正真）であり、端末装置１０で撮影された写真であり、その後に改ざんされていない写真であると判定する。一方、両者が一致しない場合は、判定部は、デジタルデータは正当なデータ（正真）ではなく、ねつ造されたものであると判定する。
【００４０】
＜変形例＞
入力部１０１は、入力装置から入力信号を取得するのではなく、不図示のタイマーから所定の時間が経過したこと（タイムアップしたこと）を表す信号を取得しても良い。このように構成された入力部１０１は、タイムアップしたことを表す信号を取得すると、動作開始指示を秘密鍵消去部１０３に出力する。
【００４１】
入力部１０１は、端末装置１０の操作者が秘密鍵を用いる処理の実行を端末装置１０に指示する際の入力信号を取得し、動作開始信号を出力しても良い。このように構成された場合、秘密鍵を用いる処理が実行される度に異なる秘密鍵を用いて処理が実行される。そのため、セキュリティをより高くすることが可能となる。
【００４２】
鍵管理システム１００が備える端末装置１０の台数は、図１に示される台数に限定される必要は無い。鍵管理システム１００が備える端末装置１０の台数は、１台であっても良いし複数台であっても良い。鍵管理システム１００が備える鍵管理装置２０の台数は、図１に示される台数に限定される必要は無い。鍵管理システム１００が備える鍵管理装置２０の台数は、１台であっても良いし複数台であっても良い。
【００４３】
鍵管理システム１００は、秘密鍵のみならず公開鍵も管理するように構成されても良い。この場合、鍵管理システム１００は以下のように構成される。まず、秘密鍵生成部１０５は、秘密鍵だけでなく公開鍵も生成する。送信データ生成部１１０は、秘密鍵に代えて公開鍵を送信データに含める。鍵管理装置２０のＤＢ追加部２０３は、秘密鍵のデータに代えて公開鍵のデータを鍵記憶部２０２の鍵データベースに登録する。秘密鍵取得部２０５は、鍵データベースから秘密鍵のデータに代えて公開鍵のデータを取得し、秘密鍵出力部２０６は公開鍵のデータを出力する。このように構成された場合、このように構成されることにより、秘密鍵及び公開鍵の両方を使用する処理（例えばデジタル署名）を行うことが可能となる。デジタル署名を行う場合には、署名するときに秘密鍵を使い、署名を検証するときに公開鍵を使うように構成されても良い。
【００４４】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【符号の説明】
【００４５】
１０…端末装置，  ２０…鍵管理装置，  ３０…ネットワーク，  １００…鍵管理システム１００，  １０１…入力部，  １０２…秘密鍵記憶部，  １０３…秘密鍵消去部，  １０４…乱数生成部，  １０５…秘密鍵生成部，  １０６…ユニークＩＤ記憶部，  １０７…ユニークＩＤ取得部，  １０８…時刻情報出力部，  １０９…時刻情報取得部，  １１０…送信データ生成部，  １１１…送信部，  １１２…暗号化処理部，  ２０１…通信部，  ２０２…鍵記憶部，  ２０３…ＤＢ追加部，  ２０４…リクエスト入力部，  ２０５…秘密鍵取得部，  ２０６…秘密鍵出力部
【図１】
2013026840.tif 000003
【図２】
2013026840.tif 000004
【図３】
2013026840.tif 000005
【図４】
2013026840.tif 000006
【図５】
2013026840.tif 000007
【図６】
2013026840.tif 000008