(57)【要約】  【課題】  ファイルの一部が破壊されている場合、そのファイル全体を読み出そうとすると、データが一切読み出されないか、あるいは全データが読み出されるものの、どこでデータ化けを起こしているかの情報が全く与えられない。  【解決手段】  本発明は、レコード型構造あるいは透過型構造のファイルにおいて、外部から受信したコマンドの種類を判断するコマンド判断部と、前記コマンド判断部が前記コマンドがレコードの読み出しコマンドであると判断した際に、読み出し要求がなされたレコード或いはフィールドの誤り検出符号を検証する誤り検証部と、前記誤り検証部により正常と判断されたレコードあるいはフィールドと異常と判断されたレコード或いはフィールドとを識別することができるように所定の識別子を付して出力する出力制御部とを有するものである。【選択図】  図１
2006072655.tif 000002
【特許請求の範囲】
【請求項１】
複数個の誤り検出符号が付されたレコードからなる、レコード型構造のファイルが格納されたＩＣカードであって、
外部から受信したコマンドの種類を判断するコマンド判断部と、
前記コマンド判断部が前記コマンドがレコードの読み出しコマンドであると判断した際に、読み出し要求がなされたレコードの誤り検出符号を検証する誤り検証部と、
前記誤り検証部により正常と判断されたレコードを構成するデータのみを出力する出力制御部とを有する、
ことを特徴とするＩＣカード。
【請求項２】
複数個の誤り検出符号が付されたレコードからなる、レコード型構造のファイルが格納されたＩＣカードであって、
外部から受信したコマンドの種類を判断するコマンド判断部と、
前記コマンド判断部が前記コマンドがレコードの読み出しコマンドであると判断した際に、読み出し要求がなされたレコードの誤り検出符号を検証する誤り検証部と、
前記誤り検証部により正常と判断されたレコードについては、該レコードを構成するデータを出力し、異常と判断されたレコードについては、異常が検出されたことを示す専用のタグを付したデータを出力する出力制御部とを有する、
ことを特徴とするＩＣカード。
【請求項３】
請求項２に記載のＩＣカードにおいて、
前記出力制御部は、前記異常と判断されたレコードに対して、異常が検出されたことを示す専用のタグと，データ本体の長さを示す長さ部と，異常の検出されたレコードのタグ情報を含むデータ本体部とからなるデータを出力する、
ことを特徴とするＩＣカード。
【請求項４】
請求項２に記載のＩＣカードにおいて、
前記出力制御部は、前記異常と判断されたレコードに対して、異常が検出されたことを示す専用のタグと，データ本体の長さを示す長さ部と，異常の検出されたレコードの全情報を含むデータ本体部とからなるデータを出力する、
ことを特徴とするＩＣカード。
【請求項５】
請求項４に記載のＩＣカードにおいて、
前記出力制御部は、異常の検出されたレコードのタグ部と長さ部とデータ本体部からなるＴＬＶ構造のデータを、前記異常が検出されたことを示す専用のタグが付されたデータのデータ本体部として出力する、
ことを特徴とするＩＣカード。
【請求項６】
請求項２から請求項５の何れかに記載のＩＣカードにおいて、
前記出力制御部は、前記異常が検出されたことを示す専用のタグとして、レコードに使用されるタグとは異なる、別のクラスのタグを割り当てる、
ことを特徴とするＩＣカード。
【請求項７】
請求項２から請求項５の何れかに記載のＩＣカードにおいて、
前記出力制御部は、前記異常が検出されたことを示す専用のタグとして、所定の固有値からなるタグを使用する、
ことを特徴とするＩＣカード。
【請求項８】
複数個の誤り検出符号が付されたレコードからなる、レコード型構造のファイルが格納されたＩＣカードであって、
外部から受信したコマンドの種類を判断するコマンド判断部と、
前記コマンド判断部が前記コマンドがレコードの読み出しコマンドであると判断した際に、読み出し要求がなされたレコードの誤り検出符号を検証する誤り検証部と、
前記誤り検証部により正常と判断されたレコードについては、該レコードを構成するデータを出力し、異常と判断されたレコードについては、異常と判断されたレコードのデータ本体部を伴わない、タグ部と長さ部とからなるデータを出力する出力制御部とを有する、
ことを特徴とするＩＣカード。
【請求項９】
複数個の誤り検出符号が付されたレコードからなる、レコード型構造のファイルが格納されたＩＣカードであって、
外部から受信したコマンドの種類を判断するコマンド判断部と、
前記コマンド判断部が前記コマンドがレコードの読み出しコマンドであると判断した際に、読み出し要求がなされたレコードの誤り検出符号を検証する誤り検証部と、
前記誤り検証部による検証により、読み出し要求がなされた全てのレコードのうち、少なくとも一つのレコードが異常であると判断された場合には、前記誤り検証部により異常と判断されたレコードのタグ情報を示すデータを出力する出力制御部とを有する、
ことを特徴とするＩＣカード。
【請求項１０】
複数個の誤り検出符号が付されたレコードからなる、レコード型構造のファイルが格納されたＩＣカードであって、
外部から受信したコマンドの種類を判断するコマンド判断部と、
前記コマンド判断部が前記コマンドがレコードの読み出しコマンドであると判断した際に、レスポンスの返送に先立ち、読み出し要求がなされた全てのレコードの誤り検出符号を検証する誤り検証部と、
前記誤り検証部による検証により、少なくとも一つのレコードが異常であると判断された場合には、読み出し要求がなされたレコード中に異常なレコードが含まれる旨の情報を、レコードのデータを出力するよりも前に出力する出力制御部とを有する、
ことを特徴とするＩＣカード。
【請求項１１】
複数個の誤り検出符号が付されたレコードからなる、レコード型構造のファイルが格納されたＩＣカードであって、
外部から受信したコマンドの種類を判断するコマンド判断部と、
前記コマンド判断部が前記コマンドがレコードの読み出しコマンドであると判断した際に、レスポンスの返送に先立ち、読み出し要求がなされた全てのレコードの誤り検出符号を検証する誤り検証部と、
前記誤り検証部による検証により、少なくとも一つのレコードが異常であると判断された場合には、前記誤り検証部により異常と判断されたレコードのタグ情報を、レコードのデータを出力するよりも前に出力する出力制御部とを有する、
ことを特徴とするＩＣカード。
【請求項１２】
複数個の誤り訂正符号が付されたレコードからなる、レコード型構造のファイルが格納されたＩＣカードであって、
外部から受信したコマンドの種類を判断するコマンド判断部と、
前記コマンド判断部が前記コマンドがレコードの読み出しコマンドであると判断した際に、読み出し要求がなされたレコードの誤り訂正の有無を検証する誤り訂正検証部と、
前記誤り訂正検証部により誤り訂正無しと判断されたレコードについては、該レコードを構成するデータを出力し、誤り訂正有りと判断されたレコードについては、誤り訂正がなされたことを示す専用のタグを付したデータを出力する出力制御部とを有する、
ことを特徴とするＩＣカード。
【請求項１３】
複数個の誤り訂正符号が付されたレコードからなる、レコード型構造のファイルが格納されたＩＣカードであって、
外部から受信したコマンドの種類を判断するコマンド判断部と、
前記コマンド判断部が前記コマンドがレコードの読み出しコマンドであると判断した際に、読み出し要求がなされたレコードの誤り訂正の有無を検証する誤り訂正検証部と、
前記誤り訂正検証部による検証により、読み出し要求がなされた全てのレコードのうち、少なくとも一つのレコードが誤り訂正有りと判断された場合には、前記誤り訂正検証部により誤り訂正有りと判断されたレコードのタグ情報を示すデータを出力する出力制御部とを有する、
ことを特徴とするＩＣカード。
【請求項１４】
複数個の誤り訂正符号が付されたレコードからなる、レコード型構造のファイルが格納されたＩＣカードであって、
外部から受信したコマンドの種類を判断するコマンド判断部と、
前記コマンド判断部が前記コマンドがレコードの読み出しコマンドであると判断した際に、レスポンスの返送に先立ち、読み出し要求がなされた全てのレコードの、誤り訂正の有無を検証する誤り訂正検証部と、
前記誤り訂正検証部による検証により、少なくとも一つのレコードが誤り訂正有りと判断された場合には、読み出し要求がなされたレコード中に誤り訂正がなされたレコードが含まれる旨の情報を、レコードのデータを出力するよりも前に出力する出力制御部とを有する、
ことを特徴とするＩＣカード。
【請求項１５】
複数個の誤り訂正符号が付されたレコードからなる、レコード型構造のファイルが格納されたＩＣカードであって、
外部から受信したコマンドの種類を判断するコマンド判断部と、
前記コマンド判断部が前記コマンドがレコードの読み出しコマンドであると判断した際に、レスポンスの返送に先立ち、読み出し要求がなされた全てのレコードの、誤り訂正の有無を検証する誤り訂正検証部と、
前記誤り訂正検証部による検証により、少なくとも一つのレコードが誤り訂正有りと判断された場合には、前記誤り訂正検証部により誤り訂正有りと判断されたレコードのタグ情報を、レコードのデータを出力するよりも前に出力する出力制御部とを有する、
ことを特徴とするＩＣカード。
【請求項１６】
複数個の誤り検出符号が付されたフィールドからなる、透過型構造のファイルが格納されたＩＣカードであって、
外部から受信したコマンドの種類を判断するコマンド判断部と、
前記コマンド判断部が前記コマンドがフィールドの読み出しコマンドであると判断した際に、読み出し要求がなされたフィールドの誤り検出符号を検証する誤り検証部と、
前記誤り検証部により正常と判断されたフィールドについては、該フィールドのデータが正常であることを示す専用のタグを付したデータを出力し、異常と判断されたフィールドについては、該フィールドのデータが異常であることを示す専用のタグを付したデータを出力する出力制御部とを有する、
ことを特徴とするＩＣカード。
【請求項１７】
請求項１６に記載のＩＣカードにおいて、
前記出力制御部は、前記異常と判断されたフィールドに対して、該フィールドのデータが異常であることを示す専用のタグと，データ本体の長さを示した長さ部と，該フィールドの全データを含むデータ本体部とからなるデータを出力する、
ことを特徴とするＩＣカード。
【請求項１８】
請求項１６に記載のＩＣカードにおいて、
前記出力制御部は、前記異常と判断されたフィールドに対して、該フィールドのデータが異常であることを示す専用のタグと，データ本体の長さを示した長さ部と，該フィールドのデータの長さ情報で構成されたデータ本体部とからなるデータを出力する、
ことを特徴とするＩＣカード。
【請求項１９】
請求項１６に記載のＩＣカードにおいて、
前記出力制御部は、前記異常と判断されたフィールドに対して、該フィールドのデータが異常であることを示す専用のタグと，該フィールドのデータ長を示す情報とからなるデータを出力する、
ことを特徴とするＩＣカード。
【請求項２０】
複数個の誤り検出符号が付されたフィールドからなる、透過型構造のファイルが格納されたＩＣカードであって、
外部から受信したコマンドの種類を判断するコマンド判断部と、
前記コマンド判断部が前記コマンドがフィールドの読み出しコマンドであると判断した際に、読み出し要求がなされたフィールドの誤り検出符号を検証する誤り検証部と、
前記誤り検証部による検証により、読み出し要求がなされた全てのフィールドのうち、少なくとも一つのフィールドが異常であると判断された場合には、前記誤り検証部により異常と判断されたフィールドの位置情報を示すデータを出力する出力制御部とを有する、
ことを特徴とするＩＣカード。
【請求項２１】
複数個の誤り検出符号が付されたフィールドからなる、透過型構造のファイルが格納されたＩＣカードであって、
外部から受信したコマンドの種類を判断するコマンド判断部と、
前記コマンド判断部が前記コマンドがフィールドの読み出しコマンドであると判断した際に、読み出し要求がなされたフィールドの誤り検出符号を検証する誤り検証部と、
前記誤り検証部による検証により、読み出し要求がなされた全フィールドが正常であると判断された場合には、全フィールドが正常であることを示すデータを出力する出力制御部とを有する、
ことを特徴とするＩＣカード。
【請求項２２】
複数個の誤り検出符号が付されたフィールドからなる、透過型構造のファイルが格納されたＩＣカードであって、
外部から受信したコマンドの種類を判断するコマンド判断部と、
前記コマンド判断部が前記コマンドがフィールドの読み出しコマンドであると判断した際に、レスポンスの返送に先立ち、読み出し要求がなされた全てのフィールドの誤り検出符号を検証する誤り検証部と、
前記誤り検証部による検証により、少なくとも一つのフィールドが異常であると判断された場合には、読み出し要求がなされたフィールド中に異常なフィールドが含まれる旨の情報を、フィールドのデータを出力するよりも前に出力する出力制御部とを有する、
ことを特徴とするＩＣカード。
【請求項２３】
複数個の誤り検出符号が付されたフィールドからなる、透過型構造のファイルが格納されたＩＣカードであって、
外部から受信したコマンドの種類を判断するコマンド判断部と、
前記コマンド判断部が前記コマンドがフィールドの読み出しコマンドであると判断した際に、レスポンスの返送に先立ち、読み出し要求がなされた全てのフィールドの誤り検出符号を検証する誤り検証部と、
前記誤り検証部による検証により、少なくとも一つのフィールドが異常であると判断された場合には、前記誤り検証部により異常と判断されたフィールドの位置情報を、フィールドのデータを出力するよりも前に出力する出力制御部とを有する、
ことを特徴とするＩＣカード。
【請求項２４】
複数個の誤り検出符号が付されたフィールドからなる、透過型構造のファイルが格納されたＩＣカードであって、
外部から受信したコマンドの種類を判断するコマンド判断部と、
前記コマンド判断部が前記コマンドがフィールドの書き込みコマンドであると判断した際に、該コマンドとともに送信される所定のデータ長を有するデータの誤り検出符号を計算し、該計算した誤り検出符号を前記所定のデータ長を有するデータの直後に付して書き込みを行う書き込み部とを有する、
ことを特徴とするＩＣカード。
【請求項２５】
複数個の誤り訂正符号が付されたフィールドからなる、透過型構造のファイルが格納されたＩＣカードであって、
外部から受信したコマンドの種類を判断するコマンド判断部と、
前記コマンド判断部が前記コマンドがフィールドの読み出しコマンドであると判断した際に、読み出し要求がなされたフィールドの誤り訂正の有無を検証する誤り訂正検証部と、
前記誤り訂正検証部により誤り訂正無しと判断されたフィールドについては、該フィールドのデータが誤り訂正のなされていないデータであることを示す専用のタグを付したデータを出力し、誤り訂正有りと判断されたフィールドについては、該フィールドのデータが誤り訂正のなされたデータであることを示す専用のタグを付したデータを出力する出力制御部とを有する、
ことを特徴とするＩＣカード。
【請求項２６】
複数個の誤り訂正符号が付されたフィールドからなる、透過型構造のファイルが格納されたＩＣカードであって、
外部から受信したコマンドの種類を判断するコマンド判断部と、
前記コマンド判断部が前記コマンドがフィールドの読み出しコマンドであると判断した際に、読み出し要求がなされたフィールドの誤り訂正の有無を検証する誤り訂正検証部と、
前記誤り訂正検証部による検証により、読み出し要求がなされた全てのフィールドのうち、少なくとも一つのフィールドが誤り訂正有りと判断された場合には、前記誤り訂正検証部により誤り訂正有りと判断されたフィールドの位置情報を示すデータを出力する出力制御部とを有する、
ことを特徴とするＩＣカード。
【請求項２７】
複数個の誤り訂正符号が付されたフィールドからなる、透過型構造のファイルが格納されたＩＣカードであって、
外部から受信したコマンドの種類を判断するコマンド判断部と、
前記コマンド判断部が前記コマンドがフィールドの読み出しコマンドであると判断した際に、読み出し要求がなされたフィールドの誤り訂正の有無を検証する誤り訂正検証部と、
前記誤り訂正検証部による検証により、読み出し要求がなされた全フィールドが誤り訂正無しと判断された場合には、全フィールドが誤り訂正無しであることを示すデータを出力する出力制御部とを有する、
ことを特徴とするＩＣカード。
【請求項２８】
複数個の誤り訂正符号が付されたフィールドからなる、透過型構造のファイルが格納されたＩＣカードであって、
外部から受信したコマンドの種類を判断するコマンド判断部と、
前記コマンド判断部が前記コマンドがフィールドの読み出しコマンドであると判断した際に、レスポンスの返送に先立ち、読み出し要求がなされた全てのフィールドの、誤り訂正の有無を検証する誤り訂正検証部と、
前記誤り訂正検証部による検証により、少なくとも一つのフィールドが誤り訂正有りと判断された場合には、読み出し要求がなされたフィールド中に誤り訂正がなされたフィールドが含まれる旨の情報を、フィールドのデータを出力するよりも前に出力する出力制御部とを有する、
ことを特徴とするＩＣカード。
【請求項２９】
複数個の誤り訂正符号が付されたフィールドからなる、透過型構造のファイルが格納されたＩＣカードであって、
外部から受信したコマンドの種類を判断するコマンド判断部と、
前記コマンド判断部が前記コマンドがフィールドの読み出しコマンドであると判断した際に、レスポンスの返送に先立ち、読み出し要求がなされた全てのフィールドの、誤り訂正の有無を検証する誤り訂正検証部と、
前記誤り訂正検証部による検証により、少なくとも一つのフィールドが誤り訂正有りと判断された場合には、前記誤り訂正検証部により誤り訂正有りと判断されたフィールドの位置情報を、フィールドのデータを出力するよりも前に出力する出力制御部とを有する、
ことを特徴とするＩＣカード。
【請求項３０】
複数個の誤り検出符号が付されたレコードからなる、レコード型構造のファイルで格納されたデータを外部装置に出力するデータ出力方法において、
外部装置に出力するレコードの誤り検出符号を検証する誤り検証ステップと、
前記誤り検証工程により正常と判断されたレコードを構成するデータのみを出力する出力制御ステップとを含む、
ことを特徴とするデータ出力方法。
【請求項３１】
複数個の誤り検出符号が付されたレコードからなる、レコード型構造のファイルで格納されたデータを外部装置に出力するデータ出力方法において、
外部装置に出力するレコードの誤り検出符号を検証する誤り検証ステップと、
前記誤り検証ステップにより正常と判断されたレコードについては、該レコードを構成するデータを出力し、異常と判断されたレコードについては、異常が検出されたことを示す専用のタグを付したデータを出力する出力制御ステップとを含む、
ことを特徴とするデータ出力方法。
【請求項３２】
請求項３１に記載のデータ出力方法において、
前記出力制御ステップは、前記異常と判断されたレコードに対して、異常が検出されたことを示す専用のタグと，データ本体の長さを示す長さ部と，異常の検出されたレコードのタグ情報を含むデータ本体部とからなるデータを出力する、
ことを特徴とするデータ出力方法。
【請求項３３】
請求項３１に記載のデータ出力方法において、
前記出力制御ステップは、前記異常と判断されたレコードに対して、異常が検出されたことを示す専用のタグと，データ本体の長さを示す長さ部と，異常の検出されたレコードの全情報を含むデータ本体部とからなるデータを出力する、
ことを特徴とするデータ出力方法。
【請求項３４】
請求項３１に記載のデータ出力方法において、
前記出力制御ステップは、異常の検出されたレコードのタグ部と長さ部とデータ本体部からなるＴＬＶ構造のデータを、前記異常が検出されたことを示す専用のタグが付されたデータのデータ本体部として出力する、
ことを特徴とするデータ出力方法。
【請求項３５】
請求項３１から請求項３４の何れかに記載のデータ出力方法において、
前記出力制御ステップは、前記異常が検出されたことを示す専用のタグとして、レコードに使用されるタグとは異なる、別のクラスのタグを割り当てる、
ことを特徴とするデータ出力方法。
【請求項３６】
請求項３１から請求項３４の何れかに記載のデータ出力方法において、
前記出力制御ステップは、前記異常が検出されたことを示す専用のタグとして、所定の固有値からなるタグを使用する、
ことを特徴とするデータ出力方法。
【請求項３７】
複数個の誤り検出符号が付されたレコードからなる、レコード型構造のファイルで格納されたデータを外部装置に出力するデータ出力方法において、
外部装置に出力するレコードの誤り検出符号を検証する誤り検証ステップと、
前記誤り検証ステップにより正常と判断されたレコードについては、該レコードを構成するデータを出力し、異常と判断されたレコードについては、異常と判断されたレコードのデータ本体部を伴わない、タグ部と長さ部とからなるデータを出力する出力制御ステップとを含む、
ことを特徴とするデータ出力方法。
【請求項３８】
複数個の誤り検出符号が付されたレコードからなる、レコード型構造のファイルで格納されたデータを外部装置に出力するデータ出力方法において、
外部装置に出力するレコードの誤り検出符号を検証する誤り検証ステップと、
前記誤り検証ステップによる検証により、読み出し要求がなされた全てのレコードのうち、少なくとも一つのレコードが異常であると判断された場合には、前記誤り検証ステップにより異常と判断されたレコードのタグ情報を示すデータを出力する出力制御ステップとを含む、
ことを特徴とするデータ出力方法。
【請求項３９】
複数個の誤り検出符号が付されたレコードからなる、レコード型構造のファイルで格納されたデータを外部装置に出力するデータ出力方法において、
レスポンスの返送に先立ち、外部装置に出力する全てのレコードの誤り検出符号を検証する誤り検証ステップと、
前記誤り検証ステップにより、少なくとも一つのレコードが異常であると判断された場合には、読み出し要求がなされたレコード中に異常なレコードが含まれる旨の情報を、レコードのデータを出力するよりも前に出力する出力制御ステップとを含む、
ことを特徴とするデータ出力方法。
【請求項４０】
複数個の誤り検出符号が付されたレコードからなる、レコード型構造のファイルで格納されたデータを外部装置に出力するデータ出力方法において、
レスポンスの返送に先立ち、外部装置に出力する全てのレコードの誤り検出符号を検証する誤り検証ステップと、
前記誤り検証ステップにより、少なくとも一つのレコードが異常であると判断された場合には、前記誤り検証ステップにより異常と判断されたレコードのタグ情報を、レコードのデータを出力するよりも前に出力する出力制御ステップとを含む、
ことを特徴とするデータ出力方法。
【請求項４１】
複数個の誤り訂正符号が付されたレコードからなる、レコード型構造のファイルで格納されたデータを外部装置に出力するデータ出力方法において、
外部装置に出力するレコードの誤り訂正の有無を検証する誤り訂正検証ステップと、
前記誤り訂正検証ステップにより誤り訂正無しと判断されたレコードについては、該レコードを構成するデータを出力し、誤り訂正有りと判断されたレコードについては、誤り訂正がなされたことを示す専用のタグを付したデータを出力する出力制御ステップとを含む、
ことを特徴とするデータ出力方法。
【請求項４２】
複数個の誤り訂正符号が付されたレコードからなる、レコード型構造のファイルで格納されたデータを外部装置に出力するデータ出力方法において、
外部装置に出力するレコードの誤り訂正の有無を検証する誤り訂正検証ステップと、
前記誤り訂正検証ステップによる検証により、読み出し要求がなされた全てのレコードのうち、少なくとも一つのレコードが誤り訂正有りと判断された場合には、前記誤り訂正検証ステップにより誤り訂正有りと判断されたレコードのタグ情報を示すデータを出力する出力制御ステップとを含む、
ことを特徴とするデータ出力方法。
【請求項４３】
複数個の誤り訂正符号が付されたレコードからなる、レコード型構造のファイルで格納されたデータを外部装置に出力するデータ出力方法において、
レスポンスの返送に先立ち、外部装置に出力する全てのレコードの、誤り訂正の有無を検証する誤り訂正検証ステップと、
前記誤り訂正検証ステップにより、少なくとも一つのレコードが誤り訂正有りと判断された場合には、読み出し要求がなされたレコード中に誤り訂正がなされたレコードが含まれる旨の情報を、レコードのデータを出力するよりも前に出力する出力制御ステップとを含む、
ことを特徴とするデータ出力方法。
【請求項４４】
複数個の誤り訂正符号が付されたレコードからなる、レコード型構造のファイルで格納されたデータを外部装置に出力するデータ出力方法において、
レスポンスの返送に先立ち、外部装置に出力する全てのレコードの、誤り訂正の有無を検証する誤り訂正検証ステップと、
前記誤り訂正検証ステップにより、少なくとも一つのレコードが誤り訂正有りと判断された場合には、前記誤り訂正検証ステップにより誤り訂正有りと判断されたレコードのタグ情報を、レコードのデータを出力するよりも前に出力する出力制御ステップとを含む、
ことを特徴とするデータ出力方法。
【請求項４５】
複数個の誤り検出符号が付されたフィールドからなる、透過型構造のファイルで格納されたデータを外部装置に出力するデータ出力方法において、
外部装置に出力するフィールドの誤り検出符号を検証する誤り検証ステップと、
前記誤り検証ステップにより正常と判断されたフィールドについては、該フィールドのデータが正常であることを示す専用のタグを付したデータを出力し、異常と判断されたフィールドについては、該フィールドのデータが異常であることを示す専用のタグを付したデータを出力する出力制御ステップとを含む、
ことを特徴とするデータ出力方法。
【請求項４６】
請求項４５に記載のデータ出力方法において、
前記出力制御ステップは、前記異常と判断されたフィールドに対して、該フィールドのデータが異常であることを示す専用のタグと，データ本体の長さを示した長さ部と，該フィールドの全データを含むデータ本体部とからなるデータを出力する、
ことを特徴とするデータ出力方法。
【請求項４７】
請求項４５に記載のデータ出力方法において、
前記出力制御ステップは、前記異常と判断されたフィールドに対して、該フィールドのデータが異常であることを示す専用のタグと，データ本体の長さを示した長さ部と，該フィールドのデータの長さ情報で構成されたデータ本体部とからなるデータを出力する、
ことを特徴とするデータ出力方法。
【請求項４８】
請求項４５に記載のデータ出力方法において、
前記出力制御ステップは、前記異常と判断されたフィールドに対して、該フィールドのデータが異常であることを示す専用のタグと，該フィールドのデータ長を示す情報とからなるデータを出力する、
ことを特徴とするデータ出力方法。
【請求項４９】
複数個の誤り検出符号が付されたフィールドからなる、透過型構造のファイルで格納されたデータを外部装置に出力するデータ出力方法において、
外部装置に出力するフィールドの誤り検出符号を検証する誤り検証ステップと、
前記誤り検証ステップによる検証により、読み出し要求がなされた全てのフィールドのうち、少なくとも一つのフィールドが異常であると判断された場合には、前記誤り検証ステップにより異常と判断されたフィールドの位置情報を示すデータを出力する出力制御ステップとを含む、
ことを特徴とするデータ出力方法。
【請求項５０】
複数個の誤り検出符号が付されたフィールドからなる、透過型構造のファイルで格納されたデータを外部装置に出力するデータ出力方法において、
外部装置に出力するフィールドの誤り検出符号を検証する誤り検証ステップと、
前記誤り検証ステップによる検証により、読み出し要求がなされた全フィールドが正常であると判断された場合には、全フィールドが正常であることを示すデータを出力する出力制御ステップとを含む、
ことを特徴とするデータ出力方法。
【請求項５１】
複数個の誤り検出符号が付されたフィールドからなる、透過型構造のファイルで格納されたデータを外部装置に出力するデータ出力方法において、
レスポンスの返送に先立ち、外部装置に出力する全てのフィールドの誤り検出符号を検証する誤り検証ステップと、
前記誤り検証ステップにより、少なくとも一つのフィールドが異常であると判断された場合には、読み出し要求がなされたフィールド中に異常なフィールドが含まれる旨の情報を、フィールドのデータを出力するよりも前に出力する出力制御ステップとを含む、
ことを特徴とするデータ出力方法。
【請求項５２】
複数個の誤り検出符号が付されたフィールドからなる、透過型構造のファイルで格納されたデータを外部装置に出力するデータ出力方法において、
レスポンスの返送に先立ち、外部装置に出力する全てのフィールドの誤り検出符号を検証する誤り検証ステップと、
前記誤り検証ステップにより、少なくとも一つのフィールドが異常であると判断された場合には、前記誤り検証ステップにより異常と判断されたフィールドの位置情報を、フィールドのデータを出力するよりも前に出力する出力制御ステップとを含む、
ことを特徴とするデータ出力方法。
【請求項５３】
複数個の誤り検出符号が付されたフィールドからなる、透過型構造のファイル形式でデータを格納するデータ格納方法において、
外部装置から送信される、所定のデータ長を有するデータを受信する受信ステップと、
前記受信ステップで受信した所定のデータ長を有するデータの誤り検出符号を計算し、該計算した誤り検出符号を前記所定のデータ長を有するデータの直後に付して書き込みを行う書き込みステップを含む、
ことを特徴とするデータ格納方法。
【請求項５４】
複数個の誤り訂正符号が付されたフィールドからなる、透過型構造のファイルで格納されたデータを外部装置に出力するデータ出力方法において、
外部装置に出力するフィールドの誤り訂正の有無を検証する誤り訂正検証ステップと、
前記誤り訂正検証ステップにより誤り訂正無しと判断されたフィールドについては、該フィールドのデータが誤り訂正のなされていないデータであることを示す専用のタグを付したデータを出力し、誤り訂正有りと判断されたフィールドについては、該フィールドのデータが誤り訂正のなされたデータであることを示す専用のタグを付したデータを出力する出力制御ステップとを含む、
ことを特徴とするデータ出力方法。
【請求項５５】
複数個の誤り訂正符号が付されたフィールドからなる、透過型構造のファイルで格納されたデータを外部装置に出力するデータ出力方法において、
外部装置に出力するフィールドの誤り訂正の有無を検証する誤り訂正検証ステップと、
前記誤り訂正検証ステップによる検証により、読み出し要求がなされた全てのフィールドのうち、少なくとも一つのフィールドが誤り訂正有りと判断された場合には、前記誤り訂正検証ステップにより誤り訂正有りと判断されたフィールドの位置情報を示すデータを出力する出力制御ステップとを含む、
ことを特徴とするデータ出力方法。
【請求項５６】
複数個の誤り訂正符号が付されたフィールドからなる、透過型構造のファイルで格納されたデータを外部装置に出力するデータ出力方法において、
外部装置に出力するフィールドの誤り訂正の有無を検証する誤り訂正検証ステップと、
前記誤り訂正検証ステップによる検証により、読み出し要求がなされた全フィールドが誤り訂正無しと判断された場合には、全フィールドが誤り訂正無しであることを示すデータを出力する出力制御ステップとを含む、
ことを特徴とするデータ出力方法。
【請求項５７】
複数個の誤り訂正符号が付されたフィールドからなる、透過型構造のファイルで格納されたデータを外部装置に出力するデータ出力方法において、
レスポンスの返送に先立ち、外部装置に出力する全てのフィールドの、誤り訂正の有無を検証する誤り訂正検証ステップと、
前記誤り訂正検証ステップにより、少なくとも一つのフィールドが誤り訂正有りと判断された場合には、読み出し要求がなされたフィールド中に誤り訂正がなされたフィールドが含まれる旨の情報を、フィールドのデータを出力するよりも前に出力する出力制御ステップとを含む、
ことを特徴とするデータ出力方法。
【請求項５８】
複数個の誤り訂正符号が付されたフィールドからなる、透過型構造のファイルで格納されたデータを外部装置に出力するデータ出力方法において、
レスポンスの返送に先立ち、外部装置に出力する全てのフィールドの、誤り訂正の有無を検証する誤り訂正検証ステップと、
前記誤り訂正検証ステップにより、少なくとも一つのフィールドが誤り訂正有りと判断された場合には、前記誤り訂正検証ステップにより誤り訂正有りと判断されたフィールドの位置情報を、フィールドのデータを出力するよりも前に出力する出力制御ステップとを含む、
ことを特徴とするデータ出力方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＩＣカードに関し、特にＩＣカードに格納されたデータを端末に対して送信する際のデータの出力方法に関するものである。
【背景技術】
【０００２】
近年、磁気カードに代わるハイセキュリティな次世代カードとしてＩＣカードが実用化されつつあるが、ＩＣカードの低価格化が求められる一方で、その用途の広がりに伴い、ＩＣカードに内蔵される不揮発性メモリの大容量化が要求されている。例えば、不揮発性メモリに指紋や顔画像等の生体認証用データを格納する場合には、１０Ｋバイト以上のデータを一つのファイルに格納することが必要となっている。
【０００３】
この不揮発性メモリの大容量化は、一つのアプリケーションが扱うデータの容量が大容量化しているとともに、１枚のＩＣカードの多目的利用が志向されていることも要因の１つである。そして、このように不揮発性メモリに格納されるデータ容量が大きくなると、その中の一つのセルがデータ化けを起こす確率も当然高くなる。そのため、不揮発性メモリに格納されたデータにデータ化けが起こった際の対策が大変重要となる。
【０００４】
現在、ＩＣカードからのデータ読出し時にＩＣカードの不揮発性メモリに格納されたデータから異常が検出された場合には、カードからのレスポンスの返し方として、国際規格で以下のような規定がなされている。（下記の非特許文献参照。）この国際規格に沿った従来のＩＣカードでは、格納されるデータの一部が破壊されている場合、そのファイル全体を読み出そうとすると、下記のいずれかの応答を行うことになる。
（１）データは一切読み出さず、データ化けを示すエラーステータスだけを返す。
（２）全データを読み出した後、データ化けを起こしているデータが存在していることを示す警告ステータスを返す。
【非特許文献１】「アイエスオー／アイイーシー７８１６−４（ISO/IEC 7816-4）」，１９９５年版，５．３節〜５．４節
【特許文献１】特開平５−１２８３１８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、前記国際規格に沿った従来のＩＣカードでは以下のような問題点がある。
先ず、前記（１）の場合には、データの一部が壊れていても残りのデータは有用であるケースが多いにもかかわらず、データが一切読み出されないために、有用であるデータまでが読み出されないという問題点がある。
【０００６】
また、前記（２）の場合には、読み出した大容量のデータの中でどの部分にデータ化けがあるかを全く特定できないという問題点がある。例えば、ＩＣカードから読み出したデータを端末のディスプレイに表示するような場合には、データは全て表示されるものの、データのどこかに誤りがあって、かつその場所を特定できないという、ユーザに対して不親切な情報の提供の仕方しかできない。また、扱う情報量が多ければ多いほど、そのデメリットは顕著となる。
【０００７】
本発明は、前記問題点に鑑みてなされたものであり、ＩＣカードの不揮発性メモリに格納されたデータに、データ化けの起ったデータが含まれている場合であっても、データ化けの起ったデータ部分を特定することができるとともに、端末側で有用なデータをＩＣカード側から端末に送信することのできるＩＣカードを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記の課題を解決するため、本発明の請求項１に記載のＩＣカードは、複数個の誤り検出符号が付されたレコードからなる、レコード型構造のファイルが格納されたＩＣカードであって、外部から受信したコマンドの種類を判断するコマンド判断部と、前記コマンド判断部が前記コマンドがレコードの読み出しコマンドであると判断した際に、読み出し要求がなされたレコードの誤り検出符号を検証する誤り検証部と、前記誤り検証部により正常と判断されたレコードを構成するデータのみを出力する出力制御部とを有することを特徴とするものである。
【０００９】
また、本発明の請求項２に記載のＩＣカードは、複数個の誤り検出符号が付されたレコードからなる、レコード型構造のファイルが格納されたＩＣカードであって、外部から受信したコマンドの種類を判断するコマンド判断部と、前記コマンド判断部が前記コマンドがレコードの読み出しコマンドであると判断した際に、読み出し要求がなされたレコードの誤り検出符号を検証する誤り検証部と、前記誤り検証部により正常と判断されたレコードについては、該レコードを構成するデータを出力し、異常と判断されたレコードについては、異常が検出されたことを示す専用のタグを付したデータを出力する出力制御部とを有することを特徴とするものである。
【００１０】
また、本発明の請求項３に記載のＩＣカードは、請求項２に記載のＩＣカードにおいて、前記出力制御部が、前記異常と判断されたレコードに対して、異常が検出されたことを示す専用のタグと，データ本体の長さを示す長さ部と，異常の検出されたレコードのタグ情報を含むデータ本体部とからなるデータを出力することを特徴とするものである。
【００１１】
また、本発明の請求項４に記載のＩＣカードは、請求項２に記載のＩＣカードにおいて、前記出力制御部が、前記異常と判断されたレコードに対して、異常が検出されたことを示す専用のタグと，データ本体の長さを示す長さ部と，異常の検出されたレコードの全情報を含むデータ本体部とからなるデータを出力することを特徴とするものである。
【００１２】
また、本発明の請求項５に記載のＩＣカードは、請求項４に記載のＩＣカードにおいて、前記出力制御部が、異常の検出されたレコードのタグ部と長さ部とデータ本体部からなるＴＬＶ構造のデータを、前記異常が検出されたことを示す専用のタグが付されたデータのデータ本体部として出力することを特徴とするものである。
【００１３】
また、本発明の請求項６に記載のＩＣカードは、請求項２から請求項５の何れかに記載のＩＣカードにおいて、前記出力制御部が、前記異常が検出されたことを示す専用のタグとして、レコードに使用されるタグとは異なる、別のクラスのタグを割り当てることを特徴とするものである。
【００１４】
また、本発明の請求項７に記載のＩＣカードは、請求項２から請求項５の何れかに記載のＩＣカードにおいて、前記出力制御部が、前記異常が検出されたことを示す専用のタグとして、所定の固有値からなるタグを使用することを特徴とするものである。
【００１５】
また、本発明の請求項８に記載のＩＣカードは、複数個の誤り検出符号が付されたレコードからなる、レコード型構造のファイルが格納されたＩＣカードであって、外部から受信したコマンドの種類を判断するコマンド判断部と、前記コマンド判断部が前記コマンドがレコードの読み出しコマンドであると判断した際に、読み出し要求がなされたレコードの誤り検出符号を検証する誤り検証部と、前記誤り検証部により正常と判断されたレコードについては、該レコードを構成するデータを出力し、異常と判断されたレコードについては、異常と判断されたレコードのデータ本体部を伴わない、タグ部と長さ部とからなるデータを出力する出力制御部とを有することを特徴とするものである。
【００１６】
また、本発明の請求項９に記載のＩＣカードは、複数個の誤り検出符号が付されたレコードからなる、レコード型構造のファイルが格納されたＩＣカードであって、外部から受信したコマンドの種類を判断するコマンド判断部と、前記コマンド判断部が前記コマンドがレコードの読み出しコマンドであると判断した際に、読み出し要求がなされたレコードの誤り検出符号を検証する誤り検証部と、前記誤り検証部による検証により、読み出し要求がなされた全てのレコードのうち、少なくとも一つのレコードが異常であると判断された場合には、前記誤り検証部により異常と判断されたレコードのタグ情報を示すデータを出力する出力制御部とを有することを特徴とするものである。
【００１７】
また、本発明の請求項１０に記載のＩＣカードは、複数個の誤り検出符号が付されたレコードからなる、レコード型構造のファイルが格納されたＩＣカードであって、外部から受信したコマンドの種類を判断するコマンド判断部と、前記コマンド判断部が前記コマンドがレコードの読み出しコマンドであると判断した際に、レスポンスの返送に先立ち、読み出し要求がなされた全てのレコードの誤り検出符号を検証する誤り検証部と、前記誤り検証部による検証により、少なくとも一つのレコードが異常であると判断された場合には、読み出し要求がなされたレコード中に異常なレコードが含まれる旨の情報を、レコードのデータを出力するよりも前に出力する出力制御部とを有することを特徴とするものである。
【００１８】
また、本発明の請求項１１に記載のＩＣカードは、複数個の誤り検出符号が付されたレコードからなる、レコード型構造のファイルが格納されたＩＣカードであって、外部から受信したコマンドの種類を判断するコマンド判断部と、前記コマンド判断部が前記コマンドがレコードの読み出しコマンドであると判断した際に、レスポンスの返送に先立ち、読み出し要求がなされた全てのレコードの誤り検出符号を検証する誤り検証部と、前記誤り検証部による検証により、少なくとも一つのレコードが異常であると判断された場合には、前記誤り検証部により異常と判断されたレコードのタグ情報を、レコードのデータを出力するよりも前に出力する出力制御部とを有することを特徴とするものである。
【００１９】
また、本発明の請求項１２に記載のＩＣカードは、複数個の誤り訂正符号が付されたレコードからなる、レコード型構造のファイルが格納されたＩＣカードであって、外部から受信したコマンドの種類を判断するコマンド判断部と、前記コマンド判断部が前記コマンドがレコードの読み出しコマンドであると判断した際に、読み出し要求がなされたレコードの誤り訂正の有無を検証する誤り訂正検証部と、前記誤り訂正検証部により誤り訂正無しと判断されたレコードについては、該レコードを構成するデータを出力し、誤り訂正有りと判断されたレコードについては、誤り訂正がなされたことを示す専用のタグを付したデータを出力する出力制御部とを有することを特徴とするものである。
【００２０】
また、本発明の請求項１３に記載のＩＣカードは、複数個の誤り訂正符号が付されたレコードからなる、レコード型構造のファイルが格納されたＩＣカードであって、外部から受信したコマンドの種類を判断するコマンド判断部と、前記コマンド判断部が前記コマンドがレコードの読み出しコマンドであると判断した際に、読み出し要求がなされたレコードの誤り訂正の有無を検証する誤り訂正検証部と、前記誤り訂正検証部による検証により、読み出し要求がなされた全てのレコードのうち、少なくとも一つのレコードが誤り訂正有りと判断された場合には、前記誤り訂正検証部により誤り訂正有りと判断されたレコードのタグ情報を示すデータを出力する出力制御部とを有することを特徴とするものである。
【００２１】
また、本発明の請求項１４に記載のＩＣカードは、複数個の誤り訂正符号が付されたレコードからなる、レコード型構造のファイルが格納されたＩＣカードであって、外部から受信したコマンドの種類を判断するコマンド判断部と、前記コマンド判断部が前記コマンドがレコードの読み出しコマンドであると判断した際に、レスポンスの返送に先立ち、読み出し要求がなされた全てのレコードの、誤り訂正の有無を検証する誤り訂正検証部と、前記誤り訂正検証部による検証により、少なくとも一つのレコードが誤り訂正有りと判断された場合には、読み出し要求がなされたレコード中に誤り訂正がなされたレコードが含まれる旨の情報を、レコードのデータを出力するよりも前に出力する出力制御部とを有することを特徴とするものである。
【００２２】
また、本発明の請求項１５に記載のＩＣカードは、複数個の誤り訂正符号が付されたレコードからなる、レコード型構造のファイルが格納されたＩＣカードであって、外部から受信したコマンドの種類を判断するコマンド判断部と、前記コマンド判断部が前記コマンドがレコードの読み出しコマンドであると判断した際に、レスポンスの返送に先立ち、読み出し要求がなされた全てのレコードの、誤り訂正の有無を検証する誤り訂正検証部と、前記誤り訂正検証部による検証により、少なくとも一つのレコードが誤り訂正有りと判断された場合には、前記誤り訂正検証部により誤り訂正有りと判断されたレコードのタグ情報を、レコードのデータを出力するよりも前に出力する出力制御部とを有することを特徴とするものである。
【００２３】
また、本発明の請求項１６に記載のＩＣカードは、複数個の誤り検出符号が付されたフィールドからなる、透過型構造のファイルが格納されたＩＣカードであって、外部から受信したコマンドの種類を判断するコマンド判断部と、前記コマンド判断部が前記コマンドがフィールドの読み出しコマンドであると判断した際に、読み出し要求がなされたフィールドの誤り検出符号を検証する誤り検証部と、前記誤り検証部により正常と判断されたフィールドについては、該フィールドのデータが正常であることを示す専用のタグを付したデータを出力し、異常と判断されたフィールドについては、該フィールドのデータが異常であることを示す専用のタグを付したデータを出力する出力制御部とを有することを特徴とするものである。
【００２４】
また、本発明の請求項１７に記載のＩＣカードは、請求項１６に記載のＩＣカードにおいて、前記出力制御部が、前記異常と判断されたフィールドに対して、該フィールドのデータが異常であることを示す専用のタグと，データ本体の長さを示した長さ部と，該フィールドの全データを含むデータ本体部とからなるデータを出力することを特徴とするものである。
【００２５】
また、本発明の請求項１８に記載のＩＣカードは、請求項１６に記載のＩＣカードにおいて、前記出力制御部が、前記異常と判断されたフィールドに対して、該フィールドのデータが異常であることを示す専用のタグと，データ本体の長さを示した長さ部と，該フィールドのデータの長さ情報で構成されたデータ本体部とからなるデータを出力することを特徴とするものである。
【００２６】
また、本発明の請求項１９に記載のＩＣカードは、請求項１６に記載のＩＣカードにおいて、前記出力制御部が、前記異常と判断されたフィールドに対して、該フィールドのデータが異常であることを示す専用のタグと，該フィールドのデータ長を示す情報とからなるデータを出力することを特徴とするものである。
【００２７】
また、本発明の請求項２０に記載のＩＣカードは、複数個の誤り検出符号が付されたフィールドからなる、透過型構造のファイルが格納されたＩＣカードであって、外部から受信したコマンドの種類を判断するコマンド判断部と、前記コマンド判断部が前記コマンドがフィールドの読み出しコマンドであると判断した際に、読み出し要求がなされたフィールドの誤り検出符号を検証する誤り検証部と、前記誤り検証部による検証により、読み出し要求がなされた全てのフィールドのうち、少なくとも一つのフィールドが異常であると判断された場合には、前記誤り検証部により異常と判断されたフィールドの位置情報を示すデータを出力する出力制御部とを有することを特徴とするものである。
【００２８】
また、本発明の請求項２１に記載のＩＣカードは、複数個の誤り検出符号が付されたフィールドからなる、透過型構造のファイルが格納されたＩＣカードであって、外部から受信したコマンドの種類を判断するコマンド判断部と、前記コマンド判断部が前記コマンドがフィールドの読み出しコマンドであると判断した際に、読み出し要求がなされたフィールドの誤り検出符号を検証する誤り検証部と、前記誤り検証部による検証により、読み出し要求がなされた全フィールドが正常であると判断された場合には、全フィールドが正常であることを示すデータを出力する出力制御部とを有することを特徴とするものである。
【００２９】
また、本発明の請求項２２に記載のＩＣカードは、複数個の誤り検出符号が付されたフィールドからなる、透過型構造のファイルが格納されたＩＣカードであって、外部から受信したコマンドの種類を判断するコマンド判断部と、前記コマンド判断部が前記コマンドがフィールドの読み出しコマンドであると判断した際に、レスポンスの返送に先立ち、読み出し要求がなされた全てのフィールドの誤り検出符号を検証する誤り検証部と、前記誤り検証部による検証により、少なくとも一つのフィールドが異常であると判断された場合には、読み出し要求がなされたフィールド中に異常なフィールドが含まれる旨の情報を、フィールドのデータを出力するよりも前に出力する出力制御部とを有することを特徴とするものである。
【００３０】
また、本発明の請求項２３に記載のＩＣカードは、複数個の誤り検出符号が付されたフィールドからなる、透過型構造のファイルが格納されたＩＣカードであって、外部から受信したコマンドの種類を判断するコマンド判断部と、前記コマンド判断部が前記コマンドがフィールドの読み出しコマンドであると判断した際に、レスポンスの返送に先立ち、読み出し要求がなされた全てのフィールドの誤り検出符号を検証する誤り検証部と、前記誤り検証部による検証により、少なくとも一つのフィールドが異常であると判断された場合には、前記誤り検証部により異常と判断されたフィールドの位置情報を、フィールドのデータを出力するよりも前に出力する出力制御部とを有することを特徴とするものである。
【００３１】
また、本発明の請求項２４に記載のＩＣカードは、複数個の誤り検出符号が付されたフィールドからなる、透過型構造のファイルが格納されたＩＣカードであって、外部から受信したコマンドの種類を判断するコマンド判断部と、前記コマンド判断部が前記コマンドがフィールドの書き込みコマンドであると判断した際に、該コマンドとともに送信される所定のデータ長を有するデータの誤り検出符号を計算し、該計算した誤り検出符号を前記所定のデータ長を有するデータの直後に付して書き込みを行う書き込み部とを有することを特徴とするものである。
【００３２】
また、本発明の請求項２５に記載のＩＣカードは、複数個の誤り訂正符号が付されたフィールドからなる、透過型構造のファイルが格納されたＩＣカードであって、外部から受信したコマンドの種類を判断するコマンド判断部と、前記コマンド判断部が前記コマンドがフィールドの読み出しコマンドであると判断した際に、読み出し要求がなされたフィールドの誤り訂正の有無を検証する誤り訂正検証部と、前記誤り訂正検証部により誤り訂正無しと判断されたフィールドについては、該フィールドのデータが誤り訂正のなされていないデータであることを示す専用のタグを付したデータを出力し、誤り訂正有りと判断されたフィールドについては、該フィールドのデータが誤り訂正のなされたデータであることを示す専用のタグを付したデータを出力する出力制御部とを有することを特徴とするものである。
【００３３】
また、本発明の請求項２６に記載のＩＣカードは、複数個の誤り訂正符号が付されたフィールドからなる、透過型構造のファイルが格納されたＩＣカードであって、外部から受信したコマンドの種類を判断するコマンド判断部と、前記コマンド判断部が前記コマンドがフィールドの読み出しコマンドであると判断した際に、読み出し要求がなされたフィールドの誤り訂正の有無を検証する誤り訂正検証部と、前記誤り訂正検証部による検証により、読み出し要求がなされた全てのフィールドのうち、少なくとも一つのフィールドが誤り訂正有りと判断された場合には、前記誤り訂正検証部により誤り訂正有りと判断されたフィールドの位置情報を示すデータを出力する出力制御部とを有することを特徴とするものである。
【００３４】
また、本発明の請求項２７に記載のＩＣカードは、複数個の誤り訂正符号が付されたフィールドからなる、透過型構造のファイルが格納されたＩＣカードであって、外部から受信したコマンドの種類を判断するコマンド判断部と、前記コマンド判断部が前記コマンドがフィールドの読み出しコマンドであると判断した際に、読み出し要求がなされたフィールドの誤り訂正の有無を検証する誤り訂正検証部と、前記誤り訂正検証部による検証により、読み出し要求がなされた全フィールドが誤り訂正無しと判断された場合には、全フィールドが誤り訂正無しであることを示すデータを出力する出力制御部とを有することを特徴とするものである。
【００３５】
また、本発明の請求項２８に記載のＩＣカードは、複数個の誤り訂正符号が付されたフィールドからなる、透過型構造のファイルが格納されたＩＣカードであって、外部から受信したコマンドの種類を判断するコマンド判断部と、前記コマンド判断部が前記コマンドがフィールドの読み出しコマンドであると判断した際に、レスポンスの返送に先立ち、読み出し要求がなされた全てのフィールドの、誤り訂正の有無を検証する誤り訂正検証部と、前記誤り訂正検証部による検証により、少なくとも一つのフィールドが誤り訂正有りと判断された場合には、読み出し要求がなされたフィールド中に誤り訂正がなされたフィールドが含まれる旨の情報を、フィールドのデータを出力するよりも前に出力する出力制御部とを有することを特徴とするものである。
【００３６】
また、本発明の請求項２９に記載のＩＣカードは、複数個の誤り訂正符号が付されたフィールドからなる、透過型構造のファイルが格納されたＩＣカードであって、外部から受信したコマンドの種類を判断するコマンド判断部と、前記コマンド判断部が前記コマンドがフィールドの読み出しコマンドであると判断した際に、レスポンスの返送に先立ち、読み出し要求がなされた全てのフィールドの、誤り訂正の有無を検証する誤り訂正検証部と、前記誤り訂正検証部による検証により、少なくとも一つのフィールドが誤り訂正有りと判断された場合には、前記誤り訂正検証部により誤り訂正有りと判断されたフィールドの位置情報を、フィールドのデータを出力するよりも前に出力する出力制御部とを有することを特徴とするものである。
【００３７】
また、本発明の請求項３０に記載のデータ出力方法は、複数個の誤り検出符号が付されたレコードからなる、レコード型構造のファイルで格納されたデータを外部装置に出力するデータ出力方法において、外部装置に出力するレコードの誤り検出符号を検証する誤り検証ステップと、前記誤り検証工程により正常と判断されたレコードを構成するデータのみを出力する出力制御ステップとを含むことを特徴とするものである。
【００３８】
また、本発明の請求項３１に記載のデータ出力方法は、複数個の誤り検出符号が付されたレコードからなる、レコード型構造のファイルで格納されたデータを外部装置に出力するデータ出力方法において、外部装置に出力するレコードの誤り検出符号を検証する誤り検証ステップと、前記誤り検証ステップにより正常と判断されたレコードについては、該レコードを構成するデータを出力し、異常と判断されたレコードについては、異常が検出されたことを示す専用のタグを付したデータを出力する出力制御ステップとを含むことを特徴とするものである。
【００３９】
また、本発明の請求項３２に記載のデータ出力方法は、請求項３１に記載のデータ出力方法において、前記出力制御ステップが、前記異常と判断されたレコードに対して、異常が検出されたことを示す専用のタグと，データ本体の長さを示す長さ部と，異常の検出されたレコードのタグ情報を含むデータ本体部とからなるデータを出力することを特徴とするものである。
【００４０】
また、本発明の請求項３３に記載のデータ出力方法は、請求項３１に記載のデータ出力方法において、前記出力制御ステップが、前記異常と判断されたレコードに対して、異常が検出されたことを示す専用のタグと，データ本体の長さを示す長さ部と，異常の検出されたレコードの全情報を含むデータ本体部とからなるデータを出力することを特徴とするものである。
【００４１】
また、本発明の請求項３４に記載のデータ出力方法は、請求項３１に記載のデータ出力方法において、前記出力制御ステップが、異常の検出されたレコードのタグ部と長さ部とデータ本体部からなるＴＬＶ構造のデータを、前記異常が検出されたことを示す専用のタグが付されたデータのデータ本体部として出力することを特徴とするものである。
【００４２】
また、本発明の請求項３５に記載のデータ出力方法は、請求項３１から請求項３４の何れかに記載のデータ出力方法において、前記出力制御ステップが、前記異常が検出されたことを示す専用のタグとして、レコードに使用されるタグとは異なる、別のクラスのタグを割り当てることを特徴とするものである。
【００４３】
また、本発明の請求項３６に記載のデータ出力方法は、請求項３１から請求項３４の何れかに記載のデータ出力方法において、前記出力制御ステップが、前記異常が検出されたことを示す専用のタグとして、所定の固有値からなるタグを使用することを特徴とするものである。
【００４４】
また、本発明の請求項３７に記載のデータ出力方法は、複数個の誤り検出符号が付されたレコードからなる、レコード型構造のファイルで格納されたデータを外部装置に出力するデータ出力方法において、外部装置に出力するレコードの誤り検出符号を検証する誤り検証ステップと、前記誤り検証ステップにより正常と判断されたレコードについては、該レコードを構成するデータを出力し、異常と判断されたレコードについては、異常と判断されたレコードのデータ本体部を伴わない、タグ部と長さ部とからなるデータを出力する出力制御ステップとを含むことを特徴とするものである。
【００４５】
また、本発明の請求項３８に記載のデータ出力方法は、複数個の誤り検出符号が付されたレコードからなる、レコード型構造のファイルで格納されたデータを外部装置に出力するデータ出力方法において、外部装置に出力するレコードの誤り検出符号を検証する誤り検証ステップと、前記誤り検証ステップによる検証により、読み出し要求がなされた全てのレコードのうち、少なくとも一つのレコードが異常であると判断された場合には、前記誤り検証ステップにより異常と判断されたレコードのタグ情報を示すデータを出力する出力制御ステップとを含むことを特徴とするものである。
【００４６】
また、本発明の請求項３９に記載のデータ出力方法は、複数個の誤り検出符号が付されたレコードからなる、レコード型構造のファイルで格納されたデータを外部装置に出力するデータ出力方法において、レスポンスの返送に先立ち、外部装置に出力する全てのレコードの誤り検出符号を検証する誤り検証ステップと、前記誤り検証ステップにより、少なくとも一つのレコードが異常であると判断された場合には、読み出し要求がなされたレコード中に異常なレコードが含まれる旨の情報を、レコードのデータを出力するよりも前に出力する出力制御ステップとを含むことを特徴とするものである。
【００４７】
また、本発明の請求項４０に記載のデータ出力方法は、複数個の誤り検出符号が付されたレコードからなる、レコード型構造のファイルで格納されたデータを外部装置に出力するデータ出力方法において、レスポンスの返送に先立ち、外部装置に出力する全てのレコードの誤り検出符号を検証する誤り検証ステップと、前記誤り検証ステップにより、少なくとも一つのレコードが異常であると判断された場合には、前記誤り検証ステップにより異常と判断されたレコードのタグ情報を、レコードのデータを出力するよりも前に出力する出力制御ステップとを含むことを特徴とするものである。
【００４８】
また、本発明の請求項４１に記載のデータ出力方法は、複数個の誤り訂正符号が付されたレコードからなる、レコード型構造のファイルで格納されたデータを外部装置に出力するデータ出力方法において、外部装置に出力するレコードの誤り訂正の有無を検証する誤り訂正検証ステップと、前記誤り訂正検証ステップにより誤り訂正無しと判断されたレコードについては、該レコードを構成するデータを出力し、誤り訂正有りと判断されたレコードについては、誤り訂正がなされたことを示す専用のタグを付したデータを出力する出力制御ステップとを含むことを特徴とするものである。
【００４９】
また、本発明の請求項４２に記載のデータ出力方法は、複数個の誤り訂正符号が付されたレコードからなる、レコード型構造のファイルで格納されたデータを外部装置に出力するデータ出力方法において、外部装置に出力するレコードの誤り訂正の有無を検証する誤り訂正検証ステップと、前記誤り訂正検証ステップによる検証により、読み出し要求がなされた全てのレコードのうち、少なくとも一つのレコードが誤り訂正有りと判断された場合には、前記誤り訂正検証ステップにより誤り訂正有りと判断されたレコードのタグ情報を示すデータを出力する出力制御ステップとを含むことを特徴とするものである。
【００５０】
また、本発明の請求項４３に記載のデータ出力方法は、複数個の誤り訂正符号が付されたレコードからなる、レコード型構造のファイルで格納されたデータを外部装置に出力するデータ出力方法において、レスポンスの返送に先立ち、外部装置に出力する全てのレコードの、誤り訂正の有無を検証する誤り訂正検証ステップと、前記誤り訂正検証ステップにより、少なくとも一つのレコードが誤り訂正有りと判断された場合には、読み出し要求がなされたレコード中に誤り訂正がなされたレコードが含まれる旨の情報を、レコードのデータを出力するよりも前に出力する出力制御ステップとを含むことを特徴とするものである。
【００５１】
また、本発明の請求項４４に記載のデータ出力方法は、複数個の誤り訂正符号が付されたレコードからなる、レコード型構造のファイルで格納されたデータを外部装置に出力するデータ出力方法において、レスポンスの返送に先立ち、外部装置に出力する全てのレコードの、誤り訂正の有無を検証する誤り訂正検証ステップと、前記誤り訂正検証ステップにより、少なくとも一つのレコードが誤り訂正有りと判断された場合には、前記誤り訂正検証ステップにより誤り訂正有りと判断されたレコードのタグ情報を、レコードのデータを出力するよりも前に出力する出力制御ステップとを含むことを特徴とするものである。
【００５２】
また、本発明の請求項４５に記載のデータ出力方法は、複数個の誤り検出符号が付されたフィールドからなる、透過型構造のファイルで格納されたデータを外部装置に出力するデータ出力方法において、外部装置に出力するフィールドの誤り検出符号を検証する誤り検証ステップと、前記誤り検証ステップにより正常と判断されたフィールドについては、該フィールドのデータが正常であることを示す専用のタグを付したデータを出力し、異常と判断されたフィールドについては、該フィールドのデータが異常であることを示す専用のタグを付したデータを出力する出力制御ステップとを含むことを特徴とするものである。
【００５３】
また、本発明の請求項４６に記載のデータ出力方法は、請求項４５に記載のデータ出力方法において、前記出力制御ステップが、前記異常と判断されたフィールドに対して、該フィールドのデータが異常であることを示す専用のタグと，データ本体の長さを示した長さ部と，該フィールドの全データを含むデータ本体部とからなるデータを出力することを特徴とするものである。
【００５４】
また、本発明の請求項４７に記載のデータ出力方法は、請求項４５に記載のデータ出力方法において、前記出力制御ステップが、前記異常と判断されたフィールドに対して、該フィールドのデータが異常であることを示す専用のタグと，データ本体の長さを示した長さ部と，該フィールドのデータの長さ情報で構成されたデータ本体部とからなるデータを出力することを特徴とするものである。
【００５５】
また、本発明の請求項４８に記載のデータ出力方法は、請求項４５に記載のデータ出力方法において、前記出力制御ステップが、前記異常と判断されたフィールドに対して、該フィールドのデータが異常であることを示す専用のタグと，該フィールドのデータ長を示す情報とからなるデータを出力することを特徴とするものである。
【００５６】
また、本発明の請求項４９に記載のデータ出力方法は、複数個の誤り検出符号が付されたフィールドからなる、透過型構造のファイルで格納されたデータを外部装置に出力するデータ出力方法において、外部装置に出力するフィールドの誤り検出符号を検証する誤り検証ステップと、前記誤り検証ステップによる検証により、読み出し要求がなされた全てのフィールドのうち、少なくとも一つのフィールドが異常であると判断された場合には、前記誤り検証ステップにより異常と判断されたフィールドの位置情報を示すデータを出力する出力制御ステップとを含むことを特徴とするものである。
【００５７】
また、本発明の請求項５０に記載のデータ出力方法は、複数個の誤り検出符号が付されたフィールドからなる、透過型構造のファイルで格納されたデータを外部装置に出力するデータ出力方法において、外部装置に出力するフィールドの誤り検出符号を検証する誤り検証ステップと、前記誤り検証ステップによる検証により、読み出し要求がなされた全フィールドが正常であると判断された場合には、全フィールドが正常であることを示すデータを出力する出力制御ステップとを含むことを特徴とするものである。
【００５８】
また、本発明の請求項５１に記載のデータ出力方法は、複数個の誤り検出符号が付されたフィールドからなる、透過型構造のファイルで格納されたデータを外部装置に出力するデータ出力方法において、レスポンスの返送に先立ち、外部装置に出力する全てのフィールドの誤り検出符号を検証する誤り検証ステップと、前記誤り検証ステップにより、少なくとも一つのフィールドが異常であると判断された場合には、読み出し要求がなされたフィールド中に異常なフィールドが含まれる旨の情報を、フィールドのデータを出力するよりも前に出力する出力制御ステップとを含むことを特徴とするものである。
【００５９】
また、本発明の請求項５２に記載のデータ出力方法は、複数個の誤り検出符号が付されたフィールドからなる、透過型構造のファイルで格納されたデータを外部装置に出力するデータ出力方法において、レスポンスの返送に先立ち、外部装置に出力する全てのフィールドの誤り検出符号を検証する誤り検証ステップと、前記誤り検証ステップにより、少なくとも一つのフィールドが異常であると判断された場合には、前記誤り検証ステップにより異常と判断されたフィールドの位置情報を、フィールドのデータを出力するよりも前に出力する出力制御ステップとを含むことを特徴とするものである。
【００６０】
また、本発明の請求項５３に記載のデータ格納方法は、複数個の誤り検出符号が付されたフィールドからなる、透過型構造のファイル形式でデータを格納するデータ格納方法において、外部装置から送信される、所定のデータ長を有するデータを受信する受信ステップと、前記受信ステップで受信した所定のデータ長を有するデータの誤り検出符号を計算し、該計算した誤り検出符号を前記所定のデータ長を有するデータの直後に付して書き込みを行う書き込みステップを含むことを特徴とするものである。
【００６１】
また、本発明の請求項５４に記載のデータ出力方法は、複数個の誤り訂正符号が付されたフィールドからなる、透過型構造のファイルで格納されたデータを外部装置に出力するデータ出力方法において、外部装置に出力するフィールドの誤り訂正の有無を検証する誤り訂正検証ステップと、前記誤り訂正検証ステップにより誤り訂正無しと判断されたフィールドについては、該フィールドのデータが誤り訂正のなされていないデータであることを示す専用のタグを付したデータを出力し、誤り訂正有りと判断されたフィールドについては、該フィールドのデータが誤り訂正のなされたデータであることを示す専用のタグを付したデータを出力する出力制御ステップとを含むことを特徴とするものである。
【００６２】
また、本発明の請求項５５に記載のデータ出力方法は、複数個の誤り訂正符号が付されたフィールドからなる、透過型構造のファイルで格納されたデータを外部装置に出力するデータ出力方法において、外部装置に出力するフィールドの誤り訂正の有無を検証する誤り訂正検証ステップと、前記誤り訂正検証ステップによる検証により、読み出し要求がなされた全てのフィールドのうち、少なくとも一つのフィールドが誤り訂正有りと判断された場合には、前記誤り訂正検証ステップにより誤り訂正有りと判断されたフィールドの位置情報を示すデータを出力する出力制御ステップとを含むことを特徴とするものである。
【００６３】
また、本発明の請求項５６に記載のデータ出力方法は、複数個の誤り訂正符号が付されたフィールドからなる、透過型構造のファイルで格納されたデータを外部装置に出力するデータ出力方法において、外部装置に出力するフィールドの誤り訂正の有無を検証する誤り訂正検証ステップと、前記誤り訂正検証ステップによる検証により、読み出し要求がなされた全フィールドが誤り訂正無しと判断された場合には、全フィールドが誤り訂正無しであることを示すデータを出力する出力制御ステップとを含むことを特徴とするものである。
【００６４】
また、本発明の請求項５７に記載のデータ出力方法は、複数個の誤り訂正符号が付されたフィールドからなる、透過型構造のファイルで格納されたデータを外部装置に出力するデータ出力方法において、レスポンスの返送に先立ち、外部装置に出力する全てのフィールドの、誤り訂正の有無を検証する誤り訂正検証ステップと、前記誤り訂正検証ステップにより、少なくとも一つのフィールドが誤り訂正有りと判断された場合には、読み出し要求がなされたフィールド中に誤り訂正がなされたフィールドが含まれる旨の情報を、フィールドのデータを出力するよりも前に出力する出力制御ステップとを含むことを特徴とするものである。
【００６５】
また、本発明の請求項５８に記載のデータ出力方法は、複数個の誤り訂正符号が付されたフィールドからなる、透過型構造のファイルで格納されたデータを外部装置に出力するデータ出力方法において、レスポンスの返送に先立ち、外部装置に出力する全てのフィールドの、誤り訂正の有無を検証する誤り訂正検証ステップと、前記誤り訂正検証ステップにより、少なくとも一つのフィールドが誤り訂正有りと判断された場合には、前記誤り訂正検証ステップにより誤り訂正有りと判断されたフィールドの位置情報を、フィールドのデータを出力するよりも前に出力する出力制御ステップとを含むことを特徴とするものである。
【発明の効果】
【００６６】
本発明の請求項１又は請求項３０に記載の発明によれば、複数個の誤り検出符号が付されたレコードからなる、レコード型構造のファイルが格納されたＩＣカードにおいて、外部装置に出力するレコードの誤り検出符号を検証し、誤り検証により正常と判断されたレコードを構成するデータのみを出力するようにしたので、ＩＣカードに格納されているレコードの一部に異常があったとしても、端末は異常のないレコードを読み出すことができるため、これらを有効に活用することができる。また、ＩＣカードに格納される全てのレコードの種類を端末側のアプリケーションが知っていれば、返されなかったレコードには異常が検出されたということがわかるという効果が得られる。
【００６７】
また、本発明の請求項２又は請求項３１に記載の発明によれば、複数個の誤り検出符号が付されたレコードからなる、レコード型構造のファイルが格納されたＩＣカードにおいて、外部装置に出力するレコードの誤り検出符号を検証して、誤り検証により正常と判断されたレコードについては、該レコードを構成するデータを出力し、異常と判断されたレコードについては、異常が検出されたことを示す専用のタグを付したデータを出力するようにしたので、ＩＣカードに格納される全てのレコードの種類を端末側のアプリケーションが知っている必要性がなくなるため、個々のＩＣカードが有するレコードの種類はカード毎に異なっていてもよく、柔軟性に富んだ運用が可能となるという効果が得られる。
【００６８】
また、本発明の請求項３又は請求項３２に記載の発明によれば、データを出力する際に、前記異常と判断されたレコードに対して、異常が検出されたことを示す専用のタグと，データ本体の長さを示す長さ部と，異常の検出されたレコードのタグ情報を含むデータ本体部とからなるデータを出力するようにしたので、個々のＩＣカードが有するレコードの種類がカード毎に異なっている場合であっても、端末側でどのレコードに異常が発生したかを知ることができるため、より柔軟性に富んだ運用が可能となるという効果が得られる。
【００６９】
また、本発明の請求項４又は請求項３３に記載の発明によれば、データを出力する際に、前記異常と判断されたレコードに対して、異常が検出されたことを示す専用のタグと，データ本体の長さを示す長さ部と，異常の検出されたレコードの全情報を含むデータ本体部とからなるデータを出力するようにしたので、端末は異常が検出されたレコードについても読み出すことができ、よりユーザのニーズに応じたサービスの提供が可能になる。
【００７０】
また、本発明の請求項５又は請求項３４に記載の発明によれば、データを出力する際に、異常の検出されたレコードのタグ部と長さ部とデータ本体部からなるＴＬＶ構造のデータを、前記異常が検出されたことを示す専用のタグが付されたデータのデータ本体部として出力するようにしたので、端末は、異常が検出されたレコードについても読み出すことができ、よりユーザのニーズに応じたサービスの提供が可能になる。
【００７１】
また、本発明の請求項６又は請求項３５に記載の発明によれば、データを出力する際に、前記異常が検出されたことを示す専用のタグとして、レコードに使用されるタグとは異なる、別のクラスのタグを割り当てるようにしたので、レコードのタグとして使用できる範囲を広く取ることができるという効果が得られる。
【００７２】
また、本発明の請求項７又は請求項３６に記載の発明によれば、データを出力する際に、前記異常が検出されたことを示す専用のタグとして、所定の固有値からなるタグを使用するようにしたので、レコードのタグとして使用できる範囲を広く取ることができるという効果が得られる。
【００７３】
また、本発明の請求項８又は請求項３７に記載の発明によれば、複数個の誤り検出符号が付されたレコードからなる、レコード型構造のファイルが格納されたＩＣカードにおいて、外部装置に出力するレコードの誤り検出符号を検証して、誤り検証により正常と判断されたレコードについては、該レコードを構成するデータを出力し、異常と判断されたレコードについては、異常と判断されたレコードのデータ本体部を伴わない、タグ部と長さ部とからなるデータを出力するようにしたので、予め端末との間で、データ本体部を伴わない、タグ部と長さ部のみからなるデータが送信された場合には、当該データに対応するレコードに異常が発生したことを意味するとするルールさえ決めておけば、端末側で、異常が発生したレコードを特定することが可能になるとともに、異常を検出したことを示す専用のタグも用いる必要もなくなるため、レコードに使用できるタグの値に制限を設ける必要性がなくなるという効果が得られる。
【００７４】
また、本発明の請求項９又は請求項３８に記載の発明によれば、複数個の誤り検出符号が付されたレコードからなる、レコード型構造のファイルが格納されたＩＣカードにおいて、外部装置に出力するレコードの誤り検出符号を検証し、読み出し要求がなされた全てのレコードのうち、少なくとも一つのレコードが異常であると判断された場合には、異常と判断されたレコードのタグ情報を示すデータを出力するようにしたので、異常なレコードの位置を一括して端末に知らせることができ、伝送効率を上げることが可能になるという効果が得られる。
【００７５】
また、本発明の請求項１０又は請求項３９に記載の発明によれば、複数個の誤り検出符号が付されたレコードからなる、レコード型構造のファイルが格納されたＩＣカードにおいて、レスポンスの返送に先立ち、外部装置に出力する全てのレコードの誤り検出符号を検証し、少なくとも一つのレコードが異常であると判断された場合には、読み出し要求がなされたレコード中に異常なレコードが含まれる旨の情報を、レコードのデータを出力するよりも前に出力するようにしたので、端末側は異常が検出されたレコードの有無をレスポンスの先頭で知ることでき、かかる情報に応じて予め端末側の処理を分岐する等、柔軟なサービスの提供が可能となるという効果が得られる。
【００７６】
また、本発明の請求項１１又は請求項４０に記載の発明によれば、複数個の誤り検出符号が付されたレコードからなる、レコード型構造のファイルが格納されたＩＣカードにおいて、レスポンスの返送に先立ち、外部装置に出力する全てのレコードの誤り検出符号を検証し、少なくとも一つのレコードが異常であると判断された場合には、前記誤り検証部により異常と判断されたレコードのタグ情報を、レコードのデータを出力するよりも前に出力するようにしたので、端末側は異常が検出されたレコードの有無をレスポンスの先頭で知ることできるとともに、異常が発生しているレコードを特定することができ、より柔軟なサービスの提供が可能となるという効果が得られる。
【００７７】
また、本発明の請求項１２又は請求項４１に記載の発明によれば、複数個の誤り訂正符号が付されたレコードからなる、レコード型構造のファイルが格納されたＩＣカードにおいて、外部装置に出力するレコードの誤り訂正の有無を検証し、誤り訂正無しと判断されたレコードについては、該レコードを構成するデータを出力し、誤り訂正有りと判断されたレコードについては、誤り訂正がなされたことを示す専用のタグを付したデータを出力するようにしたので、読み出したレコードが誤り訂正のなされたデータか否かを端末側で知ることができ、より柔軟性に富んだ運用が可能となるという効果が得られる。
【００７８】
また、本発明の請求項１３又は請求項４２に記載の発明によれば、複数個の誤り訂正符号が付されたレコードからなる、レコード型構造のファイルが格納されたＩＣカードにおいて、外部装置に出力するレコードの誤り訂正の有無を検証し、読み出し要求がなされた全てのレコードのうち、少なくとも一つのレコードが誤り訂正有りと判断された場合には、誤り訂正有りと判断されたレコードのタグ情報を示すデータを出力するようにしたので、誤り訂正がなされたレコードの位置を一括して端末に知らせることができ、伝送効率を上げることが可能になるという効果が得られる。
【００７９】
また、本発明の請求項１４又は請求項４３に記載の発明によれば、複数個の誤り訂正符号が付されたレコードからなる、レコード型構造のファイルが格納されたＩＣカードにおいて、レスポンスの返送に先立ち、外部装置に出力する全てのレコードの、誤り訂正の有無を検証し、少なくとも一つのレコードが誤り訂正有りと判断された場合には、読み出し要求がなされたレコード中に誤り訂正がなされたレコードが含まれる旨の情報を、レコードのデータを出力するよりも前に出力するようにしたので、端末側は誤り訂正がなされたレコードの有無をレスポンスの先頭で知ることでき、かかる情報に応じて予め端末側の処理を分岐する等、柔軟なサービスの提供が可能となるという効果が得られる。
【００８０】
また、本発明の請求項１５又は請求項４４に記載の発明によれば、複数個の誤り訂正符号が付されたレコードからなる、レコード型構造のファイルが格納されたＩＣカードにおいて、レスポンスの返送に先立ち、外部装置に出力する全てのレコードの、誤り訂正の有無を検証し、少なくとも一つのレコードが誤り訂正有りと判断された場合には、前記誤り訂正検証ステップにより誤り訂正有りと判断されたレコードのタグ情報を、レコードのデータを出力するよりも前に出力するようにしたので、端末側は誤り訂正がなされたレコードの有無をレスポンスの先頭で知ることできるとともに、誤り訂正がなされたレコードを特定することができ、より柔軟なサービスの提供が可能となるという効果が得られる。
【００８１】
また、本発明の請求項１６又は請求項４５に記載の発明によれば、複数個の誤り検出符号が付されたフィールドからなる、透過型構造のファイルが格納されたＩＣカードにおいて、外部装置に出力するフィールドの誤り検出符号を検証して、誤り検証により正常と判断されたフィールドについては、該フィールドのデータが正常であることを示す専用のタグを付したデータを出力し、異常と判断されたフィールドについては、該フィールドのデータが異常であることを示す専用のタグを付したデータを出力するようにしたので、端末はＴＬＶ構造を持たない透過型ファイルに対しても、正常なフィールドと異常が検出されたフィールドとを識別することができるという効果が得られる。
【００８２】
また、本発明の請求項１７又は請求項４６に記載の発明によれば、データを出力する際に、前記異常と判断されたフィールドに対して、該フィールドのデータが異常であることを示す専用のタグと，データ本体の長さを示した長さ部と，該フィールドの全データを含むデータ本体部とからなるデータを出力するようにしたので、端末はＴＬＶ構造を持たない透過型ファイルに対しても、正常なフィールドと異常が検出されたフィールドとを識別しながらファイルの全データを読み出すことができるという効果が得られる。
【００８３】
また、本発明の請求項１８又は請求項４７に記載の発明によれば、データを出力する際に、前記異常と判断されたフィールドに対して、該フィールドのデータが異常であることを示す専用のタグと，データ本体の長さを示した長さ部と，該フィールドのデータの長さ情報で構成されたデータ本体部とからなるデータを出力するようにしたので、異常が検出されたデータを読み出さずに、データの伝送効率を良くすることができるという効果が得られる。
【００８４】
また、本発明の請求項１９又は請求項４８に記載の発明によれば、データを出力する際に、前記異常と判断されたフィールドに対して、該フィールドのデータが異常であることを示す専用のタグと，該フィールドのデータ長を示す情報とからなるデータを出力するようにしたので、フィールドのデータが異常であることを示す専用のタグで始まる場合、長さ部はデータ本体部の長さを示すものでなく、異常が検出されたフィールドのデータ長を示すものであるというルールさえ決めておけば、異常が検出されたデータを読み出さずに、データの伝送効率を良くすることができるという効果が得られる。
【００８５】
また、本発明の請求項２０又は請求項４９に記載の発明によれば、複数個の誤り検出符号が付されたフィールドからなる、透過型構造のファイルが格納されたＩＣカードにおいて、外部装置に出力するフィールドの誤り検出符号を検証し、読み出し要求がなされた全てのフィールドのうち、少なくとも一つのフィールドが異常であると判断された場合には、異常と判断されたフィールドの位置情報を示すデータを出力するようにしたので、異常なフィールドの位置を一括して端末に知らせることができ、伝送効率を上げることが可能になるという効果が得られる。
【００８６】
また、本発明の請求項２１又は請求項５０に記載の発明によれば、複数個の誤り検出符号が付されたフィールドからなる、透過型構造のファイルが格納されたＩＣカードにおいて、外部装置に出力するフィールドの誤り検出符号を検証し、読み出し要求がなされた全フィールドが正常であると判断された場合には、全フィールドが正常であることを示すデータを出力するようにしたので、全てのフィールドデータが正常であることを一括して端末に知らせることができ、伝送効率を上げることが可能になるという効果が得られる。
【００８７】
また、本発明の請求項２２又は請求項５１に記載の発明によれば、複数個の誤り検出符号が付されたフィールドからなる、透過型構造のファイルが格納されたＩＣカードにおいて、レスポンスの返送に先立ち、外部装置に出力する全てのフィールドの誤り検出符号を検証し、少なくとも一つのフィールドが異常であると判断された場合には、読み出し要求がなされたフィールド中に異常なフィールドが含まれる旨の情報を、フィールドのデータを出力するよりも前に出力するようにしたので、端末側は異常が検出されたフィールドの有無をレスポンスの先頭で知ることでき、かかる情報に応じて予め端末側の処理を分岐する等、柔軟なサービスの提供が可能となるという効果が得られる。
【００８８】
また、本発明の請求項２３又は請求項５２に記載の発明によれば、複数個の誤り検出符号が付されたフィールドからなる、透過型構造のファイルが格納されたＩＣカードにおいて、レスポンスの返送に先立ち、外部装置に出力する全てのフィールドの誤り検出符号を検証し、少なくとも一つのフィールドが異常であると判断された場合には、異常と判断されたフィールドの位置情報を、フィールドのデータを出力するよりも前に出力するようにしたので、端末側は異常が検出されたフィールドの有無をレスポンスの先頭で知ることできるとともに、異常が検出されたフィールドを特定することができ、より柔軟なサービスの提供が可能となるという効果が得られる。
【００８９】
また、本発明の請求項２４又は請求項５３に記載の発明によれば、複数個の誤り検出符号が付されたフィールドからなる、透過型構造のファイルが格納されたＩＣカードにおいて、外部装置から送信される、所定のデータ長を有するデータを受信し、該受信した所定のデータ長を有するデータの誤り検出符号を計算し、該計算した誤り検出符号を前記所定のデータ長を有するデータの直後に付して、メモリに書き込むようにしたので、データを書き込む単位で誤り検出符号が付加されるため、誤り検出対象のフィールド長を可変にすることができる。このため、データの重要度に応じて発生した異常を検出することができる範囲を絞り込むことが可能となる効果が得られる。
【００９０】
また、本発明の請求項２５又は請求項５４に記載の発明によれば、複数個の誤り訂正符号が付されたフィールドからなる、透過型構造のファイルが格納されたＩＣカードにおいて、外部装置に出力するフィールドの誤り訂正の有無を検証し、誤り訂正無しと判断されたフィールドについては、該フィールドのデータが誤り訂正のなされていないデータであることを示す専用のタグを付したデータを出力し、誤り訂正有りと判断されたフィールドについては、該フィールドのデータが誤り訂正のなされたデータであることを示す専用のタグを付したデータを出力するようにしたので、端末はＴＬＶ構造を持たない透過型ファイルに対しても、誤り訂正がなされたフィールドか否かを識別しながらファイルの全データを読み出すことができるという効果が得られる。
【００９１】
また、本発明の請求項２６又は請求項５５に記載の発明によれば、複数個の誤り訂正符号が付されたフィールドからなる、透過型構造のファイルが格納されたＩＣカードにおいて、外部装置に出力するフィールドの誤り訂正の有無を検証し、読み出し要求がなされた全てのフィールドのうち、少なくとも一つのフィールドが誤り訂正有りと判断された場合には、誤り訂正有りと判断されたフィールドの位置情報を示すデータを出力するようにしたので、誤り訂正がなされたフィールドの位置を一括して端末に知らせることができ、伝送効率を上げることが可能になるという効果が得られる。
【００９２】
また、本発明の請求項２７又は請求項５６に記載の発明によれば、複数個の誤り訂正符号が付されたフィールドからなる、透過型構造のファイルが格納されたＩＣカードにおいて、外部装置に出力するフィールドの誤り訂正の有無を検証し、読み出し要求がなされた全フィールドが誤り訂正無しと判断された場合には、全フィールドが誤り訂正無しであることを示すデータを出力するようにしたので、全てのフィールドデータが誤り訂正無しであることを一括して端末に知らせることができ、伝送効率を上げることが可能になるという効果が得られる。
【００９３】
また、本発明の請求項２８又は請求項５７に記載の発明によれば、複数個の誤り訂正符号が付されたフィールドからなる、透過型構造のファイルが格納されたＩＣカードにおいて、レスポンスの返送に先立ち、外部装置に出力する全てのフィールドの、誤り訂正の有無を検証し、少なくとも一つのフィールドが誤り訂正有りと判断された場合には、読み出し要求がなされたフィールド中に誤り訂正がなされたフィールドが含まれる旨の情報を、フィールドのデータを出力するよりも前に出力するようにしたので、端末側は誤り訂正がなされたフィールドの有無をレスポンスの先頭で知ることでき、かかる情報に応じて予め端末側の処理を分岐する等、柔軟なサービスの提供が可能となるという効果が得られる。
【００９４】
また、本発明の請求項２９又は請求項５８に記載の発明によれば、複数個の誤り訂正符号が付されたフィールドからなる、透過型構造のファイルが格納されたＩＣカードにおいて、レスポンスの返送に先立ち、外部装置に出力する全てのフィールドの、誤り訂正の有無を検証し、少なくとも一つのフィールドが誤り訂正有りと判断された場合には、誤り訂正有りと判断されたフィールドの位置情報を、フィールドのデータを出力するよりも前に出力するようにしたので、端末側は誤り訂正がなされたフィールドの有無をレスポンスの先頭で知ることできるとともに、誤り訂正がなされたフィールドを特定することができ、より柔軟なサービスの提供が可能となるという効果が得られる。
【００９５】
以上のように、本発明によれば、レコード型構造あるいは透過型構造のファイルにおいて、ファイルの一部に異常を検出した場合にも、端末は異常のないレコード（またはフィールド）を読み出すことができるため、これらを有効に活用することができる。また、伝送効率を優先する場合は、異常が検出されたレコード（またはフィールド）を読み出さない方法を採用し、逆に異常が検出されたレコード（またはフィールド）を有効利用したい場合は、異常が検出されたことを明示しながらそのレコード（またはフィールド）を読み出す方法を採用すればよい。また、異常が検出されたレコード（またはフィールド）と、正常なレコード（またはフィールド）とを識別することができるため、例えば読み出したデータを表示する場合などでも、異常が検出されたフィールドを色付きにして使用者に知らせるなど、有用な使い道が可能となる。
【００９６】
また、本発明は、誤り訂正符号による誤り訂正を行う場合であっても同様に適用可能であり、端末側はＩＣカードからのレスポンスにより誤り訂正の有無を知ることが可能になる。
【発明を実施するための最良の形態】
【００９７】
以下、本発明の実施の形態について、図面を参照しながら説明する。
なお、本発明の形態１から４では、ＩＣカードに搭載された不揮発性メモリに、レコード構造のデータが格納されているものとし、本実施の形態５から８では、ＩＣカードに搭載された不揮発性メモリに、透過型ファイルのデータが格納されているものとする。
【００９８】
（実施の形態１）
以下に、本発明の実施の形態１によるＩＣカードについて説明する。
本発明の実施の形態１では、ＩＣカードに格納されているレコードの一部に異常がある場合でも、端末に対して異常のないレコードを送信することができるＩＣカードについて説明する。
【００９９】
図１は、本発明の実施の形態１によるＩＣカードの構造を説明するためのブロック図である。
図１において、本発明にかかるＩＣカード１は、コマンド判断部１１と、誤り検証部１２と、メモリ１３と、出力制御部１４とからなる。
【０１００】
コマンド判断部１１は、端末２からのコマンドの種類を判別するものであり、コマンドの内容が、レコードの読み出しコマンドである場合には、読み出し要求がなされたレコードの情報を誤り検証部１２及び出力制御部１４に通知する。
【０１０１】
誤り検証部１２は、メモリ１３にアクセスすることにより、読み出し要求がなされたレコードにそれぞれ付された誤り検出符号（ＢＣＣ）を検証し、検証結果を出力制御部１４に出力する。なお、ここで誤り検証部１２が行う誤り検出は、誤り訂正符号による誤り検出を含むものである。
メモリ１３は、不揮発性のメモリであり、ここでは、複数個の誤り検出符号が付されたレコードからなる、レコード型構造のファイルが格納されているものとする。
【０１０２】
出力制御部１４は、コマンド判断部１１から出力される読み出し要求がなされたレコード情報と、誤り検証部１２から出力される読み出し要求がなされたレコードの誤り検証結果に基づいて、正常と判断されたレコードを構成するデータのみをメモリ１３から端末２に出力するものである。
【０１０３】
次に、メモリ１３に格納されているデータの構造について図２を用いて説明する。
図２は、本実施の形態１によるＩＣカード１が有するメモリ１３に格納されたデータの構造を示す構造図である。ここでは、レコード構造型ファイル２０をＴａ，Ｌａ，Ｖａと、Ｔｂ，Ｌｂ，Ｖｂと、Ｔｃ，Ｌｃ，Ｖｃと、Ｔｄ，Ｌｄ，Ｖｄの、４つのレコードで構成している。なお、実際には一つのファイルのレコード数は４つより多くなることが多いが、ここでは説明を簡単にするためレコード数を４レコードとしている。
【０１０４】
図２に示すように、一つのレコードは１バイトのタグ部（Ｔａｇ）２１と、１又は３バイトの長さ部（Ｌｅｎｇｔｈ）２２と、データ本体部（Ｖａｌｕｅ）２３とから構成される。（以降、この構造をそれぞれの頭文字をとって「ＴＬＶ構造」と呼ぶ。）
【０１０５】
タグ部（Ｔ）２１は、レコードの種類を示すレコード識別子である。長さ部（Ｌ）２２は、データ本体部（Ｖ）２３の長さを示している。データ本体部（Ｖ）２３は、実データが格納されている領域である。また、各レコードはそれぞれデータ誤り検出符号（ＢＣＣ）１４を有する。ＢＣＣ１４は、例えば、タグ部１１からデータ本体部１３の最終バイトまでの排他的論理和である。
【０１０６】
次に、本発明の実施の形態１によるＩＣカードの動作について図３から図５を用いて説明する。
図３は、本発明の実施の形態１によるＩＣカードにレコードの読出しコマンドがなされた際の処理を説明するためのフローチャートである。
【０１０７】
図３において、ＩＣカード１のコマンド判断部１１は、端末２からコマンドを受信すると（ステップＳ１０１）、該コマンドが、ＩＣカード１が有するメモリ１３に格納されたレコードの読出しコマンドであるか否かを判断する（ステップ１０２）。この時、受信したコマンドがレコードの読出しコマンドであると判断した場合には、コマンド判断部１１は、読み出し要求がなされたレコードの情報を誤り検証部１２及び出力制御部１４に通知して、ステップＳ１０３に行く。一方で、受信したコマンドがレコードの読出しコマンドでないと判断した場合には、本フローチャートの処理を終了する。
【０１０８】
次に、受信したコマンドがフィールドの読出しコマンドである場合、誤り検証部１２は、読出し要求がなされたレコードのＢＣＣを検証することにより、読出し要求がなされたレコードにデータ化け等の異常が発生していないかを判断する（ステップＳ１０３、１０４）。判断の結果、検証を行ったレコードに異常が発生していない場合には、ステップＳ１０６に行く。一方で、検証を行ったレコードに異常が発生している場合には、出力制御部１４が、異常と判断されたレコードを廃棄等することにより、異常と判断されたレコードを端末に対して送信しないようにする処理を行い（ステップＳ１０５）、ステップＳ１１４に行く。
【０１０９】
次に、ＩＣカードから端末に一度に送信できるデータの長さは規格で決められていることから、ステップＳ１０６では、出力制御部１４が、ステップＳ１０３、Ｓ１０４で検証を行ったレコードを構成するデータを一度に送信することができるか否かの判断を行う（ステップＳ１０６）。判断の結果、検証を行ったレコードの全データを一度に送信できる場合には、出力制御部１４は、当該レコードを構成する全データを送信バッファにセットし（ステップＳ１０７）、ステップＳ１１２に行く。なお、ＢＣＣはＩＣカード内部でのみ使用されるデータであり、端末に送る必要がないため、送信バッファにはセットされない。
【０１１０】
一方で、全データを一度に送信できない場合には、出力制御部１４は、検証を行ったレコードの送信可能な一部のデータを送信バッファにセットした後（ステップＳ１０８）、送信バッファにセットされたデータを端末に対して送信する（ステップＳ１０９）。そして、端末から継続要求が送信されるのを待って（ステップＳ１１０）、検証を行ったレコードの残りのデータを送信バッファにセットし（ステップＳ１１１）、ステップＳ１１２に行く。
【０１１１】
次に、ステップＳ１１２では、出力制御部１４が、送信バッファにセットされたデータのデータ量とＩＣカードから端末に一度に送信できるデータ量とが等しいか否かの判断を行う（ステップＳ１１２）。判断の結果、送信バッファにセットされたデータのデータ量が、一度に送信できるデータ量と等しくなっている場合には、出力制御部１４は、送信バッファにセットされているデータを端末に対して送信する（ステップＳ１１３）。
【０１１２】
最後に、出力判断部１４は、読出し要求がなされた全レコードの処理が終了したか否かを判断する（ステップＳ１１４）。そして、読出し要求がなされた全レコードの処理が終了していない場合には、読出し要求がなされた全レコードの処理が終了するまでステップＳ１０３からステップＳ１１３までの処理を繰り返す。一方で、読出し要求がなされた全レコードの処理が終了している場合には、本フローチャートの処理を終了する。
【０１１３】
次に、図４、図５を用いて本発明の実施の形態１によるＩＣカードの動作をさらに具体的に説明する。なお、以下の説明では、ＩＣカード１が有するメモリ１３に図２に示すような４つのレコード（以降、上から第１、第２、第３、第４のレコードと称する）が格納されており、読み出しコマンドとして当該全レコードの読み出し要求がなされたものとする。また、図中の、“｜｜”は前後の二つのデータの連結を意味する。
【０１１４】
図４は、全レコードが正常である場合に本発明の実施の形態１によるＩＣカードが行う処理を説明するシーケンス図である。
図４に示すように、全レコードが正常である場合には、ＩＣカードは、全レコードの読出しコマンドに対し、第１のレコードから第４のレコードまでの全データを、ＩＣカードから端末に対して一度に送信できるデータ量毎に順次送信する。
【０１１５】
一方で、図５は、第３のレコードに異常が発生している場合の本発明の実施の形態１によるＩＣカードが行う処理を説明するシーケンス図である。
図５では、第３のレコードに異常が発生しているため、第３のレコードを構成するデータであるＴｃ，Ｌｃ，Ｖｃが端末には送信されず、正常なレコードである第１、第２、第４のレコードを構成するデータのみが端末に送信されることとなる。
【０１１６】
以上のように、本発明の実施の形態１によるＩＣカードによれば、出力制御部１４が、誤り検証部１２によって正常と判断されたレコードを構成するデータのみを出力するようにしたことにより、ＩＣカードに格納されているレコードの一部に異常があったとしても、端末は異常のないレコードを受信することができるため、読み出されたデータを有効に活用することができる。
【０１１７】
また、この本発明の実施の形態１によるＩＣカードは、特にＩＣカードに記録されているレコードの種類（タグの値）を端末側のアプリケーションが全て知っている場合に有効である。すなわち、予め端末とＩＣカード間で、「全レコード読出しコマンドに対してＩＣカードから返されないレコードがあれば、そのレコードは異常が発生していることを意味する」というルールさえ決めておけば、端末側のアプリケーションは、ＩＣカードから返される全レコードのタグを見て、第３のレコードが存在しないことを知ることができ、このレコードに異常が発生していることが判るからである。このように、本発明の実施の形態１によるＩＣカードは、ＩＣカードに記録されているレコードのタグの値を端末側のアプリケーションが全て知っているようなクローズドなシステムの場合に有効な方法であるといえる。
【０１１８】
（実施の形態２）
次に、本発明の実施の形態２によるＩＣカードについて説明する。
本発明の実施の形態２では、正常なレコードのデータとともに、異常が発生しているレコードを特定して送信するＩＣカードについて説明する。
【０１１９】
前述した実施の形態１によるＩＣカードは、ＩＣカードに記録されているレコードの種類（タグの値）を端末側のアプリケーションが全て知っている場合に特に有効である。しかし、ＩＣカードに記録されているレコードの種類（タグの値）を端末側のアプリケーションが知らない場合には、送信されていないレコードの存在を端末側が知ることができない。
【０１２０】
そこで、本発明の実施の形態２によるＩＣカードでは、図１で示す出力制御部１４が、図３のステップＳ１０５の処理において、誤り検証部１２によって異常と判断されたレコードを送信しないとするのではなく、誤り検証部１２よって異常と判断されたレコードに替えて異常が検出されたことを示す専用のタグを付したデータを送信するようした。
【０１２１】
以下に、この本発明の実施の形態２によるＩＣカードについて図６を用いて詳細を説明する。なお、以下の説明では、ＩＣカード１が有するメモリ１３に図２に示すような４つのレコード（以降、上から第１、第２、第３、第４のレコードと称する）が格納されており、読み出しコマンドとして当該全レコードの読み出し要求がなされたものとする。
【０１２２】
図６は、第３のレコードに異常が発生している場合の本発明の実施の形態２によるＩＣカードが行う処理を説明するシーケンス図である。なお、図中の、“｜｜”は前後の二つのデータの連結を意味する。
【０１２３】
図６に示すように、本発明の実施の形態２によるＩＣカードでは、出力制御部１４が、正常なレコードを構成するデータである「Ｖｂの残り」の後に、異常が発生している第３のレコードに対してＴｅｒｒ｜｜Ｌｅｒｒ｜｜Ｔｃを送信する。
【０１２４】
Ｔｅｒｒは異常が検出されたことを明示する専用のタグである。Ｔｃはデータ本体部であり、異常が検出されたレコードのタグの値であるＴｃがセットされる。また、このＴｃは１バイトの情報なので、長さ部Ｌｅｒｒには１という値がセットされる。
これにより、専用のタグＴｅｒｒが付されたデータ本体部の情報Ｔｃにより、端末側で、異常が発生しているレコードを特定することができる。
【０１２５】
なお、ここで、Ｔｅｒｒは専用のタグであり、Ｔａ、Ｔｂ、Ｔｃ、Ｔｄ等のレコードの通常のタグの値と重ならないように設定する必要がある。そこで、先ず、レコードのタグ及びＴｅｒｒとして、それぞれ別の用途を示すクラスを割り当てる方法がある。具体的には、例えばレコードのタグ値にはＩＳＯ／ＩＥＣ８８２５で規定されるアプリケーションクラス（タグの値のｂ８＝０、ｂ７＝１）を割り当て、Ｔｅｒｒにはコンテキストクラス（タグの値のｂ８＝１、ｂ７＝０）を割り当てる。このようにクラス分けする方法は、特に、Ｔｅｒｒのような特別な意味を持つタグが他にも存在するような場合に適している。
【０１２６】
また、他の方法として、Ｔｅｒｒとして予め定められた固有の値である固定値（例えばＦＦｈ）を割り当て、レコードのタグとして固定値以外の値を使用可能とする方法がある。この方法によれば、レコードのタグとして使用できる範囲を広く取ることができるという効果が得られる。
【０１２７】
以上のように、本発明の実施の形態２によるＩＣカードによれば、出力制御部１４が、誤り検証部１２によって正常と判断されたレコードについては該レコードを構成するデータを送信し、異常と判断されたレコードについては異常が検出されたことを示す専用のタグを付したデータを送信するようにしたことにより、異常が検出されたことを示す専用のタグＴｅｒｒによって異常が検出されたことを明示することができるため、端末側で、レコード自体が存在しない場合とレコードに異常が発生している場合とを判別することができるという効果が得られる。また、これにより、個々のＩＣカードが有するレコードがカード毎に異なっている場合であっても端末側でどのレコードに異常が発生したかを知ることができるため、より柔軟性に富んだ運用が可能となる効果が得られる。
【０１２８】
（実施の形態３）
次に、本発明の実施の形態３によるＩＣカードについて説明する。
本発明の実施の形態３では、正常なレコードのデータとともに、異常が発生しているレコードのデータ本体を、異常であることを示す専用のタグを付して送信するＩＣカードについて説明する。
【０１２９】
前述した実施の形態２によるＩＣカードでは、異常が検出されたレコードのデータ本体は返されない。これは伝送量上は効率的ではあるが、たとえデータ化け等の異常が発生していたとしてもレコードのデータが有用である場合もある。例えば、ユーザがそれらの情報に厳密な正確さを要求していない場合、「異常が検出された」との警告表示があれば、ユーザはそれを承知でその情報を扱うことができ、ユーザの目的は達せられる可能性は高い。
【０１３０】
そこで、本発明の実施の形態３によるＩＣカードでは、図１で示す出力制御部１４が、図３のステップＳ１０５の処理において、誤り検証部１２によって異常と判断されたレコードを送信しないとするのではなく、誤り検証部１２よって異常と判断されたレコードのタグ部、長さ部、データ本体部からなるＴＬＶ構造のデータを、異常が検出されたことを示す専用のタグが付されたデータのデータ本体部として送信するようした。
【０１３１】
以下に、この本発明の実施の形態３によるＩＣカードについて図７を用いて詳細を説明する。なお、以下の説明では、ＩＣカード１が有するメモリ１３に図２に示すような４つのレコード（以降、上から第１、第２、第３、第４のレコードと称する）が格納されており、読み出しコマンドとして当該全レコードの読み出し要求がなされたものとする。
【０１３２】
図７は、第３のレコードに異常が発生している場合の本発明の実施の形態３によるＩＣカードが行う処理を説明するシーケンス図である。なお、図中の、“｜｜”は前後の二つのデータの連結を意味する。
【０１３３】
図７に示すように、本発明の実施の形態３によるＩＣカードでは、出力制御部１４が、正常なレコードを構成するデータである「Ｖｂの残り」の後に、Ｔｅｒｒ｜｜Ｌｅｒｒ｜｜Ｔｃ｜｜Ｌｃ｜｜Ｖｃというデータを送信するようにする。
【０１３４】
Ｖｃはデータ化け等の異常なデータを含んだ第３のレコードのデータ本体であり、Ｌｃはその長さを示す。また、ＬｅｒｒはＴｃ｜｜Ｌｃ｜｜Ｖｃというデータオブジェクトの長さを示す。
【０１３５】
これにより、異常が検出された第３のレコードに対して送信される、Ｔｅｒｒ｜｜Ｌｅｒｒ｜｜Ｔｃ｜｜Ｌｃ｜｜Ｖｃは、第３のレコードを構成するＴｃ｜｜Ｌｃ｜｜ＶｃからなるＴＬＶが入れ子構造となった構造型ＴＬＶを成す。
【０１３６】
以上のように、本発明の実施の形態３によるＩＣカードによれば、出力制御部１４が、誤り検証部１２によって正常と判断されたレコードについては該レコードを構成するデータを出力し、異常と判断されたレコードについては異常が検出されたことを示す専用のタグと，データ本体の長さを示す長さ部と，異常の検出されたレコードの全情報を含むデータ本体部とからなるデータを送信するようにしたことにより、前記実施の形態２によるＩＣカードで得られる効果に加え、異常が検出されたレコードのデータ本体を端末に返すことができ、よりユーザニーズに応じたサービスの提供が可能となる。
【０１３７】
なお、本発明の実施の形態３によるＩＣカードでは、端末に対する異常が検出されたレコードの送信方法として前述したような構造型ＴＬＶを用いるものについて説明したが、出力制御部１４から送信されるデータとしては、少なくとも、異常であることを示す専用のタグと異常が検出されたレコードのデータ本体とが含まれるデータであれば良く、例えば、Ｔｅｒｒ｜｜Ｌｅｒｒ｜｜Ｔｃ｜｜Ｖｃというように冗長なＬｃを省略した形のデータを送信するようにしても良い。
【０１３８】
（実施の形態４）
次に、本発明の実施の形態４によるＩＣカードについて説明する。
本発明の実施の形態４では、異常が検出されたことを示す専用のタグを使用することなく、端末に対して異常が検出されたことを明示することのできるＩＣカードについて説明する。
【０１３９】
本発明の実施の形態４によるＩＣカードは、図１で示す出力制御部１４が、図３のステップＳ１０５の処理において、誤り検証部１２によって異常と判断されたレコードを送信しないとするのではなく、誤り検証部１２よって異常と判断されたレコードのデータ本体部を伴わない、タグ部と長さ部とからなるデータを送信するようしたものである。
【０１４０】
以下に、この本発明の実施の形態４によるＩＣカードについて図８を用いて詳細を説明する。なお、以下の説明では、ＩＣカード１が有するメモリ１３に図２に示すような４つのレコード（以降、上から第１、第２、第３、第４のレコードと称する）が格納されており、読み出しコマンドとして当該全レコードの読み出し要求がなされたものとする。
【０１４１】
図８は、第３のレコードに異常が発生している場合の本発明の実施の形態４によるＩＣカードが行う処理を説明するシーケンス図である。なお、図中の、“｜｜”は前後の二つのデータの連結を意味する。
図８に示すように、本発明の実施の形態４によるＩＣカードでは、出力制御部１４が、正常なレコードを構成するデータである「Ｖｂの残り」の後に、Ｔｃ｜｜Ｌｃを送信するようにする。
【０１４２】
Ｔｃは異常が検出されたレコードのタグの値である。また、Ｌｃは長さ部であり、ここでは、データの本体部を伴わないため、Ｌｃには０という値がセットされる。
【０１４３】
この際、予め端末とＩＣカード間で、データの本体を伴わないタグ部と長さ部のみからなるデータが送信されてきた場合には当該データに対するレコードに異常が発生していることを示すというルールさえ決めておけば、端末側で、レコード自体が存在しない場合とレコードに異常が発生している場合とを判別することが可能となる。
【０１４４】
以上のように、本発明の実施の形態４によるＩＣカードによれば、出力制御部１４が、誤り検証部１２によって正常と判断されたレコードについては該レコードを構成するデータを出力し、異常と判断されたレコードについては異常と判断されたレコードのデータ本体部を伴わない、タグ部と長さ部とからなるデータを送信するようにしたことにより、異常が検出されたことを示す専用のタグを使用することなく、端末で、レコード自体が存在しない場合とレコードに異常が発生している場合とを判別することができるという効果が得られる。また、これにより、個々のＩＣカードが有するレコードがカード毎に異なっている場合であっても端末側でどのレコードに異常が発生したかを知ることができるため、より柔軟性に富んだ運用が可能となる効果が得られる。
【０１４５】
（実施の形態５）
以下に、本発明の実施の形態５によるＩＣカードについて説明する。
本発明の実施の形態５では、ＴＬＶ構造を持たない透過型ファイルに対しても、正常なフィールドと異常が発生しているフィールドとを識別しながら端末から要求されたデータの読み出しを行うことができるＩＣカードについて説明する。
【０１４６】
図９は、本発明の実施の形態５によるＩＣカードの構造を説明するためのブロック図である。
図９において、本発明にかかるＩＣカード３は、コマンド判断部３１と、誤り検証部３２と、メモリ３３と、出力制御部３４とからなる。
【０１４７】
コマンド判断部３１は、端末２からのコマンドの種類を判別するものであり、コマンドの内容が、フィールドの読み出しコマンドである場合には、読み出し要求がなされたフィールドの情報を誤り検証部３２及び出力制御部３４に通知する。
【０１４８】
誤り検証部３２は、メモリ３３にアクセスすることにより、読み出し要求がなされたフィールドにそれぞれ付された誤り検出符号（ＢＣＣ）を検証し、検証結果を出力制御部３４に出力する。
【０１４９】
メモリ３３は、不揮発性のメモリであり、ここでは、複数個の誤り検出符号が付されたフィールドからなる、透過型構造のファイルが格納されているものとする。
【０１５０】
出力制御部３４は、コマンド判断部３１から出力される読み出し要求がなされたフィールド情報と、誤り検証部３２から出力される読み出し要求がなされたフィールドの誤り検証結果に基づいて、正常と判断されたフィールドについては、該フィールドのデータが正常であることを示す専用のタグを付したデータを出力し、異常と判断されたフィールドについては、該フィールドのデータが異常であることを示す専用のタグを付したデータを出力するものである。なお、ここで使用するフィールドのデータの正常或いは異常を示す専用のタグの値は、フィールド番号に依存させる必要はない。
【０１５１】
次に、メモリ３３に格納されているデータの構造について図１０を用いて説明する。
図１０は本実施の形態５によるＩＣカード３が有するメモリ３３に格納されたデータの構造を示す構造図である。図１０に示すように透過型ファイル４０とは、ＴＬＶ構造をとらずに、データ本体部４１とＢＣＣ部４２のみからなる構造であり、ここでは、透過型ファイル４０が４つのフィールドで構成されている例を示している。実際には一つのファイルのフィールド数が４つより多くなることが多いが、ここでは説明を簡単にするためフィールド数を４フィールドとしている。
【０１５２】
なお、フィールドとは、ＢＣＣ４２が付加される単位であり、図１０の各データ本体部４１を意味し、各フィールドのデータ量は、ファイルごとに固定値である（例えば２５６バイト）。また、各フィールドはそれぞれデータ誤り検出符号（ＢＣＣ）４２を有する。なお、ＢＣＣ４２は、例えば、データ本体部４１であるフィールドの最終バイトまでの排他的論理和である。
【０１５３】
次に、本発明の実施の形態５によるＩＣカードの動作について図１１、図１２を用いて説明する。
図１１は、本発明の実施の形態５によるＩＣカードにフィールドの読出しコマンドがなされた際の処理を説明するためのフローチャートである。
【０１５４】
図１１において、ＩＣカード３のコマンド判断部３１は、端末２からコマンドを受信すると（ステップＳ２０１）、該コマンドが、ＩＣカード３が有するメモリ３３に格納されたフィールドの読出しコマンドであるか否かを判断する（ステップ２０２）。この時、受信したコマンドがフィールドの読出しコマンドであると判断した場合には、コマンド判断部３１は、読み出し要求がなされたフィールドの情報を誤り検証部３２及び出力制御部３４に通知して、ステップＳ２０３に行く。一方で、受信したコマンドがフィールドの読出しコマンドでないと判断した場合には、本フローチャートの処理を終了する。
【０１５５】
次に、受信したコマンドがフィールドの読出しコマンドである場合、誤り検証部３２は、読出し要求がなされたフィールドのＢＣＣを検証することにより、読出し要求がなされたフィールドにデータ化け等の異常が発生していないかを判断する（ステップＳ２０３、２０４）。判断の結果、検証を行ったフィールドに異常が発生していない場合には、出力制御部３４が、当該フィールドのデータの前に、該フィールドのデータが正常であることを示す専用のタグＴｏｋと、データ本体部の長さを示す長さ部Ｌを付し（ステップＳ２０５）、ステップＳ２０７に行く。一方で、検証を行ったフィールドに異常が発生している場合には、出力制御部３４が、当該フィールドのデータの前に、該フィールドのデータが異常であることを示す専用のタグＴｎｇと、データ本体部の長さを示す長さ部Ｌを付し（ステップＳ２０６）、ステップＳ２０７に行く。なお、ＢＣＣはＩＣカード内部でのみ使用されるデータであり、端末に送る必要がないため、送信バッファにはセットされない。また、各フィールドのデータ量は前述のように固定値であるため、端末側が各フィールドのデータ量を知っているという前提であれば前記長さ部Ｌを必要としない場合もあるが、本実施例では伝送上のフォーマットとしてＴＬＶを採用することとし、各フィールドのデータ量が固定値でも長さ部Ｌを付加することとする。
【０１５６】
次に、ＩＣカードから端末に一度に送信できるデータの長さは規格で決められていることから、ステップＳ２０７では、出力制御部３４が、ステップＳ２０５、Ｓ２０６でタグ部と長さ部とが付加されたフィールドの全データを一度に送信することができるか否かの判断を行う（ステップＳ２０７）。判断の結果、タグ部と長さ部とが付加されたフィールドの全データを一度に送信できる場合には、該全データを送信バッファにセットし（ステップＳ２０８）、ステップＳ２１３に行く。
【０１５７】
一方で、タグ部と長さ部とが付加されたフィールドの全データを一度に送信できない場合には、出力制御部３４は、送信可能な一部のデータを送信バッファにセットした後（ステップＳ２０９）、送信バッファにセットされたデータを端末に対して送信する（ステップＳ２１０）。そして、端末から継続要求が送信されるのを待って（ステップＳ２１１）、残りのデータを送信バッファにセットし（ステップＳ２１２）、ステップＳ２１３に行く。
【０１５８】
次に、ステップＳ２１３では、出力制御部３４が、送信バッファにセットされたデータのデータ量とＩＣカードから端末に一度に送信できるデータ量とが等しいか否かの判断を行う（ステップＳ２１３）。判断の結果、送信バッファにセットされたデータのデータ量が、一度に送信できるデータ量と等しくなっている場合には、出力制御部３４は、送信バッファにセットされているデータを端末に対して送信する（ステップＳ２１４）。
【０１５９】
最後に、出力判断部３４は、読出し要求がなされた全フィールドの処理が終了したか否かを判断する（ステップＳ２１５）。そして、読出し要求がなされた全フィールドの処理が終了していない場合には、読出し要求がなされた全フィールドの処理が終了するまでステップＳ２０３からステップＳ２１４までの処理を繰り返す。一方で、読出し要求がなされた全フィールドの処理が終了している場合には、本フローチャートの処理を終了する。
【０１６０】
次に、図１２を用いて本発明の実施の形態５によるＩＣカードの動作をさらに具体的に説明する。なお、以下の説明では、ＩＣカード３が有するメモリ３３に図１０に示すような４つのフィールド（以降、上から第１、第２、第３、第４のフィールドと称する）が格納されており、読み出しコマンドとして当該全フィールドの読み出し要求がなされたものとする。
【０１６１】
図１２は、第３のフィールドに異常が発生している場合の本発明の実施の形態５によるＩＣカードが行う処理を説明するシーケンス図である。なお、図中の、“｜｜”は前後の二つのデータの連結を意味する。
【０１６２】
図１２に示すように、ＩＣカードの出力制御部３４は、正常なフィールドである第１、第２、第４のフィールドに対しては、各フィールドのデータより前に、当該フィールドが正常であることを示すタグＴｏｋと、データ本体の長さを示す長さ部Ｌｗ、Ｌｘ、Ｌｚとを付し、該フィールドのデータが正常であることを示す専用のタグＴｏｋと，データ本体の長さを示す長さ部Ｌと，該フィールドの全データを含むデータ本体部Ｖとからなるデータ（Ｔｏｋ｜｜Ｌｗ｜｜Ｖｗ）、（Ｔｏｋ｜｜Ｌｘ｜｜Ｖｘ）、（Ｔｏｋ｜｜Ｌｚ｜｜Ｖｚ）を端末に対して送信する。
【０１６３】
一方で、出力制御部３４は、異常が発生している第３のフィールドに対しては、該フィールドのデータより前に、当該フィールドが異常であることを示すタグＴｎｇと、データ本体の長さを示す長さ部Ｌｙとを付し、該フィールドのデータが異常であることを示す専用のタグＴｎｇと，データ本体の長さを示した長さ部Ｌと，該フィールドの全データを含むデータ本体部Ｖとからなるデータ（Ｔｎｇ｜｜Ｌｙ｜｜Ｖｙ）を端末に対して送信する。
【０１６４】
なお、図示するように、端末に送信される各フィールドのデータは、ＩＣカードから端末に対して一度に送信できるデータ量毎に順次送信される。
【０１６５】
以上のように、本発明の実施の形態５によるＩＣカードによれば、出力制御部３４が、誤り検証部１２によって正常と判断されたフィールドについては該フィールドのデータが正常であることを示す専用のタグを付したデータを出力し、異常と判断されたフィールドについては該フィールドのデータが異常であることを示す専用のタグを付したデータを出力するようにしたことにより、端末は、受信したタグの値がＴｏｋであるかＴｎｇであるかによって、そのフィールドの異常の有無を判断することができ、ＴＬＶ構造を持たない透過型ファイルに対しても、正常なフィールドと異常が発生しているフィールドとを識別しながら端末から要求されたデータの読み出しを行うことができる。また、データ化け等の異常を有するフィールドのデータも返されるため、前記本発明の実施の形態３と同様に、ユーザのニーズに応じたサービスの提供が可能となる。
【０１６６】
（実施の形態６）
次に、本発明の実施の形態６によるＩＣカードについて説明する。
本発明の実施の形態６では、効率的なデータの伝送を行うことができる、前記本発明の実施の形態５によるＩＣカードの変形例について説明する。
【０１６７】
本発明の実施の形態６によるＩＣカードは、図９で示す出力制御部３４が、図１１のステップＳ２０６の処理において、誤り検証部３２によって異常と判断されたフィールドのデータの前に、該フィールドのデータが異常であることを示す専用のタグと、データ本体部の長さを示す長さ部を付加するのではなく、異常と判断されたフィールドについては、該フィールドのデータが異常であることを示す専用のタグと、データ本体の長さを示した長さ部と，異常と判断されたフィールドのデータの長さ情報で構成されたデータ本体部とからなるデータを送信するようしたものである。
【０１６８】
以下に、この本発明の実施の形態６によるＩＣカードについて図１３を用いて詳細を説明する。なお、以下の説明では、ＩＣカード３が有するメモリ３３に図１０に示すような４つのフィールド（以降、上から第１、第２、第３、第４のフィールドと称する）が格納されており、読み出しコマンドとして当該全フィールドの読み出し要求がなされたものとする。
【０１６９】
図１３は、第３のフィールドに異常が発生している場合の本発明の実施の形態６によるＩＣカードが行う処理を説明するシーケンス図である。なお、出力制御部３４の正常なフィールドである第１、第２、第４のフィールドに対する処理は、図１２で説明したものと同様であるため、ここでは説明を省略する。また、図中の、“｜｜”は前後の二つのデータの連結を意味する。
【０１７０】
図１３に示すように、本発明の実施の形態６によるＩＣカードでは、出力制御部３４が、異常が発生している第３のフィールドに対して、該フィールドのデータが異常であることを示す専用のタグＴｎｇと，データ本体の長さを示した長さ部Ｌｎｇと，該フィールドのデータの長さ情報Ｌｙで構成されたデータ本体部とからなるデータＴｎｇ｜｜Ｌｎｇ｜｜Ｌｙを端末に対して送信する。
【０１７１】
以上のように、本発明の実施の形態６によるＩＣカードによれば、出力制御部３４が、誤り検証部１２によって正常と判断されたフィールドについては該フィールドのデータが正常であることを示す専用のタグを付したデータを出力し、異常と判断されたフィールドについては該フィールドのデータが異常であることを示す専用のタグと、データ本体の長さを示した長さ部と，異常と判断されたフィールドのデータの長さ情報で構成されたデータ本体部とからなるデータを出力するようにしたことにより、端末は、受信したタグの値がＴｏｋであるかＴｎｇであるかによって、そのフィールドの異常の有無を判断することができる。また、異常を検出したフィールドのデータは端末に返されないため、伝送上の効率が上がるというメリットがある。
【０１７２】
なお、端末に送信されるデータの冗長性を省くため、本発明の実施の形態６によるＩＣカードの変形例として、異常と判断されたフィールドに対して、Ｔｎｇ｜｜Ｌｎｇ｜｜Ｌｙの代わりにＴｎｇ｜｜Ｌｙを送信する方法も考えられる。この場合、Ｌｙはこのフィールドのデータ長を示しているのであって、Ｖ部の長さを示すものではないため、ＴＬＶ構造を成すものではないが、Ｔｎｇで始まる場合は、Ｌ部はＶ部の長さを示すものでなく、異常が検出されたフィールドのデータ長を示すものであるというルールさえ決めておけば実現可能な方法である。
【０１７３】
（実施の形態７）
次に、本発明の実施の形態７によるＩＣカードについて説明する。
本発明の実施の形態７では、読出し要求がなされたデータ中にデータ化け等の異常を有する部分が含まれているかを、読出し要求がなされたデータのレスポンスに先立ち、端末側に送信できるＩＣカードについて説明する。
【０１７４】
前述した本発明の実施の形態１から６では、レコード、或いはフィールドのデータを読み出しながら逐次ＢＣＣの検証を行うものであった。しかし、この方法では、第１のレコード、或いはフィールドのデータが返された時点では、端末側は、以降のデータにデータ化け等の異常が発生しているレコード、或いはフィールドが存在しているかどうかを判別することができない。
【０１７５】
一方で、読出し要求をした全データ中に異常が発生している部分があるか否かを端末側が最初のレスポンスが返された時点でわかれば、より柔軟なサービスの提供が可能となる。例えば、異常の有無によって画面表示のレイアウトを変えたいような場合、最初のレスポンスで異常の有無がわかれば便利である。
【０１７６】
そこで、本発明の実施の形態７によるＩＣカードでは、読出し要求がなされた全データ中に異常が発生している部分があるか否かの情報を、読出し要求がなされたデータのレスポンスに先立ち、端末側に送信するようにした。
【０１７７】
以下に、この本発明の実施の形態７によるＩＣカードについて図１４、図１５を用いて詳細を説明する。なお、本発明の実施の形態７で説明するＩＣカードが行う処理は、ＩＣカードのメモリの構造がレコード型構造と透過型構造とで同じであるため、ここでは、前記実施の形態５、６で説明したＩＣカードのメモリの構造が透過型構造である場合を例にとって説明する。
【０１７８】
図１４は、本発明の実施の形態７によるＩＣカードが行う処理を説明するためのフローチャートである。
図１４において、ＩＣカードのコマンド判断部３１は、端末からコマンドを受信すると（ステップＳ３０１）、該コマンドが、ＩＣカード３が有するメモリ３３に格納されたフィールドの読出しコマンドであるか否かを判断する（ステップ３０２）。この時、受信したコマンドがフィールドの読出しコマンドであると判断した場合には、コマンド判断部３１は、読み出し要求がなされたフィールドの情報を誤り検証部３２及び出力制御部３４に通知して、ステップＳ３０３に行く。一方で、受信したコマンドがフィールドの読出しコマンドでないと判断した場合には、本フローチャートの処理を終了する。
【０１７９】
次に、受信したコマンドがフィールドの読出しコマンドである場合、誤り検証部３２は、先ず、読出し要求がなされた全てのフィールドのＢＣＣを検証し（ステップＳ３０３）、読出し要求がなされた全てのフィールドのＢＣＣが正しいか否かを判断する（Ｓ３０４）。判断の結果、読出し要求がなされた全てのフィールドのＢＣＣが正しい場合には、ステップＳ３０６に行く。
【０１８０】
一方で、読出し要求がなされた全てのフィールド中に、少なくとも１つの異常なフィールドが含まれている場合には、異常なフィールドが含まれている旨を示す情報を送信バッファにセットし（ステップＳ３０５）、ステップＳ３０６に行く。
【０１８１】
ステップＳ３０６では、読出し要求がなされたフィールドのデータを端末に送信する送信処理を行う（ステップＳ３０６）。なお、かかる送信処理は、どのような送信方法によって行っても良く、例えば、図１１のステップＳ２０３からステップＳ２１５の処理を行う。
【０１８２】
次に、前記ステップＳ３０６として、図１１のステップＳ２０３からステップＳ２１５の処理を行った際の具体的なシーケンス処理について図１５を用いて説明する。なお、以下の説明では、ＩＣカード３が有するメモリ３３に図１０に示すような４つのフィールド（以降、上から第１、第２、第３、第４のフィールドと称する）が格納されており、読み出しコマンドとして当該全フィールドの読み出し要求がなされたものとする。
【０１８３】
図１５は、第３のフィールドに異常が発生している場合の本発明の実施の形態７によるＩＣカードが行う処理を説明するシーケンス図である。なお、図中の、“｜｜”は前後の二つのデータの連結を意味する。
【０１８４】
読出し要求がなされたフィールド中に異常が発生している第３のフィールドが含まれる場合には、誤り検証部３２によって読出し要求がなされた全てのフィールド中に、少なくとも１つの異常なフィールドが含まれている旨が検出される。
【０１８５】
そして、図１５に示すように、出力制御部３４によって、異常なフィールドが含まれている旨を示す情報として、異常なフィールドが含まれている旨を示すタグＴｗｒｍが付されたのち、データ本体の長さを示す長さ部Ｌｗｒｍ、及び（Ｔｏｋ｜｜Ｌｗ｜｜Ｖｗ）、（Ｔｏｋ｜｜Ｌｘ｜｜Ｖｘ）、（Ｔｎｇ｜｜Ｌｙ｜｜Ｖｙ）、（Ｔｏｋ｜｜Ｌｚ｜｜Ｖｚ）からなるデータ本体部が送信される。なお、図示するように、端末に対するデータの送信の際には、端末に送信される各フィールドのデータが、ＩＣカードから端末に対して一度に送信できるデータ量毎に順次送信される。
【０１８６】
タグＴｗｒｍの後に付された長さ部Ｌｗｒｍは、これ以降に送信される全情報の長さ（これ以降の全ＴＬＶの総和）を示し、全体として構造型ＴＬＶ（入れ子型）を形成するようにしている。また、長さ部Ｌｗｒｍ以降に送信されるデータは、図１１のステップＳ２０３からステップＳ２１５の処理を行うことにより送信される図１２を用いて説明した本発明の実施の形態５によるＩＣカードによる送信データと同様である。
【０１８７】
そして、このような処理を行うことにより、端末は、読出し要求がなされたデータのレスポンスに先立ち、読出し要求がなされた全データ中に異常が発生している部分があることを知ることが可能になる。
【０１８８】
なお、前記具体例では、本発明の実施の形態７によるＩＣカードでは、出力制御部３４からの出力データとして構造型ＴＬＶの形体をとるものについて説明したが、Ｔｗｒｍ｜｜ＬｗｒｍをＶ部なしの一つのＴＬＶとみなし、Ｌｗｒｍの値として０をセットするというルールを採用してもよい。なお、Ｌｗｒｍ以降のシーケンスについては図１２を用いて説明した本発明の実施の形態５によるＩＣカードによる送信データと同様である。
【０１８９】
以上のように、本発明の実施の形態７によるＩＣカードによれば、誤り検証部が３２が、レスポンスの返送に先立ち、読み出し要求がなされた全てのフィールドの誤り検出符号を検証し、出力制御部３４が、誤り検証部３２による検証により、少なくとも一つのフィールドが異常であると判断された場合には、読み出し要求がなされたフィールド中に異常なフィールドが含まれる旨の情報を、フィールドのデータを出力するよりも前に送信するようにしたので、読出し要求のなされた全てのデータ中に異常を有するデータがあるか否かを最初のレスポンスで知ることができ、柔軟なサービスの提供が可能となる。
【０１９０】
なお、本発明の実施の形態７では、前記実施の形態５、６で示した、ＩＣカードのメモリの構造が透過型構造である場合を例にとって説明したが、前記実施の形態１から４で示した、ＩＣカードのメモリの構造がレコード型構造である場合であっても同様に、本発明の実施の形態７で説明したＩＣカードの処理を適用することが可能である。
【０１９１】
また、本発明の実施の形態７によるＩＣカードでは、全フィールドが正常であった場合には、直ちに、読出し要求がなされたフィールドのデータを端末に送信する送信処理を行うものについて説明したが、ＩＣカードのメモリの構造が透過型構造である場合において、読出し要求がなされた全てのフィールドのデータが正常であることを示す情報を一括して端末に対して送信するようにしてもよい。なお、かかる情報送信は、全フィールドデータの送信に先立って行う他、全フィールドデータの送信後に行っても良い。これにより、各フィールドデータの前に専用のタグＴｏｋをそれぞれ設けることなく読み出し要求がなされたデータを送信することができ、伝送効率を上げることができるという効果が得られる。
【０１９２】
（実施の形態８）
次に、本発明の実施の形態８によるＩＣカードについて説明する。
本発明の実施の形態８では、読出し要求がなされたデータ中にデータ化け等の異常を有する部分がある場合に、当該異常が発生している部分の位置を、読出し要求がなされたデータのレスポンスに先立ち、端末側に送信できるＩＣカードについて説明する。
【０１９３】
前述した本発明の実施の形態７では、読出し要求のなされた全てのデータ中に異常があるか否かを最初のレスポンスで知ることが可能となるが、どのレコード、或いはフィールドに異常が生じているかは、その後に送信されてくるデータのタグ情報等によって判断する必要がある。
【０１９４】
そこで、本発明の実施の形態８によるＩＣカードでは、読出し要求がなされた全データ中に異常が発生している部分がある場合には、異常と判断されたレコードのタグ情報、或いは異常と判断されたフィールドの位置情報を、読出し要求がなされたデータのレスポンスに先立ち、端末側に送信するようにした。
【０１９５】
以下に、この本発明の実施の形態８によるＩＣカードについて図１６、図１７を用いて詳細を説明する。なお、本発明の実施の形態８で説明するＩＣカードが行う処理は、ＩＣカードのメモリの構造がレコード型構造と透過型構造とで同じであるため、ここでは、前記実施の形態５、６で説明したＩＣカードのメモリの構造が透過型構造である場合を例にとって説明する。
【０１９６】
図１６は、本発明の実施の形態８によるＩＣカードが行う処理を説明するためのフローチャートである。
図１６において、ＩＣカードのコマンド判断部３１は、端末からコマンドを受信すると（ステップＳ４０１）、該コマンドが、ＩＣカード３が有するメモリ３３に格納されたフィールドの読出しコマンドであるか否かを判断する（ステップ４０２）。この時、受信したコマンドがフィールドの読出しコマンドであると判断した場合には、コマンド判断部３１は、読み出し要求がなされたフィールドの情報を誤り検証部３２及び出力制御部３４に通知して、ステップＳ４０３に行く。一方で、受信したコマンドがフィールドの読出しコマンドでないと判断した場合には、本フローチャートの処理を終了する。
【０１９７】
次に、受信したコマンドがフィールドの読出しコマンドである場合、誤り検証部３２は、先ず、読出し要求がなされた全てのフィールドのＢＣＣを検証し（ステップＳ４０３）、読出し要求がなされた全てのフィールドのＢＣＣが正しいか否かを判断する（Ｓ４０４）。判断の結果、読出し要求がなされた全てのフィールドのＢＣＣが正しい場合には、ステップＳ４０６に行く。
【０１９８】
一方で、読出し要求がなされた全てのフィールド中に、少なくとも１つの異常なフィールドが含まれている場合には、異常が検出されたフィールドの位置情報、例えばフィールド番号の前にタグＴｐｏｎｔと長さ部Ｌｐｎｔを付加し、当該フィールド番号をデータ本体部とするＴＬＶ構造のデータを送信バッファにセットし（ステップＳ４０５）、ステップＳ４０６に行く。なお、Ｔｐｎｔは異常を検出したフィールド番号を示すタグである。ＬｐｎｔはＶ部の長さなので、フィールド番号が１バイトで符号化される場合は、Ｌｐｎｔの値は１となる。
【０１９９】
次に、端末から読出し要求がなされたデータであることを示すタグＴａｌｌと、読出し要求がなされた全データ長を示す長さ部Ｌａｌｌを送信バッファにセットする（ステップＳ４０６）。
【０２００】
そして、タグＴａｌｌ、長さ部Ｌａｌｌの後に、データ本体部となる読出し要求がなされた全フィールドのデータを連結して、順次送信バッファにセットし（ステップＳ４０７）、処理を終了する。なお、ＩＣカードから端末に対するデータの送信は、ＩＣカードから端末に対して一度に送信できるデータ量毎に順次行われる。
【０２０１】
次に、本発明の実施の形態８によるＩＣカードと端末間で行われる処理について図１７を用いて説明する。なお、以下の説明では、ＩＣカード３が有するメモリ３３に図１０に示すような４つのフィールド（以降、上から第１、第２、第３、第４のフィールドと称する）が格納されており、読み出しコマンドとして当該全フィールドの読み出し要求がなされたものとする。
【０２０２】
図１７は、第３のフィールドに異常が発生している場合の本発明の実施の形態８によるＩＣカードが行う処理を説明するシーケンス図である。なお、図中の、“｜｜”は前後の二つのデータの連結を意味する。
【０２０３】
読出し要求がなされたフィールド中に異常が発生している第３のフィールドが含まれる場合には、誤り検証部３２によって読出し要求がなされた全てのフィールド中の、第３のフィールドに異常なデータが含まれている旨が検出される。
【０２０４】
そして、図１７に示すように、出力制御部３４によって、先ず、異常が発生している第３のフィールドのフィールド番号の前に、タグＴｐｏｎｔと長さ部Ｌｐｎｔを付加したＴＬＶ構造のデータが送信される。これにより、異常と判断されたフィールドの位置情報を、読出し要求がなされたデータのレスポンスに先立ち、端末側に送信することができ、端末側はＴｐｎｔで始まるＴＬＶによって、異常を起こしているフィールドを特定できる。
【０２０５】
その後、出力制御部３４によって、端末から読出し要求がなされたデータであることを示すタグＴａｌｌと、読出し要求がなされた全データ長を示す長さ部Ｌａｌｌ、及び読出し要求がなされた全フィールドのデータを連結した（Ｖｗ｜｜Ｖｘ｜｜Ｖｙ｜｜Ｖｚ）からなるデータ本体部が端末に対して送信される。なお、図示するように、端末に対するデータの送信の際には、端末に送信される各フィールドのデータがＩＣカードから端末に対して一度に送信できるデータ量毎に順次送信される。
【０２０６】
以上のように、本発明の実施の形態８によるＩＣカードによれば、誤り検証部３２が、レスポンスの返送に先立ち、読み出し要求がなされた全てのフィールドの誤り検出符号を検証し、出力制御部３４が、誤り検証部３２による検証により、少なくとも一つのフィールドが異常であると判断された場合には、異常と判断されたフィールドの位置情報を、フィールドのデータを出力するよりも前に出力するようにしたので、データのレスポンスに先立ち、異常が発生しているフィールド位置を知ることが可能となる。また、その後に送信するフィールドのデータに対して、異常が発生しているか否かを示す専用のタグを付する必要もなくなるため、データの伝送効率を上げることも可能となる。
【０２０７】
なお、先に読み出し要求がなされたフィールドのデータを送信後、誤りのあるフィールド番号のデータを送信するようにしても良い。この場合には、データのレスポンスに先立って、異常が発生しているフィールド位置を知ることはできないが、異常が発生しているか否かを示す専用のタグを付する必要がなく、異常なフィールドの位置を一括して端末に知らせることができるため、伝送効率を上げることが可能になる。
【０２０８】
また、本実施例では、異常を起こした部分の位置情報としてフィールド番号を例としたが、例えばフィールドの論理アドレス等、位置情報を特定するものであればよい。
【０２０９】
また、本発明の実施の形態８では、前記実施の形態５、６で示した、ＩＣカードのメモリの構造が透過型構造である場合を例にとって説明したが、前記実施の形態１から４で示した、ＩＣカードのメモリの構造がレコード型構造である場合であっても、本実施の形態８で示したフィールド番号に替えて、レコードを特定するための情報、例えばタグ情報を用いれば、本発明の実施の形態８で説明したＩＣカードが行う処理を同様に適用することができる。また、ＩＣカードのメモリの構造がレコード型構造である場合において、異常が検出されたレコードを示す情報の後に送信するデータは、レコードのタグ情報を含むＴＬＶ構造のデータを送信しても良いし、また、各レコードのデータ本体部のデータのみを送信してもよい。
【０２１０】
（実施の形態９）
以下に、本発明の実施の形態９によるＩＣカードについて説明する。
本発明の実施の形態９では、ＩＣカードのメモリの構造が透過型構造である場合において、ＩＣカードに格納するデータのフィールド長を可変にすることができるＩＣカードについて説明する。
【０２１１】
ＩＣカードのメモリの構造が透過型構造である場合に、異常を起こしている可能性の範囲は、予め決められたフィールドのデータ量の範囲に限定されている。この際、フィールドのサイズが小さいほど、異常が発生している可能性のある範囲を絞り込むことが可能となるが、一方でフィールドのサイズが小さい場合には、ＢＣＣによる冗長性が増してしまう。そのため、データの性質によって、ＢＣＣを付加するフィールドの単位を変えることができれば効果的である。
【０２１２】
しかしながら、透過型ファイルを創生する際にフィールド長を指定するという一般的な方法では、フィールド長はそのファイルに対して固定長にならざるを得ない。
そこで、本発明の実施の形態９によるＩＣカードでは、メモリへのデータ書込みの際に、データを書き込む単位でＢＣＣを付加することにより、ＩＣカードのメモリに格納されるフィールド長を可変にすることとした。
【０２１３】
以下に、この本発明の実施の形態９によるＩＣカードについて、図１８、図１９を用いて詳細に説明する。
図１８は、本発明の実施の形態９によるＩＣカードの構造を説明するためのブロック図である。
【０２１４】
図１８において、本発明にかかるＩＣカード４は、コマンド判断部３１と、誤り検証部３２と、メモリ３３と、出力制御部３４と、データ書込み部５１とからなる。なお、前記実施の形態５で図９を用いて説明したＩＣカードと同じ構成要素については、同一符号を付し、ここでは説明を省略する。
【０２１５】
書き込み部５１は、コマンド判断部３１により受信したコマンドがフィールドの書き込みコマンドであると判断された際に動作するものであり、該コマンドとともに送信される所定のデータ長を有するデータの誤り検出符号を計算するとともに、計算した誤り検出符号を当該所定のデータ長を有するデータの直後に付してデータの書き込みを行う。
【０２１６】
次に、本発明の実施の形態９によるＩＣカードのデータ書き込み動作について図１９を用いて説明する。
図１９は、本発明の実施の形態９によるＩＣカードにデータ書き込みコマンドがなされた際の処理を説明するためのフローチャートである。
【０２１７】
図１９において、ＩＣカード４のコマンド判断部３１は、端末２からコマンドを受信すると（ステップＳ５０１）、該コマンドが、ＩＣカード４が有するメモリ３３に対してデータを書き込む書き込みコマンドであるか否かを判断する（ステップ５０２）。この時、受信したコマンドが書き込みコマンドであると判断した場合には、コマンド判断部３１は、データの書き込み命令とともに、端末側から送信される所定のデータ長を有するデータを書き込み部５１に出力して、ステップＳ５０３に行く。一方で、受信したコマンドがフィールドの読出しコマンドでないと判断した場合には、本フローチャートの処理を終了する。
【０２１８】
次に、受信したコマンドが書き込みコマンドである場合には、書き込み部５１は、該コマンドとともに送信される所定のデータ長を有するデータの誤り検出符号を計算する（ステップＳ５０３）。その後、当該コマンドとともに送信されたデータのデータ長とデータ本体とをファイルに書き込み（ステップ５０４）、書き込んだデータの直後にステップＳ５０３で計算したＢＣＣを書き込む（ステップ５０５）。なお、誤り検出符号を計算処理の時間的な位置は、コマンドで送られてきたデータの書き込み後であってもよい。
【０２１９】
以上のように、本発明の実施の形態９によるＩＣカードによれば、書き込み部５１が、コマンドとともに送信される所定のデータ長を有するデータの誤り検出符号を計算するとともに、計算した誤り検出符号を当該所定のデータ長を有するデータの直後に付してデータの書き込みを行うようにしたことにより、データ書込みコマンドで送られてきたデータ長の単位でＢＣＣが付加されるため、メモリに格納されるフィールドの長さを可変にすることができる。したがって、例えば重要なデータは小さなフィールド長で書き込み、それ以外のデータは大きなフィールド長で書き込むことにより、データの性質に応じて異常が発生していることを検出する範囲を絞り込むことができ、柔軟性に富んだ運用が可能となる。
【０２２０】
なお、本発明の実施の形態１から９では、レコード型構造あるいは透過型構造のファイルにおいて、データに対して排他的論理和等の誤り検出機能が付されている際の処理について説明を行ったが、データに対して誤り訂正機能が付されている場合であっても本発明を同様に適用することが可能である。すなわち、データの誤り検出符号を検証する誤り検証部１２、３２に替えて、データの誤り訂正符号により誤り訂正がなされたか否かを検証する誤り訂正検証部を設け、出力制御部１３、３４からのレスポンスとして、「異常の有無」に替えて「データ訂正の有無」を示す情報を出力するようにすれば良い。なお、具体的な実現手段は上述した全ての実施例と同様である。
【０２２１】
また、本発明は、本発明の実施の形態１から９で説明したＩＣカードが行う処理内容をプログラムにして、当該プログラムをＣＰＵ等により実行させることにより実現することも可能である。また、このようなプログラム自体は、フレキシブルディスク、光ディスク、半導体記憶装置等の様々な記憶媒体に記録させ、または、インターネット等の通信回線を介して伝送させることが可能である。
【産業上の利用可能性】
【０２２２】
本発明にかかるＩＣカードは、大容量のデータを扱うシステムに有用である。また、ＩＣカード内のファイル構造として、レコード型および透過型の双方に適用可能である。
【図面の簡単な説明】
【０２２３】
【図１】本発明の実施の形態１によるＩＣカードの構造を説明するためのブロック図
【図２】本発明の実施の形態１によるＩＣカードが有するメモリに格納されたデータの構造を示す構造図
【図３】本発明の実施の形態１によるＩＣカードに読み出しコマンドがなされた際の処理を説明するためのフローチャート
【図４】全レコードが正常である場合における、本発明の実施の形態１によるＩＣカードが行う処理を説明するシーケンス図
【図５】第３のレコードに異常が発生している場合における、本発明の実施の形態１によるＩＣカードが行う処理を説明するシーケンス図
【図６】第３のレコードに異常が発生している場合における、本発明の実施の形態２によるＩＣカードが行う処理を説明するシーケンス図
【図７】第３のレコードに異常が発生している場合における、本発明の実施の形態３によるＩＣカードが行う処理を説明するシーケンス図
【図８】第３のレコードに異常が発生している場合における、本発明の実施の形態４によるＩＣカードが行う処理を説明するシーケンス図
【図９】本発明の実施の形態５によるＩＣカードの構造を説明するためのブロック図
【図１０】本発明の実施の形態５によるＩＣカードが有するメモリに格納されたデータの構造を示す構造図
【図１１】本発明の実施の形態５によるＩＣカードに読み出しコマンドがなされた際の処理を説明するためのフローチャート
【図１２】第３のレコードに異常が発生している場合における、本発明の実施の形態５よるＩＣカードが行う処理を説明するシーケンス図
【図１３】第３のレコードに異常が発生している場合における、本発明の実施の形態６によるＩＣカードが行う処理を説明するシーケンス図
【図１４】本発明の実施の形態７によるＩＣカードが行う処理を説明するためのフローチャート
【図１５】第３のレコードに異常が発生している場合における、本発明の実施の形態７よるＩＣカードが行う処理を説明するシーケンス図
【図１６】本発明の実施の形態８によるＩＣカードが行う処理を説明するためのフローチャート
【図１７】第３のレコードに異常が発生している場合における、本発明の実施の形態８よるＩＣカードが行う処理を説明するシーケンス図
【図１８】本発明の実施の形態９によるＩＣカードの構造を説明するためのブロック図
【図１９】本発明の実施の形態９によるＩＣカードに書き込みコマンドがなされた際の処理を説明するためのフローチャート
【符号の説明】
【０２２４】
１、３、４  ＩＣカード
２  端末
１１、３１  コマンド判断部
１２、３２  誤り検証部
１３、３３  メモリ
１４、３４  出力制御部３４
２０  レコード型ファイル
２１  タグ部
２２  長さ部
２３  データ本体部
２４  誤り検出符号
４０  透過型ファイル
４１  データ本体部
４２  誤り検出符号
５１  書き込み部
【図１】
2006072655.tif 000003
【図２】
2006072655.tif 000004
【図３】
2006072655.tif 000005
【図４】
2006072655.tif 000006
【図５】
2006072655.tif 000007
【図６】
2006072655.tif 000008
【図７】
2006072655.tif 000009
【図８】
2006072655.tif 000010
【図９】
2006072655.tif 000011
【図１０】
2006072655.tif 000012
【図１１】
2006072655.tif 000013
【図１２】
2006072655.tif 000014
【図１３】
2006072655.tif 000015
【図１４】
2006072655.tif 000016
【図１５】
2006072655.tif 000017
【図１６】
2006072655.tif 000018
【図１７】
2006072655.tif 000019
【図１８】
2006072655.tif 000020
【図１９】
2006072655.tif 000021