JP2004318564A - Icカード及びicカードプログラム - Google Patents
Icカード及びicカードプログラム Download PDFInfo
- Publication number
- JP2004318564A JP2004318564A JP2003112685A JP2003112685A JP2004318564A JP 2004318564 A JP2004318564 A JP 2004318564A JP 2003112685 A JP2003112685 A JP 2003112685A JP 2003112685 A JP2003112685 A JP 2003112685A JP 2004318564 A JP2004318564 A JP 2004318564A
- Authority
- JP
- Japan
- Prior art keywords
- information
- card
- value information
- invalidation
- proof
- 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.)
- Granted
Links
Images
Landscapes
- Credit Cards Or The Like (AREA)
Abstract
【解決手段】発行用秘密鍵SKadで署名を付した発行証明書と、カウンタ値とを合わせてユーザ秘密鍵PKadで暗号化してユーザICカード20が生成した、対象アプリケーションを削除したことを証明する削除証明書を受信し、公開鍵証明書PKCicから抽出したユーザ公開鍵PKic、記憶している発行用公開鍵PKadで署名の検証、発行証明書の内容の検証、カウンタ値の照合などを行い、削除証明書が正当であると判定した場合に、ライセンス情報の対象アプリケーションの提供可能回数をインクリメントする発行管理ICカード10。
【選択図】 図3
Description
【発明の属する技術分野】
本発明は、アプリケーションの発行などの価値情報の提供を管理するICカード及びICカードプログラムに関するものである。
【0002】
【従来の技術】
近年、MEL(Multos Executable Language)言語、Java言語(「JAVA」は登録商標)などで記述され、基本的にどのようなプラットフォーム(オペレーティングシステムの種類や環境、設定など、以下、「オペレーティングシステム」を「OS」という。)上でも動作可能なアプリケーションを複数搭載することが可能なMULTOSカードやJavaCardなど、複数のアプリケーションを搭載することが可能なプラットフォーム型ICカードが登場している(例えば、特許文献1参照。)。なお、搭載とは、実行可能なように記憶することである。
このプラットフォーム型ICカードは、カードの発行と管理の業務を行う事業主体者であるカード発行者によって発行される。また、アプリケーションは、アプリケーションの実行に必要なカード使用者情報、暗号鍵などの、各ICカードに応じて異なる情報であるカード個別情報を予めアプリケーションに書き込み、初期設定を行う必要があるため、カード個別情報のもとである顧客情報などを有し、アプリケーションにかかるサービスをカード使用者に提供するアプリケーションサービス提供者(以下、「サービス提供者」という。)によって発行される。なお、アプリケーションの発行とは、アプリケーションを使用する情報処理装置などのアプリケーション使用装置にアプリケーションを搭載し、アプリケーションを実行(使用)可能な状態とすることである。
また、ICカードとは、その基材を問わず、SIMカード、ICタグなどの少なくともCPUと、外部との通信手段と、情報を記憶する記憶手段とを備え、使用者が直接的にコマンドを入力するマン・マシンインターフェイスであるキーボード、マウスなどの入力装置を備えていない機密性の高い携帯型の情報処理装置をいう。
【0003】
【特許文献1】
特開2002−56360号公報(第4−5頁、図8)
【0004】
【発明が解決しようとする課題】
しかし、このアプリケーションがカード発行者などのサービス提供者以外の者によって開発された場合には、アプリケーションのコードをサービス提供者が入手するため、リバースエンジニアリングによりプログラムで使用されている技術ノウハウが知られる可能性があった。また、カード発行者及びサービス提供者が機密保持契約を結んだ場合であっても、サービス提供者によって契約違反が行われたときには、カード発行者がその事実を認識すること、また、証明することが困難であるという問題があった。
更に、例えば、カード発行者がサービス提供者にアプリケーションを複製して100枚のICカードに搭載することを許諾する契約を結び、サービス提供者が100枚以上のICカードにこのアプリケーションを搭載した場合であっても、この事実をカード発行者が認識、また、証明することができず、著作権などのアプリケーションにかかる権利がないがしろにされるおそれがあった。
一方、技術ノウハウの流出を防止するため、暗号化やデジタル署名を施したアプリケーションをサービス提供者へ供給し、ICカード内部で復号する場合には、カード個別情報をアプリケーションに書き込み、初期設定を行うことができないという問題があった。
また、実行に暗号鍵を必要とするアプリケーションである場合には、暗号鍵を生成し、アプリケーションへ書き込み、初期設定を行う必要があるため、サービス提供者が機密情報を保護するための高度なセキュリティ設備が必要となり、アプリケーションの発行を行うサービス提供者に負担がかかるおそれがあった。
更に、技術ノウハウの流出の問題及びアプリケーションにかかる権利の問題は、カード発行者及びサービス提供者間だけでなく、データベース、音楽データ、画像データなどの権利対象となる情報、技術ノウハウなどの機密事項を含有する情報などの価値を有するひとまとまりのデータ、プログラムである価値情報(知的財産)を他者へ提供する場合には、生じうる問題である。
本出願人は、これらの問題を解決する「ICカード及びICカードプログラム」の発明について先行出願を行っている(特願2003−008621)。
【0005】
ここで、先行出願にかかるICカード及びICカードプログラムについて説明する。なお、後述する本発明の実施形態の説明の便宜上、先行出願の内容を適宜調整したものを以下に記述する。
図7は、先行出願にかかるICカードの使用形態を説明するための図である。なお、先行出願にかかるICカードは、発行管理ICカード10−3である。
図7に示すように、アプリケーション発行管理システム1−3は、発行管理ICカード10−3と、ユーザICカード20−3と、発行管理ICカード10−3及びユーザICカード20−3のそれぞれがリーダライタ(以下、「リーダライタ」を「R/W」という。)40A,40Bを介して接続されている外部装置30とを備えている。
アプリケーション発行管理システム1−3は、外部装置30が発行管理ICカード10−3から提供される価値情報であるアプリケーション(以下、提供の対象となるアプリケーションを「対象アプリケーション」という。)を、この対象アプリケーションを実行し、使用する所定の価値情報使用装置である複数のユーザICカード20−3(20A−3,20B−3,20C−3,・・・)へ個々に書き込み、対象アプリケーションの発行(アプリケーション発行処理)を行うシステムである。
【0006】
外部装置30は、キーボードなどの入力手段、ディスプレイなどの出力手段、R/W40A,40Bと通信を行う入出力インターフェイスなどの通信手段、CPUなどの制御手段、プログラム、カード個別情報DBなどのデータを記憶する記憶手段などを備え、サービス提供者が管理するコンピュータであって、R/W40Aを介して発行管理ICカード10−3と、R/W40Bを介してユーザICカード20−3と通信を行う。カード個別情報DBは、各ユーザICカード20−3に応じたカード個別情報を格納している。外部装置30は、所定のコマンドを送信することによって、発行管理ICカード10−3から情報を読み出し、この読み出した情報をユーザICカード20−3へ書き込み、同様に、ユーザICカード20−3から読み出した情報を発行管理ICカード10−3へ書き込むなど、発行管理ICカード10−3及びユーザICカード20−3間の情報の授受を実現させる。
【0007】
図8は、先行出願にかかるICカードの実施形態を示すブロック図である。
図8に示すように、発行管理ICカード10−3は、通信部11と、CPU12−3と、3つのメモリ13,14,15−3とを備え、アプリケーションを提供するカード発行者によって初期設定が行われ、発行される。通信部11及びメモリ13,14,15−3は、CPU12−3に接続されている。
通信部11は、R/W40Aの接触端子と接触して電気的導通を行う複数の端子などを備え、R/W40Aに挿入され、接続されることによって、電源、クロックの供給を受け、R/W40Aと情報の送受信、つまり、R/W40Aからの情報の入力及びR/W40Aへの情報の出力を行う入出力手段であり、R/W40Aとともに、CPU12−3及び外部装置30間の通信を媒介する。
【0008】
3つのメモリは、RAM13、ROM14及び不揮発性メモリ15−3であり、プログラム、データなどのCPU12−3の処理に必要な情報を記憶するための記憶手段である。RAM13は、揮発性メモリであり、CPU12−3が処理を行う作業領域として使用される。ROM14は、不揮発性の読み出し専用メモリであって、OSなどの基本ソフトウェア、実行環境などのプログラム、パラメータなどのハードウェアを管理し、アプリケーションがこれを利用できるようにするプログラム及びデータを格納している。
【0009】
不揮発性メモリ15−3は、EEPROM、フラッシュメモリ、FRAMなどの随時書き換え可能な不揮発性のメモリであり、通常ユーザのワークエリア、プログラムエリアなどとして使用され、複数のアプリケーションを記憶することが可能である。また、不揮発性メモリ15−3は、対象アプリケーション、ライセンス情報、アプリケーション発行用公開鍵(以下、「発行用公開鍵」という。)PKad、発行情報などを記憶している。
【0010】
図9は、先行出願にかかる発行管理ICカード及びユーザICカードの不揮発性メモリが記憶している情報を説明するための図である。
図9に示すように、対象アプリケーション、ライセンス情報、発行用公開鍵PKad及び発行情報は、発行管理ICカード10−3の初期設定を行う発行段階において不揮発性メモリ15−3に書き込まれる。対象アプリケーションは、プログラムコードを格納するコード部と、このプログラムコードの実行に必要なデータを格納するデータ部とを備え、不揮発性メモリ15−3に機密保持状態で記憶されている。対象アプリケーションのデータ部は、カード個別情報を含んでいない状態である。
【0011】
ライセンス情報は、対象アプリケーションの複製、外部への出力などを制限し、ユーザICカード20−3へ対象アプリケーションを提供する回数を制限するための提供回数制限情報であって、本実施形態においては、CPU12−3の提供許否判定部124が暗号化部121による対象アプリケーションの暗号化(後述する図10参照)を許可するか否かを判定するにあたり、基とする情報であって、発行管理ICカード10−3が暗号化アプリケーションを生成することができる回数(100回)を示し、暗号化アプリケーションを生成するたびに回数が減少する。従って、発行管理ICカード10−3は、この回数だけ対象アプリケーションを暗号化し、暗号化アプリケーションを生成すること、つまり、複製することができる。カード発行者は、発行管理ICカード10−3の生成過程において、サービス提供者に許諾した、対象アプリケーションを複製し、発行できる回数(提供可能回数)をこのライセンス情報に設定する。ライセンス情報の読み出しは、所定の読み出しコマンドで行うことができるが、書き込み及び書き換えは、認証などの所定の条件を満たすことが必要である。発行用秘密鍵SKad及び発行用公開鍵PKadは、公開鍵暗号方式で使用されるペアの暗号鍵であって、カード発行者によって所有、管理される。特に発行用秘密鍵SKadは、他の者に漏洩することのないように機密保持状態で、つまり、セキュアに管理されている。発行情報は、対象アプリケーションの提供元、つまり、カード発行者(発行管理ICカード10−3)の識別情報と、対象アプリケーションの種類、バージョン、ID番号などのアプリケーションの属性情報などとを含んでいる。
【0012】
図8に示すように、CPU12−3は、ROM14、不揮発性メモリ15−3などに格納されているOS、アプリケーションなどのプログラムを実行することによって、発行管理ICカード10−3を統括制御し、R/W40Aから受信するコマンドに応じた処理を行い、暗号化部121、復号部122、使用正当性判定部123、提供許否判定部124、書込/書換部125、発行証明生成部126などを実現し、処理結果をレスポンスとしてR/W40Aへ送信する。各部の機能については、図10を用いて後述する。
【0013】
ユーザICカード20−3は、通信部21と、CPU22−3と、3つのメモリ23,24,25などとを備え、事業主体者であるカード発行者によって発行される。通信部21及びメモリ23,24,25は、CPU22−3に接続されている。
通信部21は、発行管理ICカード10−3の通信部11と同様の機能を備え、R/W40Bとともに、CPU22−3及び外部装置30間の通信を媒介する。
3つのメモリは、RAM23、ROM24及び不揮発性メモリ25であり、発行管理ICカード10−3のRAM13、ROM14及び不揮発性メモリ15−3と同様の機能を備えている。不揮発性メモリ25は、RSAなどの公開鍵暗号方式で使用される、ユーザICカード20−3に固有のユーザ秘密鍵SKic、公開鍵証明書PKCic、カード情報などを記憶している。
【0014】
図9に示すように、公開鍵証明書PKCic、ユーザ秘密鍵SKic、カード情報は、ユーザICカード20−3の発行段階において不揮発性メモリ25に書き込まれ、特にユーザ秘密鍵SKicは、不揮発性メモリ25に機密保持状態で記憶されている。ユーザ秘密鍵SKic及びユーザ公開鍵PKicは、公開鍵暗号方式で使用されるユーザICカードに固有のペアの暗号鍵であって、カード発行者によって所有及び管理される。カード発行者は、ユーザICカード20−3毎に異なる暗号鍵ペアを準備する。カード情報は、ユーザICカード20−3の識別情報、カード発行者の識別情報などのユーザICカード20−3の属性情報などを含んでいる。
【0015】
公開鍵証明書PKCicは、公開鍵証明書PKCicに含まれるユーザ公開鍵PKicがユーザICカード20−3の公開鍵であることを示す情報を、発行用秘密鍵SKadで暗号化し、デジタル署名を付したものである。デジタル署名とは、署名が付される情報の作成者を証明し、その情報が改竄されていないことを保証するとともに、署名者がその情報を作成したことを否認することができないようにする電子署名の一種であって、情報の正当性を保証するために付される暗号化された署名情報である。署名者は、自身の秘密鍵を用いて暗号化した署名を情報に付して送る。受取人は、署名者の公開鍵を用いて署名を復号し、正当性の認証を行う。従って、公開鍵証明書PKCicは、発行用秘密鍵SKadの管理者であり、対象アプリケーションにかかる権利を有するカード発行者が、ユーザICカード20−3における対象アプリケーションの使用を許諾したことを証明するための情報であって、ユーザICカード20−3が対象アプリケーションを正当に使用できることを認証するための正当使用認証情報である。
【0016】
図8に示すように、CPU22−3は、ROM24、不揮発性メモリ25などに格納されているOS、アプリケーションなどのプログラムを実行することによって、ユーザICカード20−3を統括制御し、コマンドに応じた処理を行い、復号部221、書込/書換部222、受領証明生成部223などを実現し、処理結果をレスポンスとしてR/W40Bへ送信する。各部の機能については、図10を用いて後述する。
【0017】
図10及び図11は、先行出願にかかるICカードの実施形態における動作及び先行出願にかかるICカードプログラムの実施形態を示す図であって、アプリケーション発行処理を示している。図10は、フローチャートであり、図11は、発行管理ICカード及びユーザICカードにおける情報の入出力を説明するための図である。なお、発行管理ICカード10−3、ユーザICカード20−3及び外部装置30の処理を中心に説明し、外部装置30を図示しない。
図10に示すように、ステップ700及びステップ800(以下、「ステップ」を「S」という。)において、発行管理ICカード10−3は、R/W40Aに、ユーザICカード20−3は、R/W40Bにそれぞれ挿入され、電源などの供給を受け、活性化されている。
S701において、発行管理ICカード10−3は、カード個別情報を含み、カード個別情報の書き込みを要求するコマンドを外部装置30から受信し、書込/書換部125は、不揮発性メモリ15−3に記憶されている対象アプリケーションのデータ部にカード個別情報を書き込み、正常終了のレスポンスを外部装置30へ送信する(図11の#410)。
【0018】
S801において、ユーザICカード20−3は、公開鍵証明書PKCicの読み出しを要求するコマンドを外部装置30から受信し、レスポンスとして公開鍵証明書PKCicを外部装置30へ送信する(S802、#420)。また、ユーザICカード20−3は、同様にカード情報の読み出しを要求するコマンドを受信し(S803)、カード情報を外部装置30へ送信する(S804、#430)
S702において、発行管理ICカード10−3は、公開鍵証明書PKCicを含み、暗号化アプリケーションの生成を要求するコマンドを受信する(#440)。また、このコマンドは、対象アプリケーションを提供するために、対象アプリケーションの暗号化を要求する、つまり、対象アプリケーションの提供にかかる処理を行うことを要求するアプリケーション提供要求である。S703において、提供許否判定部124は、不揮発性メモリ15−3に記憶されているライセンス情報に基づいて、対象アプリケーションの暗号化を許可するか否かを判定する。具体的には、提供許否判定部124は、ライセンス情報が1回以上であるか否かを判定し、0回である場合には、否と判定し、その旨を示すエラーのレスポンスを外部装置30へ送信し(S713)、処理を終了する(S714)。
【0019】
ライセンス情報が1回以上である場合には、復号部122は、公開鍵証明書PKCicを発行用公開鍵PKadで復号する(S704)。使用正当性判定部123は、復号部122が復号できるか否かに基づいて、デジタル署名の正当性を検証、つまり、ユーザICカード20−3による対象アプリケーションの使用が正当であるか否かを判定する(S705、#450)。復号できず、使用正当性判定部123が否と判定した場合には、その旨を示すエラーのレスポンスを外部装置30へ送信し(S713)、処理を終了する(S714)。
【0020】
一方、使用正当性判定部123が肯と判定した場合には、CPU12−3は、ライセンス情報を1回減らし(S706、#460)、暗号化部121は、個別情報の書き込まれている対象アプリケーションをカード発行者が使用を許可したユーザICカード20−3でのみ復号可能なように暗号化する(S707、#470)。つまり、ユーザICカード20−3に記憶されているユーザ秘密鍵SKicに対応する公開鍵証明書PKCicから抽出したユーザ公開鍵PKicで対象アプリケーションを暗号化し、暗号化アプリケーションを生成する。発行管理ICカード10−3は、正常終了のレスポンスを外部装置30へ送信し(S708)、ユーザICカード20−3のカード情報を含み、暗号化アプリケーションの読み出し及び発行証明書の生成を要求するコマンドを外部装置30から受信する(S709、#480)。S710において、発行証明生成部126は、発行証明書を生成する(#490)。発行証明書は、対応する対象アプリケーションを発行管理ICカード10−3からユーザICカード20−3へ提供したこと、つまり、対象アプリケーションの提供経路を、対象アプリケーションの提供を管理するカード発行者が証明する情報である。発行証明生成部126は、対象アプリケーションの提供先であるユーザICカード20−3を識別する提供先カード識別情報、対象アプリケーションの提供元である発行管理ICカード10−3を識別する提供元カード識別情報、対象アプリケーションの属性情報などを含む発行情報及びカード情報を、発行用秘密鍵SKadで暗号化し、デジタル署名を付して発行証明書を生成する。発行管理ICカード10−3は、暗号化アプリケーション及び発行証明書を含むレスポンスを送信する(S711、#500)。
【0021】
ユーザICカード20−3は、暗号化アプリケーション及び発行証明書を含み、対象アプリケーション及び発行証明書の書込を要求するコマンドを外部装置30から受信し(S805、#510)、復号部221は、ユーザ秘密鍵SKicを用いて暗号化アプリケーションを復号し(S806、#520)、書込/書換部222は、復号された対象アプリケーションを不揮発性メモリ25へ書き込む(S807、#530)。受領証明生成部223は、対象アプリケーションの書込が完了したICカード、つまり、ユーザICカード20−3の識別情報と、対象アプリケーションの提供元である発行管理ICカード10−3の識別情報、対象アプリケーションの属性情報などを含む情報を、ユーザ秘密鍵SKicで暗号化し、受領証明書を生成する(S808)。ユーザICカード20−3は、この受領証明書を含む正常終了のレスポンスを外部装置30へ送信し(S809)、処理を終了する(S810)。不揮発性メモリ25は、書き込まれた対象アプリケーションを機密保持状態で記憶する。発行管理ICカード10は、この受領証明書を受信し、不揮発性メモリ25へ書き込み(S712)、処理を終了する(S714)。
なお、複数のユーザICカード20−3に対象アプリケーションを提供する場合には、R/W40Bに挿入されているユーザICカード20−3を入れ替え、同様の処理を繰り返す。なお、この場合には、S701において、発行管理ICカード10−3の書込/書換部125は、不揮発性メモリ15−3に記憶されている対象アプリケーションのカード個別情報を書き換える。
【0022】
しかし、以上説明した先願にかかる発明においては、婚姻によるカード使用者の名義変更などによって、発行済みの対象アプリケーションを搭載したユーザICカード20−3の券面上の情報が有効性を失った場合には、券面上の情報を変更した新たなユーザICカード20−3を再発行する必要があり、この新たなユーザICカード20−3に再び対象アプリケーションを発行したときには、新たなライセンス情報が消費される(図10のS706)。つまり、同一のカード使用者に対して同一の対象アプリケーションを発行する場合であっても、ライセンス情報が消費されることとなり、対象アプリケーションの使用許諾という概念にそぐわず、利便性に欠けるおそれがあった。
また、対象アプリケーションがバージョンアップし、ユーザICカード20−3から旧バージョンの対象アプリケーションを削除するなど、発行済みの対象アプリケーションを以後使用できない状態とする対象アプリケーションの無効化と引き換えに新バーションの対象アプリケーションの使用を許諾(発行)する場合には、旧バージョンの対象アプリケーションが無効化されたか否かを確実に確認できず、実現性に欠けるという問題があった。
【0023】
本発明の課題は、価値情報の提供にかかる負担を軽減し、価値情報にかかる知的財産を保護することが可能であるとともに、提供した価値情報の無効化にかかる上記諸問題に対処するなどの応用性及び利便性の高いICカード及びICカードプログラムを提供することである。
【0024】
【課題を解決するための手段】
本発明は、以下のような解決手段により、前記課題を解決する。なお、理解を容易にするために、本発明の実施形態に対応する符号を付して説明するが、これに限定されるものではない。すなわち、請求項1の発明は、ひとまとまりのデータ及び/又はプログラムである価値情報を使用する価値情報使用装置(20)へ提供するための前記価値情報を記憶する価値情報記憶手段(15,15−2)と、前記価値情報の複製及び/又は外部への出力を行うことができる回数である提供可能回数を含む提供回数制限情報を記憶する提供回数制限情報記憶手段(15,15−2)とを備えるICカードであって、外部から無効化証明情報を入力する無効化証明情報入力手段(11)と、前記無効化証明情報入力手段によって入力される無効化証明情報が正当なものであるか否かを判定する無効化証明判定手段(127,127−2)と、前記無効化証明判定手段によって肯と判定された場合に、前記提供可能回数を増加させるように前記提供回数制限情報記憶手段によって記憶されている提供回数制限情報を書き換える前記提供回数制限情報書き換え手段(125)とを備えること、を特徴とするICカード(10,10−2)である。
【0025】
請求項2の発明は、請求項1に記載のICカードにおいて、所定の前記価値情報使用装置でのみ復号可能なように、前記価値情報記憶手段によって記憶されている価値情報を暗号化し、暗号化価値情報を生成する暗号化手段(121)と、前記暗号化手段によって生成される暗号化価値情報を外部へ出力する価値情報出力手段(11)とを備え、前記提供回数制限情報書き換え手段は、前記暗号化手段による前記価値情報の暗号化、及び/又は、前記価値情報出力手段による前記暗号化価値情報の外部への出力に応じて、前記提供可能回数を減少させるように前記提供回数制限情報記憶手段によって記憶されている提供回数制限情報を書き換えること、を特徴とするICカード(10,10−2)である。
【0026】
請求項3の発明は、請求項1又は請求項2に記載のICカードにおいて、前記価値情報記憶手段は、前記価値情報使用装置へ提供する一又は複数のアプリケーションを記憶すること、を特徴とするICカード(10,10−2)である。
【0027】
請求項4の発明は、請求項1から請求項3までのいずれか1項に記載のICカードにおいて、前記無効化証明判定手段は、前記無効化証明情報が所定の前記価値情報使用装置において所定の価値情報が無効とされたことを証明するか否かを判定する無効化過程判定手段(127)を有し、前記無効化過程判定手段によって否と判定された場合に、否と判定すること、を特徴とするICカード(10,10−2)である。
【0028】
請求項5の発明は、請求項4に記載のICカードにおいて、前記無効化過程判定手段は、前記無効化証明情報に所定の電子署名が付されているか否かに基づいて、前記所定の価値情報使用装置において価値情報が無効とされたか否かを判定する装置正当性判定手段(127,S510,S520)を有し、前記装置正当性判定手段によって否と判定された場合に、否と判定すること、を特徴とするICカード(10,10−2)である。
【0029】
請求項6の発明は、請求項4又は請求項5に記載のICカードにおいて、前記無効化過程判定手段は、前記価値情報の属性情報、前記価値情報の提供元の識別情報又は前記価値情報の提供先の識別情報のうちの少なくとも一を含む、前記無効化証明情報に含まれる提供経路情報に基づいて、前記所定の価値情報が無効とされたか否かを判定する価値情報正当性判定手段(127,S550,S560)を有し、前記価値情報正当性判定手段によって否と判定された場合に、否と判定すること、を特徴とするICカード(10,10−2)である。
【0030】
請求項7の発明は、請求項6に記載のICカードにおいて、前記価値情報正当性判定手段は、前記提供経路情報に所定の電子署名が付されているか否かに基づいて、前記提供経路情報が正当なものであるか否かを判定する提供経路正当性判定手段(127,S530,S540)を有し、前記提供経路正当性判定手段によって否と判定された場合に、否と判定すること、を特徴とするICカード(10,10−2)である。
【0031】
請求項8の発明は、請求項1から請求項7までのいずれか1項に記載のICカードにおいて、前記無効化証明判定手段は、前記無効化証明情報入力手段によって入力された無効化証明情報と同一の無効化証明情報が以前に入力されていたか否かを判定する重複入力判定手段(127,S570,S580)を有し、前記重複入力判定手段によって肯と判定された場合に、否と判定すること、を特徴とするICカード(10,10−2)である。
【0032】
請求項9の発明は、請求項8に記載のICカードにおいて、処理段階の進行に応じて書き換えられる処理段階の識別情報である処理段階情報を記憶する処理段階情報記憶手段(15,15−2)と、所定の要求があった場合に、前記処理段階情報記憶手段によって記憶されている処理段階情報を出力する処理段階情報出力手段(11)とを備え、前記重複入力判定手段は、前記無効化証明情報入力手段によって入力された無効化証明情報に含まれる、前記処理段階情報出力手段によって出力された処理段階情報と、前記処理段階情報記憶手段によって記憶されている処理段階情報とを照合し、判定を行うこと、を特徴とするICカード(10,10−2)である。
【0033】
請求項10の発明は、ひとまとまりのデータ及び/又はプログラムである価値情報を使用する価値情報使用装置へ提供するための前記価値情報を記憶する価値情報記憶手段(15,15−2)と、前記価値情報の複製及び/又は外部への出力を行うことができる回数である提供可能回数を含む提供回数制限情報を記憶する提供回数制限情報記憶手段(15,15−2)とを備えるICカード(10,10−2)のCPU(12,12−2)に実行させるICカードプログラムであって、所定の要求があった場合に、外部から入力した無効化証明情報が正当なものであるか否かを判定する無効化証明判定ステップ(S140,S160)と、前記無効化証明判定ステップにおいて肯と判定された場合に、前記提供可能回数を一増加させるように前記提供回数制限情報記憶手段によって記憶されている提供回数制限情報を書き換える提供回数制限情報書き換えステップ(S180)とを備えること、を特徴とするICカードプログラムである。
【0034】
請求項11の発明は、請求項10に記載のICカードプログラムにおいて、前記無効化証明判定ステップは、前記無効化証明情報が所定の前記価値情報使用装置において所定の価値情報が無効とされたことを証明するか否かを判定する無効化過程判定ステップ(S140,S510〜S570)を有し、前記無効化過程判定ステップにおいて否と判定した場合に、否と判定すること、を特徴とするICカードプログラムである。
【0035】
請求項12の発明は、請求項11に記載のICカードプログラムにおいて、前記無効化過程判定ステップは、前記無効化証明情報に所定の電子署名が付されているか否かに基づいて、前記所定の価値情報使用装置において価値情報が無効とされたか否かを判定する装置正当性判定ステップ(S510,S520)を有し、前記装置正当性判定ステップにおいて否と判定した場合に、否と判定すること、を特徴とするICカードプログラムである。
【0036】
請求項13の発明は、請求項11又は請求項12に記載のICカードプログラムにおいて、前記無効化過程判定ステップは、前記価値情報の属性情報、前記価値情報の提供元の識別情報又は前記価値情報の提供先の識別情報のうちの少なくとも一を含む、前記無効化証明情報に含まれる提供経路情報に基づいて、前記所定の価値情報が無効とされたか否かを判定する価値情報正当性判定ステップ(S550,S560)を有し、前記価値情報正当性判定ステップにおいて否と判定した場合に、否と判定すること、を特徴とするICカードプログラムである。
【0037】
請求項14の発明は、請求項13に記載のICカードプログラムにおいて、前記価値情報正当性判定ステップは、前記提供経路情報に所定の電子署名が付されているか否かに基づいて、前記提供経路情報が正当なものであるか否かを判定する提供経路正当性判定ステップ(S530,S540)を有し、前記提供経路正当性判定ステップにおいて否と判定した場合に、否と判定すること、を特徴とするICカードプログラムである。
【0038】
請求項15の発明は、請求項10から請求項14までのいずれか1項に記載のICカードプログラムにおいて、前記無効化証明判定ステップは、前記外部から入力した無効化証明情報を以前に入力していたか否かを判定する重複入力判定ステップ(S570,S580)を有し、前記重複入力判定ステップにおいて肯と判定した場合に、否と判定すること、を特徴とするICカードプログラムである。
【0039】
請求項16の発明は、請求項15に記載のICカードプログラムにおいて、所定の要求があった場合に、処理段階の進行に応じて書き換えられる処理段階の識別情報である処理段階情報を出力する処理段階情報出力ステップ(S110)を備え、前記重複入力判定ステップは、前記外部から入力した無効化証明情報に含まれる、前記処理段階情報出力ステップにおいて出力された処理段階情報に基づいて判定を行うこと、を特徴とするICカードプログラムである。
【0040】
【発明の実施の形態】
以下、図面などを参照しながら、本発明の実施の形態について、更に詳しく説明する。
(第1実施形態)
図1は、本発明によるICカードの第1実施形態を示すブロック図である。
なお、前述した実施形態と同様の機能を果たす部分には、同一の符号を付して、重複する説明を適宜省略する。また、本発明によるICカードは、発行管理ICカード10である。
図1に示すように、アプリケーション発行管理システム1は、発行管理ICカード10と、ユーザICカード20と、発行管理ICカード10及びユーザICカード20のそれぞれがR/W40A,40Bを介して接続されている外部装置30とを備え、アプリケーション発行処理、発行管理ICカード10が発行した対象アプリケーションの削除を確認するアプリケーション削除確認処理などを行い、対象アプリケーションの発行を管理するシステムである。
【0041】
発行管理ICカード10は、発行管理ICカード10−3と同様の構成を備えている。
不揮発性メモリ15は、対象アプリケーション、ライセンス情報、発行用公開鍵PKad、発行用秘密鍵SKad、発行情報、カウンタ値などを記憶している。カウンタ値は、各トランザクションがコミット(処理の成功が確定)するたびにその値がインクリメントされる処理段階の識別情報である。トランザクションとは、関連する複数の処理を一つの処理単位としてまとめたものである。
【0042】
CPU12は、ROM14、不揮発性メモリ15などに格納されているプログラムを実行することによって、暗号化部121、復号部122、使用正当性判定部123、提供許否判定部124、書込/書換部125、発行証明生成部126、削除証明判定部127などを実現する。削除証明判定部127の機能については、図2、図3及び図4を用いて後述する。
【0043】
ユーザICカード20は、ユーザICカード20−3と同様の構成を備え、図10に示すアプリケーション発行処理が行われ、発行管理ICカード10から対象アプリケーション及び発行証明の提供を受け、カード使用者へ配布された後に、券面上の情報が有効性を失うなどの事情により使用できなくなり、サービス提供者に返送されたカードである。
不揮発性メモリ25は、発行管理ICカード10から提供された対象アプリケーション、発行証明書などを記憶している。
【0044】
CPU22は、ROM24、不揮発性メモリ25などに格納されているプログラムを実行することによって、復号部221、書込/書換部222、受領証明生成部223、削除証明生成部224などを実現する。削除証明生成部224の機能については、図2及び図3を用いて後述する。
【0045】
図2及び図3は、本発明によるICカードの第1実施形態における動作及び本発明によるICカードプログラムの第1実施形態を示す図であって、アプリケーション削除確認処理を示している。図2は、フローチャートであり、図3は、発行管理ICカード及びユーザICカードにおける情報の入出力を説明するための図である。なお、発行管理ICカード10、ユーザICカード20及び外部装置30の処理を中心に説明し、外部装置30を図示しない。また、発行管理ICカード10のS100からS210までの処理は、トランザクションとして管理されている。
図2に示すように、S100において、発行管理ICカード10は、R/W40Aに、ユーザICカード20は、R/W40Bにそれぞれ接続されている状態にある。
【0046】
S110において、発行管理ICカード10は、所定のコマンドを外部装置30から受信し、カウンタ値を送信する(図3の#10)。ユーザICカード20は、外部装置30からこのカウンタ値を引数として、指定する対象アプリケーションの削除を要求するコマンドを外部装置30から受信する(S310、#20)。ユーザICカード20は、指定された対象アプリケーションを削除し(S320、#30)、削除証明生成部224は、対象アプリケーションを削除したことを証明するための削除証明書の生成を行う(S330、#40)。つまり、削除証明生成部224は、削除した対象アプリケーションの発行証明書を読み出し、引数のカウンタ値と合わせて、ユーザ秘密鍵SKicで暗号化することによってユーザICカード20のデジタル署名を付した削除証明書を生成する。ユーザICカード20は、レスポンスとしてこの削除証明書を外部装置30へ送信する(S340、#50)。また、ユーザICカード20は、所定のコマンドを受信し、公開鍵証明書PKCicを外部装置30へ送信し(S350、#60)、処理を終了する(S360)。
外部装置30は、所定のコマンドを送信することによって、削除証明及び公開鍵証明書PKCicを発行管理ICカード10へ送信し、発行管理ICカード10は、受信した削除証明及び公開鍵証明書PKCicを記憶する(S120、#70)。発行管理ICカード10は、ライセンス回収要求を受信し(S130)、削除証明判定部127は、S120において記憶している公開鍵証明書PKCicの検証を行い(S140、#80)、公開鍵証明書PKCicが所定の条件を満たす正当なものであるか否かの判定を行う(S150)。
【0047】
図4は、削除証明判定部127の処理を示すフローチャートであり、図4(a)は、公開鍵証明書の検証処理(図2のS140)を示し、図4(b)は、削除証明書の検証処理(図2のS160)を示している。
図4(a)に示すように、削除証明判定部127は、先ず、公開鍵証明書PKCicに所定のデジタル署名が付されているか、つまり、公開鍵証明書PKCicを発行用公開鍵PKadで復号できるか否かに基づいて公開鍵証明書PKCicの信頼性(信頼できるか否か)を検証する(S410,S420)。信頼できないと判定した場合(復号できない場合)には、削除証明判定部127は、公開鍵証明書PKCicを正当でないと判定する(S460)。信頼できると判定した場合には、削除証明判定部127は、公開鍵証明書PKCicから抽出できる公開鍵が所定のユーザICカード20(発行管理ICカード10から対象アプリの提供を受けたICカード)のユーザ公開鍵PKicであるかを公開鍵証明書PKCicに含まれる公開鍵の属性情報に基づいて検証する(S430)。公開鍵の属性が条件を満たす正当なものであると判定した場合には、公開鍵証明書PKCicは、正当であると判定し(S450)、条件を満たさない場合には、正当でないと判定する(S460)。
【0048】
図2に示すように、公開鍵証明書PKCicの検証(S140)において、削除証明判定部127が正当でない判定した場合には、その旨のエラーのレスポンスを外部装置30へ送信し(S200)、処理を終了する(S210)。正当と判定した場合には、削除証明判定部127は、削除証明書の検証を行い(S160)、削除証明書が所定の条件を満たす正当なものであるか否かを判定する(S170)。
【0049】
図4(b)に示すように、削除証明判定部127は、削除証明書をS140で検証済のユーザ公開鍵PKicによって復号できるか否かに基づいて削除証明書の信頼性を検証する(S410,S420、#90)。信頼できないと判定した場合には、削除証明判定部127は、削除証明書を正当でないと判定する(S600)。信頼できると判定した場合には、削除証明判定部127は、発行証明書を発行用公開鍵PKadで復号できるか否かに基づいて発行証明書の信頼性を検証する(S530,S540、#100)。信頼できないと判定した場合には、削除証明判定部127は、削除証明書を正当でないと判定する(S600)。信頼できると判定した場合には、削除証明判定部127は、削除されたアプリケーションが所定の条件を満たす正当なものかを発行証明書に基づいて検証する(S550,S560、#110)。具体的には、削除証明判定部127は、削除された対象アプリケーションの提供経路、つまり、発行証明書の発行情報及びカード情報に含まれる、提供先カード識別情報、提供元カード識別情報、対象アプリケーションの属性情報などが所定の条件を満たすか否かを記憶されている発行情報などを参照して判定する。
【0050】
本実施形態においては、提供先カード識別情報が示す対象アプリケーションの提供先が公開鍵証明書PKCicの示すユーザICカード20であること、提供元カード識別情報が示す対象アプリケーションの提供元が発行管理ICカード10であること、対象アプリケーションが所定の種類などであることを所定の条件としている。いずれかの条件を満たさないと判定した場合には、削除証明判定部127は、削除証明書を正当でないと判定する(S600)。
これらの条件を全て満たすと判定した場合には、削除証明判定部127は、削除証明書に含まれるカウンタ値と、記憶しているカウンタ値とを照合し、削除証明書に含まれるカウンタ値が同一のトランザクションにおいて外部装置30へ送信されたもの(S110)であるか否かを判定する(S570,S580、#120)。カウンタ値が一致する場合には、削除証明書を正当と判定する(S590)。カウンタ値が異なる場合、例えば、このトランザクションがコミット(S190)した後に、同一の削除証明書などを受信し、同様の処理を行った場合(S110からS160まで)などには、削除証明判定部127は、削除証明書を正当でないと判定する(S600)。
【0051】
図2に示すように、削除証明書の検証(S160)において正当でないと判定した場合には、その旨のエラーのレスポンスを外部装置30へ送信し(S200)、処理を終了する(S210)。正当と判定した場合には、書込/書換部125は、ライセンス情報の提供可能回数をインクリメントし(S180、#130)、正常終了の旨のレスポンスを外部装置30へ送信し(S190)、処理を終了する(S210)。なお、書込/書換部125は、トランザクションの要求があった直後(S110)など、一のトランザクション毎に一度カウンタ値をインクリメントする。
【0052】
このように、第1実施形態によれば、使用者が直接的にコマンドを入力するマン・マシンインターフェイスであるキーボード、マウスなどの入力装置を備えていない機密性の高い発行管理ICカード10が対象アプリケーションを記憶することによって、意図しない外部への対象アプリケーションの漏洩を防止することが可能となった。
また、発行管理ICカード10は、不揮発性メモリ15に記憶しているライセンス情報に基づいて、対象アプリケーションの暗号化(複製)を許可するか否かを判定する提供許否判定部124を備えるため、無許諾による複製などの不正な使用を防止し、対象アプリケーションにかかる知的財産の保護を図ることが可能となった。
【0053】
更に、発行管理ICカード10は、不揮発性メモリ15に記憶されている対象アプリケーションをユーザICカード20のユーザ公開鍵PKicで暗号化する暗号化部121を備え、暗号化アプリケーションを外部へ出力することによって、対象アプリケーションの漏洩及び不正使用を防止することが可能となった。
更にまた、発行管理ICカード10は、カード個別情報を含む対象アプリケーションを暗号化して生成した暗号化アプリケーションを外部へ出力することによって、カード個別情報を含む対象アプリケーションの発行を可能とし、カード個別情報の漏洩を防止するとともに、サービス提供者、カード使用者などの利便性の向上を図ることが可能となった。
また、発行管理ICカード10は、外部から入力した公開鍵証明書PKCicに基づいてユーザICカード20による対象アプリケーションの使用が正当であるか否かを判定する使用正当性判定部123を備えるため、正当使用者であるユーザICカード20を識別して対象アプリケーションを提供することが可能となった。
【0054】
更に、発行管理ICカード10は、信頼性を検証したユーザ公開鍵PKicで削除証明書を復号し、その信頼性を検証するため、対象アプリケーションの削除が所定のユーザICカード20で行われたことを確実に確認することが可能となった。
同様に、発行管理ICカード10は、自身の発行用公開鍵PKadで削除証明書に含まれる発行証明書を復号し、その信頼性を検証するとともに、発行証明書に含まれる発行情報、カード情報などを検証するため、削除されたアプリケーションが所定の対象アプリケーションであることを確実に確認することが可能となった。
【0055】
また、発行管理ICカード10は、カウンタ値の照合を行うため、例えば、ライセンス情報の提供可能回数がインクリメントされてコミットしたアプリケーション削除確認処理の後に、同一の公開鍵証明書及び削除証明書を用いてアプリケーション削除確認処理を行った場合にはエラーとなるため、複製などの不正な削除証明書を排除することが可能となった。
更に、発行管理ICカード10は、削除されたアプリケーションが所定の対象アプリケーションであること、対象アプリケーションの削除が所定のユーザICカード20で行われたことを確認し、ライセンス情報の提供可能回数をインクリメントするため、無体物である対象アプリケーションを回収したことと同等の結果を得ることができ、対象アプリケーションを確実に管理し、応用性及び利便性を高めることが可能となった。
【0056】
(第2実施形態)
図5は、本発明によるICカードの第2実施形態を示すブロック図である。
図5に示すように、アプリケーション発行管理システム1−2は、発行管理ICカード10−2と、ユーザICカード20と、発行管理ICカード10−2及びユーザICカード20のそれぞれがR/W40A,40Bを介して接続されている外部装置30とを備える、対象アプリケーションの発行を管理するシステムである。
【0057】
発行管理ICカード10−2は、対象アプリケーションがバージョンアップしたことに伴い(以下、旧バージョンの対象アプリケーションを「対象アプリケーションV1」、新バージョンの対象アプリケーションを「対象アプリケーションV2」という。発行情報についても同様とする。)、第1実施形態における発行管理ICカード10に代わり、カード発行者からサービス提供者に提供されたものである。
発行管理ICカード10−2は、削除証明判定部127−2を有するCPU12−2、不揮発性メモリ15−2などを備えている。削除証明判定部127−2の機能については、図6などを用いて後述する。不揮発性メモリ15−2は、対象アプリケーションV2、ライセンス情報、発行用公開鍵PKad、発行用秘密鍵SKad、発行情報V1、発行情報V2、カウンタ値などを記憶している。
ユーザICカード20は、先行出願にかかる発行管理システム1−3におけるアプリケーション発行処理と同様の処理を行い、発行管理ICカード10から対象アプリケーション及び発行証明書の提供を受け、カード使用者へ配布された後に、対象アプリケーションのバージョンアップに伴い、サービス提供者に返送されたカードである。
【0058】
図6は、本発明によるICカードの第2実施形態における動作及び本発明によるICカードプログラムの第2実施形態を説明するための図であって、アプリケーション更新処理を示している。アプリケーション更新処理は、対象アプリケーションV1についてのアプリケーション削除確認処理(図2)と、対象アプリケーションV2についてのアプリケーション発行処理(図10)との組合せによって略実現することができる。従って、図6に加え、図2、図3及び図10を参照しながら説明する。
先ず、発行管理ICカード10−2及びユーザICカード20は、図2のS110からS170までと同様の処理を行う(図6の#210から#300)。削除証明判定部127は、発行証明書の内容の検証(図4(b)のS570、#310)において、記憶されている発行情報V1及び発行情報V2などを参照し、削除証明書に含まれる発行情報V1及びカード情報を検証することによって、削除されたアプリケーションが所定の条件を満たす正当なものかを検証する。本実施形態においては、削除された対象アプリケーションが対象アプリケーションV1又は対象アプリケーションV2であること、対象アプリケーションV1である場合には、その提供元が発行管理ICカード10であることなどを所定の条件としている。この場合に、削除されたアプリケーションが対象アプリケーションV1であるときには、発行管理ICカード10−2は、ライセンス情報の提供可能回数をインクリメントしない(図2のS180)。
【0059】
次に、発行管理ICカード10−2及びユーザICカード20は、図10のS701からS713までと同様(S706においてライセンス情報の提供可能回数はデクリメントされない)の処理を行い、対象アプリケーションV1の削除を行ったユーザICカード20に対して対象アプリケーションV2の発行処理を行う。なお、使用正当性判定部123は、S702で受信した公開鍵証明書PKCicに含まれる属性情報と、S120で受信した削除証明書に含まれるカード情報とが同一のユーザICカード20を示すか否かを判定し、否と判定した場合には、発行を行わない(図示しない)。その結果、発行管理ICカード10−2は、対象アプリケーションV1の削除を行ったユーザICカード20に対して対象アプリケーションV2を発行し、発行管理ICカード10−2及びユーザICカード20は、アプリケーション更新処理を終了する。
【0060】
このように、第2実施形態によれば、第1実施形態と同様の効果に加え、発行管理ICカード10−2は、所定の発行管理ICカード10から発行された対象アプリケーションV1が所定のユーザICカード20で削除されたことを確実に確認し、ライセンス情報の提供可能回数を減らすことなく、新たに対象アプリケーションV2の発行をユーザICカード20に対して行い、対象アプリケーションの更新を行うことが可能となった。つまり、対象アプリケーションを確実に管理し、一層、応用性及び利便性を高めることが可能となった。
【0061】
(変形形態)
以上説明した実施形態に限定されることなく、種々の変形や変更が可能であって、それらも本発明の均等の範囲内である。例えば、各実施形態において、発行管理ICカード10,10−2及びユーザICカード20の通信方式は、接触式に限られず、非接触式又は接触式/非接触式兼用であってもよく、通信方式は、限定されない。
【0062】
各実施形態において、発行管理ICカード10,10−2の不揮発性メモリ15,15−2は、複数の対象アプリケーションを記憶していてもよい。更に、各対象アプリケーション又は各対象アプリケーションの属性に対応したライセンス情報を記憶していてもよい。利便性の向上を図ることが可能である。
【0063】
各実施形態において、発行管理ICカード10,10−2は、暗号化部121による暗号化アプリケーションの生成可能回数を示すライセンス情報を記憶するが、CPU12,12−2の他の処理によって対象アプリケーションが複製可能な回数を示すライセンス情報を記憶していてもよく、また、発行管理ICカード10,10−2から対象アプリケーション又は暗号化アプリケーションの出力可能回数を示すライセンス情報を記憶していてもよい。発行管理ICカード10,10−2からユーザICカード20への対象アプリケーションの提供回数を制限できればよい。
【0064】
各実施形態において、発行管理ICカード10,10−2は、アクセス要求を外部から入力した場合に、通信部11から入力されるアクセス正当性認証情報に基づいて、アクセス要求が指定するアクセスを許可するか否かを判定するアクセス許否判定部を備えていてもよい。アクセス要求とは、いわゆるWRITEコマンド、READコマンドなど、ROM14、不揮発性メモリ15,15−2への情報の書き込み、記憶されている情報の書き換え、読み出しなどのメモリへのアクセスの要求である。アクセス正当性認証情報とは、アクセス要求を送信した外部装置30がそのアクセス要求が指定するアクセスをすることのできる正当な装置であることを認証するための情報であって、例えば、読み出し、書き込み、書き換えなどのアクセス種類、アクセス可能な領域などを示すアクセス先など、アクセス内容を示すアクセス情報を含み、発行管理ICカード10,10−2を管理するカード発行者のデジタル署名が付されている。
【0065】
例えば、カード個別情報の書き込みを要求する所定のコマンドを外部装置30から受信した場合には(S701)、アクセス許否判定部は、その前後に受信した認証を要求するコマンドに応じた処理において、デジタル署名が発行用公開鍵PKadで復号できる、つまり、アクセス正当性認証情報のデジタル署名がカード発行者の正当なものであると認証し、かつ、アクセス要求が指定するアクセスがアクセス情報の示す範囲内である場合に許可する。
発行管理ICカード10,10−2内部への不正アクセスを排除し、機密性を高く保持するとともに、一定条件を満たせば、アクセス可能とすることによって、利便性の向上を図ることが可能である。また、デジタル署名を発行用公開鍵PKadで復号し、認証するなど、公開鍵証明書PKCicの署名を検証する処理(S704)と同様に処理を行うことによって、ROM14、不揮発性メモリ15,15−2の効率的な使用、処理の効率化が可能である。
【0066】
また、アクセス許否判定部は、ライセンス情報の書き換えを要求するコマンドを受信した場合に、同様に、アクセス正当性認証情報に基づいて判定を行ってもよい。アクセス情報を設定した条件のもとで書き換え可能とすることによって、カード発行者がサービス提供者に対して対象アプリケーションの提供可能回数を追加許諾した場合などに容易に対処することができ、利便性の向上を図ることが可能となる。
【0067】
各実施形態において、本発明によるICカードとしてカード型の基材を有する発行管理ICカード10,10−2を例としてあげたが、その基材は、限定されず、SIMカード、ICタグなどの少なくともCPU、外部との通信手段、情報を記憶する記憶手段を備え、マン・マシンインターフェイスとなる使用者から直接的にコマンドを入力するキーボード、マウスなどの入力装置を備えていない機密性の高い、他の携帯型の情報処理装置であってもよい。
また、発行管理ICカード10,10−2は、価値情報として対象アプリケーションを記憶しているが、例えば、データベース、音楽データ、画像データなどの権利対象となる情報、技術ノウハウなどの機密事項を含有する情報などの価値を有するひとまとまりのデータ、プログラムである他の価値情報を記憶し、ユーザICカード20への提供を管理してもよい。同様の効果を得ることが可能である。
更に、発行管理ICカード10,10−2は、価値情報使用装置であるユーザICカード20へ価値情報を提供するが、これに制限されず、コンピュータなどのこの価値情報を使用する他の価値情報使用装置へ価値情報を提供してもよい。
【0068】
各実施形態において、ユーザICカード20は、暗号化アプリケーションを対象アプリケーションに復号して不揮発性メモリ25へ記憶するが、暗号化アプリケーションのまま記憶し、復号部221が実行時などの必要な場合に復号してもよい。
【0069】
各実施形態において、発行管理ICカード10,10−2は、対象アプリケーションの実行に必要な暗号鍵を生成する暗号鍵生成部を備え、書込/書換部125は、生成された暗号鍵を対象アプリケーションへ書き込み、暗号化部121は、暗号鍵が書き込まれた対象アプリケーションを暗号化してもよい。暗号鍵の機密性を高度に保持するとともに、暗号鍵の保護にかかる設備投資などの負担を軽減することが可能である。
【0070】
各実施形態において、発行管理ICカード10,10−2及びユーザICカード20は、各秘密鍵で暗号化を行うことによって、デジタル署名を付しているが、文字や記号、マークなどを電子的に表現した他の電子署名を付してもよい。
【0071】
各実施形態において、ユーザICカード20は、対象アプリケーションの削除を行った場合に削除証明書を生成するが、他の方法で対象アプリケーションを以後使用不可能な状態にした場合、つまり、他の方法で無効化した場合にその証明書である無効化証明書を生成してもよい。この場合には、削除証明判定部127は、削除証明書と同様に無効化証明書の判定を行う。
【0072】
各実施形態において、発行管理ICカード10,10−2は、発行用秘密鍵SKad及び発行用公開鍵PKadを不揮発性メモリ15,15−2に記憶しているが、ROM14に記憶していてもよい。同様に、ユーザICカード20は、ユーザ秘密鍵SKic及び公開鍵証明書PKCicを不揮発性メモリ25に記憶しているが、ROM24に記憶するなど、書き換える可能性の低いプログラム、データをROM24に記憶していてもよい。例えば、発行管理ICカード10,10−2は、対象アプリケーションをROM14に記憶し、不揮発性メモリ15,15−2などの書き換え可能なメモリへ読み出してカード個別情報を書き込んでもよい。
【0073】
各実施形態において、発行管理ICカード10,10−2及びユーザICカード20は、削除証明書、公開鍵証明書、カウンタ値などのコマンドの処理に必要な情報を受信するタイミングは、コマンドに含めて受信してもよく、コマンドを受信する以前に受信していてもよい。必要なときに受信されていればそのタイミングは限定されない。
また、各実施形態において、ユーザICカード20から削除証明書を読み出した(S340)後に、公開鍵証明書を読み出しているが(S350)、逆でもよく、これらの情報が読み出されれば、そのタイミングは、限定されない。
【0074】
各実施形態において、発行管理ICカード10,10−2の削除証明判定部127,127−2は、発行証明書の内容を検証した(S550)後にカウンタ値の照合(S570)を行っているが、逆でもよい。S120において受信した削除証明及び公開鍵証明書PKCicに基づいて、削除されたアプリケーションが所定のアプリケーションであること、アプリケーションの削除を行ったICカードが所定のICカードであることを検証することができれば、削除証明判定部127が行う検証の方法、順序は、限定されない。例えば、発行管理ICカード10は、アプリケーション発行処理を行った後に受信した公開鍵証明書PKCic(S702)を記憶しておき、この公開鍵証明書PKCicを削除証明書の検証に利用してもよい。また、削除証明の検証にアプリケーション発行処理において受信した受領証明書(S712)などの処理の履歴を示す履歴情報を利用してもよい。
【0075】
各実施形態において、発行管理ICカード10,10−2の削除証明判定部127,127−2は、カウンタ値の照合を行うことによってアプリケーション削除確認処理の重複を防止し、正当な削除証明書の複製などの不正な削除証明書についてアプリケーション削除確認処理を行うことを防止しているが、例えば、対象となったユーザICカード20の識別情報、削除したアプリケーションの属性情報などを含むアプリケーション削除確認処理の履歴情報(処理済みの発行証明書であってもよい)を記憶し、削除証明判定部127,127−2が削除証明書の検証を行う場合に参照し、アプリケーション削除確認処理の重複を防止してもよい。
【0076】
各実施形態において、外部装置30の代わりに、例えば、発行管理ICカード10,10−2に接続されているサービス提供者の管理するサーバと、インターネットなどの通信回線と、ユーザICカード20に接続されているカード使用者のPCとを備えていてもよく、発行管理ICカード10及びユーザICカード20間の情報の授受を媒介することができれば、その方法は限定されない。
【0077】
第1実施形態において、発行管理ICカード10は、アプリケーション削除確認処理においてライセンス情報の提供可能回数をインクリメントした場合に、処理の対象となったユーザICカード20の識別情報(カード情報など)を記憶し、その後に対象アプリケーションを発行する対象の一を券面上の情報などが更新された同一の識別情報を有する新たなユーザICカード20に制限してもよい。
【0078】
第2実施形態において、発行管理ICカード10は、ライセンス情報の書き換えを行わずに、アプリケーション更新処理を行うが、書き換えを行ってもよい。つまり、発行管理ICカード10は、ユーザICカード20の識別情報などで対象の同一性に制限をかけ、アプリケーション削除確認処理(図2及び図3)を行った後にアプリケーション発行処理(図10及び図11)を行ってもよい。
また、アプリケーション発行処理後にアプリケーション削除確認処理を行い、アプリケーション更新処理を行ってもよい。
【0079】
【発明の効果】
以上詳しく説明したように、本発明によれば、以下の効果を得ることが可能となった。
(1)使用者が直接的にコマンドを入力するマン・マシンインターフェイスであるキーボード、マウスなどの入力装置を備えていない機密性の高いICカードが価値情報を記憶することによって、外部への価値情報の漏洩を防止する。
(2)提供回数制限情報を記憶し、価値情報の複製及び/又は外部への出力を制限することによって、無許諾による複製などを防止し、価値情報にかかる知的財産の保護を図る。
(3)無効化証明情報が正当であると判定した場合に提供可能回数を書き換えることによって、無体物である価値情報の回収と同等の結果を得、価値情報を確実に管理し、応用性及び利便性を高める。
(4)記憶されている価値情報を所定の価値情報使用装置でのみ復号可能なように暗号化し、外部へ出力することによって、価値情報の漏洩及び不正使用を防止する。
(5)特に、価値情報がアプリケーションである場合に、アプリケーションにかかる知的財産の保護を図るとともに、価値情報の提供における利便性の向上を図る。
(6)所定の価値情報使用装置において所定の価値情報が無効とされたと判定した場合に提供可能回数を書き換えることによって、より詳細かつ確実に価値情報を管理し、応用性及び利便性を高める。
(7)所定の電子署名が無効化証明情報、提供経路情報に付されている場合に提供可能回数を書き換えることによって、より確実に上記効果を得る。
(8)提供経路情報に基づいて所定の価値情報が無効化されたか否かを判定することによって、より確実に上記効果を得るとともに、例えば、価値情報の価値情報使用装置への提供時に価値情報とともに提供経路情報の提供を行い、価値情報使用装置がこの提供経路情報をもとに無効化証明情報を生成するなど、情報を有効に活用して処理の簡素化を図る。
(9)無効化証明情報と同一の無効化証明情報が入力されていたか否かを判定することによって、複製などの不正な無効化証明情報に基づく提供可能回数の書き換えを防止する。
(10)無効化証明情報に含まれるトランザクションのカウンタ値などの処理段階情報に基づいて無効化証明情報と同一の無効化証明情報が入力されていたか否かを判定することによって、履歴情報などの新たなデータを記憶することなく、容易に前記(9)の効果を得る。
【図面の簡単な説明】
【図1】本発明によるICカードの第1実施形態を示すブロック図である。
【図2】本発明によるICカードの第1実施形態における動作及び本発明によるICカードプログラムの第1実施形態を示すフローチャートである。
【図3】発行管理ICカード及びユーザICカードにおける情報の入出力を説明するための図である。
【図4】削除証明判定部127の処理を示すフローチャートである。
【図5】本発明によるICカードの第2実施形態を示すブロック図である。
【図6】本発明によるICカードの第2実施形態における動作及び本発明によるICカードプログラムの第2実施形態を説明するための図である。
【図7】先行出願にかかるICカードの使用形態を説明するための図である。
【図8】先行出願にかかるICカードの実施形態を示すブロック図である。
【図9】先行出願にかかる発行管理ICカード及びユーザICカードの不揮発性メモリが記憶している情報を説明するための図である。
【図10】先行出願にかかるICカードの実施形態における動作及び先行出願にかかるICカードプログラムの実施形態を示すフローチャートである。
【図11】先行出願にかかる発行管理ICカード及びユーザICカードにおける情報の入出力を説明するための図である。
【符号の説明】
1,1−2,1−3 アプリケーション発行管理システム
10,10−2,10−3 発行管理ICカード
11 通信部
12,12−2,12−3 CPU
13 RAM
14,14−2 ROM
15,15−2,15−3 EEPROM
20,20−3 ユーザICカード
30 外部装置
40A,40B リーダライタ
121 暗号化部
122 復号部
123 使用正当性判定部
124 提供許否判定部
125 書込/書換部
126 発行証明生成部
127,127−2 削除証明判定部
Claims (16)
- ひとまとまりのデータ及び/又はプログラムである価値情報を使用する価値情報使用装置へ提供するための前記価値情報を記憶する価値情報記憶手段と、
前記価値情報の複製及び/又は外部への出力を行うことができる回数である提供可能回数を含む提供回数制限情報を記憶する提供回数制限情報記憶手段とを備えるICカードであって、
外部から無効化証明情報を入力する無効化証明情報入力手段と、
前記無効化証明情報入力手段によって入力される無効化証明情報が正当なものであるか否かを判定する無効化証明判定手段と、
前記無効化証明判定手段によって肯と判定された場合に、前記提供可能回数を増加させるように前記提供回数制限情報記憶手段によって記憶されている提供回数制限情報を書き換える前記提供回数制限情報書き換え手段とを備えること、
を特徴とするICカード。 - 請求項1に記載のICカードにおいて、
所定の前記価値情報使用装置でのみ復号可能なように、前記価値情報記憶手段によって記憶されている価値情報を暗号化し、暗号化価値情報を生成する暗号化手段と、
前記暗号化手段によって生成される暗号化価値情報を外部へ出力する価値情報出力手段とを備え、
前記提供回数制限情報書き換え手段は、前記暗号化手段による前記価値情報の暗号化、及び/又は、前記価値情報出力手段による前記暗号化価値情報の外部への出力に応じて、前記提供可能回数を減少させるように前記提供回数制限情報記憶手段によって記憶されている提供回数制限情報を書き換えること、
を特徴とするICカード。 - 請求項1又は請求項2に記載のICカードにおいて、
前記価値情報記憶手段は、前記価値情報使用装置へ提供する一又は複数のアプリケーションを記憶すること、
を特徴とするICカード。 - 請求項1から請求項3までのいずれか1項に記載のICカードにおいて、
前記無効化証明判定手段は、前記無効化証明情報が所定の前記価値情報使用装置において所定の価値情報が無効とされたことを証明するか否かを判定する無効化過程判定手段を有し、前記無効化過程判定手段によって否と判定された場合に、否と判定すること、
を特徴とするICカード。 - 請求項4に記載のICカードにおいて、
前記無効化過程判定手段は、前記無効化証明情報に所定の電子署名が付されているか否かに基づいて、前記所定の価値情報使用装置において価値情報が無効とされたか否かを判定する装置正当性判定手段を有し、前記装置正当性判定手段によって否と判定された場合に、否と判定すること、
を特徴とするICカード。 - 請求項4又は請求項5に記載のICカードにおいて、
前記無効化過程判定手段は、前記価値情報の属性情報、前記価値情報の提供元の識別情報又は前記価値情報の提供先の識別情報のうちの少なくとも一を含む、前記無効化証明情報に含まれる提供経路情報に基づいて、前記所定の価値情報が無効とされたか否かを判定する価値情報正当性判定手段を有し、前記価値情報正当性判定手段によって否と判定された場合に、否と判定すること、
を特徴とするICカード。 - 請求項6に記載のICカードにおいて、
前記価値情報正当性判定手段は、前記提供経路情報に所定の電子署名が付されているか否かに基づいて、前記提供経路情報が正当なものであるか否かを判定する提供経路正当性判定手段を有し、前記提供経路正当性判定手段によって否と判定された場合に、否と判定すること、
を特徴とするICカード。 - 請求項1から請求項7までのいずれか1項に記載のICカードにおいて、
前記無効化証明判定手段は、前記無効化証明情報入力手段によって入力された無効化証明情報と同一の無効化証明情報が以前に入力されていたか否かを判定する重複入力判定手段を有し、前記重複入力判定手段によって肯と判定された場合に、否と判定すること、
を特徴とするICカード。 - 請求項8に記載のICカードにおいて、
処理段階の進行に応じて書き換えられる処理段階の識別情報である処理段階情報を記憶する処理段階情報記憶手段と、
所定の要求があった場合に、前記処理段階情報記憶手段によって記憶されている処理段階情報を出力する処理段階情報出力手段とを備え、
前記重複入力判定手段は、前記無効化証明情報入力手段によって入力された無効化証明情報に含まれる、前記処理段階情報出力手段によって出力された処理段階情報と、前記処理段階情報記憶手段によって記憶されている処理段階情報とを照合し、判定を行うこと、
を特徴とするICカード。 - ひとまとまりのデータ及び/又はプログラムである価値情報を使用する価値情報使用装置へ提供するための前記価値情報を記憶する価値情報記憶手段と、
前記価値情報の複製及び/又は外部への出力を行うことができる回数である提供可能回数を含む提供回数制限情報を記憶する提供回数制限情報記憶手段とを備えるICカードのCPUに実行させるICカードプログラムであって、
所定の要求があった場合に、外部から入力した無効化証明情報が正当なものであるか否かを判定する無効化証明判定ステップと、
前記無効化証明判定ステップにおいて肯と判定された場合に、前記提供可能回数を一増加させるように前記提供回数制限情報記憶手段によって記憶されている提供回数制限情報を書き換える提供回数制限情報書き換えステップとを備えること、
を特徴とするICカードプログラム。 - 請求項10に記載のICカードプログラムにおいて、
前記無効化証明判定ステップは、前記無効化証明情報が所定の前記価値情報使用装置において所定の価値情報が無効とされたことを証明するか否かを判定する無効化過程判定ステップを有し、前記無効化過程判定ステップにおいて否と判定した場合に、否と判定すること、
を特徴とするICカードプログラム。 - 請求項11に記載のICカードプログラムにおいて、
前記無効化過程判定ステップは、前記無効化証明情報に所定の電子署名が付されているか否かに基づいて、前記所定の価値情報使用装置において価値情報が無効とされたか否かを判定する装置正当性判定ステップを有し、前記装置正当性判定ステップにおいて否と判定した場合に、否と判定すること、
を特徴とするICカードプログラム。 - 請求項11又は請求項12に記載のICカードプログラムにおいて、
前記無効化過程判定ステップは、前記価値情報の属性情報、前記価値情報の提供元の識別情報又は前記価値情報の提供先の識別情報のうちの少なくとも一を含む、前記無効化証明情報に含まれる提供経路情報に基づいて、前記所定の価値情報が無効とされたか否かを判定する価値情報正当性判定ステップを有し、前記価値情報正当性判定ステップにおいて否と判定した場合に、否と判定すること、
を特徴とするICカードプログラム。 - 請求項13に記載のICカードプログラムにおいて、
前記価値情報正当性判定ステップは、前記提供経路情報に所定の電子署名が付されているか否かに基づいて、前記提供経路情報が正当なものであるか否かを判定する提供経路正当性判定ステップを有し、前記提供経路正当性判定ステップにおいて否と判定した場合に、否と判定すること、
を特徴とするICカードプログラム。 - 請求項10から請求項14までのいずれか1項に記載のICカードプログラムにおいて、
前記無効化証明判定ステップは、前記外部から入力した無効化証明情報を以前に入力していたか否かを判定する重複入力判定ステップを有し、前記重複入力判定ステップにおいて肯と判定した場合に、否と判定すること、
を特徴とするICカードプログラム。 - 請求項15に記載のICカードプログラムにおいて、
所定の要求があった場合に、処理段階の進行に応じて書き換えられる処理段階の識別情報である処理段階情報を出力する処理段階情報出力ステップを備え、
前記重複入力判定ステップは、前記外部から入力した無効化証明情報に含まれる、前記処理段階情報出力ステップにおいて出力された処理段階情報に基づいて判定を行うこと、
を特徴とするICカードプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003112685A JP4368130B2 (ja) | 2003-04-17 | 2003-04-17 | Icカード及びicカードプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003112685A JP4368130B2 (ja) | 2003-04-17 | 2003-04-17 | Icカード及びicカードプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004318564A true JP2004318564A (ja) | 2004-11-11 |
JP4368130B2 JP4368130B2 (ja) | 2009-11-18 |
Family
ID=33472819
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003112685A Expired - Fee Related JP4368130B2 (ja) | 2003-04-17 | 2003-04-17 | Icカード及びicカードプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4368130B2 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005328198A (ja) * | 2004-05-12 | 2005-11-24 | Sony Corp | プログラム、コンピュータ、データ処理方法 |
CN108021967A (zh) * | 2017-12-05 | 2018-05-11 | 北京小米移动软件有限公司 | 复制智能卡的方法、装置及计算机可读存储介质 |
JP2020197832A (ja) * | 2019-05-31 | 2020-12-10 | ルネサスエレクトロニクス株式会社 | データ処理方法、データ処理システム及びデータ処理管理媒体 |
-
2003
- 2003-04-17 JP JP2003112685A patent/JP4368130B2/ja not_active Expired - Fee Related
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005328198A (ja) * | 2004-05-12 | 2005-11-24 | Sony Corp | プログラム、コンピュータ、データ処理方法 |
JP4626181B2 (ja) * | 2004-05-12 | 2011-02-02 | ソニー株式会社 | 情報処理方法及び情報処理システム |
CN108021967A (zh) * | 2017-12-05 | 2018-05-11 | 北京小米移动软件有限公司 | 复制智能卡的方法、装置及计算机可读存储介质 |
CN108021967B (zh) * | 2017-12-05 | 2022-08-26 | 北京小米移动软件有限公司 | 复制智能卡的方法、装置及计算机可读存储介质 |
JP2020197832A (ja) * | 2019-05-31 | 2020-12-10 | ルネサスエレクトロニクス株式会社 | データ処理方法、データ処理システム及びデータ処理管理媒体 |
JP7170588B2 (ja) | 2019-05-31 | 2022-11-14 | ルネサスエレクトロニクス株式会社 | データ処理方法及びデータ処理システム |
Also Published As
Publication number | Publication date |
---|---|
JP4368130B2 (ja) | 2009-11-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7319759B1 (en) | Producing a new black box for a digital rights management (DRM) system | |
US7016498B2 (en) | Encrypting a digital object on a key ID selected therefor | |
JP4654498B2 (ja) | 個人認証システム、個人認証方法、および情報処理装置、並びにプログラム提供媒体 | |
JP4118092B2 (ja) | 記憶装置および情報処理装置 | |
US7757077B2 (en) | Specifying security for an element by assigning a scaled value representative of the relative security thereof | |
JP4556308B2 (ja) | コンテンツ配信システム、コンテンツ配信方法、および情報処理装置、並びにプログラム提供媒体 | |
JP4660900B2 (ja) | 個人認証適用データ処理システム、個人認証適用データ処理方法、および情報処理装置、並びにプログラム提供媒体 | |
US6829708B1 (en) | Specifying security for an element by assigning a scaled value representative of the relative security thereof | |
JP4655345B2 (ja) | 情報処理装置および情報処理方法、並びにプログラム提供媒体 | |
JP4626033B2 (ja) | 公開鍵証明書利用システム、公開鍵証明書利用方法、および情報処理装置、並びにプログラム提供媒体 | |
US7353209B1 (en) | Releasing decrypted digital content to an authenticated path | |
JP4638990B2 (ja) | 暗号鍵情報の安全な配布と保護 | |
KR100520476B1 (ko) | 디지털 컨텐츠 발행시스템 및 발행방법 | |
JP4654497B2 (ja) | 個人認証システム、個人認証方法、および情報処理装置、並びにプログラム提供媒体 | |
CN101571900B (zh) | 一种软件版权保护方法、设备和系统 | |
KR20040030454A (ko) | 콘텐츠 이용권한 관리시스템, 콘텐츠 이용권한 관리방법및 정보처리장치와 컴퓨터 프로그램 | |
JP2004104539A (ja) | メモリカード | |
WO2001052021A1 (en) | Digital rights management system operating on computing device and having black box tied to computing device | |
WO2005096158A1 (ja) | 利用認証方法、利用認証プログラム、情報処理装置および記録媒体 | |
JP3641909B2 (ja) | 証明データ生成装置 | |
JP2004139242A (ja) | Icカード、icカード発行システム及びicカード発行方法 | |
JP4368130B2 (ja) | Icカード及びicカードプログラム | |
KR20230044953A (ko) | 블록체인의 계정인증을 통해 파일을 관리하기 위한 컴퓨팅 방법 및 시스템 | |
JP2003324421A (ja) | Icカードの再発行方法及びシステム | |
JP2004220436A (ja) | Icカード及びicカードプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060331 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20061117 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20080908 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20081014 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20081215 |
|
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: 20090818 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090825 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4368130 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120904 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120904 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130904 Year of fee payment: 4 |
|
LAPS | Cancellation because of no payment of annual fees |