(57)【要約】【課題】ＩＤベース暗号およびＩＤベース署名における秘密鍵の生成を、鍵の生成を要求するユーザのＩＤの信頼性を確保した上で実施することを課題とする。【解決手段】検証部２３０は、鍵生成要求に含まれる証明情報が正当であるか否かを検証する。具体的には、検証部２３０は、鍵生成要求に含まれる証明情報の証明者識別情報と信頼済証明者識別情報が一致する検証条件を検証条件リスト記憶部に記憶された検証条件リストの中から取得する。そして、検証部２３０は、検証条件リストの中から取得した検証ポリシを、証明情報の証明内容が満足しているか否かを検証するとともに、証明内容が要求者識別情報を含んでいるか否かを検証する。【選択図】図２
2011004366.tif 000002
【特許請求の範囲】
【請求項１】
秘密鍵の生成を要求する要求者の端末からネットワークを介して鍵生成要求を受信した場合に前記要求者の本人性を確認する認証を行って、前記鍵生成要求に応じた秘密鍵を生成する鍵生成装置であって、
前記受信した鍵生成要求に含まれる前記要求者を一意に識別する要求者識別情報の信頼性を証明する証明者のうち、鍵生成装置が信頼する証明者のそれぞれを一意に識別する信頼済み証明者識別情報と、前記要求者識別情報の信頼性を証明するための証明情報を検証する検証方法とを対応付けて、前記受信した鍵生成要求に含まれる前記証明情報を検証するための検証条件として記憶する検証条件記憶部と、
前記要求者の本人性を確認する認証に成功した場合に、前記要求者識別情報の信頼性を証明する証明者を一意に識別する情報として前記鍵生成要求に含まれる証明者識別情報をキーとして、当該証明者識別情報と前記信頼済み証明者識別情報とが一致する検証条件を前記検証条件記憶部から取得して、当該取得した検証条件を用いて前記鍵生成要求に含まれる証明情報を検証する検証部と、
前記検証部による検証の結果、前記証明情報が正当なものである場合には、前記要求者識別情報を用いて前記鍵生成要求に応じた秘密鍵を生成する鍵生成部と、
前記鍵生成部により生成された秘密鍵を前記鍵生成要求の要求者の端末に送信する送信部と
を有することを特徴とする鍵生成装置。
【請求項２】
前記検証条件記憶部は、前記信頼済み証明者識別情報として公開鍵証明書の発行者を一意に識別する信頼済み発行者情報と、前記検証方法として公開鍵証明書の有効性を検証するための証明書検証方法とを対応付けて前記検証条件として記憶し、
前記検証部は、前記鍵生成要求に前記証明者識別情報として含まれる前記発行者を一意に識別する発行者情報をキーとして、当該発行者情報と前記信頼済み発行者情報とが一致する検証条件を前記検証条件記憶部から取得して、当該取得した検証条件を用いて前記鍵生成要求に前記証明情報として含まれる公開鍵証明書を検証することを特徴とする請求項１に記載の鍵生成装置。
【請求項３】
前記送信部は、前記鍵生成部により生成された秘密鍵を前記証明情報に含まれる公開鍵により暗号化して送信することを特徴とする請求項１に記載の鍵生成装置。
【請求項４】
前記送信部は、前記検証部により前記認証情報の検証に成功しなかった場合には、前記鍵生成要求に応じた秘密鍵の生成を拒否する旨の通知を前記鍵生成要求の要求者の端末に送信することを特徴とする請求項１に記載の鍵生成装置。
【請求項５】
秘密鍵の生成を要求する要求者の端末からネットワークを介して鍵生成要求を受信した場合に前記要求者の本人性を確認する認証を行って、前記鍵生成要求に応じた秘密鍵を生成する鍵生成装置が行う鍵生成方法であって、
前記要求者の本人性を確認する認証に成功した場合に、前記受信した鍵生成要求に含まれる前記要求者を一意に識別する要求者識別情報の信頼性を証明する証明者のうち、鍵生成装置が信頼する証明者のそれぞれを一意に識別する信頼済み証明者識別情報と、前記要求者識別情報の信頼性を証明するための証明情報を検証する検証方法とを対応付けて前記受信した鍵生成要求に含まれる前記証明情報を検証するための検証条件として記憶する検証条件記憶部から、前記要求者識別情報の信頼性を証明する証明者を一意に識別する情報として前記鍵生成要求に含まれる証明者識別情報をキーとして、当該証明者識別情報と前記信頼済み証明者識別情報とが一致する検証条件を取得し、当該取得した検証条件を用いて前記鍵生成要求に含まれる証明情報を検証する検証ステップと、
前記検証ステップによる検証の結果、前記証明情報が正当なものである場合には、前記要求者識別情報を用いて前記鍵生成要求に応じた秘密鍵を生成する鍵生成ステップと、
前記鍵生成ステップにより生成された秘密鍵を前記鍵生成要求の要求者の端末に送信する送信ステップと
を含んだことを特徴とする鍵生成方法。
【請求項６】
前記検証ステップは、前記信頼済み証明者識別情報として公開鍵証明書の発行者を一意に識別する信頼済み発行者情報と、前記検証方法として公開鍵証明書の有効性を検証するための証明書検証方法とを対応付けて前記検証条件として記憶する前記検証条件記憶部から、前記鍵生成要求に前記証明者識別情報として含まれる前記発行者を一意に識別する発行者情報をキーとして、当該発行者情報と前記信頼済み発行者情報とが一致する検証条件を前記検証条件記憶部から取得し、当該取得した検証条件を用いて前記鍵生成要求に前記証明情報として含まれる公開鍵証明書を検証することを特徴とする請求項５に記載の鍵生成方法。
【請求項７】
前記送信ステップは、前記鍵生成ステップにより生成された秘密鍵を前記証明情報に含まれる公開鍵により暗号化して送信することを特徴とする請求項５に記載の鍵生成方法。
【請求項８】
秘密鍵の生成を要求する要求者の端末からネットワークを介して鍵生成要求を受信した場合に前記要求者の本人性を確認する認証を行って、前記鍵生成要求に応じた秘密鍵を生成する処理をコンピュータに実行させるための鍵生成プログラムであって、
前記コンピュータに、
前記要求者の本人性を確認する認証に成功した場合に、前記受信した鍵生成要求に含まれる前記要求者を一意に識別する要求者識別情報の信頼性を証明する証明者のうち、鍵生成装置が信頼する証明者のそれぞれを一意に識別する信頼済み証明者識別情報と、前記要求者識別情報の信頼性を証明するための証明情報を検証する検証方法とを対応付けて前記受信した鍵生成要求に含まれる前記証明情報を検証するための検証条件として記憶する検証条件記憶部から、前記要求者識別情報の信頼性を証明する証明者を一意に識別する情報として前記鍵生成要求に含まれる証明者識別情報をキーとして、当該証明者識別情報と前記信頼済み証明者識別情報とが一致する検証条件を取得し、当該取得した検証条件を用いて前記鍵生成要求に含まれる証明情報を検証する検証手順と、
前記検証手順による検証の結果、前記証明情報が正当なものである場合には、前記要求者識別情報を用いて前記鍵生成要求に応じた秘密鍵を生成する鍵生成手順と、
前記鍵生成手順により生成された秘密鍵を前記鍵生成要求の要求者の端末に送信する送信手順と
を実行させることを特徴とする鍵生成プログラム。
【請求項９】
前記検証手順は、前記信頼済み証明者識別情報として公開鍵証明書の発行者を一意に識別する信頼済み発行者情報と、前記検証方法として公開鍵証明書の有効性を検証するための証明書検証方法とを対応付けて前記検証条件として記憶する前記検証条件記憶部から、前記鍵生成要求に前記証明者識別情報として含まれる前記発行者を一意に識別する発行者情報をキーとして、当該発行者情報と前記信頼済み発行者情報とが一致する検証条件を前記検証条件記憶部から取得し、当該取得した検証条件を用いて前記鍵生成要求に前記証明情報として含まれる公開鍵証明書を検証することを特徴とする請求項８に記載の鍵生成プログラム。
【請求項１０】
前記送信手順は、前記鍵生成ステップにより生成された秘密鍵を前記証明情報に含まれる公開鍵により暗号化して送信することを特徴とする請求項８に記載の鍵生成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、端末からの鍵生成要求に応じて秘密鍵を生成し、生成した秘密鍵を端末に配付する鍵生成装置、鍵生成方法および鍵生成プログラムに関する。
【背景技術】
【０００２】
従来、ユーザの識別情報であるＩＤを用いて、例えば、暗号化データを復号するための秘密鍵などを生成するＩＤベース暗号（もしくはＩＤベース認証）という技術が存在する。ＩＤベース暗号システムの鍵生成サーバは、暗号化データの復号および署名データの生成に用いる秘密鍵を生成する。
【０００３】
上記の秘密鍵は、ＩＤに対応する主体のみに確実に配付されなければならない。そこで、ＩＤベース暗号の標準仕様であるＲＦＣ５４０８（Identity-Based Encryption Architecture and Supporting Data Structures）では，鍵の生成と配付プロセスについて、ＴＬＳ（Transport Layer Security）による通信路の暗号化およびサーバ認証、ダイジェスト認証またはベーシック認証によるクライアント（秘密鍵を取得するユーザ）認証の技術が規定されている。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】Identity-Based Encryption Architecture and Supporting Data Structures , RFC5408
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述したＩＤベース暗号（もしくはＩＤベース認証）では、鍵の生成を要求するユーザのＩＤの信頼性について検証等が行われることがなく、ＩＤの信頼性については全く考慮されていない。そのため、ＩＤベース暗号においてＩＤにより暗号化される暗号化データは、意図せぬユーザに対する暗号化データとなってしまう恐れがある。
【０００６】
さらに、上記鍵生成サーバは、ＩＤに対応するユーザからの要求であることを前述したクライアント認証技術によって確認した上で、秘密鍵を生成し、配付する。しかし、このような認証を行っても、ＩＤの信頼性について検証することもないので、暗号化データの生成者が意図していない人物に対して暗号化データを復号するための秘密鍵が配付されてしまう恐れがある。
【０００７】
本発明は、上記に鑑みてなされたものであって、ＩＤの信頼性を確保した上で、ＩＤベース暗号およびＩＤベース署名における秘密鍵の生成を行うことが可能な鍵生成装置、鍵生成方法および鍵生成プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上述した課題を解決し、目的を達成するために、本発明は、秘密鍵の生成を要求する要求者の端末からネットワークを介して鍵生成要求を受信した場合に前記要求者の本人性を確認する認証を行って、前記鍵生成要求に応じた秘密鍵を生成する鍵生成装置であって、前記受信した鍵生成要求に含まれる前記要求者を一意に識別する要求者識別情報の信頼性を証明する証明者のうち、鍵生成装置が信頼する証明者のそれぞれを一意に識別する信頼済み証明者識別情報と、前記要求者識別情報の信頼性を証明するための証明情報を検証する検証方法とを対応付けて、前記受信した鍵生成要求に含まれる前記証明情報を検証するための検証条件として記憶する検証条件記憶部と、前記要求者の本人性を確認する認証に成功した場合に、前記要求者識別情報の信頼性を証明する証明者を一意に識別する情報として前記鍵生成要求に含まれる証明者識別情報をキーとして、当該証明者識別情報と前記信頼済み証明者識別情報とが一致する検証条件を前記検証条件記憶部から取得して、当該取得した検証条件を用いて前記鍵生成要求に含まれる証明情報を検証する検証部と、前記検証部による検証の結果、前記証明情報が正当なものである場合には、前記要求者識別情報を用いて前記鍵生成要求に応じた秘密鍵を生成する鍵生成部と、前記鍵生成部により生成された秘密鍵を前記鍵生成要求の要求者の端末に送信する送信部とを有することを特徴とする。
【発明の効果】
【０００９】
本願の開示する鍵生成装置、鍵生成方法および鍵生成プログラムによれば、ＩＤの信頼性を確保した上で、ＩＤベース暗号およびＩＤベース署名における秘密鍵の生成を行うことができる。
【図面の簡単な説明】
【００１０】
【図１】図１は、実施例１に係る全体構成を示す図である。
【図２】図２は、実施例１に係る鍵生成装置の構成を示す図である。
【図３】図３は、実施例１に係る鍵生成要求の構成例を示す図である。
【図４】図４は、実施例１に係る検証条件リスト記憶部に記憶される情報例を示す図である。
【図５】図５は、実施例１に係る鍵生成装置による処理の流れを説明するための図である。
【図６】図６は、鍵生成プログラムを実行するコンピュータを示す図である。
【発明を実施するための形態】
【００１１】
以下に、図面を参照しつつ、本願の開示する鍵生成装置、鍵生成方法および鍵生成プログラムの一実施形態を詳細に説明する。
【実施例１】
【００１２】
以下に説明する実施例１では、本発明に係る鍵生成装置の一実施形態として実施例１を説明する。なお、以下の実施例１により、本願の開示する技術が限定されるものではない。
【００１３】
実施例１に係る鍵生成装置は、秘密鍵の生成を要求する要求者の端末からネットワークを介して鍵生成要求を受信した場合に、要求者の本人性を確認する認証を行って、鍵生成要求に応じた秘密鍵を生成することを概要とする。そして、実施例１に係る鍵生成装置は、鍵生成要求に含まれるユーザＩＤ（要求者識別情報）の信頼性を検証し、ユーザＩＤの信頼性を確保した上で鍵生成要求に応じた秘密鍵を生成する点に特徴がある。
【００１４】
［鍵生成装置の構成（実施例１）］
図１は、実施例１に係る全体構成を示す図である。同図に示すように、実施例１に鍵生成装置２００は、公衆電話網やインターネットなどのネットワーク１を介して、鍵生成要求を行うユーザが利用する端末１００と通信可能な状態に接続される。
【００１５】
図２は、実施例１に係る鍵生成装置の構成を示す図である。同図に示すように、鍵生成装置２００は、要求受付処理部２１０と、認証部２２０と、検証部２３０と、検証条件リスト記憶部２３１と、鍵生成部２４０とを有する。
【００１６】
要求受付処理部２１０は、端末１００から鍵生成要求１０（図３参照）を入力として受け付けると、鍵生成要求１０に含まれる要求者識別情報１１、認証情報１２および証明情報１３を抽出する。また、端末１００からの鍵生成要求１０に応じて鍵生成部２４０により生成された秘密鍵を端末１００に送信する他、鍵生成要求１０に応じた秘密鍵の生成の拒否を表す情報を端末１００に送信する。
【００１７】
ここで、端末１００から受け付けられる鍵生成要求１０の構成を説明する。図３に示すように，鍵生成要求１０は、鍵生成要求１０の要求者を一意に識別する要求者識別情報１１と、要求者の本人性を表す認証情報１２と、要求者識別情報の信頼性を証明するための証明情報１３とで構成される。図３は、実施例１に係る鍵生成要求の構成例を示す図である。
【００１８】
そして、証明情報１３は、要求者識別情報の信頼性を証明する証明者を一意に識別する証明者識別情報１３ａと、証明者による要求者識別情報１１の証明内容１３ｂを有する。なお、証明情報１３には、Ｘ．５０９公開鍵証明書やＳＡＭＬ（Security Assertion Markup Language）認証アサーションのようなＩＤを証明する第三者機関により発行された証明データを用いることができるが、Ｘ．５０９公開鍵証明書や第三者機関により発行された証明データはあくまで一例であり、これらに限定されるものではなく種々の実装方法を用いることができる。
【００１９】
認証部２２０は、要求受付処理部２１０により受け付けられた鍵生成要求１０の要求者の本人性に関する判定を行う。具体的に説明すると、認証部２２０は、鍵生成要求１０から、要求者識別情報１１および認証情報１２を抽出して認証情報１２の検証を行い、要求者の本人性の判定を行う。すなわち、鍵生成要求１０の要求者が要求者識別情報１１に対応する本人であるか否かを判定する。
【００２０】
例えば、認証部２２０は、ＴＬＳ（Transport Layer Security）／ＳＳＬ（Secure Socket Layer）のクライアント認証によって、認証情報１２の検証を実現することが可能である。この方法は、Ｘ．５０９公開鍵証明書を証明情報１３として利用する実装方式と親和性が高い。なお、認証部２２０は、ＴＬＳ／ＳＳＬのクライアント認証に限られず、ＴＬＳ／ＳＳＬのクライアント認証以外を実装して利用することができる。
【００２１】
検証部２３０は、認証部２２０により、鍵生成要求１０の要求者について本人性が確認された場合に、検証条件リスト記憶部２３１に記憶されている検証方法を用いて、鍵生成要求１０に含まれる要求者識別情報１１の信頼性について検証する。
【００２２】
具体的に説明すると、図４に示すように、検証条件リスト記憶部２３１は、鍵生成装置２００が信頼する証明者の証明者識別情報である信頼済証明者識別情報２１ａと、証明情報１３の検証方法を表す検証ポリシ２１ｂとを含む検証条件２１のリストである検証条件リスト２０を記憶する。図４は、実施例１に係る検証条件リスト記憶部に記憶される情報例を示す図である。
【００２３】
なお、検証条件リスト２０は、汎用的なＲＤＢ（relational database）またはファイルなどを利用して構成可能なデータセットである。また、前述したように証明情報１３として、例えば、Ｘ．５０９公開鍵証明書を用いる場合には、信頼済証明者識別情報２１ａには、Ｘ．５０９公開鍵証明書の発行者である認証局（ＣＡ：Certificate Authority）の識別名、あるいは発行者のＸ．５０９公開鍵証明書を用いる方法が考えられる。また、検証ポリシ２１ｂには、Ｘ．５０９公開鍵証明書の内容（基本領域や拡張領域）に対する条件（格納値に対する比較条件等）を、例えば、ＸＡＣＭＬ（eXtensible Access Control Markup Language）に代表されるような一般的なポリシ記述言語により規定された情報を用いる方法が考えられるが、あくまで一例であり、これに限定されることなく種々の実装方法を適用可能である。
【００２４】
認証部２２０により、鍵生成要求１０の要求者について本人性が確認されると、検証部２３０は、鍵生成要求１０に含まれる証明者識別情報１３ａと信頼済証明者識別情報２１ａとが一致する検証条件２１を検証条件リスト記憶部２３１から取得する。そして、検証部２３０は、鍵生成要求１０に含まれる証明内容１３ｂが検証ポリシ２１ｂを満足するとともに、証明内容１３ｂが鍵生成要求に含まれる要求者識別情報１１を含むか否かを検証する。検証の結果、証明内容１３ｂが検証ポリシ２１ｂを満足し、かつ、証明内容１３ｂが要求者識別情報１１を含む場合には、証明情報１３が正当であるものと判定し、要求者識別情報１１が信頼性のあるものとする。
【００２５】
なお、検証部２３０は、証明情報１３として、例えば、Ｘ．５０９公開鍵証明書を用いる場合には、証明内容１３ｂが要求者識別情報１１を含むことを判定する際、要求者識別情報１１のデータ（例えば，メールアドレス，アプリケーションのユーザＩＤ，等）が、Ｘ．５０９公開鍵証明書の基本領域または拡張領域に格納されるとともに、Ｘ．５０９公開鍵証明書の発行者にとっての証明対象とされていることを検証する方法が考えられる。この時、Ｘ．５０９公開鍵証明書に対して情報抽出を行なって要求者識別情報１１との一致性を判定する方法には多様性が生じるため、検証ポリシ２１ｂによりその方法を規定する実装方法を採用することもできる。
【００２６】
鍵生成部２４０は、要求者識別情報１１が正当であると検証部２３０により検証された場合には、要求者識別情報１１に基づいて秘密鍵を生成する。なお、鍵生成部２４０は、例えば、ＲＦＣ５０９１（Identity-Based Cryptography Standard (IBCS) #1: Supersingular Curve Implementations of the BF and BB1 Cryptosystems）による標準仕様で確立されている技術を適用して、秘密鍵を生成することができる（ref: http://www.rfc-editor.org/rfc/rfc5091.txt）。なお、ＲＦＣ５０９１はＩＤベース暗号による鍵生成方法の一例であり、鍵生成部２４０における要求者識別情報１１に基づく秘密鍵の生成にはＲＦＣ５０９１に類似したその他の方法を用いることもできる。
【００２７】
［鍵生成装置による処理（実施例１）］
図５は、実施例１に係る鍵生成装置による処理の流れを説明するための図である。同図に示すように、要求受付処理部２１０は、端末１００から鍵生成要求１０を入力として受付けて、要求者識別情報１１、認証情報１２および証明情報１３を抽出する（ステップＳ５０１）。
【００２８】
認証部２２０は、上述したステップＳ５０１にて抽出された認証情報１２により、鍵生成要求１０の要求元の本人性を判定する（ステップＳ５０２）。
【００２９】
検証部２３０は、鍵生成要求１０に含まれる証明情報１３が正当であるか否かを検証する（ステップＳ５０３）。具体的には、検証部２３０は、鍵生成要求１０に含まれる証明情報１３の証明者識別情報１３ａと信頼済証明者識別情報２１ａが一致する検証条件２１を検証条件リスト記憶部２３１に記憶された検証条件リスト２０の中から取得する。そして、検証部２３０は、検証条件リスト２０の中から取得した検証ポリシ２１ｂを、証明情報１３の証明内容１３ｂが満足しているか否かを検証するとともに、証明内容１３ｂが要求者識別情報１１を含んでいるか否かを検証する。
【００３０】
検証の結果、鍵生成要求１０に含まれる証明情報１３が正当である場合には（ステップＳ５０３肯定）、鍵生成要求１０に含まれる要求者識別情報１１が信頼性あるものとして、鍵生成部２４０は、要求者識別情報１１に基づいて秘密鍵を生成する（ステップＳ５０４）。
【００３１】
要求処理受付部２１０は、鍵生成要求１０の送信元である端末１００に対して、上述したステップＳ５０４にて生成された秘密鍵を送信する（ステップＳ５０５）。
【００３２】
ステップＳ５０３に説明に戻り、検証の結果、鍵生成要求１０に含まれる証明情報１３が正当ではない場合には（ステップＳ５０３否定）、鍵生成要求１０に含まれる要求者識別情報１１が信頼性のないものとして、要求処理受付部２１０は、鍵生成要求１０の送信元である端末１００に、鍵生成要求１０の受付の拒否を表す情報を送信する（ステップＳ５０６）。
【００３３】
［実施例１による効果］
上述してきたように、実施例１によれば、ＩＤベース暗号およびＩＤベース署名における秘密鍵の生成を、信頼し得る第三者機関による証明情報に基づく検証によってＩＤの信頼性を確保した上で実施することが可能となる。また、証明情報としてＸ．５０９公開鍵証明書に代表される第三者機関により発行される証明データ（ＳＡＭＬ認証アサーション等も該当）により、公開鍵認証基盤（ＰＫＩ）のような基盤の信頼性に基いて信頼性が確保されたＩＤにより、秘密鍵の生成と配付を実施することが可能となる。
【実施例２】
【００３４】
以下、本発明にかかる鍵生成装置、鍵生成方法および鍵生成プログラムの他の実施形態として実施例２を説明する。
【００３５】
（１）公開鍵による秘密鍵の暗号化
上記の実施例１において、鍵生成部２４０により生成された秘密鍵を、例えば、証明情報１３として利用するＸ．５０９公開鍵証明書に含まれる公開鍵で暗号化してから、端末１００に送信するようにしてもよい。
【００３６】
具体的には、上記の実施例１において説明した図５のステップＳ５０５において、鍵生成部２４０は、要求者識別情報１１に基づいて秘密鍵を生成した後、生成した秘密鍵をＸ．５０９公開鍵証明書に含まれる公開鍵によって暗号化した上で、端末１００に送信する。
【００３７】
このようにすることで、ＲＦＣ５４０８（Identity-Based Encryption Architecture and Supporting Data Structures）では、ＴＬＳ／ＳＳＬによる通信路の暗号化が規定されているが、秘密鍵データそのものを暗号化した上で送信することによって、通信経路上だけでなく，端末１００にて実際に秘密鍵が用いられる時点まで秘密鍵が保護された状態を継続することが可能となる。
【００３８】
（２）装置構成等
図２に示した鍵生成装置２００の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要せず、鍵生成装置２００の分散・統合の具体的形態は図示のものに限られない。例えば、図２に示す認証部２２０と、検証部２３０とを機能的または物理的に統合して構成する。
【００３９】
このように、鍵生成装置２００の全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、鍵生成装置２００にて行なわれる各処理機能（図５等参照）は、その全部または任意の一部が、ＣＰＵおよび当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【００４０】
（３）鍵生成プログラム
また、上記の実施例１で説明した鍵生成装置２００の各種の処理（図５等参照）は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータシステムで実行することによって実現することができる。
【００４１】
そこで、以下では、図６を用いて、上記の実施例１で説明した鍵生成装置２００の機能と同様の機能を実現する鍵生成プログラムを実行するコンピュータの一例を説明する。図６は、鍵生成プログラムを実行するコンピュータを示す図である。
【００４２】
同図に示すように、鍵生成装置２００としてコンピュータ３００は、通信制御部３１０、ＨＤＤ３２０、ＲＡＭ３３０およびＣＰＵ３４０をバス４００で接続して構成される。
【００４３】
ここで、通信制御部３１０は、各種情報のやり取りに関する通信を制御する。ＨＤＤ３２０は、ＣＰＵ３４０による各種処理の実行に必要な情報を記憶する。ＲＡＭ３３０は、各種情報を一時的に記憶する。ＣＰＵ３４０は、各種演算処理を実行する。
【００４４】
そして、ＨＤＤ３２０には、図６に示すように、上記の実施例１に示した鍵生成装置２００の各処理部と同様の機能を発揮する鍵生成プログラム３２１と、鍵生成用データ３２２とがあらかじめ記憶されている。なお、この鍵生成プログラム３２１を適宜分散させて、ネットワークを介して通信可能に接続された他のコンピュータの記憶部に記憶させておくこともできる。
【００４５】
そして、ＣＰＵ３４０が、この鍵生成プログラム３２１をＨＤＤ３２０から読み出してＲＡＭ３３０に展開することにより、図６に示すように、鍵生成プログラム３２１は鍵生成プロセス３３１として機能するようになる。すなわち、鍵生成プロセス３３１は、鍵生成用データ３２２等をＨＤＤ３２０から読み出して、ＲＡＭ３３０において自身に割り当てられた領域に展開し、この展開したデータ等に基づいて各種処理を実行する。
【００４６】
なお、鍵生成プロセス３３１は、例えば、図２に示した鍵生成装置２００の要求受付処理部２１０、認証部２２０、検証部２３０、および鍵生成部２４０等において実行される処理に対応する。
【００４７】
なお、上記した鍵生成プログラム３２１については、必ずしも最初からＨＤＤ３２０に記憶させておく必要はなく、例えば、コンピュータ３００に設定されるフレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」、さらには、公衆回線、インターネット、ＬＡＮ、ＷＡＮなどを介してコンピュータ３００に接続される「他のコンピュータ（またはサーバ）」などに各プログラムを記憶させておき、コンピュータ３００がこれらから各プログラムを読み出して実行するようにしてもよい。
【００４８】
（４）鍵生成方法
上記の実施例１で説明した鍵生成装置２００により、例えば、以下のような鍵生成方法が実現される。
【００４９】
すなわち、秘密鍵の生成を要求する要求者の端末からネットワークを介して鍵生成要求を受信した場合に前記要求者の本人性を確認する認証を行って、前記鍵生成要求に応じた秘密鍵を生成する鍵生成装置が行う鍵生成方法であって、要求者の本人性を確認する認証に成功した場合に、受信した鍵生成要求に含まれる要求者を一意に識別する要求者識別情報の信頼性を証明する証明者のうち、鍵生成装置が信頼する証明者のそれぞれを一意に識別する信頼済み証明者識別情報と、要求者識別情報の信頼性を証明するための証明情報を検証する検証方法とを対応付けて、受信した鍵生成要求に含まれる証明情報を検証するための検証条件として記憶する検証条件記憶部から、要求者識別情報の信頼性を証明する証明者を一意に識別する情報として鍵生成要求に含まれる証明者識別情報をキーとして、証明者識別情報と信頼済み証明者識別情報とが一致する検証条件を取得し、取得した検証条件を用いて鍵生成要求に含まれる証明情報を検証する検証ステップと（例えば、図５のステップＳ５０３参照）、検証ステップにより証明情報の検証に成功した場合には、要求者識別情報を用いて鍵生成要求に応じた秘密鍵を生成する鍵生成ステップと（例えば、図５のステップＳ５０４参照）、鍵生成ステップにより生成された秘密鍵を鍵生成要求の要求者の端末に送信する送信ステップと（例えば、図５のステップＳ５０５参照）を含んだ鍵生成方法が実現される。
【産業上の利用可能性】
【００５０】
以上のように、本発明にかかる鍵生成装置、鍵生成方法および鍵生成プログラムは、秘密鍵の生成を要求する要求者の端末からネットワークを介して鍵生成要求を受信した場合に要求者の本人性を確認する認証を行って、鍵生成要求に応じた秘密鍵を生成する場合に有用であり、特に、ＩＤベース暗号およびＩＤベース署名における秘密鍵の生成を、信頼し得る第三者機関による証明情報に基づく検証によってＩＤの信頼性を確保した上で実施することに適している。
【符号の説明】
【００５１】
１  ネットワーク
１０  鍵生成要求
１１  要求者識別情報
１２  認証情報
１３  証明情報
１３ａ  証明者識別情報
１３ｂ  証明内容
１００  端末
２００  鍵生成装置
２１０  要求受付処理部
２２０  認証部
２３０  検証部
２３１  検証条件リスト記憶部
２４０  鍵生成部
３００  コンピュータ
３１０  通信制御部
３２０  ＨＤＤ（Hard Disk Drive）
３２１  鍵生成プログラム
３２２  鍵生成用データ
３３０  ＲＡＭ（Random Access Memory）
３３１  鍵生成プロセス
３４０  ＣＰＵ（Central Processing Unit）
４００  バス
【図１】
2011004366.tif 000003
【図２】
2011004366.tif 000004
【図３】
2011004366.tif 000005
【図４】
2011004366.tif 000006
【図５】
2011004366.tif 000007
【図６】
2011004366.tif 000008