(57)【要約】【課題】  公開鍵証明書発行に関する管理経費の削減を図るとともに操作の簡易化を図る。【解決手段】  積算発行数記憶部１１３は、公開鍵証明書生成部１１１により発行された公開鍵証明書Ｋ２３ａの積算発行数を記憶していて、この積算発行数は、発行数管理部１１２によって、公開鍵証明書Ｋ２３ａ〜Ｋ２３ｄの発行数に応じて更新されている。また、発行数上限値記憶部１０２は、公開鍵証明書Ｋ２３ａ〜Ｋ２３ｄの発行数上限値を記憶している。発行数判定部１０３は、積算発行数が発行数上限値に達しているか否かを判定し、公開鍵証明書生成部１１１は、積算発行数が発行数上限値に達していない場合、クライアント２０ａからの公開鍵証明書Ｋ２３ａの発行要求に応動して公開鍵証明書Ｋ２３ａを生成しクライアント２０ａへ発行するが、積算発行数が発行数上限値に達している場合、公開鍵証明書Ｋ２３ａを発行しない。【選択図】      図２
2006325112.tif 000002
【特許請求の範囲】
【請求項１】
公開鍵がクライアントのものであることを証明する公開鍵証明書を発行する公開鍵証明書発行装置であって、
前記クライアントからの前記公開鍵証明書の発行要求に応動して当該公開鍵証明書を生成し当該クライアントへ発行する公開鍵証明書生成手段と、
前記公開鍵証明書生成手段により発行された前記公開鍵証明書の積算発行数を記憶した積算発行数記憶手段と、
前記公開鍵証明書生成手段により発行された前記公開鍵証明書の発行数に応じて前記積算発行数記憶手段に記憶された前記積算発行数を更新する積算発行数更新手段と、
前記公開鍵証明書の発行数上限値を記憶した発行数上限値記憶手段と、
前記積算発行数記憶手段に記憶された前記積算発行数および前記発行数上限値記憶手段に記憶された前記発行数上限値を参照して当該積算発行数が当該発行数上限値に達しているか否かを判定する発行数判定手段と、
を具備し、
前記公開鍵証明書生成手段はさらに、前記発行数判定手段に基づき前記積算発行数が前記発行数上限値に達しているとき前記公開鍵証明書を発行しないことを特徴とする公開鍵証明書発行装置。
【請求項２】
前記クライアントからの前記公開鍵証明書の無効化要求に応動して当該公開鍵証明書を無効化する公開鍵証明書無効化手段と、
前記公開鍵証明書無効化手段により無効化された前記公開鍵証明書の数に応じて前記積算発行数記憶手段に記憶された前記積算発行数を減少させる積算発行数減算手段と、
を具備したことを特徴とする請求項１に記載の公開鍵証明書発行装置。
【請求項３】
無効化された前記公開鍵証明書を示す情報を含む失効リストを生成し前記クライアントへ配信する失効リスト生成手段を具備したことを特徴とする請求項２に記載の公開鍵証明書発行装置。
【請求項４】
当該公開鍵証明書発行装置による前記公開鍵証明書の新たな発行上限数を表す発行数設定情報を受信する発行数設定情報受信手段と、
受信した前記発行数設定情報に基づき前記発行数上限値記憶手段に記憶した発行数上限値を書き換える発行数上限値書換手段と、
を具備したことを特徴とする請求項１から請求項３のいずれかに記載の公開鍵証明書発行装置。
【請求項５】
公開鍵証明書発行装置が発行する公開鍵証明書によって公開鍵が自身のものであることを証明されるクライアントであって、
前記公開鍵証明書発行装置に対し前記公開鍵証明書の発行要求を行う公開鍵証明書発行要求手段と、
発行された前記公開鍵証明書を受信し保管する公開鍵証明書保管手段と、
前記公開鍵証明書保管手段から前記公開鍵証明書を削除する鍵削除手段と、
前記公開鍵証明書発行装置に対し前記鍵削除手段により削除された前記公開鍵証明書の無効化要求を行う無効化要求手段と、
を具備したことを特徴とするクライアント。
【請求項６】
公開鍵がクライアントのものであることを証明する公開鍵証明書を発行する公開鍵証明書発行装置と、前記公開鍵証明書発行装置が発行する前記公開鍵証明書によって前記公開鍵が自身のものであることを証明されるクライアントと、を含む公開鍵証明書発行システムであって、
前記クライアントは、
前記公開鍵証明書発行装置に対し前記公開鍵証明書の発行要求を行う公開鍵証明書発行要求手段と、
発行された前記公開鍵証明書を受信し保管する公開鍵証明書保管手段と、
を具備し、
前記公開鍵証明書発行装置は、
前記クライアントからの前記公開鍵証明書の発行要求に応動して当該公開鍵証明書を生成し当該クライアントへ発行する公開鍵証明書生成手段と、
前記公開鍵証明書生成手段により発行された前記公開鍵証明書の積算発行数を記憶した積算発行数記憶手段と、
前記公開鍵証明書生成手段により発行された前記公開鍵証明書の発行数に応じて前記積算発行数記憶手段に記憶された前記積算発行数を更新する積算発行数更新手段と、
前記公開鍵証明書の発行数上限値を記憶した発行数上限値記憶手段と、
前記積算発行数記憶手段に記憶された前記積算発行数および前記発行数上限値記憶手段に記憶された前記発行数上限値を参照して当該積算発行数が当該発行数上限値に達しているか否かを判定する発行数判定手段と、
を具備し、
前記公開鍵証明書生成手段はさらに、前記発行数判定手段に基づき前記積算発行数が前記発行数上限値に達しているとき前記公開鍵証明書を発行しないことを特徴とする公開鍵証明書発行システム。
【請求項７】
公開鍵がクライアントのものであることを証明する公開鍵証明書を発行するために、前記公開鍵証明書の発行数上限値を記憶した発行数上限値記憶手段と前記公開鍵証明書の積算発行数を記憶した積算発行数記憶手段とを参照することで、コンピュータを、
前記公開鍵証明書の発行数に応じて前記積算発行数を更新する積算発行数更新手段、
前記積算発行数が前記発行数上限値に達しているか否かを判定する発行数判定手段、
前記積算発行数が前記発行数上限値に達していないとき前記クライアントからの前記公開鍵証明書の発行要求に応動して当該公開鍵証明書を生成し当該クライアントへ発行し、前記積算発行数が前記発行数上限値に達しているとき前記公開鍵証明書を発行しない公開鍵証明書生成手段、
として機能させることを特徴とする公開鍵証明書発行プログラム。
【請求項８】
公開鍵がクライアントのものであることを証明する公開鍵証明書を発行する公開鍵証明書発行装置における公開鍵証明書発行方法であって、
前記公開鍵証明書発行装置は、前記公開鍵証明書の発行数上限値と、当該公開鍵証明書発行装置により発行された前記公開鍵証明書の積算発行数を記憶していて、
前記公開鍵証明書発行装置が発行した前記公開鍵証明書の発行数に応じて前記積算発行数を更新する積算発行数更新ステップと、
前記積算発行数更新ステップにおいて更新された前記積算発行数および前記公開鍵証明書発行装置に記憶された前記発行数上限値を参照して当該積算発行数が当該発行数上限値に達しているか否かを判定する発行数判定ステップと、
前記発行数判定ステップに基づき前記積算発行数が前記発行上限値に達していないとき前記クライアントからの公開鍵証明書の発行要求に応動して当該公開鍵証明書を生成して当該クライアントへ発行し、前記発行数判定ステップに基づき前記積算発行数が前記発行上限値に達しているとき前記公開鍵証明書を発行しない公開鍵証明書発行ステップと、
を含むことを特徴とする公開鍵証明書発行方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、公開鍵がクライアントのものであることを証明する公開鍵証明書を発行するための公開鍵証明書発行装置、公開鍵証明書発行システム、公開鍵証明書発行プログラムおよび公開鍵証明書発行方法、ならびに、この公開鍵証明書によって公開鍵の本人性が証明されるクライアントに関する。
【背景技術】
【０００２】
音楽、画像、映画などをデジタル化したコンテンツは、複写や伝送を繰り返しても劣化しない。このため、権利者の許諾範囲を超えて、配布や交換が行われがちである。そこで、コンテンツの流通や再生に制限を加えるため、コンテンツを暗号化することが考えられた。
【０００３】
コンテンツを暗号化する一方式として、コンテンツのデータを同じ鍵（秘密鍵）で暗号化および復号化する秘密鍵暗号方式（secret key cryptosystem）、すなわち対称鍵暗号方式（symmetric key cryptosystem）が挙げられる。しかし、鍵を安全な経路で輸送する必要があるため鍵の管理が難しく、安全性に劣る問題があった。
【０００４】
前記問題に対処するため、公開鍵暗号方式（public key cryptosystem）、すなわち、非対称鍵暗号方式（asymmetric key cryptosystem）が考えられた。公開鍵暗号方式では、ペアとなる２つの鍵を使ってデータの暗号化および復号化を行なう。一方の鍵は、他人に広く公開する公開鍵であり、他方の鍵は、正当な権利者が厳重に管理する秘密鍵である。秘密鍵で暗号化されたデータは対応する公開鍵でしか復号できず、公開鍵で暗号化されたデータは対応する秘密鍵でしか復号できない。したがって、公開鍵暗号方式は、秘密鍵暗号方式と比較すると、公開鍵を安全な経路で輸送する必要がないため、鍵の管理が容易で安全性が高い利点がある。
【０００５】
この公開鍵暗号方式では、データの暗号化は、正規の受信者が所持する秘密鍵とペアとなる公開鍵を用いて行われる必要がある。つまり、データを暗号化して送信しようとする送信者は、暗号化に用いる公開鍵が、正当なものかどうか、他人のものでないか、また改ざんされていないかということ、を検証しておく必要がある。このような受信者、すなわち公開鍵利用者の本人性（Authenticity）を証明するには、公開鍵証明書を用いる。公開鍵証明書は、公開鍵に、正当性を保証できる第三者たる発行者または発行装置である認証局（CA; Certificate Authority）がデジタル署名したものである。
【０００６】
従来、ホストが秘密鍵を用いてデジタル署名した匿名公開鍵証明書を要求するメッセージを送ると、ルーターがホストの公開鍵を用いてホストを認証した後、このメッセージをＣＡ（Certification Authority; 公開鍵証明書発行者）へ送り、ＣＡは、認証用署名の正当性を確認してＣＡのデジタル署名を含む公開鍵証明書を発行する公開鍵証明書発行方法が知られている（例えば、特許文献１参照。）。
【０００７】
また、ＡＤ（Authorized Domain）内で同一の共通秘密情報（CSI; Common Secret Information）を共有しておき、この共通秘密情報を用いて配信要求元（再生装置、記録媒体）の認証を行った後、この配信要求元へコンテンツ鍵を配信するとともに配信可能なコンテンツ鍵の数を1減算し、この際、再生装置へコンテンツ鍵を配信する場合は利用期限を含まない鍵情報を配信し、記録媒体へコンテンツ鍵を配信する場合は利用期限を含む鍵情報を配信するコンテンツサーバが知られている（例えば、特許文献２参照。）。
【０００８】
【特許文献１】特開２００４−３２６９９号公報（段落００９０−０１０２、図１）
【特許文献２】特開２００４−１１２７８８号公報（段落０１０４−０１０５、図１６）
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかし、従来の公開鍵証明書発行方法では、このＣＡは、公開鍵証明書を発行する機関という意味での認証局と、公開鍵証明書の利用者（ホスト）を審査し、その本人性に責任を負う登録局としての両方の役割を果たしている。このため、このＣＡは、登録局として、公開鍵証明書の申請者（ホスト）が申請書（要求メッセージ）中で特定される者と同一であること、申請者が対応する秘密鍵を正当に所持していること、などの認証条件を充足しているか否かを確認する必要がある。さらに、この公開鍵証明書発行方法を、例えば家庭内や学校内で実施する場合、家屋内や構内ごとに、登録局（ＣＡ）を操作する管理者を配置する必要がある。したがって、公開鍵証明書の発行者（ＣＡ）側の構成が複雑になり、また、管理費用がかさみ、操作が煩雑である問題点があった。
【００１０】
また、従来のコンテンツサーバでは、ＡＤ（Authorized Domain）内で同一の共通秘密情報（CSI; Common Secret Information）が共有されることとなるため、新たな機器をＡＤ内に登録するには、このコンテンツサーバが従来の認証局と同等の機能を有する必要がある。このため、機器の登録操作が煩雑であり、コンテンツサーバおよび機器の両方の構成が複雑になり、また、管理費用がかさむ問題点があった。
【００１１】
本発明は、前記のような問題点に鑑みてなされたものであり、従来は公開鍵証明書の発行のため必要であった認証局の設置や管理者の配置を不要にして、管理経費の削減を図るとともに操作の簡易化を図ることができる公開鍵証明書発行装置、クライアント、公開鍵証明書発行システム、公開鍵証明書発行プログラムおよび公開鍵証明書発行方法を提供することを目的とする。
【課題を解決するための手段】
【００１２】
本発明は、前記目的を達成するために創案されたものであり、まず、請求項１に記載の公開鍵発行装置は、公開鍵がクライアントのものであることを証明する公開鍵証明書を発行する公開鍵証明書発行装置であって、公開鍵証明書生成手段と、積算発行数記憶手段と、積算発行数更新手段と、発行数上限値記憶手段と、発行数判定手段と、を備える構成とした。
【００１３】
かかる構成によれば、公開鍵証明書発行装置は、公開鍵証明書生成手段によって、クライアントからの公開鍵証明書の発行要求に応動して公開鍵証明書を生成しクライアントへ発行する。つまり、公開鍵証明書生成手段は、クライアントから公開鍵証明書の発行要求を受けると、後記する条件の下で、このクライアントへ公開鍵証明書を発行することとなる。
【００１４】
また、公開鍵証明書発行装置は、積算発行数記憶手段によって、公開鍵証明書生成手段により発行された公開鍵証明書の積算発行数を記憶している。また、この積算発行数は、積算発行数更新手段によって発行された公開鍵証明書の発行数に応じて更新される。こうして、積算発行数記憶手段に記憶された積算発行数は、発行された公開鍵証明書の数に応じてアップデートされる。このため、積算発行数は、公開鍵証明書発行装置が現在までに発行した公開鍵証明書の数を正確に示すこととなる。
【００１５】
また、公開鍵証明書発行装置は、発行数上限値記憶手段によって、公開鍵証明書の発行数上限値を記憶している。この発行数上限値は、公開鍵証明書発行装置が発行を許容される公開鍵証明書の数の最大値を示している。
【００１６】
また、公開鍵証明書発行装置は、発行数判定手段によって、積算発行数記憶手段に記憶された積算発行数および発行数上限値記憶手段に記憶された発行数上限値を参照する。そして、積算発行数が発行数上限値に達しているか否かを判定する。積算発行数が発行数上限値に達しているということは、発行済みの公開鍵証明書の数が許容される上限に達しているということであるから、公開鍵証明書発行装置が、さらなる公開鍵証明書を発行してはならないことを意味する。反面、積算発行数が発行数上限値に達していないということは、発行済みの公開鍵証明書の数が許容される上限に達していないということであるから、公開鍵証明書発行装置が、さらなる公開鍵証明書を発行してよいことを意味する。
【００１７】
さらに、公開鍵証明書発行装置は、公開鍵証明書生成手段によって、発行数判定手段の判定結果に基づいて、積算発行数が発行数上限値に達しているとき公開鍵証明書を発行しない。したがって、公開鍵証明書発行装置は、発行済みの公開鍵証明書の数が許容される上限に達しているときは、公開鍵証明書生成手段によって、さらなる公開鍵証明書を発行しない。反面、公開鍵証明書発行装置は、積算発行数が発行数上限値に達していない、すなわち、発行済みの公開鍵証明書の数が許容される上限に達していないときは、クライアントから公開鍵証明書の発行要求を受けると、公開鍵証明書生成手段によって、さらなる公開鍵証明書を発行する。こうして、公開鍵証明書発行装置は、許容される上限までは、公開鍵証明書を発行するが、これを超える公開鍵証明書は発行しないこととなる。
【００１８】
また、請求項２に記載の公開鍵証明書発行装置は、請求項１に記載の公開鍵証明書発行装置において、公開鍵証明書無効化手段と、積算発行数減算手段と、を具備した構成とした。
【００１９】
かかる構成によれば、公開鍵証明書発行装置は、公開鍵無効化手段によって、クライアントからの公開鍵証明書の無効化要求に応動して公開鍵証明書を無効化するとともに、積算発行数減算手段によって、公開鍵証明書無効化手段により無効化された公開鍵証明書の数に応じて積算発行数記憶手段に記憶された積算発行数を減少させる。こうして、無効となった公開鍵証明書の数に応じて、積算発行数記憶手段に記憶された積算発行数が減算され、アップデートされる。したがって、公開鍵証明書が発行されたときのみならず、公開鍵証明書が無効化されたときも、積算発行数記憶手段に記憶された積算発行数は、発行されて有効な公開鍵証明書の数を示す。
【００２０】
また、請求項３に記載の公開鍵証明書発行装置は、請求項２に記載の公開鍵証明書発行装置において、失効リスト生成手段を具備した構成とした。
【００２１】
かかる構成によれば、公開鍵証明書発行装置は、失効リスト生成手段によって、無効化された公開鍵証明書を示す情報を含む失効リストを生成しクライアントへ配信する。具体的には、失効リストとは、無効化された公開鍵証明書を示すデータに、公開鍵証明書発行装置自身の秘密鍵によって署名を施したものである。この失効リストがクライアントに配信されることにより、クライアントにおいて、無効な公開鍵証明書を知ることができる。
【００２２】
また、請求項４に記載の公開鍵証明書発行装置は、請求項１から請求項３のいずれかに記載の公開鍵証明書発行装置において、発行数設定情報受信手段と、発行数上限値書換手段と、を具備した構成とした。
【００２３】
かかる構成によれば、公開鍵証明書発行装置は、発行数設定情報受信手段によって、公開鍵証明書発行装置による公開鍵証明書の新たな発行上限数を表す発行数設定情報を受信し、発行数上限値書換手段によって、受信した発行数設定情報に基づき発行数上限値記憶手段に記憶した発行数上限値を書き換える。このため、公開鍵証明書発行装置に記憶された発行数上限値を別の値に書き換えたいときは、公開鍵証明書発行装置へ公開鍵証明書の新たな発行上限数を表す発行数設定情報を送信すれば、公開鍵証明書発行装置は、この発行数設定情報を発行数設定情報受信手段によって受信し、発行数上限値書換手段によって、この発行数設定情報に基づいて、発行数上限値を別の新たな値に書き換えることとなる。
【００２４】
また、請求項５に記載のクライアントは、公開鍵証明書発行装置が発行する公開鍵証明書によって公開鍵が自身のものであることを証明されるクライアントであって、公開鍵証明書発行要求手段と、公開鍵証明書保管手段と、鍵削除手段と、無効化要求手段と、を具備した構成とした。
【００２５】
かかる構成によれば、クライアントは、公開鍵証明書発行要求手段によって、公開鍵証明書発行装置に対し前記公開鍵証明書の発行要求を行い、公開鍵証明書保管手段によって、発行された公開鍵証明書を受信し保管する。こうして、クライアントは、公開鍵証明書発行装置から公開鍵証明書を得る。
【００２６】
また、クライアントは、鍵削除手段によって、公開鍵証明書保管手段から公開鍵証明書を削除し、無効化要求手段によって、公開鍵証明書発行装置に対し鍵削除手段により削除された公開鍵証明書の無効化要求を行う。こうして、クライアントは、公開鍵証明書を削除するとともに、この公開鍵証明書の無効化要求を行うことにより、公開鍵証明書発行装置も、この公開鍵証明書を無効にすることとなる。
【００２７】
また、請求項６に記載の公開鍵証明書発行システムは、公開鍵がクライアントのものであることを証明する公開鍵証明書を発行する公開鍵証明書発行装置と、公開鍵証明書発行装置が発行する公開鍵証明書によって公開鍵が自身のものであることを証明されるクライアントと、を含む公開鍵証明書発行システムであって、クライアントは、公開鍵証明書発行要求手段と、公開鍵証明書保管手段と、を具備し、公開鍵証明書発行装置は、公開鍵証明書生成手段と、積算発行数記憶手段と、積算発行数更新手段と、発行数上限値記憶手段と、発行数判定手段と、を具備した構成とした。
【００２８】
かかる構成によれば、公開鍵証明書発行システムのクライアントは、公開鍵証明書発行要求手段によって、公開鍵証明書発行装置に対し前記公開鍵証明書の発行要求を行い、公開鍵証明書保管手段によって、発行された公開鍵証明書を受信し保管する。こうして、クライアントは、公開鍵証明書発行装置から公開鍵証明書を得る。
【００２９】
また、公開鍵証明書発行システムの公開鍵証明書発行装置は、公開鍵証明書生成手段によって、クライアントからの公開鍵証明書の発行要求に応動して公開鍵証明書を生成しクライアントへ発行する。つまり、公開鍵証明書生成手段は、クライアントから公開鍵証明書の発行要求を受けると、後記する条件の下で、このクライアントへ公開鍵証明書を発行することとなる。
【００３０】
また、公開鍵証明書発行システムの公開鍵証明書発行装置は、積算発行数記憶手段によって、公開鍵証明書生成手段により発行された公開鍵証明書の積算発行数を記憶している。また、この積算発行数は、公開鍵証明書発行装置の積算発行数更新手段によって、発行された公開鍵証明書の発行数に応じて更新される。こうして、積算発行数記憶手段に記憶された積算発行数は、発行された公開鍵証明書の数に応じてアップデートされる。このため、積算発行数は、公開鍵証明書発行装置が現在までに発行した公開鍵証明書の数を正確に示すこととなる。
【００３１】
また、公開鍵証明書発行システムの公開鍵証明書発行装置は、発行数上限値記憶手段によって、公開鍵証明書の発行数上限値を記憶している。この発行数上限値は、公開鍵証明書発行装置が発行を許容される公開鍵証明書の数の最大値を示している。
【００３２】
また、公開鍵証明書発行システムの公開鍵証明書発行装置は、発行数判定手段によって、積算発行数記憶手段に記憶された積算発行数および発行数上限値記憶手段に記憶された発行数上限値を参照する。そして、積算発行数が発行数上限値に達しているか否かを判定する。
【００３３】
さらに、公開鍵証明書発行システムの公開鍵証明書発行装置は、積算発行数が発行数上限値に達している、すなわち、発行済みの公開鍵証明書の数が許容される上限に達しているときは、公開鍵証明書生成手段によって、さらなる公開鍵証明書を発行しない。反面、公開鍵証明書発行装置は、積算発行数が発行数上限値に達していない、すなわち、発行済みの公開鍵証明書の数が許容される上限に達していないときは、クライアントから公開鍵証明書の発行要求を受けると、公開鍵証明書生成手段によって、さらなる公開鍵証明書を発行する。こうして、公開鍵証明書発行システムは、許容される上限までは、公開鍵証明書を発行するが、これを超える公開鍵証明書は発行しないこととなる。
【００３４】
また、請求項７に記載の公開鍵証明書発行プログラムは、公開鍵がクライアントのものであることを証明する公開鍵証明書を発行するために、前記公開鍵証明書の発行数上限値を記憶した発行数上限値記憶手段と前記公開鍵証明書の積算発行数を記憶した積算発行数記憶手段とを参照することで、コンピュータを、積算発行数更新手段、発行数判定手段、公開鍵証明書生成手段、として機能させることを特徴とする。
【００３５】
かかる構成によれば、公開鍵証明書発行プログラムは、積算発行数更新手段によって、積算発行数が、公開鍵証明書の発行数に応じて更新される。
【００３６】
また、公開鍵証明書発行プログラムは、発行数判定手段によって、積算発行数が発行数上限値に達しているか否かを判定する。
【００３７】
さらに、公開鍵証明書発行プログラムは、公開鍵証明書生成手段によって、発行数判定手段の判定結果に基づいて積算発行数が発行数上限値に達しているとき、公開鍵証明書を発行しない。
【００３８】
また、請求項８に記載の公開鍵証明書発行方法は、公開鍵がクライアントのものであることを証明する公開鍵証明書を発行する公開鍵証明書発行装置における公開鍵証明書発行方法であって、公開鍵証明書発行装置は、公開鍵証明書の発行数上限値と、公開鍵証明書発行装置により発行された前記公開鍵証明書の積算発行数を記憶していて、積算発行数更新ステップと、発行数判定ステップと、公開鍵証明書発行ステップと、を含むことを特徴とする。
【００３９】
この手順によれば、公開鍵証明書発行方法では、積算発行数更新ステップによって、積算発行数を、発行された公開鍵証明書の発行数に応じて更新している。こうして、公開鍵証明書発行装置に記憶された積算発行数は、発行された公開鍵証明書の数に応じてアップデートされる。このため、積算発行数は、公開鍵証明書発行装置が現在までに発行した公開鍵証明書の数を正確に示すこととなる。
【００４０】
また、公開鍵証明書発行方法では、発行数判定ステップによって、公開鍵証明書発行装置に記憶された積算発行数および発行数上限値を参照する。そして、積算発行数が発行数上限値に達しているか否かを判定する。
【００４１】
そして、公開鍵証明書発行方法では、公開鍵証明書発行ステップによって、発行数判定ステップに基づき積算発行数が発行上限値に達していないときクライアントからの公開鍵証明書の発行要求に応動して公開鍵証明書を生成してクライアントへ発行し、発行数判定ステップに基づき積算発行数が発行上限値に達しているとき公開鍵証明書を発行しない。
【００４２】
請求項１、請求項６、請求項７または請求項８に記載の発明によれば、積算発行数が発行数上限値に達しているか否かを判定する。そして、この判定結果に基づいて、積算発行数が発行数上限値に達しているとき公開鍵証明書を発行しない。つまり、発行済みの公開鍵証明書の数が許容される上限に達しているときは、さらなる公開鍵証明書を発行しないが、発行済みの公開鍵証明書の数が許容される上限に達していないときは、クライアントから公開鍵証明書の発行要求を受けると、さらなる公開鍵証明書を発行する。このような構成により、従来は公開鍵証明書の発行のため必要であった登録局の設置や管理者の配置を不要にして、管理経費の削減を図るとともに操作の簡易化を図ることができる。
【００４３】
請求項２に記載の発明によれば、無効となった公開鍵証明書の数に応じて、記憶された積算発行数が減算され、アップデートされる。したがって、公開鍵証明書が発行されたときのみならず、公開鍵証明書が無効化されたときも、積算発行数記憶手段に記憶された積算発行数を、発行されて有効な公開鍵証明書の数と一致させることができる。
【００４４】
請求項３に記載の発明によれば、無効化された公開鍵証明書を示す情報を含む失効リストが生成されクライアントへ配信されることにより、クライアントにおいて、無効な公開鍵証明書を知ることができる。
【００４５】
請求項４に記載の発明によれば、公開鍵証明書発行装置に記憶された発行数上限値を別の値に書き換えたいとき、公開鍵証明書発行装置へ公開鍵証明書の新たな発行上限数を表す発行数設定情報を送信すれば、公開鍵証明書発行装置は、この発行数設定情報を受信し、この発行数設定情報に基づいて、発行数上限値を別の新たな値に書き換える。このため、公開鍵証明書が発行を許容される公開鍵証明書の数（発行数上限値）を所望の値に書き換えることができる。
【００４６】
請求項５に記載の発明によれば、クライアントは、公開鍵証明書発行装置から得た公開鍵証明書を削除し、この公開鍵証明書の無効化要求を行うので、このクライアントから公開鍵証明書を削除できるとともに、この公開鍵証明書の無効化要求を行うことにより、公開鍵証明書発行装置においても、この公開鍵証明書を無効にできる。
【発明を実施するための最良の形態】
【００４７】
以下、本発明を実施するための最良の形態について、図面を参照して詳細に説明する。
まず、本発明による公開鍵証明書発行システム１の構成および運用の概要について説明する。
図１は、本発明による公開鍵証明書発行システム１の一構成例を示すブロック図である。
【００４８】
公開鍵証明書発行システム１は、比較的ノード数が少なく閉鎖的なネットワーク、例えば家庭内や学校内などに敷設されたネットワークを利用して構築され、このネットワーク内において公開鍵証明書を発行するためのものであり、公開鍵証明書発行装置１０と、公開鍵証明書発行装置１０に接続されたクライアント２０ａ、２０ｃ、２０ｄと、クライアント２０ａにカスケード接続されたクライアント２０ｂとを具備している。なお、クライアント２０ａ〜２０ｄのいずれかを減らしてもよいし、公開鍵証明書発行装置１０へ、クライアント２０ａ〜２０ｄと同様の構成を有するクライアントを、直接またはカスケード接続によりさらに追加してもよい。
【００４９】
公開鍵証明書発行装置１０は、クライアント２０ａ〜２０ｄに対し、公開鍵証明書を発行するためのものであり、従来の認証局（CA: Certificate Authority）に代わるものである。後記するように、公開鍵証明書発行装置１０には、公開鍵証明書の発行数上限値が設定されていて、公開鍵証明書発行システム１内で有効な公開鍵証明書の数は、この発行数上限値以下に制御される。公開鍵証明書発行装置１０はさらに、外部ネットワーク２を介して、管理装置４と通信可能に接続されている。
【００５０】
管理装置４は、公開鍵証明書発行システム１外から、外部ネットワーク２を介して、公開鍵証明書発行装置１０へ発行数設定情報を送り、公開鍵証明書発行装置１０に設定されていた発行数上限値を書き換える機能を有する。
【００５１】
公開鍵証明書発行装置１０は、公開鍵証明書の積算発行数、すなわち公開鍵証明書発行システム１内で発行され有効な公開鍵証明書の数を管理している。公開鍵証明書発行装置１０は、積算発行数が発行数上限値に達していないときは、クライアント２０ａ〜２０ｄの要求に応じて公開鍵証明書を発行し、この積算発行数が発行数上限値に達しているときは発行を拒否する。こうして、公開鍵証明書発行システム１内で発行され有効な公開鍵証明書の数は、発行数上限値以下に制御される。
【００５２】
このように、公開鍵証明書発行システム1内では、公開鍵証明書発行装置１０に直接的または間接的に接続されているクライアント２０ａ〜２０ｄに対して、複雑な認証手続が科されることなく、公開鍵証明書が発行される。このため、従来の認証局が公開鍵証明書の発行のたびに行っていた複雑な手続きが不要となり、構成を簡易化するとともに、管理費用の削減を図ることができる。また、公開鍵証明書発行システム１内では、クライアント（２０ａ〜２０ｄ）の追加や脱退が容易であり、発行数上限値の範囲内で機動的に公開鍵証明書を発行できるため、例えば家庭内や教室内などの範囲ごとに、クライアント２０ａ〜２０ｄを特定せずに、コンテンツ利用のために複数のライセンスを与えるのに好適である。
【００５３】
クライアント２０ａ〜２０ｄは、暗号化されたコンテンツを復号して利用するための装置であって、後記する構成を有し、具体的には、通信機能などを有するテレビジョン受像機などである。クライアント２０ａ〜２０ｄは、外部ネットワーク３を介して、コンテンツ供給装置５から、コンテンツを受信する機能を有する。さらに、クライアント２０ａ〜２０ｄは、放送局６から、暗号化され無線で配信されているコンテンツを受信する機能を有する。
【００５４】
コンテンツ供給装置５は、クライアント２０ａ〜２０ｄの要求に従って、または、一方的に、暗号化されたコンテンツを配信するコンテンツサーバである。放送局６は、暗号化されたコンテンツを無線放送するものである。
【００５５】
外部ネットワーク２および３は、公開鍵証明書発行装置１０およびクライアント２０ａ〜２０ｄと、公開鍵証明書発行システム１外とのデータの伝送を媒介する通信網であり、具体的には、インターネットまたはＷＡＮ（Wide Area Network）などである。外部ネットワーク２および３は、別個のものとして示したが、同一のネットワークであってもよい。
【００５６】
なお、本説明において、ネットワークおよび接続は、有線、無線、または、有線および無線の混在のいずれによって実現されたものでもよい。
【００５７】
公開鍵証明書発行システム１内の各ノード、すなわち、公開鍵証明書発行装置１０、クライアント２０ａ〜２０ｄには、秘密鍵と、この秘密鍵とペアとなる公開鍵とが割り当てられる。各々の公開鍵は、クライアント２０ａ〜２０ｄへ配信するデータを暗号化するのに用いる際に、正当なものかどうか、他人のものでないか、また改ざんされていないかということを検証しておく必要がある。そこで、公開鍵証明書発行システム１内では、公開鍵証明書発行装置１０が発行する公開鍵証明書によって、各ノードの本人性（Authenticity）が証明されたものとする。各ノードに対応する公開鍵証明書は、公開鍵証明書発行装置１０が、各ノードに割り当てられた公開鍵に、公開鍵証明書発行装置１０自身の秘密鍵を用いて署名を施したものである。
【００５８】
本説明において、各ノードに割り当てられる秘密鍵、この秘密鍵とペアとなる公開鍵、この公開鍵の本人性を証明する公開鍵証明書の符号をまとめると、次のとおりである。
【００５９】
【表１】
2006325112.tif 000003
【００６０】
公開鍵証明書は、例えばＩＴＵ−Ｔ（国際電気通信連合電気通信標準化部門）１９９６年勧告Ｘ．５０９に準拠した形式を有する。公開鍵証明書は、公開鍵のバージョン番号、公開鍵証明書のシリアル番号、公開鍵情報、公開鍵証明書を発行した公開鍵証明書発行装置１０に係る情報、公開鍵証明書の有効期間、証明される主体者、すなわちクライアント２０ａ〜２０ｄの情報、拡張領域などの項目を有し、拡張領域に電子メールアドレスやIPアドレスなどの情報を含んでもよい。公開鍵証明書は、例えば、ＤＨ（Diffie-Hellman）法、ＲＳＡ（R. Rivest、A. Shamir、L. Adelman）法、またはＤＳＡ（Digital Signature Algorithm）などの暗号化方式に従って生成する。
【００６１】
公開鍵証明書発行装置１０の本人性を証明する公開鍵証明書Ｋ１３は、公開鍵証明書発行装置１０を管理している認証局（図示せず）が、公開鍵証明書発行装置１０に割り当てた公開鍵証明書であり、秘密鍵Ｋ１１は、公開鍵証明書Ｋ１３に対応する秘密鍵である。また、クライアント２０ａの本人性を証明する公開鍵証明書Ｋ２３ａは、クライアント２０ａに割り当てられた公開鍵Ｋ２２ａに、公開鍵証明書発行装置１０に割り当てられた秘密鍵Ｋ１１を用いて署名を施したものである。同様に、クライアント２０ｂ、２０ｃ、２０ｄの本人性を証明する公開鍵証明書Ｋ２３ｂ、Ｋ２３ｃ、Ｋ２３ｄはそれぞれ、クライアント２０ｂ、２０ｃ、２０ｄに割り当てられた公開鍵Ｋ２２ｂ、Ｋ２２ｃ、Ｋ２２ｄに、公開鍵証明書発行装置１０に割り当てられた秘密鍵Ｋ１１を用いて署名を施したものである。
【００６２】
公開鍵証明書発行装置１０は、自身に割り当てられた秘密鍵Ｋ１１と対応する公開鍵証明書Ｋ１３とを保管する機能を有する。さらに、公開鍵証明書発行装置１０は、クライアント２０ａ〜２０ｄに割り当てられる秘密鍵Ｋ２１ａ〜Ｋ２１ｄと対応する公開鍵Ｋ２２ａ〜Ｋ２２ｄとのペアを生成し、保管するとともに、生成した秘密鍵Ｋ２１ａ〜Ｋ２１ｄを記憶媒体３０へ書き出す機能を有する。この場合、秘密鍵Ｋ２１ａ〜Ｋ２１ｄは記憶媒体３０に記憶されて人手により運搬され、クライアント２０ａ〜２０ｄの各々によって、対応する秘密鍵Ｋ２１ａ〜Ｋ２１ｄのいずれかが読み込まれ、保管される。
【００６３】
あるいは、クライアント２０ａ〜２０ｄがそれぞれ、各々に割り当てられる秘密鍵Ｋ２１ａ〜Ｋ２１ｄと対応する公開鍵Ｋ２２ａ〜Ｋ２２ｄとのペアを生成し保管するとともに、秘密鍵Ｋ２１ａ〜Ｋ２１ｄを記憶媒体３０へ書き出す機能を有してもよい。
【００６４】
このように、記憶媒体３０に記憶させて秘密鍵Ｋ２１ａ〜Ｋ２１ｄを配布すれば、オンラインで配布する際に起こりうる伝送中の漏洩や宛先誤りなどの危険がない。記憶媒体３０は、データを書き込み、または書き換えが可能であり、具体的には、フレキシブルディスク、不揮発性半導体メモリまたは光磁気ディスクなどである。
【００６５】
公開鍵証明書発行システム１は、外部から、または、外部への不正なアクセスを防止するため、所定外の経路およびノードからの通信を遮断ないし制限するファイアウォール機能を有することが好ましい。あるいは、公開鍵証明書発行システム１を完全に独立したネットワークとして構築してもよい。この場合、公開鍵証明書発行装置１０に設定された発行数上限値の書き換えは、管理装置４から行う代わりに、公開鍵証明書発行装置１０そのものを直接操作することによって行う。また、コンテンツ供給装置５からオンラインでコンテンツの供給を受ける代わりに、クライアント２０ａ、２０ｂ、２０ｃ、２０ｄの各々が、コンテンツを記憶させた可搬の媒体、例えば、光ディスク、光磁気ディスクあるいは磁気テープを読み出すことによって、コンテンツの供給を受けるようにしてもよい。
【００６６】
つぎに、図２を参照して、公開鍵発行装置１０の内部構成および機能を詳細に説明する。
図２は、公開鍵証明書発行装置１０を詳細に示すブロック図である。
公開鍵証明書発行装置１０は、演算処理装置、主記憶装置、補助記憶装置、インタフェース装置、入力装置および出力装置をバスで接続し、補助装置を備えたコンピュータサーバ装置に、所要のプログラムをインストールし、このプログラムをロードして実行することにより実現できる。
【００６７】
公開鍵証明書発行装置１０は、受信部１０１と、発行数上限値記憶部１０２と、発行数判定部１０３と、要求受信部１０５と、無効化部１０６と、失効リスト生成部１０７と、失効リスト記憶部１１７と、鍵記憶部１０８と、記憶媒体駆動部１０９と、鍵生成部１１０と、公開鍵証明書生成部１１１と、発行数管理部１１２と、発行数記憶部１１３と、セキュア通信部１２０と、制御部１３０と、操作部１３１とを含んでいる。
【００６８】
なお、公開鍵証明書発行装置１０とクライアント２０ａとの接続に着目して説明するが、公開鍵証明書発行装置１０とクライアント２０ｃまたは２０ｄとの接続も、クライアント２０ａの場合と同様である。
【００６９】
まず、公開鍵証明書発行装置１０全体に係る要素について説明する。
制御部１３０は、公開鍵証明書発行装置１０全体を制御する機能を有し、例えばマイクロプロセッサ（図示せず）を含んで実現される。
【００７０】
操作部１３１は、制御部１３０を介して、公開鍵証明書発行装置１０内の各部に指示や情報を与える機能を有し、例えばキーやポインティングデバイスを含んで実現される。
【００７１】
つぎに、鍵の生成および保管に係る各要素について説明する。
鍵記憶部１０８は、この公開鍵証明書発行装置１０の秘密鍵Ｋ１１と、この秘密鍵Ｋ１１とペアになる公開鍵証明書Ｋ１３とを記憶する機能を有する。鍵記憶部１０８はさらに、クライアント２０ａ〜２０ｄの秘密鍵Ｋ２１ａ〜Ｋ２１ｄと、この秘密鍵Ｋ２１ａ〜Ｋ２１ｄとペアになる公開鍵Ｋ２２ａ〜Ｋ２２ｄと、この公開鍵Ｋ２２ａ〜Ｋ２２ｄに対応する公開鍵証明書Ｋ２３ａ〜Ｋ２３ｄとを記憶する機能を有する。記憶された秘密鍵Ｋ１１およびＫ２１ａ〜Ｋ２１ｄは、外部から容易に読み取ったり書き換えられたりしないように、厳重に保管される。
【００７２】
記憶媒体駆動部１０９は、記憶媒体３０を読み書きする機能を有し、例えば、フレキシブルディスク駆動装置、不揮発性半導体メモリのリーダライタ、または光磁気ディスク駆動装置などからなる。
【００７３】
鍵生成部１１０は、記憶媒体駆動部１０９によって記憶媒体３０から公開鍵証明書発行装置１０の秘密鍵Ｋ１１を読み出し、この秘密鍵Ｋ１１を、鍵記憶部１０８に記憶させる。あるいは、鍵生成部１１０自身が、秘密鍵Ｋ１１を生成する機能を有してもよい。
【００７４】
鍵生成部１１０はさらに、記憶媒体駆動部１０９によって読み出されたクライアント２０ａ〜２０ｄの秘密鍵Ｋ２１ａ〜Ｋ２１ｄと、ペアとなる公開鍵Ｋ２２ａ〜Ｋ２２ｄとを、鍵記憶部１０８に記憶させる。あるいは、鍵生成部１１０自身が、クライアント２０ａ〜２０ｄの秘密鍵Ｋ２１ａ〜Ｋ２１ｄと、ペアとなる公開鍵Ｋ２２ａ〜Ｋ２２ｄとを生成し、鍵記憶部１０８に記憶させるとともに、秘密鍵Ｋ２１ａ〜Ｋ２１ｄを記憶媒体駆動部１０９によって記憶媒体３０へ書き出す機能を有してもよい。
【００７５】
つぎに、クライアント２０ａとの通信、特にクライアント２０ａからの受信に係る要素について説明する。
セキュア通信部１２０は、制御部１３０の制御により、クライアント２０ａとの暗号化通信路を設定する機能を有する。このため、セキュア通信部１２０は、秘密鍵Ｋ１１および公開鍵証明書Ｋ１３とは別の、暗号化通信路を設定するための秘密鍵と公開鍵証明書とを記憶している。また、セキュア通信部１２０は、制御部１３０の制御により、暗号化通信路を設定せずに通信を行わせることもできる。
【００７６】
要求受信部１０５は、次の２つの機能を有する。
（１）クライアント２０ａの要求送信部２０５（後記）から、このクライアント２０ａの公開鍵証明書Ｋ２３ａの発行要求を受信すると、この発行要求を添えて、その旨を公開鍵証明書生成部１１１へ通知する。なお、この発行要求には、クライアント２０ａの公開鍵Ｋ２２ａが含まれている。
（２）クライアント２０ａの要求送信部２０５（後記）から、このクライアント２０ａの公開鍵証明書Ｋ２３ａの削除要求を受信すると、この削除要求を添えて、その旨を無効化部１０６へ通知する。なお、この削除要求には、このクライアント２０ａの公開鍵証明書Ｋ２３ａもしくはこの公開鍵証明書Ｋ２３ａを特定できる情報が含まれている。この情報として、例えば、公開鍵証明書Ｋ２３ａ〜Ｋ２３ｄの各々にシリアル番号を割り振っておき、このシリアル番号を利用すればよい。
【００７７】
つぎに、公開鍵証明書Ｋ２３ａ〜Ｋ２３ｄの発行数管理に係る要素について説明する。
発行数上限値記憶部１０２は、公開鍵証明書発行システム１内で許容される公開鍵証明書Ｋ２３ａ〜Ｋ２３ｄの発行数の上限を意味する発行数上限値を書き換え可能に記憶している。発行数上限値は、例えばクライアント２０ａ〜２０ｄの数にするが、さらにクライアント（図示せず）を接続する予定があるときなどは、あらかじめこれに応じた数としてもよい。
【００７８】
受信部１０１は、管理装置４から、公開鍵証明書Ｋ２３ａ〜Ｋ２３ｄの新たな発行上限数を表す発行数設定情報を受信すると、発行数上限値記憶部１０２に記憶した発行数上限値を、発行数設定情報に基づく数に書き換える。
また、発行数上限値記憶部１０２に記憶した発行数上限値は、操作部１３１を操作することによっても書き換えることができる。
【００７９】
発行数記憶部１１３は、これまで公開鍵証明書生成部１１１が生成して発行した公開鍵証明書Ｋ２３ａ〜Ｋ２３ｄの発行数、すなわち積算発行数を記憶している。例えば、初期状態（公開鍵証明書発行システム１を開設した時点）では、積算発行数は０である。
【００８０】
発行数管理部１１２は、次の２つの機能を有する。
（１）公開鍵証明書生成部１１１によって公開鍵証明書（Ｋ２３ａ〜Ｋ２３ｄのいずれか）が１通発行されるごとに、発行数記憶部１１３が記憶している積算発行数に１を加算して、更新記憶させる。
（２）無効化部１０６によって公開鍵証明書（Ｋ２３ａ〜Ｋ２３ｄのいずれか）が１通無効化されるごとに、発行数記憶部１１３が記憶している積算発行数から１を減算して、更新記憶させる。
【００８１】
このように、公開鍵証明書（Ｋ２３ａ〜Ｋ２３ｄのいずれか）が発行されたり、無効化されるたびに、発行数管理部１１２によって発行数記憶部１１３が書き換えられることにより、積算発行数は、公開鍵証明書発行システム１内で有効な公開鍵証明書Ｋ２３ａ〜Ｋ２３ｄの数を意味することとなる。
【００８２】
発行数判定部１０３は、発行数記憶部１１３に記憶された積算発行数と、発行数上限値記憶部１０２に記憶された発行数上限値とを比較する。そして、
（１）積算発行数が発行数上限値に達していないならば、発行許可判定を下し、
（２）積算発行数が発行数上限値に達しているならば、発行拒否判定を下し、
いずれの場合も、その旨を公開鍵証明書生成部１１１へ通知する。
【００８３】
つぎに、公開鍵証明書（Ｋ２３ａ〜Ｋ２３ｄのいずれか）の発行および無効化に係る要素について説明する。
公開鍵証明書生成部１１１は、要求受信部１０５からクライアント２０ａの公開鍵証明書Ｋ２３ａの発行要求があった旨の通知をうけると、発行数判定部１０３の判定結果を参照する。
（１）そこで、発行許可判定が下されているときは、公開鍵証明書生成部１１１は、鍵生成部１１０を通じて、鍵記憶部１０８に記憶されている公開鍵証明書発行装置１０の秘密鍵Ｋ１１を読み出す。そして、この秘密鍵Ｋ１１を用いてクライアント２０ａの公開鍵Ｋ２２ａに署名を施して、クライアント２０ａに係る公開鍵証明書Ｋ２３ａを生成する。生成した公開鍵証明書Ｋ２３ａは、セキュア通信部１２０を通じて、クライアント２０ａの鍵管理部２１２（後記）へ発行される。発行が行われた旨は、発行数管理部１１２にも通知される。
【００８４】
なお、あらかじめ鍵生成部１１０によって公開鍵証明書Ｋ１３およびＫ２３ａ〜Ｋ２３ｄを生成して鍵記憶部１０８に記憶しておき、要求受信部１０５からの通知に基づき、公開鍵証明書生成部１１１が鍵記憶部１０８から通知に係る公開鍵証明書Ｋ１３またはＫ２３ａ〜Ｋ２３ｄのいずれかを読み出して、発行に用いる構成としてもよい。
（２）そこで、発行拒否判定が下されているときは、積算発行数が発行数上限値に達している旨のメッセージを生成し、セキュア通信部１２０を通じて、クライアント２０ａの鍵管理部２１２（後記）へ送信する。このメッセージが送信された旨は、発行数管理部１１２にも通知される。
【００８５】
無効化部１０６は、要求受信部１０５からクライアント２０ａの公開鍵証明書Ｋ２３ａの削除要求を表すメッセージを受信すると、この公開鍵証明書Ｋ２３ａを無効化し、その旨を発行数管理部１１２および失効リスト生成部１０７へ通知する。
【００８６】
失効リスト記憶部１１７は、失効リスト、すなわち、無効化部１０６によって無効化された公開鍵証明書（Ｋ２３ａ〜Ｋ２３ｄのいずれかを含む）を示すリストに公開鍵証明書発行装置１０の秘密鍵Ｋ１１で署名を施したものを記憶している。例えば、初期状態では、このリストには、いずれの公開鍵証明書（Ｋ２３ａ〜Ｋ２３ｄ）も掲載されていない。
【００８７】
失効リスト生成部１０７は、無効化部１０６から公開鍵証明書Ｋ２３ａを無効化した旨の通知を受けると、失効リスト記憶部１１７に記憶されている失効リストを読み出し、すでに無効化されている公開鍵証明書（Ｋ２３ｂ〜Ｋ２３ｄのいずれか）を示すリストを抽出して、このリストに公開鍵証明書Ｋ２３ａを加えて、リストを更新する。そして、鍵記憶部１０８から鍵生成部１１０を通じて公開鍵証明書発行装置１０の秘密鍵Ｋ１１を読み出し、この秘密鍵Ｋ１１を用いて更新したリストに署名を施し、新たな失効リストを生成する。失効リスト生成部１０７は、この新たな生成リストを、失効リスト記憶部１１７に更新記憶させるとともに、セキュア通信部１２０を介してクライアント２０ａ〜２０ｄへ配信する。
【００８８】
続いて、クライアント２０ａの内部構成および機能について、詳細に説明する。
図３は、クライアント２０ａを詳細に示すブロック図である。
クライアント２０ａは、例えばデコーダ付のテレビジョン受像機など、コンテンツを利用するための装置に、コンピュータシステムを付加することにより実現できる。このコンピュータシステムは、演算処理装置、主記憶装置、補助記憶装置、インタフェース装置、入力装置および出力装置をバスで接続し、補助装置を備えたコンピュータに、所要のプログラムをインストールし、このプログラムをロードして実行可能にしたものである。
【００８９】
なお、クライアント２０ａについて説明するが、クライアント２０ｂ〜２０ｄも同様の構成でよい。
【００９０】
クライアント２０ａは、受信部２０１と、コンテンツ利用装置２３３と、制御部２３０と、操作部２３１と、表示部２３２と、セキュア通信部２２０、２２１と、記憶媒体駆動部２０９と、鍵生成部２１０と、鍵記憶部２０８と、鍵管理部２１２と、発行・削除命令部２１１と、要求送信部２０５とを含んでいる。
【００９１】
まず、クライアント２０ａ全体の制御に係る要素およびコンテンツの利用に係る要素について説明する。
受信部２０１は、具体的には、外部ネットワーク３とのインタフェース装置および放送局６（図１参照）の送信波の受信設備であり、コンテンツ供給装置５または放送局６からの信号を受信して、コンテンツ利用装置２３３で利用可能な形式に変換して送出する機能を有する。
【００９２】
コンテンツ利用装置２３３は、映像再生機能および音声再生機能などを有し、受信部２０１から受信した信号を用いて、コンテンツを再生するための装置である。コンテンツ利用装置２３３はまた、公開鍵証明書Ｋ２３ａを用いて得たコンテンツ鍵などを用いて、暗号化されたコンテンツのデータを復号する復号部２３４を含む。
【００９３】
制御部２３０は、クライアント２０ａ全体を制御する機能を有し、例えばマイクロプロセッサ（図示せず）を含んで実現される。
【００９４】
操作部２３１は、制御部２３０を介して、クライアント２０ａ内の各部に指示や情報を与える機能を有し、例えばキーやポインティングデバイス（いずれも図示せず）を含んで実現される。
【００９５】
表示部２３２は、例えば液晶表示装置を含み、操作部２３１から入力された指示内容や、クライアント２０ａの状態などの情報を表示する。
【００９６】
つぎに、外部との通信および鍵の管理に係る要素について説明する。
セキュア通信部２２０は、制御部２３０の制御により、公開鍵証明書発行装置１０との暗号化通信路を設定する機能を有する。このため、セキュア通信部２２０は、秘密鍵Ｋ２１ａおよび公開鍵証明書Ｋ２３ａとは別の、暗号化通信路を設定するための秘密鍵と公開鍵証明書とを記憶している。また、セキュア通信部２２０は、制御部２３０の制御により、暗号化通信路を設定せずに通信を行わせることもできる。
【００９７】
セキュア通信部２２１は、制御部２３０の制御により、秘密鍵Ｋ２１ａおよび公開鍵証明書Ｋ２３ａとは別の秘密鍵および公開鍵証明書を用いて、クライアント２０ｂとの暗号化通信路を設定する。また、制御部２３０の制御により、暗号化通信路を設定せずに通信を行わせることもできる。
【００９８】
このように、クライアント２０ａ〜２０ｄは、セキュア通信部２２０および２２１を備えているので、更なるクライアント（図示せず）をカスケード状に接続すれば、鍵管理部２１２の媒介により、公開鍵証明書発行装置１０との暗号化通信路を延長することができる。
【００９９】
記憶媒体駆動部２０９は、記憶媒体３０（図１参照）を読み書きする機能を有し、例えば、フレキシブルディスク駆動装置、不揮発性半導体メモリのリーダライタ、または光磁気ディスク駆動装置などからなる。
【０１００】
鍵生成部２１０は、秘密鍵Ｋ２１ａと公開鍵Ｋ２２ａとのペアを生成し、鍵記憶部２０８に記憶させる。鍵生成部２１０は、この生成した秘密鍵Ｋ２１ａを記憶媒体駆動部２０９によって記憶媒体３０に記憶させる構成としてもよい。
【０１０１】
鍵記憶部２０８は、秘密鍵Ｋ２１ａ、公開鍵Ｋ２２ａ、公開鍵証明書Ｋ２３ａを記憶する。特に、秘密鍵Ｋ２１ａは、外部から容易に読み取られたり書き換えられたりしないように、厳重に保管される。
【０１０２】
鍵管理部２１２は、公開鍵証明書発行装置１０およびクライアント２０ｂとの通信を制御するとともに、クライアント２０ａ内で生成され、または公開鍵証明書発行装置１０から受信した秘密鍵、公開鍵、公開鍵証明書などを一時的に保管し、必要に応じて鍵記憶部２０８へ記憶させる機能を有する。また、公開鍵証明書発行装置１０から配信された失効リストを保持する。
【０１０３】
発行・削除命令部２１１は、操作部２３１の操作や、コンテンツ利用装置２３３から要求などに応じ、公開鍵証明書Ｋ２３ａの発行要求または削除要求を生成する。この発行要求には、公開鍵Ｋ２２ａが含まれ、この削除要求には、公開鍵証明書Ｋ２３ａが含まれている。
【０１０４】
鍵管理部２１２は、削除要求が生成されたときは、対応する公開鍵証明書Ｋ２３ａと秘密鍵Ｋ２１ａとを、鍵管理部２１２自身および鍵記憶部２０８から削除する。
【０１０５】
要求送信部２０５は、発行・削除命令部２１１により生成された発行要求または削除要求を、セキュア通信部２２０を介して、公開鍵証明書発行装置１０へ送出する。
【０１０６】
（第１動作例）
続いて、図４を参照して（適宜、図１〜図３を参照して）、公開鍵証明書発行システム１における公開鍵証明書Ｋ２３ａの発行許可／発行拒否に係る第１動作例について説明する。
図４は、公開鍵証明書発行システム１における公開鍵証明書Ｋ２３ａの発行許可／発行拒否に係る第１動作例を示すフローチャートである。
ここで、クライアント２０ａが公開鍵証明書発行装置１０に対して発行要求を行う場合について説明するが、クライアント２０ａをクライアント２０ｂ、２０ｃまたは２０ｄに読み替えてもよい。この動作例は、公開鍵証明書発行装置１０とクライアント２０ａとの間で暗号化通信路を設定しないで、公開鍵証明書Ｋ２３ａの発行または発行拒否が行われる場合を示す。
【０１０７】
操作者がクライアント２０ａの操作部２３１を操作するか、コンテンツ利用装置２３３が制御部２３０を通して要求を行うことにより、公開鍵証明書Ｋ２３ａの発行要求操作が行われると（ステップＳ１０１）、クライアント２０ａ内で、鍵生成部２１０が、ペアとなる秘密鍵Ｋ２１ａおよび公開鍵Ｋ２２ａを生成する（ステップＳ１０２）。この秘密鍵Ｋ２１ａおよび公開鍵Ｋ２２ａは、鍵管理部２１２により、鍵記憶部２０８に保管される。
【０１０８】
秘密鍵Ｋ２１ａおよび公開鍵Ｋ２２ａが生成されると、発行・削除命令部２１１は、公開鍵Ｋ２２ａを含む公開鍵証明書Ｋ２３ａの発行要求を生成し、要求送信部２０５は、この発行要求を公開鍵証明書発行装置１０へ送信する（ステップＳ１０３）。
【０１０９】
クライアント２０ａから送信された公開鍵証明書Ｋ２３ａの発行要求は、公開鍵証明書発行装置１０内の要求受信部１０５が受信する（ステップＳ１０４）。要求受信部１０５は、発行要求を示す通知を公開鍵証明書生成部１１１に対して行う。
【０１１０】
発行数判定部１０３は、発行数記憶部１１３に記憶された積算発行数が、発行数上限値記憶部１０２に記憶された発行数上限値に達しているかどうかを判定する（ステップＳ１０５）。
【０１１１】
発行数判定部１０３は、積算発行数が発行数上限値に達しているならば、発行拒否判定を下すので（ステップＳ１０５のＮｏ）、公開鍵証明書生成部１１１は、積算発行数が発行数上限値に達している旨のメッセージを生成し、クライアント２０ａ宛に送信する（ステップＳ１１１）。
【０１１２】
積算発行数が発行数上限値に達している旨のメッセージは、クライアント２０ａの鍵管理部２１２が受信する（ステップＳ１１２）。
積算発行数が発行数上限値に達している旨のメッセージは、鍵管理部２１２から制御部２３０を経て表示部２３２へ送られる。そして、表示部２３２は、積算発行数が発行数上限値に達している旨の表示を行う（ステップＳ１１３）。
【０１１３】
発行数判定部１０３は、積算発行数が発行数上限値に達していないならば、発行許可判定を下すので（ステップＳ１０５のＹｅｓ）、公開鍵証明書生成部１１１は、公開鍵証明書Ｋ２３ａを生成し、クライアント２０ａ宛に送信する（ステップＳ１２１）。そして、発行数管理部１１２は、発行数記憶部１１３が記憶している積算発行数に１を加算し（ステップＳ１２２）、更新記憶させる。
【０１１４】
発行された公開鍵証明書Ｋ２３ａは、クライアント２０ａの鍵管理部２１２が受信し、対応する秘密鍵Ｋ２１ａとともに、鍵記憶部２０８が保存する（ステップＳ１２３）。そして、鍵管理部２１２から制御部２３０を経てその旨が通知され、表示部２３２は、公開鍵証明書Ｋ２３ａが取得された旨の表示を行う（ステップＳ１２４）。
【０１１５】
（第２動作例）
続いて、図５を参照して（適宜、図１〜図３を参照して）、公開鍵証明書発行システム１における公開鍵証明書Ｋ２３ａの発行許可／発行拒否に係る第２動作例について説明する。
図５は、公開鍵証明書発行システム１における公開鍵証明書Ｋ２３ａの発行許可／発行拒否に係る第２動作例を示すフローチャートである。
ここで、クライアント２０ａが公開鍵証明書発行装置１０に対して発行要求を行う場合について説明するが、クライアント２０ａをクライアント２０ｂ、２０ｃまたは２０ｄに読み替えてもよい。この動作例は、公開鍵証明書発行装置１０とクライアント２０ａとの間で暗号化通信路を設定して、公開鍵証明書Ｋ２３ａの発行または発行拒否が行われる場合を示す。
【０１１６】
操作者がクライアント２０ａの操作部２３１を操作するか、コンテンツ利用装置２３３が制御部２３０を通して要求を行うことにより、公開鍵証明書Ｋ２３ａの発行要求操作が行われると（ステップＳ２０１）、発行・削除命令部２１１は、公開鍵Ｋ２２ａを含む公開鍵証明書Ｋ２３ａの発行要求を生成し、要求送信部２０５は、この発行要求を公開鍵証明書発行装置１０へ送信する（ステップＳ２０２）。
【０１１７】
クライアント２０ａから送信された公開鍵証明書Ｋ２３ａの発行要求は、公開鍵証明書発行装置１０内の要求受信部１０５が受信する（ステップＳ２０３）。要求受信部１０５は、発行要求を示す通知を公開鍵証明書生成部１１１に対して行う。
【０１１８】
発行数判定部１０３は、発行数記憶部１１３に記憶された積算発行数が、発行数上限値記憶部１０２に記憶された発行数上限値に達しているかどうかを判定する（ステップＳ２０４）。
【０１１９】
発行数判定部１０３は、積算発行数が発行数上限値に達しているならば、発行拒否判定を下すので（ステップＳ２０４のＮｏ）、公開鍵証明書生成部１１１は、積算発行数が発行数上限値に達している旨のメッセージを生成し、クライアント２０ａ宛に送信する（ステップＳ２１１）。
【０１２０】
積算発行数が発行数上限値に達している旨のメッセージは、クライアント２０ａの鍵管理部２１２が受信する（ステップＳ２１２）。
積算発行数が発行数上限値に達している旨のメッセージは、鍵管理部２１２から制御部２３０を経て表示部２３２へ送られる。そして、表示部２３２は、積算発行数が発行数上限値に達している旨の表示を行う（ステップＳ２１３）。
【０１２１】
発行数判定部１０３は、積算発行数が発行数上限値に達していないならば、発行許可判定を下すので（ステップＳ２０４のＹｅｓ）、鍵生成部１１０は秘密鍵Ｋ２１ａおよび公開鍵Ｋ２２ａを生成し、公開鍵証明書生成部１１１は公開鍵証明書Ｋ２３ａを生成する（ステップＳ２２１）。
【０１２２】
そして、公開鍵証明書発行装置１０のセキュア通信部１２０と、クライアント２０ａのセキュア通信部２２０とで、相互機器認証を行い、暗号化通信路を設定する（ステップＳ２２２）。ここでは、セキュア通信部１２０およびセキュア通信部２２０が記憶している暗号化通信路設定用の秘密鍵および公開鍵証明書を利用する。この秘密鍵および公開鍵証明書は、秘密鍵Ｋ１１、Ｋ２１ａ、公開鍵証明書Ｋ１３、Ｋ２３ａとは別のものである。
【０１２３】
こうして設定された暗号化通信路を通じ、公開鍵証明書生成部１１１は、公開鍵証明書Ｋ２３ａおよび秘密鍵Ｋ２１ａを配信する（ステップＳ２２３）とともに、発行数管理部１１２へ通知する。
【０１２４】
そして、発行数管理部１１２は、発行数記憶部１１３が記憶している積算発行数に１を加算し（ステップＳ２２２）、更新記憶させる。
【０１２５】
配信された公開鍵証明書Ｋ２３ａおよび秘密鍵Ｋ２１ａは、クライアント２０ａの鍵管理部２１２が受信し、対応する秘密鍵Ｋ２１ａとともに、鍵記憶部２０８が保存する（ステップＳ２２５）。そして、鍵管理部２１２から制御部２３０を経てその旨が通知され、表示部２３２は、公開鍵証明書Ｋ２３ａが取得された旨の表示を行う（ステップＳ２２６）。
【０１２６】
（削除動作例）
続いて、図６を参照して（適宜、図１〜図３を参照して）、公開鍵証明書発行システム１における公開鍵証明書Ｋ２３ａの削除動作例について説明する。
図６は、公開鍵証明書発行システム１における公開鍵証明書Ｋ２３ａの削除動作例を示すフローチャートである。
ここで、クライアント２０ａが公開鍵証明書発行装置１０に対して削除要求を行う場合について説明するが、クライアント２０ａをクライアント２０ｂ、２０ｃまたは２０ｄに読み替えてもよい。
【０１２７】
操作者がクライアント２０ａの操作部２３１を操作するか、コンテンツ利用装置２３３が制御部２３０を通して要求を行うことにより、公開鍵証明書Ｋ２３ａの削除要求操作が行われると（ステップＳ３０１）、クライアント２０ａ内（鍵記憶部２０８および鍵管理部２１２）から、公開鍵証明書Ｋ２３ａを削除する（ステップＳ３０２）。なお、削除に係る公開鍵証明書Ｋ２３ａは、後記するように削除要求が送信されるまでは、発行・削除命令部２１１に保持されるが、その後削除される。
【０１２８】
そして、発行・削除命令部２１１は、削除した公開鍵証明書Ｋ２３ａの削除要求を生成し、要求送信部２０５は、この削除要求を、公開鍵証明書発行装置１０へ送信する（ステップＳ３０３）。
【０１２９】
要求受信部１０５は、この公開鍵証明書Ｋ２３ａの削除要求を受信し（ステップＳ３０４）、無効化部１０６へ通知する。そして、失効リスト生成部１０７は、この公開鍵証明書Ｋ２３ａを加えた新たな失効リストを作成し、クライアント２０ａ〜２０ｄに配信する（ステップＳ３０６）。
【０１３０】
クライアント２０ａでは、鍵管理部２１２が新たな失効リストを受信して保持する。そして、鍵管理部２１２から制御部２３０を経てその旨が通知され、表示部２３２は、公開鍵証明書Ｋ２３ａが削除された旨の表示を行う（ステップＳ３０８）。
【０１３１】
このように、本実施形態によれば、次の効果が得られる。すなわち、発行数管理部１１２および発行数記憶部１１３によって、公開鍵証明書発行システム１内で有効な公開鍵証明書の積算発行数を把握し、積算発行数が発行数上限値に達しているか否かにより、公開鍵証明書が発行または発行拒否されるため、公開鍵証明書発行システム１内で有効な公開鍵証明書の数が、発行数上限値以下に維持される。したがって、複雑な登録局や費用のかかる管理者をおく必要がなくなる。
【図面の簡単な説明】
【０１３２】
【図１】本発明による公開鍵証明書発行システムの一構成例を示すブロック図である。
【図２】公開鍵証明書発行装置を詳細に示すブロック図である。
【図３】クライアントを詳細に示すブロック図である。
【図４】公開鍵証明書発行システムにおける公開鍵証明書の発行許可／発行拒否に係る第１動作例を示すフローチャートである。
【図５】公開鍵証明書発行システムにおける公開鍵証明書の発行許可／発行拒否に係る第２動作例を示すフローチャートである。
【図６】公開鍵証明書発行システムにおける公開鍵証明書の削除動作例を示すフローチャートである。
【符号の説明】
【０１３３】
１      公開鍵証明書発行システム
１０    公開鍵証明書発行装置
２０ａ〜２０ｄ  クライアント
３０    記憶媒体
１０１，２０１  受信部（発行数設定情報受信手段、発行数上限値書換手段）
１０２  発行数上限値記憶部（発行数上限値記憶手段）
１０３  発行数判定部（発行数判定手段）
１０５  要求受信部（公開鍵証明書生成手段、公開鍵証明書無効化手段）
１０６  無効化部（公開鍵証明書無効化手段）
１０７  失効リスト生成部（失効リスト生成手段）
１０８，２０８  鍵記憶部
１０９，２０９  記憶媒体駆動部
１１０，２１０  鍵生成部
１１１  公開鍵証明書生成部（公開鍵証明書生成手段）
１１２  発行数管理部（積算発行数更新手段、積算発行数減算手段）
１１３  発行数記憶部（積算発行数記憶手段）
１１７  失効リスト記憶部
１２０，２２０，２２１  セキュア通信部
１３０，２３０  制御部
１３１，２３１  操作部
２０５  要求送信部
２１１  発行・削除命令部（公開鍵証明書発行要求手段、鍵削除手段、無効化要求手段）
２１２  鍵管理部
２３２  表示部
２３３  コンテンツ利用装置
２３４  復号部
Ｋ１１，Ｋ２１ａ〜Ｋ２１ｄ  秘密鍵
Ｋ２２ａ〜Ｋ２２ｄ  公開鍵
Ｋ１３，Ｋ２３ａ〜Ｋ２３ｄ  公開鍵証明書
【図１】
2006325112.tif 000004
【図２】
2006325112.tif 000005
【図３】
2006325112.tif 000006
【図４】
2006325112.tif 000007
【図５】
2006325112.tif 000008
【図６】
2006325112.tif 000009