(57)【要約】【課題】課金処理を行う際に、認証コマンドによって、認証コマンドの後に実行されるコマンドが利用するデータを指定することができる課金システムを提供する。【解決手段】課金システムで利用されるＩＣカード１は、認証コマンド１００と、認証コマンドが成功したときのみ実行可能で、暗号文を復号する復号コマンド１１０とを備えている。認証コマンド１００のコマンドＡＰＤＵには、認証データに加え、課金金額が含まれる。認証コマンド１００は、認証データを認証し、認証データの認証に成功した場合のみ、電子マネーの残高金額１０１から課金金額を減額すると共に、暗号文を復号できる回数を示す実行可能回数を課金金額から算出する。ＩＣカード１に備えられた復号コマンドは、暗号文を復号した回数をカウントし、暗号文を復号した回数が実行可能回数に達したとき、復号コマンドを用いた暗号文の復号を不可にする。【選択図】図４
2008021187.tif 000002
【特許請求の範囲】
【請求項１】
ＩＣカードを利用した課金システムであって、前記課金システムは、前記ＩＣカードと、前記ＩＣカードを利用して課金処理する課金端末とから、少なくとも構成され、前記ＩＣカードは、課金処理に利用される認証コマンドと、課金処理の対象となる処理を実行するための対象コマンドとを備え、前記認証コマンドは、コマンドＡＰＤＵ（Application Protocol Data Unit）に含まれる認証データを認証し、認証データの認証に成功したときのみ、コマンドＡＰＤＵに含まれるパラメータから前記対象コマンドの実行可能回数を算出し、前記対象コマンドは、前記認証コマンドによって算出された前記実行可能回数だけ実行可能であって、前記課金端末は、前記認証コマンドを用いて前記ＩＣカードを認証処理した後、前記対象コマンドを用いて、課金対象となる処理を実行することを特徴とする課金システム。
【請求項２】
請求項１に記載の課金システムにおいて、前記認証コマンドのコマンドＡＰＤＵに含まれる前記パラメータは、前記対象コマンドの実行に対する課金金額を示すデータであって、前記認証コマンドは、前記課金金額を示すデータから前記実行可能回数を算出すること特徴とする課金システム。
【請求項３】
請求項２に記載の課金システムにおいて、前記認証コマンドは、前記認証データの認証に成功した場合、前記実行可能回数の算出に加え、前記課金金額を示すデータで示される貨幣価値を決済することを特徴とする課金システム。
【請求項４】
ＩＣカードを利用した課金方法であって、前記課金方法は、課金処理を実行するために前記ＩＣカードを認証するＩＣカード認証工程と、課金処理の対象となる対象処理を実行する対象処理工程とを含み、前記ＩＣカード認証工程は、前記対象処理を前記ＩＣカードが実行できる回数を示す実行可能回数の算出基礎となるパラメータと、前記ＩＣカードが認証する認証データとを含むコマンドＡＰＤＵを前記ＩＣカードに送信し、前記ＩＣカードが、受信したコマンドＡＰＤＵに含まれる前記認証データを認証し、前記認証データの認証に成功したときのみ、前記パラメータから前記実行可能回数を算出する工程であって、前記対象処理工程は、前記対象処理を実行させるためのコマンドＡＰＤＵを前記ＩＣカードに送信し、前記ＩＣカードは、前記認証データの成功に認証しており、かつ、前記対象処理を実行した回数が前記実行可能回数に達していないときに、前記対象処理を実行することを特徴とする課金方法。
【請求項５】
請求項４に記載の課金方法において、前記ＩＣカード認証工程で前記ＩＣカードに送信されるコマンドＡＰＤＵに含まれる前記パラメータは、前記対象処理の実行に対する課金金額を示すデータであって、前記ＩＣカード認証工程で前記ＩＣカードは、前記課金金額を示すデータから前記実行可能回数を算出することを特徴とする課金方法。
【請求項６】
請求項５に記載の課金方法において、前記ＩＣカード認証工程で、前記ＩＣカードは、前記認証データの認証に成功した場合、前記実行可能回数の算出に加え、前記課金金額を示すデータで示される貨幣価値を決済することを特徴とする課金方法。
【請求項７】
課金処理で利用されるＩＣカードにおいて、前記ＩＣカードは、課金処理に利用される認証コマンドと、課金処理の対象となる処理を実行するための対象コマンドとを備え、前記認証コマンドは、コマンドＡＰＤＵに含まれる認証データを認証し、認証データの認証に成功したときのみ、コマンドＡＰＤＵに含まれるパラメータから前記対象コマンドの実行可能回数を算出するコマンドであって、前記対象コマンドは、前記対象コマンドを実行した回数をカウントし、カウントした回数が前記実行可能回数に達したときに、前記対象コマンドの実行を不可とすることを特徴とするＩＣカード。
【請求項８】
請求項７に記載のＩＣカードにおいて、前記認証コマンドのコマンドＡＰＤＵに含まれる前記パラメータは、前記対象コマンドの実行に対する課金金額を示すデータであって、前記認証コマンドは、前記課金金額を示すデータから前記実行可能回数を算出することを特徴とするＩＣカード。
【請求項９】
請求項８に記載のＩＣカードにおいて、前記認証コマンドは、前記認証データの認証に成功した場合、前記実行可能回数の算出に加え、前記課金金額を示すデータで示される貨幣価値を決済することを特徴とするＩＣカード。
【請求項１０】
課金処理で利用されるＩＣカードに実装されるＩＣカードプログラムであって、前記ＩＣカードには、課金処理に利用される認証コマンドと、課金処理の対象となる処理を実行するための対象コマンドとを備え、コマンドＡＰＤＵに含まれる認証データを認証し、認証データの認証に成功したときのみ、コマンドＡＰＤＵに含まれるパラメータから前記対象コマンドの実行可能回数を算出する認証コマンドと、前記対象コマンドを実行した回数をカウントし、カウントした回数が前記実行可能回数に達したときに、前記対象コマンドの実行を不可とする前記対象コマンドとして、前記ＩＣカードのＣＰＵを機能させるためのＩＣカードプログラム。
【請求項１１】
請求項１０に記載のＩＣカードプログラムにおいて、前記認証コマンドのコマンドＡＰＤＵに含まれる前記パラメータは、前記対象コマンドの実行に対する課金金額を示すデータであって、前記課金金額を示すデータから前記実行可能回数を算出する前記認証コマンドとして、前記ＩＣカードのＣＰＵを機能させるためのＩＣカードプログラム。
【請求項１２】
請求項１１に記載のＩＣカードプログラムにおいて、前記認証データの認証に成功した場合、前記実行可能回数の算出に加え、前記課金金額を示すデータで示される貨幣価値を決済する前記認証コマンドとして、前記ＩＣカードのＣＰＵを機能させるためのＩＣカードプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＩＣカードを利用して課金処理を行う課金システム及び方法に関し、更に、この課金システムで利用されるＩＣカード、ＩＣカードに実装されるＩＣカードプログラムに関する。
【背景技術】
【０００２】
課金システムで利用されるＩＣカードには、ＩＳＯ／ＩＥＣ７８１６規格に記述されたＶｅｒｉｆｙコマンドのように、上位装置から送信された認証データを認証する認証コマンドが備えられていることが一般的である。
【０００３】
この認証コマンドによって、ＩＣカード内部に保持されるセキュリティステータスが操作され、認証コマンドが成功した場合のみ、課金処理で用いられるコマンドの実行が可能になる。
【０００４】
例えば、特許文献１では、ＥＭＶ規格において、ＶｅｒｉｆｙコマンドがＰＩＮコードの照合に成功した場合のみ、クレジットのオフライン取引を通知するＧＥＮＥＲＡＴＥ ＿ＡＣコマンドの実行が可能になることが記述されている。
【０００５】
しかし、上述しているように、従来の認証コマンドの機能は、セキュリティステータスを操作するのみであって、認証コマンドの後に実行されるコマンドに直接的に影響を与えるものではなかった。
【０００６】
詳しくは、例えば、特許文献２に記述されているような電子マネー用途でＩＣカードを利用するときは、電子マネーの決済するための決済コマンド、或いは、特許文献３に記述されている課金装置としてＩＣカードを利用するときは、暗号文を復号する復号コマンドなど、認証コマンドの成功によって実行可能となるコマンドが利用するデータを指定することはできなかった。
【０００７】
実際に、特許文献３に記述されている課金装置のように、ＩＣカードを用いて、課金対象となるコンテンツの暗号文を復号する際、認証コマンドによって、復号できるデータ量を定めることができれば、間違いなくデータ量に応じた課金を行なうことができようになるし、特許文献２に記載されているような電子マネー用途においては、認証コマンドと決済コマンドを個別に実行するよりも、認証コマンドで決済も行えれば、課金システムの高速化を図ることができる。
【特許文献１】特開２００２−１６９９６６号公報
【特許文献２】特開２０００−１１０６３号公報
【特許文献３】特開２００２−１６９９１２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
そこで、本発明は、ＩＣカードを用いて課金処理を行う際に、上位装置から送信された認証データを認証する認証コマンドによって、認証コマンドの後に実行されるコマンドが利用するデータを指定することができる課金システム、課金方法を提供することを目的とし、更には、この課金システム及び方法を実施するときに必要となるＩＣカード、及び、ＩＣカードに実装されるＩＣカードプログラムも提供することを目的とする。
【課題を解決するための手段】
【０００９】
上述した課題を解決する第１の発明は、ＩＣカードを利用した課金システムであって、前記課金システムは、前記ＩＣカードと、前記ＩＣカードを利用して課金処理する課金端末とから、少なくとも構成され、前記ＩＣカードは、課金処理に利用される認証コマンドと、課金処理の対象となる処理を実行するための対象コマンドとを備え、前記認証コマンドは、コマンドＡＰＤＵ（Application Protocol Data Unit）に含まれる認証データを認証し、認証データの認証に成功したときのみ、コマンドＡＰＤＵに含まれるパラメータから前記対象コマンドの実行可能回数を算出し、前記対象コマンドは、前記認証コマンドによって算出された前記実行可能回数だけ実行可能であって、前記課金端末は、前記認証コマンドを用いて前記ＩＣカードを認証処理した後、前記対象コマンドを用いて、課金対象となる処理を実行することを特徴とする。
【００１０】
上述した第１の発明において、前記認証コマンドのコマンドＡＰＤＵに含まれる前記パラメータは、前記対象コマンドの実行に対する課金金額を示すデータであって、前記認証コマンドは、前記課金金額を示すデータから前記実行可能回数を算出することが望ましい。更に、前記認証コマンドは、前記認証データの認証に成功した場合、前記実行可能回数の算出に加え、前記課金金額を示すデータで示される貨幣価値を決済することが望ましい。
【００１１】
更に、上述した課題を解決する第２の発明は、ＩＣカードを利用した課金方法であって、前記課金方法は、課金処理を実行するために前記ＩＣカードを認証するＩＣカード認証工程と、課金処理の対象となる対象処理を実行する対象処理工程とを含み、前記ＩＣカード認証工程は、前記対象処理を前記ＩＣカードが実行できる回数を示す実行可能回数の算出基礎となるパラメータと、前記ＩＣカードが認証する認証データとを含むコマンドＡＰＤＵを前記ＩＣカードに送信し、前記ＩＣカードは、受信したコマンドＡＰＤＵに含まれる前記認証データを認証し、前記認証データの認証に成功したときのみ、前記パラメータから前記実行可能回数を算出する工程であって、前記対象処理工程は、前記対象処理を実行させるためのコマンドＡＰＤＵを前記ＩＣカードに送信し、前記ＩＣカードは、前記認証データの成功に認証しており、かつ、前記対象処理を実行した回数が前記実行可能回数に達していないときに、前記対象処理を実行することを特徴とする。
【００１２】
上述した第２の発明において、前記ＩＣカード認証工程で前記ＩＣカードに送信されるコマンドＡＰＤＵに含まれる前記パラメータは、前記対象処理の実行に対する課金金額を示すデータであって、前記ＩＣカードは、前記課金金額を示すデータから前記実行可能回数を算出することが望ましい。更に、前記ＩＣカード認証工程において、前記ＩＣカードは、前記認証データの認証に成功した場合、前記実行可能回数の算出に加え、前記課金金額を示すデータで示される貨幣価値を決済することが望ましい。
【００１３】
更に、上述した課題を解決する第３の発明は、課金処理で利用されるＩＣカードであって、前記ＩＣカードは、課金処理に利用される認証コマンドと、課金処理の対象となる処理を実行するための対象コマンドとを備え、前記認証コマンドは、コマンドＡＰＤＵに含まれる認証データを認証し、認証データの認証に成功したときのみ、コマンドＡＰＤＵに含まれるパラメータから前記対象コマンドの実行可能回数を算出するコマンドであって、前記対象コマンドは、前記対象コマンドを実行した回数をカウントし、カウントした回数が前記実行可能回数に達したときに、前記対象コマンドの実行を不可とすることを特徴とする。
【００１４】
上述した第３の発明において、前記認証コマンドのコマンドＡＰＤＵに含まれる前記パラメータは、前記対象コマンドの実行に対する課金金額を示すデータであって、前記認証コマンドは、前記課金金額を示すデータから前記実行可能回数を算出することが望ましい。更に、前記認証コマンドは、前記認証データの認証に成功した場合、前記実行可能回数の算出に加え、前記課金金額を示すデータで示される貨幣価値を決済することが望ましい。
【００１５】
更に、上述した課題を解決する第４の発明は、課金処理で利用されるＩＣカードに実装されるＩＣカードプログラムであって、前記ＩＣカードには、課金処理に利用される認証コマンドと、課金処理の対象となる処理を実行するための対象コマンドとを備え、コマンドＡＰＤＵに含まれる認証データを認証し、認証データの認証に成功したときのみ、コマンドＡＰＤＵに含まれるパラメータから前記対象コマンドの実行可能回数を算出する認証コマンドと、前記対象コマンドを実行した回数をカウントし、カウントした回数が前記実行可能回数に達したときに、前記対象コマンドの実行を不可とする前記対象コマンドとして、前記ＩＣカードのＣＰＵを機能させるためのＩＣカードプログラムである。
【００１６】
上述した第４の発明において、前記認証コマンドのコマンドＡＰＤＵに含まれる前記パラメータは、前記対象コマンドの実行に対する課金金額を示すデータであって、前記認証コマンドは、前記課金金額を示すデータから前記実行可能回数を算出することが望ましい。更に、前記認証コマンドは、前記認証データの認証に成功した場合、前記実行可能回数の算出に加え、前記課金金額を示すデータで示される貨幣価値を決済することが望ましい。
【発明の効果】
【００１７】
上述したように、本発明によれば、ＩＣカードを用いて課金処理を行う際に、上位装置から送信された認証データを認証する認証コマンドによって、認証コマンドの後に実行されるコマンドが利用するデータとして実行可能回数が決定付けられるため、認証コマンドで示される実行可能回数を超えて対象コマンドを実行することはできなくなる。
【００１８】
更に、認証コマンドのコマンドＡＰＤＵで課金金額を示し、課金金額から実行可能回数を算出することで、間違いなく処理回数に応じた課金を行なうことができようになる。
【００１９】
更に、コンテンツの閲覧に係る課金金額の決済を、認証コマンドのみで行えることで、認証コマンドと決済コマンドを個別に実行するよりも、課金システムの高速化を図ることができる。
【００２０】
なお、本発明において、ＩＣカードとは、ＩＣチップが実装されたカード媒体を意味し、上位装置と通信するためのインターフェースは接触／非接触を問うものではない。更に、本発明に係るＩＣカードには、ＩＣチップの周辺を短冊状に切り取ったＳＩＭ或いはＵＩＭも含まれる。
【発明を実施するための最良の形態】
【００２１】
ここから、図を参照しながら、本発明に係るＩＣカード１を利用した課金システムについて詳細に説明する。図１は、ＩＣカードを利用した課金システムの一例を示した図で、図１において、課金端末となるパーソナルコンピュータ２（以下、ＰＣ）はリーダライタ２ａを有し、ＩＣカード１はＰＣ２と電気的に接続し、ＰＣ２にはコンテンツ配信サーバ３とは、ネットワーク４を介して接続されている。
【００２２】
図１において、コンテンツ配信サーバ３が配信している有償のコンテンツをＰＣ２で閲覧するとき、コンテンツ配信サーバ３からＰＣ２には、コンテンツのストリームデータを暗号化した暗号文が送信され、ＰＣ２はＩＣカード１を用いて、コンテンツの閲覧に対する課金処理を行い、課金処理の対象となる暗号文を復号する。
【００２３】
ＩＣカード１は、本発明に係る認証コマンドと、認証コマンドが成功したときのみ実行可能なコマンドで、コンテンツ配信サーバ３から送信された暗号文を復号する復号コマンドと、を備え、本実施の形態では、復号コマンドが課金処理の対象となる対象コマンドになる。
【００２４】
コンテンツ配信サーバ３がＰＣ２に暗号文を配信する前に、ＰＣ２は、認証コマンドを用いて、ＰＣ２に接続されたＩＣカード１を認証し、ＩＣカード１の認証に成功すると、認証に成功したことを意味するデータをコンテンツ配信サーバ２に送信する。
【００２５】
コンテンツ配信サーバ３が、ＩＣカード１の認証したことを意味するデータを受信すると、暗号文をＰＣ２に送信し、ＰＣ２は、ＩＣカード１の復号コマンドを用いて、送信された暗号文を復号する。
【００２６】
ＩＣカード１を認証するときに用いられる認証コマンドのコマンドＡＰＤＵには、ＩＣカード１を認証するための認証データに加え、コンテンツ閲覧に係る課金金額、ここでは、復号するストリームデータの総データ量に応じた課金金額が含まれる。
【００２７】
認証コマンドをＩＣカード１が受信すると、ＩＣカード１は、認証コマンドに含まれる認証データを認証し、認証データの認証に成功した場合のみ、ＩＣカード１に記憶された電子マネーの残高金額から課金金額を減額すると共に、復号コマンドを用いて暗号文を復号できる回数を示す実行可能回数を課金金額から算出する。
【００２８】
ＩＣカード１に備えられた復号コマンドは、暗号文を復号した回数をカウントし、暗号文を復号した回数が実行可能回数に達したとき、復号コマンドを用いた暗号文の復号を不可にする。
【００２９】
上述したように、本発明に係る課金システムによれば、ＩＣカード１に備えられた認証コマンドによって、暗号文を復号できる実行可能回数が決定付けられるため、認証コマンドで示される実行可能回数を超えて暗号文を復号することはできず、間違いなく閲覧するコンテンツのデータ量に応じた課金を行なうことができようになる。
【００３０】
更に、コンテンツの閲覧に係る課金金額の決済を、認証コマンドのみで行えることで、認証コマンドと決済コマンドを個別に実行するよりも、課金システムの高速化を図ることができる。
【００３１】
ここから、ＩＣカード１について詳細に説明する。図２は、本発明に係るＩＣカード１の外観図である。ＩＣカード１にはＩＣモジュール１ａが実装され、このＩＣモジュール１ａにはＩＣチップ１０がモールドされている。ＩＣカードの詳細な形状はＩＳＯ／ＩＥＣ７８１６規格等で規格化されている。
【００３２】
図３は、ＩＣモジュール１ａにモールドされるＩＣチップ１０のハードウェア構造図である。ＩＣチップ１０は、Ｖｃｃ、Ｒｅｓｅｔ、Ｃｌｏｃｋ、Ｉ／Ｏ及びＧｎｄのそれぞれが入力される５個の外部端子１８を有し、このＩＣチップ１０には、中央演算装置１１（Central Processing Unit、以下ＣＰＵと記す）に、バス１７を介して、読み出し専用メモリ１５（Read Only Memory、以下ROMと記す）、書換え可能なメモリとしてＥＥＰＲＯＭ１６（Electrically Erasable Programmable Read-Only Memoryの略）、揮発性メモリとしてランダムアクセスメモリ１４（Random Access Memory、以下ＲＡＭと記す）、暗号演算専用の回路である暗号演算回路１２、及び、上位装置２とデータを通信するための通信Ｉ／Ｆ回路１３などが接続されている。
【００３３】
図４は、ＩＣカード１のソフトウェア構成図である。図４に示したように、図３で示したＩＣチップ１０のハードウェアを利用し、ＣＰＵ１１を動作させるプログラムとして、ＰＣ２から送信された暗号文を復号する復号コマンド１１０と、ＰＣ２から送信された認証データを認証する認証コマンド１００とを備えている。
【００３４】
更に、ＩＣカード１は、復号コマンド１１０が暗号文を復号する時に利用する暗号鍵１１１と、ＩＣカード１に記憶された電子マネーの貨幣価値を示す残高データ１０１とをＥＥＰＲＯＭ１６などに記憶し、認証コマンド１００によって操作され、認証結果を示すセキュリティステータス１２０と、復号コマンド１１０が実行された回数を示すカウンタ１２１とをＲＡＭ１４に保持している。
【００３５】
認証コマンドとは、ＩＳＯ／ＩＥＣ７８１６で定義されているＶｅｒｉｆｙコマンドのように、ＩＣカードのＥＥＰＲＯＭ１６に記憶された参照データ（図示していない）と、受信した認証データとを照合し、認証データを認証するコマンドである。
【００３６】
図５は、認証コマンドのＡＰＤＵ（Application Protocol Data Unit）の一例を示した図で、図５（ａ）はコマンドＡＰＤＵを示し、図５（ｂ）はレスポンスＡＰＤＵを示している。
【００３７】
図５（ａ）に図示しているように、本実施の形態において、認証コマンド１００のコマンドＡＰＤＵの構造は、ＩＳＯ／ＩＥＣ７８１６のＣａｓｅ３のコマンド構造に準拠し、ＣＬＡ、ＩＮＳ、Ｐ１及びＰ２とから成るコマンドヘッダと、Ｌｃ及びデータフィールドとから成るボディとから構成される。
【００３８】
認証コマンド１００のコマンドＡＰＤＵのヘッダーに含まれるＣＬＡとＩＮＳは、コマンドＡＰＤＵを識別するためのデータで、本実施の形態において、認証コマンド１００のＣＬＡは「Ｄ０ｈ」で、ＩＮＳは「００ｈ」である。
【００３９】
認証コマンド１００のコマンドＡＰＤＵのヘッダーに含まれるＰ１およびＰ２は、認証コマンド１００が実行されるときのパラメータで、本実施の形態においては、Ｐ１及びＰ２で課金金額が示される。また、認証コマンド１００のコマンドＡＰＤＵのＬｃで、データフィールドに含まれるデータのデータ長が示され、データフィールドには認証される認証データが含まれる。
【００４０】
図５（ｂ）に図示したように、認証コマンド１００のレスポンスＡＰＤＵの構造は、ＩＳＯ／ＩＥＣ７８１６に準拠するが、レスポンスＡＰＤＵにレスポンスデータは含まれず、認証コマンド１００の実行結果を示すステータスワード（Status Word）のみである。
【００４１】
本発明では、認証コマンド１００が認証データを認証する方式は如何なる方式でもよく、認証コマンド１００の認証方式にって、コマンドＡＰＤＵに含まれる認証データは異なる。例えば、認証コマンド１００の認証方式がパスワード照合ならば、認証データ１００はパスワードになるし、認証コマンド１００の認証方式がバイオメトリクスデータを利用した方式ならば、認証データはバイオメトリクスデータ（例えば、指紋データ）になる。
【００４２】
認証コマンド１００は、認証データを所定の方式で認証し、認証データを認証した結果をセキュリティステータス１２０に記憶する。
【００４３】
認証データの認証に成功すると、認証コマンド１００は、コマンドＡＰＤＵのＰ１及びＰ２で示される課金金額を残高データ１０１から減算することで、コンテンツの閲覧に係る課金金額を決済する。更に、認証コマンド１００は、Ｐ１及びＰ２で示される課金金額から、暗号文を復号できる回数を示す実行可能回数を演算し、演算した実行可能回数をカウンタ１２１にコピーする。
【００４４】
なお、本実施の形態では、Ｐ１及びＰ２で示される課金金額から実行可能回数を演算するために、認証コマンド１００は、課金金額と実行可能回数の対比表を保持し、この対比表を用いて課金金額から実行可能回数を演算する。
【００４５】
ＩＣカード１に備えられた復号コマンド１１０とは、ＩＣチップ１０の暗号演算回路１２を操作し、ＩＣカード１に記憶された暗号鍵１１１を用い、所定の暗号アルゴリズムに従い、受信した暗号文（ここでは、暗号化されたストリームデータ）を復号し、復号した平文（ここでは、ストリームデータ）を返信するコマンドである。
【００４６】
図６は、復号コマンドのＡＰＤＵ（Application Protocol Data Unit）の一例を示した図で、図６（ａ）はコマンドＡＰＤＵを示し、図６（ｂ）はレスポンスＡＰＤＵを示している。
【００４７】
図６に図示しているように、本実施の形態において、復号コマンド１１０のコマンドＡＰＤＵの構造は、ＩＳＯ／ＩＥＣ７８１６のＣａｓｅ３のコマンド構造に準拠し、ＣＬＡ、ＩＮＳ、Ｐ１及びＰ２とから成るコマンドヘッダと、Ｌｃ及びデータフィールドとから成るボディとから構成される。
【００４８】
復号コマンド１１０のコマンドＡＰＤＵのヘッダーに含まれるＣＬＡとＩＮＳは、コマンドＡＰＤＵを識別するためのデータで、本実施の形態において、復号コマンド１１０のＣＬＡは「Ｄ０ｈ」で、ＩＮＳは「０２ｈ」である。
【００４９】
復号コマンド１１０のコマンドＡＰＤＵのヘッダーに含まれるＰ１およびＰ２は、復号コマンド１１０が実行するときのパラメータであるが、ここではＰ１及びＰ２は使用されず、Ｐ１及びＰ２ともにその値は「００ｈ」である。また、復号コマンドのコマンドＡＰＤＵのＬｃで、データフィールドに含まれるデータのデータ長が示され、データフィールドには復号される暗号文（ここでは、暗号化されたストリームデータ）が含まれる。
【００５０】
復号コマンド１１０は、セキュリティステータス１２０によって、認証コマンド１００が認証データの認証に成功していることが示され、かつ、カウンタ１２１の値が「０」でない場合、復号コマンド１１０の処理を続行し、データフィールドに含まれる暗号文を復号する。そして、復号コマンド１１０は、データフィールドに含まれる暗号文を復号するごとに、カウンタ１２１の値を一つだけ減算する。
【００５１】
ここから、これまで説明した課金システムの動作を説明しながら、本発明に係る課金方法について説明する。また、本発明に係る課金方法について説明することで、ＩＣカードに実装されるコマンドの動作についても明確にする。
【００５２】
図７は、本発明に係る課金方法に含まれる工程を説明する図である。図７に示したように、課金方法には２つの異なる工程が含まれ、その一つは、ＩＣカード１を認証するＩＣカード認証工程Ｐ１で、もう一つは課金対象の対象となる処理が実行される対象処理工程Ｐ２である。
【００５３】
図７に示したように、ＩＣカード認証工程Ｐ１と対象処理工程Ｐ２は一連の工程で、ＩＣカード認証工程Ｐ１が正常に終了したときのみ、対象処理工程Ｐ２は実行可能である。なお、ＩＣカード認証工程Ｐ１の結果を示すセキュリティステータス１２０は揮発性メモリであるＲＡＭ１４に保持されるため、ＩＣカード認証工程Ｐ１が終了した後に、ＩＣカード１が非活性化されたとしても、その後、対象処理工程Ｐ２は実行されない。
【００５４】
図８、ＩＣカード認証工程Ｐ１の詳細な手順を示したフロー図である。このＩＣカード認証工程Ｐ１の最初のステップＳ１は、ＩＣカード１を活性化するステップである。このステップで、ＰＣ２は、ＩＳＯ／ＩＥＣ７８１６に記述された手順に従いＩＣカード１を活性化する。
【００５５】
次のステップＳ２は、認証コマンド１００のコマンドＡＰＤＵをＩＣカード１に送信するステップである。このステップで、ＰＣ２は、認証データと課金金額とを含む認証コマンド１００のコマンドＡＰＤＵをＩＣカード１に送信する。
【００５６】
次のステップＳ３は、ＩＣカード１が認証データを認証するステップである。このステップで、ＩＣカード１に備えられた認証コマンド１００は、ＰＣ２から送信された認証データを所定の方式で認証する。
【００５７】
次のステップＳ４は、ステップＳ３の認証結果によって処理を分岐させるステップである。ステップＳ３で認証データの認証に成功したときはステップＳ５に進み、認証に失敗したときはこの手順を終了する。
【００５８】
認証データの認証に成功したときに実行されるステップＳ５は、セキュリティステータス１２０を更新するステップである。このステップで、認証コマンド１００は、セキュリティステータス１２０の値を認証データの成功したことを示すデータに更新する。
【００５９】
次のステップＳ６は、カウンタ１２１を初期化するステップである。このステップで、認証コマンド１００は、認証コマンド１００のコマンドＡＰＤＵに含まれる課金金額から実行可能回数を算出し、算出した実行可能回数をカウンタにコピーすることで、カウンタ１２１を初期化する。
【００６０】
次のステップＳ７は、課金金額を決済するステップである。このステップで、認証コマンド１００は、認証コマンド１００のコマンドＡＰＤＵに含まれる課金金額を残高データ１０１から減算することで、課金金額を決済する。このステップをもって、ＩＣカード認証工程Ｐ２は終了する。
【００６１】
図９、対象処理工程Ｐ２の詳細な手順を示したフロー図である。この対象処理工程Ｐ２の最初のステップＳ１０は、暗号化したストリームデータである暗号文を含む復号コマンド１１０のコマンドＡＰＤＵを、ＩＣカード１が受信するステップである。このステップで、ＰＣ２は、暗号化したストリームデータである暗号文を含む復号コマンド１１０のコマンドＡＰＤＵをＩＣカード１に送信し、ＩＣカード１はＰＣ２から送信されたコマンドＡＰＤＵを受信し、ＩＣカード１に備えられた復号コマンド１１０が作動する。
【００６２】
次のステップＳ１１は、ＩＣカード１が認証データの認証結果を確認するステップである。このステップで、ＩＣカード１の復号コマンド１１０はセキュリティステータス１２０を参照し、セキュリティステータス１２０の値が認証データの成功したことを示すデータに更新されているか確認する。セキュリティステータス１２０の値が認証データの成功したことを示している場合はステップＳ１２に進み、認証データの成功したことを示していない場合はこの手順を終了する。
【００６３】
次のステップＳ１２は、ＩＣカード１がカウンタ１２１の値を確認するステップである。このステップで、ＩＣカード１の復号コマンド１１０はカウンタ１２１を参照し、カウンタ１２１の値が「０」よりも大きければステップＳ１３に進み、「０」であればこの手順を終了する。
【００６４】
カウンタ１２１の値が「０」よりも大きいときに実行されるステップＳ１３は、復号コマンド１１０のコマンドＡＰＤＵに含まれる暗号文を復号するステップである。このステップで、復号コマンド１１０は、暗号鍵１１１を用いて所定の暗号アルゴリズムで暗号文を復号し、暗号文の平文であるストリームデータを得る。
【００６５】
次のステップＳ１４は、カウンタ１２１の値を減算するステップである。このステップで、ＩＣカード１に備えられた復号コマンド１１０は、カウンタ１２１の値を一つだけ減算する。このステップで、カウンタ１２１の値が「０」になった以降は、ステップＳ１２で処理が分岐されるため、暗号文を復号することはない。
【００６６】
次のステップＳ１５は、復号コマンド１１０のレスポンスデータを送信するステップである。このステップで、暗号文を復号した平文であるストリームデータを含むレスポンスデータとステータスワードから成るレスポンスＡＰＤＵを復号コマンド１１０は生成し、ＩＣカード１は生成したレスポンスＡＰＤＵをＰＣ２に送信する。なお、このステップＳ１５を実行したときは、ステップＳ１０に戻る。
【図面の簡単な説明】
【００６７】
【図１】ＩＣカードを利用した課金システムの一例を示した図。
【図２】ＩＣカードの外観図。
【図３】ＩＣチップのハードウェア構造図。
【図４】ＩＣカードのソフトウェア構成図。
【図５】認証コマンドのＡＰＤＵの一例を示した図。
【図６】復号コマンドのＡＰＤＵの一例を示した図。
【図７】課金方法に含まれる工程を説明する図。
【図８】ＩＣカード認証工程の詳細な手順を示したフロー図。
【図９】対象処理工程の詳細な手順を示したフロー図。
【符号の説明】
【００６８】
１  ＩＣカード
１００  認証コマンド
１１０  復号コマンド
１２０  セキュリティステータス、１２１  カウンタ
２  パーソナルコンピュータ（ＰＣ）
【図１】
2008021187.tif 000003
【図２】
2008021187.tif 000004
【図３】
2008021187.tif 000005
【図４】
2008021187.tif 000006
【図５】
2008021187.tif 000007
【図６】
2008021187.tif 000008
【図７】
2008021187.tif 000009
【図８】
2008021187.tif 000010
【図９】
2008021187.tif 000011