(57)【要約】【課題】  通信対象と通信内容の真贋性を検証しつつ、サーバから端末へ情報を提供する。【解決手段】  端末SAMクライアント１１のアプリケーションは、アプリケーション公開鍵を認定機関１３に送信し、これに対して認定機関１３から送信されてきたアプリケーションのデジタル証明書を受信し、記憶する。また、端末SAMクライアント１１のアプリケーションは、アプリケーションのデジタル証明書を鍵サーバ１５に送信し、鍵サーバ１５は、アクセス許可証を生成し、端末SAMクライアント１１のアプリケーションに送信する。端末SAMクライアント１１のアプリケーションは、鍵サーバ１５に鍵データを要求する場合、アクセス許可証と鍵データ取得要求のメッセージを、鍵サーバ１５に送信する。本発明は、ＩＣカードに関する情報を処理する情報処理システムに適用することができる。【選択図】図１
2006033266.tif 000002
【特許請求の範囲】
【請求項１】
ＩＣカードに関する情報を管理する端末装置、前記端末装置に情報を提供するサーバ装置、および認定装置からなる情報処理システムにおいて、
前記端末装置は、
前記端末装置が有する第１の鍵に対応する第２の鍵を前記認定装置に送信する第１の送信手段と、
前記第１の送信手段による送信に対して、前記認定装置から送信されてきた前記端末装置のデジタル証明書を受信する第１の受信手段と、
前記第１の受信手段により受信された前記端末装置のデジタル証明書を記憶する第１の記憶手段と、
前記第１の記憶手段に記憶された前記端末装置のデジタル証明書を前記サーバ装置に送信する第２の送信手段と
を備え、
前記認定装置は、
前記端末装置の前記第１の送信手段により送信されてきた前記第２の鍵を受信する第２の受信手段と、
前記第２の受信手段により受信された前記第２の鍵が前記端末装置の前記第２の鍵であることを認定した場合、前記第２の鍵と、前記認定装置が有する第３の鍵とを用いて、前記第２の鍵の署名を生成する第１の署名手段と、
前記第１の署名手段により生成された前記第２の鍵の署名と、前記第２の鍵からなる前記端末装置のデジタル証明書を、前記端末装置に送信する第３の送信手段と、
前記認定装置が有する前記第３の鍵に対応する第４の鍵を、前記サーバ装置に送信する第４の送信手段と
を備え、
前記サーバ装置は、
前記端末装置の前記第２の送信手段により送信されてきた前記端末装置のデジタル証明書を受信する第３の受信手段と、
前記認定装置の前記第４の送信手段により送信されてきた前記第４の鍵を受信する第４の受信手段と、
前記第４の受信手段により受信された前記第４の鍵を記憶する第２の記憶手段と、
前記第３の受信手段により受信された前記端末装置のデジタル証明書に含まれる前記第２の鍵の署名と、前記２の記憶手段により記憶された前記第４の鍵を用いて、前記第２の鍵が正当であることを検証する第１の検証手段と、
前記第１の検証手段により前記デジタル証明書の前記第２の鍵が正当であることが検証された場合、前記第３の受信手段により受信された前記端末装置のデジタル証明書と、前記サーバ装置が有する第５の鍵とを用いて、前記端末装置のデジタル証明書の署名を生成する第２の署名手段と、
前記第２の署名手段により生成された前記端末装置のデジタル証明書の署名と、前記端末装置のデジタル証明書からなるアクセス許可証を、前記端末装置に送信する第５の送信手段と
を備え、
前記端末装置は、
前記サーバ装置の第５の送信手段により送信されてきた前記アクセス許可証を受信する第５の受信手段と、
前記第５の受信手段により受信された前記アクセス許可証を記憶する第３の記憶手段と
をさらに備える
ことを特徴とする情報処理システム。
【請求項２】
前記端末装置は、
前記サーバ装置に所定の情報を要求する場合、前記第３の記憶手段により記憶された前記アクセス許可証と、前記サーバ装置に所定の情報を要求する要求情報とを、前記サーバ装置に送信する第６の送信手段と、
前記第６の送信手段による送信に対して、前記サーバ装置から送信されてきた前記情報を受信する第６の受信手段と
をさらに備えるとともに、
前記サーバ装置は、
前記端末装置の前記第６の送信手段により送信されてきた前記アクセス許可証と、前記要求情報とを受信する第７の受信手段と、
前記第７の受信手段により受信された前記アクセス許可証と、前記サーバ装置が有する前記第５の鍵に対応する第６の鍵とを用いて、前記アクセス許可証が正当であることを検証する第２の検証手段と、
前記第２の検証手段により前記アクセス許可証が正当であることが検証された場合、前記要求情報に対する前記情報を前記端末装置に送信する第７の送信手段と
をさらに備えることを特徴とする請求項１に記載の情報処理システム。
【請求項３】
前記第１の鍵は、前記端末装置の秘密鍵であり、
前記第２の鍵は、前記端末装置の公開鍵であり、
前記第３の鍵は、前記認定装置の秘密鍵であり、
前記第４の鍵は、前記認定装置の公開鍵であり、
前記第５の鍵は、前記サーバ装置の秘密鍵であり、
前記第６の鍵は、前記サーバ装置の公開鍵であり、
前記端末装置の秘密鍵、前記認定装置の秘密鍵、および前記サーバ装置の秘密鍵は、それぞれの装置のみが有し、前記端末装置の秘密鍵を用いて署名されたものは前記端末装置の公開鍵で検証され、前記認定装置の秘密鍵を用いて署名されたものは前記認定装置の公開鍵で検証され、前記サーバ装置の秘密鍵を用いて署名されたものは前記サーバ装置の公開鍵で検証される
ことを特徴とする請求項２に記載の情報処理システム。
【請求項４】
前記情報は、前記アプリケーションプログラム、その実行に必要なデータ、またはＩＣカードアクセスに必要な共通鍵データである
ことを特徴とする請求項２に記載の情報処理システム。
【請求項５】
前記端末装置は、
前記サーバ装置に所定の情報を要求する場合、前記第３の記憶手段により記憶された前記アクセス許可証、前記サーバ装置に所定の情報を要求する前記要求情報、および前記第１の鍵を用いて、前記アクセス許可証と前記要求情報の署名を生成する第３の署名手段をさらに備えるとともに、
前記第６の送信手段が、前記アクセス許可証、前記要求情報、並びに、前記第３の署名手段により生成された前記アクセス許可証および前記要求情報の署名を、前記サーバ装置に送信し、
前記サーバ装置は、
前記第７の受信手段が、前記アクセス許可証、前記要求情報、並びに前記アクセス許可証および前記要求情報の署名を受信し、
前記第２の検証手段が、前記アクセス許可証および前記要求情報の署名、前記アクセス許可証から取得した前記第２の鍵を用いて、前記アクセス許可証および前記要求情報が正当であることを検証するとともに、前記アクセス許可証および前記第６の鍵を用いて、前記アクセス許可証が正当であることを検証し、
前記第２の検証手段により前記アクセス許可証と前記要求情報が正当であることが検証された場合、前記第７の送信手段が、前記認定装置より取得した前記第４の鍵を用いて暗号化した前記情報を前記端末装置に送信する
ことを特徴とする請求項２に記載の情報処理システム。
【請求項６】
ＩＣカードに関する情報を管理する端末装置、前記端末装置に情報を提供するサーバ装置、および認定装置からなる情報処理システムの情報処理方法において、
前記認定装置は、前記認定装置が有する第１の鍵に対応する第２の鍵を前記サーバ装置に送信し、
前記サーバ装置は、前記認定装置から送信されてきた前記第２の鍵を受信して記憶し、
前記端末装置は、前記端末装置が有する第３の鍵に対応する第４の鍵を前記認定装置に送信し、
前記認定装置は、
前記端末装置から送信されてきた前記第４の鍵を受信し、
受信した前記第４の鍵が前記端末装置の前記第４の鍵であることを認定した場合、前記第４の鍵と、前記認定装置が有する前記第１の鍵とを用いて、前記第４の鍵の署名を生成し、
生成した前記第４の鍵の署名と、前記第４の鍵からなる前記端末装置のデジタル証明書を、前記端末装置に送信し、
前記端末装置は、
前記認定装置から送信されてきた前記端末装置のデジタル証明書を受信し、
受信した前記端末装置のデジタル証明書の記憶を制御し、
記憶が制御された前記端末装置のデジタル証明書を前記サーバ装置に送信し、
前記サーバ装置は、
前記端末装置から送信されてきた前記端末装置のデジタル証明書を受信し、
前記認定装置から送信されてきた前記第２の鍵を受信し、
受信した前記端末装置のデジタル証明書に含まれる前記第４の鍵の署名と、受信した前記第２の鍵を用いて、前記第４の鍵が正当であることを検証し、
前記デジタル証明書の前記第４の鍵が正当であることが検証された場合、受信した前記端末装置のデジタル証明書と、前記サーバ装置が有する第５の鍵とを用いて、前記端末装置のデジタル証明書の署名を生成し、
生成された前記端末装置のデジタル証明書の署名と、前記端末装置のデジタル証明書からなるアクセス許可証を、前記端末装置に送信し、
前記端末装置は、
前記サーバ装置から送信されてきた前記アクセス許可証を受信し、
受信した前記アクセス許可証の記憶を制御する
ことを特徴とする情報処理方法。
【請求項７】
認定装置と情報を授受するとともに、ＩＣカードに関する情報を管理する端末装置に情報を提供するサーバ装置において、
前記端末装置から送信されてきた、前記認定装置が前記端末装置に対して発行した前記端末装置のデジタル証明書を受信する第１の受信手段と、
前記認定装置から送信されてきた、前記認定装置が有する第１の鍵に対応する第２の鍵を受信する第２の受信手段と、
前記第２の受信手段により受信された前記第２の鍵を記憶する記憶手段と、
前記第１の受信手段により受信された前記端末装置のデジタル証明書に含まれる前記端末装置が有する第３の鍵に対応する第４の鍵の署名と、前記記憶手段により記憶された前記第２の鍵とを用いて、前記第４の鍵が正当であることを検証する第１の検証手段と、
前記第１の検証手段により前記デジタル証明書の前記第４の鍵が正当であることが検証された場合、前記第１の受信手段により受信された前記端末装置のデジタル証明書と、前記サーバ装置が有する第５の鍵とを用いて、前記端末装置のデジタル証明書の署名を生成する署名手段と、
前記署名手段により生成された前記端末装置のデジタル証明書の署名と、前記端末装置のデジタル証明書からなるアクセス許可証を、前記端末装置に送信する第１の送信手段と
を備えることを特徴とするサーバ装置。
【請求項８】
前記端末装置が所定の情報を要求する場合に、前記端末装置から送信されてきた前記アクセス許可証と、前記所定の情報を要求する要求情報とを受信する第３の受信手段と、
前記第３の受信手段により受信された前記アクセス許可証と、前記サーバ装置が有する前記第５の鍵に対応する第６の鍵とを用いて、前記アクセス許可証が正当であることを検証する第２の検証手段と、
前記第２の検証手段により前記アクセス許可証が正当であることが検証された場合、前記要求情報に対する前記情報を前記端末装置に送信する第２の送信手段と
をさらに備えることを特徴とする請求項７に記載のサーバ装置。
【請求項９】
認定装置と情報を授受するとともに、ＩＣカードに関する情報を管理する端末装置に情報を提供するサーバ装置の情報処理方法において、
前記端末装置から送信されてきた、前記認定装置が前記端末装置に対して発行した前記端末装置のデジタル証明書を受信する第１の受信ステップと、
前記認定装置から送信されてきた、前記認定装置が有する第１の鍵に対応する第２の鍵を受信する第２の受信ステップと、
前記第２の受信ステップの処理により受信された前記第２の鍵の記憶を制御する記憶制御ステップと、
前記第１の受信ステップの処理により受信された前記端末装置のデジタル証明書に含まれる前記端末装置が有する第３の鍵に対応する第４の鍵の署名と、前記記憶制御ステップの処理により記憶された前記第２の鍵とを用いて、前記第４の鍵が正当であることを検証する検証ステップと、
前記検証ステップの処理により前記デジタル証明書の前記第４の鍵が正当であることが検証された場合、前記第１の受信ステップの処理により受信された前記端末装置のデジタル証明書と、前記サーバ装置が有する第５の鍵とを用いて、前記端末装置のデジタル証明書の署名を生成する署名ステップと、
前記署名ステップの処理により生成された前記端末装置のデジタル証明書の署名と、前記端末装置のデジタル証明書からなるアクセス許可証を、前記端末装置に送信する送信ステップと
を含むことを特徴とする情報処理方法。
【請求項１０】
ＩＣカードに関する情報を提供するサーバ装置および認定装置と情報を授受する情報処理装置において、
前記情報処理装置が有する第１の鍵に対応する第２の鍵を前記認定装置に送信する第１の送信手段と、
前記第１の送信手段による送信に対して、前記認定装置から送信されてきた前記情報処理装置のデジタル証明書を受信する第１の受信手段と、
前記第１の受信手段により受信された前記情報処理装置のデジタル証明書を記憶する第１の記憶手段と、
前記第１の記憶手段に記憶された前記情報処理装置のデジタル証明書を前記サーバ装置に送信する第２の送信手段と、
前記第２の送信手段による送信に対して、前記サーバ装置から送信されてきた前記情報処理装置のデジタル証明書の署名と、前記情報処理装置のデジタル証明書からなるアクセス許可証を受信する第２の受信手段と、
前記第２の受信手段により受信された前記アクセス許可証を記憶する第２の記憶手段と
を備えることを特徴とする情報処理装置。
【請求項１１】
前記サーバ装置に所定の情報を要求する場合、前記第２の記憶手段により記憶された前記アクセス許可証と、前記サーバ装置に所定の情報を要求する要求情報とを、前記サーバ装置に送信する第３の送信手段と、
前記第３の送信手段による送信に対して、前記サーバ装置から送信されてきた、前記要求情報に対する前記情報を受信する第３の受信手段と
をさらに備えることを特徴とする請求項１０に記載の情報処理装置。
【請求項１２】
ＩＣカードに関する情報を提供するサーバ装置および認定装置と情報を授受する情報処理装置の情報処理方法において、
前記情報処理装置が有する第１の鍵に対応する第２の鍵を前記認定装置に送信する第１の送信ステップと、
前記第１の送信ステップの処理による送信に対して、前記認定装置から送信されてきた前記情報処理装置のデジタル証明書を受信する第１の受信ステップと、
前記第１の受信ステップにより受信された前記情報処理装置のデジタル証明書の記憶を制御する第１の記憶制御ステップと、
前記第１の記憶制御ステップの処理により記憶が制御された前記情報処理装置のデジタル証明書を前記サーバ装置に送信する第２の送信ステップと、
前記第２の送信ステップの処理による送信に対して、前記サーバ装置から送信されてきた前記情報処理装置のデジタル証明書の署名と、前記情報処理装置のデジタル証明書からなるアクセス許可証を受信する第２の受信ステップと、
前記第２の受信ステップの処理により受信された前記アクセス許可証の記憶を制御する第２の記憶制御ステップと
を含むことを特徴とする情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システム、情報処理装置、サーバ装置、および情報処理方法に関し、特に、通信対象と通信内容の真贋性を検証しつつ、サーバ装置が端末装置に情報を提供することができるようにした情報処理システム、情報処理装置、サーバ装置、および情報処理方法に関する。
【背景技術】
【０００２】
近年、ＩＣ(Integrated Circuit)チップを内蔵するカード（ＩＣカード）内のデータに対して操作（更新）を行なう場合、ＩＣカードリーダライタを備える端末が、端末に情報を提供するサーバに接続し、オンラインで相互認証を行った後に、ＩＣカードリーダライタを備える端末がＩＣカード内のデータに対して操作を行っている。
【０００３】
例えば、特許文献１には、オンラインでＩＣカード内のデータを読み出す技術が開示されている。
【０００４】
また、ＩＣカードリーダライタ備える端末には、アプリケーションが記憶されており、そのアプリケーションには、ＩＣカードとの間で利用される鍵（共通鍵）が保持されている。
【特許文献１】特開２００３−１４１０６３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、鍵データをアプリケーションが格納されている端末に提供する場合に、サーバは、そのアプリケーションが、鍵データを提供してもよいアプリケーションであることを検証することは困難であるという課題があった。
【０００６】
本発明はこのような状況に鑑みてなされたものであり、通信対象と通信内容の真贋性を検証しつつ、サーバ装置が端末に情報を提供するものである。
【課題を解決するための手段】
【０００７】
本発明の情報処理システムは、ＩＣカードに関する情報を管理する端末装置、端末装置に情報を提供するサーバ装置、および認定装置からなる情報処理システムであって、端末装置は、端末装置が有する第１の鍵に対応する第２の鍵を認定装置に送信する第１の送信手段と、第１の送信手段による送信に対して、認定装置から送信されてきた端末装置のデジタル証明書を受信する第１の受信手段と、第１の受信手段により受信された端末装置のデジタル証明書を記憶する第１の記憶手段と、第１の記憶手段に記憶された端末装置のデジタル証明書をサーバ装置に送信する第２の送信手段とを備え、認定装置は、端末装置の第１の送信手段により送信されてきた第２の鍵を受信する第２の受信手段と、第２の受信手段により受信された第２の鍵が端末装置の第２の鍵であることを認定した場合、第２の鍵と、認定装置が有する第３の鍵とを用いて、第２の鍵の署名を生成する第１の署名手段と、第１の署名手段により生成された第２の鍵の署名と、第２の鍵からなる端末装置のデジタル証明書を、端末装置に送信する第３の送信手段と、認定装置が有する第３の鍵に対応する第４の鍵を、サーバ装置に送信する第４の送信手段とを備え、サーバ装置は、端末装置の第２の送信手段により送信されてきた端末装置のデジタル証明書を受信する第３の受信手段と、認定装置の第４の送信手段により送信されてきた第４の鍵を受信する第４の受信手段と、第４の受信手段により受信された第４の鍵を記憶する第２の記憶手段と、第３の受信手段により受信された端末装置のデジタル証明書に含まれる第２の鍵の署名と、２の記憶手段により記憶された第４の鍵を用いて、第２の鍵が正当であることを検証する第１の検証手段と、第１の検証手段によりデジタル証明書の第２の鍵が正当であることが検証された場合、第３の受信手段により受信された端末装置のデジタル証明書と、サーバ装置が有する第５の鍵とを用いて、端末装置のデジタル証明書の署名を生成する第２の署名手段と、第２の署名手段により生成された端末装置のデジタル証明書の署名と、端末装置のデジタル証明書からなるアクセス許可証を、端末装置に送信する第５の送信手段とを備え、端末装置は、サーバ装置の第５の送信手段により送信されてきたアクセス許可証を受信する第５の受信手段と、第５の受信手段により受信されたアクセス許可証を記憶する第３の記憶手段とをさらに備えることを特徴とする。
【０００８】
端末装置は、サーバ装置に所定の情報を要求する場合、第３の記憶手段により記憶されたアクセス許可証と、サーバ装置に所定の情報を要求する要求情報とを、サーバ装置に送信する第６の送信手段と、第６の送信手段による送信に対して、サーバ装置から送信されてきた情報を受信する第６の受信手段とをさらに備えるとともに、サーバ装置は、端末装置の第６の送信手段により送信されてきたアクセス許可証と、要求情報とを受信する第７の受信手段と、第７の受信手段により受信されたアクセス許可証と、サーバ装置が有する第５の鍵に対応する第６の鍵とを用いて、アクセス許可証が正当であることを検証する第２の検証手段と、第２の検証手段によりアクセス許可証が正当であることが検証された場合、要求情報に対する情報を端末装置に送信する第７の送信手段とをさらに備えるものとすることができる。
【０００９】
第１の鍵は、端末装置の秘密鍵であり、第２の鍵は、端末装置の公開鍵であり、第３の鍵は、認定装置の秘密鍵であり、第４の鍵は、認定装置の公開鍵であり、第５の鍵は、サーバ装置の秘密鍵であり、第６の鍵は、サーバ装置の公開鍵であり、端末装置の秘密鍵、認定装置の秘密鍵、およびサーバ装置の秘密鍵は、それぞれの装置のみが有し、端末装置の秘密鍵を用いて署名されたものは端末装置の公開鍵で検証され、認定装置の秘密鍵を用いて署名されたものは認定装置の公開鍵で検証され、サーバ装置の秘密鍵を用いて署名されたものはサーバ装置の公開鍵で検証されるものとすることができる。
【００１０】
情報は、アプリケーションプログラム、その実行に必要なデータ、またはＩＣカードアクセスに必要な共通鍵データであるものとすることができる。
【００１１】
端末装置は、サーバ装置に所定の情報を要求する場合、第３の記憶手段により記憶されたアクセス許可証、サーバ装置に所定の情報を要求する要求情報、および第１の鍵を用いて、アクセス許可証と要求情報の署名を生成する第３の署名手段をさらに備えるとともに、第６の送信手段が、アクセス許可証、要求情報、並びに、第３の署名手段により生成されたアクセス許可証および要求情報の署名を、サーバ装置に送信し、サーバ装置は、第７の受信手段が、アクセス許可証、要求情報、並びにアクセス許可証および要求情報の署名を受信し、第２の検証手段が、アクセス許可証および要求情報の署名、アクセス許可証から取得した第２の鍵を用いて、アクセス許可証および要求情報が正当であることを検証するとともに、アクセス許可証および第６の鍵を用いて、アクセス許可証が正当であることを検証し、第２の検証手段によりアクセス許可証と要求情報が正当であることが検証された場合、第７の送信手段が、認定装置より取得した第４の鍵を用いて暗号化した情報を端末装置に送信するものとすることができる。
【００１２】
本発明の第１の情報処理方法は、ＩＣカードに関する情報を管理する端末装置、端末装置に情報を提供するサーバ装置、および認定装置からなる情報処理システムの情報処理方法であって、認定装置は、認定装置が有する第１の鍵に対応する第２の鍵をサーバ装置に送信し、サーバ装置は、認定装置から送信されてきた第２の鍵を受信して記憶し、端末装置は、端末装置が有する第３の鍵に対応する第４の鍵を認定装置に送信し、認定装置は、端末装置から送信されてきた第４の鍵を受信し、受信した第４の鍵が端末装置の第４の鍵であることを認定した場合、第４の鍵と、認定装置が有する第１の鍵とを用いて、第４の鍵の署名を生成し、生成した第４の鍵の署名と、第４の鍵からなる端末装置のデジタル証明書を、端末装置に送信し、端末装置は、認定装置から送信されてきた端末装置のデジタル証明書を受信し、受信した端末装置のデジタル証明書の記憶を制御しと、記憶が制御された端末装置のデジタル証明書をサーバ装置に送信し、サーバ装置は、端末装置から送信されてきた端末装置のデジタル証明書を受信し、認定装置から送信されてきた第２の鍵を受信し、受信した端末装置のデジタル証明書に含まれる第４の鍵の署名と、受信した第２の鍵を用いて、第４の鍵が正当であることを検証し、デジタル証明書の第４の鍵が正当であることが検証された場合、受信した端末装置のデジタル証明書と、サーバ装置が有する第５の鍵とを用いて、端末装置のデジタル証明書の署名を生成し、生成された端末装置のデジタル証明書の署名と、端末装置のデジタル証明書からなるアクセス許可証を、端末装置に送信し、端末装置は、サーバ装置から送信されてきたアクセス許可証を受信し、受信したアクセス許可証の記憶を制御することを特徴とする。
【００１３】
第１の本発明においては、認定装置で、第２の鍵がサーバ装置に送信され、サーバ装置で、第２の鍵が受信されて記憶され、端末装置で、第４の鍵が認定装置に送信され、認定装置で、第４の鍵が受信され、受信された第４の鍵が端末装置の第４の鍵であることが認定された場合、第４の鍵と、認定装置が有する第１の鍵とが用いられて、第４の鍵の署名が生成され、第４の鍵の署名と、第４の鍵からなる端末装置のデジタル証明書が、端末装置に送信される。また、端末装置で、端末装置のデジタル証明書が受信され、端末装置のデジタル証明書がサーバ装置に送信され、サーバ装置で、端末装置のデジタル証明書が受信されるとともに、第２の鍵が受信され、端末装置のデジタル証明書に含まれる第４の鍵の署名と、第２の鍵を用いて、第４の鍵が正当であることが検証される、デジタル証明書の第４の鍵が正当であることが検証された場合、端末装置のデジタル証明書と、サーバ装置が有する第５の鍵とを用いて、端末装置のデジタル証明書の署名が生成され、端末装置のデジタル証明書の署名と、端末装置のデジタル証明書からなるアクセス許可証が、端末装置に送信される。さらに、端末装置で、アクセス許可証が受信され、記憶が制御される。
【００１４】
本発明のサーバ装置は、認定装置と情報を授受するとともに、ＩＣカードに関する情報を管理する端末装置に情報を提供するサーバ装置であって、端末装置から送信されてきた、認定装置が端末装置に対して発行した端末装置のデジタル証明書を受信する第１の受信手段と、認定装置から送信されてきた、認定装置が有する第１の鍵に対応する第２の鍵を受信する第２の受信手段と、第２の受信手段により受信された第２の鍵を記憶する記憶手段と、第１の受信手段により受信された端末装置のデジタル証明書に含まれる端末装置が有する第３の鍵に対応する第４の鍵の署名と、記憶手段により記憶された第２の鍵とを用いて、第４の鍵が正当であることを検証する第１の検証手段と、第１の検証手段によりデジタル証明書の第４の鍵が正当であることが検証された場合、第１の受信手段により受信された端末装置のデジタル証明書と、サーバ装置が有する第５の鍵とを用いて、端末装置のデジタル証明書の署名を生成する署名手段と、署名手段により生成された端末装置のデジタル証明書の署名と、端末装置のデジタル証明書からなるアクセス許可証を、端末装置に送信する第１の送信手段とを備えることを特徴とする。
【００１５】
端末装置が所定の情報を要求する場合に、端末装置から送信されてきたアクセス許可証と、所定の情報を要求する要求情報とを受信する第３の受信手段と、第３の受信手段により受信されたアクセス許可証と、サーバ装置が有する第５の鍵に対応する第６の鍵とを用いて、アクセス許可証が正当であることを検証する第２の検証手段と、第２の検証手段によりアクセス許可証が正当であることが検証された場合、要求情報に対する情報を端末装置に送信する第２の送信手段とをさらに備えるものとすることができる。
【００１６】
本発明の第２の情報処理方法は、認定装置と情報を授受するとともに、ＩＣカードに関する情報を管理する端末装置に情報を提供するサーバ装置の情報処理方法であって、端末装置から送信されてきた、認定装置が端末装置に対して発行した端末装置のデジタル証明書を受信する第１の受信ステップと、認定装置から送信されてきた、認定装置が有する第１の鍵に対応する第２の鍵を受信する第２の受信ステップと、第２の受信ステップの処理により受信された第２の鍵の記憶を制御する記憶制御ステップと、第１の受信ステップの処理により受信された端末装置のデジタル証明書に含まれる端末装置が有する第３の鍵に対応する第４の鍵の署名と、記憶制御ステップの処理により記憶された第２の鍵とを用いて、第４の鍵が正当であることを検証する検証ステップと、検証ステップの処理によりデジタル証明書の第４の鍵が正当であることが検証された場合、第１の受信ステップの処理により受信された端末装置のデジタル証明書と、サーバ装置が有する第５の鍵とを用いて、端末装置のデジタル証明書の署名を生成する署名ステップと、署名ステップの処理により生成された端末装置のデジタル証明書の署名と、端末装置のデジタル証明書からなるアクセス許可証を、端末装置に送信する送信ステップとを含むことを特徴とする。
【００１７】
第２の本発明においては、端末装置から送信されてきた、認定装置が端末装置に対して発行した端末装置のデジタル証明書が受信され、認定装置から送信されてきた、認定装置が有する第１の鍵に対応する第２の鍵が受信されて記憶され、受信された端末装置のデジタル証明書に含まれる端末装置が有する第３の鍵に対応する第４の鍵の署名と、記憶された第２の鍵とを用いて、第４の鍵が正当であることが検証され、正当であることが検証された場合、端末装置のデジタル証明書と、サーバ装置が有する第５の鍵とを用いて、端末装置のデジタル証明書の署名が生成され、生成された端末装置のデジタル証明書の署名と、端末装置のデジタル証明書からなるアクセス許可証が、端末装置に送信される。
【００１８】
本発明の情報処理装置は、ＩＣカードに関する情報を提供するサーバ装置および認定装置と情報を授受する情報処理装置であって、情報処理装置が有する第１の鍵に対応する第２の鍵を認定装置に送信する第１の送信手段と、第１の送信手段による送信に対して、認定装置から送信されてきた情報処理装置のデジタル証明書を受信する第１の受信手段と、第１の受信手段により受信された情報処理装置のデジタル証明書を記憶する第１の記憶手段と、第１の記憶手段に記憶された情報処理装置のデジタル証明書をサーバ装置に送信する第２の送信手段と、第２の送信手段による送信に対して、サーバ装置から送信されてきた情報処理装置のデジタル証明書の署名と、情報処理装置のデジタル証明書からなるアクセス許可証を受信する第２の受信手段と、第２の受信手段により受信されたアクセス許可証を記憶する第２の記憶手段とを備えることを特徴とする。
【００１９】
サーバ装置に所定の情報を要求する場合、第２の記憶手段により記憶されたアクセス許可証と、サーバ装置に所定の情報を要求する要求情報とを、サーバ装置に送信する第３の送信手段と、第３の送信手段による送信に対して、サーバ装置から送信されてきた、要求情報に対する情報を受信する第３の受信手段とをさらに備えるものとすることができる。
【００２０】
本発明の第３の情報処理方法は、ＩＣカードに関する情報を提供するサーバ装置および認定装置と情報を授受する情報処理装置の情報処理方法であって、情報処理装置が有する第１の鍵に対応する第２の鍵を認定装置に送信する第１の送信ステップと、第１の送信ステップの処理による送信に対して、認定装置から送信されてきた情報処理装置のデジタル証明書を受信する第１の受信ステップと、第１の受信ステップにより受信された情報処理装置のデジタル証明書の記憶を制御する第１の記憶制御ステップと、第１の記憶制御ステップの処理により記憶が制御された情報処理装置のデジタル証明書をサーバ装置に送信する第２の送信ステップと、第２の送信ステップの処理による送信に対して、サーバ装置から送信されてきた情報処理装置のデジタル証明書の署名と、情報処理装置のデジタル証明書からなるアクセス許可証を受信する第２の受信ステップと、第２の受信ステップの処理により受信されたアクセス許可証の記憶を制御する第２の記憶制御ステップとを含むことを特徴とする。
【００２１】
第３の本発明においては、情報処理装置が有する第１の鍵に対応する第２の鍵が認定装置に送信され、認定装置から送信されてきた情報処理装置のデジタル証明書が受信され、受信された情報処理装置のデジタル証明書が記憶され、記憶された情報処理装置のデジタル証明書がサーバ装置に送信され、サーバ装置から送信されてきた情報処理装置のデジタル証明書の署名と、情報処理装置のデジタル証明書からなるアクセス許可証が受信され、記憶される。
【発明の効果】
【００２２】
第１の本発明によれば、安全に端末装置に情報を提供することができる。特に、第１の本発明によれば、端末装置の利用者は、正しいサーバ装置の利用者からの情報だけを利用することができる。また、サーバ装置の利用者は、認定装置による認定に基づいて、端末装置がサーバ装置の利用者が望む機能を有することを確認した上で、自分自身へのアクセスの許可を与えるようにすることができる。
【００２３】
第２の本発明によれば、安全に端末装置に情報を提供することができる。特に、第２の本発明によれば、サーバ装置の利用者は、認定装置による認定に基づいて、端末装置がサーバ装置の利用者が望む機能を有することを確認した上で、自分自身へのアクセスの許可を与えるようにすることができる。
【００２４】
第３の本発明によれば、端末装置は安全な情報の提供を受けることができる。特に、第３の本発明によれば、端末装置の利用者は、正しいサーバ装置の利用者からの情報だけを利用することができる。
【発明を実施するための最良の形態】
【００２５】
以下に本発明の実施の形態を説明するが、本明細書に記載の発明と、発明の実施の形態との対応関係を例示すると、次のようになる。この記載は、本明細書に記載されている発明をサポートする実施の形態が、本明細書に記載されていることを確認するためのものである。したがって、発明の実施の形態中には記載されているが、発明に対応するものとして、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その発明に対応するものではないことを意味するものではない。逆に、実施の形態が発明に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その発明以外の発明には対応しないものであることを意味するものでもない。
【００２６】
更に、この記載は、本明細書に記載されている発明の全てを意味するものでもない。換言すれば、この記載は、本明細書に記載されている発明であって、この出願では請求されていない発明の存在、すなわち、将来、分割出願されたり、補正により出現、追加される発明の存在を否定するものではない。
【００２７】
請求項１に記載の情報処理システムは、ＩＣカードに関する情報を管理する端末装置（例えば、図１の端末SAMクライアント１１）、前記端末装置に情報を提供するサーバ装置（例えば、図１の鍵サーバ１５）、および認定装置（例えば、図１の認定機関１３）からなる情報処理システム（例えば、図１の情報処理システム１）であって、
前記端末装置は、
前記端末装置が有する第１の鍵（例えば、アプリケーション秘密鍵）に対応する第２の鍵（例えば、アプリケーション公開鍵）を前記認定装置に送信する第１の送信手段（例えば、図１３のステップＳ１１の処理を実行する図６の出力部２０８）と、
前記第１の送信手段による送信に対して、前記認定装置から送信されてきた前記端末装置のデジタル証明書（例えば、図１４のアプリケーションのデジタル証明書）を受信する第１の受信手段（例えば、図１３のステップＳ１２の処理を実行する図６の入力部２０１）と、
前記第１の受信手段により受信された前記端末装置のデジタル証明書を記憶する第１の記憶手段（例えば、図１３のステップＳ１３の処理を実行する図６の記憶部２０３）と、
前記第１の記憶手段に記憶された前記端末装置のデジタル証明書を前記サーバ装置に送信する第２の送信手段（例えば、図１５のステップＳ３１の処理を実行する図６の出力部２０８）と
を備え、
前記認定装置は、
前記端末装置の前記第１の送信手段により送信されてきた前記第２の鍵を受信する第２の受信手段（例えば、図１３のステップＳ２１の処理を実行する図９の入力部３５１）と、
前記第２の受信手段により受信された前記第２の鍵が前記端末装置の前記第２の鍵であることを認定した場合、前記第２の鍵と、前記認定装置が有する第３の鍵（例えば、認定機関秘密鍵）とを用いて、前記第２の鍵の署名を生成する第１の署名手段（例えば、図１３のステップＳ２２の処理を実行する図９の署名処理部３５４）と、
前記第１の署名手段により生成された前記第２の鍵の署名と、前記第２の鍵からなる前記端末装置のデジタル証明書（例えば、図１４のアプリケーションのデジタル証明書）を、前記端末装置に送信する第３の送信手段（例えば、図１３のステップＳ２３の処理を実行する図９の出力部３５５）と、
前記認定装置が有する前記第３の鍵に対応する第４の鍵（例えば、認定機関公開鍵）を、前記サーバ装置に送信する第４の送信手段（例えば、図９の出力部３５５）と
を備え、
前記サーバ装置は、
前記端末装置の前記第２の送信手段により送信されてきた前記端末装置のデジタル証明書を受信する第３の受信手段（例えば、図１５のステップＳ５１の処理を実行する図１１の入力部４５１）と、
前記認定装置の前記第４の送信手段により送信されてきた前記第４の鍵を受信する第４の受信手段（例えば、図１１の入力部４５１）と、
前記第４の受信手段により受信された前記第４の鍵を記憶する第２の記憶手段（例えば、図１２の認定機関公開鍵４８４を記憶する記憶部４５３）と、
前記第３の受信手段により受信された前記端末装置のデジタル証明書に含まれる前記第２の鍵の署名と、前記２の記憶手段により記憶された前記第４の鍵を用いて、前記第２の鍵が正当であることを検証する第１の検証手段（例えば、図１５のステップＳ５２の処理を実行する図１１の検証処理部４５５）と、
前記第１の検証手段により前記デジタル証明書の前記第２の鍵が正当であることが検証された場合、前記第３の受信手段により受信された前記端末装置のデジタル証明書と、前記サーバ装置が有する第５の鍵（例えば、サーバ秘密鍵）とを用いて、前記端末装置のデジタル証明書の署名を生成する第２の署名手段（例えば、図１５のステップＳ５４の処理を実行する図１１の署名処理部４５４）と、
前記第２の署名手段により生成された前記端末装置のデジタル証明書の署名と、前記端末装置のデジタル証明書からなるアクセス許可証（例えば、図１６のアクセス許可証）を、前記端末装置に送信する第５の送信手段（例えば、図１５のステップＳ５５の処理を実行する図１１の出力部４５８）と
を備え、
前記端末装置は、
前記サーバ装置の第５の送信手段により送信されてきた前記アクセス許可証を受信する第５の受信手段（例えば、図１５のステップＳ３２の処理を実行する図６の入力部２０１）と、
前記第５の受信手段により受信された前記アクセス許可証を記憶する第３の記憶手段（例えば、図１５のステップＳ３３の処理を実行する図６の記憶部２０３）と
をさらに備える
ことを特徴とする。
【００２８】
請求項２に記載の情報処理システムは、
前記端末装置が、
前記サーバ装置に所定の情報（例えば、鍵データ）を要求する場合、前記第３の記憶手段により記憶された前記アクセス許可証と、前記サーバ装置に所定の情報を要求する要求情報とを、前記サーバ装置に送信する第６の送信手段（例えば、図２０のステップＳ１５２の処理を実行する図６の出力部２０８）と、
前記第６の送信手段による送信に対して、前記サーバ装置から送信されてきた前記情報を受信する第６の受信手段（例えば、図２１のステップＳ１５３の処理を実行する図６の入力部２０１）と
をさらに備えるとともに、
前記サーバ装置が、
前記端末装置の前記第６の送信手段により送信されてきた前記アクセス許可証と、前記要求情報とを受信する第７の受信手段（例えば、図２０のステップＳ１７１の処理を実行する図１１の入力部４５１）と、
前記第７の受信手段により受信された前記アクセス許可証と、前記サーバ装置が有する前記第５の鍵に対応する第６の鍵とを用いて、前記アクセス許可証が正当であることを検証する第２の検証手段（例えば、図２０のステップＳ１７２またはステップＳ１７４の処理を実行する図１１の検証処理部４５５）と、
前記第２の検証手段により前記アクセス許可証が正当であることが検証された場合（例えば、図２０のステップＳ１７３でYESと判定され、さらにステップＳ１７５でYESと判定された場合）、前記要求情報に対する前記情報を前記端末装置に送信する第７の送信手段（例えば、図２１のステップＳ１７９の処理を実行する図１１の出力部４５８）と
をさらに備えることを特徴とする。
【００２９】
請求項３に記載の情報処理システムの前記第１の鍵は、前記端末装置の秘密鍵であり、
前記第２の鍵は、前記端末装置の公開鍵であり、
前記第３の鍵は、前記認定装置の秘密鍵であり、
前記第４の鍵は、前記認定装置の公開鍵であり、
前記第５の鍵は、前記サーバ装置の秘密鍵であり、
前記第６の鍵は、前記サーバ装置の公開鍵であり、
前記端末装置の秘密鍵、前記認定装置の秘密鍵、および前記サーバ装置の秘密鍵は、それぞれの装置のみが有し、前記端末装置の秘密鍵を用いて署名されたものは前記端末装置の公開鍵で検証され、前記認定装置の秘密鍵を用いて署名されたものは前記認定装置の公開鍵で検証され、前記サーバ装置の秘密鍵を用いて署名されたものは前記サーバ装置の公開鍵で検証される
ことを特徴とする。
【００３０】
請求項４に記載の情報処理システムの前記情報は、前記アプリケーションプログラム、その実行に必要なデータ、またはＩＣカードアクセスに必要な共通鍵データ（例えば、図１２の鍵データ４９１）である
ことを特徴とする。
【００３１】
請求項５に記載の情報処理システムは、
前記端末装置が、
前記サーバ装置に所定の情報を要求する場合、前記第３の記憶手段により記憶された前記アクセス許可証、前記サーバ装置に所定の情報を要求する前記要求情報、および前記第１の鍵を用いて、前記アクセス許可証と前記要求情報の署名を生成する第３の署名手段（例えば、図２０のステップＳ１５１の処理を実行する図６の署名処理部２０４）をさらに備えるとともに、
前記第６の送信手段が、前記アクセス許可証、前記要求情報、並びに、前記第３の署名手段により生成された前記アクセス許可証および前記要求情報の署名を、前記サーバ装置に送信し（例えば、図２０のステップＳ１５２）、
前記サーバ装置は、
前記第７の受信手段が、前記アクセス許可証、前記要求情報、並びに前記アクセス許可証および前記要求情報の署名を受信し（例えば、図２０のステップＳ１７１）、
前記第２の検証手段が、前記アクセス許可証および前記要求情報の署名、前記アクセス許可証から取得した前記第２の鍵を用いて、前記アクセス許可証および前記要求情報が正当であることを検証するとともに、前記アクセス許可証および前記第６の鍵を用いて、前記アクセス許可証が正当であることを検証し（例えば、図２０のステップＳ１７４、ステップＳ１７５）、
前記第２の検証手段により前記アクセス許可証と前記要求情報が正当であることが検証された場合、前記第７の送信手段が、前記認定装置より取得した前記第４の鍵を用いて暗号化した前記情報を前記端末装置に送信する（例えば、図２１のステップＳ１７９）
ことを特徴とする。
【００３２】
請求項６に記載の情報処理システムの情報処理方法は、ＩＣカードに関する情報を管理する端末装置（例えば、図１の端末SAMクライアント１１）、前記端末装置に情報を提供するサーバ装置（例えば、図１の鍵サーバ１５）、および認定装置（例えば、図１の認定機関１３）からなる情報処理システム（例えば、図１の情報処理システム１）の情報処理方法であって、
前記認定装置は、前記認定装置が有する第１の鍵（例えば、認定機関秘密鍵）に対応する第２の鍵（例えば、認定機関公開鍵）を前記サーバ装置に送信し（例えば、図９の出力部３５５が実行する処理）、
前記サーバ装置は、前記認定装置から送信されてきた前記第２の鍵を受信して記憶し、
前記端末装置は、前記端末装置が有する第３の鍵（例えば、アプリケーション秘密鍵）に対応する第４の鍵（例えば、アプリケーション公開鍵）を前記認定装置に送信し（例えば、図１３のステップＳ１１）、
前記認定装置は、
前記端末装置から送信されてきた前記第４の鍵を受信し（例えば、図１３のステップＳ２１）と、
受信した前記第４の鍵が前記端末装置の前記第４の鍵であることを認定した場合、前記第４の鍵と、前記認定装置が有する前記第１の鍵（例えば、認定機関秘密鍵）とを用いて、前記第４の鍵の署名を生成し（例えば、図１３のステップＳ２２）、
生成した前記第４の鍵の署名と、前記第４の鍵からなる前記端末装置のデジタル証明書（例えば、図１４のアプリケーションのデジタル証明書）を、前記端末装置に送信し（例えば、図１３のステップＳ２３）、
前記端末装置は、
前記認定装置から送信されてきた前記端末装置のデジタル証明書（例えば、図１４のアプリケーションのデジタル証明書）を受信し（例えば、図１３のステップＳ１２）、
受信した前記端末装置のデジタル証明書の記憶を制御し（例えば、図１３のステップＳ１３）、
記憶が制御された前記端末装置のデジタル証明書を前記サーバ装置に送信し（例えば、図１５のステップＳ３１の処理を実行する図６の出力部２０８）、
前記サーバ装置は、
前記端末装置から送信されてきた前記端末装置のデジタル証明書を受信し（例えば、図１５のステップＳ５１）、
前記認定装置から送信されてきた前記第２の鍵を受信し（例えば、図１１の入力部４５１が実行する処理）、
受信した前記端末装置のデジタル証明書に含まれる前記第４の鍵の署名と、受信した前記第２の鍵を用いて、前記第４の鍵が正当であることを検証し（例えば、図１５のステップＳ５２）、
前記デジタル証明書の前記第４の鍵が正当であることが検証された場合、受信した前記端末装置のデジタル証明書と、前記サーバ装置が有する第５の鍵（例えば、サーバ秘密鍵）とを用いて、前記端末装置のデジタル証明書の署名を生成し（例えば、図１５のステップＳ５４）、
生成された前記端末装置のデジタル証明書の署名と、前記端末装置のデジタル証明書からなるアクセス許可証（例えば、図１６のアクセス許可証）を、前記端末装置に送信し（例えば、図１５のステップＳ５５）、
前記端末装置は、
前記サーバ装置から送信されてきた前記アクセス許可証を受信し（例えば、図１５のステップＳ３２）、
受信した前記アクセス許可証の記憶を制御する（例えば、図１５のステップＳ３３）
ことを特徴とする。
【００３３】
請求項７に記載のサーバ装置は、認定装置（例えば、図１の認定機関１３）と情報を授受するとともに、ＩＣカードに関する情報を管理する端末装置（例えば、図１の端末SAMクライアント１１）に情報を提供するサーバ装置（例えば、鍵サーバ１５）であって、
前記端末装置から送信されてきた、前記認定装置が前記端末装置に対して発行した前記端末装置のデジタル証明書を受信する第１の受信手段（例えば、図１５のステップＳ５１の処理を実行する図１１の入力部４５１）と、
前記認定装置から送信されてきた、前記認定装置が有する第１の鍵（例えば、認定機関秘密鍵）に対応する第２の鍵（例えば、認定機関公開鍵）を受信する第２の受信手段（例えば、図１１の入力部４５１）と、
前記第２の受信手段により受信された前記第２の鍵を記憶する記憶手段（例えば、図１２の認定機関公開鍵４８４を記憶する記憶部４５３）と、
前記第１の受信手段により受信された前記端末装置のデジタル証明書に含まれる前記端末装置が有する第３の鍵（例えば、アプリケーション秘密鍵）に対応する第４の鍵（例えば、アプリケーション公開鍵）の署名と、前記記憶手段により記憶された前記第２の鍵とを用いて、前記第４の鍵が正当であることを検証する第１の検証手段（例えば、図１５のステップＳ５２の処理を実行する図１１の検証処理部４５５）と、
前記第１の検証手段により前記デジタル証明書の前記第４の鍵が正当であることが検証された場合、前記第１の受信手段により受信された前記端末装置のデジタル証明書と、前記サーバ装置が有する第５の鍵（例えば、サーバ秘密鍵）とを用いて、前記端末装置のデジタル証明書の署名を生成する署名手段（例えば、図１５のステップＳ５４の処理を実行する図１１の署名処理部４５４）と、
前記署名手段により生成された前記端末装置のデジタル証明書の署名と、前記端末装置のデジタル証明書からなるアクセス許可証（例えば、図１６のアクセス許可証）を、前記端末装置に送信する第１の送信手段（例えば、図１５のステップＳ５５の処理を実行する図１１の出力部４５８）と
を備えることを特徴とする。
【００３４】
請求項８に記載のサーバ装置は、
前記端末装置が所定の情報（例えば、鍵データ）を要求する場合に、前記端末装置から送信されてきた前記アクセス許可証と、前記所定の情報を要求する要求情報とを受信する第３の受信手段（例えば、図２０のステップＳ１７１の処理を実行する図１１の入力部４５１）と、
前記第３の受信手段により受信された前記アクセス許可証と、前記サーバ装置が有する前記第５の鍵に対応する第６の鍵とを用いて、前記アクセス許可証が正当であることを検証する第２の検証手段（例えば、図２０のステップＳ１７２またはステップＳ１７４の処理を実行する図１１の検証処理部４５５）と、
前記第２の検証手段により前記アクセス許可証が正当であることが検証された場合（例えば、図２０のステップＳ１７３でYESと判定され、さらにステップＳ１７５でYESと判定された場合）、前記要求情報に対する前記情報を前記端末装置に送信する第２の送信手段（例えば、図２１のステップＳ１７９の処理を実行する図１１の出力部４５８）と
をさらに備えることを特徴とする。
【００３５】
請求項９に記載の情報処理方法は、認定装置（例えば、図１の認定機関１３）と情報を授受するとともに、ＩＣカードに関する情報を管理する端末装置（例えば、図１の端末SAMクライアント１１）に情報を提供するサーバ装置（例えば、鍵サーバ１５）の情報処理方法であって、
前記端末装置から送信されてきた、前記認定装置が前記端末装置に対して発行した前記端末装置のデジタル証明書を受信する第１の受信ステップ（例えば、図１５のステップＳ５１）と、
前記認定装置から送信されてきた、前記認定装置が有する第１の鍵（例えば、認定機関秘密鍵）に対応する第２の鍵（例えば、認定機関公開鍵）を受信する第２の受信ステップ（例えば、図１１の入力部４５１が実行する処理）と、
前記第２の受信ステップの処理により受信された前記第２の鍵の記憶を制御する記憶制御ステップ（例えば、図１２の認定機関公開鍵４８４の記憶部４５３への記憶を制御する記憶制御ステップ）と、
前記第１の受信ステップの処理により受信された前記端末装置のデジタル証明書に含まれる前記端末装置が有する第３の鍵（例えば、アプリケーション秘密鍵）に対応する第４の鍵（例えば、アプリケーション公開鍵）の署名と、前記記憶制御ステップの処理により記憶された前記第２の鍵とを用いて、前記第４の鍵が正当であることを検証する検証ステップ（例えば、図１５のステップＳ５２）と、
前記検証ステップの処理により前記デジタル証明書の前記第４の鍵が正当であることが検証された場合、前記第１の受信ステップの処理により受信された前記端末装置のデジタル証明書と、前記サーバ装置が有する第５の鍵（例えば、サーバ秘密鍵）とを用いて、前記端末装置のデジタル証明書の署名を生成する署名ステップ（例えば、図１５のステップＳ５４）と、
前記署名ステップの処理により生成された前記端末装置のデジタル証明書の署名と、前記端末装置のデジタル証明書からなるアクセス許可証（例えば、図１６のアクセス許可証）を、前記端末装置に送信する送信ステップ（例えば、図１５のステップＳ５５）と
を含むことを特徴とする。
【００３６】
請求項１０に記載の情報処理装置は、ＩＣカードに関する情報を提供するサーバ装置（例えば、図１の鍵サーバ１５）および認定装置（例えば、図１の認定機関１３）と情報を授受する情報処理装置（例えば、端末SAMクライアント１１）であって、
前記情報処理装置が有する第１の鍵（例えば、アプリケーション秘密鍵）に対応する第２の鍵（例えば、アプリケーション公開鍵）を前記認定装置に送信する第１の送信手段（例えば、図１３のステップＳ１１の処理を実行する図６の出力部２０８）と、
前記第１の送信手段による送信に対して、前記認定装置から送信されてきた前記情報処理装置のデジタル証明書（例えば、図１４のアプリケーションのデジタル証明書）を受信する第１の受信手段（例えば、図１３のステップＳ１２の処理を実行する図６の入力部２０１）と、
前記第１の受信手段により受信された前記情報処理装置のデジタル証明書を記憶する第１の記憶手段（例えば、図１３のステップＳ１３の処理を実行する図６の記憶部２０３）と、
前記第１の記憶手段に記憶された前記情報処理装置のデジタル証明書を前記サーバ装置に送信する第２の送信手段（例えば、図１５のステップＳ３１の処理を実行する図６の出力部２０８）と、
前記第２の送信手段による送信に対して、前記サーバ装置から送信されてきた前記情報処理装置のデジタル証明書の署名と、前記情報処理装置のデジタル証明書からなるアクセス許可証（例えば、図１６のアクセス許可証）を受信する第２の受信手段（例えば、図１５のステップＳ３２の処理を実行する図６の入力部２０１）と、
前記第２の受信手段により受信された前記アクセス許可証を記憶する第２の記憶手段（例えば、図１５のステップＳ３３の処理を実行する図６の記憶部２０３）と
を備えることを特徴とする。
【００３７】
請求項１１に記載の情報処理装置は、
前記サーバ装置に所定の情報（例えば、鍵データ）を要求する場合、前記第２の記憶手段により記憶された前記アクセス許可証と、前記サーバ装置に所定の情報を要求する要求情報とを、前記サーバ装置に送信する第３の送信手段（例えば、図２０のステップＳ１５２の処理を実行する図６の出力部２０８）と、
前記第３の送信手段による送信に対して、前記サーバ装置から送信されてきた、前記要求情報に対する前記情報を受信する第３の受信手段（例えば、図２１のステップＳ１５３の処理を実行する図６の入力部２０１）と
をさらに備えることを特徴とする。
【００３８】
請求項１２に記載の情報処理方法は、ＩＣカードに関する情報を提供するサーバ装置（例えば、図１の鍵サーバ１５）および認定装置（例えば、図１の認定機関１３）と情報を授受する情報処理装置（例えば、端末SAMクライアント１１）の情報処理方法であって、
前記情報処理装置が有する第１の鍵（例えば、アプリケーション秘密鍵）に対応する第２の鍵（例えば、アプリケーション公開鍵）を前記認定装置に送信する第１の送信ステップ（例えば、図１３のステップＳ１１）と、
前記第１の送信ステップの処理による送信に対して、前記認定装置から送信されてきた前記情報処理装置のデジタル証明書（例えば、図１４のアプリケーションのデジタル証明書）を受信する第１の受信ステップ（例えば、図１３のステップＳ１２）と、
前記第１の受信ステップにより受信された前記情報処理装置のデジタル証明書の記憶を制御する第１の記憶制御ステップ（例えば、図１３のステップＳ１３）と、
前記第１の記憶制御ステップの処理により記憶が制御された前記情報処理装置のデジタル証明書を前記サーバ装置に送信する第２の送信ステップ（例えば、図１５のステップＳ３１）と、
前記第２の送信ステップの処理による送信に対して、前記サーバ装置から送信されてきた前記情報処理装置のデジタル証明書の署名と、前記情報処理装置のデジタル証明書からなるアクセス許可証（例えば、図１６のアクセス許可証）を受信する第２の受信ステップ（例えば、図１５のステップＳ３２）と、
前記第２の受信ステップの処理により受信された前記アクセス許可証の記憶を制御する第２の記憶制御ステップ（例えば、図１５のステップＳ３３）と
を含むことを特徴とする。
【００３９】
以下、図を参照して、本発明の実施の形態について説明する。
【００４０】
図１は、本発明を適用した情報処理システムの全体の構成例を示す図である。
【００４１】
端末SAM(Secure Application Module)クライアント１１−１乃至１１−３（端末装置）は、それぞれネットワーク１２に接続されている。また、ネットワーク１２には、認定機関（認定局とも称する）１３、サーバ（サーバ装置）１４−１乃至１４−３、並びに鍵サーバ（サーバ装置）１５が接続されている。
【００４２】
サーバ１４−１はサービス提供者Ａが運営しており、サーバ１４−２はサービス提供者Ｂが運営しており、サーバ１４−３はサービス提供者Ｃが運営している。すなわち、サーバ１４−１乃至１４−３は、それぞれ異なるサービス提供者により運営されている。ネットワーク１２は、例えば、LAN（Local Area Network）である。鍵サーバ１５は、各サービス提供者Ａ，Ｂ，Ｃが共同で運営し、ＩＣカードと情報を授受するための鍵を集中的に管理するサーバである。すなわち、サーバ１４−１乃至１４−３で管理されているサービスに対応する鍵データが、まとめて鍵サーバ１５で管理されている。サーバ１４−１乃至１４−３は、鍵を更新する場合、ネットワーク１２を介して鍵サーバ１５に鍵データを登録する。認定装置は、認定機関（認定局）１３により司られる装置であり、実際には、認定装置により各種の処理が実行されるが、本実施の形態においては、認定機関１３が実行する処理として称する。
【００４３】
なお、以下において、端末SAMクライアント１１−１乃至１１−３を個々に区別する必要がない場合、端末SAMクライアント１１と称し、サーバ１４−１乃至１４−３を個々に区別する必要がない場合、サーバ１４と称する。また、サービス提供者Ａ、Ｂ、およびＣを個々に区別する必要がない場合、サービス提供者と称する。
【００４４】
認定機関１３は、端末SAMクライアント１１を、サービス提供者に対して認定する機関である。例えば、認定機関１３は、端末SAMクライアント１１からの要求に対して、端末SAMクライアント１１のアプリケーションに、アプリケーションのデジタル証明書（認定機関１３による、端末SAMクライアント１１のアプリケーションに対する証明書）を発行する。端末SAMクライアント１１の各アプリケーションは、このアプリケーションのデジタル証明書を、鍵サーバ１５に送信し、鍵サーバ１５は、アプリケーションのデジタル証明書を受信する。鍵サーバ１５は、アプリケーションのデジタル証明書が正当であるかを認定機関１３の公開鍵により検証し、正当であると検証された場合、アクセス許可証を生成し（発行し）、端末SAMクライアント１１のアプリケーションに送信する。端末SAMクライアント１１のアプリケーションは、このアクセス許可証を用いて、鍵サーバ１５から適宜鍵データを取得する。また、端末SAMクライアント１１は、サーバ１４−１からアプリケーションやその他の情報の配信を適宜受け付ける。
【００４５】
鍵サーバ１５は、端末SAMクライアント１１のアプリケーションからのアクセス許可証に基づいて、端末SAMクライアント１１のアプリケーションが、鍵データを配信すべきものであるか否かを判断することができる。鍵サーバ１５は、端末SAMクライアント１１のアプリケーションからのアクセス許可証に基づいて、端末SAMクライアント１１のアプリケーションの認証が成功した場合に、鍵データを、端末SAMクライアント１１のアプリケーションに対して送信する。
【００４６】
端末SAMクライアント１１は、複数のアプリケーションを実行させることができる。また、端末SAMクライアント１１は、アプリケーションを実行して図示せぬＩＣカードにアクセスする。このときアプリケーションは、鍵データを、ＩＣカードとの間で情報をやりとりするための共通鍵として利用する。例えば、端末SAMクライアント１１は、アプリケーションを実行し、ＩＣカード内のデータを更新する。そして、端末SAMクライアント１１のアプリケーションは、処理の実行結果や問い合せなどを、ネットワーク１２を介して、対応するサービスを提供しているサーバ１４に送信する。なお、ネットワーク１２がオフラインである場合、端末SAMクライアント１１のアプリケーションは、処理の実行結果を保持しておき、オンラインになったとき、その実行結果を、ネットワーク１２を介してサーバ１４に送信する。なお、この例の場合には、ネットワーク１２を介するものとして記載しているが、ネットワーク１２を用いなくともよい。
【００４７】
次に、端末SAMクライアント１１の機能的構成例を説明する。図２は、図１の端末SAMクライアント１１の機能的構成例を示すブロック図である。
【００４８】
端末SAMクライアント１１は、制御端末４１、端末SAM４２、およびＩＣカードリーダライタアンテナ４３の機能的構成を有する。
【００４９】
制御端末４１は、例えばPOS(Point Of Sales)端末である。制御端末４１は、ＩＣカード５１に対してデータを更新する指令を出したり、ＩＣカード５１から読み出されたデータを、ネットワーク１２（図１）を介してサーバ１４に送信する。
【００５０】
ＩＣカードリーダライタアンテナ４３は、外部のＩＣカード５１と非接触により通信を行い、ＩＣカードに記憶されている各種のデータの読み出しや、データの書き込みを行なう。例えば、ＩＣカードリーダライタアンテナ４３は、ＩＣカード５１に記憶されているＩＣカード５１に固有の識別番号やＩＣカード５１に蓄積されている金額などのデータを読み出す。またＩＣカードリーダライタアンテナ４３は、ＩＣカード５１と非接触により通信を行い、ＩＣカード５１に蓄積されている金額などのデータを書き換える（更新する）。このとき、ＩＣカード５１とＩＣカードリーダライタアンテナ４３を介するアプリケーション（端末SAM４２）との間で授受される情報は、共通鍵を用いて暗号化されている。なお、本実施の形態では、ＩＣカード５１とＩＣカードリーダライタアンテナ４３とが非接触式であるとして説明したが、ＩＣカードとＩＣカードリーダライタとが接触式であってもよい。
【００５１】
端末SAM４２は、ＩＣカードリーダライタアンテナ４３から供給されたデータに対して、暗号化や復号をしたり、サーバ１４の認定を得るために、認定機関１３に対して、端末SAM４２の公開鍵の署名を要求するよう制御するとともに、サーバ１４に端末SAMの公開鍵の署名と端末SAM公開鍵からなる端末SAMデジタル証明書を送信するよう制御する。また、端末SAM４２は、アプリケーションを実行したり、処理の実行結果をログとして保存する。すなわち端末SAM４２は、端末SAMクライアント１１内のデータをセキュアに管理する。
【００５２】
図３は、図２の端末SAM４２のハードウエアの構成例を示すブロック図である。
【００５３】
CPU（Central Processing Unit）７１、ROM（Read Only Memory）７２、およびRAM(Random Access Memory)７３は、内部バス７４を介して相互に接続されている。この内部バス７４にはまた、入出力インターフェース７５も接続されている。
【００５４】
CPU７１は、ROM７２に記憶されているプログラム、または、記憶部７８からRAM７３にロードされたプログラムに従って各種の処理を実行する。RAM７３にはまた、CPU７１が各種の処理を実行する上で必要なデータなどが適宜記憶される。
【００５５】
入出力インターフェース７５には、キーボード、マウスなどよりなる入力部７６、ランプ、LED(Light Emitting Diode)、スピーカなどよりなる出力部７７、ハードディスクなどより構成される記憶部７８、モデム、ターミナルアダプタなどより構成される通信部７９、ＩＣカードリーダライタ８０が接続されている。通信部７９は、RS232Cのシリアル通信、LAN、電話回線、またはCATVを含む各種のネットワークを介しての通信処理を行なう。制御端末４１との間のデータの授受は、通信部７９を介して行なわれる。ＩＣカードリーダライタ８０には、メモリ（図示せず）が内蔵されており、カードのデータはメモリに保存され、ＩＣカード５１との間の近距離間の通信は、ＩＣカードリーダライタアンテナ４３を介して行われる。
【００５６】
入出力インターフェース７５にはまた、必要に応じてドライブ８１が接続され、磁気ディスク、光ディスク、光磁気ディスク、あるいは半導体メモリなどよりなるリムーバブルメディア９１が適宜装着され、それから読み出されたコンピュータプログラムが、必要に応じて記憶部７８にインストールされる。
【００５７】
上述した図３の機能的構成例と対応付けると、図４のCPU７１が後述する所定の処理を実行することで端末SAMの機能を有する。
【００５８】
図４は、図３の記憶部７８に記憶される、端末SAM４２（図３）に関する情報の例を説明する図である。すなわち、図４は、端末SAM４２が処理を実行するために用いられる情報の例を示している。
【００５９】
記憶部７８には、端末SAM４２に関する情報として、アプリケーション１２１−１、アプリケーション１２２−１、およびアプリケーション１２３−１（端末SAMクライアント１１−１に対応するアプリケーションである場合、アプリケーション１２１−１、アプリケーション１２２−１、およびアプリケーション１２３−１であり、端末SAMクライアント１１−２に対応するアプリケーションである場合、アプリケーション１２１−２、アプリケーション１２２−２、およびアプリケーション１２３−２であり、端末SAMクライアント１１−３に対応するアプリケーションである場合、アプリケーション１２１−３、アプリケーション１２２−３、およびアプリケーション１２３−３である）が記憶されている。１つのアプリケーション（例えば、アプリケーション１２１−１）が実行されることで、１つのＩＣカードに対する端末SAM４２として機能する。すなわち、ＩＣカードリーダライタアンテナ４３と通信するＩＣカード５１の種類に応じて、アプリケーション１２１−１、アプリケーション１２２−１、およびアプリケーション１２３−１のうちの該当するアプリケーションが実行されることで、端末SAM４２が機能する。なお、アプリケーション１２１−１，１２２−１，１２３−１は、異なるＩＣカード（異なるサービス提供者）によって提供されるアプリケーションである。
【００６０】
鍵サーバ１５は、図５に示されるように、それぞれのアプリケーション１２１−１乃至１２１−３が利用する共通鍵（ＩＣカード５１とアプリケーション１２１−１乃至１２１−３のそれぞれの間で授受される情報を、暗号化したり、復号するために利用される共通鍵）を集中的に管理している。このアプリケーション１２１−１乃至１２１−３は、それぞれ異なる端末SAM４２に記憶されている。例えば、図１の端末SAMクライアント１１−１にアプリケーション１２１−１が記憶され、端末SAMクライアント１１−２にアプリケーション１２１−２が記憶され、端末SAMクライアント１１−３にアプリケーション１２１−３が記憶されている。具体的には、これらのアプリケーション１２１−１乃至１２１−３は、同じ種類のＩＣカード（例えば、フェリカ（商標））を利用するために実行されるアプリケーションである。なお、以下において、アプリケーション１２１−１乃至１２１−３を個々に区別する必要がない場合、アプリケーション１２１と称する。
【００６１】
すなわち、アプリケーション１２１−１乃至１２１−３は、そのアプリケーションのサービス提供者が同じであり、このアプリケーション１２１−１乃至１２１−３の鍵（共通鍵）も共用される。
【００６２】
このアプリケーション１２１は、鍵サーバ１５から取得した鍵データをさらに他のアプリケーション等に転送することが禁止されており、鍵データはアプリケーション１２１内のみで利用される。
【００６３】
なお、図４のアプリケーション１２１−１、１２２−１、およびアプリケーション１２３−１の鍵は共用されない（すなわち、サービス提供者が異なったり、アプリケーションの用途が異なるためである）。
【００６４】
図５においては、アプリケーション１２１と鍵サーバ１５との間のデータ交換は、公開鍵暗号方式が利用されるが、詳細は以下に後述する。
【００６５】
次に、図２の端末SAM４２の機能的構成例を説明する。図６は、図２の端末SAM４２の機能的構成例を示すブロック図である。なお、図６の機能的構成は、図３の端末SAMクライアント１１のCPU７１が、記憶部７８に記憶されたアプリケーションを実行することで実現される。すなわち、図６は、端末SAM４２として動作するアプリケーション１２１の仮想的な機能的構成例を示すブロック図である。
【００６６】
図６において、アプリケーション１２１には、入力部２０１、主制御部２０２、記憶部２０３、署名処理部２０４、検証処理部２０５、暗号化部２０６、復号部２０７、および出力部２０８が設けられている。
【００６７】
入力部２０１は、データの入力を受け付け、受け付けたデータを主制御部２０２に供給する。例えば、入力部２０１は、ＩＣカードリーダライタアンテナ４３から供給されたデータや、制御端末４１から供給されたデータを受け付け、これを主制御部２０２に供給する。
【００６８】
主制御部２０２は、各部を制御する。記憶部２０３は、主制御部２０２からの制御に基づいて、アプリケーション１２１が処理を実行する上で必要な情報を（仮想的に）記憶する。具体的な例としては、記憶部２０３は、図７に示されるように、アプリケーション公開鍵２２１、アプリケーション秘密鍵２２２、アプリケーションのデジタル証明書２２３、アクセス許可証２２４、および鍵サーバのデジタル証明書２２５を記憶する。
【００６９】
アプリケーション公開鍵２２１は、アプリケーション１２１が外部の機器（例えば、認定機関１３、サーバ１４、および鍵サーバ１５）などに公開するアプリケーション１２１の公開鍵である。アプリケーション秘密鍵２２２は、アプリケーション１２１のみが有する、アプリケーション１２１の秘密鍵である。アプリケーション公開鍵２２１とアプリケーション秘密鍵２２２は、対応している。すなわち、アプリケーション公開鍵２２１とアプリケーション秘密鍵２２２は、鍵ペアである。より具体的には、アプリケーション秘密鍵２２２で署名したデータは、アプリケーション公開鍵２２１によってのみ、そのデータが正当であるかを検証することができる。また、アプリケーション秘密鍵２２２を保持する端末SAM４２は、その秘密鍵を他へ漏らさない機能を有する。
【００７０】
アプリケーションのデジタル証明書２２３は、認定機関１３により発行される、アプリケーションを証明するデジタル証明書である。なお、アプリケーションのデジタル証明書２２３は、後述する処理で取得され、記憶される。
【００７１】
アクセス許可証２２４は、認定機関１３により発行されたアプリケーションのデジタル証明書２２３に基づいて、鍵サーバ１５により発行される、アプリケーション１２１の鍵サーバ１５へのアクセスを許可する許可証である。なお、アクセス許可証２２４も、アプリケーションのデジタル証明書２２３と同様に、後述する処理で取得され、記憶される。
【００７２】
鍵サーバのデジタル証明書２２５は、認定機関１３により発行される、鍵サーバ１５を証明するデジタル証明書である。なお、鍵サーバのデジタル証明書２２５は、あらかじめアプリケーションに保持されている。また、鍵サーバのデジタル証明書２２５の正当性の検証も済んでいるものとする。
【００７３】
すなわち、図７において、アプリケーション公開鍵２２１、アプリケーション秘密鍵２２２、および鍵サーバのデジタル証明書２２５が、あらかじめ記憶部２０３に記憶されており、アプリケーションのデジタル証明書２２３、およびアクセス許可証２２４は、適宜以下の処理において記憶部２０３に記憶される。
【００７４】
図６に戻って、署名処理部２０４は、主制御部２０２からの制御に基づいて、所定のデータの署名を生成する。例えば、署名処理部２０４は、アプリケーション秘密鍵２２２を用いて、所定のデータの署名を生成する。検証処理部２０５は、主制御部２０２からの制御に基づいて、所定のデータが正当であることを検証する処理を実行する。例えば、検証処理部２０５は、送信元の公開鍵を用いて、所定のデータが正当であることを検証する。
【００７５】
暗号化部２０６は、主制御部２０２からの制御に基づいて、データを暗号化する。復号部２０７は、主制御部２０２からの制御に基づいて、暗号化されたデータを復号する。例えば、復号部２０７は、自分自身が有するアプリケーション公開鍵２２１で暗号化されたデータを、アプリケーション秘密鍵２２２で復号する。
【００７６】
出力部２０８は、主制御部２０２からの制御に基づいて、データを出力する。例えば、出力部２０８は、制御端末４１にデータを出力したり、ＩＣカードリーダライタアンテナ４３を介して出力する。
【００７７】
図８は、図１の認定機関１３のハードウエアの構成例を示すブロック図である。
【００７８】
CPU２５１、ROM２５２、およびRAM２５３は、内部バス２５４を介して相互に接続されている。この内部バス２５４にはまた、入出力インターフェース２５５も接続されている。
【００７９】
CPU２５１は、ROM２５２に記憶されているプログラム、または、記憶部２５８からRAM２５３にロードされたプログラムに従って各種の処理を実行する。RAM２５３にはまた、CPU２５１が各種の処理を実行する上で必要なデータなどが適宜記憶される。
【００８０】
入出力インターフェース２５５には、キーボード、マウスなどよりなる入力部２５６、CRT，LCD、スピーカなどよりなる出力部２５７、ハードディスクなどより構成される記憶部２５８、モデム、ターミナルアダプタなどより構成される通信部２５９が接続されている。通信部２５９は、電話回線やCATVを含む各種のネットワークを介しての通信処理を行なう。
【００８１】
入出力インターフェース２５５にはまた、必要に応じてドライブ２６１が接続され、磁気ディスク、光ディスク、光磁気ディスク、あるいは半導体メモリなどよりなるリムーバブルメディア２７１が適宜装着され、それから読み出されたコンピュータプログラムが、必要に応じて記憶部２５８にインストールされる。
【００８２】
次に、図８の認定機関１３（認定装置）の機能的構成例を説明する。図９は、図８の認定機関１３の機能的構成例を示すブロック図である。なお、図１０の機能的構成は、図８の認定機関１３のCPU２５１が、記憶部２５８に記憶された情報を用いて各種の処理を実行することで実現される。
【００８３】
図９において、認定機関１３には、入力部３５１、主制御部３５２、記憶部３５３、署名処理部３５４、および出力部３５５が設けられている。
【００８４】
入力部３５１は、データの入力を受け付け、受け付けたデータを主制御部３５２に供給する。例えば、入力部３５１は、ネットワーク１２を介して端末SAMクライアント１１から供給されてきたデータ、サーバ１４から供給されてきたデータ、または鍵サーバ１５から供給されてきたデータを受け付け、これを主制御部３５２に供給する。
【００８５】
主制御部３５２は、各部を制御する。記憶部３５３は、認定機関公開鍵３６１と認定機関秘密鍵３６２を少なくとも記憶する。認定機関公開鍵３６１は、認定機関１３が外部の機器に公開する認定機関１３の公開鍵である。例えば、認定機関公開鍵３６１は、出力部３５５を介して鍵サーバ１５に送信され、鍵サーバ１５に記憶される。認定機関秘密鍵３６２は、認定機関１３のみが有する認定機関１３の秘密鍵である。認定機関公開鍵３６１と認定機関秘密鍵３６２は、対応している。すなわち、認定機関公開鍵３６１と認定機関秘密鍵３６２は、鍵ペアである。これらは、あらかじめ認定機関１３に記憶されている。より具体的には、認定機関秘密鍵３６２で署名したデータは、認定機関公開鍵３６１によってのみ、そのデータが正当であるかを検証することができる。また、認定機関秘密鍵３６２を保持する認定機関１３は、その秘密鍵を他へ漏らさない機能を有する。
【００８６】
署名処理部３５４は、主制御部３５２からの制御に基づいて、所定のデータの署名を生成する。例えば、署名処理部３５４は、認定機関秘密鍵３１２を用いて、所定のデータの署名を生成する。
【００８７】
出力部３５５は、主制御部３５２からの制御に基づいて、データを出力する。例えば、出力部３５５は、ネットワーク１２を介して端末SAMクライアント１１、サーバ１４、または鍵サーバ１５にデータを出力する。
【００８８】
図１０は、図１の鍵サーバ１５のハードウエアの構成例を示すブロック図である。
【００８９】
CPU３７１、ROM３７２、およびRAM３７３は、内部バス３７４を介して相互に接続されている。この内部バス３７４にはまた、入出力インターフェース３７５も接続されている。
【００９０】
CPU３７１は、ROM３７２に記憶されているプログラム、または、記憶部３７８からRAM３７３にロードされたプログラムに従って各種の処理を実行する。RAM３７３にはまた、CPU３７１が各種の処理を実行する上において必要なデータなどが適宜記憶される。
【００９１】
入出力インターフェース３７５には、キーボード、マウスなどよりなる入力部３７６、CRT，LCD、スピーカなどよりなる出力部３７７、ハードディスクなどより構成される記憶部３７８、モデム、ターミナルアダプタなどより構成される通信部３７９が接続されている。通信部３７９は、電話回線やCATVを含む各種のネットワークを介しての通信処理を行なう。
【００９２】
入出力インターフェース３７５にはまた、必要に応じてドライブ３８１が接続され、磁気ディスク、光ディスク、光磁気ディスク、あるいは半導体メモリなどよりなるリムーバブルメディア３９１が適宜装着され、それから読み出されたコンピュータプログラムが、必要に応じて記憶部３７８にインストールされる。
【００９３】
次に、図１０の鍵サーバ１５の機能的構成例を説明する。図１１は、図１０の鍵サーバ１５の機能的構成例を示すブロック図である。なお、図１１の機能的構成は、図１０の鍵サーバ１５のCPU３７１が、記憶部３７８に記憶された情報を用いて各種の処理を実行することで実現される。
【００９４】
図１１において、鍵サーバ１５には、入力部４５１、主制御部４５２、記憶部４５３、署名処理部４５４、検証処理部４５５、暗号化部４５６、復号部４５７、および出力部４５８が設けられている。
【００９５】
入力部４５１は、データの入力を受け付け、受け付けたデータを主制御部４５２に供給する。例えば、入力部４５１は、ネットワーク１２を介して端末SAMクライアント１１から供給されたデータ、認定機関１３から供給されたデータ、またはサーバ１４から供給されたデータを受け付け、これを主制御部４５２に供給する。
【００９６】
主制御部４５２は、各部を制御する。記憶部４５３には、鍵サーバ１５が本実施の形態に記載された処理を実行するために利用される情報が記憶されている。具体的な例を、図１２を用いて説明する。
【００９７】
図１２の例の場合、記憶部４５３には、鍵サーバ公開鍵４８１、鍵サーバ秘密鍵４８２、鍵サーバのデジタル証明書４８３、認定機関公開鍵４８４、および鍵フォルダ４８５が記憶されている。
【００９８】
鍵サーバ公開鍵４８１は、鍵サーバ１５が外部の機器（例えば、端末SAMクライアント１１のアプリケーション１２１、認定機関１３、およびサーバ１４）などに公開する鍵サーバ１５の公開鍵である。鍵サーバ秘密鍵４８２は、鍵サーバ１５のみが有する、鍵サーバ１５の秘密鍵である。鍵サーバ公開鍵４８１と鍵サーバ秘密鍵４８２とは対応している。すなわち、鍵サーバ公開鍵４８１と鍵サーバ秘密鍵４８２は、鍵ペアである。より具体的には、鍵サーバ秘密鍵４８２で署名したデータは、鍵サーバ公開鍵４８１によってのみ、そのデータが正当であるかを検証することができる。また、鍵サーバ秘密鍵４８２を保持する鍵サーバ１５は、その秘密鍵を他へ漏らさない機能を有する。
【００９９】
鍵サーバのデジタル証明書４８３は、認定機関１３により発行される、鍵サーバ１５を証明するデジタル証明書である。なお、鍵サーバのデジタル証明書４８３は、後述する処理で取得され、記憶される。また、この鍵サーバのデジタル証明書４８３は、図７のアプリケーション１２１の記憶部２０３に記憶されている鍵サーバのデジタル証明書２０３と同じものである。
【０１００】
認定機関公開鍵４８４は、認定機関１３が外部の機器に公開している認定機関１３の公開鍵であり、認定機関秘密鍵（上述した図９の認定機関秘密鍵３６２）に対応している。すなわち、認定機関公開鍵４８４と、図９の認定機関公開鍵３６１は同一である。
【０１０１】
鍵フォルダ４８５には、鍵データ４９１乃至４９３が登録されている。この鍵データ４９１乃至４９４は、アプリケーション１２１毎に設定されている。例えば、アプリケーション１２１−１は鍵データ４９１に対応しており、アプリケーション１２１−２は鍵データ４９２に対応しており、アプリケーション１２１−３は鍵データ１２１−３に対応している。なお、２つのアプリケーション１２１で１つの鍵を共有するようにしてもよい。例えば、アプリケーション１２１−１とアプリケーション１２１−２で、鍵データ４９１を共有するようにしてもよい。
【０１０２】
すなわち、図１２において、鍵サーバ公開鍵４８１、鍵サーバ秘密鍵４８２、および認定機関公開鍵４８４は、あらかじめ記憶部４５３に記憶されており、鍵サーバのデジタル証明書４８３は、適宜以下の処理において記憶部４５３に記憶される。また、鍵フォルダ４８５の鍵データは、サービス提供時にあらかじめ記憶されてはいるが、適宜、サービス提供者であるサーバ１４から追加または更新される。
【０１０３】
次に、図１３のフローチャートを参照して、図６のアプリケーション１２１（端末SAMクライアント１１において実行されるアプリケーション１２１）が、図９の認定機関１３によりアプリケーションのデジタル証明書の発行を受ける処理について説明する。なお、この処理は、アプリケーション１２１と認定機関１３により実行される処理であり、アプリケーション１２１が最初に起動されたとき、または、アプリケーション１２１に証明書の発行を受けるよう指令が入力されたとき、開始される。
【０１０４】
ステップＳ１１において、アプリケーション１２１の出力部２０８は、主制御部２０２からの制御に基づいて、アプリケーション公開鍵の署名を要求するメッセージと、アプリケーション公開鍵２２１を送信する。具体的には、主制御部２０２が、記憶部２０３に記憶されているアプリケーション公開鍵２２１（図７）を読み出すとともに、アプリケーション公開鍵の署名を要求するメッセージを、出力部２０８から出力させる（送信させる）。なお、ここで、アプリケーション公開鍵の署名を要求するメッセージではなく、アプリケーションのデジタル証明書を要求するメッセージを送信するようにしてもよい。
【０１０５】
これに対して、ステップＳ２１において、認定機関１３の入力部３５１は、アプリケーション公開鍵の署名を要求するメッセージと、アプリケーション公開鍵２２１を受信する（入力を受け付ける）。
【０１０６】
ステップＳ２２において、認定機関１３の署名処理部３５４は、制御部３５２からの制御に基づいて、認定機関秘密鍵３６２を用いて、アプリケーション公開鍵の署名を生成する。このとき署名処理部３５４は、アプリケーション公開鍵２２１がアプリケーション１２１のアプリケーション公開鍵２２１であることを認定した場合（何らかの手段により認定した場合）に、署名を生成する。具体的には、署名処理部３５４は、アプリケーション公開鍵２２１に対してハッシュ関数プログラムで圧縮した結果を、認定機関秘密鍵３６２で暗号化することで、図１４に示されるような、アプリケーション公開鍵の署名（デジタル署名）を生成する。なお、本実施の形態においては、アプリケーション公開鍵の署名を生成すると記載しているが、実際には、少なくともアプリケーション公開鍵を含むデータに対して、署名を生成することもある。すなわち、「アプリケーション公開鍵の署名を生成する」と記載しても、アプリケーション公開鍵と、その他のデータが含まれるデータに対して、署名を生成するようにしてもよい。
【０１０７】
ステップＳ２３において、出力部３５５は、主制御部３５２からの制御に基づいて、アプリケーション公開鍵の署名と、アプリケーション公開鍵とを、アプリケーションのデジタル証明書として、アプリケーション１２１（端末SAMクライアント１１のアプリケーション１２１）に送信する。具体的には、図１４に示されるように、アプリケーション公開鍵の（デジタル）署名と、アプリケーション公開鍵とからなるアプリケーションのデジタル証明書が送信される。
【０１０８】
これに対して、アプリケーション１２１の入力部２０１は、ステップＳ１２において、アプリケーション公開鍵の署名と、アプリケーション公開鍵となからなるデジタル証明書（図１４）を受信する。
【０１０９】
ステップＳ１３において、記憶部２０３は、主制御部２０２からの制御に基づいて、受信されたアプリケーションのデジタル証明書を、アプリケーションのデジタル証明書２２３として記憶する。すなわち、図１４のアプリケーションのデジタル証明書が、図７のアプリケーションのデジタル証明書２２３として記憶される。実際には、受信されたアプリケーションのデジタル証明書が、単に記憶部２０３に記憶されるだけであるが、整合を取るために、このように記述している（以下同様）。その後、処理は終了される。
【０１１０】
図１３の処理により、アプリケーション１２１は、認定機関１３からアプリケーションのデジタル証明書２２３の発行を受け、記憶することができる。認定機関１３は、アプリケーションのデジタル証明書２２３を発行することで、結果的にアプリケーション１２１が鍵データの流出を防ぐ機能を有することを認定している。
【０１１１】
なお、本実施の形態では、認定機関１３がアプリケーションのデジタル証明書２２３を発行するようにしたが、アプリケーション１２１が動作する端末SAMクライアント１１の製造メーカが、その端末からは鍵データを流出させないことに対して責任をもち、アプリケーションのデジタル証明書を発行するようにしてもよい。
【０１１２】
次に、図１５のフローチャートを参照して、図６のアプリケーション１２１（端末SAMクライアント１１において実行されるアプリケーション１２１）が、図１１の鍵サーバ１５により鍵サーバのアクセス許可証を受ける処理について説明する。なお、この処理は、アプリケーション１２１と鍵サーバ１５により実行される処理であり、図１３の処理の後（すなわち、アプリケーション１２１がアプリケーションのデジタル証明書２２３を取得した後）、実行される処理である。
【０１１３】
ステップＳ３１において、アプリケーション１２１の出力部２０８は、主制御部２０２からの制御に基づいて、アプリケーションのデジタル証明書２２３を、鍵サーバ１５に送信する。具体的には、主制御部２０２が記憶部２０３からアプリケーションのデジタル証明書２２３（図１３の処理で取得され、記憶されたアプリケーションのデジタル証明書２２３）を取得し、これを、鍵サーバ１５に送信するよう、出力部２０８を制御する。
【０１１４】
これに対して、鍵サーバ１５の入力部４５１は、ステップＳ５１において、アプリケーションのデジタル証明書２２３を受信する。受信されたアプリケーションのデジタル証明書２２３は、主制御部４５２に供給される。
【０１１５】
ステップＳ５２において、検証処理部４５５は、主制御部４５２からの制御に基づいて、認定機関公開鍵４８４（図１２）を用いて、アプリケーションのデジタル証明書が正当であることを検証する。具体的には、検証処理部４５５は、アプリケーションのデジタル証明書に含まれるアプリケーション公開鍵の署名を、認定機関公開鍵４８４で復号したものと、アプリケーションのデジタル証明書に含まれるアプリケーション公開鍵に対して、ハッシュ関数プログラムで圧縮したものとが、一致するか否かを判定することで、アプリケーションのデジタル証明書が正当であること検証する。この処理により、鍵サーバ１５は、アプリケーションのデジタル証明書を送信してきたアプリケーション１２１が、鍵データの流出を防ぐ機能を有するか否かを確認することになる。また、アプリケーション１２１から鍵サーバ１５へのデータ転送の際に、データが改ざんされていないかを確認することができる。
【０１１６】
ステップＳ５３において、検証処理部４５５は、アプリケーションのデジタル証明書が正当であることが検証されたか否かを判定する。具体的には、アプリケーションのデジタル証明書に含まれるアプリケーション公開鍵の署名を認定機関公開鍵４８４で復号したものと、アプリケーションのデジタル証明書に含まれるアプリケーション公開鍵に対して、ハッシュ関数プログラムで圧縮したものが、一致する場合に、正当であることが検証されたと判定され、一致しない場合に正当であることが検証されなかったと判定される。ステップＳ５３において、アプリケーションのデジタル証明書が正当であることが検証されなかったと判定された場合、処理は終了される。
【０１１７】
ステップＳ５３において、アプリケーションのデジタル証明書が正当であることが検証されたと判定された場合、ステップＳ５４において、署名処理部４５４は、主制御部４５２からの制御に基づいて、鍵サーバ秘密鍵４８２（記憶部４５３に記憶されている鍵サーバ秘密鍵４８２）を用いて、図１６に示されるような、アプリケーションのデジタル証明書の署名を生成する。
【０１１８】
ステップＳ５５において、出力部４５８は、主制御部４５２からの制御に基づいて、アプリケーションのデジタル証明書の署名と、アプリケーションのデジタル証明書からなるアクセス許可証を、アプリケーション１２１に送信する。具体的には、出力部４５２は、主制御部４５２からの制御に基づいて、図１６に示されるアクセス許可証を送信する。
【０１１９】
これに対して、アプリケーション１２１の入力部２０１は、ステップＳ３２において、アプリケーションのデジタル証明書の署名とアプリケーションのデジタル証明書からなるアクセス許可証を受信する。
【０１２０】
ステップＳ３３において、記憶部２０３は、主制御部２０２からの制御に基づいて、アクセス許可証を記憶する。具体的には、記憶部２０３は、図１６に示されるアクセス許可証（受信されたアクセス許可証）を、図７のアクセス許可証２２４として記憶する。このアクセス許可証は、アプリケーション１２１が鍵データを取得する場合に必要となるものであり、以下の処理において、アプリケーション１２１が鍵サーバ１５に対して鍵データを要求する場合に利用される。具体的には、鍵サーバ１５が、鍵データをアプリケーション１２１に対して送信してよいか否かを判定するために使用される。
【０１２１】
この処理により、アプリケーション１２１は、鍵サーバ１５にアクセスするための（鍵サーバ１５から情報を受けるための）アクセス許可証を取得することができる。
【０１２２】
図１３と図１５の処理により、アプリケーション１２１は、アプリケーションのデジタル証明書２２３と、アクセス許可証２２４とを取得することができる。このアクセス許可証２２４は、アプリケーション１２１が鍵サーバ１５から鍵データを取得する場合に利用される。
【０１２３】
次に、図１１の鍵サーバ１５が、図９の認定機関１３から鍵サーバのデジタル証明書の発行を受ける処理について説明する。なお、この処理は、鍵サーバ１５と認定機関１３により実行される処理であり、鍵サーバ１５が最初に起動されたとき、または、鍵サーバ１５に証明書の発行を受けるよう指令が入力されたとき、開始される。また、この処理は、上述した図１３や図１５の処理とは、並行または前後して実行される処理である。
【０１２４】
ステップＳ７１において、鍵サーバ１５の出力部４５８は、主制御部４５２からの制御に基づいて、鍵サーバ公開鍵の署名を要求するメッセージと、鍵サーバ公開鍵４８１とを送信する。具体的には、主制御部４５８が、記憶部４５３に記憶されている鍵サーバ公開鍵４８１（図１２）を読み出すとともに、鍵サーバ公開鍵の署名を要求するメッセージを、出力部４５８から出力させる（送信させる）。
【０１２５】
これに対して、ステップＳ９１において、認定機関１３の入力部３５１は、鍵サーバ公開鍵の署名を要求するメッセージと、鍵サーバ公開鍵４８１とを受信する。
【０１２６】
ステップＳ９２において、認定機関１３の署名処理部３５４は、制御部３５２からの制御に基づいて、認定機関秘密鍵３６２を用いて、鍵サーバ公開鍵の署名を生成する。具体的には、署名処理部３５４は、鍵サーバ公開鍵４９１に対してハッシュ関数プログラムで圧縮した結果を、認定機関秘密鍵３６２で暗号化することで、図１８に示されるような、鍵サーバ公開鍵の署名（デジタル署名）を生成する。
【０１２７】
ステップＳ９３において、出力部３５５は、主制御部３５２からの制御に基づいて、鍵サーバ公開鍵の署名と、鍵サーバ公開鍵からなる鍵サーバのデジタル証明書を、鍵サーバ１５に送信する。具体的には、図１８に示されるように、鍵サーバの（デジタル）署名と、鍵サーバ公開鍵とからなる鍵サーバのデジタル証明書が送信される。
【０１２８】
これに対して、鍵サーバ１５の入力部４５１は、ステップＳ７２において、鍵サーバの（デジタル）署名と、鍵サーバ公開鍵とからなる鍵サーバのデジタル証明書（図１８）を受信する。
【０１２９】
ステップＳ７３において、記憶部４５３は、主制御部４５２からの制御に基づいて、受信された鍵サーバのデジタル証明書を、鍵サーバのデジタル証明書４８３として記憶する。すなわち、図１８の鍵サーバのデジタル証明書が、図１２の鍵サーバのデジタル証明書４８３として記憶される。その後、処理は終了される。
【０１３０】
図１７の処理により、鍵サーバ１５は、認定機関１３から鍵サーバのデジタル証明書４８３の発行を受け、記憶する。
【０１３１】
次に、図１９のフローチャートを参照して、図６のアプリケーション１２１（端末SAMクライアント１１において実行されるアプリケーション１２１）が、図１１の鍵サーバ１５から、鍵サーバのデジタル証明書４８３を取得する処理について説明する。なお、この処理は、アプリケーション１２１と鍵サーバ１５により実行される処理であり、図１７の処理の後（すなわち、鍵サーバ１５が鍵サーバのデジタル証明書４８３を取得した後）、実行される処理である。
【０１３２】
ステップＳ１１１において、アプリケーション１２１の出力部２０８は、主制御部２０２からの制御に基づいて、鍵サーバのデジタル証明書を要求するメッセージを送信する。この鍵サーバのデジタル証明書を要求するメッセージには、例えば、図７のアプリケーションのデジタル証明書２２３が含まれている。
【０１３３】
これに対して、鍵サーバ１５の入力部４５１は、ステップＳ１３１において、アプリケーション１２１から送信されてきた、鍵サーバのデジタル証明書を要求するメッセージを受信する。
【０１３４】
ステップＳ１３２において、鍵サーバ１５の出力部４５８は、主制御部４５２からの制御に基づいて、鍵サーバのデジタル証明書４８３（図１８）をアプリケーション１２１に送信する。具体的には、主制御部４５２が記憶部４５３から鍵サーバのデジタル証明書４８３を読み出し、これをアプリケーション１２１に送信するよう、出力部４５８を制御する。
【０１３５】
これに対して、アプリケーション１２１の入力部２０１は、ステップＳ１１２において、鍵サーバのデジタル証明書４８３を受信する。
【０１３６】
ステップＳ１１３において、記憶部２０３は、主制御部２０２からの制御に基づいて、鍵サーバのデジタル証明書４８３を、鍵サーバのデジタル証明書２２５（図７）として記憶する。
【０１３７】
図１９の処理により、記憶部２０３に図１８に示されるような鍵サーバのデジタル証明書２２５が記憶される。
【０１３８】
以上の図１３、図１５、図１７、および図１９の処理により、アプリケーション１２１の記憶部２０３には、アプリケーションのデジタル証明書２２３、アクセス許可証２２４、および鍵サーバのデジタル証明書２２５が取得され、鍵サーバ１５の記憶部４５３には、鍵サーバのデジタル証明書４８３が取得される。これらの処理は、図２０と図２１を参照して説明する、アプリケーション１２１が鍵サーバ１５から鍵データを取得する処理を実行するために、事前に実行される処理である。
【０１３９】
図２０と図２１のフローチャートは、アプリケーション１２１が鍵サーバ１５から鍵データを取得する処理を説明するフローチャートである。なお、この処理は、図１３、図１５、図１７、および図１９の処理の後に実行される処理である。例えば、端末SAMクライアント１１のＩＣカードリーダライタ８０（図３）がＩＣカードリーダライタアンテナ４３を介して通信しているＩＣカード５１に記憶された鍵データが、現在アプリケーション１２１で利用されている鍵データと異なる場合（または、鍵データが記憶されていない場合）に、ＩＣカードリーダライタアンテナ４３を介して供給される要求に応じて開始される。
【０１４０】
ステップＳ１５１において、アプリケーション１２１の署名処理部２０４は、主制御部２０２からの制御に基づいて、アプリケーション秘密鍵２２２（図７）を用いて、アクセス許可証２２４（図７）と鍵データ取得要求のメッセージの署名を生成する。具体的には、署名処理部２０４が、記憶部２０３に記憶されているアクセス許可証２２４（図７）と鍵データ取得要求のメッセージに対して、アプリケーション秘密鍵２２２を用いて署名を生成する。アクセス許可証２２４は、上述した図１５の処理で取得されたものである。これにより、図２２の下方に示されるような、「アクセス許可証と鍵データ取得要求のメッセージ」の署名（「アクセス許可証と鍵データ取得要求のメッセージ」に対する、アプリケーション１２１による署名）が生成される。
【０１４１】
ステップＳ１５２において、出力部２０８は、主制御部２０２からの制御に基づいて、アクセス許可証と鍵データ取得要求のメッセージの署名、アクセス許可証２２４、および鍵データ取得要求のメッセージを送信する。具体的には、出力部２０８は、図２２に示されるようなデータ（アクセス許可証２２４、鍵データ取得要求のメッセージ、および「アクセス許可証と鍵データ取得要求のメッセージ」の署名）を出力する。
【０１４２】
これに対して、鍵サーバ１５の入力部４５１は、ステップＳ１７１において、アクセス許可証と鍵データ取得要求のメッセージの署名、アクセス許可証２２４、および鍵データ取得要求のメッセージ（すなわち、図２２に示されるデータ）を受信する。
【０１４３】
ステップＳ１７２において、検証処理部４５５は、主制御部４５２からの制御に基づいて、アクセス許可証２２４から取り出したアプリケーション公開鍵を用いて、アクセス許可証と鍵データ取得要求のメッセージが正当であることを検証する。具体的には、まず、検証処理部４５５は、図１６に示されるようなアクセス許可証に含まれるアプリケーションのデジタル証明書に、さらに含まれるアプリケーション公開鍵を取得し、これを用いて、アクセス許可証と鍵データ取得要求のメッセージの署名を復号する。次に、検証処理部４５５は、アクセス許可証と鍵データ取得要求のメッセージとを、ハッシュ関数プログラムにより圧縮する。そして、検証処理部４５５は、署名を復号した結果（アクセス許可証と鍵データ取得要求のメッセージの署名を復号した結果）と、ハッシュ関数プログラムにより圧縮した結果（アクセス許可証と鍵データ取得要求のメッセージとを、ハッシュ関数プログラムにより圧縮した結果）が一致するか否かにより、アクセス許可証と鍵データ取得要求のメッセージが正当であることが検証される。この処理により、アプリケーション１２１から鍵サーバ１５へのデータ転送の際に、データが改ざんされていないかを確認することができる。
【０１４４】
ステップＳ１７３において、検証処理部４５５は、アクセス許可証と鍵データ取得要求のメッセージが正当であることが検証されたか否かを判定する。すなわち、ステップＳ１７２の処理の結果として、受信データが移送中に改ざんされていないことが検証されたか否かが判定される。ステップＳ１７３において、正当でであることが検証されなかったと判定された場合、処理は終了される。
【０１４５】
ステップＳ１７３において、アクセス許可証と鍵データ取得要求のメッセージが正当であることが検証されたと判定された場合、処理はステップＳ１７４に進む。
【０１４６】
ステップＳ１７４において、検証処理部４５５は、鍵サーバ公開鍵４８１を用いて、アクセス許可証が正当であることを検証する。具体的には、検証処理部４５５は、アクセス許可証からアプリケーションのデジタル証明書の署名を取得し、アプリケーションのデジタル証明書の署名を、鍵サーバ公開鍵４８１で復号する。また、検証処理部４５５は、アクセス許可証からアプリケーションのデジタル証明書を取得し、アプリケーションのデジタル証明書を、ハッシュ関数プログラムにより圧縮する。そして、検証処理部４５５は、署名を鍵サーバ公開鍵４８１で復号した結果（アプリケーションのデジタル証明書の署名を、鍵サーバ公開鍵４８１で復号した結果）と、アプリケーションのデジタル証明書を、ハッシュ関数プログラムにより圧縮した結果が一致するか否かにより、アプリケーションのデジタル証明書が正当であることが検証される。この処理により、受信したアクセス許可証が（図１５の処理により）鍵サーバ１５にとって、正当にアクセス権を有するアプリケーションからのものであるか否かを検証する。すなわち、この処理では、アクセス許可証（他、受信データ）が、正しい相手から送信されてきたことが検証される。
【０１４７】
ステップＳ１７５において、検証処理部４５５は、アクセス許可証が正当であることが検証されたか否かを判定する。すなわち、ステップＳ１７４の処理の結果として、アクセス許可証（他、受信データ）が正しい相手から送信されてきたことが検証されたか否かが判定される。ステップＳ１７５において、正当でであることが検証されなかったと判定された場合、処理は終了される。
【０１４８】
ステップＳ１７５において、アクセス許可証が正当であることが検証されたと判定された場合、処理はステップＳ１７６に進む。
【０１４９】
なお、ステップＳ１７２およびステップＳ１７３と、ステップＳ１７４およびステップＳ１７５とは、その順序が逆であってもよいし、並行して実行されてもよい。すなわち、アクセス許可証と鍵データ取得要求のメッセージの正当性と、アクセス許可証の正当性が、確認されれば、その順序は、限定されない。
【０１５０】
ステップＳ１７１乃至ステップＳ１７５の処理により、アクセス許可証と鍵データ取得要求のメッセージが検証されたことになる。
【０１５１】
ステップＳ１７６において、主制御部４５２は、記憶部４５３の鍵フォルダ４８５から、対応する鍵データを読み出す。主制御部４５２は、例えば、アクセス許可証に含まれるアプリケーションのデジタル証明書を確認することで、そのアプリケーション１２１に配信すべき鍵データを選択することができるので、鍵フォルダ４８５から例えば鍵データ４９１を読み出す。
【０１５２】
なお、アプリケーションのデジタル証明書だけでは、鍵サーバ１５が読み出す鍵データを識別できないような場合（例えば、１つのアプリケーション１２１に対して、複数種類の鍵データを供給するような場合）には、アプリケーション１２１は、上述した図１５のステップＳ３１の処理において、送信するアプリケーションのデジタル証明書２２３の中に用途ＩＤ（鍵データの使用用途を表すＩＤ）を含めるようにしてもよい。このようにした場合、鍵サーバ１５の主制御部４５２は、アプリケーションのデジタル証明書に含まれる用途ＩＤに基づいて、対応する鍵データを読み出す。
【０１５３】
ステップＳ１７７において、署名処理部４５４は、主制御部４５２からの制御に基づいて、鍵サーバ秘密鍵４８２を用いて、鍵サーバのデジタル証明書４８３（図１２）と鍵データ（ステップＳ１７５の処理で読み出した鍵データ）の署名（鍵サーバ１５による署名）を生成する。鍵サーバのデジタル証明書４８３は、上述した図１７の処理で鍵サーバ１５により取得され、図１２の記憶部４５３に記憶されたものである。例えば鍵データは、図１２の鍵データ４９１である。署名処理部４５４は、主制御部４５２からの制御に基づいて、鍵サーバのデジタル証明書４８３と鍵データ４９１とを、ハッシュ関数プログラムで圧縮するとともに、圧縮したものに対して、鍵サーバ秘密鍵４８２を用いて暗号化することで、図２３に示されるような鍵サーバのデジタル証明書と鍵データの署名を生成する。
【０１５４】
ステップＳ１７８において、暗号化部４５６は、主制御部４５２からの制御に基づいて、鍵サーバのデジタル証明書４８３と鍵データ４９１とを、アプリケーション公開鍵（例えばアプリケーション公開鍵２２１）を用いて暗号化する。このアプリケーション公開鍵２２１は、ステップＳ１７５の処理で一致したと判定されたアプリケーションのデジタル証明書（図１４）に含まれるアプリケーション公開鍵である。これにより、図２３の上段の、暗号化された「鍵サーバのデジタル証明書４８３と鍵データ４９１」が生成される。
【０１５５】
ステップＳ１７９において、出力部４５８は、主制御部４５２からの制御に基づいて、鍵サーバのデジタル証明書と鍵データの署名、並びに、暗号化された「鍵サーバのデジタル証明書４８３と鍵データ４９１」を、アプリケーション１２１に対して送信する。すなわち、出力部４５８は、図２３に示されるようなデータ（鍵サーバのデジタル証明書と鍵データの署名、並びに、暗号化された「鍵サーバのデジタル証明書４８３と鍵データ４９１」）を送信する。鍵サーバのデジタル証明書と鍵データの署名は、ステップＳ１７７で生成されたものであり、暗号化された「鍵サーバのデジタル証明書４８３と鍵データ４９１」はステップＳ１７８の処理で暗号化されたものである。
【０１５６】
これに対して、アプリケーション１２１の入力部２０１は、ステップＳ１５３において、鍵サーバのデジタル証明書と鍵データの署名、並びに、暗号化された「鍵サーバのデジタル証明書４８３と鍵データ４９１」を受信する。
【０１５７】
ステップＳ１５４において、復号部２０７は、アプリケーション秘密鍵２２２（図７）を用いて、暗号化された「鍵サーバのデジタル証明書４８３と鍵データ４９１」を復号する。この「鍵サーバのデジタル証明書４８３と鍵データ４９１」は、ステップＳ１７８で上述したように、アプリケーション公開鍵（例えばアプリケーション公開鍵２２１）で暗号化されているので、これと鍵ペアであるアプリケーション秘密鍵２２２を用いることで、復号することができる。これにより、鍵サーバのデジタル証明書４８３と鍵データ４９１とを得ることができる。
【０１５８】
ステップＳ１５５において、検証処理部２０５は、鍵サーバ公開鍵（鍵サーバのデジタル証明書２２５（図７）に含まれる鍵サーバ公開鍵）を用いて、鍵サーバのデジタル証明書４８３（ステップＳ１５４の処理で取得した鍵サーバのデジタル証明書４８３）、および鍵データ４９１が正当であることを検証する。具体的には、検証処理部２０５は、「鍵サーバのデジタル証明書と鍵データ」を鍵サーバ公開鍵（鍵サーバのデジタル証明書２２５（図７）に含まれる鍵サーバ公開鍵）で復号したものと、鍵サーバのデジタル証明書４８３および鍵データ４９１をハッシュ関数プログラムで圧縮したものとが一致するか否かにより、鍵サーバのデジタル証明書４８３と鍵データ４９１が正当であることを検証する。この処理により、鍵サーバ１５からアプリケーション１２１へのデータ転送の際に、データが改ざんされていないかを確認することができる。
【０１５９】
ステップＳ１５６においで、検証処理部２０５は、鍵サーバのデジタル証明書と鍵データが正当であることが検証されたか否かを判定する。具体的には、検証処理部２０５は、「鍵サーバのデジタル証明書と鍵データ」を鍵サーバ公開鍵で復号したものと、鍵サーバのデジタル証明書４８３および鍵データ４９１をハッシュ関数プログラムで圧縮したものとが一致する場合に正当であることが検証されたと判定し、一致しない場合に正当であることが検証されなかったと判定する。ステップＳ１５６において、正当であることが検証されなかったと判定された場合、処理は終了される。
【０１６０】
ステップＳ１５６において、鍵サーバのデジタル証明書と鍵データが正当であることが検証されたと判定された場合、処理はステップＳ１５７に進み、主制御部２０２は、復号して得られた鍵サーバのデジタル証明書（ステップＳ１５４の処理で得られた鍵サーバのデジタル証明書４８３）と、記憶部２０３（図７）に記憶されている鍵サーバのデジタル証明書２２５を比較する。記憶部２０３に記憶されている鍵サーバのデジタル証明書２２５は、上述した図１７の処理で、鍵サーバ１５から取得されたものである。
【０１６１】
ステップＳ１５７において、主制御部２０２は、ステップＳ１５６の処理により比較した結果、２つの鍵サーバのデジタル証明書（ステップＳ１５３の処理で復号されて得られた鍵サーバのデジタル証明書４８３と、図１７の処理で取得され、記憶部２０３に記憶されていた鍵サーバのデジタル証明書２２５）が一致したか否かを判定する。一致していないと判定された場合、処理は終了される。
【０１６２】
ステップＳ１５８において、２つの鍵サーバのデジタル証明書が一致したと判定された場合、ステップＳ１５９において、主制御部２０２は、ステップＳ１５４の処理で得られた鍵データ４９１を利用する。例えば、記憶部２０３に、新たな鍵データ４９１として記憶したり、あらかじめ記憶部２０３に鍵データが記憶されていた場合には、更新したりする。また、例えば、ＩＣカードリーダライタアンテナ４３とＩＣカード５１（図２）との間において通信が行なわれる場合に、共通鍵として利用される。その後、処理は終了される。
【０１６３】
図２０と図２１の処理により、鍵サーバ１５は、安全にアプリケーション１２１に鍵データを送信することができる。また、アプリケーション１２１も、安全に鍵サーバ１５から鍵データを取得することができる。
【０１６４】
図２０と図２１の処理は、端末SAM４２のアプリケーション１２１が、必要に応じて処理を開始するようにした（例えば、更新された共通鍵を有するＩＣカードが、端末SAM４２に接続されているＩＣカードリーダライタアンテナ４３に近接された場合に開始するようにした）ので、鍵サーバ１５は、鍵データの更新を、対応する複数のアプリケーション１２１に対して通知する必要がなく、鍵サーバ１５の負担を減らすことができる。
【０１６５】
このように、アプリケーション１２１から鍵サーバ１５に対して、鍵データの取得を要求する場合に、アクセス許可証２２４を用いることで、鍵サーバ１５では、この内容を持って相手を（一度認証し、署名した端末）であることを認証することができる。
【０１６６】
以上によれば、認定機関１３がアプリケーションのデジタル証明書２２３を発行するとともに、鍵サーバ１５が、アプリケーションのデジタル証明書２２３に対するアクセス許可証２２４（鍵サーバ１５からサービスを受けるための許可証）を、アプリケーション１２１に対して発行しておくようにしたので、鍵サーバ１５は、更新すべきアプリケーション１２１に対してのみ、鍵データを配信することができる。
【０１６７】
また、鍵サーバ１５は、各アプリケーション１２１の鍵のバージョンや更新の必要の有無などを把握していなくても、確実、かつ、安全に鍵データをアプリケーション１２１に送信することができる。
【０１６８】
すなわち、以上の処理は、それぞれのアプリケーション１２１−１乃至１２１−３によって実行される。本発明によれば、鍵サーバ１５を設け、アプリケーション１２１−１乃至１２１−３に配信すべき情報を管理するようにするとともに、鍵データの更新があった場合においても、鍵サーバ１５がアプリケーション１２１−１乃至１２１−３を認識して配布する必要はなく、アプリケーション１２１−１乃至１２１−３がそれぞれ鍵サーバ１５に鍵データを貰いに行くことができ、もって、鍵データの配信を容易に行なうことができる。
【０１６９】
アプリケーション１２１は、アクセス許可証２２４を用いることで、確実、かつ、安全に、鍵サーバ１５から鍵データを取得することができる。
【０１７０】
このことは、サーバ１４または鍵サーバ１５が、鍵データの提供先として認める端末（アプリケーション１２１）のデジタル証明書を保持しておき、鍵データを提供する場合に、鍵データの要求に対するデジタル証明書が正当であることを検証するようにしたときと比較して、各端末のデジタル証明書を保持する必要がないため、処理コストを抑えることができる。特に、鍵データの提供先の端末の数が多い場合には、サーバ１４または鍵サーバ１５の管理コストが膨大となったり（記憶領域を大幅に消費したり）、デジタル証明書の検索に要する時間が増大するが、本発明によれば、鍵サーバ１５は、アプリケーション１２１に関する情報を保持しなくて済むため、鍵サーバ１５の管理コストを抑えるとともに、処理時間を短縮することができる。
【０１７１】
また、以上によれば、アプリケーションのデジタル証明書２２３を信頼できる第３者（認定機関１３）に発行してもらうようにしたので、アプリケーション１２１が、鍵データの流出を防ぐ機能を有することを、鍵サーバ１５は認識することができ、もって、より安心して鍵データを配信することができる。
【０１７２】
さらに、点在する各アプリケーション間（複数の地域や店舗に設けられた端末SAMクライアント１１内）で共用する共通鍵を更新したいような場合であっても、サービス提供者（サーバ１４）は鍵サーバ１５のみの鍵データを更新するだけで、アプリケーション１２１が必要に応じて鍵サーバ１５から必要な情報（鍵データ）を取得し、鍵データを自立的に更新することができる。ここで、アプリケーション１２１−１が鍵データの取得を行なう必要が生じるケースとしては、鍵データを共用する、他のアプリケーション１２１−２（他の端末１１−２）にて鍵データが更新されたＩＣカード５１が、このアプリケーション１２１−１で利用されるような場合である。
【０１７３】
このように、共通鍵方式のＩＣカードを利用してＩＣカードに関する情報を管理する端末SAM４２側に、必要な共通鍵データ（例えば、鍵データ４９１）の追加や更新を効率よく行なうことができる。特に、共通鍵データを共有するアプリケーション（端末SAM４２）が数多く点在する場合（多くの店舗に設けられる場合）に、より、効率よく、各アプリケーションに共通鍵データを配信することができる。
【０１７４】
また、アプリケーションがそれぞれ対応する処理を、端末SAM４２として実行することで、図４に示されるように、複数のサービス提供者により提供されたアプリケーションが端末SAM４２の記憶部７８に記憶されていた場合においても、個々のアプリケーション毎に、アプリケーション公開鍵２２１、アプリケーション秘密鍵２２２、アプリケーションのデジタル証明書２２３、アクセス許可証２２４等が取得されるので、アプリケーション毎に鍵データを更新または追加することができる。すなわち、他のサービス提供者により提供される鍵を、（たとえ、同じ端末SAM４２に記憶されているアプリケーションであっても）対応していないアプリケーションが流用するのを防ぐことができる。
【０１７５】
なお、アプリケーション１２１は、取得した鍵データ（例えば、鍵データ４９１）をキャッシュし、鍵サーバ１５へのアクセス回数を減らして、処理効率を向上させることもできる。鍵データをキャッシュする場合、鍵データはアプリケーション１２１側で改ざん、盗聴、使用停止などのセキュリティ的攻撃を受けない領域に記憶するようにする。この場合、鍵サーバ１５が、アプリケーション１２１を認証するとき（例えば、図１５の処理が実行されるとき）、アプリケーションがこの禁止機能を有することを検証するようにすればよい。
【０１７６】
また、鍵サーバ１５の形式は、HTTP(HyperText Transfer Protocol)サーバのような同期型のものから、電子メール受信で要求を受付け、その後、返送を行なうような非同期型のものまで、自由な形式にしてもよい。非同期の形式を取る場合、通信路はネットワーク１２でなくてもよい。
【０１７７】
なお、以上の例では、鍵サーバ１５が、複数のサービス提供者（サーバ１４−１乃至１４−３）の鍵データを一括して管理するようにしたが、鍵サーバ１５をサービス提供者毎に設けるようにしてもよい。この場合、アプリケーション１２１は、複数の鍵サーバ１５のデジタル証明書とアクセス許可証を保持することで、複数の鍵サーバから、鍵データを取得することができる。
【０１７８】
また、鍵サーバ１５とサーバ１４とを一体としてもよい。例えば、サーバ１４−１乃至１４−３のそれぞれが、内部に鍵サーバ１５の機能を有するようにしてもよい。
【０１７９】
さらに、以上の例では、配信するデータを、鍵データ（ＩＣカードのアクセスに必要な共通鍵データ）としたが、これに限らずアプリケーションプログラムや、その実行に必要なデータを配信するようにしてもよい。
【０１８０】
また、以上の例では、所定のデータの署名とともに、署名の元となる所定のデータを送信する場合に暗号化しないように記載しているが、署名の元となる所定のデータを、例えば、送信先の公開鍵で暗号化して送信するようにしてもよい。さらに、署名も、送信先の公開鍵で暗号化して送信するようにしてもよい。具体的には、図１５のステップＳ５５で「アプリケーションのデジタル証明書」をアプリケーション公開鍵で暗号化して送信するようにしてもよいし、「アプリケーションのデジタル証明書の署名とアプリケーションのデジタル証明書」を合わせてアプリケーション公開鍵で暗号化して送信するようにしてもよい。
【０１８１】
さらに、鍵データが更新されるたびに、端末SAMクライアント１１のアプリケーション１２１のそれぞれに鍵データを配信する必要がないため、鍵の更新に対する処理コストを抑えることができる。
【０１８２】
また、暗号化の方式は上述した方式に限らず、共通鍵などを利用した方式であってもよい。
【０１８３】
さらに、以上の例では、特定の情報（例えば、共通鍵）を暗号化すると記載した箇所については、少なくともその特定の情報を含むものを暗号化することを示す。すなわち、「特定の情報を暗号化する」という記載には、「暗号化する情報の中に、特定の情報が含まれている」ことを示す。
【０１８４】
また、端末SAMクライアント１１は、情報を処理する情報処理装置であれば、他のものにも適用することができる。例えば、パーソナルコンピュータにＩＣカードリーダライタを設けたものを端末SAMクライアント１１としてもよい。
【０１８５】
なお、本実施の形態は、公開鍵暗号化方式とデジタル署名を用いて説明したが、この方式に代用できるようなものであれば、他の方式であっても適用することができる。
【０１８６】
また、公開鍵暗号化方式とデジタル署名の前提は、アプリケーション秘密鍵、認定機関秘密鍵、およびサーバ秘密鍵は、それぞれの装置のみが有し、アプリケーション秘密鍵を用いて署名されたものはアプリケーション公開鍵で検証され、認定機関秘密鍵を用いて署名されたものは認定機関公開鍵で検証され、サーバ秘密鍵を用いて署名されたものはサーバ公開鍵で検証されるものである。
【０１８７】
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、ネットワークや記録媒体からインストールされる。
【０１８８】
この記録媒体は、図３（並びに図８および図１０）に示されるように、コンピュータとは別に、ユーザにプログラムを提供するために配布される、プログラムが記録されているリムーバブルメディア９１よりなるパッケージメディアにより構成されるだけでなく、装置本体にあらかじめ組み込まれた状態でユーザに提供される、プログラムが記録されているROM７２や記憶部７８が含まれるハードディスクなどで構成される。なお、図８、図１０においても同様である。
【０１８９】
なお、本明細書において、コンピュータプログラムを記述するステップは、記載された順序に従って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０１９０】
また、本明細書において、システムとは、複数の装置により構成される装置全体を表わすものである。
【図面の簡単な説明】
【０１９１】
【図１】本発明を適用した情報処理システムの全体の構成例を示す図である。
【図２】図１の端末SAMクライアントの機能的構成例を示す図である。
【図３】図１の端末SAMクライアントのハードウエアの構成例を示すブロック図である。
【図４】図３の記憶部に記憶される情報を説明する図である。
【図５】図１の鍵サーバとアプリケーションの関係を説明する図である。
【図６】図５のアプリケーションの機能的構成例を示すブロック図である。
【図７】図５の記憶部に記憶される情報を説明する図である。
【図８】図１の認定機関のハードウエアの構成例を示すブロック図である。
【図９】図８の認定機関の機能的構成例を示すブロック図である。
【図１０】図１の鍵サーバのハードウエアの構成例を示すブロック図である。
【図１１】図１０の鍵サーバの機能的構成例を示すブロック図である。
【図１２】図１０の記憶部に記憶される情報を説明する図である。
【図１３】アプリケーションが認定機関からアプリケーションのデジタル証明書の発行を受ける処理を説明するフローチャートである。
【図１４】アプリケーションのデジタル証明書を説明する図である。
【図１５】アプリケーションが鍵サーバからアクセス許可証の発行を受ける処理を説明するフローチャートである。
【図１６】アクセス許可証を説明する図である。
【図１７】鍵サーバが認定機関から鍵サーバのデジタル証明書の発行を受ける処理を説明するフローチャートである。
【図１８】鍵サーバのデジタル証明書を説明する図である。
【図１９】アプリケーションが鍵サーバから鍵サーバのデジタル証明書を取得する処理を説明するフローチャートである。
【図２０】アプリケーションが鍵サーバから鍵データを取得する処理を説明するフローチャートである。
【図２１】アプリケーションが鍵サーバから鍵データを取得する処理を説明するフローチャートである。
【図２２】図２０のステップＳ１５２で送信されるデータを説明する図である。
【図２３】図２１のステップＳ１７９で送信されるデータを説明する図である。
【符号の説明】
【０１９２】
１  情報処理システム，  １１  端末SAMクライアント，  １４  サーバ，  １５  鍵サーバ，  ４２  端末SAM，  ４３  ＩＣカードリーダライタアンテナ，  １２１  アプリケーション，  ２０１  入力部，  ２０２  主制御部，  ２０３  記憶部，  ２０４  署名処理部，  ２０５  検証処理部，  ２０６  暗号化部，  ２０７  復号部，  ２０８  出力部，  ２２１  アプリケーション公開鍵，  ２２２  アプリケーション秘密鍵，  ２２３  アプリケーションのデジタル証明書，  ２２４  アクセス許可証，  ２２５  鍵サーバのデジタル証明書，  ３５１  入力部，  ３５２  主制御部，  ３５３  記憶部，  ３５４  署名処理部，  ３５５  出力部，  ３６１  認定機関公開鍵，  ３６２  認定機関秘密鍵，  ４５１  入力部，  ４５２  主制御部，  ４５３  記憶部，  ４５４  署名処理部，  ４５５  検証処理部，  ４５６  暗号化部，  ４５７  復号部，  ４５８  出力部，  ４８１  鍵サーバ公開鍵，  ４８２  鍵サーバ秘密鍵，  ４８３  鍵サーバのデジタル証明書，  ４８４  認定機関公開鍵，  ４８５  鍵フォルダ，  ４９１乃至４９３  鍵データ
【図１】
2006033266.tif 000003
【図２】
2006033266.tif 000004
【図３】
2006033266.tif 000005
【図４】
2006033266.tif 000006
【図５】
2006033266.tif 000007
【図６】
2006033266.tif 000008
【図７】
2006033266.tif 000009
【図８】
2006033266.tif 000010
【図９】
2006033266.tif 000011
【図１０】
2006033266.tif 000012
【図１１】
2006033266.tif 000013
【図１２】
2006033266.tif 000014
【図１３】
2006033266.tif 000015
【図１４】
2006033266.tif 000016
【図１５】
2006033266.tif 000017
【図１６】
2006033266.tif 000018
【図１７】
2006033266.tif 000019
【図１８】
2006033266.tif 000020
【図１９】
2006033266.tif 000021
【図２０】
2006033266.tif 000022
【図２１】
2006033266.tif 000023
【図２２】
2006033266.tif 000024
【図２３】
2006033266.tif 000025