説明

データ処理装置、その方法およびそのプログラム

【課題】複数の認証先(ICカード)との間で認証を行う場合に、一部の認
証先が保持する鍵データの秘匿性が失われた場合でも、その他の認証先で認証のセキュリティを保ことができるデータ処理装置を提供する。
【解決手段】鍵生成部34が認証先としてのICカード10bから受けたI
Cカード10bに固有の識別データIDMを基に、ICカード10bに固有の個別鍵データK1を生成する。カード処理部32は、当該個別鍵データK1を基に認証先としての複数のICカードとの間で相互認証を行う。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、認証先との間で鍵データを用いた認証を行うデータ処理装置、その方法およびプログラムに関する。
【背景技術】
【0002】
例えば、IC(Integrated Circuit)カードなどを用いて種々のサービスを提供する場合に、ICカードと認証装置との間で共通の鍵データを保持し、その鍵データを用いて認証を行うシステムがある。
このようなシステムでは、従来では、サービス提供元が発行する複数のICカードの各々に当該複数のICカード間で共通の(同じ)鍵データを記憶している。
【0003】
しかしながら、上述した従来のシステムでは、一部のICカードにおいて当該ICカードに記憶された鍵データの秘匿性が失われると、全てのICカードでセキュリティが保てなくなるという問題がある。
また、その対応策として、複数のICカードの全てについて、外部に漏れた鍵データを新たな鍵データで構成する必要が生じ、手間がかかるという問題もある。
そこで、そのような問題を克服すべく、たとえば、特開平9−319845号公報(特許文献1)、”ICカードのセキュリティメカニズムに関する考察〜セキュリティ環境〜,コンピュータセキュリティシンポジウム2000, 情報処理学会シンポジウムシリーズ,Vol.2000,No.12, 第 187〜192 頁,2000 年10月26日,CSDB 番号200200121027" (非特許文献1)などに、種々の提案がなされている。
【特許文献1】特開平9−319845号公報
【非特許文献1】”ICカードのセキュリティメカニズムに関する考察〜セキュリティ環境〜,コンピュータセキュリティシンポジウム2000, 情報処理学会シンポジウムシリーズ,Vol.2000,No.12, 第187 〜192 頁,2000 年10月26日,CSDB 番号200200121027”
【発明の開示】
【発明が解決しようとする課題】
【0004】
しかしながら、上述した技術でも十分ではなく、さらに改善する必要がある。
本発明はかかる事情に鑑みてなされたものであり、その目的は、複数の認証先(ICカード)との間で鍵データを基に認証を行う場合に、一部の認証先が保持する鍵データの秘匿性が失われた場合でも、それ以外の認証先で認証のセキュリティを保つことができるデータ処理装置、および、その方法を提供することを目的とする。
【課題を解決するための手段】
【0005】
上記の目的を達成するため、第1の発明のデータ処理装置は、認証先から受けた当該認証先に固有の固有データを基に、当該認証先に固有の鍵データを生成する鍵生成手段と、前記鍵生成手段が生成した鍵データを基に前記認証先との間で認証を行う認証手段とを有する。
【0006】
第1の発明のデータ処理装置の作用は以下のようになる。
鍵生成手段が、認証先から受けた当該認証先に固有の固有データを基に、当該認証先に固有の鍵データを生成する。
次に、認証手段が、前記鍵生成手段が生成した鍵データを基に前記認証先との間で認証を行う。
【0007】
第1の発明のデータ処理装置は、好ましくは、前記鍵生成手段は、前記認証の後に行われる複数の処理内容のそれぞれに対応して規定された異なる複数の鍵生成アルゴリズムのうち、指定された処理内容に対応した前記鍵生成アルゴリズムを選択し、当該選択した鍵生成アルゴリズムを基に、当該認証先に固有の前記鍵データを生成する。
また、第1の発明のデータ処理装置は、好ましくは、複数の前記認証先で共用される第1の鍵データを保持する鍵管理手段をさらに有し、前記認証手段は、前記鍵管理手段が保持する前記第1の鍵データを用いて前記認証先との間で第1の認証を行い、前記鍵生成手段が生成した第2の前記鍵データを用いて前記認証先との間で第2の認証を行う。
【0008】
第2の発明のデータ処理装置は、認証先の正当性を認証により確認した後に、前記認証先と連携して処理を行う認証手段と、複数の前記認証先で共用される固定鍵データを保持し、前記認証先からの第1の要求に対応する鍵データを前記認証手段に提供する鍵管理手段と、前記鍵管理手段からの第2の要求に応じて、前記認証先に固有の固有データを基に当該認証先に固有の個別鍵データを生成し、当該個別鍵データを前記鍵管理手段に提供する鍵生成手段とを有し、前記鍵管理手段は、前記第1の要求に前記固定鍵データが対応付けられている場合に、前記保持する固定鍵データを前記認証手段に提供し、前記第1の要求に前記個別鍵データが対応付けられている場合に、前記認証手段を介して前記認証先から受けた当該認証先に固有の固有データを前記第2の要求と関連付けて前記鍵生成手段に出力し、前記第2の要求に応じて前記鍵生成手段から受けた前記個別鍵データを前記認証手段に提供し、前記認証手段は、前記鍵管理手段から受けた前記固定鍵データまたは前記個別鍵データを基に前記認証を行う。
【0009】
第2の発明のデータ処理装置の作用は以下のようになる。
認証手段が、鍵管理手段に第1の要求を出す。
そして、前記鍵管理手段は、前記第1の要求に前記固定鍵データが対応付けられている場合に、前記保持する固定鍵データを前記認証手段に提供する。
そして、前記認証手段は、前記認証手段から受けた前記鍵データを基に認証先と認証を行う。
また、前記鍵管理手段は、前記第1の要求に前記個別鍵データが対応付けられている場合に、前記認証手段を介して前記認証先から受けた当該認証先に固有の固有データを第2の要求と関連付けて前記鍵生成手段に出力する。
前記鍵生成手段は、前記第2の要求に応じて、前記固有データを基に個別鍵データを生成し、これを前記鍵管理手段に提供する。
そして、前記鍵管理手段は、前記鍵生成手段から受けた前記個別鍵データを前記認証手段に提供する。
そして、前記認証手段は、前記鍵管理手段から受けた前記鍵データを基に認証先と認証を行う。
【0010】
第3の発明のデータ処理方法は、認証先から受けた当該認証先に固有の固有データを基に、当該認証先に固有の鍵データを生成する第1の工程と、前記第1の工程で生成した鍵データを基に前記認証先との間で通信を行って認証を行う第2の工程とを有する。
また第4の発明のプログラムは、データ処理装置によって実行されるプログラムであって、認証先から受けた当該認証先に固有の固有データを基に、当該認証先に固有の鍵データを生成する第1の手順と、前記第1の手順で生成した鍵データを基に前記認証先との間で通信を行って認証を行う第2の手順とを有する。
【発明の効果】
【0011】
本発明によれば、複数の認証先との間で認証を行う場合に、一部の認証先が保持する鍵データの秘匿性が失われた場合でも、それ以外の認証先で認証のセキュリティを保つことができる。
【発明を実施するための最良の形態】
【0012】
以下、本発明の実施形態に係わるカードシステムについて説明する。
図1は、本実施形態のカードシステム1の構成図である。
図1に示すように、カードシステム1は、例えば、R/W(Reader/Writer) 11を介してICカード10のIC(Integrated Circuit)15とSAM(Secure Application Module) 12とが認証を行った後に、連携して所定のサービスに関する処理を行う。
ここで、SAM12が本発明のデータ処理装置に対応し、IC15が本発明の認証先に対応している。
また、管理装置13は、SAM12とIC15の間の相互認証に用いられる鍵データ等を格納した鍵パッケージKPをSAM12に登録する。
また、SAM12の管理者、例えば、ICカード10を利用した所定のサービスの提供者は、複数のユーザの各々にICカード10を発行する。
【0013】
IC15は、後述するように、SAM12を利用してIC15のユーザが受ける種々のサービスに関するデータおよびプログラムのファイルデータを記憶しており、当該ファイルデータを用いたサービスに利用権限が設定されている。具体的には、IC15とSAM12とが指定されたサービスに対応付けられた鍵データを基に相互認証を行い、お互いの正当性を確認したことを条件に、IC15とSAM12とが連携して上記サービスに係わる処理を行う。
本実施形態では、上記複数のユーザの各々に発行されたICカード10には、上記認証に用いられる鍵データの一部として、個々のICカード10に固有の鍵データ(本発明の鍵データまたは個別鍵データ)が割り当てられている。
そして、SAM12は、ICカード10から当該ICカード10の固有データ、例えば、製造時にICカード10に固有に割り当てられたシリアル番号などの識別データIDMを入力し、この識別データIDMを基に所定のアルゴリズムで認証に用いる上記鍵データを生成する。
【0014】
以下、図1に示す各構成要素について説明する。
〔IC15〕
図2は、図1に示すICカード10に内蔵されたIC15の構成図である。
図2に示すように、IC15は、例えば、インタフェース21、メモリ22およびCPU23を有し、これらが内部バス20を介して接続されている。
インタフェース21は、R/W11を介してSAM12との間でデータの授受を行う。
メモリ22は、SAM12を利用してIC15のユーザが受ける種々のサービスに関する処理に用いられるデータおよびプログラムのファイルデータを記憶している。
また、メモリ22は、上記サービスに関する処理を行う前にSAM12との間の認証に用いられる種々の鍵データを記憶している。
また、メモリ22は、個々のICカード10に固有の識別データIDMを記憶している。
【0015】
なお、SAM12は、例えば、同じ機種のSAM12に共通して割り当てられたシステムコードに対応付けられた鍵データを基に相互認証を行い、当該相互認証により互いの正当性が認められたことを条件に、IC15に対してのアクセスが許可される。
さらに、メモリ22内で種々のサービスのファイルデータは、それぞれ階層構造を有するフォルダであるエリア内に格納されている。
SAM12は、メモリ22内のエリアのエリアコードに対応付けられた鍵データを基に相互認証を行い、当該相互認証により互いの正当性が認められたことを条件に、当該エリアに対してのアクセスが許可される。
さらに、SAM12は、エリア内に記憶されたファイルデータのサービスコードに対応付けられた鍵データを基に相互認証を行い、当該相互認証により互いの正当性が認められたことを条件に、当該ファイルデータに対してのアクセスが許可される。
【0016】
本実施形態では、図3に示すように、IC15に関して上述したように規定さた鍵データの種類には、固定鍵データと個別鍵データとが規定されている。
固定鍵データは、例えば、複数のICカード10のIC15の間で、ファイルシステム上の位置が同一であれば、その値が同じである鍵データである。すなわち、固定鍵データは、複数のICカード10のIC15で共用される鍵データである。
個別鍵データは、複数のICカード10のIC15の間で、ファイルシステム上の位置が同一であっても、その値が異なる鍵データである。すなわち、個別鍵データは、複数のICカード10のIC15の各々で固有の鍵データである。
なお、IC15は、上記鍵データが固定鍵データおよび個別鍵データのいずれであるかを特定することなく処理を行う。
【0017】
CPU23は、メモリ22から読み出したプログラム、並びに鍵データを基に、インタフェース21およびR/W11を介して、SAM12とデータの授受を行ってSAM12と相互認証を行う。
また、CPU23は、上記相互認証で互いの正当性を確認すると、SAM12と連携して、相互認証で用いた鍵データに対応付けられたサービスに関する処理を実行する。
また、CPU23は、例えば、ICカード10の発行時に、所定の権限が認証された管理者の操作に応じて、インタフェース21を介して暗号化された鍵パッケージを復号し、当該復号した鍵パッケージ内の上記鍵データをメモリ22に書き込む。
【0018】
〔SAM12〕
図4は、図1に示すSAM12の機能ブロック図である。
図4に示すように、SAM12は、例えば、インタフェース31、カード処理部32、鍵管理部33および鍵生成部34を有し、これらが内部バス30を介して接続されている。
ここで、カード処理部32が本発明の認証手段に対応し、鍵管理部33が本発明の鍵管理手段に対応し、鍵生成部34が本発明の鍵生成手段に対応している。
図4に示すカード処理部32、鍵管理部33および鍵生成部34の全てあるいは一部は、回路などのハードウェアで実現してもよいし、プログラム(本発明のプログラム)をCPU(本発明のデータ処理装置)で実行して実現してもよい。
【0019】
インタフェース31は、図1に示すR/W11を介してIC15との間でデータ授受を行う。
カード処理部32は、鍵管理部33から入力した鍵データを基に、インタフェース31を介してICカード10のIC15と相互認証を行い、当該相互認証により互いの正当性を確認すると、指定されたサービスに関する処理をIC15と連携して行う。カード処理部32は、アプリケーションプログラムを実行することで種々の機能を実現する。
カード処理部32は、鍵管理部33から入力した鍵データを基にIC15との間で相互認証を行う。
【0020】
鍵管理部33は、上記相互認証等に用いる鍵データを管理する鍵管理データKMDを保持している。
鍵管理データKMDは、図5に示すように、識別データSIDと、鍵データKと、鍵特性データKPDとを対応付けて示している。
識別データSIDは、SAM12がIC15と連携して行うサービス(ファイルデータ)および当該サービスに伴ってIC15にアクセスする記憶領域(フォルダ)等を識別するデータである。識別データSIDは、例えば、IC15から入力したシステムコード、エリアコードあるいはサービスコードである。
鍵データKは、上記サービスに先立って行うIC15との間の相互認証に用いる鍵データである。
鍵特性データKPDは、鍵データKが前述した固定鍵データおよび個別鍵データの何れであるかを示すデータである。
【0021】
鍵管理部33は、鍵管理データKMDの鍵特性データKPDを基に、カード処理部32からの鍵要求KREQ内の識別データSIDが固定鍵データに対応付けられている場合には、鍵管理データKMDから当該識別データSIDに対応する鍵データ(固定鍵データ)Kを読み出してカード処理部32に出力する。
一方、鍵管理部33は、鍵管理データKMDの鍵特性データKPDを基に、カード処理部32からの鍵要求KREQ内の識別データSIDが個別鍵データに対応付けられている場合には、カード処理部32に識別データIDMを要求し(図5中の要求IDM_REQ)、それに応じて入力した識別データIDMと、識別データSIDと、鍵管理データKMDから取り出した当該識別データSIDに対応する鍵データK(図5中の鍵データKO)とを鍵生成部34に出力する。
【0022】
鍵管理部33への鍵管理データKMDの設定は、例えば、以下のように行われる。
すなわち、図1に示す管理装置13が、図6に示すように、鍵管理データKMDを設定用マスター鍵データKPMで暗号化した鍵パッケージデータKPを生成し、これをSAM12に出力する。
SAM12は、インタフェース31を介して入力した鍵パッケージデータKPを、図4に示す鍵管理部33あるいは図示しない復号部において、設定用マスター鍵データKPMを用いて復号して鍵管理データKMDを生成し、これを保持する。
ここで、鍵管理部33への鍵管理データKMDの設定をSAM12を用いたサービスを提供する事業者が行うようにすることで、当該事業者が鍵管理をセキュアな状態で、しかも高い自由度で行うことができる。
なお、鍵管理データKMD内に格納された個別鍵の生成原となる鍵データKOは、個別鍵データKIそのものではないので、鍵管理データKMDの秘匿性が失われた場合でも、個別鍵データKI自体の秘匿性は失われない。
【0023】
鍵生成部34は、マスター鍵データKMと、鍵管理部33から入力した識別データIDMと、識別データSIDと、鍵データK(KO)とを基に、個別鍵生成プログラムKPRGを実行して鍵データ(個別鍵データ)KIを生成し、これを鍵管理部33に出力する。
鍵管理部33は、鍵生成部34から入力した鍵データKIをカード処理部32に出力する。
鍵生成部34は、例えば、図7に示す手順で鍵データKIを生成する。
図7に示す各手順は、個別鍵生成プログラムKPRGに記述されている。
以下、図7に示す各ステップを説明する。
ステップST11:
鍵生成部34は、鍵管理部33から、識別データIDMと、識別データSIDと、鍵データK(KO)とを入力する。
ステップST12:
鍵生成部34は、識別データSIDと、識別データIDMと、マスター鍵データKMとを加算してデータXを生成する。
ステップST13:
鍵生成部34は、鍵データK(KO)を、データXの値分だけ右をローテートシフトして個別鍵データKIを生成する。
ステップST14:
鍵生成部34は、ステップST13で生成した個別鍵データKIを鍵管理部33に出力する。
【0024】
なお、鍵生成部34が鍵データKIの生成に用いる個別鍵生成プログラムKPRGとして、例えば、IC15との間の処理内容毎、例えば処理対象のファイルシステム上での位置毎、例えばエリアコード毎に異なるアルゴリズムのプログラムを用意し、指定された識別データSIDに対応するプログラムを選択して実行してもよい。
また、鍵生成部34は、マスター鍵データKMを用いずに個別鍵データKIを生成してもよい。
また、個別鍵データの図7に示す生成手順は一例であり、本発明はこれに限定されるものではない。
【0025】
このように、鍵生成部34では、マスター鍵データKMの他に、識別データIDMと、識別データSIDと、鍵データK(KO)とを用いて個別鍵データを生成することで、これらのデータに鍵生成に関してマスター鍵データと同等の役割を持たせることができる。そのため、鍵管理データKMDの設定に関する権限を有する事業者等が認証に用いる鍵データに関する設定を自由に変更させることができる。
また、上述したように、ファイルシステム上での位置等を基に、個別鍵生成プログラムKPRGが異なるアルゴリズムを基に個別鍵データを生成することで、よりセキュリティを高めることができる。すなわち、一部のエリア・サービス用のロジックが漏洩した場合でも、他のエリア・サービスのセキュリティを保つことができる。
【0026】
以下、図1に示すカードシステム1の動作例を説明する。
〔第1の動作例〕
当該動作例では、SAM12に鍵管理データKMDを設定する場合を説明する。
図8は、当該動作例を説明するためのフローチャートである。
ステップST21:
図1に示す管理装置13が、図6に示すように、鍵管理データKMDを設定用マスター鍵データKPMで暗号化した鍵パッケージデータKPを生成し、これをSAM12に出力する。
ステップST22:
SAM12は、インタフェース31を介して入力した鍵パッケージデータKPを、図4に示す鍵管理部33あるいは図示しない復号部において、設定用マスター鍵データKPMを用いて復号して鍵管理データKMDを生成する。
ステップST23:
鍵管理部33は、ステップST22で生成した鍵管理データKMDを保持する。
【0027】
〔第2の動作例〕
当該動作例では、図5を基にICカード10bのIC15と、SAM12との間でサービスに関する処理を行う場合の動作例を説明する。
図9および図10は、当該動作例を説明するためのフローチャートである。
ステップST31:
ユーザが図1に示すR/W11にICカード10を装着し、例えば、R/W11に設けられた操作部を用いて自らが希望するサービスを指定する。なお、当該サービスの指定は、IC15あるいはSAM12が自動的に行ってもよい。
これにより、IC15からSAM12に、指定されたサービスの識別データSIDと、IC15のメモリ22から読み出された識別データIDMとがSAM12に出力される。
【0028】
ステップST32:
カード処理部32は、ステップST31で入力した識別データSIDを含む鍵要求KREQを鍵管理部33に出力する。
ステップST33:
鍵管理部33は、鍵管理データKMDを参照し、ステップST22で入力した鍵要求KREQに含まれる識別データSIDに対応付けられた鍵データKが、個別鍵および固定鍵の何れであるかを特定する。
ステップST34:
鍵管理部33は、ステップST33で固定鍵であると特定した場合にステップST35に進み、個別鍵であると特定した場合にステップST38に進む。
【0029】
ステップST35:
鍵管理部33は、鍵管理データKMDを参照して、ステップST32で入力した識別データSIDに対応する鍵データ(固定鍵データ)を得る。
ステップST36:
鍵管理部33は、ステップST35で得た鍵データ、あるいは後述するステップST42で鍵生成部34から入力した鍵データをカード処理部32に出力する。
【0030】
ステップST37:
カード処理部32は、ステップST36で入力した鍵データを基に、IC15との間で相互認証を行い、互いの正当性を確認すると、ステップST31で入力した識別データSIDに対応するサービス処理をIC15と連携して行う。
【0031】
ステップST38:
鍵管理部33は、ステップST34で個別鍵であると特定された場合に、カード処理部32に識別データIDMを要求する要求IDM_REQを出力する。
ステップST39:
カード処理部32は、ステップST38で入力した要求IDM_REQに応じて、ステップST31でIC15から入力した識別データIDMを鍵管理部33に出力する。
ステップST40:
鍵管理部33は、鍵管理データKMDから識別データSIDに対応する鍵データKOを読み出す。
そして、鍵管理部33は、鍵データKOと、ステップST39で入力した識別データIDMと、ステップST32で入力した識別データSIDとを鍵生成部34に出力する。
【0032】
ステップST41:
鍵生成部34は、図7を用いて説明した手順で、ステップST33で入力した
鍵データ等を用いて、個別鍵データKIを生成する。
ステップST42:
鍵生成部34は、ステップST41で入力した個別鍵データKIを鍵管理部33に出力する。
【0033】
図9および図10を基に説明した上述したカードシステム1の動作は、例えば、個別鍵データに対応付けられた規定された発券サービスに適用される。
ユーザがR/W11を操作して発券サービスを指定すると、当該発券サービスに対応した識別データSIDがSAM12に出力される。
SAM12では、鍵管理データKMDにおいて当該発券サービスの識別データSIDが例えば個別鍵を示す鍵特性データKPDと対応付けられているので、鍵管理部33は鍵生成部34に個別鍵データKIを生成させる。
そして、カード処理部32は、当該生成された個別鍵データKIを基にIC15との間で相互認証を行う。
そして、カード処理部32は、相互認証でIC15の正当性を確認すると、必要に応じて鍵管理データKMD内の固定鍵データを用いて発券データを暗号化してIC15に出力する。
【0034】
以上説明したように、カードシステム1では、SAM12は、IC15との間でのサービス処理に先立って、IC15から受けたICカード10(IC15)に固有の識別データIDMを基に、当該IC15に固有の個別鍵データKIを生成し、個別鍵データKIを基にIC15との間で相互認証を行う。
そのため、複数のICカード10のうち一部のICカード10の個別鍵データKIの秘匿性が失われた場合でも、他のICカード10の個別鍵データの秘匿性は失われず、セキュリティを高めることができる。
【0035】
また、カードシステム1によれば、サービス等を識別する識別データSIDをIC15からSAM12に出力し、SAM12において識別データSIDを基に個別鍵生成のアルゴリズムを切り換えるため、一部のアルゴリズムの秘匿性が失われた場合での、その他のアルゴリズムを基にした個別鍵データの秘匿性を保つことができる。
【0036】
また、カードシステム1によれば、サービス等を識別する識別データSIDをIC15からSAM12に出力し、SAM12において識別データSIDを基に認証に用いる鍵データが個別鍵および固定鍵のいずれであるかを判断するため、IC15では、認証に用いる鍵データが個別鍵および固定鍵のいずれであるかを意識せずに処理を行うことができる。
【0037】
また、カードシステム1によれば、個別鍵および固定鍵に対応した処理の切り換えを鍵管理部33が行うため、カード処理部32は、認証に用いる鍵データが個別鍵および固定鍵のいずれであるかを特定せずに処理を行うことができる。そのため、カード処理部32の開発に伴う負担を軽減できると共に、個別鍵を用いた認証に関する情報がカード処理部32の開発者に漏れることを防止できる。
【0038】
また、カードシステム1によれば、鍵管理データKMDの鍵特定データKPDにおいて、全ての鍵データについてその特性を固定鍵とすることで、固定鍵のみを用いるシステムと互換性をとることができる。
【0039】
また、カードシステム1によれば、カード処理部32の動作とは独立して、鍵管理部33において鍵管理データKMDを基に個別鍵データに係わる処理を行うため、個別鍵データに関する情報を、カード処理部32のアプリケーションプログラムの開発者に知られないようにすることができる。すなわち、個別鍵データに関する情報を、鍵管理データKMD、並びに個別鍵生成プログラムKPRGの設定・開発者のみに閉じることができ、高いセキュリティを実現できる。
【0040】
カードシステム1によれば、SAM12は、上述したように識別データIDMを基に個別鍵データを生成することで、全てのICカード10の個別鍵データを記憶している必要がないため、小規模なメモリを用いて構成できる。
【0041】
本発明は上述した実施形態には限定されない。
例えば、本発明は、図11に示すように、カード処理部32aおよび鍵生成部34aを用い、鍵管理部33を用いないでSAM12aを構成してもよい。
この場合には、カード処理部32aは、ICカード10bのIC15から識別データIDM,SIDを入力し、これを鍵生成部34aに出力する。
鍵生成部34aは、カード処理部32aから入力した識別データIDM,SIDを用いて個別鍵データKIを生成し、これをカード処理部32aに出力する。
そして、カード処理部32aは、鍵生成部34aから入力した個別鍵データKIを基にIC15との間で相互認証を行う。
【0042】
また、上述した実施形態では、本発明の認証先としてICカード10のIC15を例示したが、認証先はコンピュータなどであってもよい。
【0043】
上述したように、本発明によれば、複数の認証先との間で認証を行う場合に、一部の認証先が保持する鍵データの秘匿性が失われた場合でも、それ以外の認証
先で認証のセキュリティを保つことができる。
【図面の簡単な説明】
【0044】
【図1】図1は、本発明の実施形態のカードシステムの構成図である。
【図2】図2は、図1に示すICカードに内蔵されたICの構成図である。
【図3】図3は、図1に示すIC内に規定された各種の鍵データを説明するための図である。
【図4】図4は、図1に示すSAMの機能ブロック図である。
【図5】図5は、図4に示すSAMの処理を説明するための図である。
【図6】図6は、図5に示すSAMへの鍵管理データの登録を説明するための図である。
【図7】図7は、図5に示す鍵生成部における個別鍵データの生成手順を説明するためのフローチャートである。
【図8】図8は、図5に示すSAMへの鍵管理データの登録の手順を説明するためのフローチャートである。
【図9】図9は、図5に示すICカードのICと、SAMとの間でサービスに関する処理を行う場合の動作例を説明するためのフローチャートである。
【図10】図10は、図5に示すICカードのICと、SAMとの間でサービスに関する処理を行う場合の動作例を説明するための図9の続きのフローチャートである。
【図11】図11は、本発明のカードシステムのSAMの変形例を説明するための図である。
【符号の説明】
【0045】
1…カードシステム、10…ICカード、11…R/W、12…SAM、13
円管理装置、15…IC、20…内部バス、21…インタフェース、22…メモ
リ、23…CPU、30…内部バス、31…インタフェース、32…カード処理
部、33…鍵管理部

