(57)【要約】【課題】限られた機能によって照合を行うことが可能な照合方法及びプログラムを提供する。【解決手段】登録ＰＩＮを記憶し、減算を行うＩＣカードと、ＩＣカードの減算結果がゼロ以上であるか否かの判定を行う外部装置とによって、入力ＰＩＮ及び登録ＰＩＮが一致しているか否かを判定する照合方法であって、入力ＰＩＮの値をＸ、登録ＰＩＮの値をＹ、入力ＰＩＮ及び登録ＰＩＮの最小桁において増減の単位となる最小増減単位値をＺとした場合に、「Ｙ−Ｘ≧０」（Ｓ２３０，Ｓ１３０）かつ「Ｙ−Ｘ−Ｚ＜０」（Ｓ２７０，Ｓ１６０）であるときに、入力ＰＩＮ及び登録ＰＩＮが一致すると判定する（Ｓ１７０）ことを特徴とする。【選択図】図２
2005085072.tif 000002
【特許請求の範囲】
【請求項１】
加算手段及び／又は減算手段と、一の値が他の値以上であるか否かを判定する判定手段とによって、第１の照合対象情報及び第２の照合対象情報が一致しているか否かを判定する照合方法であって、
前記第１の照合対象情報の値をＸ、前記第２の照合対象情報の値をＹ、前記第１及び第２の照合対象情報の最小桁において増減の単位となる最小増減単位値をＺとした場合に、
Ｙ≦Ｘ＜Ｙ＋Ｚ、又は、Ｘ≦Ｙ＜Ｘ＋Ｚ
であるときに、前記第１及び第２の照合対象情報が一致すると判定すること、
を特徴とする照合方法。
【請求項２】
請求項１に記載の照合方法において、
前記減算手段は、前記第１又は第２の照合対象情報のいずれかの照合対象情報が記憶されているＩＣカードに設けられ、
前記減算手段によって、前記第１の照合対象情報の値から前記第２の照合対象情報の値を減算する第１の減算ステップと、
前記判定手段によって、前記第１の減算ステップにおける減算結果がゼロ以上であるか否かを判定する第１の判定ステップと、
前記第１の判定ステップにおいて肯と判定した場合に、前記減算手段によって、前記第１の減算ステップにおける減算結果から前記最小増減単位値を減算する第２の減算ステップと、
前記判定手段によって、前記第２の減算ステップの減算結果がゼロ以上であるか否かを判定する第２の判定ステップとを備え、
前記第２の判定ステップにおいて否と判定した場合に、前記第１及び第２の照合対象情報が一致すると判定すること、
を特徴とする照合方法。
【請求項３】
二つの照合対象情報が一致しているか否かを判定するために、一方の前記照合対象情報を記憶しているＩＣカードと通信可能なコンピュータに実行させるプログラムであって、
前記ＩＣカードに、他方の前記照合対象情報を含み、前記二つの照合対象情報の一方の値から他方の値の減算を指示する命令を送信する第１の減算指示過程と、
前記第１の減算指示過程における命令に対する前記ＩＣカードからの応答が、減算結果がゼロ以上である旨を示す場合に、前記ＩＣカードに、前記減算結果から前記二つの照合対象情報の最小桁において増減の単位となる最小増減単位値の減算を指示する命令を送信する第２の減算指示過程と、
前記第２の減算指示過程における命令に対する前記ＩＣカードからの応答が、減算結果がゼロ未満である旨を示すか否かによって、前記二つの照合対象情報が一致するか否かを判定する判定過程とを備えること、
を特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＩＣカードを用いて二つの照合対象情報について照合を行う照合方法及びこのＩＣカードと通信可能なコンピュータに実行させるプログラムに関するものである。
【背景技術】
【０００２】
ＡＴＭなどのＩＣカードの利用対象となる外部装置は、カード使用者が選択したＰＩＮ（入力ＰＩＮ）と、予めＩＣカード内に記憶されているＰＩＮ（登録ＰＩＮ）との二つの照合対象情報を照合することによってカード使用者を正当な者と認証するか否かを判定している。
また、登録ＰＩＮの漏洩防止の観点からＩＣカードが入力ＰＩＮ及び登録ＰＩＮを照合してこのカード使用者の認証を行う場合がある。
一方、ＩＣカードは、外部装置が正当な装置であるか否かを判定するために外部装置に記憶されているＰＩＮ（端末ＰＩＮ）を受信し、この端末ＰＩＮと、カード内に記憶されているＰＩＮ（登録ＰＩＮ）とを照合し、外部装置が正当な装置であるか否かを判定している。
ＩＣカードは、外部装置からＶＥＲＩＦＹなどの所定のコマンドを受信した場合に、入力ＰＩＮ（又は端末ＰＩＮ）及び登録ＰＩＮの２つの値を比較し、一致するか否かを判定する照合機能を実行し、一致した場合には、正常終了の旨のレスポンス、一致しない場合には、エラーの旨のレスポンスを外部装置へ送信していた。この照合機能は、ＩＣカードに記憶されているオペレーティングシステム（以下、「ＯＳ」という。）の一機能として備えられている（例えば、非特許文献１参照。）。
【０００３】
現在、ＩＣカードは、プリペイドカード、キャッシュカード、クレジットカード、定期券カードなど様々な分野において様々な形態で利用されている。プリペイドカード、定期券カードなどは、照合機能を備えていない。一般に、決済額の小さいプリペイドカードは、購買時に記憶されている電子マネー残高から商品の金額を減算する、また、残高が足りない場合には、エラーを返すなどの限られた機能だけを備え、財布の代わりという利用形態の観点から、カード使用者の認証を行うための照合機能を備えていない。また、定期券カードなどの外部装置と非接触式の通信を行う非接触型のＩＣカードは、処理時間を短縮すること、外部装置が定期券カードの正当性を認証することが重要であるため、同様に限られた機能のみを備え、照合機能を備えていない。
しかし、複数のアプリケーションを搭載することができ、随時アプリケーションの搭載又は削除が可能ないわゆるマルチアプリケーションＩＣカードの登場によって、１枚のＩＣカードが様々な形態で利用され、発行済みのＩＣカードに後からアプリケーションを搭載することも想定されるが、プリペイドカードなどは、照合機能を備えていないため、クレジットカード、キャッシュカードの機能（アプリケーション）を追加することができないとういう問題があった。
また、この問題を解決するため、アプリケーション内に照合機能を備える場合には、アプリケーションの汎用性がなくなり、アプリケーション開発などの負担がかかるとともに、マルチアプリケーションＩＣカードの利点を損なうという問題があった。
【非特許文献１】ＩＣカードシステム利用促進協議会  編集・発行  「ＪＩＣＳＡＰ  ＩＣカード仕様Ｖ２．０（第三部  共通コマンド）」、平成１３年７月、ｐ．５４−５５
【発明の開示】
【発明が解決しようとする課題】
【０００４】
本発明の課題は、限られた機能によって照合を行うことが可能な照合方法及びプログラムを提供することである。
【課題を解決するための手段】
【０００５】
本発明は、以下のような解決手段により、前記課題を解決する。なお、理解を容易にするために、本発明の実施形態に対応する符号を付して説明するが、これに限定されるものではない。すなわち、請求項１の発明は、加算手段及び／又は減算手段（１２）と、一の値が他の値以上であるか否かを判定する判定手段（１２，２０）とによって、第１の照合対象情報及び第２の照合対象情報が一致しているか否かを判定する照合方法であって、前記第１の照合対象情報の値をＸ、前記第２の照合対象情報の値をＹ、前記第１及び第２の照合対象情報の最小桁において増減の単位となる最小増減単位値をＺとした場合に、Ｙ≦Ｘ＜Ｙ＋Ｚ、又は、Ｘ≦Ｙ＜Ｘ＋Ｚであるとき（Ｓ１３０，Ｓ１６０，Ｓ２２０，Ｓ２３０，Ｓ２６０，Ｓ２７０）に、前記第１及び第２の照合対象情報が一致すると判定すること（Ｓ１７０）、を特徴とする照合方法である。
【０００６】
請求項２の発明は、請求項１に記載の照合方法において、前記減算手段は、前記第１又は第２の照合対象情報のいずれかの照合対象情報が記憶されているＩＣカード（１０）に設けられ、前記減算手段によって、前記第１の照合対象情報の値から前記第２の照合対象情報の値を減算する第１の減算ステップ（Ｓ２２０）と、前記判定手段によって、前記第１の減算ステップにおける減算結果がゼロ以上であるか否かを判定する第１の判定ステップ（Ｓ２３０，Ｓ１３０）と、前記第１の判定ステップにおいて肯と判定した場合に、前記減算手段によって、前記第１の減算ステップにおける減算結果から前記最小増減単位値を減算する第２の減算ステップ（Ｓ２６０）と、前記判定手段によって、前記第２の減算ステップの減算結果がゼロ以上であるか否かを判定する第２の判定ステップ（Ｓ２７０，Ｓ１６０）とを備え、前記第２の判定ステップにおいて否と判定した場合に、前記第１及び第２の照合対象情報が一致すると判定すること（Ｓ１７０）、を特徴とする照合方法である。
【０００７】
請求項３の発明は、二つの照合対象情報が一致しているか否かを判定するために、一方の前記照合対象情報を記憶しているＩＣカード（１０）と通信可能なコンピュータ（２０）に実行させるプログラムであって、前記ＩＣカードに、他方の前記照合対象情報を含み、前記二つの照合対象情報の一方の値から他方の値の減算を指示する命令を送信する第１の減算指示過程（Ｓ１１０）と、前記第１の減算指示過程における命令に対する前記ＩＣカードからの応答が、減算結果がゼロ以上である旨を示す場合に、前記ＩＣカードに、前記減算結果から前記二つの照合対象情報の最小桁において増減の単位となる最小増減単位値の減算を指示する命令を送信する第２の減算指示過程（Ｓ１２０，Ｓ１３０，Ｓ１４０）と、前記第２の減算指示過程における命令に対する前記ＩＣカードからの応答が、減算結果がゼロ未満である旨を示すか否かによって、前記二つの照合対象情報が一致するか否かを判定する判定過程（Ｓ１５０，Ｓ１６０）とを備えること、を特徴とするプログラムである。
【発明の効果】
【０００８】
本発明による照合方法及び／又はプログラムによれば、以下の効果を得ることが可能となった。
（１）Ｙ≦Ｘ＜Ｙ＋Ｚに基づいて、照合対象情報が一致するか否かを判定することによって、加算手段及び／又は減算手段と、判定手段という限られた手段での照合を実現する。
（２）特に、減算と、一の値がゼロ以上であるか否かの判定によって、照合を実現することによって、現在流通しているＩＣカード（照合機能を備えていない。）を大きく改変することなく、用いて、照合を実現することができ、このＩＣカードの汎用性を向上する。
（３）いずれかの照合対象情報が記憶されているＩＣカードが照合対象情報についての減算を行うことによって、この照合対象情報の漏洩を防止する。
【発明を実施するための最良の形態】
【０００９】
登録ＰＩＮなどの登録されている照合対象情報の漏洩を防止し、限られた機能によって照合を行うという目的を、プリペイドカードなどのＩＣカードが有する減算機能によって減算を行い、外部装置がＩＣカードからの正常終了又はエラーのレスポンスに基づいて、Ｙ≦Ｘ＜Ｙ＋Ｚ（Ｘ，Ｙは、照合の対象となる照合対象情報。Ｚは、最小増減単位値。）を各照合対象情報が満たしているか否かを判定することによって実現する。
【実施例】
【００１０】
図１は、本発明による照合方法を実施する照合システム１の構成を示すブロック図である。
図１に示すように、照合システム１は、ＩＣカード１０と、外部装置２０とを備え、入力ＰＩＮ（又は端末ＰＩＮ）及び登録ＰＩＮなどの二つの照合対象情報について照合を行うシステムである。ＩＣカード１０及び外部装置２０間は、非接触式での通信経路が確立された状態にある。
外部装置２０は、ＩＣカード１０との非接触式での通信を媒介するリーダライタ（Ｒ／Ｗ）、ディスプレイ、キーボードなどの入出力装置を備えるコンピュータである。
ＩＣカード１０は、互いに接続されている通信部１１、ＣＰＵ１２、ＲＡＭ１３、ＲＯＭ１４、不揮発性メモリ１５などを備えている。ＩＣカード１０は、照合機能を備えていないプリペイドカード、定期券カードなどのＩＣカードに、登録ＰＩＮなどの登録された照合対象情報（登録照合対象情報）を記憶させることによって実現可能である。
通信部１１は、巻線コイル及び巻線コイルの両端に接続されている同調用のコンデンサなどを有するアンテナと、変調回路及び復調回路などのインターフェイスとなるＩ／Ｏインターフェイスなどとを備え、非接触式での外部装置２０との通信を実現し、ＣＰＵ１２及び外部装置２０間の通信を媒介する。
【００１１】
ＣＰＵ１２は、算術演算及び論理演算、制御などを行い、ＩＣカード１０を統括制御する中央処理装置であって、通信部１１を介して外部装置２０から受信するコマンドに応じて、ＲＯＭ１４及び不揮発性メモリ１５に記憶されているプログラムを実行し、その処理結果をレスポンスとして外部装置２０へ送信する。
ＲＡＭ１３は、ＣＰＵ１２が処理を行うための作業領域として使用する揮発性メモリであり、ＲＯＭ１４は、ＯＳなどのＣＰＵ１２が処理を行うために必要なプログラム、登録ＰＩＮなどのデータを記憶している不揮発性の読み出し専用メモリである。不揮発性メモリ１５は、ＥＥＰＲＯＭ、フラッシュメモリ、ＦＲＡＭなどの随時書き換え可能な不揮発性のメモリであって、アプリケーションなどのＣＰＵ１２が処理を行うために必要なプログラム及びデータが記憶されている。なお、ＲＯＭ１４に記憶されているＯＳは、照合機能を備えていない。
【００１２】
図２は、本発明による照合方法及びプログラムを示すフローチャートであって、入力ＰＩＮ及び登録ＰＩＮの照合についての処理を示している。以下、ＩＣカード１０のＣＰＵ１２及び外部装置２０の処理を中心に説明する。
ステップ１００（以下、「ステップ」を「Ｓ」という。）において、外部装置２０は、使用の条件としてカード使用者にＰＩＮの入力を要求する旨をディスプレイに表示し、カード使用者は、記憶をもとに、外部装置２０のキーボードを操作して数字、英字、記号などを選択し、外部装置２０は、入力ＰＩＮを入力する。
Ｓ１１０において、外部装置２０は、この入力ＰＩＮを含み、ＩＣカード１０に記憶されている登録ＰＩＮの値（図２において「Ｙ」）から入力ＰＩＮの値（図２において「Ｘ」）の減算を指示するコマンドを送信し、ＩＣカード１０は、このコマンドを受信し（Ｓ２１０）、ＣＰＵ１２は、コマンドに従って減算を行い（Ｓ２２０）、この減算結果（図２において「Ａ」）がゼロ以上であるか否かの判定を行う（Ｓ２３０）。ゼロ未満である場合には、ＩＣカード１０は、減算ができない旨（エラー）のレスポンスを外部装置２０へ送信し（Ｓ２９０）、ＩＣカード１０は、照合についての処理を終了し（Ｓ３１０）、外部装置２０は、このレスポンスを受信し（Ｓ１２０）、入力ＰＩＮ及び登録ＰＩＮが一致しないと判定し（Ｓ１３０，Ｓ１８０）、照合についての処理を終了する（Ｓ１９０）。
【００１３】
一方、ＣＰＵ１２は、Ｓ２３０の判定において減算結果がゼロ以上である場合には、正常終了の旨のレスポンスを外部装置２０へ送信する（Ｓ２４０）。外部装置２０は、このレスポンスを受信し（Ｓ１２０）、減算結果から最小増減単位値（図２においてＺ）の減算を指示するコマンドを送信する（Ｓ１４０）。最小増減単位値とは、例えば、数値「１５」の最小増減単位値は「１」、数値「１．５」であれば「０．１」、数値「−１５０」であれば「１」など、最小桁において増減の単位となる値、つまり、最小桁において「１」となる値である。本実施例においては、ＰＩＮの値は、整数であるため、最小増減単位値は、「１」となる。
ＩＣカード１０は、このコマンドを受信し（Ｓ２５０）、ＣＰＵ１２は、コマンドに従って減算を行い（Ｓ２６０）、この減算結果（図２において「Ｂ」）がゼロ以上であるか否かの判定を行う（Ｓ２７０）。ゼロ未満である場合には、ＩＣカード１０は、エラーのレスポンスを外部装置２０へ送信し（Ｓ３００）、照合についての処理を終了する（Ｓ３１０）。外部装置２０は、このレスポンスを受信し（Ｓ１５０）、入力ＰＩＮ及び登録ＰＩＮが一致すると判定し（Ｓ１６０，Ｓ１７０）、照合についての処理を終了する（Ｓ１９０）。
【００１４】
Ｓ２７０の判定において減算結果がゼロ以上である場合には、ＣＰＵ１２は、正常終了の旨のレスポンスを外部装置２０へ送信し（Ｓ２８０）、照合についての処理を終了する（Ｓ３１０）。外部装置２０は、このレスポンスを受信し（Ｓ１５０）、入力ＰＩＮ及び登録ＰＩＮが一致しないと判定し（Ｓ１６０，Ｓ１８０）、照合についての処理を終了する（Ｓ１９０）。外部装置２０は、ＰＩＮについての照合が成功したか（Ｓ１７０）、否か（Ｓ１８０）の照合結果についてディスプレイに表示し、カード使用者へ通知する。
なお、図２において、入力ＰＩＮ及び登録ＰＩＮは、それぞれ「Ｙ」、「Ｘ」であってもよく、「Ｘ」、「Ｙ」のそれぞれいずれか一方及び他方となっていればよい。
【００１５】
次に数値を当て嵌め、図２についてより具体的に説明する。
図３は、照合についての処理における、ＩＣカード１０のＲＡＭ１３に記憶される数値の変化を示す説明図である。以下、登録ＰＩＮが「１０００」であって、入力ＰＩＮが「１００」（パターン１）、「１０００」（パターン２）、「１１００」（パターン３）の場合についてそれぞれ順に説明する。
先ず、パターン１について説明する。
Ｓ２００において、ＩＣカード１０の不揮発性メモリ１５には、登録ＰＩＮ「１０００」が記憶されている。ＩＣカード１０は、Ｓ２１０において、登録ＰＩＮから入力ＰＩＮ「１００」の減算を指示するコマンドを受信した場合に、ＩＣカード１０は、ＲＡＭ１３に登録ＰＩＮ「１０００」を読み出し（図３（ａ）の＃１０）、減算を行い（Ｓ２２０）、減算結果「９００」（１０００−９００）を得る（図３（ａ）の＃２０）。ＩＣカード１０は、正常終了のレスポンスを外部装置２０へ送信し（Ｓ２４０）、外部装置２０は、このレスポンスを受け（Ｓ１２０）、Ｓ２２０の減算結果から最小増減単位値（「１」）の減算を指示するコマンドを送信する（Ｓ１４０）。ＩＣカード１０は、コマンドに従って減算を行い（Ｓ２６０）、減算結果「８９９」（９００−１）を得る（図３（ａ）の＃３０）。ＩＣカード１０は、正常終了のレスポンスを外部装置２０（Ｓ２８０）へ送信し、外部装置２０は、このレスポンスを受け（Ｓ１５０）、入力ＰＩＮ「１００」及び登録ＰＩＮ「１０００」が不一致であると判定する（Ｓ１８０）。
【００１６】
次に、パターン２について説明する。
入力ＰＩＮが「１０００」の場合には（図３（ｂ）の＃１１０）、Ｓ２２０における減算結果が「０」となり（図３（ｂ）の＃１２０）、ＣＰＵ１２は、正常終了のレスポンスを外部装置２０へ送信する（Ｓ２４０）。また、Ｓ２６０における減算結果が「−１」となり（図３（ｂ）の＃１３０）、ＣＰＵ１２は、エラーのレスポンスを外部装置２０へ送信する（Ｓ３００）。外部装置２０は、このレスポンスを受け（Ｓ１５０）、入力ＰＩＮ「１０００」及び登録ＰＩＮ「１０００」が一致すると判定する（Ｓ１７０）。
【００１７】
最後に、パターン３について説明する。
入力ＰＩＮが「１１００」の場合には（図３（ｃ）の＃２１０）、Ｓ２２０における減算結果が「−１００」となり（図３（ｃ）の＃２２０）、ＣＰＵ１２は、エラーのレスポンスを外部装置２０へ送信する（Ｓ２９０）。外部装置２０は、このレスポンスを受け（Ｓ１２０）、入力ＰＩＮ「１１００」及び登録ＰＩＮ「１０００」が不一致であると判定する（Ｓ１８０）。
【００１８】
このように実施例によれば、ＩＣカード１０は、プリペイドカードのように、減算、減算が可能か否かのレスポンスを返すなどの限定された機能を備え、照合機能を備えていないにもかかわらず、外部装置２０は、このレスポンスに基づいて入力ＰＩＮ及び登録ＰＩＮが一致するか否かを判定する照合を行うことが可能となった。
また、ＩＣカード１０は、プリペイドカードに登録ＰＩＮを記憶させることによって実現可能であり、現在流通しているプリペイドカードなどの照合機能を備えていないＩＣカードの汎用性を向上することが可能となった。
また、外部装置２０がＩＣカード１０から登録ＰＩＮを読み出すことなく、照合を行うため、登録ＰＩＮの漏洩を防止することが可能である。
【００１９】
（変形例）
以上説明した実施例に限定されることなく、種々の変形や変更が可能であって、それらも本発明の均等の範囲内である。例えば、ＩＣカード１０及び外部装置２０は、非接触式の通信を行うが、接触式の通信であってもよく、通信ができれば、その通信方法は限定されない。
【００２０】
照合システム１は、照合対象情報を入力ＰＩＮ及び登録ＰＩＮとしているが、これに限られず、また、照合対象情報の値は、整数に限られず、小数であってもよく、負の値であってもよい。更に、照合対象情報は、符号であってもよく、この場合には、コード変換などによって数値化された値に基づいて照合を行うことが可能である。
【００２１】
照合システム１は、「Ａ＝Ｙ−Ｘ≧０」かつ「Ａ−Ｚ＝Ｙ−Ｘ−Ｚ＜０」であるか否かを、ＩＣカード１０が減算を行い、外部装置２０がその結果に基づいて判定し、照合を行っているが、例えば、「Ｘ−Ｙ≧０」かつ「Ｙ＋Ｚ−Ｘ≧０」であるか否かを、ＩＣカード１０が加算及び減算を行い、外部装置２０がその結果に基づいて判定し、照合を行ってもよい。「Ｙ≦Ｘ＜Ｙ＋Ｚ」（「Ｘ」、「Ｙ」を入れ替えてもよい。）を、ＩＣカード１０が加算及び／又は減算を行い、外部装置２０がその結果に基づいて判定し、照合を行うことができればよい。登録ＰＩＮなどの予めＩＣカード１０に登録（記憶）されている登録照合対象情報を外部へ読み出すことなく、登録照合対象情報の漏洩を防止しつつ、照合を行うことが可能である。
【００２２】
ＩＣカード１０は、ＲＯＭ１４に登録ＰＩＮを記憶しているが、不揮発性メモリ１５に記憶していてもよく、秘密保持状態で（セキュアに）記憶できれば、記憶場所は限定されない。
【図面の簡単な説明】
【００２３】
【図１】照合システム１の構成を示すブロック図である。
【図２】照合方法及びプログラムを示すフローチャートである。
【図３】ＲＡＭ１３に記憶されている数値の変化を示す説明図である。
【符号の説明】
【００２４】
１  照合システム
１０  ＩＣカード
１１  通信部
１２  ＣＰＵ
１３  ＲＡＭ
１４  ＲＯＭ
１５  不揮発性メモリ
２０  外部装置
【図１】
2005085072.tif 000003
【図２】
2005085072.tif 000004
【図３】
2005085072.tif 000005