JP4368130B2 - IC card and IC card program - Google Patents
IC card and IC card program Download PDFInfo
- Publication number
- JP4368130B2 JP4368130B2 JP2003112685A JP2003112685A JP4368130B2 JP 4368130 B2 JP4368130 B2 JP 4368130B2 JP 2003112685 A JP2003112685 A JP 2003112685A JP 2003112685 A JP2003112685 A JP 2003112685A JP 4368130 B2 JP4368130 B2 JP 4368130B2
- Authority
- JP
- Japan
- Prior art keywords
- information
- card
- invalidation
- value information
- certification
- 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
Links
Images
Description
【0001】
【発明の属する技術分野】
本発明は、アプリケーションの発行などの価値情報の提供を管理する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)と、関連する複数の処理を一つの処理単位とするトランザクションがコミットするたびにインクリメントされる処理段階の識別情報であるカウンタ値を含む処理段階情報を記憶する処理段階情報記憶手段(15,15−2)と、所定の要求があった場合に、前記処理段階情報記憶手段に記憶されている処理段階情報を出力する処理段階情報出力手段(11)とを備え、前記無効化証明判定手段は、前記無効化証明情報入力手段によって入力された無効化証明情報と同一の無効化証明情報が以前に入力されていたか否かを判定する重複入力判定手段(127,S570,S580)を有し、前記重複入力判定手段は、前記無効化証明情報入力手段によって入力された無効化証明情報に含まれる、前記処理段階情報出力手段によって出力された処理段階情報に含まれているカウンタ値と、前記処理段階情報記憶手段に記憶されている処理段階情報に含まれているカウンタ値とを照合し、重複入力か否かの判定を行い、前記無効化証明判定手段は、前記重複入力判定手段によって肯と判定された場合に、否と判定すること、を特徴とする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)である。
【0033】
請求項8の発明は、ひとまとまりのデータ及び/又はプログラムである価値情報を使用する価値情報使用装置へ提供するための前記価値情報を記憶する価値情報記憶手段(15,15−2)と、前記価値情報の複製及び/又は外部への出力を行うことができる回数である提供可能回数を含む提供回数制限情報を記憶する提供回数制限情報記憶手段(15,15−2)と、関連する複数の処理を一つの処理単位とするトランザクションがコミットするたびにインクリメントされる処理段階の識別情報であるカウンタ値を含む処理段階情報を記憶する処理段階情報記憶手段(15,15−2)とを備えるICカード(10,10−2)のCPU(12,12−2)に実行させるICカードプログラムであって、所定の要求があった場合に、外部から入力した無効化証明情報が正当なものであるか否かを判定する無効化証明判定ステップ(S140,S160)と、前記無効化証明判定ステップにおいて肯と判定された場合に、前記提供可能回数を一増加させるように前記提供回数制限情報記憶手段によって記憶されている提供回数制限情報を書き換える提供回数制限情報書き換えステップ(S180)と、所定の要求があった場合に、前記処理段階情報記憶手段に記憶されている前記処理段階情報を出力する処理段階情報出力ステップ(S110)を備え、前記無効化証明判定ステップは、前記外部から入力した無効化証明情報を以前に入力していたか否かを判定する重複入力判定ステップ(S570,S580)を有し、前記重複入力判定ステップは、前記外部から入力した無効化証明情報に含まれる、前記処理段階情報出力ステップにおいて出力された処理段階情報に含まれているカウンタ値と、前記処理段階情報記憶手段によって記憶されている処理段階情報に含まれているカウンタ値とを照合し、重複入力か否かの判定を行い、前記重複入力判定ステップは、前記重複入力判定ステップにおいて肯と判定された場合に、否と判定すること、を特徴とするICカードプログラムである。
【0034】
請求項9の発明は、請求項8に記載のICカードプログラムにおいて、前記無効化証明判定ステップは、前記無効化証明情報が所定の前記価値情報使用装置において所定の価値情報が無効とされたことを証明するか否かを判定する無効化過程判定ステップ(S140,S510〜S570)を有し、前記無効化過程判定ステップにおいて否と判定した場合に、否と判定すること、を特徴とするICカードプログラムである。
【0035】
請求項10の発明は、請求項9に記載のICカードプログラムにおいて、前記無効化過程判定ステップは、前記無効化証明情報に所定の電子署名が付されているか否かに基づいて、前記所定の価値情報使用装置において価値情報が無効とされたか否かを判定する装置正当性判定ステップ(S510,S520)を有し、前記装置正当性判定ステップにおいて否と判定した場合に、否と判定すること、を特徴とするICカードプログラムである。
【0036】
請求項11の発明は、請求項9又は請求項10に記載のICカードプログラムにおいて、前記無効化過程判定ステップは、前記価値情報の属性情報、前記価値情報の提供元の識別情報又は前記価値情報の提供先の識別情報のうちの少なくとも一を含む、前記無効化証明情報に含まれる提供経路情報に基づいて、前記所定の価値情報が無効とされたか否かを判定する価値情報正当性判定ステップ(S550,S560)を有し、前記価値情報正当性判定ステップにおいて否と判定した場合に、否と判定すること、を特徴とするICカードプログラムである。
【0037】
請求項12の発明は、請求項11に記載のICカードプログラムにおいて、前記価値情報正当性判定ステップは、前記提供経路情報に所定の電子署名が付されているか否かに基づいて、前記提供経路情報が正当なものであるか否かを判定する提供経路正当性判定ステップ(S530,S540)を有し、前記提供経路正当性判定ステップにおいて否と判定した場合に、否と判定すること、を特徴とする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 削除証明判定部[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an IC card and an IC card program that manage provision of value information such as application issuance.
[0002]
[Prior art]
In recent years, it has been described in MEL (Multiplex Executable Language) language, Java language ("JAVA" is a registered trademark), etc., and basically what platform (operating system type, environment, settings, etc.) Platform-type IC cards capable of mounting a plurality of applications such as a MULTIOS card and JavaCard capable of mounting a plurality of applications that can operate even on the OS (for example, patent documents) have appeared. 1). Note that the term “mounting” refers to storing in an executable manner.
This platform type IC card is issued by a card issuer who is a business entity that performs card issue and management operations. In addition, the application needs to write card individual information, which is different information depending on each IC card, such as card user information and encryption key necessary for executing the application in advance in the application and perform initial setting. It is issued by an application service provider (hereinafter referred to as a “service provider”) that has customer information that is the source of individual information and provides a card user with a service related to an application. The application issuance means that an application is installed in an application using device such as an information processing device that uses the application, and the application can be executed (used).
The IC card includes at least a CPU such as a SIM card or an IC tag, an external communication means, and a storage means for storing information, regardless of the base material. This means a highly confidential portable information processing device that does not have an input device such as a keyboard or mouse that is a man-machine interface.
[0003]
[Patent Document 1]
JP 2002-56360 A (page 4-5, FIG. 8)
[0004]
[Problems to be solved by the invention]
However, when this application is developed by a person other than the service provider such as a card issuer, the technical know-how used in the program by reverse engineering is known in order to obtain the application code by the service provider. There was a possibility. In addition, even if the card issuer and service provider have signed a confidentiality agreement, the card issuer will recognize and prove that the service issuer has breached the contract. There was a problem that was difficult.
Further, for example, when the card issuer enters into a contract permitting the service provider to copy the application and mount it on 100 IC cards, and the service provider mounts this application on 100 or more IC cards. Even so, the card issuer could not recognize or prove this fact, and there was a risk that the rights to applications such as copyright would be lost.
On the other hand, in order to prevent the technical know-how from leaking out, if an application with encryption or digital signature is supplied to the service provider and decrypted inside the IC card, the card individual information is written in the application and the initial setting is performed. There was a problem that I could not.
If the application requires an encryption key for execution, it is necessary to generate an encryption key, write it to the application, and perform initial settings. Equipment was required, and there was a risk of burdening the service provider that issued the application.
Furthermore, the problem of leakage of technical know-how and the rights related to applications are not only between card issuers and service providers, but also confidential matters such as information, technical know-how, etc. that are subject to rights such as databases, music data, and image data. This is a problem that may arise when providing value information (intellectual property), which is a group of valuable data such as information containing information, and programs to others.
The present applicant has filed a prior application for the invention of “IC card and IC card program” to solve these problems (Japanese Patent Application No. 2003-008621).
[0005]
Here, the IC card and the IC card program according to the prior application will be described. For convenience of explanation of embodiments of the present invention to be described later, the contents of the prior application are appropriately adjusted are described below.
FIG. 7 is a diagram for explaining a usage pattern of the IC card according to the prior application. The IC card according to the prior application is the issue management IC card 10-3.
As shown in FIG. 7, the application issuance management system 1-3 includes an issuance management IC card 10-3, a user IC card 20-3, an issuance management IC card 10-3, and a user IC card 20-3. A reader / writer (hereinafter, “reader / writer” is referred to as “R / W”) 40A and 40B.
The application issuance management system 1-3 uses an application that is value information provided from the issuance management IC card 10-3 by the external device 30 (hereinafter, an application to be provided is referred to as a “target application”). Execute the application, individually write to a plurality of user IC cards 20-3 (20A-3, 20B-3, 20C-3,...) That are predetermined value information use devices to be used, and issue the target application ( Application issuing process).
[0006]
The
[0007]
FIG. 8 is a block diagram showing an embodiment of an IC card according to the prior application.
As shown in FIG. 8, the issue management IC card 10-3 includes a
The
[0008]
The three memories are a
[0009]
The non-volatile memory 15-3 is a non-volatile rewritable memory such as EEPROM, flash memory, FRAM, etc., and is normally used as a user work area, program area, etc., and can store a plurality of applications. is there. In addition, the nonvolatile memory 15-3 stores a target application, license information, an application issuing public key (hereinafter referred to as “issuing public key”) PKad, issuing information, and the like.
[0010]
FIG. 9 is a diagram for explaining information stored in the non-volatile memory of the issue management IC card and the user IC card according to the prior application.
As shown in FIG. 9, the target application, license information, issuance public key PKad, and issuance information are written in the non-volatile memory 15-3 at the issuance stage for initial setting of the issuance management IC card 10-3. The target application includes a code part for storing the program code and a data part for storing data necessary for executing the program code, and is stored in the nonvolatile memory 15-3 in a confidential state. The data part of the target application is in a state that does not include card individual information.
[0011]
The license information is provided number-of-times limitation information for limiting the number of times the target application is provided to the user IC card 20-3 by limiting the copy of the target application, output to the outside, and the like. Issuance management IC card, which is information based on whether the provision permission determination unit 124 of the CPU 12-3 determines whether or not the
[0012]
As shown in FIG. 8, the CPU 12-3 performs overall control of the issuance management IC card 10-3 by executing programs such as the OS and applications stored in the
[0013]
The user IC card 20-3 includes a
The
The three memories are a
[0014]
As shown in FIG. 9, the public key certificate PKCic, the user secret key SKic, and the card information are written in the
[0015]
The public key certificate PKCic encrypts information indicating that the user public key PKic included in the public key certificate PKCic is the public key of the user IC card 20-3 with the issuance private key SKad, and adds a digital signature. It is a thing. A digital signature is an electronic signature that certifies the creator of the information to be signed, ensures that the information has not been tampered with, and prevents the signer from denying that the information has been created. It is a kind of signature and is encrypted signature information attached to guarantee the validity of the information. The signer attaches a signature encrypted using its own private key to the information and sends it. The recipient decrypts the signature using the signer's public key and authenticates the validity. Accordingly, the public key certificate PKCic is an administrator of the issuance secret key SKad, and proves that the card issuer who has the right to the target application has permitted the use of the target application in the user IC card 20-3. Information for authenticating that the user IC card 20-3 can properly use the target application.
[0016]
As shown in FIG. 8, the CPU 22-3 performs overall control of the user IC card 20-3 by executing programs such as the OS and applications stored in the
[0017]
FIG. 10 and FIG. 11 are diagrams showing the operation in the embodiment of the IC card according to the prior application and the embodiment of the IC card program according to the prior application, and show the application issuing process. FIG. 10 is a flowchart, and FIG. 11 is a diagram for explaining input / output of information in the issue management IC card and the user IC card. The processing of the issue management IC card 10-3, the user IC card 20-3, and the
As shown in FIG. 10, in step 700 and step 800 (hereinafter, “step” is referred to as “S”), the issuance management IC card 10-3 is R /
In S701, the issuance management IC card 10-3 includes the card individual information, receives a command for requesting writing of the card individual information from the
[0018]
In S801, the user IC card 20-3 receives a command requesting reading of the public key certificate PKCic from the
In S702, the issuance management IC card 10-3 receives the command including the public key certificate PKCic and requesting generation of the encrypted application (# 440). This command is an application provision request for requesting encryption of the target application in order to provide the target application, that is, requesting to perform processing related to provision of the target application. In step S <b> 703, the provision permission determination unit 124 determines whether to permit encryption of the target application based on the license information stored in the nonvolatile memory 15-3. Specifically, the provision permission / rejection determination unit 124 determines whether or not the license information is one or more times. When the license information is zero or not, the provision permission / non-permission determination unit 124 determines that the license information is zero and sends an error response indicating that to the external device 30 (S713), and the process ends (S714).
[0019]
When the license information is one or more times, the
[0020]
On the other hand, if the use validity determination unit 123 determines affirmative, the CPU 12-3 reduces the license information once (S706, # 460), and the
[0021]
The user IC card 20-3 includes an encrypted application and an issuance certificate, receives a command requesting writing of the target application and the issuance certificate from the external device 30 (S805, # 510), and the
When providing the target application to a plurality of user IC cards 20-3, the user IC card 20-3 inserted in the R /
[0022]
However, in the invention according to the prior application described above, when the information on the face of the user IC card 20-3 loaded with the issued target application is lost due to a change in the name of the card user due to marriage, etc. In this case, it is necessary to reissue a new user IC card 20-3 whose information on the ticket is changed. When the target application is issued again to the new user IC card 20-3, new license information is consumed. (S706 in FIG. 10). In other words, even if the same target application is issued to the same card user, the license information is consumed, which is not suitable for the concept of license of the target application and may not be convenient. It was.
In addition, the version of the target application is upgraded and the old version of the target application is deleted from the user IC card 20-3. In the case of permitting (issuing) the use of the target application, there is a problem that it is not possible to confirm whether or not the old version of the target application has been invalidated, and lack of feasibility.
[0023]
An object of the present invention is to reduce the burden of providing value information, protect intellectual property related to value information, and address the above-described problems related to invalidation of provided value information. It is to provide an IC card and an IC card program with high applicability and convenience.
[0024]
[Means for Solving the Problems]
The present invention solves the above problems by the following means. In addition, in order to make an understanding easy, although the code | symbol corresponding to embodiment of this invention is attached | subjected and demonstrated, it is not limited to this. That is, the invention of
[0025]
According to a second aspect of the present invention, in the IC card according to the first aspect, the value information stored in the value information storage means is encrypted and encrypted so that the value can be decrypted only by a predetermined value information use device. An encryption unit (121) for generating value information; and a value information output unit (11) for outputting the encrypted value information generated by the encryption unit to the outside. According to the encryption of the value information by the encryption unit and / or the output of the encrypted value information to the outside by the value information output unit, the provision number limit information so as to reduce the number of times of provision. The IC card (10, 10-2) is characterized in that the provision number limit information stored in the storage means is rewritten.
[0026]
The invention of
[0027]
According to a fourth aspect of the present invention, in the IC card according to any one of the first to third aspects of the present invention, the invalidation certification determination means is a predetermined value in the value information using device in which the invalidation certification information is predetermined. Having invalidation process determination means (127) for determining whether or not it is proved that the value information is invalidated, and when the invalidation process determination means determines NO, the determination is NO The IC card (10, 10-2) is characterized by the following.
[0028]
According to a fifth aspect of the present invention, in the IC card according to the fourth aspect, the invalidation process determining means determines whether the predetermined value is based on whether or not a predetermined electronic signature is attached to the invalidation certification information. It has a device validity determining means (127, S510, S520) for determining whether or not the value information is invalidated in the information using device, and it is determined to be NO when the device validity determining means determines NO. This is an IC card (10, 10-2).
[0029]
According to a sixth aspect of the present invention, in the IC card according to the fourth or fifth aspect, the invalidation process determining means includes the attribute information of the value information, the identification information of the provider of the value information, or the value information. Value information validity determination means for determining whether or not the predetermined value information is invalid based on provision route information included in the invalidation certification information including at least one of the identification information of the provision destinations ( 127, S550, S560), and the IC card (10, 10-2) is characterized in that it is determined as NO when it is determined NO by the value information validity determining means.
[0030]
According to a seventh aspect of the present invention, in the IC card according to the sixth aspect, the value information validity determining means determines whether the provision route information is based on whether a predetermined electronic signature is attached to the provision route information. And providing route validity determining means (127, S530, S540) for determining whether or not the information is valid, and when the provided route validity determining means determines NO, it is determined to be NO The IC card (10, 10-2) is characterized by the following.
[0033]
Claim 8 According to the present invention, there is provided value information storage means (15, 15-2) for storing the value information for providing to the value information using device using the value information which is a set of data and / or a program, and the value information. Provision number limit information storage means (15, 15-2) for storing provision number limit information including a provisionable number of times that can be reproduced and / or output to the outside, Processing stage information storage means (15, 15-2) for storing processing stage information including a counter value which is identification information of a processing stage which is incremented each time a transaction having a plurality of related processes as one processing unit commits. When The IC card program to be executed by the CPU (12, 12-2) of the IC card (10, 10-2) including the invalidation certification information input from the outside when there is a predetermined request. The invalidation proof judgment step (S140, S160) for judging whether or not the data is a thing, and the provision number of times restriction so as to increase the provisionable number of times when it is judged positive in the invalidation certification judgment step When there is a predetermined request, the provision number limit information rewriting step (S180) for rewriting the provision number limit information stored by the information storage means, A processing step information output step (S110) for outputting the processing step information stored in the processing step information storage means, wherein the invalidation certification determination step inputs the invalidation certification information input from the outside before; A duplicate input judging step (S570, S580) for judging whether or not it has been performed, and the duplicate input judging step is outputted in the processing stage information output step included in the invalidation certification information inputted from the outside. The counter value included in the processing stage information and the counter value included in the processing stage information stored by the processing stage information storage means are collated to determine whether or not there is a duplicate input, The duplicate input determining step determines negative when it is determined positive in the duplicate input determining step; Is an IC card program characterized by
[0034]
Claim 9 The invention of claim 8 In the IC card program described in ,in front The invalidation certification determination step is an invalidation process determination step (S140, S510) in which it is determined whether or not the invalidation certification information proves that the predetermined value information is invalidated in the predetermined value information use device. To S570), and it is determined as NO when it is determined as NO in the invalidation process determination step.
[0035]
[0036]
[0037]
[0040]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be described in more detail with reference to the drawings.
(First embodiment)
FIG. 1 is a block diagram showing a first embodiment of an IC card according to the present invention.
In addition, the same code | symbol is attached | subjected to the part which fulfill | performs the same function as embodiment mentioned above, and the overlapping description is abbreviate | omitted suitably. The IC card according to the present invention is an issue
As shown in FIG. 1, the application
[0041]
The issue
The
[0042]
The
[0043]
The
The
[0044]
The
[0045]
2 and 3 are diagrams showing the operation of the first embodiment of the IC card according to the present invention and the first embodiment of the IC card program according to the present invention, and show the application deletion confirmation processing. FIG. 2 is a flowchart, and FIG. 3 is a diagram for explaining input / output of information in the issue management IC card and the user IC card. The processing of the issue
As shown in FIG. 2, in S100, the issue
[0046]
In S110, the issue
The
[0047]
FIG. 4 is a flowchart showing the processing of the deletion
As shown in FIG. 4A, the deletion
[0048]
As shown in FIG. 2, in the verification of the public key certificate PKCic (S140), if the deletion
[0049]
As shown in FIG. 4B, the deletion
[0050]
In the present embodiment, the provider of the target application indicated by the provider card identification information is the
If it is determined that all of these conditions are satisfied, the deletion
[0051]
As shown in FIG. 2, when it is determined that the deletion certificate is not valid (S160), an error response to that effect is transmitted to the external device 30 (S200), and the process is terminated (S210). If it is determined to be valid, the writing / rewriting unit 125 increments the number of times the license information can be provided (S180, # 130), and transmits a response indicating the normal end to the external device 30 (S190). Is finished (S210). Note that the write / rewrite unit 125 increments the counter value once for each transaction, such as immediately after the request for the transaction (S110).
[0052]
As described above, according to the first embodiment, a highly confidential issue
Further, since the issue
[0053]
Further, the issue
Furthermore, the issue
In addition, the issue
[0054]
Furthermore, the issue
Similarly, the issuance
[0055]
Further, the issue
Furthermore, the issuance
[0056]
(Second Embodiment)
FIG. 5 is a block diagram showing a second embodiment of the IC card according to the present invention.
As shown in FIG. 5, the application issuance management system 1-2 includes an issuance management IC card 10-2, a
[0057]
With the issue management IC card 10-2, the target application has been upgraded (hereinafter, the target application of the old version is referred to as “target application V1”, and the target application of the new version is referred to as “target application V2”. The same applies to the issue
The issue management IC card 10-2 includes a CPU 12-2 having a deletion certification determination unit 127-2, a nonvolatile memory 15-2, and the like. The function of the deletion proof determination unit 127-2 will be described later with reference to FIG. The nonvolatile memory 15-2 stores the target application V2, license information, issue public key PKad, issue secret key SKad, issue information V1, issue information V2, a counter value, and the like.
The
[0058]
FIG. 6 is a diagram for explaining the operation in the second embodiment of the IC card according to the present invention and the second embodiment of the IC card program according to the present invention, and shows an application update process. The application update process can be substantially realized by a combination of an application deletion confirmation process (FIG. 2) for the target application V1 and an application issue process (FIG. 10) for the target application V2. Therefore, the description will be made with reference to FIGS. 2, 3 and 10 in addition to FIG.
First, the issue management IC card 10-2 and the
[0059]
Next, the issuance management IC card 10-2 and the
[0060]
As described above, according to the second embodiment, in addition to the same effects as those of the first embodiment, the issue management IC card 10-2 has the target application V1 issued from the predetermined issue
[0061]
(Deformation)
The present invention is not limited to the embodiment described above, and various modifications and changes are possible, and these are also within the equivalent scope of the present invention. For example, in each embodiment, the communication method of the issuance
[0062]
In each embodiment, the
[0063]
In each embodiment, the issue
[0064]
In each embodiment, when the access request is input from the outside, the issuance
[0065]
For example, when a predetermined command for requesting writing of card individual information is received from the external device 30 (S701), the access permission / rejection determination unit performs digital processing in processing corresponding to the command for requesting authentication received before and after the command. The signature can be decrypted with the issuing public key PKad, that is, the digital signature of the access validity authentication information is authenticated as the card issuer's legitimate, and the access specified by the access request is within the range indicated by the access information Allow if
It is possible to improve the convenience by eliminating unauthorized access to the inside of the issue
[0066]
In addition, when receiving a command for requesting rewriting of license information, the access permission / rejection determination unit may similarly determine based on the access validity authentication information. By making the access information rewritable under the set conditions, the card issuer can easily deal with cases where the service provider has additionally granted the number of times the target application can be provided, which is convenient. Can be improved.
[0067]
In each embodiment, the issue
In addition, the issue
Further, the issue
[0068]
In each embodiment, the
[0069]
In each embodiment, the issue
[0070]
In each embodiment, the issue
[0071]
In each embodiment, the
[0072]
In each embodiment, the issue
[0073]
In each embodiment, the issue
In each embodiment, the public key certificate is read after reading the deletion certificate from the user IC card 20 (S340) (S350), but the reverse is also possible. Is not limited.
[0074]
In each embodiment, the deletion
[0075]
In each embodiment, the deletion
[0076]
In each embodiment, instead of the
[0077]
In the first embodiment, the issuance
[0078]
In the second embodiment, the issuance
Further, an application deletion confirmation process may be performed after the application issuance process, and an application update process may be performed.
[0079]
【The invention's effect】
As described above in detail, according to the present invention, the following effects can be obtained.
(1) Value information to the outside by storing value information in a highly confidential IC card that does not have an input device such as a keyboard or mouse, which is a man-machine interface where a user directly inputs commands. Prevent leakage.
(2) The provision number limit information is stored, and duplication of value information and / or output to the outside is restricted, thereby preventing unauthorized duplication and the like and protecting intellectual property related to the value information.
(3) By rewriting the number of possible provisions when it is determined that the invalidation certification information is valid, a result equivalent to the collection of intangible value information is obtained, the value information is managed reliably, and applicability and Increase convenience.
(4) The stored value information is encrypted so that it can be decrypted only by a predetermined value information use device, and is output to the outside, thereby preventing leakage and unauthorized use of the value information.
(5) In particular, when the value information is an application, the intellectual property of the application is protected and the convenience in providing the value information is improved.
(6) By rewriting the number of possible provisions when it is determined that the predetermined value information is invalidated in the predetermined value information using device, the value information is managed in more detail and reliably, and the applicability and convenience are improved.
(7) When the predetermined electronic signature is attached to the invalidation certification information and the provision route information, the above effect can be obtained more reliably by rewriting the number of times of provision.
(8) By determining whether or not the predetermined value information has been invalidated based on the provision route information, the above effect can be obtained more reliably, and for example, the value information can be provided when the value information is provided to the value information using device. At the same time, the provision route information is provided, and the value information using device generates invalidation certification information based on the provision route information, thereby simplifying the process by effectively using the information.
(9) By determining whether or not the same invalidation certification information as the invalidation certification information has been input, rewriting of the number of possible provisions based on illegal invalidation certification information such as duplication is prevented.
(10) By determining whether or not the same invalidation certification information as the invalidation certification information has been input based on the processing stage information such as the transaction counter value included in the invalidation certification information, The effect (9) can be easily obtained without storing new data.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a first embodiment of an IC card according to the present invention.
FIG. 2 is a flowchart showing the operation of the IC card according to the first embodiment of the present invention and the first embodiment of the IC card program according to the present invention.
FIG. 3 is a diagram for explaining input / output of information in an issue management IC card and a user IC card.
FIG. 4 is a flowchart showing processing of a deletion
FIG. 5 is a block diagram showing a second embodiment of the IC card according to the present invention.
FIG. 6 is a diagram for explaining the operation of the IC card according to the second embodiment of the present invention and the second embodiment of the IC card program according to the present invention;
FIG. 7 is a diagram for explaining a usage pattern of an IC card according to a prior application.
FIG. 8 is a block diagram showing an embodiment of an IC card according to a prior application.
FIG. 9 is a diagram for explaining information stored in the non-volatile memory of the issue management IC card and the user IC card according to the prior application.
FIG. 10 is a flowchart showing the operation of the IC card according to the prior application and the embodiment of the IC card program according to the prior application.
FIG. 11 is a diagram for explaining input / output of information in the issue management IC card and the user IC card according to the prior application;
[Explanation of symbols]
1, 1-2, 1-3 Application issue management system
10, 10-2, 10-3 Issuance management IC card
11 Communication Department
12, 12-2, 12-3 CPU
13 RAM
14, 14-2 ROM
15, 15-2, 15-3 EEPROM
20, 20-3 User IC card
30 External device
40A, 40B Reader / Writer
121 Encryption section
122 Decoding unit
123 Use validity judgment part
124 Provision permission / rejection determination unit
125 Write / Rewrite unit
126 Issuance certificate generator
127, 127-2 Deletion certification determination unit
Claims (12)
外部から無効化証明情報を入力する無効化証明情報入力手段と、
前記無効化証明情報入力手段によって入力される無効化証明情報が正当なものであるか否かを判定する無効化証明判定手段と、
前記無効化証明判定手段によって肯と判定された場合に、前記提供可能回数を増加させるように前記提供回数制限情報記憶手段によって記憶されている提供回数制限情報を書き換える提供回数制限情報書き換え手段と、
関連する複数の処理を一つの処理単位とするトランザクションがコミットするたびにインクリメントされる処理段階の識別情報であるカウンタ値を含む処理段階情報を記憶する処理段階情報記憶手段と、
所定の要求があった場合に、前記処理段階情報記憶手段に記憶されている処理段階情報を出力する処理段階情報出力手段とを備え、
前記無効化証明判定手段は、前記無効化証明情報入力手段によって入力された無効化証明情報と同一の無効化証明情報が以前に入力されていたか否かを判定する重複入力判定手段を有し、
前記重複入力判定手段は、前記無効化証明情報入力手段によって入力された無効化証明情報に含まれる、前記処理段階情報出力手段によって出力された処理段階情報に含まれているカウンタ値と、前記処理段階情報記憶手段に記憶されている処理段階情報に含まれているカウンタ値とを照合し、重複入力か否かの判定を行い、
前記無効化証明判定手段は、前記重複入力判定手段によって肯と判定された場合に、否と判定すること、
を特徴とするICカード。Value information storage means for storing the value information to be provided to a value information using device that uses value information that is a piece of data and / or a program, and reproduction and / or output of the value information to the outside. An IC card comprising provision number limit information storage means for storing provision number limit information including the number of times that can be provided, which is the number of times that can be provided,
Invalidation certification information input means for inputting invalidation certification information from outside,
Invalidation certification determination means for determining whether the invalidation certification information input by the invalidation certification information input means is valid, or
Provided number limit information rewriting means for rewriting the provided number limit information stored by the provided number limit information storage means so as to increase the available number of times when it is determined as affirmative by the invalidation proof determining means;
Processing stage information storage means for storing processing stage information including a counter value which is identification information of a processing stage which is incremented each time a transaction having a plurality of related processes as one processing unit commits;
Processing stage information output means for outputting the processing stage information stored in the processing stage information storage means when there is a predetermined request,
The invalidation proof determination means has a duplicate input determination means for determining whether or not the same invalidation certification information as the invalidation certification information inputted by the invalidation certification information input means has been inputted before,
The duplicate input determination means includes a counter value included in the processing stage information output by the processing stage information output means, included in the invalidation certification information input by the invalidation certification information input means, and the processing The counter value included in the processing stage information stored in the stage information storage means is collated to determine whether or not there is a duplicate input,
The invalidation proof determination means determines NO when the duplicate input determination means determines affirmative;
IC card characterized by
所定の前記価値情報使用装置でのみ復号可能なように、前記価値情報記憶手段によって記憶されている価値情報を暗号化し、暗号化価値情報を生成する暗号化手段と、
前記暗号化手段によって生成される暗号化価値情報を外部へ出力する価値情報出力手段とを備え、
前記提供回数制限情報書き換え手段は、前記暗号化手段による前記価値情報の暗号化、及び/又は、前記価値情報出力手段による前記暗号化価値情報の外部への出力に応じて、前記提供可能回数を減少させるように前記提供回数制限情報記憶手段によって記憶されている提供回数制限情報を書き換えること、
を特徴とするICカード。In the IC card according to claim 1,
Encryption means for encrypting the value information stored by the value information storage means so as to be decrypted only by the predetermined value information use device, and generating encrypted value information;
Value information output means for outputting the encrypted value information generated by the encryption means to the outside,
The provision number limit information rewriting unit is configured to set the number of possible provisions according to the encryption of the value information by the encryption unit and / or the output of the encrypted value information to the outside by the value information output unit. Rewriting the provision number limit information stored by the provision number limit information storage means so as to decrease,
IC card characterized by
前記価値情報記憶手段は、前記価値情報使用装置へ提供する一又は複数のアプリケーションを記憶すること、
を特徴とするICカード。In the IC card according to claim 1 or 2,
The value information storage means stores one or more applications to be provided to the value information use device;
IC card characterized by
前記無効化証明判定手段は、前記無効化証明情報が所定の前記価値情報使用装置において所定の価値情報が無効とされたことを証明するか否かを判定する無効化過程判定手段を有し、前記無効化過程判定手段によって否と判定された場合に、否と判定すること、
を特徴とするICカード。In the IC card according to any one of claims 1 to 3,
The invalidation certification determination means includes invalidation process determination means for determining whether or not the invalidation certification information proves that the predetermined value information is invalidated in the predetermined value information use device, When it is determined as NO by the invalidation process determining means,
IC card characterized by
前記無効化過程判定手段は、前記無効化証明情報に所定の電子署名が付されているか否かに基づいて、前記所定の価値情報使用装置において価値情報が無効とされたか否かを判定する装置正当性判定手段を有し、前記装置正当性判定手段によって否と判定された場合に、否と判定すること、
を特徴とするICカード。In the IC card according to claim 4,
The invalidation process determination means determines whether or not value information is invalidated in the predetermined value information use device based on whether or not a predetermined electronic signature is attached to the invalidation certification information. Having a legitimacy judging means, and judging to be no when the apparatus legitimacy judging means judges no;
IC card characterized by
前記無効化過程判定手段は、前記価値情報の属性情報、前記価値情報の提供元の識別情報又は前記価値情報の提供先の識別情報のうちの少なくとも一を含む、前記無効化証明情報に含まれる提供経路情報に基づいて、前記所定の価値情報が無効とされたか否かを判定する価値情報正当性判定手段を有し、前記価値情報正当性判定手段によって否と判定された場合に、否と判定すること、
を特徴とするICカード。In the IC card according to claim 4 or 5,
The invalidation process determination means is included in the invalidation certification information including at least one of attribute information of the value information, identification information of a provider of the value information, or identification information of a provider of the value information. If there is value information validity determination means for determining whether or not the predetermined value information has been invalidated based on provision route information, and if the value information validity determination means determines NO, Judging,
IC card characterized by
前記価値情報正当性判定手段は、前記提供経路情報に所定の電子署名が付されているか否かに基づいて、前記提供経路情報が正当なものであるか否かを判定する提供経路正当性判定手段を有し、前記提供経路正当性判定手段によって否と判定された場合に、否と判定すること、
を特徴とするICカード。In the IC card according to claim 6,
The value information validity determination means determines whether or not the provision route information is valid based on whether or not a predetermined electronic signature is attached to the provision route information. Having a means, and determining that the determination is NO when the provision path validity determining means determines NO,
IC card characterized by
所定の要求があった場合に、外部から入力した無効化証明情報が正当なものであるか否かを判定する無効化証明判定ステップと、
前記無効化証明判定ステップにおいて肯と判定された場合に、前記提供可能回数を一増加させるように前記提供回数制限情報記憶手段によって記憶されている提供回数制限情報を書き換える提供回数制限情報書き換えステップと、
所定の要求があった場合に、前記処理段階情報記憶手段に記憶されている前記処理段階情報を出力する処理段階情報出力ステップを備え、
前記無効化証明判定ステップは、前記外部から入力した無効化証明情報を以前に入力していたか否かを判定する重複入力判定ステップを有し、
前記重複入力判定ステップは、前記外部から入力した無効化証明情報に含まれる、前記処理段階情報出力ステップにおいて出力された処理段階情報に含まれているカウンタ値と、前記処理段階情報記憶手段によって記憶されている処理段階情報に含まれているカウンタ値とを照合し、重複入力か否かの判定を行い、
前記重複入力判定ステップは、前記重複入力判定ステップにおいて肯と判定された場合に、否と判定すること、
を特徴とするICカードプログラム。Value information storage means for storing the value information to be provided to a value information using device that uses value information that is a piece of data and / or a program, and reproduction and / or output of the value information to the outside. A number-of-provisions information storage unit that stores provision number-of-provisions information including the possible number of times that can be provided, and a process step that is incremented each time a transaction with a plurality of related processes as one processing unit commits. An IC card program to be executed by a CPU of an IC card comprising processing stage information storage means for storing processing stage information including a counter value that is identification information ,
Invalidation certification determination step for determining whether or not invalidation certification information input from the outside is valid when there is a predetermined request;
A provision number limit information rewriting step of rewriting the provision number limit information stored by the provision number limit information storage means so as to increase the provisionable number of times by one when it is determined as affirmative in the invalidation certification determination step; ,
A processing stage information output step for outputting the processing stage information stored in the processing stage information storage means when there is a predetermined request ;
The invalidation certification determination step includes a duplicate input determination step of determining whether or not invalidation certification information input from the outside has been previously input,
In the duplicate input determination step, the counter value included in the processing stage information output step included in the invalidation certification information input from the outside and stored in the processing stage information output step is stored by the processing stage information storage means. The counter value included in the processing stage information that has been
When the duplicate input determination step is determined as affirmative in the duplicate input determination step, it is determined as no;
IC card program characterized by this.
前記無効化証明判定ステップは、前記無効化証明情報が所定の前記価値情報使用装置において所定の価値情報が無効とされたことを証明するか否かを判定する無効化過程判定ステップを有し、前記無効化過程判定ステップにおいて否と判定した場合に、否と判定すること、
を特徴とするICカードプログラム。In the IC card program according to claim 8,
The invalidation certification determination step includes an invalidation process determination step of determining whether the invalidation certification information proves that the predetermined value information is invalidated in the predetermined value information use device, When it is determined as NO in the invalidation process determination step, it is determined as NO
IC card program characterized by this.
前記無効化過程判定ステップは、前記無効化証明情報に所定の電子署名が付されているか否かに基づいて、前記所定の価値情報使用装置において価値情報が無効とされたか否かを判定する装置正当性判定ステップを有し、前記装置正当性判定ステップにおいて否と判定した場合に、否と判定すること、
を特徴とするICカードプログラム。The IC card program according to claim 9, wherein
The invalidation process determining step determines whether or not the value information is invalidated in the predetermined value information using device based on whether or not a predetermined electronic signature is attached to the invalidation certification information. Having a legitimacy judging step, and judging that it is no when it is judged as no in the apparatus legitimacy judging step;
IC card program characterized by this.
前記無効化過程判定ステップは、前記価値情報の属性情報、前記価値情報の提供元の識別情報又は前記価値情報の提供先の識別情報のうちの少なくとも一を含む、前記無効化証明情報に含まれる提供経路情報に基づいて、前記所定の価値情報が無効とされたか否かを判定する価値情報正当性判定ステップを有し、前記価値情報正当性判定ステップにおいて否と判定した場合に、否と判定すること、
を特徴とするICカードプログラム。In the IC card program according to claim 9 or 10,
The invalidation process determination step is included in the invalidation certification information including at least one of attribute information of the value information, identification information of a provider of the value information, or identification information of a provider of the value information. It has a value information validity determination step for determining whether or not the predetermined value information has been invalidated based on provision route information, and it is determined as NO when it is determined NO in the value information validity determination step To do,
IC card program characterized by this.
前記価値情報正当性判定ステップは、前記提供経路情報に所定の電子署名が付されているか否かに基づいて、前記提供経路情報が正当なものであるか否かを判定する提供経路正当性判定ステップを有し、前記提供経路正当性判定ステップにおいて否と判定した場合に、否と判定すること、
を特徴とするICカードプログラム。In the IC card program according to claim 11,
The value information validity determination step determines whether the provision route information is valid based on whether a predetermined electronic signature is attached to the provision route information. A step, and if it is determined to be NO in the provision route validity determination step, determining NO
IC card program characterized by this.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003112685A JP4368130B2 (en) | 2003-04-17 | 2003-04-17 | IC card and IC card program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003112685A JP4368130B2 (en) | 2003-04-17 | 2003-04-17 | IC card and IC card program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004318564A JP2004318564A (en) | 2004-11-11 |
JP4368130B2 true JP4368130B2 (en) | 2009-11-18 |
Family
ID=33472819
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003112685A Expired - Fee Related JP4368130B2 (en) | 2003-04-17 | 2003-04-17 | IC card and IC card program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4368130B2 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4626181B2 (en) * | 2004-05-12 | 2011-02-02 | ソニー株式会社 | Information processing method and information processing system |
CN108021967B (en) * | 2017-12-05 | 2022-08-26 | 北京小米移动软件有限公司 | Method and device for copying intelligent card and computer readable storage medium |
JP7170588B2 (en) * | 2019-05-31 | 2022-11-14 | ルネサスエレクトロニクス株式会社 | Data processing method and data processing system |
-
2003
- 2003-04-17 JP JP2003112685A patent/JP4368130B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2004318564A (en) | 2004-11-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7421079B2 (en) | Method and apparatus for secure key replacement | |
US7844819B2 (en) | Application authentication system | |
JP4654498B2 (en) | Personal authentication system, personal authentication method, information processing apparatus, and program providing medium | |
JP4660900B2 (en) | Personal authentication application data processing system, personal authentication application data processing method, information processing apparatus, and program providing medium | |
JP4556308B2 (en) | Content distribution system, content distribution method, information processing apparatus, and program providing medium | |
KR100520476B1 (en) | Digital contents issuing system and digital contents issuing method | |
US20040255119A1 (en) | Memory device and passcode generator | |
KR20040030454A (en) | Content usage authority management system and management method | |
JP4485528B2 (en) | Memory card, data exchange system, and data exchange method | |
WO2005096158A1 (en) | Use authentication method, use authentication program, information processing device, and recording medium | |
JP2008533547A (en) | System and method for managing applications on a multi-function smart card | |
JP2017157018A (en) | Information processing device, information processing method, information processing program, and trusted platform module | |
JP2005275839A (en) | Software use permission method and system | |
CN112364305A (en) | Digital content copyright protection method and device based on block chain platform | |
Chen et al. | A novel DRM scheme for accommodating expectations of personal use | |
JP3641909B2 (en) | Proof data generator | |
JPH1124916A (en) | Device and method for managing software licence | |
JP4368130B2 (en) | IC card and IC card program | |
JP2004139242A (en) | Ic card, and system and method for issuing ic card | |
KR20230044953A (en) | Computing method and system for managing files through account authentication of blockchain | |
CN113836516A (en) | Printer selenium drum anti-counterfeiting and printing frequency protection system and method | |
JP2004220436A (en) | Ic card and ic card program | |
JP4893410B2 (en) | Terminal device | |
JP2004348526A (en) | Ic card, ic card program, and switching method of code section | |
JP4192738B2 (en) | Electronic document editing device, electronic document editing program |
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 |