【特許請求の範囲】
【請求項1】
認証先から受けた当該認証先に固有の固有データを基に、当該認証先に固有の鍵データを生成する鍵生成手段と、
前記鍵生成手段が生成した鍵データを基に前記認証先との間で認証を行う認証手段と
を有するデータ処理装置。
【請求項2】
前記鍵生成手段は、前記認証の後に行われる複数の処理内容のそれぞれに対応して規定された異なる複数の鍵生成アルゴリズムのうち、指定された処理内容に対応した前記鍵生成アルゴリズムを選択し、当該選択した鍵生成アルゴリズムを基に、当該認証先に固有の前記鍵データを生成する
請求項1に記載のデータ処理装置。
【請求項3】
前記認証手段は、前記鍵データを基に前記認証先との間の認証を行い、前記認証先との間で互いの正当性を認めると、前記鍵データに対応付けられた処理を前記認証先と連携して行う
請求項1に記載のデータ処理装置。
【請求項4】
複数の前記認証先で共用される第1の鍵データを保持する鍵管理手段
をさらに有し、
前記認証手段は、前記鍵管理手段が保持する前記第1の鍵データを用いて前記認証先との間で第1の認証を行い、前記鍵生成手段が生成した第2の前記鍵データを用いて前記認証先との間で第2の認証を行う
請求項1に記載のデータ処理装置。
【請求項5】
前記認証手段は、前記第1の認証により前記認証先の正当性を確認した後に前記認証先と連携して前記第1の鍵データに対応付けられた第1の処理を行い、前記第2の認証により前記認証先の正当性を確認した後に前記認証先と連携して前記第2の鍵データに対応付けられた第2の処理を行う
請求項4に記載のデータ処理装置。
【請求項6】
前記鍵管理手段は、前記第1の処理が複数の前記認証先で共用される鍵データを用いた認証を行うこと、並びに前記第2の処理が前記認証先に固有の鍵データを用いた認証を行うことを示す特性データを基に、前記鍵生成手段に前記第2の鍵データを生成させるか否かを決定する
請求項4に記載のデータ処理装置。
【請求項7】
前記鍵管理手段は、前記第2の認証に関連付けられた第3の鍵データを保持し、
前記鍵生成手段は、前記認証先から受けた固有データと前記鍵管理手段が保持する前記第3の鍵データとを基に、前記第2の鍵データを生成する
請求項4に記載のデータ処理装置。
【請求項8】
前記鍵管理手段は、前記認証先との間で行われる処理の識別データを、前記第3の鍵データと対応付けて保持し、
前記鍵管理手段は、指定された処理の前記識別データに対応付けられた前記第3の鍵データを前記鍵生成手段に提供する
請求項7に記載のデータ処理装置。
【請求項9】
前記認証手段は、前記認証先が保持するファイルデータに対応した処理に関する権限の有無を、前記鍵生成手段が生成した前記鍵データを基に前記認証先との間で認証する
請求項1に記載のデータ処理装置。
【請求項10】
前記認証先が、所定の階層構造を有するフォルダ内に前記ファイルデータを保持している場合に、
前記認証手段は、前記認証先の前記フォルダおよび前記ファイルデータの少なくとも一方に関するアクセス権限の有無を、前記鍵生成手段が生成した前記鍵データを基に前記認証先との間で認証する
請求項8に記載のデータ処理装置。
【請求項11】
認証先の正当性を認証により確認した後に、前記認証先と連携して処理を行う認証手段と、
複数の前記認証先で共用される固定鍵データを保持し、前記認証先からの第1の要求に対応する鍵データを前記認証手段に提供する鍵管理手段と、
前記鍵管理手段からの第2の要求に応じて、前記認証先に固有の固有データを基に当該認証先に固有の個別鍵データを生成し、当該個別鍵データを前記鍵管理手段に提供する鍵生成手段と
を有し、
前記鍵管理手段は、前記第1の要求に前記固定鍵データが対応付けられている場合に、前記保持する固定鍵データを前記認証手段に提供し、前記第1の要求に前記個別鍵データが対応付けられている場合に、前記認証手段を介して前記認証先から受けた当該認証先に固有の固有データを前記第2の要求と関連付けて前記鍵生成手段に出力し、前記第2の要求に応じて前記鍵生成手段から受けた前記個別鍵データを前記認証手段に提供し、
前記認証手段は、前記鍵管理手段から受けた前記固定鍵データまたは前記個別鍵データを基に前記認証を行う
データ処理装置。
【請求項12】
認証先から受けた当該認証先に固有の固有データを基に、当該認証先に固有の鍵データを生成する第1の工程と、
前記第1の工程で生成した鍵データを基に前記認証先との間で通信を行って認証を行う第2の工程と
を有するデータ処理方法。
【請求項13】
前記第1の工程は、前記認証の後に行われる複数の処理内容のそれぞれに対応して規定された異なる複数の鍵生成アルゴリズムのうち、指定された処理内容に対応した前記鍵生成アルゴリズムを選択し、当該選択した鍵生成アルゴリズムを基に、当該認証先に固有の前記鍵データを生成する
請求項12に記載のデータ処理方法。
【請求項14】
前記第2の工程で前記認証先との間で互いの正当性を認めると、前記鍵データに対応付けられた処理を前記認証先と連携して行う第3の工程
をさらに有する請求項12に記載のデータ処理方法。
【請求項15】
データ処理装置によって実行されるプログラムであって、
認証先から受けた当該認証先に固有の固有データを基に、当該認証先に固有の鍵データを生成する第1の手順と、
前記第1の手順で生成した鍵データを基に前記認証先との間で通信を行って認証を行う第2の手順と
を有するプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate


【公開番号】特開2008−99335(P2008−99335A)
【公開日】平成20年4月24日(2008.4.24)
【国際特許分類】
【出願番号】特願2008−831(P2008−831)
【出願日】平成20年1月7日(2008.1.7)
【分割の表示】特願2003−59793(P2003−59793)の分割
【原出願日】平成15年3月6日(2003.3.6)
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】