(57)【要約】【課題】未発行のＩＣカードを用いたカード偽造が困難なカード認証システムを提供する。【解決手段】ＩＣカードと、ＩＣカードを発行する発行装置と、ＩＣカードの正当性を認証する認証装置とからなるＩＣカード認証システムであって、ＩＣカードは、固有の製造番号が記録されているＲＯＭ１３５と、メモリ１３４とを備え、発行装置は、ＩＣカードに既格納の製造番号を読み出し、この製造番号の全部又は一部を含む第２情報を準備し、第２情報に署名鍵を用いて署名変換を施して生成したデジタル署名をメモリ１３４に書き込む制御部１１２及びデジタル署名生成部１１５とを備え、認証装置は、ＲＯＭ１３５から製造番号を、メモリ１３４からデジタル署名をそれぞれ読み出し、このデジタル署名と製造番号と署名鍵に対応する検証鍵とを用いて第２情報の署名検証を行うことによりＩＣカードの正当性を認証する制御部１２２及び認証部１２５とを備える。【選択図】　　　図１
2004046754.tif 000002
【特許請求の範囲】
【請求項１】
ＩＣカードと、当該ＩＣカードを発行する発行装置と、前記ＩＣカードの正当性を認証する認証装置とからなるＩＣカード認証システムであって、
前記ＩＣカードは、
ＩＣカード固有の第１情報が予め記録されている読み出し専用の第１記録領域と、読み書き可能な第２記録領域とを備え、
前記発行装置は、
ＩＣカードを発行するとき、発行するＩＣカードに既格納の第１情報を読み出す第１読み出し手段と、
読み出した第１情報の全部又は一部を含む第２情報を準備し、当該第２情報に署名鍵を用いて署名変換を施し、デジタル署名を生成する第１デジタル署名生成手段と、
生成したデジタル署名を前記読み出しが行われたＩＣカードの第２記録領域に書き込む書き込み手段とを備え、
前記認証装置は、
前記ＩＣカードの第１記録領域から第１情報を読み出し、当該ＩＣカードの第２記録領域からデジタル署名を読み出す第２読み出し手段と、
読み出したデジタル署名と読み出した第１情報と前記署名鍵に対応する検証鍵とを用いて第２情報の署名検証を行うことによりＩＣカードの正当性を認証する認証手段と
を備えることを特徴とするＩＣカード認証システム。
【請求項２】
前記発行装置は、さらに、
ＩＣカードに格納する第３情報を取得する第３情報取得手段を備え、
前記第２情報は、さらに、前記第３情報の全部又は一部を含み、
前記書き込み手段は、第２記録領域への前記書き込みに伴い、前記第３情報を当該第２記録領域に書き込み、
前記第２読み出し手段は、さらに、前記第２記録領域から前記第３情報を読み出し、
前記認証手段は、読み出した第３情報を加味して、前記認証を実行することを特徴とする請求項１記載のＩＣカード認証システム。
【請求項３】
前記第３情報は、ＩＣカードが正当であると認証された結果、ＩＣカードユーザに提供されるサービスに関連する情報であって、
前記認証装置は、さらに、前記サービスの提供に伴い、読み出した前記第３情報の内容を更新する第３情報更新手段と、
読み出した第１情報の全部又は一部と、更新した第３情報の全部又は一部とを含む第２情報に前記署名鍵と同内容の鍵を用いて署名変換を施し、デジタル署名を生成する第２デジタル署名生成手段と、
前記第２デジタル署名生成手段において生成したデジタル署名と更新した第３情報とを、正当であると認証した前記ＩＣカードの第２記録領域に格納されているデジタル署名と第３情報とにそれぞれ上書きする上書き手段と
を備えることを特徴とする請求項２記載のＩＣカード認証システム。
【請求項４】
前記発行装置は、さらに、
自装置が正当な装置であることを示す第１証明情報を記憶している第１記憶手段と、
前記第１情報の取得に先行して、前記第１証明情報を前記ＩＣカードに出力する第１出力手段とを備え、
前記認証装置は、さらに、
自装置が正当な装置であることを示す第２証明情報を記憶している第２記憶手段と、
前記第１情報及びデジタル署名の取得に先行して、前記第２証明情報を前記ＩＣカードに出力する第２出力手段を備え、
前記第１記録領域は、さらに、外部装置が正当な装置であるか否かを判定するための判定情報が記録されており、
前記ＩＣカードは、さらに、
前記判定情報と出力された前記第１証明情報又は前記第２証明情報とにもとづいて、前記判定を実行し、当該第１証明情報又は当該第２証明情報の出力元となった装置が正当な装置であると判定した場合にのみ、第１記録領域及び第２記録領域へのアクセスを許可する許可手段を備えることを特徴とする請求項３記載のＩＣカード認証システム。
【請求項５】
前記第１証明情報、前記第２証明情報及び前記判定情報は、ＩＣカードのユーザが決定した単一のパスワードであって、
前記認証装置は、さらに、
認証を実施するＩＣカードのユーザからパスワードの入力を受け付けるパスワード受付手段を備え、
前記第２記憶手段に格納されている前記第２証明情報は、前記パスワード受付手段により受け付けられたものであり、
前記許可手段は、前記判定情報と出力された第１証明情報又は第２証明情報とが一致した場合、前記装置が正当な装置であると判定することを特徴とする請求項４記載のＩＣカード認証システム。
【請求項６】
前記ＩＣカードは、ロジックカードであって、
前記許可手段は、ハードウエアロジックにより前記判定を実施することを特徴とする請求項４記載のＩＣカード認証システム。
【請求項７】
前記書き込み手段は、前記デジタル署名及び前記第３情報のみを書き込み、
前記第２読み出し手段は、第２記録領域に格納されている全ての情報を読み出すことにより、前記デジタル署名及び前記第３情報を読み出すことを特徴とする請求項４記載のＩＣカード認証システム。
【請求項８】
前記署名鍵と前記検証鍵とは、秘密の共通鍵の関係にあることを特徴とする請求項２記載のＩＣカード認証システム。
【請求項９】
前記発行装置は、さらに、
自装置が正当な装置であることを示す第１証明情報を記憶している第１記憶手段と、
前記第１情報の取得に先行して、前記第１証明情報を前記ＩＣカードに出力する第１出力手段とを備え、
前記認証装置は、さらに、
自装置が正当な装置であることを示す第２証明情報を記憶している第２記憶手段と、
前記第１情報及びデジタル署名の取得に先行して、前記第２証明情報を前記ＩＣカードに出力する第２出力手段を備え、
前記第１記録領域は、さらに、外部装置が正当な装置であるか否かを判定するための判定情報が記録されており、
前記ＩＣカードは、さらに、
前記判定情報と出力された前記第１証明情報又は前記第２証明情報とにもとづいて、前記判定を実行し、当該第１証明情報又は当該第２証明情報の出力元となった装置が正当な装置であると判定した場合にのみ、第１記録領域及び第２記録領域へのアクセスを許可する許可手段を備えることを特徴とする請求項１記載のＩＣカード認証システム。
【請求項１０】
前記第１証明情報、前記第２証明情報及び前記判定情報は、ＩＣカードのユーザが決定した単一のパスワードであって、
前記認証装置は、さらに、
認証を実施するＩＣカードのユーザからパスワードの入力を受け付けるパスワード受付手段を備え、
前記第２記憶手段に格納されている前記第２証明情報は、前記パスワード受付手段により受け付けられたものであり、
前記許可手段は、前記判定情報と出力された第１証明情報又は第２証明情報とが一致した場合、前記装置が正当な装置であると判定することを特徴とする請求項９記載のＩＣカード認証システム。
【請求項１１】
前記ＩＣカードは、ロジックカードであって、
前記許可手段は、ハードウエアロジックにより前記判定を実施することを特徴とする請求項９記載のＩＣカード認証システム。
【請求項１２】
前記署名鍵は、秘密鍵であり、
前記検証鍵は、前記秘密鍵に対応する公開鍵であることを特徴とする請求項１記載のＩＣカード認証システム。
【請求項１３】
固有の第１情報が予め記録されている読み出し専用の第１記録領域と読み書き可能な第２記録領域とを備えるＩＣカードと、当該ＩＣカードを発行する発行装置と、前記ＩＣカードの正当性を認証する認証装置とからなるＩＣカード認証システムにおいて、当該カードの正当性を認証するＩＣカード認証方法あって、
前記発行装置において、
ＩＣカードを発行するとき、発行するＩＣカードに既格納の第１情報を読み出す第１読み出しステップと、
読み出した第１情報の全部又は一部を含む第２情報を準備し、当該第２情報に署名鍵を用いて署名変換を施し、デジタル署名を生成する第１デジタル署名生成ステップと、
生成したデジタル署名を前記読み出しが行われたＩＣカードの第２記録領域に書き込む書き込みステップとを有し、
前記認証装置において、
前記ＩＣカードの第１記録領域から第１情報を読み出し、当該ＩＣカードの第２記録領域からデジタル署名を読み出す第２読み出しステップと、
読み出したデジタル署名と読み出した第１情報と前記署名鍵に対応する検証鍵とを用いて第２情報の署名検証を行うことによりＩＣカードの正当性を認証する認証ステップと
を有することを特徴とするＩＣカード認証方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はＩＣカードに関し、特に、ＩＣカードの偽造を防止する技術に関する。
【０００２】
【従来の技術】
近年、キャッシュカードなどに用いられている磁気カードに代わるカードメディアとして、ＩＣカードが急速に普及しつつある。
ＩＣカードは、メモリ機能だけを提供するメモリカードと、カード内のメモリへのアクセスを制限するためのロジック回路を有するロジックカードと、このロジック回路の代わりにＣＰＵを搭載して、さらに、暗号化などの複雑な処理を実行することにより、ハイセキュリティなデータ管理を実現するスマートカードとに大別することができ、このうち、上述の磁気カードに代わるセキュアなカードメディアとして、急速に普及しつつあるのは、ロジックカードとスマートカードである。
【０００３】
つまり、スマートカード及びロジックカードは、従来の磁気カードに比べ、データ保護が厳重であり、記憶容量も大きいため、例えば、このカードがキャッシュカードとして使用される場合、ＡＴＭ（Ａｕｔｏｍａｔｉｃ　Ｔｅｌｌｅｒ　Ｍａｃｈｉｎｅ）などの認証機は、データを一括管理するセンターなどに問い合わせることなく、これらカード内に格納されているデータのみを用いてカードの認証を実施し、現金の支払うなどのトランザクション処理を実行することができる。
【０００４】
その結果、従来、カードの認証や預金額の確認などに要する時間を大幅に短縮することができ、迅速なサービス提供が可能となった。
通常、クレジットカード及びキャッシュカードなど高度な安全性が要求されるＩＣカードとしては、主にスマートカードが採用され、また、プリペイドカードなどの安全性を確保しつつ低コスト化が要求されるＩＣカードとしては、主にロジックカードが採用されている。
【０００５】
ここで、上述のスマートカードについて説明する。
スマートカードは、認証機が発生した乱数の値を取得し、取得した乱数の値と予め格納している外部に取り出せない鍵とを用いて受け取った乱数の値に対応する暗号文を生成して認証機に出力する。
これにより、認証機は、取得した暗号文を上述の鍵を用いて復号し、復号後の平文とスマートカードに出力した乱数の値とを照合することによりこのスマートカードの正当性を判断する。
【０００６】
つまり、スマートカード及び認証機間では、認証のためにやり取りされるデータが毎回異なるという動的認証が実施されるため、セキュリティレベルが極めて高く、スマートカードの偽造を困難なものとしている。
しかし、このような動的認証は、上述の暗号文を生成するという高負荷な処理を実行するため、ＣＰＵが必須となり、ＩＣカードのコストが高くならざるを得ない。
【０００７】
このような問題を解決する方法として、スマートカード代わりに安価なロジックカードを用いてカード認証を実施することが考えられる。
これは、つまり、ＣＰＵより演算能力及び汎用性が乏しいロジック回路の限界内で、カード認証を実施する方法である。
図１０は、ロジックカードを用いて、カード認証を実行する場合に考えられるカード認証システム１０００の一例を示す図である。
【０００８】
カード認証システム１０００は、発行機１１００と、認証機１２００と、ＩＣカード１３００、１４００、１５００などからなる。
なお、現実にはカード認証システム１０００は、複数の発行機と、複数の認証機とを有しているが、ここでは、便宜的にそれぞれ１つであるとして説明する。
ＩＣカード１３００、１４００、１５００は、例えば、ロジックカードタイプのプリペイドカードであり、いずれも同じ機能部を有している。
【０００９】
ここで、これらカードを代表してＩＣカード１３００について説明する。
ＩＣカード１３００は、記憶部１３０１と、記憶部１３０１へのアクセスを管理する入出力管理部１３０２と、発行機１１００及び認証機１２００に接続するためのインターフェース部１３０３とを有する。
記憶部１３０１は、ＲＯＭ１３０５とデータを記憶するための不揮発性のメモリ１３０４とを有する。
【００１０】
ＲＯＭ１３０５は、読み出しが可能で書き換え不可能なメモリであって、当該カードが製造された直後、即ち、カード未発行時において、カード毎に固有の番号であるＩＣチップの製造番号とカード認証システム１０００において装置の正当性を判断するために用いる各装置共通のキーコードを格納している。
カード発行後、不揮発性のメモリ１３０４には、上述の製造番号と金額値とが格納されている。
【００１１】
入出力管理部１３０２は、ロジック回路であり、正規のキーコードが入力された場合にのみ、ＲＯＭ１３０５及びメモリ１３０４へのアクセスを受け付ける。
発行機１１００は、カード発行時、前記キーコードをＩＣカード１３００に出力して、当該発行機１１００が正当な装置であることを通知した後、ＲＯＭ１３０５から上述の製造番号を読み出し、この製造番号とユーザが支払った金額の金額値をメモリ１３０４の決められた記憶領域に格納する。
【００１２】
認証機１２００は、例えば、自動販売機であり、ＩＣカード１３００が接続されると、上述のキーコードをＩＣカード１３００に出力して、当該認証機１２００が正当な装置であることを通知した後、ＲＯＭ１３０５から製造番号を読み出し、また、メモリ１３０４から製造番号及び金額値を読み出し、ＲＯＭ１３０５に格納されている製造番号とメモリ１３０４に格納されている製造番号とが同一である場合、このカードが正当なカードであると判断して、販売が可能な状態にする。
【００１３】
その結果、販売品の指定が受け付けられ、また、この販売が行われることとなるが、販売が終了したとき、認証機１２００は、メモリ１３０４から読み出した金額値から販売代金分の金額値を差し引いた金額値をメモリ１３０４の既格納の金額値に上書きする。
このように、ロジックカードであるＩＣカード１３００は、正規のキーコードを受け取らなければ、ＲＯＭ１３０５及びメモリ１３０４へのアクセスを受け付けないため、磁気カードよりデータ保護が厳重で、カード偽造を困難なものとしている。
【００１４】
ちなみに、このようなカード認証方法は、特開２００１−２５０１００に記載のＩＣカードにおいて、このＩＣカードに内包されているＣＰＵをロジック回路に置き換えることにより容易に想起される。
【００１５】
【発明が解決しようとする課題】
しかしながら、正規のキーコードがカード偽造者に洩れた場合、または、カード偽造者が入出力管理部１３０２を介することなくＲＯＭ１３０５及びメモリ１３０４に直接アクセスできるハードウエア上の改造を施した場合などにおいては、データの改竄が可能となってしまう。
【００１６】
即ち、上述のキーコードを入手し、または、上述の改造を施したカード偽造者は、例えば、未発行状態のＩＣカード１３００のＲＯＭ１３０５に格納されている製造番号を読み出し、この製造番号と金額値をメモリ１３０４の決められた格納領域に書き込むことにより、認証機において正当と判断されるいわゆる成りすましが可能なロジックカードを作成することができる。
【００１７】
通常、ＩＣカードをハードウエアから作成して偽造することは、時間的、コスト的に困難なため考えにくく、むしろ上述のように未発行のＩＣカードのデータを改竄することによりカードを偽造する方法が最も現実的と思われる。
したがって、このような偽造を有効に防止する技術の確立が急務となっている。
【００１８】
そこで本発明は、上記問題点に鑑みてなされたものであり、未発行のＩＣカードを用いたカード偽造が困難なカード認証システムを提供することを目的とする。
【００１９】
【課題を解決するための手段】
上記の目的を達成するために、本発明に係るＩＣカード認証システムは、ＩＣカードと、当該ＩＣカードを発行する発行装置と、前記ＩＣカードの正当性を認証する認証装置とからなるＩＣカード認証システムであって、前記ＩＣカードは、ＩＣカード固有の第１情報が予め記録されている読み出し専用の第１記録領域と、読み書き可能な第２記録領域とを備え、前記発行装置は、ＩＣカードを発行するとき、発行するＩＣカードに既格納の第１情報を読み出す第１読み出し手段と、読み出した第１情報の全部又は一部を含む第２情報を準備し、当該第２情報に署名鍵を用いて署名変換を施し、デジタル署名を生成する第１デジタル署名生成手段と、生成したデジタル署名を前記読み出しが行われたＩＣカードの第２記録領域に書き込む書き込み手段とを備え、前記認証装置は、前記ＩＣカードの第１記録領域から第１情報を読み出し、当該ＩＣカードの第２記録領域からデジタル署名を読み出す第２読み出し手段と、読み出したデジタル署名と読み出した第１情報と前記署名鍵に対応する検証鍵とを用いて第２情報の署名検証を行うことによりＩＣカードの正当性を認証する認証手段とを備えることを特徴とする。
【００２０】
ここで言う署名検証とは、前記署名変換の逆変換を前記デジタル署名に施して、第２情報を生成し、生成した第２情報と読み出した第１情報を用いて第２情報の正当性を認証すること、又は、前記署名変換そのものを用い、読み出した第１情報にもとづいてデジタル署名を生成し、読み出したデジタル署名と生成したデジタル署名とを用いて前記第２情報の正当性を検証することなどの認証行為全般を意味する。
【００２１】
また、本発明に係るＩＣカード認証方法は、固有の第１情報が予め記録されている読み出し専用の第１記録領域と読み書き可能な第２記録領域とを備えるＩＣカードと、当該ＩＣカードを発行する発行装置と、前記ＩＣカードの正当性を認証する認証装置とからなるＩＣカード認証システムにおいて、当該カードの正当性を認証するＩＣカード認証方法あって、前記発行装置において、ＩＣカードを発行するとき、発行するＩＣカードに既格納の第１情報を読み出す第１読み出しステップと、読み出した第１情報の全部又は一部を含む第２情報を準備し、当該第２情報に署名鍵を用いて署名変換を施し、デジタル署名を生成する第１デジタル署名生成ステップと、生成したデジタル署名を前記読み出しが行われたＩＣカードの第２記録領域に書き込む書き込みステップとを有し、前記認証装置において、前記ＩＣカードの第１記録領域から第１情報を読み出し、当該ＩＣカードの第２記録領域からデジタル署名を読み出す第２読み出しステップと、読み出したデジタル署名と読み出した第１情報と前記署名鍵に対応する検証鍵とを用いて第２情報の署名検証を行うことによりＩＣカードの正当性を認証する認証ステップとを有することを特徴とする。
【００２２】
【発明の実施の形態】
本発明の実施の形態について、図面を参照しながら詳細に説明する。
（第１の実施の形態）
＜構成＞
図１は、本発明の第１の実施の形態におけるカード認証システム１００の機能ブロック図である。
【００２３】
カード認証システム１００は、サービスが提供される際に使用されるＩＣカードの正当性を認証するシステムであり、発行機１１０と、認証機１２０と、ＩＣカード１３０、１４０、１５０などからなる。
なお、現実にはカード認証システム１００は、複数の発行機と、複数の認証機とを有しているが、ここでは、便宜的にそれぞれ１つであるとして説明する。
【００２４】
ＩＣカード１３０、１４０、１５０は、例えば、ロジックカードタイプのテレフォンカードであり、いずれも同様の機能部を有している。
ここで、これらカードを代表してＩＣカード１３０について説明する。
ＩＣカード１３０は、例えば、テレフォンカードであり、記憶部１３１と、記憶部１３１へのアクセスを制限する入出力管理部１３２と、発行機１１０及び認証機１２０に接続するためのインターフェース部１３３とを有する。
【００２５】
記憶部１３１は、ＲＯＭ１３５とデータを記憶するための不揮発性のメモリ１３４とを有する。
ＲＯＭ１３５は、読み出しが可能で書き換え不可能なメモリであって、当該カードが製造された直後、即ち、カード未発行時において、カード毎に固有の番号であるＩＣチップの製造番号とカード認証システム１００において、当該ＩＣカード１３０に接続される装置、つまり、発行機１１０及び認証機１２０の正当性を判断するために用いる各装置共通のキーコードを格納している。
【００２６】
この製造番号は、１６桁の番号であり、０から９９９９９９９９９９９９９９９９までの値をとる。
したがって、ＲＯＭ１３５におけるこの製造番号を記憶するための固定的な領域として８バイトが割り当てられている。
カード未発行時において、メモリ１３４には、有効なデータが書き込まれておらず、カード発行後、メモリ１３４は、後述の署名データと度数が格納される。
【００２７】
入出力管理部１３２は、ハードウエアにより以下の処理を実行するロジック回路である。
即ち、入出力管理部１３２は、外部から受け取ったキーコードと、ＲＯＭ１３５に格納されているキーコードとを比較し、一致する場合にのみ、外部からの要求にしたがいＲＯＭ１３５及びメモリ１３４へのアクセスを許可する。
【００２８】
発行機１１０は、例えば、ＩＣカード１３０、１４０、１５０などにデータを入力して、これらＩＣカードをテレフォンカードとして使用可能な状態にする装置であって、受付部１１１と、制御部１１２と、インターフェース部１１３と、記憶部１１４と、デジタル署名生成部１１５とを有する。
以下、発行機１１０とＩＣカード１３０とが接続されている場合について説明する。
【００２９】
記憶部１１４は、ＥＥＰＲＯＭなどの不揮発性メモリであって、署名データを生成する際に使用する秘密鍵と、上述のキーコードとを格納している。
インターフェース部１１３は、ＩＣカード１３０に接続するためのインターフェースであり、ＩＣカード１３０のインターフェース部１３３に接続されると、これらインターフェースを介して、データのやり取りを行い、また、ＩＣカード１３０に電力を供給する機能を有する。
【００３０】
受付部１１１は、キーボードなどの入力装置であって、操作者から、度数の入力を受け付け、この度数を制御部１１２に出力する機能を有する。
制御部１１２は、受付部１１１からカード発行指示及び度数を受け取ると、自装置が正当な装置であることを示すキーコードを出力し、ＩＣカード１３０のＲＯＭ１３５に格納されているＩＣチップの製造番号を読み出し、この製造番号をデジタル署名生成部１１５に出力し、その結果、デジタル署名生成部１１５から署名データを受け取り、受け取った署名データ及び上述の度数をそれぞれＩＣカード１３０のメモリ１３４内の決られた記憶領域に格納する機能を有する。
【００３１】
デジタル署名生成部１１５は、制御部１１２から製造番号を受け取ったとき、記憶部１１４に格納されている秘密鍵を取得し、この秘密鍵を用いてこの製造番号が正当であることを示す署名データを生成する機能を有する。
より具体的には、デジタル署名生成部１１５は、ハッシュ関数により製造番号を固定長のデータ（以下、「第１ダイジェストデータ」という。）に変換する。
【００３２】
さらに、デジタル署名生成部１１５は、この第１ダイジェストデータを上述の秘密鍵を用いて暗号化して署名データ、即ち製造番号の正当性を示すデジタル署名を生成し、この署名データを制御部１１２に出力する。
認証機１２０は、正当なＩＣカードと接続された場合、このカードに格納されている度数に対応する時間を限度として通話を可能とする電話機であって、テンキー部１２１と、制御部１２２と、インターフェース部１２３と、記憶部１２４と、認証部１２５、通信部１２６とを有する。
【００３３】
以下、認証機１２０とＩＣカード１３０とが接続されている場合について説明する。
通信部１２６は、制御部１２２からの指示に従って、呼接続要求及び呼の確立などの通信を行うために必要な処理を実施する。
なお、本発明は、ＩＣカードの認証に関するものであり、認証後に提供されるサービスの内容とは無関係であるため、ここでは電話機能についての詳細な説明は省略する。
【００３４】
インターフェース部１２３は、ＩＣカード１３０に接続するためのインターフェースであり、ＩＣカード１３０のインターフェース部１３３に接続されると、これらインターフェースを介して、データのやり取りを行い、また、ＩＣカード１３０に電力を供給する。
記憶部１２４は、ＥＥＰＲＯＭなどの不揮発性メモリであって、発行機１１０において署名データの生成に用いた秘密鍵に対応する公開鍵とキーコードとを格納している。
【００３５】
テンキー部１２１は、ユーザからの電話番号入力を受け付ける入力装置である。
制御部１２２は、インターフェース部１２３にＩＣカード１３０のインターフェース部１３３が接続されたとき、記憶部１２４からキーコードを読み出し、このキーコードをＩＣカード１３０に出力して、当該認証機１２０が正当な装置であることを通知した後、ＩＣカード１３０のＲＯＭ１３５から製造番号を読み出し、また、ＩＣカード１３０のメモリ１３４から署名データ及び度数を読み出し、製造番号と署名データとを認証部１２５に出力する。
【００３６】
制御部１２２は、認証部１２５から後述の正当信号を受信した場合、読み出した度数に対応する時間を限度として、通話を可能とする処理を実施する。
この通話が完了したとき、制御部１２２は、読み出した度数から通話時間分の度数を減じたものを新たな度数とし、この新たな度数をメモリ１３４に格納されている度数に上書きして度数の値を更新する。
【００３７】
また、制御部１２２は、認証部１２５から後述の不正信号を受信した場合、テンキー部１２１から受け取った電話番号を無視して、通話の行うための処理の実行を放棄する。
認証部１２５は、制御部１２２から製造番号と署名データとを受け取ると、署名データを用いて製造番号が正当であるか否かを判定し、その結果を制御部１２２に通知する。
【００３８】
より具体的には、認証部１２５は、ハッシュ関数により受け取った製造番号を固定長データ（以下、「第２ダイジェストデータ」という。）に変換する。
さらに、認証部１２５は、受け取った署名データを記憶部１２４に格納されている公開鍵により復号して第３ダイジェストデータを生成し、第２ダイジェストデータと第３ダイジェストデータとが一致するか否かを判断する。
【００３９】
なお、この公開鍵は、発行機１１０の記憶部１１４に記憶されている秘密鍵に対応する鍵であり、発行機１１０より配布されたものであって、上述の復号を実行することはできても、デジタル署名生成部１１５において実行された暗号化については実行不可能な鍵である。
つまり、カード偽造者がこの公開鍵を取得したとしても、カード偽造者は、製造番号から署名データを生成することはできない。
【００４０】
第２ダイジェストデータと第３ダイジェストデータとが一致する場合、認証部１２５は、製造番号が正当であり、ＩＣカードが正当であると判断し、その旨を示す正当信号を制御部１２２に出力する。
第２ダイジェストデータと第３ダイジェストデータとが一致しない場合、認証部１２５は、製造番号が不正であり、ＩＣカードが不正であると判断し、その旨を示す不正信号を制御部１２２に出力する。
【００４１】
無論、メモリ１３４に格納されているデータが改竄されていなければ、第１ダイジェストデータと第２ダイジェストデータと第３ダイジェストデータとは一致するが、例えば、従来のようなカード偽造が行われた場合、即ち、ＲＯＭ１３５に格納されている製造番号を単にメモリ１３４に書き込んだ場合、第２ダイジェストデータと第３ダイジェストデータとは一致しないこととなる。
【００４２】
また、あるカードの署名データを読み出して別のカードに書き込んだとしても、製造番号がカード毎に異なるため認証をパスできない。
つまり、未発行のＩＣカード１３０からメモリ１３４に署名データを書き込むためには、上述の秘密鍵が必要となり、この秘密鍵を厳重に管理することにより、カードの偽造が防止することができる。
＜動作＞
以下、カード認証システム１００を構成する発行機１１０、認証機１２０及びＩＣカードにおいて実行される処理について説明する。
【００４３】
図２は、発行機１１０において実行される処理を示すフローチャートである。
以下、発行機１１０とＩＣカード１３０とが接続されているものとして説明する。
制御部１１２は、記憶部１１４に格納されているキーコードを読み出して、このキーコードをＩＣカード１３０に出力する（ステップＳ１０）。
【００４４】
その結果、制御部１１２は、ＩＣカード１３０によりＲＯＭ１３５及びメモリ１３４へのアクセスが許可され、ＲＯＭ１３５から製造番号を取得する（ステップＳ１１）。
そして、制御部１１２は、受付部１１１において度数の入力が受け付けられたか否かを判断し（ステップＳ１２）、度数の入力が受け付けられた場合、取得した製造番号をデジタル署名生成部１１５に出力する。
【００４５】
一方、度数の入力が受け付けられていない場合、制御部１１２は、度数の入力が受け付けられるまで待機する。
デジタル署名生成部１１５は、製造番号を受け取ると、ハッシュ関数を用いてこの製造番号を固定長の第１ダイジェストデータに変換する（ステップＳ１３）。
【００４６】
そして、デジタル署名生成部１１５は、記憶部１１４に格納されている秘密鍵を用いて、この第１ダイジェストデータを暗号化することにより署名データを生成し（ステップＳ１４）、この署名データを制御部１１２に出力する。
制御部１１２は、デジタル署名生成部１１５から署名データを受け取ると、この署名データ及び上述の度数それぞれをＩＣカード１３０のメモリ１３４の決められた領域に書き込み（ステップＳ１５）、処理を終了する。
【００４７】
図３は、認証機１２０において実行される処理を示すフローチャートである。
以下、発行機１１０と同様に、認証機１２０とＩＣカード１３０とが接続されているものとして説明する。
制御部１２２は、記憶部１２４に格納されているキーコードを読み出して、このキーコードをＩＣカード１３０に出力する（ステップＳ２０）。
【００４８】
その結果、制御部１２２は、ＩＣカード１３０によりＲＯＭ１３５及びメモリ１３４へのアクセスが許可され（ステップＳ２１）、ＲＯＭ１３５から製造番号を取得し、また、メモリ１３４から署名データと度数とを取得し（ステップＳ２２）、取得した製造番号及び署名データを認証部１２５に出力する。
認証部１２５は、製造番号及び署名データを受け取ると、ハッシュ関数を用いて受け取った製造番号を固定長の第２ダイジェストデータに変換する（ステップＳ２３）。
【００４９】
また、認証部１２５は、受け取った署名データを記憶部１２４に格納されている公開鍵を用いて、この署名データを復号することにより第３ダイジェストデータを生成する（ステップＳ２４）。
そして、認証部１２５は、第２ダイジェストデータと第３ダイジェストデータとが一致するか否かを判断する（ステップＳ２５）。
【００５０】
第２ダイジェストデータと第３ダイジェストデータとが一致しない場合、認証部１２５は、制御部１２２に不正信号を出力する。
その結果、不正信号を受け取った制御部１２２は、サービスの提供の拒否、即ち、テンキー部１２１が電話番号入力を受け付けたとしても、これを無視して、通話の行うための処理の実行を放棄し（ステップＳ２６）、処理を終了する。
【００５１】
一方、第２ダイジェストデータと第３ダイジェストデータとが一致する場合、認証部１２５は、制御部１２２に正当信号を出力する。
その結果、正当信号を受け取った制御部１２２は、サービスの提供、即ち、読み出した度数に対応する時間を限度として、通話を可能とする処理を実施する（ステップＳ２７）。
【００５２】
そして、制御部１２２は、ＩＣカード１３０のメモリ１３４から読み出した度数からサービスの提供分の度数、即ち、通話時間分の度数を減じた値を新たな度数とし（ステップＳ２８）、この新たな度数をＩＣカード１３０のメモリ１３４に格納されている度数に上書きして（ステップＳ２９）、処理を終了する。
図４は、ＩＣカード１３０において実行される処理を示すフローチャートである。
【００５３】
以下、ＩＣカード１３０が発行機１１０及び認証機１２０などの外部装置に接続されているものとして説明する。
入出力管理部１３２は、インターフェース部１３３を介してキーコードを取得する（ステップＳ３０）。
そして、入出力管理部１３２は、取得したキーコードとＲＯＭ１３５に格納されているキーコードとが一致するか否かを判断する（ステップＳ３１）。
【００５４】
キーコードが一致する場合、入出力管理部１３２は、外部装置からのアクセス要求を許可し（ステップＳ３２）、インターフェース部１３３とＲＯＭ１３５間及びインターフェース部１３３とメモリ１３４間を接続しているバスをオンラインにして処理を終了する。
一方、キーコードが一致しない場合、入出力管理部１３２は、外部装置からのアクセス要求を無視し（ステップＳ３３）、インターフェース部１３３とＲＯＭ１３５間及びインターフェース部１３３とメモリ１３４間を接続しているバスをオフラインにして処理を終了する。
【００５５】
以上のように、第１の実施形態によれば、カード認証システム１００におけるカード発行において、カード認証のためにＩＣカードに格納される署名データは、秘密鍵を有している発行機１１０のみが生成し得るものであるため、キーコードの漏洩や入出力管理部１３２の機能を無効とする改造などが行われた場合であっても、未発行状態のＩＣカードを入手したとしても、成りすまし可能なＩＣカードを偽造することはできない。
【００５６】
なお、本発明における第１の実施の形態では、ＩＣカード１３０は、ロジックカードであることを前提に、即ち、入出力管理部１３２があることを前提に説明を行ったが、入出力管理部１３２を有さない単なるメモリカードであってもよい。
その場合、発行機１１０の記憶部１１４及び認証機１２０の記憶部１２４は、キーコードを格納してなくてもよく、発行機１１０の制御部１１２及び、認証機１２０の制御部１２２は、キーコードをＩＣカード１３０などに出力する必要はない。
【００５７】
また、ＩＣカード１３０内にＥＥＰＲＯＭなどの不揮発性メモリを設け、ＲＯＭ１３５に格納されているキーコードの代わりに、カードユーザが決定したパスワードをこの不揮発性メモリに格納し、カード認証に用いてもよい。
その際、認証機１２０は、記憶部１２４にキーコードを格納する代わりに、認証を実施する毎にテンキー部１２１などによりユーザからのパスワード入力を受け付け、パスワードを取得するとしてもよい。
【００５８】
また、記憶部１２４のキーコードは、テンキー部１２１などにより受け付けられたユーザの決定したパスワードが一時的に格納されているものであるとしてもよい。
認証機１２０は、このようにして取得したパスワードを認証すべきカードに出力することにより、ＲＯＭ１３５及びメモリ１３４へのアクセスが許可される。
【００５９】
また、本発明における第１の実施の形態では、ＩＣカード１３０、１４０、１５０などは、テレフォンカードであるとしたが、健康保険証及びプリペイドカードなどの他のサービスを享受するためのカードであってもよい。
また、本発明における第１の実施の形態におけるデジタル署名生成部１１５及び認証部１２５は、製造番号をハッシュ関数により固定長データ（第ｎ（ｎ＝１、１、２、３）ダイジェストデータ）に変換しているが、このような変換を全く省略し、変換の前データと変換後の第ｎダイジェストデータは全く同一であるとしてもよい。
【００６０】
また、第１の実施の形態では、製造番号は、Ｎ桁の番号であり、０から９９９９９９９９９９９９９９９９までの値をとり、ＲＯＭ１３５におけるこの製造番号を記憶するための固定的な領域として８バイトが割り当てられているとしたが、これに限らず、ＲＯＭ１３５においてデータを格納するのに十分なビットが割り当てられていればよい。
【００６１】
また、本発明における第１の実施の形態における認証機１２０は、製造番号→第２ダイジェストデータの順にデータを生成し、さらに、署名データ→第３ダイジェストデータの順にデータを生成しており、第２ダイジェストデータと第３ダイジェストデータを比較することにより製造番号の正当性を認証しているが、認証方法はこれに限らず、別の方法により製造番号の正当性を認証してもよい。
【００６２】
そのような一例として、認証機１２０が、秘密鍵を用いて、製造番号→第２ダイジェストデータ→第２の署名データの順にデータを生成し、第２の署名データとＩＣカードのメモリ１３４から読み出した署名データとを比較することにより製造番号の正当性を認証するなどの方法がある。
その場合、認証機１２０は、公開鍵の代わりに秘密鍵を保有することとなる。
（第２の実施の形態）
＜構成＞
続いて、第２の実施の形態における、カード認証システム２００について説明する。
【００６３】
カード認証システム２００は、カード認証システム１００と同様に、サービスが提供される際に使用されるＩＣカードの正当性を認証するシステムである。
カード認証システム２００の構成は、第１の実施の形態における、カード認証システム１００の構成と同じく、主に、ＩＣカード、発行機、認証機からなり、各装置の各機能部において実施する処理の内容がカード認証システム１００とは一部異なっている。
【００６４】
よって、カード認証システム１００と同様の処理を実施する機能部の説明を省略し、カード認証システム１００との処理上における相違点を中心に説明する。
カード認証システム２００は、発行機２１０と、認証機２２０と、ＩＣカード２３０、２４０、２５０などからなる。
このうちＩＣカード２３０、２４０、２５０と、第１の実施の形態のＩＣカード１３０、１４０、１５０とは、機能的及び構造的に同一のものであり、格納されるデータの内容のみ異なる。
【００６５】
ここで、ＩＣカード２３０とＩＣカード１３０とを比較しながら、これらの差異について説明する。
ＩＣカード２３０は、例えば、テレフォンカードであり、記憶部２３１と、記憶部２３１へのアクセスを制限する入出力管理部２３２と、発行機２１０及び認証機２２０に接続するためのインターフェース部２３３とを有する。
【００６６】
記憶部２３１、入出力管理部２３２及びインターフェース部２３３は、それぞれ第１の実施の形態における記憶部１３１、入出力管理部１３２及びインターフェース部１３３に対応する。
カード未発行状態において、ＩＣカード２３０に格納されているデータは、ＩＣカード１３０に格納されているデータと同内容である。
【００６７】
カード発行時、ＩＣカード２３０のメモリ２３４に格納されている署名データの内容は、ＩＣカード１３０のメモリ１３４に格納されている署名データの内容と異なる。
即ち、メモリ１３４に格納されている署名データは、ＲＯＭ１３５に格納されている製造番号のデジタル署名であるのに対し、メモリ２３４に格納されている署名データは、ＲＯＭ２３５に格納されている製造番号とメモリ２３４に格納される度数とを結合したデータのデジタル署名である。
【００６８】
また、認証が実施され、電話交換業務などのサービスが提供される毎に、ＩＣカード２３０のメモリ２３４に格納される度数の値が更新され、この度数の値が更新に伴って、デジタル署名の内容も更新される点でＩＣカード１３０とは異なる。
続いて、発行機２１０と発行機１１０とを比較しながら、これらの差異について説明する。
【００６９】
図５は、本発明の第２の実施の形態における発行機２１０及びＩＣカード２３０、２４０、２５０の機能ブロック図である。
発行機２１０は、例えば、発行機１１０と同様に、ＩＣカード２３０、２４０、２５０などにデータを入力して、これらＩＣカードをテレフォンカードとして使用可能な状態にする装置であって、受付部２１１と、制御部２１２と、インターフェース部２１３と、記憶部２１４と、デジタル署名生成部２１５とを有する。
【００７０】
受付部２１１と、制御部２１２と、インターフェース部２１３と、記憶部２１４と、デジタル署名生成部２１５は、それぞれ第１の実施の形態における受付部１１１と、制御部１１２と、インターフェース部１１３と、記憶部１１４と、デジタル署名生成部１１５とに対応し、以下に示す相違点を除き対応する第１の実施の形態における各機能部と同様の処理を実施する。
【００７１】
このうち制御部２１２及びデジタル署名生成部２１５において実施される処理の内容が、それぞれ制御部１１２及びデジタル署名生成部１１５において実施される処理の内容と異なる。
即ち、第１の実施の形態では、制御部１１２は、ＩＣカード１３０から読み出した製造番号をデジタル署名生成部１１５に出力するとしたが、第２の実施の形態における制御部２１２では、ＩＣカード２３０から読み出した製造番号及び受付部２１１により受け付けられた度数とをデジタル署名生成部２１５に出力する。
【００７２】
また、第１の実施の形態では、デジタル署名生成部１１５は、制御部１１２から製造番号を受け取ったとき、記憶部１１４に格納されている秘密鍵を取得し、この秘密鍵を用いてこの製造番号が正当であることを示す署名データを生成するとしたが、第２の実施の形態におけるデジタル署名生成部２１５では、制御部２１２から製造番号及び度数を受け取ったとき、製造番号の先頭にこの度数を付加して１つのデータとし、記憶部２１４に格納されている秘密鍵を取得し、この秘密鍵を用いてこのデータが正当であることを示す署名データを生成する。
【００７３】
つまり、第２の実施の形態における記憶部２２４は、この公開鍵の代わりに秘密鍵を保有している。
続いて、認証機２２０と認証機１２０とを比較しながら、これらの差異について説明する。
図６は、本発明の第２の実施の形態における認証機２２０の機能ブロック図であり、ＩＣカード２３０、２４０、２５０も合わせて示している。
【００７４】
認証機２２０は、例えば、認証機１２０と同様に正当なＩＣカードと接続された場合、このカードに格納されている度数に対応する時間を限度として通話を可能とする電話機であって、テンキー部２２１と、制御部２２２と、インターフェース部２２３と、記憶部２２４と、認証部２２５と、通信部２２６と、デジタル署名生成部２２７とを有する。
【００７５】
テンキー部２２１、制御部２２２、インターフェース部２２３、記憶部２２４、認証部２２５及び通信部２２６は、それぞれ第１の実施の形態におけるインターフェース部１２３、記憶部１２４、認証部１２５及び通信部１２６に対応し、以下に示す相違点を除き対応する第１の実施の形態における各機能部と同様の処理を実施する。
【００７６】
なお、デジタル署名生成部２２７に対応する機能部が認証機１２０にはなく、この点において、認証機２２０と認証機１２０とは構成的に異なる。
また、機能的には、制御部２２２及び認証部２２５において実施される処理の内容が、それぞれ制御部１２２及び認証部１２５において実施される処理の内容と異なる。
【００７７】
即ち、第１の実施の形態では、制御部１２２は、ＩＣカード１３０のＲＯＭ１３５から製造番号を読み出し、また、ＩＣカード１３０のメモリ１３４から署名データ及び度数を読み出し、製造番号と署名データを認証部１２５に出力するとしたが、第２の実施の形態における制御部２２２では、読み出した製造番号、署名データ及び度数を認証部１２５に出力する。
【００７８】
また、制御部２２２は、サービスの提供が完了したとき、即ち、通話が完了したとき、読み出した度数から通話時間分の度数を減じることにより生成した新たな度数をデジタル署名生成部２２７に出力する。
また、制御部１２２は、上述の度数をメモリ１３４に格納されている度数に上書きすることによりこの度数を更新していたが、この更新に伴い、制御部２２２は、デジタル署名生成部２２７から受け取った後述の新たな署名データをメモリ１３４に格納されている署名データに上書きして、署名データの内容を更新する。
【００７９】
また、第１の実施の形態における認証部１２５は、制御部１２２から製造番号と署名データとを受け取ると、記憶部１２４に格納されている公開鍵と署名データを用いて製造番号が正当であるか否かを判定し、その結果を制御部１２２に通知するとしたが、第２の実施の形態における認証部２２５は、制御部２２２から製造番号、署名データ及び度数を受け取ると、記憶部２２４に格納されている秘密鍵と署名データとを用いて製造番号の先頭に度数を付加したデータが正当であるか否かを判定する機能を有する。
【００８０】
より具体的には、認証部２２５は、制御部２２２から受け取った製造番号及び度数を受け取り、この製造番号の先頭にこの度数を付加した合成データを生成し、この合成データにハッシュ関数を用いて、固定長の第５ダイジェストデータに変換する。
さらに、認証部２２５は、記憶部２２４に格納されている秘密鍵を用い、制御部２２２から受け取った署名データを、この署名データを復号して第６ダイジェストデータに変換する。
【００８１】
そして、認証部２２５は、第５ダイジェストデータと第６ダイジェストデータとが一致する場合、この合成データは正当であり、このＩＣカードが正当であると判断する。
一方、第５ダイジェストデータと第６ダイジェストデータとが一致しない場合、この合成データは不正であり、このＩＣカードは正当でないと判断する。
【００８２】
なお、判定結果に応じて認証部２２５が実施する処理は、認証部１２５で実施される処理と同内容であるため説明を省略する。
また、上述の秘密鍵は、発行機２１０の記憶部２１４に格納されている秘密鍵と同内容の鍵であって、認証機２２０の外部に読み出せないようにプロテクトがなされ、この秘密鍵を無理やり外部に読み出そうとした場合、この秘密鍵のデータが破壊されるようになっている。
【００８３】
デジタル署名生成部２２７は、制御部２２２から、製造番号及び上述の新たな度数を受け取り、製造番号の先頭に上述の新たな度数を付加して１つの合成データとし、この記憶部２２４に格納されている秘密鍵を取得し、この秘密鍵を用いてこのデータが正当であることを示す署名データを生成する。
より具体的には、デジタル署名生成部２２７は、制御部２２２から受け取った新たな度数と製造番号とを受け取り、この製造番号の先頭に新たな度数を付加した新たな合成データを生成し、この新たな合成データにハッシュ関数を用いて、固定長の第７ダイジェストデータに変換する。
【００８４】
そして、デジタル署名生成部２２７は、記憶部２２４に格納されている秘密鍵を用いて、この第７ダイジェストデータを暗号化することにより新たな署名データを生成し、この新たな署名データを制御部２２２に出力する機能を有する。
以上の処理を実行することにより、認証機２２０は、ＩＣカードの認証が成功する毎に、図７に示すようにメモリ２３４に格納されている全データ、即ち、署名データと度数とを更新する点で、認証機１２０とは異なる。
＜動作＞
以下、カード認証システム２００を構成する発行機２１０、認証機２２０及びＩＣカード２３０、２４０、２５０などにおいて実行される処理について説明する。
【００８５】
図８は、発行機２１０において実行される処理を示すフローチャートである。以下、発行機２１０とＩＣカード２３０とが接続されているものとして説明する。
制御部２１２は、記憶部２１４に格納されているキーコードを読み出して、このキーコードをＩＣカード２３０に出力する（ステップＳ５０）。
【００８６】
その結果、制御部２１２は、ＩＣカード２３０によりＲＯＭ２３５及びメモリ２３４へのアクセスが許可され、ＲＯＭ２３５から製造番号を取得する（ステップＳ５１）。
そして、制御部２１２は、受付部２１１において度数の入力が受け付けられたか否かを判断し（ステップＳ５２）、度数の入力が受け付けられた場合、取得した製造番号と度数とをデジタル署名生成部２１５に出力する。
【００８７】
一方、度数の入力が受け付けられていない場合、制御部２１２は、度数の入力が受け付けられるまで待機する。
デジタル署名生成部２１５は、製造番号と度数とを受け取ると、製造番号の先頭に度数を付加した合成データを生成し（ステップＳ５３）、ハッシュ関数を用いてこの合成データを固定長の第４ダイジェストデータに変換する（ステップＳ５４）。
【００８８】
そして、デジタル署名生成部２１５は、記憶部２１４に格納されている秘密鍵を用いて、この第４ダイジェストデータを暗号化することにより署名データを生成し（ステップＳ５５）、この署名データを制御部２１２に出力する。
制御部２１２は、デジタル署名生成部２１５から署名データを受け取ると、この署名データ及び上述の度数それぞれをＩＣカード２３０のメモリ２３４の決められた領域に書き込み（ステップＳ５６）、処理を終了する。
【００８９】
図９は、認証機２２０において実行される処理を示すフローチャートである。
以下、発行機２１０と同様に、認証機２２０とＩＣカード２３０とが接続されているものとして説明する。
制御部２２２は、記憶部２２４に格納されているキーコードを読み出して、このキーコードをＩＣカード２３０に出力する（ステップＳ６０）。
【００９０】
その結果、制御部２２２は、ＩＣカード２３０によりＲＯＭ２３５及びメモリ２３４へのアクセスが許可され（ステップＳ６１）、ＲＯＭ２３５から製造番号を取得し、また、メモリ１３４から署名データと度数とを取得し（ステップＳ６２）、取得した製造番号、署名データ及び度数を認証部１２５に出力する。
認証部２２５は、製造番号、署名データ及び度数を受け取ると、製造番号の先頭に度数を付加したデータである合成データを生成し（ステップＳ６３）、ハッシュ関数を用いて生成した合成データを固定長の第５ダイジェストデータに変換する（ステップＳ６４）。
【００９１】
また、認証部２２５は、受け取った署名データを記憶部２２４に格納されている秘密鍵を用いて、この署名データを復号することにより第６ダイジェストデータに変換する（ステップＳ６５）。
そして、認証部２２５は、第５ダイジェストデータと第６ダイジェストデータとが一致するか否かを判断する（ステップＳ６６）。
【００９２】
第５ダイジェストデータと第６ダイジェストデータとが一致しない場合、認証部２２５は、制御部２２２に不正信号を出力する。
その結果、不正信号を受け取った制御部２２２は、サービスの提供の拒否、即ち、テンキー部２２１が電話番号入力を受け付けたとしても、これを無視して、通話の行うための処理の実行を放棄し（ステップＳ６７）、処理を終了する。
【００９３】
一方、第５ダイジェストデータと第６ダイジェストデータとが一致する場合、認証部２２５は、制御部２２２に正当信号を出力する。
その結果、正当信号を受け取った制御部２２２は、サービスの提供、即ち、読み出した度数に対応する時間を限度として、通話を可能とする処理を実施する（ステップＳ６８）。
【００９４】
そして、制御部２２２は、ＩＣカード２３０のメモリ２３４から読み出した度数からサービスの提供分の度数、即ち、通話時間分の度数を減じた値を新たな度数とする（ステップＳ６９）。
続いて、デジタル署名生成部２２７は、この新たな度数を読み出した製造番号の先頭に付加して新たな合成データを生成し（ステップＳ７０）、ハッシュ関数を用いてこの新たな合成データを固定長の第７ダイジェストデータに変換する（ステップＳ７１）。
【００９５】
そして、デジタル署名生成部２２７は、記憶部２２４に格納されている秘密鍵を用いて、この第７ダイジェストデータを暗号化することにより新たな署名データを生成し（ステップＳ７２）、この新たな署名データを制御部２２２に出力する。
制御部２２２は、この新たな度数をＩＣカード２３０のメモリ２３４に格納されている度数に上書きし、さらに、新たな署名データをＩＣカード２３０のメモリ２３４に格納されている署名データに上書きし（ステップＳ７３）、処理を終了する。
【００９６】
ＩＣカード２３０において実行される処理は、ＩＣカード１３０において実行される処理と同内容である。
以上のように、第２の実施形態によれば、カード認証システム２００におけるカード発行において、カード認証のためにＩＣカードに格納される署名データは、秘密鍵を有している発行機２１０及び認証機２２０のみが生成し得るものであるため、キーコードの漏洩や入出力管理部２３２の機能を無効とする改造などが行われた場合であっても、未発行状態のＩＣカードを入手したとしても、成りすまし可能なＩＣカードを偽造することはできない。
【００９７】
さらに、ＩＣカードの認証に用いられるデータが常に変化するという動的認証が実施されるため、カード認証機２２０は、カード認証システム１００に比べ、よりセキュリティレベルの向上が図られている。
また、ＩＣカードのメモリ２３４に格納されている度数の値が改竄されると、認証機２２０は、このＩＣカードを正当なカードとして認証しないので、第２の実施形態のカード認証システム２００は、第１の実施の形態におけるカード認証システム１００に比べ、データ保護の面でより堅牢な認証システムとなっている。
【００９８】
なお、本発明における第２の実施の形態では、ＩＣカード２３０は、ロジックカードであることを前提に、即ち、入出力管理部２３２があることを前提に説明を行ったが、本発明における第１の実施の形態と同様に、入出力管理部２３２を有さない単なるメモリカードであってもよい。
その場合、発行機２１０の記憶部２１４及び認証機２２０の記憶部２２４は、キーコードを格納してなくてもよく、発行機２１０の制御部２１２及び、認証機２２０の制御部２２２は、キーコードをＩＣカード２３０などに出力する必要はない。
【００９９】
デジタル署名生成部２１５における合成データの構成要素の一つである度数を、ＩＣカードのメモリ２３４内における署名データ以外の全てのデータと読み替えて処理を実施してもよい。
これにより、ＩＣカードのメモリ２３４に格納されているデータが少しでも改竄されると、認証機２２０は、このＩＣカードを正当なカードとして認証しないので、カード認証システム２００は、データ保護の面でより堅牢な認証システムとなる。
【０１００】
また、ＲＯＭ２３５に格納されているキーコードは、本発明における第１の実施の形態と同様に、カードユーザが決定したパスワードでもよい。
その際、認証機２２０は、記憶部２２４にキーコードを格納する代わりに、認証を実施する毎にテンキー部２２１などによりユーザからのパスワード入力を受け付け、パスワードを取得するとしてもよい。
【０１０１】
また、記憶部２２４のキーコードは、テンキー部２２１などにより受け付けられたユーザの決定したパスワードが一時的に格納されているものであるとしてもよい。
認証機２２０は、このようにして取得したパスワードを認証すべきカードに出力することにより、ＲＯＭ２３５及びメモリ２３４へのアクセスが許可される。
【０１０２】
また、ＩＣカード２３０、２４０、２５０などは、テレフォンカードであるとしたが、本発明における第１の実施の形態と同様に、健康保険証及びプリペイドカードなどの他のサービスを享受するためのカードであってもよい。
また、デジタル署名生成部２１５及び認証部２２５は、製造番号をハッシュ関数により固定長データ（第ｎ（ｎ＝１、１、２、３）ダイジェストデータ）に変換するが、本発明における第１の実施の形態と同様に、このような変換を全く省略し、変換の前データと変換後の第ｎダイジェストデータは全く同一であるとしてもよい。
【０１０３】
また、本発明における第１の実施の形態と同様に、ＲＯＭ２３５におけるこの製造番号を記憶するための固定的な領域として、データを格納するのに十分なビットが割り当てられていればよい。
また、本発明における第２の実施の形態における認証機２２０は、製造番号の先頭に度数を付加して合成データを生成し、さらに、合成データ→第５ダイジェストデータの順にデータを生成し、さらに、署名データ→第６ダイジェストデータの順にデータを生成しており、第５ダイジェストデータと第６ダイジェストデータを比較することにより合成データの正当性を認証しているが、認証方法はこれに限らず、別の方法により合成データの正当性を認証してもよい。
【０１０４】
そのような一例として、認証機２２０が、製造番号の先頭に度数を付加して合成データを生成し、さらに、合成データから第５ダイジェストデータを生成し、さらに、秘密鍵を用いて、第５ダイジェストデータを暗号化して第２の署名データを生成し、この第２の署名データとＩＣカードのメモリ１３４から読み出した署名データとを比較することにより合成データの正当性を認証するなどの方法がある。
【０１０５】
【発明の効果】
以上の説明から明らかなように、本発明に係るＩＣカード認証システムは、ＩＣカードと、当該ＩＣカードを発行する発行装置と、前記ＩＣカードの正当性を認証する認証装置とからなるＩＣカード認証システムであって、前記ＩＣカードは、ＩＣカード固有の第１情報が予め記録されている読み出し専用の第１記録領域と、読み書き可能な第２記録領域とを備え、前記発行装置は、ＩＣカードを発行するとき、発行するＩＣカードに既格納の第１情報を読み出す第１読み出し手段と、読み出した第１情報の全部又は一部を含む第２情報を準備し、当該第２情報に署名鍵を用いて署名変換を施し、デジタル署名を生成する第１デジタル署名生成手段と、生成したデジタル署名を前記読み出しが行われたＩＣカードの第２記録領域に書き込む書き込み手段とを備え、前記認証装置は、前記ＩＣカードの第１記録領域から第１情報を読み出し、当該ＩＣカードの第２記録領域からデジタル署名を読み出す第２読み出し手段と、読み出したデジタル署名と読み出した第１情報と前記署名鍵に対応する検証鍵とを用いて第２情報の署名検証を行うことによりＩＣカードの正当性を認証する認証手段とを備えることを特徴とし、また、本発明に係るＩＣカード認証方法は、固有の第１情報が予め記録されている読み出し専用の第１記録領域と読み書き可能な第２記録領域とを備えるＩＣカードと、当該ＩＣカードを発行する発行装置と、前記ＩＣカードの正当性を認証する認証装置とからなるＩＣカード認証システムにおいて、当該カードの正当性を認証するＩＣカード認証方法あって、前記発行装置において、ＩＣカードを発行するとき、発行するＩＣカードに既格納の第１情報を読み出す第１読み出しステップと、読み出した第１情報の全部又は一部を含む第２情報を準備し、当該第２情報に署名鍵を用いて署名変換を施し、デジタル署名を生成する第１デジタル署名生成ステップと、生成したデジタル署名を前記読み出しが行われたＩＣカードの第２記録領域に書き込む書き込みステップとを有し、前記認証装置において、前記ＩＣカードの第１記録領域から第１情報を読み出し、当該ＩＣカードの第２記録領域からデジタル署名を読み出す第２読み出しステップと、読み出したデジタル署名と読み出した第１情報と前記署名鍵に対応する検証鍵とを用いて第２情報の署名検証を行うことによりＩＣカードの正当性を認証する認証ステップとを有することを特徴とする。
【０１０６】
これにより、署名鍵を有しない他の装置は、デジタル署名を生成することはできないため、ＩＣカードの偽造が防止される。
また、前記発行装置は、さらに、ＩＣカードに格納する第３情報を取得する第３情報取得手段を備え、前記第２情報は、さらに、前記第３情報の全部又は一部を含み、前記書き込み手段は、第２記録領域への前記書き込みに伴い、前記第３情報を当該第２記録領域に書き込み、前記第２読み出し手段は、さらに、前記第２記録領域から前記第３情報を読み出し、前記認証手段は、読み出した第３情報を加味して、前記認証を実行するとしてもよい。
【０１０７】
これにより、第３情報も認証に用いられる。
つまり、第３情報が改竄された場合、ＩＣカードの正当性が認証されないこととなる。
また、前記第３情報は、ＩＣカードが正当であると認証された結果、ＩＣカードユーザに提供されるサービスに関連する情報であって、前記認証装置は、さらに、前記サービスの提供に伴い、読み出した前記第３情報の内容を更新する第３情報更新手段と、読み出した第１情報の全部又は一部と、更新した第３情報の全部又は一部とを含む第２情報に前記署名鍵と同内容の鍵を用いて署名変換を施し、デジタル署名を生成する第２デジタル署名生成手段と、前記第２デジタル署名生成手段において生成したデジタル署名と更新した第３情報とを、正当であると認証した前記ＩＣカードの第２記録領域に格納されているデジタル署名と第３情報とにそれぞれ上書きする上書き手段とを備えるとしてもよい。
【０１０８】
これにより、サービスが提供される毎に、カード認証に用いられるデジタル署名と第３情報とが更新され、動的認証が実施される。
また、前記発行装置は、さらに、自装置が正当な装置であることを示す第１証明情報を記憶している第１記憶手段と、前記第１情報の取得に先行して、前記第１証明情報を前記ＩＣカードに出力する第１出力手段とを備え、前記認証装置は、さらに、自装置が正当な装置であることを示す第２証明情報を記憶している第２記憶手段と、前記第１情報及びデジタル署名の取得に先行して、前記第２証明情報を前記ＩＣカードに出力する第２出力手段を備え、前記第１記録領域は、さらに、外部装置が正当な装置であるか否かを判定するための判定情報が記録されており、前記ＩＣカードは、さらに、前記判定情報と出力された前記第１証明情報又は前記第２証明情報とにもとづいて、前記判定を実行し、当該第１証明情報又は当該第２証明情報の出力元となった装置が正当な装置であると判定した場合にのみ、第１記録領域及び第２記録領域へのアクセスを許可する許可手段を備えるとしてもよい。
【０１０９】
これにより、正当な装置以外では、第１記録領域及び第２記録領域へのアクセスが許可されず、データ保護がより厳重となる。
また、前記第１証明情報、前記第２証明情報及び前記判定情報は、ＩＣカードのユーザが決定した単一のパスワードであって、前記認証装置は、さらに、認証を実施するＩＣカードのユーザからパスワードの入力を受け付けるパスワード受付手段を備え、前記第２記憶手段に格納されている前記第２証明情報は、前記パスワード受付手段により受け付けられたものであり、前記許可手段は、前記判定情報と出力された第１証明情報又は第２証明情報とが一致した場合、前記装置が正当な装置であると判定するとしてもよい。
【０１１０】
これにより、前記認証装置においてパスワードの入手先がＩＣカードユーザであるため、トランザクションなカード認証が実施される。
また、前記ＩＣカードは、ロジックカードであって、前記許可手段は、ハードウエアロジックにより前記判定を実施するとしてもよい。
これにより、前記許可手段がＣＰＵのような高価なデバイスではなく、安価なハードウエアロジックであるためＩＣカードのコストの低減化がなされ得る。
【０１１１】
また、前記書き込み手段は、前記デジタル署名及び前記第３情報のみを書き込み、前記第２読み出し手段は、第２記録領域に格納されている全ての情報を読み出すことにより、前記デジタル署名及び前記第３情報を読み出すとしてもよい。
これにより、第２記録領域に格納されているデータが少しでも改竄されると、ＩＣカードが正当と判断されない。
【０１１２】
また、前記署名鍵と前記検証鍵とは、秘密の共通鍵の関係にあるとしてもよい。
これにより、共通鍵を有する装置でなければ、デジタル署名を生成することはできず、ＩＣカードの偽造の防止が図られる。
また、前記発行装置は、さらに、自装置が正当な装置であることを示す第１証明情報を記憶している第１記憶手段と、前記第１情報の取得に先行して、前記第１証明情報を前記ＩＣカードに出力する第１出力手段とを備え、前記認証装置は、さらに、自装置が正当な装置であることを示す第２証明情報を記憶している第２記憶手段と、前記第１情報及びデジタル署名の取得に先行して、前記第２証明情報を前記ＩＣカードに出力する第２出力手段を備え、前記第１記録領域は、さらに、外部装置が正当な装置であるか否かを判定するための判定情報が記録されており、前記ＩＣカードは、さらに、前記判定情報と出力された前記第１証明情報又は前記第２証明情報とにもとづいて、前記判定を実行し、当該第１証明情報又は当該第２証明情報の出力元となった装置が正当な装置であると判定した場合にのみ、第１記録領域及び第２記録領域へのアクセスを許可する許可手段を備えるとしてもよい。
【０１１３】
これにより、正当な装置以外では、第１記録領域及び第２記録領域へのアクセスが許可されず、データ保護がより厳重となる。
また、前記第１証明情報、前記第２証明情報及び前記判定情報は、ＩＣカードのユーザが決定した単一のパスワードであって、前記認証装置は、さらに、認証を実施するＩＣカードのユーザからパスワードの入力を受け付けるパスワード受付手段を備え、前記第２記憶手段に格納されている前記第２証明情報は、前記パスワード受付手段により受け付けられたものであり、前記許可手段は、前記判定情報と出力された第１証明情報又は第２証明情報とが一致した場合、前記装置が正当な装置であると判定するとしてもよい。
【０１１４】
これにより、前記認証装置においてパスワードの取得先がＩＣカードユーザであるため、トランザクションなカード認証が実施される。
また、前記ＩＣカードは、ロジックカードであって、前記許可手段は、ハードウエアロジックにより前記判定を実施するとしてもよい。
これにより、前記許可手段がＣＰＵのような高価なデバイスではなく、安価なハードウエアロジックであるためＩＣカードのコストの低減化がなされ得る。
【０１１５】
また、前記署名鍵は、秘密鍵であり、前記検証鍵は、前記秘密鍵に対応する公開鍵であるとしてもよい。
これにより、安全面に特に配慮することなく前記検証鍵の配布がなされ得る。
【図面の簡単な説明】
【図１】本発明の第１の実施の形態におけるカード認証システムの機能ブロック図である。
【図２】第１の実施の形態における発行機において実行される処理を示すフローチャートである。
【図３】第１の実施の形態における認証機において実行される処理を示すフローチャートである。
【図４】ＩＣカードにおいて実行される処理を示すフローチャートである。
【図５】本発明の第２の実施の形態における発行機及びＩＣカードの機能ブロック図である。
【図６】本発明の第２の実施の形態における認証機の機能ブロック図である。
【図７】ＩＣカードの認証に伴う、ＩＣカードに格納されているデータの更新状況を示す図である。
【図８】第２の実施の形態における発行機において実行される処理を示すフローチャートである。
【図９】第２の実施の形態における認証機において実行される処理を示すフローチャートである。
【図１０】従来のカード認証システムの一例を示す図である。
【符号の説明】
１００、２００　　カード認証システム
１１０、２１０　　発行機
１１１、２１１　　受付部
１１２、２１２　　制御部
１１３、２１３　　インターフェース部
１１４、２１４　　記憶部
１１５、２１５、２２７　　デジタル署名生成部
１２０、２２０　　認証機
１２１、２２１　　テンキー部
１２２、２２２　　制御部
１２３、２２３　　インターフェース部
１２４、２２４　　記憶部
１２５、２２５　　認証部
１２６、２２６　　通信部
１３０、１４０、１５０、２３０、２４０、２５０　　ＩＣカード
１３１、２３１　　記憶部
１３２、２３２　　入出力管理部
１３３、２３３　　インターフェース部
１３４、２３４　　メモリ
１３５、２３５　　ＲＯＭ
【図１】
2004046754.tif 000003
【図２】
2004046754.tif 000004
【図３】
2004046754.tif 000005
【図４】
2004046754.tif 000006
【図５】
2004046754.tif 000007
【図６】
2004046754.tif 000008
【図７】
2004046754.tif 000009
【図８】
2004046754.tif 000010
【図９】
2004046754.tif 000011
【図１０】
2004046754.tif 000012