(57)【要約】【課題】  認証方式や認証用の鍵が異なるＩＣカードシステム間でもICカードの認証が可能なトークン認証方法及びシステムを提供することにある。【解決手段】  自システムに属するＩＣカードを他のシステムで認証可能とするために、自システム内のカード管理装置に、他のシステムに固有の認証プログラムを格納するとともに、他のシステムの認証用の鍵を格納し、必要に応じて該カード管理装置から該管理装置が管理するＩＣカードに、他のシステムに固有の認証プログラムをダウンロードするとともに、他のシステムの認証用の鍵を設定し、該認証プログラムと鍵を用いて認証のためのトークンを生成する【選択図】    図２
2007019824.tif 000002
【特許請求の範囲】
【請求項１】
認証方式や認証用の鍵が異なる少なくとも２つのＩＣカードシステム間でＩＣカードの認証を行う認証方法において、自システムに属するＩＣカードを他のシステムで認証可能とするために、自システム内のカード管理装置に、他のシステムに固有の認証プログラムを格納するとともに、他のシステムの認証用の鍵を格納し、必要に応じて該カード管理装置から該管理装置が管理するＩＣカードに、他のシステムに固有の認証プログラムをダウンロードするとともに、他のシステムの認証用の鍵を設定し、該認証プログラムと鍵を用いて認証のためのトークンを生成することを特徴とするトークン認証方法。
【請求項２】
自システム内のカード管理装置が他のシステムに固有のプログラムを格納する際に、自システム内の認証局は該プログラムの証明書を発行し、自システム内のカード管理装置は他のシステムに固有のプログラムを格納する際に前記プログラム証明書によりその正当性を認証することを特徴とする請求項１記載の方法。
【請求項３】
ＩＣカードは自システム内のカード管理装置から他のシステムに固有のプログラムをダウンロードする際に、前記プログラム証明書によりその正当性を認証することを特徴とする請求項２記載の方法。
【請求項４】
請求項１記載の方法を実施するトークン認証システムにおいて、各システム内のカード管理装置は、他のシステムに固有のトークン認証プログラムと認証用の鍵を格納する手段を具え、
該管理装置により管理されるＩＣカードは、必要に応じて該カード管理装置から他のシステムに固有の認証プログラムと認証用の鍵をダウンロードする手段と、ダウンロードした認証プログラムを認証用の鍵を用いて認証のためのトークンを生成する手段を具えることを特徴とするトークン認証システム。
【請求項５】
各システム内のカード管理装置が他のシステムに固有のプログラムを格納する際に、当該システム内の認証局は該プログラムの証明書を発行する手段を具え、当該カード管理装置は他のシステムに固有のプログラムを格納する際に該証明書によりその正当性を認証する手段を具えることを特徴とする請求項４記載のシステム。
【請求項６】
ＩＣカードは、自システム内のカード管理装置から他のシステムに国有のプログラムをダウンロードする際に、前記プログラム証明書によりその正当性を認証する手段を具えることを特徴とする請求項５記載のシステム。
【請求項７】
請求項１記載の方法を実行するためのコンピュータプログラムであって、自システム内のカード管理装置に、他のシステムに固有の認証プログラムを格納するとともに、他のシステムの認証用の鍵を格納し、必要に応じて該カード管理装置から該管理装置が管理するＩＣカードに、他のシステムに固有の認証プログラムをダウンロードするとともに、他のシステムの認証用の鍵を設定し、該認証プログラムと鍵を用いて認証のためのトークンを生成する手順を実行させることを特徴とするコンピュータプログラム。
【請求項８】
自システム内のカード管理装置が他のシステムに固有のプログラムを格納する際に、該システム内の認証局に、該プログラムの証明書を発行させ、カード管理装置が他のシステムに固有のプログラムを格納する際に、該カード管理装置に、前記証明書によりその正当性を認証させる手順を実行させることを特徴とする請求項７記載のコンピュータプログラム。
【請求項９】
ＩＣカードが自システム内のカード管理装置から他のシステムに固有のプログラムをダウンロードする際に、該ＩＣカードに、前記プログラム証明書によりその正当性を認証させる手順を実行させることを特徴とする請求項８記載のコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はＩＣカードシステムにおけるトークン認証方法及びシステムに関するものである。
【背景技術】
【０００２】
近年、公共、金融、通信、交通、医療の分野、そしてインターネット上の電子商取引等において、セキュリティ上安全なＩＣカードの利用が広まりつつある。従来のＩＣカードシステムでは、カード利用者に対し種々のサービスを安全且つ確実に提供するために、システム固有の認証方式を用いてＩＣカードを認証しており  〈例えば特許文献１参照）、認証方式の異なるシステムではＩＣカードの認証は行えず、異なるシステム間でのＩＣカードの相互利用はできなかった。また、同一の認証方式でも、各システムで認証に使用する鍵の登録認証局が異なると、認証を
行うことはできなかった。例えば、ＰＫＩ（公開鍵基盤）に基づく認証方式をとるシステムの場合、登録認証局が異なるシステムでは、あるシステムで有効な認証用の鍵は他のシステムでは無効であるため、あるシステムに所属するＩＣカードは他のシステムでは認証を行えず、異なるシステム間でＩＣカードを相互利用することができなかった。また、公開鍵暗号をベースとするので、暗号／署名演算に時間がかかることや、多数のシステム間でＩＣカードを相互利用しようとした場合には認証用の鍵やプログラムの格納容量が大きくなり、ＩＣカードでは実現できないという問題があった。
【０００３】
【特許文献１】特開２００１−０６９１４０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
本発明の目的は、認証方式や認証用の鍵が異なるＩＣカードシステム間でもＩＣカードの相互認証が可能なトークン認証方法及びシステムを提供することにある。
【課題を解決するための手段】
【０００５】
本発明は、認証方式や認証用の鍵が異なる少なくとも２つのＩＣカードシステム間でＩＣカードの認証を行う認証方法において、自システムに属するＩＣカードを他のシステムで認証可能とするために、自システム内のカード管理装置に、他のシステムに固有の認証プログラムを格納するとともに、他のシステムの認証用の鍵を格納し、必要に応じて該カード管理装置から該管理装置が管理するＩＣカードに、他のシステムに固有の認証プログラムをダウンロードするとともに、他のシステムの認証用の鍵を設定し、該認証プログラムと鍵を用いて認証のためのトークンを生成することを特徴とする。
【０００６】
本発明の認証方法では、更に、自システム内のカード管理装置が他のシステムに固有のトークンプログラムを格納する際に、該システム内の認証局は該トークンプログラムの証明書を発行するのが好ましい。これにより、カード管理装置は他のシステムに固有の認証プログラムを格納する際にこの証明書によりその正当性を認証することができる。また、ＩＣカードは自システム内のカード管理装置から他のシステムに固有の認証プログラムをダウンロードする際に、このプログラム証明書によりその正当性を認証することができる。
【０００７】
本発明のトークン認証方法を実施するシステムは、
各システム内のカード管理装置は、他のシステムに固有のトークン認証プログラムと認証用の鍵を格納する手段を具え、
該管理装置により管理されるＩＣカードは、必要に応じて該カード管理装置から他のシステムに固有の認証プログラムと認証用の鍵をダウンロードする手段と、ダウンロードした認証プログラムを認証用の鍵を用いて認証のためのトークンを生成する手段を具えることを特徴とする。
【０００８】
本発明の認証システムでは、更に、自システム内のカード管理装置が他のシステムに固有のプログラムを格納する際に、自システム内の認証局は該プログラムの証明書を発行する手段を具えるのが好ましい。
【０００９】
この場合、自システム内のカード管理装置には、他のシステムに固有のプログラムを格納する際に該プログラム証明書によりその正当性を認証する手段を設け、自システム内のＩＣカードには、自システム内のカード管理装置から他のシステムに固有のプログラムをダウンロードする際に、該プログラム証明書によりその正当性を認証する手段を設けるのが好ましい。
【００１０】
本発明の認証方法及びシステムによれば、自システムに属するＩＣカードが他のシステムに属するサービスを受けたい場合には、当該ＩＣカードは、必要に応じて当該ＩＣカードを管理するカード管理装置から他のシステムに固有の認証プログラムをダウンロードするとともに他のシステムの認証用の鍵を設定し、該認証プログラムと鍵を使用してトークンを生成し他のシステムにて認証することが可能となる。また、該認証プログラムはトークンを生成するものであるから、ＰＫＩベースの認証プログラムに比べてプログラムサイズを小さくすることが可能となり、メモリ容量に限界のあるＩＣカードに対して好適であるとともに、処理が軽く、高速処理が可能になる。尚、トークンは共通鍵に基づく方式のみならず、ハッシュやパスワードに基づく方式を用いてもよい。
【００１１】
更に、本発明の認証方法及びシステムでは、ダウンロードした認証プログラムは利用後に削除することにより、ＩＣカードの使用メモリ容量を削減することが可能となる。この認証プログラムの削除は、必要がなくなったとき、メモリ容量が足りなくなったとき、あるいは一定期間後に行うことができる。
【発明の効果】
【００１２】
以上説明したように、本発明によれば、ＰＫＩベースの認証方式を用いる認証システムのＩＣカードでも共通鍵ベースのトークン認証方式を用いる他の認証システムのカード管理装置の認証を受け、他のシステムのサービスを受けることができる。また、必要に応じ他のシステムに固有のトークンプログラムをダウンロードすればよく、トークンプログラムはＰＫＩベースの認証プログラムに比べてプログラムサイズが小さいので、メモリ容量に限界のあるＩＣカードに対して好適である。また、処理が軽く、高速処理が可能になる。
【発明を実施するための最良の形態】
【００１３】
図１は本発明のトークン認証方法を実施するシステムの構成図であり、Ｉはある組織または地域のＩＣカードシステム、IIは他の組織または地域のＩＣカードシステムである。システムＩおよびIIは認証方式が異なり、本例ではシステムＩはＰＫＩベースの認証方式を用い、システムIIは共通鍵ベースの認証方式を用いている。
【００１４】
図中、１００はシステムＩに属するＩＣカード、２００はシステムＩに属するＩＣカードを管理するカード管理装置であり、具体的には管理するＩＣカードにサービスを提供するカード発行装置やサービス提供装置であり、３００はシステムＩに属するＩＣカード１００やカード管理装置２００を登録管理する認証局である。４００はシステムIIに属するＩＣカード（図示せず）を管理するカード管理装置であり、具体的には管理するＩＣカードにサービスを提供するカード発行装置やサービス提供装置であり、本例ではシステムIIは共通鍵ベースの認証方式を用いているので、システムIIには認証局は存在しない。尚、本発明はＩＣカードシステムの認証方法に関するものであるから、図には、本発明の認証方法の理解に必要な構成しか示されていない点に注意されたい。
【００１５】
システムＩ内の認証局３００は、システムＩに属するカード管理装置２００やＩＣカード１００の公開鍵などを登録し管理する鍵管理部３１１と、登録した公開鍵証明書などを発行する証明書発行部３１２と、証明書検証部３１３と、格納部３１４を具える。カード管理装置２００は、認証局３００の鍵管理部３１１に登録された当該カード管理装置の公開鍵や当該管理装置が管理するＩＣカード１００の公開鍵や認証局３００の公開鍵を管理する鍵管理部２１１と、当該管理装置が管理するＩＣカード１００を認証するカード認証部２１２と、種々のプログラムを管理するプログラム管理部２１３を具え、プログラム管理部２１３はプログラム検証部２１４と格納部２１５を具える。
【００１６】
ＩＣカード１００は、認証局３００の鍵管理部３１１に登録されたカード管理装置２００やＩＣカード１００の公開鍵鍵や認証局の公開鍵などを管理する鍵管理部１１１と、システムＩ内のカード管理装置２００を認証する認証部１１２と、種々のプログラムを検証するプログラム検証部１１３と、種々のプログラムなどを格納する格納部１１４と、種々のプログラムを実行するプログラム実行部１１５とを具える。
従って、システムＩ内のＩＣカード１００とカード管理装置２００は、それぞれの認証部１１２、２１２でそれぞれの公開鍵を使ってＰＫＩベースの認証を行うことができる。
【００１７】
システムII内のカード管理装置４００は、プログラム管理部４１０とトークン認証部４２０を具える。プログラム管理部４１０は、鍵管理部４１１と、ププログラム検証部４１２と、格納部４１３と、プログラム識別情報管理部４１４と、ハッシュ演算部４１５とを具える。トークン認証部４２０は、トークン生成情報管理部４２１と、トークン生成情報管理部４２１で生成されるシステムIIの認証用の鍵（共通鍵）などを格納する格納部４２２と、トークン検証部４２３と、鍵管理部４２４と、認証情報生成部４２５とを具え、認証情報生成部４２５は乱数生成部４２６とタイマ４２７を具え、システムＩＩ内のＩＣカード（図示せず）と共通鍵ベースのトークン認証を行う。
【００１８】
従って、システムＩ内のＩＣカード１００とカード管理装置２００は、ＰＫＩベースの認証を行うことができ、システムII内のＩＣカード（図示せず）とカード管理装置４００は、共通鍵ベースのトークン認証を行うことができる。
しかし、システムI内のＩＣカード１００はシステムIIに固有の認証プログラム（トークンプログラム）を持たず、またシステムIIの認証用の鍵（共通鍵）を持たないので、システムII内のカード管理装置４００で認証されず、システムIIのサービスを受けることはできない。
【００１９】
本発明の方法では、この間題を解決するために、最初に、システムIIに固有のトークンプログラムをシステムＩの認証局３００に登録した後に、カード管理装置２００に格納する。尚、システムIIのカード管理装置４００は予めシステムＩの認証局３００の公開鍵を鍵管理部４１１に持っているものとする。
この手順の詳細を図２に示す。最初に、システムIIのカード管理装置４００は、プログラム管理部４１０内のプログラム識別情報管理部４１４にて、プログラム識別ＩＤを生成し、ハッシュ演算部４１５にてプログラムのハッシュ値を生成し、格納部４１３に格納した後、システムＩの認証局３００に送信する。
【００２０】
システムＩの認証局３００は、受信したプログラム識別情報を格納部３１４に格納し、受信した情報、システムＩの認証局識別情報、認証局の鍵情報とともに認証局の秘密鍵で署名を生成し、プログラム証明書を作成し、格納部３１４に格納（登録）した後、システムIIのカード管理装置４００に送信する。
【００２１】
システムIIのカード管理装置４００は、受信したプログラム証明書をプログラム管理部４１０にて鍵管理部４１１に格納してあるシステムＩの認証局の公開鍵によりプログラム証明書を検証し、格納部４１３に格納する。
【００２２】
次に、カード管理装置４００は、プログラム管理部４１０の格納部４１３より、トークンプログラム、プログラム識別情報、プログラム証明書を読み出すとともに、トークン認証部４２０のトーク生成情報管理部４２１にて、トークン生成情報（サービス識別ＩＤ、鍵ＩＤ、鍵）を生成し、格納部４２２に格納した後、トークンプログラム、プログラム識別情報、プログラム証明書と共にシステムＩのカード管理装置２００に送信する。
【００２３】
システムＩのカード管理装置２００は、受信したプログラム証明書をプログラム検証部２１４にてシステムＩの認証局の公開鍵で検証し、検証が正しければ、受信したトークンプログラム、プログラム識別情報、プログラム証明書、トークン生成情報（サービス識別ＩＤ、鍵ＩＤ、鍵）を格納部２１５に格納し、その結果をシステムIIのカード管理装置４００に通知する。
【００２４】
次に、本発明の方法では、必要に応じて、システムＩのカード管理装置２００に格納されたシステムIIに固有のトークンプログラムと鍵をシステムＩのＩＣカード１にダウンロードする。
【００２５】
この手順の詳細を図３に示す。先ず、カード管理装置２００とＩＣカード１００はそれぞれの認証部１１２、２１２でそれぞれの公開鍵を使って相互認証を行う。
【００２６】
この相互認証後に、カード管理装置２００はプログラム管理部２１３の格納部２１５に格納されているシステムIIに固有のトークンプログラム、プログラム識別情報、プログラム証明書、トークン生成情報（サービス識別ＩＤ、鍵ＩＤ、鍵）をＩＣカード１００に送る。
【００２７】
ＩＣカード１００は受信したプログラム証明書をプログラム検証部１１３で鍵管理部１１１に格納されている認証局３００の公開鍵で検証し、検証が正しければ、システムIIに固有のトークンプログラムとトークン生成情報（サービス識別ＩＤ、鍵ＩＤ、鍵）を格納部１１４にダウンロードする。
【００２８】
こうして、システムIIに固有のトークンプログラムと鍵がダウンロードされたシステムＩ内のＩＣカードはシステムII内のカード管理装置４００の認証を受けて特定のサービスを受けることができる。
【００２９】
この手順を図３に示す。システムII内のカード管理装置４００はトークン認証部４２０からトークンプログラム選択コマンドをシステムＩのＩＣカード１００に送る。ＩＣカード１００はこのコマンドに応答して選択されたトークンプログラムを格納部１１４よりプログラム実行部１１５に読み込む。
【００３０】
次に、システムIIのカード管理装置４００は、トークン認証部４２０の認証情報生成部４２５にて認証情報を生成し、ＩＣカード１００に送信する。この認証情報は、図示の例では認証情報生成部４２５内の乱数生成部４２６より発生される乱数とタイマ部４２７より発生される現在時間とで構成するが、これに限定されない。
【００３１】
システムＩのＩＣカード１００は、認証情報を受け取ると、格納部１１４より、プログラムロード時に受信格納されたトークン生成情報（サービス識別ＩＤ、鍵ＩＤ、鍵）をプログラム実行部１１５に読み込み、プログラム実行部１１５にて、受信した認証情報（乱数、時間情報）とサービスＩＤを読み込んだ鍵で暗号化し、サービス識別ＩＤ、鍵ＩＤを付加してトークンを生成し、システムIIのカード管理装置４００のトークン認証部４２０に送信する。
【００３２】
システムIIのカード管理装置４００のトークン認証部４２０は受信したサービス識別ＩＤをトークン生成情報管理部４２１にて検索し、格納部４２２に存在するかチェックを行い、あれば、受信した鍵ＩＤを鍵管理部４２４にて検索し、対応する鍵を格納部４２２よりトークン検証部４２３に読み込み、この鍵を用いて受信した暗号化情報を復号し、送信した乱数、時間情報、サービス識別ＩＤと一致するかチェックすることでトークン検証を行い、検証が正しければカード管理装置４００はサービスを開始する。
【００３３】
以上、本発明によるトークン認証方法及びシステムの構成及び処理手順を説明したが、図１に示す本発明のトークン認証システムを構成するＩＣカード、認証局、カード管理装置の種々の構成部はコンピュータにより実現され、図２〜図４に示す本発明のトークン認証方法の処理手順は認証局やカード管理装置やＩＣカードを構成するコンピュータにより実行され、本発明はこれらの処理手順を実行させるためのコンピュータプログラム及び該コンピュータプログラムを記録した記録媒体も本発明の範囲に含むものである。
【図面の簡単な説明】
【００３４】
【図１】本発明のトークン認証方法を実施するシステムの構成図である。
【図２】本発明のトークン認証方法においてシステムIIに固有のトークンプログラムをシステムＩの認証局に登録した後にカード管理装置にダウンロードする手順を示す図である。
【図３】本発明のトークン認証方法においてシステムIIに固有のトークンプログラムをシステムＩのカード管理装置からＩＣカードにダウンロードする手順を示す図である。
【図４】システムＩのＩＣカードをシステムIIで認証する手順を示す図である。
【符号の説明】
【００３５】
Ｉ  システム
II  システム
１００  ＩＣカード
２００  カード管理装置
３００  認証局
４００  カード管理装置
１１１  鍵管理部
１１２  認証部
１１３  プログラム検証部
１１４  格納部
１１５  プログラム実行部
２１１  鍵管理部
２１２  カード認証部
２１３  プログラム管理部
２１４  プログラム検証部
２１５  格納部
３１１  鍵管理部
３１２  証明書発行部
３１３  証明書検証部
３１４  格納部
４１０  プログラム管理部
４１１  鍵管理部
４１２  プログラム検証部
４１３  格納部
４１４  プログラム識別情報管理部
４１５  ハッシュ演算部
４２０  トークン認証部
４２１  トークン生成情報管理部
４２２  格納部
４２３  トークン検証部
４２５  認証情報生成部
【図１】
2007019824.tif 000003
【図２】
2007019824.tif 000004
【図３】
2007019824.tif 000005
【図４】
2007019824.tif 000006