(57)【特許請求の範囲】
【請求項１】
記憶手段と、端末認証手段と、カード認証手段と、乱数入力手段と、乱数演算手段とを有するメモリカードであって、
前記記憶手段は端末認証キーと、カード認証キーと、カードＩＤと、第１の乱数と、第３の乱数を記憶し、
前記端末認証手段は前記端末認証キーと前記第３の乱数を用いて端末認証データを演算し、
また前記端末認証手段は端末装置が前記メモリカードから入力した前記カードＩＤと前記第３の乱数を用いて前記端末装置が演算した端末認証データを前記端末装置から入力し、
さらに前記端末認証手段は前記２つの端末認証データを比較することにより端末認証を行い、
前記乱数入力手段は前記端末装置がカード認証を実行する際に前記端末装置から第２の乱数を入力し、
前記カード認証手段は前記カード認証キーと前記第２の乱数を用いて演算したカード認証データを前記端末装置に出力し、
前記乱数演算手段は前記第１の乱数と前記第２の乱数から前記端末認証を次に実行する上で用いられる第３の乱数を演算し、前記記憶手段が記憶している第３の乱数を更新する、
ことを特徴とするメモリカード。
【請求項２】
前記記憶手段が記憶する第１の乱数は外部から読み出し不可能な乱数であることを特徴とする請求項１記載のメモリカード。
【請求項３】
メモリカードを使用する場合の相互認証において、端末認証はカード認証の前に実行することを特徴とする請求項２または３記載のメモリカード。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はＩＣメモリを利用したプリペイドカードシステムに係る技術分野に属する。特に、複数のメモリビットからなる残度数カウンタと相互認証機能を有し、再充填して再使用することができ、しかも相互認証に必要とされる乱数の発生回路を省略したメモリカードに関するものである。
【０００２】
【従来の技術】
電話カード等に用いられているＩＣメモリプリペイドカードにおいては、残度数を記憶するカウンタは常に減算のみ可能であり増加させることができないようになっている。このため、プリペイドカードはカウンタの全数値の減算が終了し購入したカードの金額を使い切ってしまうと捨てなければならない。すなわち、“使い捨て”の状態であった。
【０００３】
【発明が解決しようとする課題】
特開平３−８０９０「再使用可能なプリペイドメモリカード」には、メモリカードの再充填機がカードの正当性を確認するという記載がある。しかし、その記載の方法では、不正なカード充填機を用いてカウンタの残度数を増加させ再使用することを防止することができない。
【０００４】
これに対し、カードと端末の間で相互認証を行い互いに正当であることが確認された場合に、カウンタの再充填を行う方法が提案されている。しかし、連続した不正なアクセスにより、再充填キーが盗まれてしまう恐れがある。
また、端末認証の実行のために必要となる乱数をカードが出力するために、特別な乱数発生回路の領域をプリペイドカード内に設ける必要があった。
【０００５】
【課題を解決するための手段】
これらの問題を解決するために、本発明によるメモリカードは端末認証を実行する際にカードＩＤとマスターキーに基づいて演算された端末認証キーが用いられ、またその際に用いる乱数（第３の乱数）を、端末装置がカード認証を実行する際に入力した乱数（第２の乱数）と、メモリ内に格納されている乱数（第１の乱数）から演算することにより、複雑な乱数発生回路を搭載することなく、端末認証を実行する度に異なる乱数（第３の乱数）を簡易に生成することができる。
【０００６】
【発明の実施の形態】
以下、本発明について実施の形態により説明する。図１は本発明のメモリカードにおける情報処理機構の構成を示す図である。図１において、１は本発明のメモリカード、２はＩＣメモリ等からなる記憶手段、３は論理回路またはＣＰＵ（central processing unit ）等からなる演算手段、４は端末装置とデータの送受信を行うためのインタフェースである。
【０００７】
記憶手段２はさらに細部により構成され、５はカードＩＤ等のＩＣメモリカードを識別するためのデータを記憶するＩＣ識別領域、６はユーザＩＤ等のユーザを識別するためのデータを記憶するユーザ領域、７は再充填回数やその上限値等の発行者側で設定するデータを記憶する発行者領域、８はプリペイドカードの残度数を記憶するカウンタ領域である。ここに、残度数はプリペイドカードの残りを示す数値であり、実際の金額、電話等の度数、乗り物等の利用回数のような数値である。
また、９は元々記憶している第１の乱数、１０は端末装置（図示せず）から入力した第２の乱数、１１は第１の乱数９と第２の乱数１０から演算した第３の乱数である。
【０００８】
また演算手段３はさらに細部により構成され、１２はメモリカード１によって端末装置が正規であるか否かの認証を行う場合にメモリカード側の処理を行う端末認証手段、１３は端末装置によってメモリカード１が正規であるか否かの認証を行う場合にメモリカード側の処理を行うカード認証手段、１４は端末装置がカード認証を行う際に出力する第２の乱数をメモリカード１に入力するための乱数入力手段、１５は第１の乱数９と第２の乱数１０から第３の乱数１１を演算する乱数演算手段である。
【０００９】
以上の構成において、メモリカード１の動作を説明する。通常の利用あるいは再充填処理を行う等のために、メモリカード１を端末装置にセットすると、メモリカード１はその端末認証手段１２によって端末装置が正規であるか否かの認証処理を行う。その際に、記憶手段２に記憶されている第３の乱数１１を使用する。
第３の乱数１１は、第１の乱数９と第２の乱数１０に基づいて乱数演算手段１５が演算した乱数である。ここに第１の乱数９は、あらかじめ記憶手段２が記憶する乱数である。また第２の乱数１０は、前回、端末装置がカード認証処理を行った際に生成した乱数であって、乱数入力手段１４が入力し記憶手段２に記憶した乱数である。
【００１０】
乱数演算手段１５の行う演算は、▲１▼第１の乱数９と第２の乱数１０から特定の桁は特定の乱数のその桁から抽出して第３の乱数１１を組み立てる、▲２▼第１の乱数９と第２の乱数１０の各桁の並び順序を入れ換え第３の乱数１１を組み立てる、▲３▼第１の乱数９と第２の乱数１０の桁をシフトして第３の乱数１１を組み立てる、▲４▼第１の乱数９と第２の乱数１０の間で数値演算または論理演算を行い第３の乱数１１を組み立てる、▲５▼第１の乱数９と第２の乱数１０と、所定の数値との間で数値演算または論理演算を行い第３の乱数１１を組み立てる、のような演算処理が含まれる。実際の演算は、これらの内の１つ、または、複数を組み合わせて行われる。
上述の乱数発生方法のいずれか、または、組合せにより、実行の都度、異なる乱数を生成することができ、不正端末を使用して再充填処理を行う等のメモリカードの不正使用を防止することができる。
【００１１】
このように、本発明のメモリカードにおいては端末装置が生成した乱数に基づいて演算された乱数（第３の乱数１１）を用いて端末認証処理が行われるため、複雑な構成でチップ面積を必要とする乱数発生回路をメモリカードのＩＣのチップ上に設ける必要がなく、メモリカードは安価となる。
【００１２】
本発明においてはメモリカード１の記憶手段２の特定の領域を、内部からは読み取り可能であるが、外部からは読み取り不可能に構成する。たとえば、ＩＣ識別領域５、カウンタ領域８および第３の乱数１１を除く、ユーザ領域６、発行者領域７、第１の乱数９および第２の乱数１０を内部からは読み取り可能であるが、外部からは読み取り不可能に構成する。このような構成は、各領域ごとに独立して読取モードの設定を行えるようにし、内部からは読取モードへの設定を行えるが外部からは読取モードへの設定を行えないようにすることにより実現できる。
また、相互認証処理は、メモリカードによる端末装置が正規であるか否かを判定する端末認証処理を先に行い、正規と判定した場合にのみ、端末装置によるメモリカードが正規であるか否かを判定するカード認証処理を行う。
これらによりむやみにメモリカードの記憶データが読み取られることがないから、再充填処理等が不正に行われることに対するセキュリティが向上する。
【００１３】
【実施例】
次に、本発明について実施例により説明する。まず、再充填処理について説明する。図２は本発明のメモリカードにおいて相互認証と再充填（カウンタリチャージ）を行う処理過程を示すフロー図である。図２に示すように再充填処理は、まずメモリカードにより端末認証が実行され（Ｓ１）、正規の端末装置でない場合（Ｓ２）には再充填処理を中断する（Ｓ３）。また、正規の端末装置の場合（Ｓ２）には、端末装置によりカード認証が実行される。この際第２の乱数が端末装置により生成されメモリカードが入力する（Ｓ４）。カード認証の結果メモリカードが正規でない場合（Ｓ５）には再充填処理を中断する（Ｓ３）。また、正規のメモリカードの場合（Ｓ５）には、再充填命令を実行する（Ｓ６）。実行後に再充填処理を終了する。
【００１４】
次に相互認証の一方の認証処理である端末認証処理について説明する。図３は端末認証の処理過程を示すフロー図である。ステップＳ１０１〜Ｓ１０４において、端末装置はメモリカード１に“カードＩＤ送出要求”を出力し、これを受けたメモリカード１は“カードＩＤ”を端末装置に出力する。端末装置はメモリカード１からその“カードＩＤ”を読取る。次に、端末装置は記憶している“マスターキーＭ”と“カードＩＤ”から関数ｆを使用して“端末認証キーｆ（ＩＤ，Ｍ）”を生成する。
【００１５】
次に、ステップＳ１０５〜Ｓ１０６において、メモリカード１は前記の“端末認証キーｆ（ＩＤ，Ｍ）”をその発行時に記憶している。端末装置はメモリカード１に“乱数送出要求”を出力し、これを入力したメモリカード１は記憶手段２に前回のカード認証（後述する）において記憶した第３の乱数１１（ＲＮＡ’）を端末装置に出力し、端末装置はその乱数“ＲＮＡ’”を読取る。
次に、ステップＳ１０７〜Ｓ１１０において、メモリカード１と端末装置はともに認証のための関数ｇ（）を有し、関数ｇ（ｆ（ＩＤ，Ｍ），ＲＮＡ’）を計算する。
【００１６】
次に、ステップＳ１１１において、端末装置は計算結果をメモリカード１に出力し、メモリカード１はそれを読取り両者の計算結果が等しいことの確認をする。計算結果が等しければその端末装置は正規の端末装置であり、計算結果が等しく無ければその端末装置は正規の端末装置ではない。
【００１７】
次に相互認証の他方の認証処理であるカード認証処理について説明する。図４はカード認証の処理過程を示すフロー図である。ステップＳ２０１〜Ｓ２０４において、端末装置はメモリカード１に“カードＩＤ送出要求”を出力し、これを受けたメモリカード１は“カードＩＤ”を端末装置に出力する。端末装置はメモリカード１からその“カードＩＤ”を読取る。次に、端末装置は記憶している“マスターキーＭ”と“カードＩＤ”から関数ｈを使用して“カード認証キーｈ（ＩＤ，Ｍ）”を生成する。
【００１８】
次に、ステップＳ２０５〜Ｓ２０６において、メモリカード１は前記の“カード認証キーｈ（ＩＤ，Ｍ）”をその発行時に記憶している。端末装置は乱数“ＲＮＢ”を生成する。端末装置はその乱数“ＲＮＢ”をメモリカード１に出力し、メモリカード１はその乱数“ＲＮＢ”を読取り、記憶手段２に第２の乱数１０として記憶する。
次に、ステップＳ２０７〜Ｓ２１０において、メモリカード１と端末装置はともに認証のための関数ｇ（）を有し、関数ｇ（ｈ（ＩＤ，Ｍ），ＲＮＢ）を計算する。
【００１９】
次に、ステップＳ２１１において、メモリカード１は計算結果を端末装置に出力し、端末装置は両者の計算結果が等しいことの確認をする。計算結果が等しければそのメモリカード１は正規のメモリカードであり、計算結果が等しく無ければそのメモリカード１は正規のメモリカードではない。
一方、ステップＳ２１２において、メモリカード１は関数ｘ（）を有し、第２の乱数１０（ＲＮＢ）とメモリカード１が記憶する第１の乱数９（ＲＮＡ）とから、乱数演算手段１５によりｘ（ＲＮＡ，ＲＮＢ）を演算し、第３の乱数１１（ＲＮＡ’）として記憶手段２に記憶する。
【００２０】
不正使用を防止するため“ＲＮＡ’”と“ＲＮＢ”は認証の都度、異なる値が送受信される必要がある。乱数“ＲＮＢ”は端末が生成する値であり、マイクロコンピュータ等を使用して演算を行うため十分に分散した値であると考えてよい。一方、乱数“ＲＮＡ’”を、同様に十分に分散した値とするためには、従来技術においてはメモリカード１が同様の乱数発生回路を有することが不可欠であった。ところが上述のように、本発明ではカード認証時に端末装置から送信される乱数“ＲＮＢ”（メモリカード１の記憶手段２に記憶して第２の乱数１０となる）と、メモリカード１の記憶手段２に記憶する第１の乱数９（ＲＮＡ）とから、演算を行って、次回の相互認証を行う際に使用する新たな乱数“ＲＮＡ’”を得るようにした。したがって、メモリカード１は簡易な乱数演算手段１５を有するだけで十分に分散した乱数を発生することができる。
【００２１】
【発明の効果】
以上のとおりであるから本発明のメモリカードによれば、不正なアクセスによる残度数カウンタの再充填を行う等の不正使用を防止できる。また、特別な乱数発生回路の領域をプリペイドカード内に設けることなく、端末認証の実行のために必要とされる乱数をメモリカードが出力することができる。
【図面の簡単な説明】
【図１】本発明のメモリカードにおける情報処理機構の構成を示す図である。
【図２】本発明のメモリカードにおいて相互認証と再充填（カウンタリチャージ）を行う処理過程を示すフロー図である。
【図３】端末認証の処理過程を示すフロー図である。
【図４】カード認証の処理過程を示すフロー図である。
【符号の説明】
１  メモリカード
２  記憶手段
３  演算手段
４  インタフェース
５  ＩＣ識別領域
６  ユーザ領域
７  発行者領域
８  カウンタ領域
９  第１の乱数
１０  第２の乱数
１１  第３の乱数
１２  端末認証手段
１３  カード認証手段
１４  乱数入力手段
１５  乱数演算手段
【図１】
0003756241.tif 000002
【図２】
0003756241.tif 000003
【図３】
0003756241.tif 000004
【図４】
0003756241.tif 000005