(57)【特許請求の範囲】
【請求項１】
磁気ストライプが形成され、その磁気ストライプに使用される金額単位Ｍ（円）の金額情報がｎ個磁気的に記録された金額Ｍｎ（円）のプリペイドカードにおいて、その磁気ストライプに少なくともｎ個のランダムパターンＸ1 ，Ｘ2 ，・・・Ｘn ，・・・がそれぞれ個別にかつ使用される端末装置により消去可能に記録され、
前記ランダムパターンは、前記磁気ストライプにディジタル情報を記録することにより発生するジッタに基づき生成された
ことを特徴とするプリペイドカード。
【請求項２】
前記ランダムパターンの数はｎ＋１個である請求項１記載のプリペイドカード。
【請求項３】
前記ランダムパターンとともに、そのランダムパターンを暗号化した情報が署名としてそのカードの磁気ストライプに記録された請求項１または２記載のプリペイドカード。
【請求項４】
前記署名は、秘密鍵により暗号化され、前記端末装置に保持される公開鍵により復号可能である請求項３記載のプリペイドカード。
【請求項５】
磁気ストライプが形成され、その磁気ストライプに使用される金額単位Ｍ（円）の金額情報がｎ個磁気的に記録された金額Ｍｎ（円）のプリペイドカードの正当性を識別する装置であって、
使用者が金額Ｍｈ（円）の使用を要求するとき、そのプリペイドカードの磁気ストライプに磁気的に記録されたｈ個以上のランダムパターンおよびそのランダムパターンが暗号化された署名をそのプリペイドカードから読取る手段と、この読取る手段により読取られた署名を復号化する手段と、この復号化する手段により復号化された情報と前記読取る手段により読取られたランダムパターンとを照合してそのプリペイドカードの正当性を判定する手段と、金額Ｍｈ（円）の使用許可情報を送出するとともにその磁気ストライプに記録されたｈ個のランダムパターンを消去する手段とを備え、
前記ランダムパターンは、前記磁気ストライプにディジタル情報を記録することにより発生するジッタに基づき生成された
ことを特徴とする偽造プリペイドカード識別装置。
【請求項６】
前記署名は、そのプリペイドカードのランダムパターンをセンタ装置に保持される秘密鍵により暗号化されたディジタル情報であり、前記正当性を判定する手段および前記ｈ個のランダムパターンを消去する手段は、そのプリペイドカードが使用される端末装置に設けられ、その端末装置は前記秘密鍵に対応する公開鍵を保持しこの公開鍵を用いて前記署名情報の復号化を行う手段を含む請求項５記載の偽造プリペイドカード識別装置。
【請求項７】
前記センタ装置と前記端末装置との間には、前記端末装置で使用されたプリペイドカードに関する情報を伝達する通信手段が設けられた請求項６記載の偽造プリペイドカード識別装置。
【請求項８】
前記センタ装置には、プリペイドカードの作成時に設定されプリペイドカードを個別に識別できるように設定されたカード識別番号ＩＤC 、このカード識別番号ＩＤC に対応してそのプリペイドカードに設定された署名情報Ｓが記録されたデータベースと、前記通信手段を介して前記端末装置から到来する情報をこのデータベースに記録された情報と照合することによりそのプリペイドカードの不正を識別する手段とを含む請求項７記載の偽造プリペイドカード識別装置。
【請求項９】
前記データベースには、前記端末装置を設置する店番号ＩＤs が併せて記録された請求項８記載の偽造プリペイドカード識別装置。
【請求項１０】
プログラム制御されたコンピュータを含むハードウエアにインストールすることにより請求項５ないし９のいずれかに記載の偽造プリペイドカード識別装置となるソフトウエアが記録された機械読み取り可能な記憶媒体。
【請求項１１】
前記端末装置が前記署名を復号化するための暗号鍵が同一の記憶媒体にあるいは別の記憶媒体に記録された請求項１０記載の記憶媒体。
【発明の詳細な説明】
【０００１】
【発明が属する技術分野】
本発明は、プリペイドカードの偽造を防止ための技術に関する。本発明は、磁気ストライプを用いたプリペイドカードが偽造され使用されたときに、そのカードが偽造であることを識別することができるプリペイドカード、プリペイドカードが使用される端末装置、複数の端末装置と通信手段により接続されたセンタ装置に関する。本発明は、テレホンカード、パチンコカード、交通機関の乗車券、娯楽施設の回数券、その他に広く利用することができる。
【０００２】
【従来の技術】
近年、偽造プリペイドカードによる不正使用が社会問題となっている。特に、磁気ストライプが形成されたカードを使用するものでは、不正者は真正なカードの磁気ストライプの上に記録されたデータを解析し、磁気ライタを用いて新たな情報を上書きすることにより、料金情報などを不正に改ざんすることにより、真正なカードと区別がつかなくなる偽造カードを比較的簡単に作成することができる。磁気ストライプの上書きは磁気ライタなどの装置が手に入ると、比較的容易にかつ大量に行うことができるから、いちど不正者により偽造が行われるとその被害は深刻なものになりうる。そこで、プリペイドカードが使用されたときに、そのプリペイドカードの情報を読み取る端末装置で、それが真正なプリペイドカードであるか、偽造されたプリペイドカードであるかを識別することができ、しかも不正者には絶対にバイパスすることができないような認証方式が必要となる。
【０００３】
犯罪捜査などでは個人を特定するために、人間のＤＮＡや指紋が利用される。これは、
１）ＤＮＡや指紋が、個人に固有の情報であり、異なる人間は異なるＤＮＡや指紋を持っていると考えることができる（固有性）、
２）ＤＮＡや指紋は、人間が意図的に制御して変更することができない（再生困難性）、
３）ＤＮＡや指紋は一生不変であり、また誰もがそれを確認することができる（再現性）、
など、個人を特定するための条件を満たすものであるからである。
【０００４】
これと同様なことがプリペイドカードに対しても設定できる。プリペイドカードの内部にＤＮＡや指紋に相当するような特徴量を設定することができれば、端末装置は不正に偽造されたプリペイドカードを見抜くことができるから、偽造されたプリペイドカードが使用される被害を事前に防ぐことができる。
【０００５】
フエルナンデスは米国特許第５２３５１６６号および第５４３０２７９号で、カードの磁気ストライプにディジタル情報を書き込むときに生じるジッタをこの固有性があり、再生困難性があり、再現性がある情報として利用できることを開示した。磁気ストライプに生じるジッタは、磁気ストライプの物理的な厚みの変動などの磁気ストライプの物理的なムラ、磁気ライタの回転速度などの動作ムラ、磁気ライタに与える電圧電流のムラ、その他により自然現象として生じるものであり、いちどプリペイドカードが作成されると、そのジッタは固有性があり、同じジッタを再現させることは困難であり、またいったん生じたジッタは何回でも読み取り再現することができることを示した。そして、プリペイドカードの作成時に磁気ストライプの特定部分に生じたジッタを観測し、そのジッタのチエックサム（とフエルナンデスは定義する）を作り、これをそのプリペイドカードの磁気ストライプの別の箇所にディジタル情報として記録しておく発明を開示した。
【０００６】
その従来発明では、プリペイドカードが使用されたとき、その磁気ストライプに記録された金額に関する情報を読み取るとともに、その磁気ストライプの特定部分のジッタを実際に観測し、プリペイドカードを作成したときと同一の論理によりチエックサムを演算し、それがディジタル情報として記録されたチエックサムと一致するか否かを調べる。もしこれが一致すれば真正なプリペイドカードであるとし、不一致であれば偽造されたプリペイドカードとする。
【０００７】
たとえば、不正者が真正なプリペイドカードを正規に購入し、別に同一形式のプリペイドカードを用意して、その真正なプリペイドカードのディジタル情報の全部を別に用意した磁気ストライプに複写することにより、真正なプリペイドカードとそっくりの偽造プリペイドカードを作ったとする。多くの場合に、このようにして作成された偽造プリペイドカードは、プリペイドカードを使用する端末装置では、真正なプリペイドカードとの区別がつかない。ところが、その磁気ストライプの特定部分のジッタはカード毎に固有であるから、正規に購入した真正なものと、複写により作成したものとでは違うので、その特定部分のジッタから得られるチエックサムは、そのプリペイドカードに記録されたチエックサムとは一致しない。上記従来技術ではこのようにして偽造を発見できる。
【０００８】
【発明が解決しようとする課題】
このフエルナンデスによる偽造防止方法は有効な方法であるが、上記チエックサムのビット数に応じて、偽造プリペイドカードであっても、偶然にそのカードの特定部分のジッタに一致するチエックサムが一定の割合で得られる。また、ジッタを読み取る特定部分の磁気ストライプ上の位置やチエックサム演算の論理を、自ら解析する、あるいは秘密が漏洩される、などにより不正者が知ってしまえば、発見されることなく使用できる偽造プリペイドカードを不正者が作成することができるようになる。
【０００９】
一方、多くの磁気ストライプにディジタル情報として金額情報を記録したプリペイドカードでは、その金額情報をプリペイドカードの使用によって金額単位Ｍ（日本国では「円」、これはドルでもセントでも、その他どのような単位でもよい）づつ減額するようになっている。すなわち、全体でＭ×ｎ（円）となるように、金額単位Ｍ（円）の金額情報がｎ個磁気的に記録され、使用によりＭ円単位でこの金額情報が書き換えられあるいは抹消されるようになっている。すなわち、プリペイドカードが使用される端末装置は、単位金額情報を抹消する、あるいは金額情報を書き直すなどの機能を備えている。したがって、上記ジッタを読み取る特定部分は、最後の１金額単位の金額情報が抹消されるまで変更されない部分であることが必要である。したがって、ジッタを読み取る磁気ストライプの特定部分はきわめて限られた部分に設定しなければならないから、ランダムパターンとしての価値が低くなる。またその特定部分の位置は不正者により発見されやすいことになる。
【００１０】
金額情報を抹消あるいは書き直すたびに、特定部分を変更する、あるいは書き直した位置に新たに設定する、などの方法も考えられるが、その場合には、特定部分を選択する情報、上記チエックサムを演算する情報、その他鍵情報を端末装置にあらかじめ設定しておくことが必要になり、これが不正者に盗まれて利用される可能性を高くすることになる。
【００１１】
本発明は、このような背景に行われたものであって、真正なプリペイドカードと区別がつかずに偽造プリペイドカードが使用される可能性をきわめて低くすることができる、プリペイドカードおよびその偽造識別装置を提供することを目的とする。本発明は、不正者の解析などによりかりに偽造が成功しても、きわめて多数の使用できない偽造プリペイドカードを作成し、その中から使用できるものを選別しなければならないなど、実質的に不正により利益を得ることができないプリペイドカードおよびその偽造識別装置を提供することを目的とする。本発明は、使用によって金額情報が変更される場合にも、使用できる残りの金額について偽造を相応に識別することができる、プリペイドカードおよびその偽造識別装置を提供することを目的とする。
【００１２】
【課題を解決するための手段】
本発明の第一の観点は、プリペイドカードである。本発明のプリペイドカードは、磁気ストライプが形成され、その磁気ストライプに使用される金額単位Ｍ円の金額情報がｎ個磁気的に記録された金額Ｍｎ円のプリペイドカードにおいて、そのカードに形成された磁気ストライプに少なくともｎ個のランダムパターンＸ1 ，Ｘ2 ，・・・Ｘn ，・・・がそれぞれ個別にかつ使用される端末装置により消去可能に記録されたことを特徴とする。すなわち、複数ｎ個のランダムパターンそのものが、金額Ｍｈ円が使用されるたびにｈ個づつ消去されるところに特徴がある。複数ｎ個のランダムパターンを作成するには、長いランダムパターンを単純にｎ個に分割して作成することが最も単純な方法であるが、その他にもさらに込み入った方法でも作成することができる。端末装置による消去はその磁気ストライプにパンチにより孔をあける、その磁気ストライプを上書きする、その他の方法により行うことができる。
【００１３】
これにより、磁気ストライプに記録された金額情報を書き換えた場合にも、ランダムパターンは相応に保持されるし、ランダムパターンの数に対応してそのプリペイドカードの残りの金額を特定することができる。
【００１４】
ここで「ランダムパターン」とは、プリペイドカードの製造時に偶然発生的に生まれる特徴量であって、そのカードのダイジェストとして機能する制御困難な乱数パラメタをいう。ランダムパターンには、固有性、再生困難性、再現性があることが必要である。固有性は本来パターンとカードとの間に１対１の対応があるということであるが、現実にはカードの数がパターンの数より多くなることがある。その場合には、あるカードのパターンと同じパターンを持つ別のカードを見いだすことが、物理的かつ計算量的に困難である場合も固有性を有するとすることができる。再生困難性とは、意図的に別のカードの上に特定のパターンを創り出すことが困難であるということである。再現性とは、ひとつのカードについてその寿命期間にわたりパターンが不変であり、それはそのプリペイドカードの検証を行う者が必要なときに直接にそのカードから認識できるという性質である。
【００１５】
プリペイドカードの磁気ストライプに生じるパルス状のジッタの位置（およびまたは大きさ）はランダムパターンの典型的な例である。つまり、磁気ストライプに生じるジッタは、磁気ストライプの材料や厚さ、記録する磁気ライタの性質、その磁気ライタの駆動速度、駆動ムラ、その他の原因により偶然発生的に生じるものであり、プリペイドカード毎にその発生位置および大きさは固有なものである。これは一般的に普及している磁気リーダで読み取ることが可能であり、一般的な磁気ライタにより特定のジッタを意図的に書き込むことはできない。新たに磁気ライタで磁気ストライプ上に情報を上書きするとその前のジッタは消えてしまい、その上書き部分に新たなジッタが発生することになる。このため、磁気ストライプをコピーしてプリペイドカードを偽造しても、ジッタの位置および大きさが異なるので、端末装置はジッタの位置（およびまたは大きさ）を確認すれば真偽を判定することができる。ジッタは振幅情報としてパルス状の雑音として認識することができるほか、周波数情報あるいは時間情報としてクロック周波数あるいはクロック・タイミングのムラとしても認識することができる。
【００１６】
磁気ストライプに記録されたディジタル情報のジッタの位置（およびまたは大きさ）にはランダムパターンとなる。ジッタの位置（およびまたは大きさ）を観測しそれをディジタル情報にして、そのカードの固有の署名として、そのカードの磁気ストライプに記録しておくことができる。そのディジタル情報は秘密に保持された暗号化により作成することがよい。その暗号はセンタ装置のみが知る秘密鍵により暗号化し、その秘密鍵に対応する端末装置に設定された公開鍵により復号化することができる。磁気ストライプ上に設定するランダムパターンの数は、端末装置の識別を確実にするために、プリペイドカードの使用可能金額Ｍｎ円についてｎ＋１個以上とすることが望ましい。
【００１７】
プリペイドカードが使用されると、使用される端末装置で得られるランダムパターンは、すでにその一部が使用により消去されているかも知れないが、消去されていない部分を用いて検証を行えば十分である。すなわち、未使用のプリペイドカードについてｎ＋１個のランダムパターンが設定され、そのｎ＋１個のランダムパターンについて秘密鍵により暗号化された署名Ｓがあると、端末装置でその署名Ｓを復号化すると元のｎ＋１個のランダムパターンが得られる。実際にそのプリペイドカードから端末装置が観測できるランダムパターンは、ｎ＋１のうち使用により消去されていない部分であるが、それが元のｎ＋１個のランダムパターンのうちの対応する部分と照合することができる。残り金額が少なくなるにしたがって照合することができる部分が小さくなるがそれは実用上問題ない。
【００１８】
本発明の第二の観点は、プリペイドカードの正当性を識別する偽造プリペイドカードの識別装置である。本発明の装置は、磁気ストライプが形成され、その磁気ストライプに使用される金額単位Ｍ（円）の金額情報がｎ個磁気的に記録された金額Ｍｎ（円）のプリペイドカードの正当性を識別する装置であって、使用者が金額Ｍｈ（円）の使用を要求するとき、そのプリペイドカードの磁気ストライプに磁気的に記録されたｈ個以上のランダムパターンおよびそのランダムパターンが暗号化された署名をそのプリペイドカードから読取る手段と、この読取る手段により読取られた署名を復号化する手段と、この復号化する手段により復号化された情報とこの読取る手段により読取られたランダムパターンとを照合してそのプリペイドカードの正当性を判定する手段と、金額Ｍｈ（円）の使用許可情報を送出するとともにその磁気ストライプに記録されたｈ個のランダムパターンを消去する手段とを備えたことを特徴とする。
【００１９】
この場合も署名は、そのプリペイドカードのランダムパターンをセンタ装置に保持される秘密鍵により暗号化されたディジタル情報であり、前記正当性を判定する手段およびｈ個のランダムパターンを消去する手段は、そのプリペイドカードが使用される端末装置に設けられ、その端末装置は前記秘密鍵に対応する公開鍵を保持しこの公開鍵を用いて前記署名情報の復号化を行う手段を含む。
【００２０】
このセンタ装置と端末装置との間に、端末装置で使用されたプリペイドカードの正当性に関する情報を伝達する通信手段を設けることによりさらに識別能力を向上することができる。すなわち、センタ装置には、プリペイドカードの作成時に設定されプリペイドカードを個別に識別できるように設定されたカード識別番号ＩＤC 、このカード識別番号ＩＤC に対応してそのプリペイドカードに設定された署名情報Ｓが記録されたデータベースと、その通信手段を介して当該端末装置から到来する情報をこのデータベースに記録された情報と照合することによりそのプリペイドカードの不正を識別する手段とを含む構成とすることができる。そのデータベースには、端末装置を設置する店番号ＩＤs が併せて記録することができる。
【００２１】
この構成により同一のプリペイドカードが不正により再生されて使用されたときには、データベースの記録と照合することにより発見することができる。また、データベースに各プリペイドカード対応に残り金額を記録しておくなら、データベースの容量に問題はあるもののその不正使用の発見はさらに確実になる。
【００２２】
本発明の第三の観点は磁気媒体に記録されたソフトウエアである。すなわち、プログラム制御されたコンピュータを含むハードウエアにインストールすることにより上述の偽造プリペイドカード識別装置となるソフトウエアが記録された機械読み取り可能な記憶媒体を特徴とし、その記憶媒体を特許の対象とする。端末装置が署名を復号化するために必要な暗号鍵は、装置のソフトウエアを記録した記録媒体と同一の記憶媒体に合わせて記録することができるが、暗号鍵の管理のために別の記憶媒体に記録することもできる。このソフトウエアが記録された記憶媒体は端末装置とセンタ装置とで別の記憶媒体とすることがよい。
【００２３】
【発明の実施の形態】
プリペイドカードには、発行情報や料金情報を書き込むための磁気ストライプが形成されている。磁気ストライプは記録できる情報量が少ないが、書き込みが容易であり、カードそのものが安価であることからプリペイドカードとして広く用いられている。磁気ストライプは磁性材料であるから磁気に近づけると記録内容が破壊されてしまう。また磁気ストライプに情報を書き込むための磁気ライタが比較的容易に入手できるので不正者によって改ざんされやすいなどの問題がある。磁気ストライプを用いたプリペイドカードの場合、価値は磁気ストライプ上に記録されたデータに集約されるので、プリペイドカードが真正であるかの認証を行う際には、磁気ストライプ上のデータの不正書き換えや不正コピーを正確に検証することができるなら、磁気プリペイドカードカードの偽造を防止することができる。
【００２４】
磁気ストライプ上に情報を記録すると、磁気ストライプにはパルス状のジッタがランダムに生じる。図１にその様子を模式的に示す。このジッタは既存の広く普及している磁気リーダで読み取ることができる。しかし、磁気ライタを用いてて特定の位置にジッタを書き込むことはきわめて困難である。また磁気ストライプ上に存在するジッタは、新たに磁気ライタで上書きすれば消えてしまう。
【００２５】
したがって、磁気ストライプをコピーして偽造のプリペイドカードを作っても、磁気ストライプ上のジッタは異なる位置に存在することになる。プリペイドカードを製造するときに、磁気ストライプに記録を行った後にその磁気ストライプに発生したジッタをディジタル情報として記録しておく。そしてプリペイドカードが使用されたときに、端末で実際にそのプリペイドカードから観測したジッタの位置とそのディジタル情報による記録とを照合することにより、そのプリペイドカードが書き直されたものであるか否かを識別することができる。これは、ジッタに対しては読み出し能力が書き込み能力を上回るという事実を利用しており、一般に、このような事実が成り立つ物理量はランダムパルスとしての要件を満たす可能性が高い。
【００２６】
本発明の磁気プリペイドカードでは、このランダムパターンをプリペイドカードの正当性の認証に利用するため、それぞれのプリペイドカードには、読み取られたランダムパターン、すなわちこの実施例では磁気ストライプ上のジッタの位置をディジタル情報として符号化して記録しておく。このとき単にディジタル符号として記録するのではなく、磁気ストライプ上のジッタの位置をセンタ装置の秘密鍵で暗号化しこれを署名として記録しておく。この様子を図２に示す。
【００２７】
プリペイドカードを使用する端末装置では、使用されるプリペイドカードからこのランダムパターン、すなわち磁気ストライプ上のジッタの位置を実際に読み取り、併せて磁気ストライプからディジタル情報として読み取られた署名を前記秘密鍵に対応する公開鍵で復号化する。その復号化されたデータはその磁気ストライプのランダムパターン、すなわちジッタ位置となるはずであり、これが照合されるか否かによりそのプリペイドカードの正当性を識別することができる。真正なプリペイドカードでは復号化されたジッタ位置と、読み取られたジッタ位置とは一致するはずである。かりに上書きした磁気ストライプであったとすると、ジッタ位置は変更されているから、読み取られたジッタ位置と署名を復号化することにより得られたジッタ位置とは一致しない。また、上書きして変更されたジッタ位置を観測して、これを暗号化しようとしても、秘密鍵を知らないと正しい署名を作ることができないから、秘密鍵を知らない者にはこの偽造はできない。
【００２８】
多くのプリペイドカードでは、使用者が正当にプリペイドカードを買い入れてこれを使用すると、１回限りの使用ではなく、複数回にわたり使用され、そのつど磁気ストライプ上の金額情報が変更されるようになっている。金額情報が変更されるとジッタ位置もはじめのものから部分的に変更されてゆく。これでは、ジッタ位置が最後まで保存されないことになる。本発明では、金額情報を使用するたびに減額するときに、有効にジッタ位置の情報がプリペイドカードの認証に利用することができるようにしたものである。
【００２９】
プリペイドカードの金額をＭｎ円、使用の単位をＭ円とする。ジッタによるランダムパターン全体を分割してこれをｎ＋１個の個別のランダムパターンＸ1 、Ｘ2 、・・・Ｘn+1 とする。各ランダムパターンは磁気ライタで上書きしたり、パンチで孔をあけるなどして個別に消去できるようにする。この様子を図３に示す。
【００３０】
センタ装置では、ｉ番目のランダムパターンＸi を読み取り、これから写像ｆを定める。写像ｆはｒi ＋１ビット（ｔi ，Ｒi ）である。ただし、ｔi は１ビット、Ｒi はｒi ビットであり、ｒ1 ＋ｒ2 ＋・・・ｒn+1 ＝ｒとする。ｔi はそのランダムパターンの採用の可否を決定するビットであり、いまｔi ＝０を採用する。Ｒi はランダムパターンを記述するパラメタである。また、センタ装置は平文および暗号文がともにｒビットからなる公開鍵方式を選び、秘密鍵Ｋs と公開鍵Ｋp との対を生成する。秘密鍵は厳重に秘密に保管する。
【００３１】
図４によりセンタ装置のプリペイドカード作成を説明する。作成中のカードのディジタル情報が書き込まれた磁気ストライプから、ｎ＋１個のランダムパターンＸ1 、Ｘ2 、・・・Ｘn+1 を読み取り、（ｔi ，Ｒi ）＝ｆ（Ｘi ）、ｉ＝１，・・・ｎ＋１  を求める。ｔ＝１となるｉが一つでも存在する場合は、もういちど磁気情報を書き直し再度繰り返す。つぎにＲ＝（Ｒ1 ，・・・，Ｒn+1 ）に大使秘密鍵による変換ＥＫs を施し署名Ｓ＝ＥＫs （Ｒ）を演算する。そして、カードの一意に設定したカード番号ＩＤC 、署名Ｓ、使用可能な最初のランダムパターンの番号ｊ（この場合はｊ＝１）をその磁気ストライプの最後に記入しておく。
【００３２】
図５は端末装置によるプリペイドカードの認証を説明する。使用されたプリペイドカードからカード番号ＩＤC 、署名Ｓ、ランダムパターンの番号ｊを読み取る。図では端末装置で読み取ったものに‘をつけて表示する。（ｔi ，Ｒi ）＝ｆ（Ｘi ）、ｉ＝１，・・・ｎ＋１  を求め、一つでもｔi ＝１となるｉが存在したらそのプリペイドカードの使用を拒否する。読み取った署名Ｓに公開鍵による変換演算を施し、Ｒ＝（Ｒ1 ，・・・，Ｒn+1 ）＝ＥＫp （Ｓ）を求め、読み取ったＲi と変換演算したＲi とが等しければ使用を許可し、等しくなければそのプリペイドカードの使用を拒否する。ＥＫp （Ｓ）は署名Ｓの公開変換アルゴリズムである。
【００３３】
使用者がＭｈ円の使用を要求した場合に、残り金額が十分であればこれを許可し、ランダムパターンをｈ番目まで消去して、使用可能な最初のランダムパターンを書き換える。使用可能な最初のランダムパターンの番号がｎ＋１となったときには、使用者に対してその旨を表示してそのプリペイドカードを回収する。
【００３４】
【実施例】
図６は本発明実施例装置の構成図であり、一つのセンタ装置に対して複数の端末装置が双方向通信路により接続されている。端末装置は店に配置される。一例として、パチンコ用のプリペイドカードを考えると、センタ装置はプリペイドカードの発行元であり、店はパチンコ店であり、端末装置は一つの店に複数設置される場合もある。端末装置には顧客がアクセスし、購入したプリペイドカードが使用される。すなわち、端末装置にはプリペイドカードが挿入され、端末装置は、その磁気ストライプの情報を読み取り、あるいはその磁気ストライプの情報の一部を書き換える。センタ装置および端末装置とも、コンピュータ制御された装置であり、センタ装置には大きいデータベースが設置されている。
【００３５】
プリペイドカードの金額はＭｎ円であり、使用の単位はＭ円である。使用済のプリペイドカードは原則として回収する。各プリペイドカードには長いランダムパターンをｎ＋１個に区分してＸ1 ，・・・・・Ｘn+1 とする。各ランダムパターンは個別に消去できる。ランダムパターン以外に各プリペイドカードには、ｒ＋ｄ＋αビットのデータを記入する。ただし、ｒは署名Ｓに要するビット数であり、ｄは１からｎ＋１までの数を表すのに要するビット数であり、αはプリペイドカード固有の番号ＩＤC を表すのに必要なビット数である。センタ装置は現在使用可能なすべてのプリペイドカードについて、ｒ＋ｄ＋α＋βビットの情報を記憶できるデータベースＩ、および使用済のプリペイドカードについて同様の情報を一定期間記憶しておくデータベースIIを有する。βは店番号ＩＤs を表すのに必要なビット数である。店あるいは端末装置の管理者および使用者は不正を行う可能性があるものとする。
【００３６】
平文および暗号文がともにｒビットからなる公開鍵方式を選び、秘密鍵Ｋp と公開鍵Ｋs の対を生成する。秘密鍵は厳重に秘密に保管する。ランダムパターンＸi からｒi ＋１ビット（ｔi ，Ｒi ）への写像ｆを定める。店に一意の店番号ＩＤs を与える。公開鍵Ｋp 、公開変換アルゴリズムＥＫp 、および写像ｆを各端末装置に与える。端末装置に店内での一意の装置番号ＩＤt を与える。センタ装置と各端末装置との間には双方向の通信手段を用意する。店と端末装置との間、店毎の端末装置は正常な動作を確認する。前記データベースＩおよびIIを用意する。
【００３７】
プリペイドカードの発行手順は次ぎのとおりである。ｎ＋１個のランダムパターンＸ1 ，・・・・・Ｘn+1 をカードに記録する。ランダムパターンを読み、（ｔi ，Ｒi ) ＝ｆ（Ｘi ）、ｉ＝１，・・・ｎ＋１  を求める。ｔ＝１となるｉが一つでもあれば最初に戻る。Ｒ＝（Ｒ1 ，・・・，Ｒn+1 ）に対し秘密変換ＥＫs を施し、署名Ｓ＝ＥＫs （Ｒ）を求める。ｊ＝１とする。ただしｊは使用可能な最初のランダムパターンの番号である。カードの一意番号ＩＤC を定め、人が読めるように文字で印刷する。カードの磁気ストライプに（ＩＤC ，Ｓ，ｊ）を記録する。そのカードを実際に売り出す店番号ＩＤs を定める。（ＩＤC ，Ｓ，ｊ，ＩＤs ）をデータベースに入力する。
【００３８】
プリペイドカードが使用される端末装置の動作はつぎのとおりである。カードから（ＩＤ' C ，Ｓ',ｊ’）を読み取る。カードからランダムパターンＸ' j ，・・・・・，Ｘ' n+1 を読み込み、（ｔ' ，Ｒ' i ）＝ｆ（Ｘ' i ），i ＝j', ・・・ ,n ＋1 を求め、一つでもt'i となるｉが存在したらカードの使用を拒否する。署名Ｓ' に公開鍵による変換を施し、Ｒ" ＝（Ｒ" 1 , ・・・・,n＋1)＝ＥＫＰs (S')を求める。Ｒ' i ＝Ｒ" i がｉのj'からｎ＋１までについて成立すればカードの使用を許可し、成立しなければカードの使用を拒否する。
【００３９】
使用者がＭｈ円の使用を要求したとき、残り金額が十分であればこの使用を許可し、ランダムパターンをｊからｊ＋ｈまで消去して、使用可能な最初のランダムパターンの番号ｊをｊ＋ｈに書き換える。使用可能なランダムパターンの番号がｎ＋１になったらその旨を表示してカードを回収する。店にＩＤ' C ，Ｓ',ｊ’，ｈおよび端末装置の番号ＩＤt を通知する。
【００４０】
店からセンタ装置への通知はつぎのとおりである。店は端末装置から使用したカードについての情報ＩＤ’C ，Ｓ',ｊ’，ｈを受取り、正当性を確認したうえで監査などのため一定期間その情報を記憶しておく。正当でなければその端末装置を検査する。その情報ＩＤ' C ，Ｓ',ｊ’，ｈを店番号ＩＤs とともに通信手段を通じてセンタ装置に送る。
【００４１】
センタ装置のデータベースの更新および支払いはつぎのとおりである。データベースＩからカード番号がＩＤ' C となる項目（ＩＤ' C ，Ｓ',ｊ’，ｈ）に対応する情報を求める。そのカード番号となる項目がデータベースＩに存在しないときには、データベースIIを検索する。そしてデータベースIIにも存在しない場合には不正であるとして支払いを拒否する。データベースIIに存在する場合には、その項目に対してつぎのように操作を行う。すなわち署名Ｓが正しく残り金額があるならデータの内容を（ＩＤ' C ，Ｓ',ｊ’，ｈ）に更新する。残り金額がないならこの情報をデータベースIIに移し一定期間保存する。更新した使用量に相当する金額を店に支払う。署名が正当でないと判定した場合には不正入力として支払いを拒否する。ランダムパターンの番号ｊがデータベースの内容と一致しない場合には事故処理に入る。
【００４２】
センタ装置装置の事故処理はつぎのとおり行われる。カード番号ＩＤ' C が回収されていないときにはその回収を試みる。カードが回収されたときには、カードの消去されていないランダムパターンと署名とからどちらの記録が正しいかを判定する。カードが回収されている場合にはいずれの店で事故またはは不正が行われたかを店の記録等により検討する。
【００４３】
この実施例方式の数値例は次ぎのとおりである。すなわち、使用可能なプリペイドカードの総数を１００億枚、店の数を１０万とし、カードの金額は最高２０Ｍ円であるとすると、ｎは２０である。ランダムパターンＸの複写Ｒのビット数をそれぞれ１０とし最後だけを４０とすると複写Ｒを表示するビット数ｒは２４０となる。１からｎまでのビット数を表すに要するビット数ｄは５であり、カード番号を表すに要するビット数αは４０であり、店番号を表すに要するビット数βは１８程度とすると、カードに書き込むデータは誤り訂正あるいは検査ビットを含めても約４００ビット程度である。これ以外にランダムパターンを２０個、４０ビットのパラメタを取り出せるランダムパラメタを１個カードに記入しなければならない。したがってデータベースＩのサイズはおよそ５００ギガバイトとなる。データベースIIは、使用済カードの情報の保管期間に依存するが、データベースＩの数倍の容量が必要になる。
【００４４】
ランダムパラメタの複写Ｒを表すに要するビット数２４０に対して、公開鍵暗号としては楕円暗号を用いることができる。この暗号の安全性は完全に保証されているものではないが、５ないし１０年程度では簡単に破られることはないと考えられる。カードを偽造するには２の５０乗程度のパターンを用意すれば不可能ではないが、これにはセンタ装置のデータベースの数万倍の記憶容量が必要であり、データの生成にも膨大な時間を要することになるから、カード金額に見合う偽造は起こりえない。
【００４５】
使用済のカードを使ってその金額を改ざんする場合には、一つのランダムパターン、すなわちＭ円（たとえば５００円）を増額するのに、５００回程度の上書き回数を行わないと成功しないと考えられる。さらにランダムパターンの連結部分を利用するとこの回数はさらに大幅に増すことができる。
【００４６】
〔応用例〕
端末装置が秘密鍵を知ることになると、端末装置でランダムパターンにセンタ装置と同様の署名をつけることができるようになる。そこで、使用済の部分を消去するのではなく、ランダムパターンを書き換えてそれに署名をつけるという偽造がありえるこの場合には、書き換えたランダムパターンと使用可能な金額との両者に対して一つの署名をつける方法がある。
【００４７】
この方法では、どの端末装置でも正当なランダムパターンを生成することができなければならないから、採用可能なランダムパターンの範囲を大きくしなければならない。したがって、安全性を大きくするにはランダムパターンを記述するビット数を十分大きくとっておく必要がある。しかし、カードに記入するランダムパターンはひとつですむから、カードの記憶容量が限られているとしてもランダムパターンをかなり大きくすることができ、装置の耐タンパ性が破られないかぎり、偽造や改ざんがきわめて困難なカードを作れる可能性は高い。
【００４８】
店および端末装置の耐タンパ性が高ければ、店からの不正な深刻も不可能となる。センタ装置のデータベースは店からの不正な申告を防止することができる機能があるが、その場合にはセンタ装置のデータベースを省略することができることになる。
【００４９】
端末装置の耐タンパ性が破られ、秘密鍵が暴露されても、その被害がシステム全体に及ばないようにするには、一つの秘密鍵を一つの店あるいは特定のグループに限定することが有効である。その場には、その店あるいはそのグループはその秘密鍵で署名されたカードしか使えなくなるが、その店の装置で他店のカードを書き換えるなどにより他店のカードをも使えるようにするシステムが得られる。このような書き換えを行うには、他店の署名が正当であるか否かを検査しなければならない。これには、リアルタイムの通信手段でセンタ装置に問い合わせる、その他店に直接に問い合わせる、他店の方式の正当性を判定する手段を端末装置に装備するなどが考えられる。
【００５０】
【発明の効果】
以上説明したように本発明によれば、使用のつど金額情報を書き換えるプリペイドカードであっても、ランダムパターンを利用した認証が残り金額の最終値まで可能であるとともに、実用的かつ経済的に偽造を行っても利益を得ることができないプリペイドカードおよびその認証装置を得ることができる。
【図面の簡単な説明】
【図１】磁気ストライプ上のジッタを模式的に説明する図。
【図２】プリペイドカードにランダムパターンとともに署名を記録する状態を示す図。
【図３】磁気ストライプ上のランダムパターンを使用不能にするとともに、使用可能な部分から復号データを得る状態を説明する図。
【図４】センタ装置で本発明プリペイドカードを製造する手順を説明する図。
【図５】端末装置で本発明プリペイドカードを使用し消去する手順を説明する図。
【図６】複数の端末装置がセンタ装置に通信手段により接続された状態を説明する図。
【図１】
0003878970.tif 000002
【図２】
0003878970.tif 000003
【図３】
0003878970.tif 000004
【図４】
0003878970.tif 000005
【図５】
0003878970.tif 000006
【図６】
0003878970.tif 000007