(57)【要約】  【課題】  リーダライタに電子証明書を設定できるデータ処理システムを提供する。  【解決手段】  データ処理システム１は、リーダライタ２０と、データ処理装置１０と、電子証明書２８ａ〜２８ｃを生成する電子証明書生成用のＩＣカード３０とを備える。リーダライタ２０は、公開鍵と秘密鍵のペアを生成し、ＩＣカード３０に公開鍵を送信する。ＩＣカード３０は、リーダライタ２０から受領した公開鍵を当該ＩＣカード３０が有する秘密鍵で暗号化し、公開鍵の暗号化した情報を含む電子証明書２８ａ〜２８ｃを生成し、電子証明書２８ａ〜２８ｃをリーダライタ２０に送信する。リーダライタ２０は、ＩＣカード３０から送信される電子証明書２８を受領し、受領した電子証明書２８ａ〜２８ｃを記憶する。リーダライタ２０は、データ処理装置１０に通信を行う際に、データ処理装置１０に電子証明書２８ａ〜２８ｃを送信して認証を行う。【選択図】  図１
2008278086.tif 000002
【特許請求の範囲】
【請求項１】
公開鍵と秘密鍵のペアを生成する鍵生成部と電子証明書生成用として前記公開鍵をカードに送る公開鍵送付部とを備えたリーダライタと、
前記リーダライタから受領した前記公開鍵を自己が有する秘密鍵で暗号化して電子署名を生成する電子署名生成部と前記電子署名を含む電子証明書を生成する電子証明書生成部と前記電子証明書を前記リーダライタに送る送付部とを有する前記カードと、
前記リーダライタに接続されるデータ処理装置と、
で構成するデータ処理システムであって、
前記リーダライタは、前記カードから前記電子証明書を受けとる電子証明書受領部と、前記電子証明書を記憶する電子証明書記憶部と前記データ処理装置との通信に際して前記電子証明書を送る送付部と、を備え、
前記データ処理装置に設けた電子証明書認証部が前記電子証明書を認証することにより前記リーダライタと前記データ処理装置とが通信を行なうデータ処理システム。
【請求項２】
前記データ処理装置が接続されたネットワークに、新たに前記リーダライタが接続されたときに新たに接続された前記リーダライタの前記鍵生成部が公開鍵と秘密鍵のペアを生成する請求項１に記載されたデータ処理システム。
【請求項３】
前記カードが、前記電子証明書を利用するアプリケーションを格納するアプリケーション格納部を有する請求項１または２のいずれかに記載のデータ処理システム。
【請求項４】
前記データ処理装置が、前記電子証明書に含まれている公開鍵を用いてデータを暗号化するデータ処理装置暗号化部と、前記データ処理装置暗号化部が暗号化したデータを前記リーダライタに送る送信部とを有する請求項１〜３のいずれかに記載のデータ処理システム。
【請求項５】
公開鍵と秘密鍵のペアを生成する鍵生成部と、
電子証明書生成用のカードを検出したときに、前記カードに公開鍵を送る公開鍵送付部と、
前記電子証明書生成用のカードから送られる、前記公開鍵を暗号化した電子署名を含む電子証明書を受ける電子証明書受領部と、
前記電子証明書を記憶する電子証明書記憶部と、
を備えたリーダライタ。
【請求項６】
リーダライタに読み取られると共に、前記リーダライタの電子証明書を生成するためのカードであって、
前記リーダライタから、前記リーダライタの公開鍵を受ける公開鍵受領部と、
前記公開鍵を、当該カードが有する秘密鍵で暗号化して電子署名を生成し、前記電子署名を含む電子証明書を生成する電子証明書生成部と、
前記電子証明書を前記リーダライタに送る電子証明書送付部と、
を備えた電子証明書生成用カード。
【請求項７】
リーダライタと、前記リーダライタに接続されるデータ処理装置と、前記リーダライタの電子証明書を生成するカードとを備えたデータ処理システムにおいて、
前記リーダライタが公開鍵と秘密鍵のペアを生成するステップと、
前記リーダライタから前記カードに公開鍵を送るステップと、
前記カードが、前記リーダライタから受けた公開鍵を当該カードが有する秘密鍵で暗号化して電子署名を生成し、前記電子署名を含む電子証明書を生成し、前記電子証明書を前記リーダライタに送るステップと、
前記リーダライタが、前記カードから送られる前記電子証明書を受領して記憶するステップと、
前記リーダライタが、前記電子証明書を前記データ処理装置に送るステップと、
前記データ処理装置が前記電子証明書を認証するステップと
を備えた電子証明書の生成方法。
【請求項８】
電子証明書生成用のカードと通信を行なうリーダライタにインストールされるプログラムであって、前記リーダライタに、
公開鍵と秘密鍵のペアを生成するステップと、
前記カードを検出したときに前記リーダライタから前記カードに前記公開鍵を送るステップと、
前記公開鍵を暗号化した電子署名を含む電子証明書を受領するステップと、
前記電子証明書を記憶部に記憶するステップと、
前記電子証明書を用いて前記データ処理装置と通信を行なうステップと
を実行させるプログラム。
【請求項９】
リーダライタと通信を行なう電子証明書生成用のカードにインストールされるプログラムであって、前記カードに、
前記リーダライタから、前記リーダライタが作成した公開鍵を受領するステップと、
前記公開鍵を前記カードが有する秘密鍵で暗号化して電子署名を生成するステップと、前記電子署名を含む電子証明書を生成するステップと、
前記電子証明書を前記リーダライタに送るステップと、
を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、リーダライタを含むデータ処理システムに関し、特にリーダライタの認証技術に関する。
【背景技術】
【０００２】
従来から、例えば電子マネーシステム等のように、リーダライタによってユーザのカードの情報を読み取り、読み取った情報を上位のデータ処理装置に送付して処理を行うデータ処理システムが知られている。このようなデータ処理システムにおいては、リーダライタとデータ処理装置との認証を行うことが望ましい。特に、電子マネーシステム等の決済システムに適用する場合には、リーダライタとデータ処理装置との認証を行って、セキュリティを強化する必要がある。
【０００３】
現在、端末間の相互認証、本人性確認を行う技術として、公開鍵による電子証明書が知られている。例えば、特許文献１に記載された通信システムでは、プリントサーバは電子証明書を有している。クライアントＰＣは、プリントサーバにプリントを要求する際に、プリントサーバから電子証明書を受領し、プリントサーバの本人性を確認する処理を行なっている。
【特許文献１】特開２００７−１３５９７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上記した特許文献１では、プリントサーバはＬＡＮに接続されており、プリントサーバ内の電子証明書はＬＡＮ上の管理ＰＣによって管理される。これにより、管理ＰＣは、プリントサーバに電子証明書を格納したり、電子証明書の有効期限が切れる前に電子証明書の更新を行ったりすることができる。
【０００５】
しかしながら、リーダライタとデータ処理装置とが接続されたデータ処理システムでは、リーダライタに管理ＰＣが接続されていない場合がほとんどであり、リーダライタに電子証明書を設定することができない。リーダライタの出荷時に電子証明書を設定しておくことも可能であるが、電子証明書の有効期限が切れた場合には、対応することができない。現状では、リーダライタの認証を行うことのできるデータ処理システムは知られていない。
【０００６】
本発明は、上記背景に鑑み、リーダライタとデータ処理装置とを備えるデータ処理システムにおいて、リーダライタに電子証明書を設定できるデータ処理システムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明のデータ処理システムは、公開鍵と秘密鍵のペアを生成する鍵生成部と電子証明書生成用として前記公開鍵をカードに送る公開鍵送付部とを備えたリーダライタと、前記リーダライタから受領した前記公開鍵を自己が有する秘密鍵で暗号化して電子署名を生成する電子署名生成部と前記電子署名を含む電子証明書を生成する電子証明書生成部と前記電子証明書を前記リーダライタに送る送付部とを有する前記カードと、前記リーダライタに接続されるデータ処理装置とで構成するデータ処理システムであって、前記リーダライタは、前記カードから前記電子証明書を受けとる電子証明書受領部と、前記電子証明書を記憶する電子証明書記憶部と前記データ処理装置との通信に際して前記電子証明書を送る送付部とを備え、前記データ処理装置に設けた電子証明書認証部が前記電子証明書を認証することにより前記リーダライタと前記データ処理装置とが通信を行なう構成を有する。
【０００８】
この構成により、電子証明書生成用のカードがリーダライタの公開鍵を暗号化して電子証明書を生成するので、カードによって署名された電子証明書をリーダライタに保存することができる。
【０００９】
本発明のデータ処理システムは、前記リーダライタに記憶された電子証明書の有効期限前の所定期間内に、前記リーダライタが公開鍵と秘密鍵のペアを生成する構成を有する。
【００１０】
この構成により、電子証明書の有効期限が切れる前に、新たな電子証明書を生成することができ、リーダライタとデータ処理装置との通信を支障なく行える。
【００１１】
本発明のデータ処理システムは、前記リーダライタに記憶された電子証明書の有効期限が切れているときに、前記リーダライタが公開鍵と秘密鍵のペアを生成する構成を有する構成を有する。
【００１２】
この構成により、電子証明書の有効期限が切れてしまった場合にも、新たな電子証明書を生成することができる。なお、電子証明書が切れる前に電子証明書を更新する構成を採用している場合にも、有効期限が切れる前に電子証明書生成用のカードがリーダライタにアクセスしなければ、新しい電子証明書は生成されないので、本発明の構成は有効である。
【００１３】
本発明のデータ処理システムは、前記データ処理装置が接続されたネットワークに、新たに前記リーダライタが接続されたときに新たに接続された前記リーダライタの前記鍵生成部が公開鍵と秘密鍵のペアを生成する構成を有する。
【００１４】
この構成により、あらかじめリーダライタに電子証明書を保存しておかなくても、リーダライタを使用する際に電子証明書を保存することができる。
【００１５】
本発明のデータ処理システムにおいて、前記カードは、前記電子証明書を利用するアプリケーションを格納するアプリケーション格納部を有する。
【００１６】
この構成により、カードを用いた他のアプリケーションを実行しようとする際に、自動的に電子証明書を保存することができる。
【００１７】
本発明のデータ処理システムにおいて、前記データ処理装置が、前記電子証明書に含まれている公開鍵を用いてデータを暗号化するデータ処理装置暗号化部と、前記データ処理装置暗号化部が暗号化したデータを前記リーダライタに送る送信部とを有する。
【００１８】
この構成により、リーダライタとデータ処理装置との間のセキュアな通信を実現できる。
【００１９】
本発明のリーダライタは、公開鍵と秘密鍵のペアを生成する鍵生成部と、電子証明書生成用のカードを検出したときに、前記カードに公開鍵を送る公開鍵送付部と、前記電子証明書生成用のカードから送られる、前記公開鍵を暗号化した電子署名を含む電子証明書を受ける電子証明書受領部と、前記電子証明書を記憶する電子証明書記憶部とを備えた構成を有する。
【００２０】
この構成により、本発明のデータ処理システムと同様に、電子証明書生成用のカードによって生成された電子証明書を保存することができる。なお、本発明のデータ処理システムの各種の構成を本発明のリーダライタに適用することも可能である。
【００２１】
本発明の電子証明書生成用カードは、リーダライタに読み取られると共に、前記リーダライタの電子証明書を生成するためのカードであって、前記リーダライタから、前記リーダライタの公開鍵を受ける公開鍵受領部と、前記公開鍵を、当該カードが有する秘密鍵で暗号化して電子署名を生成し、前記電子署名を含む電子証明書を生成する電子証明書生成部と、前記電子証明書を前記リーダライタに送る電子証明書送付部とを備えた構成を有する。
【００２２】
この構成により、本発明のデータ処理システムと同様に、電子証明書生成用のカードがリーダライタの公開鍵を暗号化して電子証明書を生成するので、カードによって署名された電子証明書を生成することができる。なお、カードには、電子証明書生成以外の他のアプリケーションを実行する機能を持たせてもよい。
【００２３】
本発明の電子証明書の生成方法は、リーダライタと、前記リーダライタに接続されるデータ処理装置と、前記リーダライタの電子証明書を生成するカードとを備えたデータ処理システムにおいて、前記リーダライタが公開鍵と秘密鍵のペアを生成するステップと、前記リーダライタから前記カードに公開鍵を送るステップと、前記カードが、前記リーダライタから受けた公開鍵を当該カードが有する秘密鍵で暗号化して電子署名を生成し、前記電子署名を含む電子証明書を生成し、前記電子証明書を前記リーダライタに送るステップと、前記リーダライタが前記カードから送られる前記電子証明書を受領して記憶するステップと、前記リーダライタが前記電子証明書を前記データ処理装置に送るステップと、前記データ処理装置が前記電子証明書を認証するステップとを備えた構成を有する。
【００２４】
この構成により、本発明のデータ処理システムと同様に、電子証明書生成用のカードがリーダライタの公開鍵を暗号化して電子証明書を生成するので、カードによって署名された電子証明書をリーダライタに保存することができる。なお、本発明のデータ処理システムの各種の構成を本発明の電子証明書の生成方法に適用することも可能である。
【００２５】
本発明のプログラムは、電子証明書生成用のカードと通信を行なうリーダライタにインストールされるプログラムであって、前記リーダライタに、公開鍵と秘密鍵のペアを生成するステップと、前記カードを検出したときに前記リーダライタから前記カードに前記公開鍵を送るステップと、前記公開鍵を暗号化した電子署名を含む電子証明書を受領するステップと、前記電子証明書を記憶部に記憶するステップと、前記電子証明書を用いて前記データ処理装置と通信を行なうステップとを実行させる。
【００２６】
この構成により、本発明のデータ処理システムと同様に、電子証明書生成用のカードによって生成された電子証明書を保存することができる。なお、本発明のデータ処理システムの各種の構成を本発明のプログラムに適用することも可能である。
【００２７】
本発明の別の態様に係るプログラムは、リーダライタと通信を行なう電子証明書生成用のカードにインストールされるプログラムであって、前記カードに、前記リーダライタから、前記リーダライタが作成した公開鍵を受領するステップと、前記公開鍵を前記カードが有する秘密鍵で暗号化して電子署名を生成するステップと、前記電子署名を含む電子証明書を生成するステップと、前記電子証明書を前記リーダライタに送るステップとを実行させる。
【００２８】
この構成により、本発明のデータ処理システムと同様に、電子証明書生成用のカードがリーダライタの公開鍵を暗号化して電子証明書を生成するので、カードによって署名された電子証明書をリーダライタに保存することができる。なお、カードには、電子証明書生成以外の他のアプリケーションを実行する機能を持たせてもよい。
【発明の効果】
【００２９】
本発明によれば、電子証明書生成用のカードがリーダライタの公開鍵を暗号化して電子証明書を生成するので、カードによって署名された電子証明書をリーダライタに保存することができるというすぐれた効果を有する。
【発明を実施するための最良の形態】
【００３０】
以下、本発明の実施の形態のデータ処理システムについて図面を参照しながら説明する。最初に、本実施の形態のデータ処理システムが適用される環境について説明する。本実施の形態のデータ処理システムは、例えば、ＩＣカードやクレジットカードを用いて決済を行うシステムに適用される。店舗等ではカウンタごとにＩＣカード等の内容を読み取るためのリーダライタが設置される。各リーダライタは、売上金等を集計するデータ処理装置に接続される。以下では、このようなシステムにおいてリーダライタとデータ処理装置との間の認証に用いられる電子証明書を、リーダライタに付与する例を取り上げて説明する。
【００３１】
図１は、本実施の形態のデータ処理システム１の構成を示す図である。本実施の形態のデータ処理システム１は、複数のリーダライタ２０と、リーダライタ２０に接続されたデータ処理装置１０と、リーダライタ２０によって読み取られるＩＣカード３０とを備えている。データ処理装置１０と複数のリーダライタ２０は接続されており、ネットワークを形成している。なお、ＩＣカード３０には、電子マネー等のサービスを受けるためのユーザ用のＩＣカード３０と、メンテナンス員がリーダライタ２０のメンテナンスに用いるＩＣカード３０がある。このうち、リーダライタ２０の電子証明書を生成する機能を有するのは、メンテナンス用のＩＣカード３０である。
【００３２】
データ処理装置１０および各リーダライタ２０は、それぞれ電子証明書１５、２８ａ〜２８ｃを有している。データ処理装置１０と各リーダライタ２０は、互いに電子証明書１５、２８ａ〜２８ｃを送信することにより、通信相手の認証を行うことができる。また、電子証明書１５、２８ａ〜２８ｃに暗号化された公開鍵を用いて送信データを暗号化することにより、セキュアなＳＳＬ通信を実現できる。
【００３３】
図２は、電子証明書１５、２８ａ〜２８ｃのフォーマットを示す図である。電子証明書１５、２８ａ〜２８ｃは、「証明書形式のバージョン」「証明書のシリアル番号」「電子署名アルゴリズム」「認証局の識別名」「有効期限（開始／終了）」「（被証明者の）公開鍵アルゴリズム」「公開鍵」「拡張領域」「公開鍵と証明書情報とから生成したダイジェストの電子署名データ」の各情報を有している。ここで、「証明書情報」とは上記、「証明書形式のバージョン」「証明書のシリアル番号」「電子署名アルゴリズム」「認証局の識別名」「有効期限（開始／終了）」「（被証明者の）公開鍵アルゴリズム」「拡張領域」で構成されるデータを指す。電子証明書のフォーマットは、ＩＴＵ−Ｔ（国際電気通信連合――電気通信標準化部門）が定めたＸ．５０９という規格に沿っている。「公開鍵」は被証明者の公開鍵であり、「公開鍵と証明書情報とから生成したダイジェストの電子署名データ」は、被証明者の公開鍵（公開鍵のダイジェストデータを含む、以下、「公開鍵等」という）を認証局の秘密鍵で暗号化した情報である。この電子署名を認証局の公開鍵で復号化した情報が、「公開鍵等」と一致すれば、電子証明書の送信元が認証局によって確認された者であることが確認できる。なお、本実施の形態において、リーダライタ２０の電子証明書２８の認証局はＩＣカード３０である。
【００３４】
図３は、データ処理装置１０の構成を示す図である。データ処理装置１０は、ＣＰＵ１１と、メモリ１２と、ネットワーク通信部１３と、データベース１４とを備えている。メモリ１２には、前述した電子証明書１５が記憶されている。電子証明書１５は、図示しない上位装置から取得してもよいし、ＣＤ−ＲＯＭ等の記録媒体を経由して取得してもよい。ネットワーク通信部１４は、リーダライタ２０との通信を行う機能を有する。データベース１４は、データ処理システム１によるサービスの提供に必要なデータ等を記憶する。例えば、電子マネーの例では、リーダライタ２０で処理した売上金額や各ユーザの購入履歴等の情報を、各リーダライタ２０から取得して記憶する。
【００３５】
図４は、リーダライタ２０の構成を示す図である。リーダライタ２０は、ＣＰＵ２１と、メモリ２２と、暗号処理部２３と、ネットワーク通信部２４と、コマンド生成部２５と、鍵生成部２６と、カード通信部２７とを備えている。
【００３６】
メモリ２２には、電子証明書２８と鍵情報２９が記憶されている（図１に示す電子証明書２８ａ〜２８ｃを総称して、電子証明書２８という）。鍵情報２９は、鍵生成部２６にて生成された公開鍵と秘密鍵のペアの情報である。
【００３７】
暗号処理部２３は、データの暗号化および復号化を行なう機能を有する。暗号化処理部２３は、例えば、データを送信する際には、送信先の装置の公開鍵を用いてデータを暗号化し、データを受領する際には、鍵情報２９に記憶された秘密鍵を用いてデータを復号化する。ネットワーク通信部２４は、データ処理装置１０あるいは他のリーダライタ２０と通信を行う機能を有する。コマンド生成部２５は、ＩＣカード３０に対して送信するコマンドを生成する機能を有する。鍵生成部２６は、新たな公開鍵および秘密鍵を生成する機能を有する。カード通信部２７は、ＩＣカード３０と通信する機能を有する。非接触ＩＣカード３０に対応したリーダライタ２０では、カード通信部２７より常時ポーリング信号を送信し、カードの接近を検出する。
【００３８】
図５は、ＩＣカード３０の構成を示す図である。ＩＣカード３０は、接触型のＩＣカード３０でもよいし、非接触型のＩＣカード３０でもよいが、本実施の形態では非接触型のＩＣカード３０を例として説明する。ＩＣカード３０は、ＣＰＵ３１と、メモリ３２と、暗号処理部３３と、リーダライタ通信部３４と、電力発生部３５とを備えている。
【００３９】
リーダライタ通信部３４は、リーダライタ２０と通信を行う機能を有する。電力発生部３５はアンテナコイルで構成され、電磁誘導によって電力を発生させる機能を有する。
【００４０】
図６は、メモリ３２の例を示す図である。図６に示すように、メモリ３２には、鍵情報３６、カードＯＳ３７、ログ取得アプリケーション３８、設定更新アプリケーション３９、証明書生成アプリケーション４０が格納されている。なお、メモリ３２に、図６に示すアプリケーション以外にも、必要により他のアプリケーションプログラムを格納してもよい。鍵情報３６は、ＩＣカードの秘密鍵と公開鍵のペアである。ログ取得アプリケーション３８は、リーダライタ２０に蓄えられたログを取得してＩＣカード３０に記憶する機能を有する。設定更新アプリケーション３９は、ＩＣカード３０に記憶された設定更新情報によってリーダライタ２０の設定を更新する機能を有する。証明書生成アプリケーション４０は、リーダライタ２０から受領した公開鍵を用いて当該リーダライタ用の電子証明書を生成する機能を有する。証明書生成アプリケーション４０は、本発明のカード用のプログラムに該当する。なお、図６に示すアプリケーションは一例であり、カードＯＳ３７には、図６に示す以外のアプリケーションを記憶してもよい。
【００４１】
次に、本実施の形態のデータ処理システム１の動作について説明する。データ処理システム１は、リーダライタ２０によってＩＣカード３０の情報を読み取り、例えば、電子マネー等のアプリケーションを提供する。リーダライタ２０は、データ処理装置１０と通信を行って売上金額や販売履歴等の情報をデータ処理装置１０に送信する。リーダライタ２０とデータ処理装置１０との通信においては、電子証明書１５、２８ａ〜２８ｃを用いた相互認証および暗号化通信（ＳＳＬ通信）が行われる。本実施の形態のデータ処理装置１は、電子証明書２８の有効期限が近づいているときに、新しく電子証明書２８を生成し、リーダライタ３０に保存する。以下、本実施の形態のデータ処理システム１における電子証明書２８の生成の動作について説明する。
【００４２】
図７は、本実施の形態における電子証明書２８の生成の動作の概要を示す図である。まず、（１）リーダライタ２０が秘密鍵Ａと公開鍵Ａの鍵セットＡを生成し、（２）生成した公開鍵ＡをＩＣカード３０に送信する。（３）ＩＣカード３０は受領した公開鍵Ａと証明書情報のダイジェストデータを、ＩＣカード３０の秘密鍵Ｂを用いて暗号化することで電子署名データを生成し、（４）公開鍵Ａ、証明書情報、電子証明書２８で構成される暗号化した公開鍵Ａを含む電子証明書２８を生成する。（５）ＩＣカード３０は、生成した電子証明書２８をリーダライタ２０に送信し、（６）リーダライタ２０は電子証明書２８を記憶する。
【００４３】
図８は、電子証明書２８の生成時のリーダライタ２０およびＩＣカード３０の動作を示す図である。リーダライタ２０は、電子証明書生成用のＩＣカード３０を検出したか否かを判定する（Ｓ１０）。ＩＣカード３０を検出しない場合には（Ｓ１０でＮＯ）、ＩＣカード３０を検出するまで、ＩＣカード３０を検出したか否かの判定の処理を繰り返し行う。
【００４４】
ＩＣカード３０を検出すると（Ｓ１０でＹＥＳ）、リーダライタ２０は電子証明書が記憶されているか否かを判定する（Ｓ１２）。電子証明書が記憶されていない場合には（Ｓ１２でＮＯ）、鍵ペアの生成のステップＳ１６に移行する。電子証明書が記憶されている場合（Ｓ１２でＹＥＳ）、リーダライタ２０は電子証明書の期限切れが近いか否かを判定する（Ｓ１４）。期限切れが近いか否かの判定は、電子証明書の有効期限の情報と所定の閾値を用いて行なう。例えば、閾値として１ヶ月という期間を用いた場合、リーダライタ２０は、現在時刻が有効期限の前の１ヶ月の期間に含まれる場合には、有効期限切れが近いと判定する。
【００４５】
有効期限切れが近いか否かの判定において、有効期限切れが近くないと判定された場合には（Ｓ１４でＮＯ）、リーダライタ２０は、電子証明書の生成処理を行わず、他のアプリケーションの処理に移行する（Ｓ３６）。
【００４６】
有効期限切れが近いか否かの判定において有効期限切れが近いと判定された場合（Ｓ１４でＹＥＳ）、あるいは電子証明書の有無の判定において電子証明書がないと判定された場合（Ｓ１２でＮＯ）、リーダライタ２０は、公開鍵と秘密鍵の鍵ペアを生成する（Ｓ１６）。次に、リーダライタ２０は、証明書生成アプリケーション起動コマンドをＩＣカード３０に送信する（Ｓ１８）。
【００４７】
図１０は、リーダライタ２０とＩＣカード３０との間で送受領されるデータのフォーマット５０を示す図である。データフォーマット５０に示すように、ヘッダは、クラスＣＬＡ、命令バイトＩＮＳ、パラメータバイトＰ１、Ｐ２で構成されている。ヘッダに続く本体は、データＤａｔａ、データＤａｔａの前後に付されたＬｃフィールド、Ｌｅフィールドで構成されている。Ｌｃフィールドは、命令パートとしてＩＣカード３０に送るバイト長を表す。Ｌｅフィールドは、ＩＣカード３０から送り返されるレスポンスのバイト長を表す。公開鍵や電子証明書は、本体のデータに入れて送信される。
【００４８】
ＩＣカード３０は、リーダライタ２０から送信された証明書生成アプリケーション起動コマンドを受領すると、メモリ３２の証明書生成アプリケーション４０を起動する（Ｓ２２）。続いて、リーダライタ２０は、ステップＳ１６で生成した公開鍵をＩＣカード３０に送信する（Ｓ２４）。ＩＣカード３０は、リーダライタ２０から送信された公開鍵を受領すると（Ｓ２６）、受領した公開鍵を用いて電子証明書を生成する（Ｓ２８）。具体的には、上記したように、ＩＣカード３０は、受領した公開鍵と証明書情報とを、ＩＣカード３０の秘密鍵を用いて暗号化して、公開鍵の電子署名を生成し、公開鍵と証明書情報と電子署名データとで構成する電子署名を含む電子証明書（図２参照）を生成する。
【００４９】
ＩＣカード３０は、生成した電子証明書をリーダライタ２０に送信する（Ｓ３０）。リーダライタ２０は、ＩＣカード３０から受領した電子証明書を受領し（Ｓ３２）、受領した電子証明書をメモリ２２に記憶する（Ｓ３４）。この際、リーダライタ２０は、メモリ２２に記憶されている古い電子証明書を破棄してもよい。
【００５０】
リーダライタ２０は、新しい電子証明書を保存した後、他のアプリケーション処理に移行する。リーダライタ２０は、ＩＣカード３０に他のアプリケーション起動コマンドを送信する（Ｓ３６）。ＩＣカード３０は、他のアプリケーション起動コマンドを受領し（Ｓ３８）、他のアプリケーションを実行する。
【００５１】
図９は、リーダライタ２０からアプリケーション起動コマンドを受領したときのＩＣカード３０の動作を示す図である。ＩＣカード３０は、リーダライタ２０からコマンドを受領すると（Ｓ４０）、受領したコマンドが証明書生成アプリケーション起動コマンドであるか否かを判定する（Ｓ４２）。証明書生成アプリケーション起動コマンドである場合には（Ｓ４２でＹＥＳ）、ＩＣカード３０は、証明書生成アプリケーションを起動する（Ｓ４４）。次に、ＩＣカード３０は、リーダライタ２０から公開鍵を受領すると（Ｓ４６）、受領した公開鍵等を用いて電子証明書を生成し（Ｓ４８）、生成した電子証明書をリーダライタ２０に送信する（Ｓ５０）。
【００５２】
ＩＣカード３０が受領したコマンドが証明書生成アプリケーション起動コマンドでない場合（Ｓ４２でＮＯ）、ＩＣカード３０は、受領したコマンドで指定されたアプリケーションを起動し（Ｓ５２）、アプリケーション処理を行う（Ｓ５４）。
以上、本実施の形態のデータ処理システムおよび電子証明書の生成について説明した。
【００５３】
本実施の形態のデータ処理システム１では、電子証明書生成用のＩＣカード３０を検出したときに、リーダライタ２０の公開鍵をＩＣカード３０に送信し、ＩＣカード３０にて電子証明書を生成するので、ＩＣカード３０によって署名された電子証明書２８をリーダライタ２０に保存することができる。この電子証明書２８を用いることにより、データ処理装置１０はリーダライタ２０を認証できると共に、リーダライタ２０とデータ処理装置１０との間のＳＳＬ通信を行うことができる。
【００５４】
また、本実施の形態のデータ処理システム１は、リーダライタ２０が有する既存の電子証明書２８の期限切れが近づいたときに、公開鍵をＩＣカード３０に送信し、新しい電子証明書２８を生成するので、ユーザが意識しなくても電子証明書２８を継続的に保持することができる。
【００５５】
また、本実施の形態のデータ処理システム１では、ＩＣカード３０は、証明書生成アプリケーション４０に加えて、ログ取得アプリケーション３８、設定更新アプリケーション３９を有しているので、ＩＣカード３０によってこれらのアプリケーションを実行しようとするときに、自動的に電子証明書が設定されるので、ユーザが意識しなくても電子証明書を設定できる。
【００５６】
また、本実施の形態のデータ処理システム１では、電子証明書２８が存在しない場合に、電子証明書２８の生成を行なうので、リーダライタ２０にあらかじめ電子証明書２８を設定しておく必要がない。
【００５７】
以上、本発明のデータ処理システムおよび電子証明書の生成方法について、実施の形態を挙げて詳細に説明したが、本発明は上記した実施の形態に限定されるものではない。
【００５８】
上記した実施の形態では、電子証明書の有効期限切れが近い場合に、リーダライタ２０は鍵ペアを生成し、ＩＣカード３０にて電子証明書を生成する例について説明したが、電子証明書の有効期限が切れている場合に、新たな電子証明書を生成してもよい。これにより、有効期限切れが近い時期に、電子証明書生成用のＩＣカード３０がリーダライタ２０にアクセスせずに、電子証明書の有効期限が切れてしまった場合にも、リーダライタ２０に電子証明書を設定できる。また、公開鍵、秘密鍵のペアを作成する時期を、証明証の有効期限と連動させると、常時、鍵を作成する場合よりも安全性が高めることができる。また公開鍵、秘密鍵の作成、証明証の作成をセキュアな構造のチップ内に設けるほうがより好ましい形態である。
【００５９】
また、上記した実施の形態では、電子証明書２８を生成するＩＣカード３０および生成された電子証明書２８を保存するリーダライタ２０の構成および動作を中心に説明したが、上記したＩＣカード３０およびリーダライタ２０を実現するためのプログラムも本発明の範囲に含まれる。
【産業上の利用可能性】
【００６０】
本発明によれば、カードによって署名された電子証明書を生成することができるというすぐれた効果を有し、リーダライタとデータ処理装置との間でセキュアな通信を必要とするリーダライタを用いた決済システム等に適用することができる。
【図面の簡単な説明】
【００６１】
【図１】本実施の形態のデータ処理システムの構成を示す図
【図２】電子証明書のフォーマットの例を示す図
【図３】データ処理装置の構成を示す図
【図４】リーダライタの構成を示す図
【図５】ＩＣカードの構成を示す図
【図６】ＩＣカードのメモリの構成を示す図
【図７】電子証明書を生成する動作を概略的に示す図
【図８】データ処理システムにて電子証明書を生成する動作を示す図
【図９】アプリケーションコマンドを受領したときのＩＣカードの動作を示す図
【図１０】リーダライタとＩＣカードとの間で送受領されるデータのフォーマットを示す図
【符号の説明】
【００６２】
１  データ処理システム
１０  データ処理装置
１１  ＣＰＵ
１２  メモリ
１３  ネットワーク通信部
１４  データベース
１５  電子証明書
２０  リーダライタ
２１  ＣＰＵ
２２  メモリ
２３  暗号処理部
２４  ネットワーク通信部
２５  コマンド生成部
２６  鍵生成部
２７  カード通信部
２８  電子証明書
２９  鍵情報
３０  ＩＣカード
３１  ＣＰＵ
３２  メモリ
３３  暗号処理部
３４  リーダライタ通信部
３５  電力発生部
３６  鍵情報
３７  カードＯＳ
３８  ログ取得アプリケーション
３９  設定更新アプリケーション
４０  証明書生成アプリケーション
【図１】
2008278086.tif 000003
【図２】
2008278086.tif 000004
【図３】
2008278086.tif 000005
【図５】
2008278086.tif 000006
【図６】
2008278086.tif 000007
【図７】
2008278086.tif 000008
【図９】
2008278086.tif 000009
【図１０】
2008278086.tif 000010
【図４】
2008278086.tif 000011
【図８】
2008278086.tif 000012