JP5235460B2 - 端末、情報記憶媒体、サービス提供システム及びデータ更新方法 - Google Patents

端末、情報記憶媒体、サービス提供システム及びデータ更新方法 Download PDF

Info

Publication number
JP5235460B2
JP5235460B2 JP2008073029A JP2008073029A JP5235460B2 JP 5235460 B2 JP5235460 B2 JP 5235460B2 JP 2008073029 A JP2008073029 A JP 2008073029A JP 2008073029 A JP2008073029 A JP 2008073029A JP 5235460 B2 JP5235460 B2 JP 5235460B2
Authority
JP
Japan
Prior art keywords
information
unit
storage medium
information storage
protocol
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2008073029A
Other languages
English (en)
Other versions
JP2009230315A (ja
Inventor
宏樹 内山
克之 梅澤
健司 松本
清水  洋二
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2008073029A priority Critical patent/JP5235460B2/ja
Publication of JP2009230315A publication Critical patent/JP2009230315A/ja
Application granted granted Critical
Publication of JP5235460B2 publication Critical patent/JP5235460B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、情報記憶媒体で使用する制御データを更新する技術に関する。
情報記憶媒体、例えば、ICカードを用いて交通乗車券、クレジット決済、銀行キャッシュカード等のサービスを提供する際には、不正な端末や不正なICカードによる不正なサービスの享受を防ぐために、サービスを提供する端末とICカードとの間で機器認証を行う。
端末とICカード間の機器認証は、ICカード発行時に機器認証プロトコル(以降、プロトコルと記す)をICカード内に設定して、ICカード発行後は発行時に設定されたプロトコルに従って行われる。
そして、プロトコルに何らかの不具合があった場合や、プロトコルで使用している暗号アルゴリズムや鍵の脆弱性が発見された場合や、ICカードで利用するサービスの要件が変化した場合等には、ICカードを回収し、ICカード内のプロトコルコードを書き換えることにより、プロトコルの更新を実現していた。このような回収作業は、サービス提供者およびユーザに対して多大な時間と手間を必要とするため、ICカードに設定されたプロトコルの更新は容易ではなかった。
そこで、ICカード内のアプリケーションの一部を部分的に書き換え可能な技術が知られている(例えば、特許文献1参照)。特許文献1に記載された技術では、従来のようにICカード内のコードやデータを全部書き変えずにプロトコルの更新が実現できるため、更新に必要な時間を短縮し、また、プロトコルで使用する鍵データ等の引継ぎが容易になる。
特開2006−293706号公報
特許文献1に記載の技術は、ICカードに設定されたプロトコルの更新作業に伴う処理時間をアプリケーションの一部書き換えによって短縮することは可能であったが、ICカードに設定されたプロトコルの更新は、ICカードのユーザが意識的に実施しなければならず、不便であった。
そこで、本発明は、ICカードのユーザが意識的にプロトコルの更新手続きを行わずに、ICカードに設定されたプロトコルの更新を行うことのできる技術を提供することを目的とする。
以上の課題を解決するため、本発明は、端末と情報記憶媒体との間の認証処理を行う過程において、情報記憶媒体で使用する制御データ(プロトコルコード)を端末から情報記憶媒体に送信する。
例えば、本発明は、記憶部及び制御部を備える情報記憶媒体に対して、該情報記憶媒体が使用するプログラムを更新する更新プログラムを送信する端末であって、前記情報記憶媒体から、第1の認証情報と、前記更新プログラムのうち前記情報記憶媒体が保持する部分を特定するシーケンス情報とを受信する受信部と、前記情報記憶媒体との通信容量と、当該端末の認証に用いられる第2の認証情報のデータ量とに基づいて、前記情報記憶媒体への送信に用いるデータサイズである環境パラメータを取得するパラメータ取得部と、前記シーケンス情報と前記環境パラメータとに基づいて、前記情報記憶媒体が保持していない前記更新プログラムを前記データサイズに分割して分割更新プログラムを生成する分割部と、前記第1の認証情報に基づいて認証を行った前記情報記憶媒体に対して、前記第2の認証情報と、前記分割更新プログラムとを結合した第1のプロトコルコマンドを送信する送信部と、を備えること、を特徴とする。
以上のように、本発明によれば、ICカードのユーザが意識的にプロトコルの更新手続きを行わずに、ICカードに設定されたプロトコルの更新を行うことのできる技術を提供することができる。
図1は、本発明の一実施形態であるサービス提供システム100の概略図である。
図示するように、サービス提供システム100は、サービス提供者装置110A、110B(以下、各々の装置を区別しない場合には、サービス提供者装置110とする)と、端末130A、130B(以下、各々の端末を区別しない場合には、端末130とする)と、ICカード150と、を備え、サービス提供者装置110及び端末130は、ネットワーク170を介して、相互に情報を送受信することができるようにされている。
図2は、サービス提供者装置110の概略図である。
図示するように、サービス提供者装置110は、記憶部111と、制御部117と、入力部123と、出力部124と、通信部125と、を備える。
記憶部111は、環境パラメータ情報記憶領域112と、プロトコルコード記憶領域113と、更新バージョン管理情報記憶領域114と、鍵情報記憶領域115と、を備える。
環境パラメータ情報記憶領域112には、端末130と、プロトコルコードのバージョンと、の組み合わせ毎に、更新するプロトコルコードのうち、端末130からICカード150に一度に送信することのできるデータサイズを特定する情報が格納される。
例えば、このデータサイズは、端末130とICカード150との間の通信容量から、更新前のバージョンのプロトコルにおけるプロトコルコマンドのデータ量を差し引くことにより特定される。
なお、このデータサイズについては、プロトコルが更新される毎に、サービス提供者装置110のオペレータの指示に応じて特定し、本記憶領域114に格納される。
プロトコルコード記憶領域113には、各々のプロトコルを実行するために、ICカード150に設定するプロトコルコードが格納される。
なお、プロトコルコード記憶領域113には、各々のプロトコルにおける各々のバージョン毎に、プロトコルコードが格納される。
更新バージョン管理情報記憶領域114には、各々のプロトコルにおける各々のプロトコルコードの最新のバージョンを特定する情報が格納される。
鍵情報記憶領域115には、端末130との間で送受信する情報を暗号化するために使用される鍵を特定する情報が格納される。
制御部117は、サービス提供部118と、プロトコル更新処理部119と、コマンド生成部120と、送受信制御部121と、を備える。
サービス提供部118は、ICカード150に対しサービスを提供する処理を制御する。
プロトコル更新処理部119は、端末130との間で、プロトコルコードの更新を行う処理を制御する。
コマンド生成部120は、端末130を介して、ICカード150に対して送信するコマンドを生成する。
送受信制御部121は、後述する通信部125を介して情報を送受信する処理を制御する。
入力部123は、情報の入力を受け付ける。
出力部124は、情報を出力する。
通信部125は、ネットワーク170を介して情報を送受信するためのインターフェースである。
以上に記載したサービス提供者装置110は、例えば、図3(コンピュータ180の概略図)に示すような、CPU(Central Processing Unit)181と、メモリ182と、HDD(Hard Disk Drive)等の外部記憶装置183と、CD−ROM(Compact Disk Read Only Memory)やDVD−ROM(Digital Versatile Disk Read Only Memory)等の可搬性を有する記憶媒体184から情報を読み出す読取装置185と、キーボードやマウスなどの入力装置186と、ディスプレイなどの出力装置187と、通信ネットワークに接続するためのNIC(Network Interface Card)等の通信装置188と、を備えた一般的なコンピュータ180で実現できる。
例えば、記憶部111は、CPU181がメモリ182又は外部記憶装置183を利用することにより実現可能であり、制御部117は、外部記憶装置183に記憶されている所定のプログラムをメモリ182にロードしてCPU181で実行することで実現可能であり、入力部123は、CPU181が入力装置186を利用することで実現可能であり、出力部124は、CPU181が出力装置187を利用することで実現可能であり、通信部125は、CPU181が通信装置188を利用することで実現可能である。
この所定のプログラムは、読取装置185を介して記憶媒体184から、あるいは、通信装置188を介してネットワークから、外部記憶装置183にダウンロードされ、それから、メモリ182上にロードされてCPU181により実行されるようにしてもよい。また、読取装置185を介して記憶媒体184から、あるいは、通信装置188を介してネットワークから、メモリ182上に直接ロードされ、CPU181により実行されるようにしてもよい。
図4は、端末130の概略図である。
図示するように、端末130は、記憶部131と、制御部137と、入力部145と、出力部146と、第一の通信部147と、第二の通信部148と、を備える。
記憶部131は、データ記憶領域132と、プロトコルコード記憶領域133と、更新バージョン管理情報記憶領域134と、鍵情報記憶領域135と、を備える。
データ記憶領域132には、サービス提供者装置110から受信した環境パラメータが記憶される。
プロトコルコード記憶領域133には、サービス提供者装置110から受信した、各々のプロトコルにおける各々のバージョン毎のプロトコルコードが格納される。
更新バージョン管理情報記憶領域134には、ICカード150に搭載すべきプロトコルのバージョンを特定する情報が格納される。
鍵情報記憶領域135には、ICカード150との間で送受信する情報を暗号化するために使用される鍵を特定する情報が格納される。
制御部137は、プロトコル更新部138と、認証処理部139と、コマンド処理部140と、コマンド生成部141と、ICカードアクセス部142と、送受信制御部143と、を備える。
プロトコル更新部138は、サービス提供者装置110から更新するプロトコルコードを取得する処理を制御する。
認証処理部139は、ICカード150を認証する処理を制御する。
コマンド処理部140は、ICカード150から受信したコマンドに対応する処理を制御する。
コマンド生成部141は、ICカード150に送信するコマンドを生成する処理を制御する。
ICカードアクセス部142は、後述する第二の通信部148を介した情報の送受信を制御する。
送受信制御部143は、後述する第一の通信部147を介した情報の送受信を制御する。
入力部145は、情報の入力を受け付ける。
出力部146は、情報を出力する。
第一の通信部147は、ネットワーク170を介して情報を送受信するためのインターフェースである。
第二の通信部148は、ICカード150との間で情報を送受信するためのインターフェースである。
以上に記載した端末130は、例えば、図5(コンピュータ190の概略図)に示すような、CPU191と、メモリ192と、HDD等の外部記憶装置193と、CD−ROMやDVD−ROM等の可搬性を有する記憶媒体194から情報を読み出す読取装置195と、キーボードやマウスなどの入力装置196と、ディスプレイなどの出力装置197と、通信ネットワークに接続するためのNIC等の通信装置198と、ICカード150に対して情報を読み書きすることのできるリーダライタ199と、を備えたコンピュータ190で実現できる。
例えば、記憶部131は、CPU191がメモリ192又は外部記憶装置193を利用することにより実現可能であり、制御部137は、外部記憶装置193に記憶されている所定のプログラムをメモリ192にロードしてCPU191で実行することで実現可能であり、入力部145は、CPU191が入力装置196を利用することで実現可能であり、出力部146は、CPU191が出力装置197を利用することで実現可能であり、第一の通信部147は、CPU191が通信装置198を利用することで実現可能であり、第二の通信部148は、CPU191がリーダライタ199を利用することで実現可能である。
この所定のプログラムは、読取装置195を介して記憶媒体194から、あるいは、通信装置198を介してネットワークから、外部記憶装置193にダウンロードされ、それから、メモリ192上にロードされてCPU191により実行されるようにしてもよい。また、読取装置195を介して記憶媒体194から、あるいは、通信装置198を介してネットワークから、メモリ192上に直接ロードされ、CPU191により実行されるようにしてもよい。
図6は、ICカード150の概略図である。
図示するように、ICカード150は、記憶部151と、制御部158と、通信部165と、を備える。
記憶部151は、データ記憶領域152と、実行プロトコル情報記憶領153と、プロトコル情報記憶領域154と、プロトコル更新状況情報記憶領域155と、鍵情報記憶領域156と、を備える。
データ記憶領域152には、後述するサービスアプリケーション部160でサービスを提供するのに必要な情報が格納される。
実行プロトコル情報記憶領153には、ICカード150で実行されるプロトコルを特定する情報が格納される。
プロトコル情報記憶領域154には、端末130から受信したプロトコルコードが格納される。
プロトコル更新状況情報記憶領域155には、実行プロトコル情報記憶領域153に記憶されている実行中のプロトコルのバージョンを特定する情報と、プロトコル情報記憶領域154に記憶されるプロトコルコードの保管状況を特定する情報(ここでは、シーケンス情報)と、が格納される。
鍵情報記憶領域156には、端末130との間で送受信する情報を暗号化するために使用される鍵を特定する情報が格納される。
制御部158は、コマンド解析部159と、サービスアプリケーション部160と、プロトコル実行部161と、プロトコルコード格納部162と、送受信制御部163と、を備える。
コマンド解析部159は、端末130より受信したコマンドを解析する処理を制御する。
サービスアプリケーション部160は、コマンド解析部159で解析されたコマンドに対応して実行する処理を制御する。
プロトコル実行部161は、端末130との間で実行プロトコル情報記憶領域153に記憶されているプロトコルコードに従った処理を制御する。
プロトコルコード格納部162は、端末130より受信したプロトコルコードをプロトコル情報記憶領域154に格納するとともに、プロトコル更新状況情報記憶領域155にプロトコルコードの保管情報を特定する情報を格納する処理を制御する。
送受信制御部163は、通信部165を介した情報の送受信処理を制御する。
通信部165は、端末130との間で情報を送受信するためのインターフェースである。
以上に記載したICカード150は、例えば、図7(コンピュータ200の概略図)に示すような、CPU201と、メモリ202と、EEPROM(Electrically Erasable and Programmable Read Only Memory)等の記憶装置203と、リーダライタとの間で情報を送受信することのできる通信装置204と、を備えたコンピュータ200で実現できる。
例えば、記憶部151は、CPU201がメモリ202又は記憶装置203を利用することにより実現可能であり、制御部158は、記憶装置203に記憶されている所定のプログラムをメモリ202にロードしてCPU201で実行することで実現可能であり、通信部1656は、CPU201が通信装置204を利用することで実現可能である。
なお、メモリ202及び記憶装置203については、セキュリティを考慮して、耐タンパ性を有するものを使用することが望ましい。
図8は、サービス提供者装置110から端末130に更新するプロトコルコードを送信する処理を示すシーケンス図である。
まず、サービス提供者装置110のプロトコル更新処理部119は、入力部123を介して、ICカード150と端末130との間の通信容量のうち、プロトコル実行中に余分に送信可能なデータ量がどの程度あるのかを特定する環境パラメータの入力を受け付ける(S10)。このようにして入力を受け付けた環境パラメータについては、プロトコル更新処理部119が、環境パラメータ情報記憶領域112に記憶する。
次に、サービス提供者装置110のプロトコル更新処理部119は、入力部123を介して、更新するプロトコルコードと、当該プロトコルコードのバージョンを特定する情報の入力を受け付ける(S11)。そして、プロトコル更新処理部119は、このようにして入力を受け付けたプロトコルコードについては、プロトコルコード記憶領域113に記憶し、当該プロトコルコードのバージョンを特定するバージョン情報については、更新バージョン管理情報記憶領域114に記憶する。
なお、プロトコルコードについては、暗号アルゴリズムの脆弱性情報、ICカード150の処理能力や通信能力、提供するサービスの要件(厳密な認証を要求するのか素早い認証を要求するのかなど)等の情報を基に生成される。
次に、プロトコル更新処理部119は、ステップS10で入力を受け付けた環境パラメータを、通信部125を介して、端末130Aに送信する(S12)。
また、プロトコル更新処理部119は、ステップS11で入力を受け付けたプロトコルコード及びバージョン情報を端末130Aに送信する(S13)。
これらの情報を受信した端末30Aでは、プロトコル更新部138が、ステップS12で受信した環境パラメータをデータ記憶領域132に格納し(S14)、ステップS13で受信したプロトコルコードのコード本体をプロトコルコード記憶領域133に格納し(S15)、ステップS13で受信したバージョン情報を更新バージョン管理情報記憶領域134に格納する(S16)。
そして、プロトコル更新部138は、送受信制御部143及び第一の通信部147を介して、サービス提供者装置110に対し、保管が完了した旨を示すレスポンスを送信する(S17)。
次に、サービス提供者装置110のプロトコル更新処理部119は、ステップS10で入力を受け付けた環境パラメータを、通信部125を介して、端末130Bに送信する(S18)。
また、プロトコル更新処理部119は、ステップS11で入力を受け付けたプロトコルコード及びバージョン情報を端末130Bに送信する(S19)。
これらの情報を受信した端末30Bでは、プロトコル更新部138が、ステップS18で受信した環境パラメータをデータ記憶領域132に格納し(S20)、ステップS19で受信したプロトコルコードのコード本体をプロトコルコード記憶領域133に格納し(S21)、ステップS19で受信したバージョン情報を更新バージョン管理情報記憶領域134に格納する(S20)。
そして、プロトコル更新部138は、送受信制御部143及び第一の通信部147を介して、サービス提供者装置110に対し、保管が完了した旨を示すレスポンスを送信する(S23)。
そして、サービス提供者装置110と、端末130と、の間では、ステップS12〜ステップS17までで特定される処理を、更新が必要な全ての端末130に対して繰り返し行う。
以上に示したシーケンスでは、複数の端末130A、130B、・・・にプロトコルコードを送信する例を示しているが、単一の端末130に対して環境パラメータ及びプロトコルコードを送信するようにしてもよい。
また、サービス提供者装置110と端末130との間で特に認証処理、署名生成/検証処理、データ暗号/復号処理等の処理をしていないが、より安全にするために、鍵情報記憶領域115及び鍵情報記憶領域135に格納されている鍵を用いて、認証処理、署名生成/検証処理、データ暗号/復号処理等のうち、1つ以上の処理を行ってもよい。
図9〜12は、端末130とICカード150との間でプロトコルコマンドを送受信する際に、プロトコルコードを更新する処理を示すシーケンス図である。
まず、端末130は、ICカード150が読み取り可能な位置に置かれると、コマンド生成部141が、ICカード150に対する認証情報の送信指示である第一のプロトコルコマンドを生成する(S30)。
ここで、第一のプロトコルコマンドには、端末130がICカード150を認証するために必要となる基礎データが含まれる。
そして、端末130のICカードアクセス部142は、ステップS30で生成された第一のプロトコルコマンドを、第二の通信部148を介して、ICカード150に送信する(S31)。
このような第一のプロトコルコマンドを受信したICカード150では、コマンド解析部159が第一のプロトコルコマンドを解析して、対応するサービスアプリケーション部160に処理を受け渡し、サービスアプリケーション部160は、プロトコル実行部161に第一のプロトコルコマンドを出力する(S32)。
第一のプロトコルコマンドの入力を受けたプロトコル実行部161では、入力された第一のプロトコルコマンドに従って、通常のプロトコル処理(例えば、端末130においてICカード150を認証するために必要なデータ(ID等)の生成処理等)を行い、第一のプロトコルコマンドレスポンスデータを生成する(S33)。
次に、プロトコル実行部161は、ICカード150において実行中のプロトコルのバージョンを特定する情報と、プロトコル情報記憶領域154に記憶されているプロトコルコードの保管状況を特定するシーケンス情報と、をプロトコル更新状況記憶領域155から取得して、プロトコルコード状況とする(S34)。
ここで、シーケンス情報は、プロトコルコードのどの部分までが、プロトコル情報記憶領域154に記憶されているかを示す情報である。本実施形態においては、シーケンス情報として、プロトコルコードの何バイト目までがプロトコル情報記憶領域154に格納されているかを示す数値を用いているが、このような態様に限定されず、分割されたプロトコルコードに先頭から順に連続する数値を割り当てておき、割り当てられた数値から、既にプロトコル情報記憶領域154に格納されている分割コードに対応する数値を示すものでもよい。なお、プロトコルコードの格納が完了している場合には、プロトコルコードの格納が完了していることを示す識別情報によりシーケンス情報を構成する。
そして、プロトコル実行部161は、例えば、図13(第一のプロトコルコマンドレスポンス171の概略図)に示すように、ステップS33で生成した第一のプロトコルコマンドレスポンスデータ171aに、ステップS34で取得したプロトコルコード状況171bを付加することで、第一のプロトコルコマンドレスポンス171を生成する(S35)。
なお、図示するように、プロトコルコード状況171bには、プロトコルバージョン171cと、シーケンス情報171dと、を特定する情報が含まれる。
そして、プロトコル実行部161は、ステップS35で生成した第一のプロトコルコマンドレスポンス171をサービスアプリケーション部160に出力し(S36)、サービスアプリケーション部160は、第一のプロトコルコマンドレスポンス171を送受信制御部163に送り、送受信制御部163は、通信部165を介して、第一のプロトコルコマンドレスポンス171を端末130に送信する(S37)。
第一のプロトコルコマンドレスポンス171を受信した端末130では、認証処理部139が、第一のプロトコルコマンドレスポンス171に含まれている第一のプロトコルコマンドレスポンスデータ171aを用いて、ICカード150の認証を行う(S38)。
ここで、認証処理部139は、ICカード150の認証に失敗した場合には、処理を中止するが、ここでは、認証が成功したものとして説明を行う。
ICカード150の認証に成功すると、プロトコル更新部138は、ステップS37で受信した第一のプロトコルコマンドレスポンス171からプロトコルバージョン171cを取得する(S39)。
次に、プロトコル更新部138は、取得したプロトコルバージョン171cと、更新バージョン管理情報記憶領域134に記憶されているプロトコルバージョンと、を確認する(S40)。その結果、プロトコル更新部138は、取得したプロトコルバージョン171cが、更新バージョン管理情報記憶領域134に記憶されているプロトコルバージョンと一致する場合には、ステップS46に進むが、ここでは、取得したプロトコルバージョン171cが、更新バージョン管理情報記憶領域134に記憶されているプロトコルバージョンよりも古いものとして説明する。
そして、プロトコル更新部138は、プロトコルバージョン171cが、更新バージョン管理情報記憶領域134に記憶されているプロトコルバージョンよりも古い場合には、ステップS37で受信した第一のプロトコルコマンドレスポンス171からシーケンス情報171dを取得する(S41)。
次に、プロトコル更新部138は、ステップS41で取得したシーケンス情報171dを確認する(S42)。そして、プロトコル更新部138は、ステップS41で取得したシーケンス情報171dが、更新するプロトコルコードの格納が完了していることを示す識別情報である場合には、ステップS46に進むが、ここでは、ステップS41で取得したシーケンス情報171dが、プロトコルコードの格納が完了していることを示す識別情報ではないものとして説明を行う。
そして、プロトコル更新部138は、ステップS42において、更新用のプロトコルコードの全てがICカード150に格納されていないと判断された場合には、プロトコル情報記憶領域154に記憶されているプロトコルコードを取得する(S43)。
次に、プロトコル更新部138は、データ記憶領域152に格納されている環境パラメータを取得する(S44)。なお、環境パラメータは、ICカード150が読み取り可能にされた端末130に対応したものを取得する。
次に、プロトコル更新部138は、ステップS41で取得したシーケンス情報171dと、ステップS44で取得された環境パラメータと、から更新するプロトコルコードの分割を行う(S45)。
更新するプロトコルコードの分割は、例えば、図14(プロトコルコードの分割方法を示す概略図)に示すように、更新するプロトコルコード172において、既にICカード150に格納されているバイト数をシーケンス情報171dで特定する。次に、環境パラメータで特定される送信可能なデータサイズより送信可能なバイト数を特定して、既に送信されているバイト数の次から当該送信可能なバイト数のデータを抽出することにより、分割プロトコルコード172aを生成する。
なお、環境パラメータで特定される送信可能なデータサイズが、更新するプロトコルコードよりも大きな場合には、ステップS45に示すプロトコルコードの分割処理については不要である。
次に、端末130のコマンド生成部141は、ステップS40で、プロトコルバージョン171cが、更新バージョン管理情報記憶領域134に記憶されているプロトコルバージョンと一致する場合には、一致するバージョンのプロトコルコードによる第二のプロトコルコマンド処理用データ(ここでは、ICカード150において端末130を認証するための認証データを含む認証指示データ)を生成し、プロトコルバージョン171cが、更新バージョン管理情報記憶領域134に記憶されているプロトコルバージョンと一致しない場合には、プロトコルバージョン171cで特定されるバージョンのプロトコルコードによる第二のプロトコルコマンド処理用データを生成する(S46)。
次に、コマンド生成部141は、プロトコル更新コマンドを生成する(S47)。
プロトコル更新コマンドは、ステップS42で確認したシーケンス情報が、更新するプロトコルコードの格納が完了していることを示す識別情報である場合には、ICカードにおいてプロトコルコードの更新を指示するコマンドであり、ステップS42で確認したシーケンス情報が、更新するプロトコルコードの格納が完了していることを示す識別情報ではない場合には、ステップS45で分割した分割プロトコルコードで構成されるコマンドとなる。
そして、コマンド生成部141は、例えば、図15(第二のプロトコルコマンドの概略図)に示すように、ステップS46で生成したプロトコルコマンド処理用データ173aに、ステップS47で生成したプロトコル更新コマンド173bを結合することで、第二のプロトコルコマンドを生成する(S48)。
このようにして生成された第二のプロトコルコマンドは、ICカードアクセス部142が、第二の通信部148を介してICカード150に送信する(S49)。
このような第二のプロトコルコマンドを受信したICカード150では、コマンド解析部159が第二のプロトコルコマンドを解析して、対応するサービスアプリケーション部160に処理を受け渡し、サービスアプリケーション部160は、プロトコル実行部161に第二のプロトコルコマンドを出力する(S50)。
第二のプロトコルコマンドの入力を受けたプロトコル実行部161では、入力された第二のプロトコルコマンドに従って、通常のプロトコル処理(ここでは、端末130の検証処理等)を行い、第二のプロトコルコマンドレスポンスデータを生成する(S51)。
次に、プロトコル実行部161は、第二のプロトコルコマンドからプロトコル更新コマンド173aを取得する(S52)。
そして、プロトコル実行部161は、プロトコル更新コマンド173aの中に分割プロトコルコードが含まれているか否かを確認し(S53)、分割プロトコルコードが含まれている場合にはステップS54〜S57を行い(ステップS58〜S62の処理は行わない)、含まれていない場合にはステップS58に進み処理を行う。
ステップS53でプロトコル更新コマンド173aの中に分割プロトコルコードが含まれていると判断された場合には、プロトコル実行部161は、分割プロトコルコードをプロトコルコード格納部162に出力し、プロトコルコード格納部162がプロトコル情報記憶領域154に記憶する(S55)。
そして、プロトコルコード格納部162は、記憶された分割プロトコルコードのバイト数を前回のバイト数に加算することにより、格納されたプロトコルコードの進捗状況を示すシーケンス情報を生成して、プロトコル更新状況記憶領域155に記憶する(S56)。なお、更新用のプロトコルコードが全てプロトコル情報記憶領域154に記憶されたと判断された場合は、更新用のプロトコルコードの格納が完了したことを示す識別情報によりシーケンス情報を設定する。ここで、このような識別情報は、例えば、全ビットが1であるデータを指すが、これに限定するものではない。
次に、プロトコルコード格納部162は、処理が終了したことを示すレスポンスをプロトコル実行部161に出力する(S57)。
一方、ステップS58では、プロトコル実行部161は、プロトコル更新コマンド173bの中にプロトコル変更コマンドが含まれている否かを確認する(S58)。そして、プロトコル変更コマンドが含まれていないと判断された場合には、ステップS59〜S62の処理を行わずに、ステップS63に進む。
そして、プロトコル実行部161は、ステップS58において、プロトコル更新コマンド173bの中にプロトコル変更コマンドが含まれていると判断した場合には、プロトコル変更コマンドをプロトコルコード格納部162に出力し、プロトコルコード格納部162は、プロトコルコードの変換を行う(S60)。
具体的には、プロトコルコード格納部162は、プロトコル情報記憶領域154に記憶されている更新用のプロトコルコードを抽出して、実行プロトコル情報記憶領域153に記憶することで、プロトコルコードを更新する。
そして、プロトコルコード格納部162は、ステップS60で変更したプロトコルコードのバージョンを特定する情報をプロトコル更新状況記憶領域155に記憶する(S61)。
次に、プロトコルコード格納部162は、処理が終了したことを示すレスポンスをプロトコル実行部161に出力する(S62)。
そして、プロトコル実行部161は、ステップS51で生成した第二のプロトコルコマンドレスポンスにプロトコル変更完了フラグを付与して、サービスアプリケーション部160に出力する(S63)。
次に、サービスアプリケーション部160は、入力した第二のプロトコルコマンドレスポンスを送受信制御部163に出力し、送受信制御部163は、通信部165を介して、端末130に送信する(S64)。
次に、端末130では、認証処理部139が、ステップS64で受信した第二のプロトコルコマンドレスポンスの検証を行う(S65)。
そして、認証処理部139は、ICカード150での端末認証に失敗していると判断した場合には、処理を中止するが、ここでは、端末認証が成功したものとして説明を行う。
次に、ステップS65で端末認証に成功していると判断された場合には、端末130のコマンド生成部141は、予め定められたサービス提供コマンドを生成する(S66)。
そして、ICカードアクセス部142は、第二の通信部148を介して、ICカード150に対して、ステップS66で生成したサービス提供コマンドを送信する(S67)。
このようなサービス提供コマンドを受信したICカード150では、コマンド解析部159がサービス提供コマンドを解析して、解析結果に応じたサービスの提供をサービスアプリケーション部160に指示し、サービスアプリケーション部160が指示されたサービスの提供を行う(S68)。
そして、サービスアプリケーション部160は、サービス提供コマンドレスポンスを生成して、送受信制御部163に出力し、送受信制御部163が通信部を介して端末130に送信する(S69)。
以上のような処理を行うことにより、端末130と、ICカード150と、の間で相互認証及びサービスの提供と、プロトコルコードの更新と、を同時に行うことが可能となる。
また、本実施形態によれば、プロトコルコードを分割してICカード150に送ることができるようにされているため、複数の端末130を介して、プロトコルコードの更新を行うことができるようになる。即ち、ICカード150の利用者は、プロトコルコードの更新を意識することなく、任意に選択された端末130を介してサービスの提供を受けることにより、分割されたプロトコルコードが次々にICカード150に蓄積され、全てのプロトコルコードを受信することでプロトコルコードの更新が可能となる。
なお、以上のシーケンスでは、相互認証を端末130とICカード150との間で2回のデータ送受信を行うことにより実現しているが、送受信の回数が2回以上の場合でも同様の効果を得ることは可能である。また、ICカード150の認証を行ってから、端末130の認証を実施しているが、これも入れ替えることは可能であり、入れ替えたことによる影響はない。
また、端末130とICカード150との間で送受信する少なくとも一部のデータに対して、特に署名生成/検証処理、データ暗号/復号処理等の処理をしていないが、より安全にするために、鍵情報記憶領域135及び鍵情報記憶領域156に格納されている鍵を用いて、端末130とICカード150との間で送受信する少なくとも一部のデータに対して、署名生成/検証処理、データ暗号/復号処理等のうち、1つ以上の処理を行ってもよい。
なお、以上に記載した実施形態においては、機器認証プロトコルを更新する処理として説明したが、このような態様に限定されず、ICカードの制御を行うための制御データ(制御プロトコル)のプロトコルコードを更新する際に、本発明を利用することができる。
サービス提供システムの概略図。 サービス提供者装置の概略図。 コンピュータの概略図。 端末の概略図。 コンピュータの概略図。 ICカードの概略図。 コンピュータの概略図。 サービス提供者装置から端末に更新するプロトコルコードを送信する処理を示すシーケンス図。 プロトコルコードを更新する処理を示すシーケンス図。 プロトコルコードを更新する処理を示すシーケンス図。 プロトコルコードを更新する処理を示すシーケンス図。 プロトコルコードを更新する処理を示すシーケンス図。 第一のプロトコルコマンドレスポンスの概略図。 プロトコルコードの分割方法を示す概略図。 第二のプロトコルコマンドの概略図。
符号の説明
100 サービス提供システム
110 サービス提供者装置
111 記憶部
112 環境パラメータ情報記憶領域
113 プロトコルコード記憶領域
114 更新バージョン管理情報記憶領域
115 鍵情報記憶領域
117 制御部
118 サービス提供部
119 プロトコル更新処理部
120 コマンド生成部
121 送受信制御部
123 入力部
124 出力部
125 通信部
130 端末
131 記憶部
132 データ記憶領域
133 プロトコルコード記憶領域
134 更新バージョン管理情報記憶領域
135 鍵情報記憶領域
137 制御部
138 プロトコル更新部
139 認証処理部
140 コマンド処理部
141 コマンド生成部
142 ICカードアクセス部
143 送受信制御部
145 入力部
146 出力部
147 第一の通信部
148 第二の通信部
150 ICカード
151 記憶部
152 データ記憶領域
153 実行プロトコル情報記憶領
154 プロトコル情報記憶領域
155 プロトコル更新状況情報記憶領域
156 鍵情報記憶領域
158 制御部
159 サービスアプリケーション部
160 コマンド解析部
161 プロトコル実行部
162 プロトコルコード格納部
163 送受信制御部
165 通信部

Claims (10)

  1. 記憶部及び制御部を備える情報記憶媒体に対して、該情報記憶媒体が使用するプログラムを更新する更新プログラムを送信する端末であって、
    前記情報記憶媒体から、第1の認証情報と、前記更新プログラムのうち前記情報記憶媒体が保持する部分を特定するシーケンス情報とを受信する受信部と、
    前記情報記憶媒体との通信容量と、当該端末の認証に用いられる第2の認証情報のデータ量とに基づいて、前記情報記憶媒体への送信に用いるデータサイズである環境パラメータを取得するパラメータ取得部と、
    前記シーケンス情報と前記環境パラメータとに基づいて、前記情報記憶媒体が保持していない前記更新プログラムを前記データサイズに分割して分割更新プログラムを生成する分割部と、
    前記第1の認証情報に基づいて認証を行った前記情報記憶媒体に対して、前記第2の認証情報と、前記分割更新プログラムとを結合した第1のプロトコルコマンドを送信する送信部と、
    を備えることを特徴とする端末。
  2. 請求項1に記載の端末であって、
    前記プログラムは、前記情報記憶媒体が前記第2の認証情報に基づいて当該端末を認証する認証プログラムであって、
    前記受信部は、前記情報記憶媒体が有する前記認証プログラムのバージョンを示すバージョン情報をさらに受信し、
    前記送信部は、前記受信部が受信したバージョン情報に含まれる前記バージョンの前記認証プログラムによって認証される前記第2の認証情報を送信することを特徴とする端末。
  3. 請求項1又は2に記載の端末であって
    記送信部は、前記シーケンス情報、前記情報記憶媒体が前記更新プログラムのすべてのデータを受信したことを示す情報である場合に、前記第1のプロトコルコマンドに代えて、前記第2の認証情報と、前記更新プログラムの実行を指示する命令とを結合した第2のプロトコルコマンドを送信することを特徴とする端末。
  4. 当該情報記憶媒体で使用するプログラムを更新する更新プログラムを分割した分割更新プログラムを記憶部に記憶させる制御部と、
    端末に対して、第1の認証情報と、前記記憶部が記憶する前記分割更新プログラムを特定するシーケンス情報とを送信する送信部と、
    前記第1の認証情報に基づいて当該情報記憶媒体が認証された場合に、前記端末と当該情報記憶媒体との通信容量と前記端末の認証に用いられる第2の認証情報のデータ量とに基づいて取得された環境パラメータと、前記シーケンス情報とに基づいて生成された、当該情報記憶媒体が保持していない前記分割更新プログラムと、前記第2の認証情報とが結合された第1のプロトコルコマンドを前記端末から受信する受信部と、
    前記第2の認証情報に基づいて前記端末を認証する認証部とを備え、
    前記制御部は、前記受信部が受信した前記分割更新プログラムを前記記憶部に記憶させることを特徴とする情報記憶媒体。
  5. 請求項4に記載の情報記憶媒体であって、
    前記送信部は、前記プログラムのバージョンを示すバージョン情報をさらに送信し、
    前記受信部は、前記バージョンの前記プログラムにおいて認証される前記第2の認証情報を受信し、
    前記認証部は、前記プログラムを用いて前記端末を認証し、
    前記制御部は、前記認証部において認証された前記端末から受信した前記分割更新プログラムを記憶させることを特徴とする情報記憶媒体。
  6. 請求項4又は5に記載の情報記憶媒体であって、
    前記更新プログラムを実行して前記プログラムを更新する更新部を備え
    記受信部は、前記送信部、前記シーケンス情報として前記更新プログラムを構成する前記分割更新プログラムのすべてのデータを受信したことを示す情報を送信した場合に、前記第1のプロトコルコマンドに代えて、前記第2の認証情報と前記更新プログラムの実行を指示する命令とを結合した第2のプロトコルコマンドを受信し、
    前記更新部は、前記命令に基づいて前記更新プログラムを実行することを特徴とする情報記憶媒体。
  7. 記憶部及び制御部を備える情報記憶媒体と、前記情報記憶媒体が使用するプログラムを更新する更新プログラムを前記情報記憶媒体に送信する端末とを備えるサービス提供システムであって、
    前記情報記憶媒体は、
    第1の認証情報と、前記更新プログラムのうち前記記憶部が記憶する部分を特定するシーケンス情報とを前記端末に送信する送信部を備え、
    前記端末は、
    前記情報記憶媒体との通信容量と、当該端末の認証に用いる第2の認証情報のデータ量とに基づいて、前記情報記憶媒体への送信に用いるデータサイズである環境パラメータを取得するパラメータ取得部と、
    前記シーケンス情報と前記環境パラメータとに基づいて、前記情報記憶媒体が記憶していない前記更新プログラムを前記データサイズに分割して分割更新プログラムを生成する分割部と、
    前記第1の認証情報に基づいて認証を行った前記情報記憶媒体に対して、前記第2の認証情報と、前記分割更新プログラムとを結合した第1のプロトコルコマンドを送信する送信部と、を備え、
    前記情報記憶媒体の制御部は、受信した前記分割更新プログラムを前記記憶部に記憶させることを特徴とするサービス提供システム。
  8. 請求項7に記載のサービス提供システムであって、
    前記情報記憶媒体は、前記プログラムを用いて前記第2の認証情報に基づいて前記端末を認証する認証部を備え、
    前記情報記憶媒体の送信部は、前記プログラムのバージョンを示すバージョン情報をさらに送信し、
    前記情報記憶媒体の制御部は、前記認証部において認証された前記端末から受信した前記分割更新プログラムを前記記憶部に記憶させ、
    前記端末の送信部は、前記バージョン情報に含まれる前記バージョンの前記プログラムによって認証される前記第2の認証情報を送信することを特徴とするサービス提供システム。
  9. 請求項7又は8に記載のサービス提供システムであって、
    前記情報記憶媒体は、前記更新プログラムを実行して前記プログラムを更新する更新部を備え
    記情報記憶媒体の更新部は、前記更新プログラムの実行を指示する命令を前記端末から受信した場合に、前記更新プログラムを実行し、
    前記端末の送信部は、前記情報記憶媒体から、前記シーケンス情報として前記更新プログラムを構成する前記分割更新プログラムのすべてのデータを受信したことを示す情報を受信した場合に、前記第1のプロトコルコマンドに代えて、前記第2の認証情報と、前記命令とを結合した第2のプロトコルコマンドを送信することを特徴とするサービス提供システム。
  10. 記憶部及び制御部を備える情報記憶媒体に対して、該情報記憶媒体が使用するプログラムを更新する更新プログラムを送信する端末が行うデータ更新方法であって、
    前記情報記憶媒体から、第1の認証情報と、前記更新プログラムのうち前記情報記憶媒体が保持する部分を特定するシーケンス情報とを受信する受信手順と、
    前記情報記憶媒体との通信容量と、当該端末の認証に用いられる第2の認証情報のデータ量とに基づいて、前記情報記憶媒体への送信に用いるデータサイズである環境パラメータを取得するパラメータ取得手順と、
    前記シーケンス情報と前記環境パラメータとに基づいて、前記情報記憶媒体が保持していない前記更新プログラムを前記データサイズに分割して分割更新プログラムを生成する分割手順と、
    前記第1の認証情報に基づいて認証を行った前記情報記憶媒体に対して、前記第2の認証情報と、前記分割更新プログラムとを結合した第1のプロトコルコマンドを送信する送信手順と、を備え、
    前記送信手順は、前記受信手順において、前記情報記憶媒体が前記更新プログラムのすべてのデータを受信したことを示す前記シーケンス情報を受信した場合に、前記第1のプロトコルコマンドに代えて、前記第2の認証情報と、前記更新プログラムの実行を指示する命令とを結合した第2のプロトコルコマンドを送信することを特徴とするデータ更新方法。
JP2008073029A 2008-03-21 2008-03-21 端末、情報記憶媒体、サービス提供システム及びデータ更新方法 Expired - Fee Related JP5235460B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008073029A JP5235460B2 (ja) 2008-03-21 2008-03-21 端末、情報記憶媒体、サービス提供システム及びデータ更新方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008073029A JP5235460B2 (ja) 2008-03-21 2008-03-21 端末、情報記憶媒体、サービス提供システム及びデータ更新方法

Publications (2)

Publication Number Publication Date
JP2009230315A JP2009230315A (ja) 2009-10-08
JP5235460B2 true JP5235460B2 (ja) 2013-07-10

Family

ID=41245654

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008073029A Expired - Fee Related JP5235460B2 (ja) 2008-03-21 2008-03-21 端末、情報記憶媒体、サービス提供システム及びデータ更新方法

Country Status (1)

Country Link
JP (1) JP5235460B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6352609B2 (ja) 2013-09-18 2018-07-04 株式会社東芝 Icカード、情報処理方法、情報記憶媒体、及び情報処理プログラム
JP6382521B2 (ja) * 2014-01-17 2018-08-29 株式会社東芝 携帯可能電子装置、および電子回路

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4540454B2 (ja) * 2004-11-26 2010-09-08 株式会社エヌ・ティ・ティ・データ アプリケーション設定装置、icチップ及びプログラム
JP2006293706A (ja) * 2005-04-11 2006-10-26 Dainippon Printing Co Ltd アプリケーションの更新機能を有するマルチアプリケーションicカード
JP2007049713A (ja) * 2006-08-09 2007-02-22 Fujitsu Ten Ltd 車載端末

Also Published As

Publication number Publication date
JP2009230315A (ja) 2009-10-08

Similar Documents

Publication Publication Date Title
US7912789B2 (en) Electronic value, electronic purse device, and system for using the same
EP3232410B1 (en) Payment system
JP5521803B2 (ja) 通信装置、通信方法、及び、通信システム
JP4834748B2 (ja) 情報記憶媒体、媒体認証機器、媒体認証システム、及びicカード
US20060036547A1 (en) Authentication system, card and authentication method
CN101379848A (zh) 远程访问便携通信对象中的海量存储器单元和安全存储器单元的系统
JP2017505048A (ja) 電子署名方法、システムおよび装置
US20070187493A1 (en) Smart card authentication system with multiple card and server support
JP5276346B2 (ja) 認証サーバ、認証方法、及びそのプログラム
JP2009151528A (ja) 生体情報が格納されたicカードおよびそのアクセス制御方法
CN101136071A (zh) 通信装置、通信方法和程序
JP2007173999A (ja) 認証システム及び認証対象装置
CN115427959A (zh) 在终端设备、支付系统、货币系统和监控单元之间直接传输电子币数据组的方法
US20230252451A1 (en) Contactless card with multiple rotating security keys
WO2007119594A1 (ja) セキュアデバイス及び読み書き装置
JP5235460B2 (ja) 端末、情報記憶媒体、サービス提供システム及びデータ更新方法
JP5616156B2 (ja) ワンタイム認証システム
JP5391743B2 (ja) 決済処理セキュリティ情報配信方法、決済処理セキュリティ情報配信システム、そのセンタ装置、サーバ装置、決済端末、及びプログラム
JP2003123032A (ja) Icカード端末および本人認証方法
JP4765608B2 (ja) データ処理装置、データ処理プログラム、およびデータ処理システム
JP2008109276A (ja) 携帯可能電子装置
US11972651B2 (en) Intelligent key device and verification method therefor
JP4183823B2 (ja) データ照合装置、データ照合システムおよびデータ照合プログラム記憶媒体
JP5692441B2 (ja) 情報処理装置、情報処理方法、及び、プログラム
US20220335420A1 (en) Memory management in a transaction processing device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100903

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120730

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120807

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121003

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121106

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121214

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130226

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130326

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160405

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees