JP2000172804A - Icカードとicカードのデータ更新方法 - Google Patents

Icカードとicカードのデータ更新方法

Info

Publication number
JP2000172804A
JP2000172804A JP10341838A JP34183898A JP2000172804A JP 2000172804 A JP2000172804 A JP 2000172804A JP 10341838 A JP10341838 A JP 10341838A JP 34183898 A JP34183898 A JP 34183898A JP 2000172804 A JP2000172804 A JP 2000172804A
Authority
JP
Japan
Prior art keywords
volatile memory
card
buffer area
nonvolatile memory
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP10341838A
Other languages
English (en)
Other versions
JP3749798B2 (ja
Inventor
Atsuyoshi Kawaura
淳義 川浦
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=18349148&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=JP2000172804(A) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP34183898A priority Critical patent/JP3749798B2/ja
Priority to DE1999633841 priority patent/DE69933841T8/de
Priority to EP19990118897 priority patent/EP1006478B1/en
Publication of JP2000172804A publication Critical patent/JP2000172804A/ja
Application granted granted Critical
Publication of JP3749798B2 publication Critical patent/JP3749798B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/10Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
    • G07F7/1008Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/341Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/355Personalisation of cards for use
    • G06Q20/3552Downloading or loading of personalisation data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/357Cards having a plurality of specified features
    • G06Q20/3576Multiple memory zones on card

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Accounting & Taxation (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】 【課題】不揮発性メモリへの書き込みを少なくすると共
に汎用的なアトミシティ管理を行う。 【解決手段】プログラム201からプログラム実行環境
部202へ要求された処理がデータの読み出しの場合、
プログラム実行環境部202は、読み出したいデ一タの
アドレス及びデータ長を指定して、コミットバッファ管
理部203へデータ読み出しを依頼し、コミットバッフ
ァ管理部203では、まずコミットバッファ204から
のデータの読み出しを試行し、次にパーシステントデー
タストレジ205からの読み出しを試行し、読み出した
値をプログラム実行環境部202に返却し、プログラム
実行環境部202は、読み出した値をプログラム201
に返却する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、インターネット
などのネットワーク上でプログラムを実行するための環
境を組み込んでアプリケーションのロード機能を有する
ICカードとICカードのデータ更新方法に関する。
【0002】
【従来の技術】従来のICカードでは、ICカード内デ
ータの読み書きはすべてCOS(CardOperating Syste
m)に任されていた。COSはデータの構造が既知であ
るので、データ更新のアトミシティ(原子性:中間段が
ない状態、途中状態がない)は、データ構造を生かして
COS固有に実現可能であった。
【0003】近年、インターネットなどのネットワーク
上でプログラムを実行するための環境(Java)が登
場し、折りからのインターネットブームに乗って急速に
普及している。そこで、この環境を組み込んだICカー
ドの開発が進められている。
【0004】上記環境を組み込んだICカードの場合、
アプリケーション自体がデータを直接読み書きでき、そ
のデータ更新のアトミシティが保証されることが望まれ
る。合わせて、ブロックトランザクション機能が要求さ
れている。COSは、アプリケーションのデータ構造を
知ることができないため、アプリケーションによるデー
タ更新のアトミシティはデータ構造に依存しない汎用的
なものでなければならない。
【0005】上記環境を組み込んだICカードでは、ブ
ロックトランザクション機能の実装が要求されている。
更に、ブロックトランザクション以外でも、1バイト、
2バイト、4バイト、nバイトのデータ更新のアトミシ
ティが要求されている。
【0006】また、ブロックトランザクション機能を提
供するために、コミットバッファという概念が提唱され
ている。一般にコミットバッファはEEPROM等のパ
ーシステントなメモリ空間に取られるが、EEPROM
には書き込み耐用件数が限られ、書き込みに時間がかか
っている。
【0007】
【発明が解決しようとする課題】上記したように、イン
ターネットなどのネットワーク上でプログラムを実行す
るための環境を組み込んだICカードにおいて、アプリ
ケーション自体がデータを直接読み書きでき、そのデー
タ更新のアトミシティが保証されることが望まれ、ブロ
ックトランザクション機能が要求され、アプリケーショ
ンによるデータ更新のアトミシティはデータ構造に依存
しない汎用的なものでなければならず、データ更新のア
トミシティが要求され、さらにブロックトランザクショ
ン機能を提供するためにEEPROM(不揮発性メモ
リ)には書き込み耐用件数が限られ、書き込みに時間が
かかるという問題があった。
【0008】そこで、この発明は、不揮発性メモリへの
書き込みを少なくすると共に汎用的なアトミシティ管理
を行うことのできるICカードとICカードのデータ更
新方法を提供することを目的とする。
【0009】
【課題を解決するための手段】この発明のICカード
は、揮発性メモリと不揮発性メモリとを有し、この不揮
発性メモリにアプリケーションがロードされる機能を有
したICカードにおいて、上記不揮発性メモリにバッフ
ァ領域を設定する設定手段と、この設定手段で設定され
たバッファ領域を用いた要求通信から応答通信までの間
で連鎖処理を行う処理手段とから構成されている。
【0010】この発明のICカードは、揮発性メモリと
不揮発性メモリとを有し、この不揮発性メモリにアプリ
ケーションがロードされる機能を有したICカードにお
いて、上記不揮発性メモリにバッファ領域を設定する設
定手段と、この設定手段で設定されたバッファ領域を所
定量に分割し、この分割された領域を循環して使用する
制御を行う制御手段とから構成されている。
【0011】この発明のICカードは、揮発性メモリと
不揮発性メモリとを有し、この不揮発性メモリにアプリ
ケーションがロードされる機能を有したICカードにお
いて、上記揮発性メモリと不揮発性メモリとにバッファ
領域を設定する設定手段と、この設定手段で設定された
上記不揮発性メモリのバッファ領域を用いたデータ更新
動作に、必要に応じて上記揮発性メモリのバッファ領域
を反映させて制御する制御手段とから構成されている。
【0012】この発明のICカードは、揮発性メモリと
不揮発性メモリとを有し、この不揮発性メモリにアプリ
ケーションがロードされる機能を有したICカードにお
いて、上記揮発性メモリと不揮発性メモリとにバッファ
領域を設定する設定手段と、この設定手段で設定された
バッファ領域に識別情報を付与し、この識別情報を用い
てバッファ領域の使用領域を循環させる制御を行う制御
手段とから構成されている。
【0013】この発明のICカードは、揮発性メモリと
不揮発性メモリとを有し、この不揮発性メモリにアプリ
ケーションがロードされる機能を有したICカードにお
いて、上記揮発性メモリと不揮発性メモリとにバッファ
領域を設定する設定手段と、この設定手段で設定された
バッファ領域で使用する1構成単位を複数の領域に分割
して制御する制御手段とから構成されている。
【0014】この発明のICカードのデータ更新方法
は、揮発性メモリと不揮発性メモリとを有し、この不揮
発性メモリにアプリケーションがロードされる機能を有
したICカードのデータ更新方法であって、上記不揮発
性メモリにバッファ領域を設け、このバッファ領域を用
いた要求通信から応答通信までの間で連鎖処理を行うこ
とを特徴とする。
【0015】この発明のICカードのデータ更新方法
は、揮発性メモリと不揮発性メモリとを有し、この不揮
発性メモリにアプリケーションがロードされる機能を有
したICカードのデータ更新方法であって、上記不揮発
性メモリにバッファ領域を設け、このバッファ領域を所
定量に分割し、この分割された領域を循環して使用する
ことを特徴とする。
【0016】この発明のICカードのデータ更新方法
は、揮発性メモリと不揮発性メモリとを有し、この不揮
発性メモリにアプリケーションがロードされる機能を有
したICカードのデータ更新方法であって、上記不揮発
性メモリだけでなく上記揮発性メモリにもバッファ領域
を設け、必要に応じて上記不揮発性メモリのバッファ領
域を用いたデータ更新動作に上記揮発性メモリのバッフ
ァ領域を反映させるようにしたことを特徴とする。
【0017】この発明のICカードのデータ更新方法
は、揮発性メモリと不揮発性メモリとを有し、この不揮
発性メモリにアプリケーションがロードされる機能を有
したICカードのデータ更新方法であって、上記揮発性
メモリと不揮発性メモリとにバッファ領域を設け、この
バッファ領域に識別情報を付与し、この識別情報を用い
てバッファ領域の使用領域を循環させることを特徴とす
る。
【0018】この発明のICカードのデータ更新方法
は、揮発性メモリと不揮発性メモリとを有し、この不揮
発性メモリにアプリケーションがロードされる機能を有
したICカードのデータ更新方法であって、上記揮発性
メモリと不揮発性メモリとにバッファ領域を設け、この
バッファ領域が使用される1構成単位が複数の領域に分
割されていることを特徴とする。
【0019】
【発明の実施の形態】以下、この発明の一実施の形態に
ついて図面を参照して説明する。
【0020】図1は、ICカードシステムの概略構成を
示している。
【0021】このICカードシステムは、端末装置11
とICカード12とにより構成される。端末装置11
は、演算および人間からの入力を司る演算装置111
と、ICカード12との入出力を司るリーダライタ11
2が結線113により接続されている。
【0022】演算装置111は、演算を行うためのプロ
セッサを持ち、また人間系を含む外部よりの入力手段を
持っている。ICカード12への要求と、結果ステータ
スの処理をここで行う。
【0023】リーダライタ112は、演算装置111よ
り要求を受け、その要求をカード挿入口120に挿入さ
れているICカード12へと発行する。同様にICカー
ド12からのステータスを受け取り、その結果を演算装
置111へと報告する。
【0024】ICカード12は、図1、図2に示すよう
に、外部との接点となるコンタクト20、および演算、
制御を行うプロセッサ21、一時データを配置するため
の揮発性メモリ(RAM)22、永続的にデータを保存
するための不揮発性メモリ(EEPROM)23、プロ
セッサ21を補佐するコプロセッサ24、カードオペレ
ーティングシステム(COS)やアプリケーションのロ
ード/インストールの実行を行うカードドメインやアプ
リケーションのバイトコードをインタープリタするバー
チャルマシンが搭載されているROM25を持つ。また
コンタクト20を通じてリーダライタ112と通信を行
う。上記不揮発性メモリ23としては、フラッシュメモ
リ、FRAM等を用いても良い。
【0025】プロセッサ21は、端末装置11からロー
ドされるアプリケーションをICカード12用のデータ
に変換するカードアプレットCAPを有している。
【0026】上記プロセッサ21の制御のもと、2種類
のメモリ、揮発性メモリ22と不揮発性メモリ23が管
理される。また、特に負荷の生じる演算を行うためのコ
プロセッサ24を持つこともあり、これはプロセッサ2
1の指示のもと演算を行う。
【0027】データは、図1におけるコンタクト20よ
り入力され、一般にRAM22内に格納される。ここで
受信されたデータは、プロセッサ21により解析され、
処理される。ここで、保存が必要なデータはプロセッサ
21の指示のもとEEPROM23に書き込まれ、特殊
な演算が可能なものはコプロセッサ24へと処理の指示
が送られる。また、RAM22では格納しきれない大き
なデータなどが一時的に、EEPROM23の別領域に
書き込まれることがある。
【0028】上記EEPROM23は、図3、図4に示
すように、カードID等が記録されるシステム領域3
1、領域チェック用のBCC領域32、コミットバッフ
ァ領域としてのCB領域33、スロットを管理するスロ
ット管理テーブル34aやアプリケーション間の許可状
態を示す共有テーブル34bが記録されるカードデータ
領域34、複数スロットからなり各スロットごとにアプ
リケーションが記録できるユーザアプリケーション領域
35により構成されている。BCC領域32は、カード
データ領域34、ユーザアプリケーション領域35の正
しさをチェックするための領域である。
【0029】ユーザアプリケーション領域35は、たと
えば、図4に示すように、#0〜#7の8つのスロット
により構成されており、各スロット単位で、ユーザアプ
リケーションが記録されるようになっている。
【0030】まず、図5のプログラムを用いて、ブロッ
クトランザクション内外におけるアトミシティ管埋機能
について説明する。
【0031】COSは、端末装置11からC−APDU
を受信後に自動的にトランザクションを開始する(10
1) また、端末装置11にR−APDUを送信する前に自動
的にトランザクションを終了する(105)。
【0032】COS動作中は、常に連鎖トランザクショ
ン(処理)状態にある。
【0033】トランザクションの同期点は、次のとおり
である。
【0034】ユーザがブロックトランザクションを開始
した時点(102) ユーザがブロックトランザクションを終了した時点(1
03) コミットバッファが次のデータ更新を行うとオーバーフ
ローすることを検出した時点(104) ユーザがコールしたメソッドが、コミットバッファの反
映を必要とするものであった時点(104) 図6は、データの読み込み、書き込み手順を示すもので
ある。すなわち、プログラム201を読み出し、プロセ
ッサ21のプログラム実行環境部202で実行し、コミ
ットバッファ管理部203でコミットバッファ204を
管理してパーシステントデータストレジ205に読み込
み、書き込みを行う。なお、コミットバッファは、詳し
くは後述するが、EEPROM23のほかにRAM22
にも設けられる。
【0035】次に、図6を参照してプログラムからのデ
ータ読み出し手順の概要を説明する。
【0036】プログラム201からプログラム実行環境
部202へ要求された処理がデータの読み出しの場合、
プログラム実行環境部202は、コミットバッファ管理
部203へデ一タ読み出しを依頼する。プログラム実行
環境部202は、読み出したいデ一タのアドレス及びデ
ータ長を指定して、コミットバッファ管理部203へデ
ータ読み出しを依頼する。
【0037】コミットバッファ管理部203では、まず
コミットバッファ204からのデータの読み出しを試行
し、次にパーシステントデータストレジ205からの読
み出しを試行する。コミットバッファ管理部203は、
読み出した値をプログラム実行環境部202に返却す
る。プログラム実行環境部202は、読み出した値をプ
ログラム201に返却する。
【0038】次に、図6を参照してプログラムからのデ
ータ書き込み手順の概要を説明する。
【0039】プログラム201からプログラム実行環境
部202へ要求された処理がデ一タの書き込みの場合、
プログラム実行環境部202は、コミットバッファ管理
部203へデータ書き込みを依頼する。プログラム実行
環境部202は、書き込みたいデータのアドレス、値、
及びデータ長を指定して、コミットバッファ管理部20
3へ書き込みを依頼する。
【0040】コミットバッファ管埋部203では、まず
コミットバッファ204からデータの書き込みを試行
し、次にパーシステントストレジ205からデータの書
き込みを試行する。
【0041】プログラム実行環境部202は、プログラ
ム201から要求されたデ一タ読み込み及び書き込みが
何バイトであるかを知ることができる。プログラム実行
環境部202は、データ更新を行う際、コミットバッフ
ァ管埋部203へ更新したいデ一タ数を通知する。コミ
ットバッファ管理部203は、コミットバッファ204
がオーバーフローするならば、同期点処理を行う。
【0042】次に、コミットバッファ管理部203の書
き込み動作を図7のフローチャートを参照して説明す
る。
【0043】まず、nバイト(Byte)の書き込み要求を
受けた際(ST1)、nバイト(Byte)書き込みがコミ
ットバッファ204に入るかを確認し(ST2)、入ら
ない場合、ブロックトランザクション中かを確認する
(ST3)。ブロックトランザクション中でなければR
AM22にコミット情報を残し(ST4)、コミットバ
ッファ204のデータをパーシステントストレジ205
に反映し(ST5)、コミットバッファ204にnバイ
ト(Byte)のデータを書き込む(ST6)。
【0044】また、ステップST2で、nバイト(Byt
e)書き込みがコミットバッファ204に入る場合は、
ステップST6に進んでコミットバッファ204にnバ
イト(Byte)のデータを書き込む(ST6)。
【0045】また、ステップST3で、ブロックトラン
ザクション中であれば、RAM22にアボート情報を残
して終了する(ST7)。
【0046】次に、コミットバッファ管理部203の読
み込み動作を図7のフローチャートを参照して説明す
る。
【0047】まず、RAM22にアボート情報があるか
を確認し(ST11)、アボート情報がない場合は、コ
ミットバッファ204に指定アドレスのデータ(AI)
が存在するかを確認し(ST12)、指定アドレスのデ
ータ(AI)が存在しない場合はパーシステントデータ
ストレジ205から値を読み込む(ST13)。
【0048】また、ステップST11で揮発性メモリ
(RAM)22にアボート情報がある場合は、ステップ
ST13に進んでパーシステントデータストレジ205
から値を読み込む(ST13)。
【0049】また、ステップST12でコミットバッフ
ァ204に指定アドレスのデータが存在する場合、コミ
ットバッファ204から値を読み込む(ST14)。
【0050】次に、図9と図10を用いてコミットバッ
ファ204の制御について説明する。コミットバッファ
204には、図9に示すRAM22上のコミットバッフ
ァ300と図10に示すEEPROM23上のコミット
バッファ400が存在する。
【0051】図9のRAM22上のコミットバッファ3
00は、TID領域301と、アドレス情報領域302
と、アフターイメージ(A1と略す)領域303と、B
CC(バイトチェック)領域304からなる。アドレス
情報領域302とA1領域303は組みになっていて、
RAM22上のコミットバッファ300はそれらのn組
から構成されている。現在までに登録されている組の数
は、RAM22上のCBRカウンタ305に保存されて
いる。
【0052】図10のEEPROM23上のコミットバ
ッファ400は、RAM22上のコミットバッファ30
0と同じ構造をもつm個の短編から構成されている。E
EPROM23上のコミットバッファ400は、その先
頭であるCB_TOP401から、その終端であるCB_
BTM404の区間に存在する。CB_STA403は
現在のトランザクションにおけるEEPROM22上の
コミットバッファ204の開始位置を、CB_END4
02は現在のトランザクションにおけるEEPROM2
2上のコミットバッファ204の次回開始位置を示す。
【0053】コミットバッファ400は、CB_STA
403からCB_END402で囲まれる領域である。
RAM22上のコミットバッファ300は、EEPRO
M23上のコミットバッファ400に追記する方式で書
かれていく。RAM22上のコミットバッファ300
は、長さがEEPROM23上のコミットバッファ40
0の1頁となるように設計されている。現トランザクシ
ョンに関するコミットバッファ400は、CB_TOP
401からCB_BTM404の間で循環するように使
われ、CB_STA403及びCB_END402も、C
B_TOP401からCB_BTM404の間で循環す
る。
【0054】図9と図10を用いて、指定アドレスから
のデ一タ読み込みについて詳述する。
【0055】コミットバッファ管理部203は、次の手
順でデータ値を得る。1.RAM22上のコミットバッ
ファ300に指定アドレスのデータがあるかを調べ、存
在したならばそのA1を返却する。2.EEPROM2
3上のコミットバッファ400に指定アドレスのデータ
があるかを調べ、存在したならばそのA1を返却する。
3.EEPROM23上の指定アドレスのデータを返却
する。
【0056】図6、図9、図10を用いて、指定アドレ
スへのデータ書き込みについて詳述する。
【0057】コミットバッファ管理部203は、次の手
順でデータを書き込む。 1.更新情報をRAM22上のコミットバッファ300
に反映する。 2.RAM22上のコミットバッファ300がオーバー
フローするならば、RAM22上のコミットバッファ3
00をEEPROM23上のコミットバッファ400に
反映する。 3.EEPROM23上のコミットバッファ400がオ
ーバーフローするならば、EEPROM23上のコミッ
トバッファ400をパーシステントデータストレジ20
5へ反映する。
【0058】ブロックトランザクションのコミットが要
求された場合や、アトミックなデータ更新が要求された
場合には、上記1〜3の処理がオーバーフローと関係な
く行われる。
【0059】次に、有効なコミットバッファの構造と検
出について説明する。
【0060】TIDのMSBは、各トランザクションに
おけるコミットバッファの終端フラグとなっている。E
EPROM23上のコミットバッファ400は、ROM
22上のコミットバッファ300の形式でm頁分あり、
循環形式で使用する。RAM22上のコミットバッファ
300がオーバーフローした場合は、EEPROM23
上のCB_END402の示す頁に書き込まれ、CB_E
ND402は次の頁を指すように更新される。
【0061】[CB_STA403〜CB_END40
2)までが、現在のコミットバッファ上のデータであ
る。なお、上記かぎかっこ「[」は、「以上、以下」の意
味を示し、上記まるかっこ「)」は、「未満」の意味を
示している。
【0062】上記の同期点に達すると、TIDのコミッ
ト終端フラグが立った頁が書き込まれ、TIDが+1さ
れる。TIDはEEPROM23上のコミットバッファ
頁数よりも十分大きな値でもって循環するものとする。
【0063】1Cカード12が処理中に引き抜かれた場
合、次回の1Cカード12が起動された時点でEEPR
OM23上のコミットバッファ400の検査が行われ
る。EEPROM23上のコミットバッファ400のT
ID301の終端フラグが立っている頁の検索が行われ
る。その頁の次の頁のTIDが該当T1DのT1D+1
でない場合、コミットバッファ管理部203は、EEP
ROM23に未反映かもしれない有効なコミットバッフ
ァが存在すると判断する。そして該当TIDを持つEE
PROMコミットバッファ204を実EEPROM20
5へ反映(ロールフォワード)させる。有効なコミット
バッファが存在しない場合、実EEPROM205への
反映は行われない(ロールバックする)。
【0064】R−APDUを送信する直前に、コミット
バッファ管理部203は、無効と判断されるような頁を
EEPROM23のコミットバッファ400に書き込
む。これにより、カード起動時に無駄なロールフォワー
ドが発生しないようになる。
【0065】以上説明したコミットバッファの構造とそ
の処理方法は、EEPROM23への書き込みが少な
く、また平均的にEEPROMコミットバッファが使わ
れるようになる。
【0066】また、コミットバッファの構造を図6のよ
うな構造とすることにより、ストリングサーチが早くで
きるCPUの場合、指定アドレスのデ一タの位置検索の
ためのアドレス302の走査がすばやくできる構造にな
る。
【0067】次に、RAM22上のコミットバッファ3
00をEEPROM23上のコミットバッファ400に
書き込む動作を図11のフローチャートを参照して説明
する。
【0068】コミットバッファ管理部203は、まずR
AM22上にアボート情報があるかを確認し(ST2
1)、ある場合は終了する。ない場合は、RAM22上
のコミットバッファ300を、EEPROM23上のコ
ミットバッファ400に書き込むタイミングかを確認し
(ST22)、書き込むタイミングであれば、EEPR
OM23上のコミットバッファ400をパーシステント
ストレジ205に書き込むタイミングかを確認し(ST
23)、書き込むタイミングであれば、TID301の
コミットバッファ終端フラグをたてる(ST24)。
【0069】RAM22上のコミットバッファ300を
EEPROM23上のコミットバッファ400のCB_
END402からの領域に書き込む(ST25)。
【0070】EEPROM23上のコミットバッファ4
00のCB_STA403〜CB_END402データを
パーシステントストレジ205に書き込む(ST2
6)。
【0071】続いて、CB_STA403をCB_END
402の値とする(ST27)。そして、CB_END
402をシフトさせ、CB_END402がCB_BTM
404に達した場合、CB_END402はCB_TOP
401の位置として終了する(ST28)。
【0072】また、ステップST22で書き込むタイミ
ングでない場合、RAM22上のコミットバッファ30
0にアドレス302とAI303を追加して終了する
(ST29)。
【0073】また、ステップST23で書き込むタイミ
ングでない場合、RAM22上のコミットバッファ30
0をEEPROM23上のコミットバッファ400のC
B_END402からの領域に書き込む(ST30)。
そして、CB_END402をシフトさせ、CB_END
402がCB_BTM404に達した場合、CB_END
402はCB_TOP401の位置として終了する(S
T31)。
【0074】なお、ステップST22におけるRAM2
2上のコミットバッファ300をEEPROM23上の
コミットバッファ400に書き込むタイミングとは、R
AM22上のコミットバッファ300が次の書き込みで
オーバーフローする場合、もしくはブロックトランザク
ションの開始前後の場合である。
【0075】また、ステップST23におけるEEPR
OM23上のコミットバッファ400をパーシステント
ストレジ205に書き込むタイミングとは、EEPRO
M23上のコミットバッファ400が次の書き込みでオ
ーバーフローする場合、もしくはブロックトランザクシ
ョンの開始前後の場合である。
【0076】次に、ICカード起動時に有効なコミット
バッファを検索する動作を図12のフローチャートを参
照して説明する。
【0077】まず、CB_TOP401からCB_BTM
404までの間で、TID301のコミット終端フラグ
を検索し(ST41)、ループ中であればCB_END
404値を現在の短冊の位置とし(ST42)、EEPR
OM23上のコミットバッファ400にて、TID30
1のコミット終端フラグが立っているか確認し(ST4
3)、コミット終端フラグが立っていない場合はステッ
プST41へ戻り、コミット終端フラグが立っている場
合はEEPROM23上のコミットバッファ400にて
次のTIDを取り出し、それが予定された値(現TID
値+1)以外かを確認し(ST44)、予定された値で
あればステップST41へ戻り、予定された値以外であ
れば同じTIDをもつ短冊をCB_END404からA
I走査方向へ調べる(ST45)。
【0078】同じTIDをもつ一番古いセグメント位置
をCB_STA403とする(ST46)。そして、E
EPROM23上のコミットバッファ400をパーシス
テントストレジ205に反映する(ST47)。
【0079】また、ステップST41において、コミッ
ト終端フラグを検索してループ終了ならば、CB_ST
A403値をCB_END402位置とする(ST4
8)。
【0080】ステップST47、またはステップST4
8の後、終了してC−APDU受信状態へ進む。
【0081】以上説明したように上記発明の実施の形態
によれば、機器の動作中のデータ更新のアトミシティが
常に保証される。
【0082】また、コミットバッファへの書き込みが平
均化されるため、パーシステントなデータストレジの書
き込み耐用件数を少なくすることができる。
【0083】また、パーシステントなデータストレジの
コミットバッファの1頁の容量効率が上がり、書き込み
耐用件数及び書き込み回数を低減させることができる。
【0084】また、パーシステントストレジ上のコミッ
トバッファ頁群から、有効なコミットバッファを検出で
きる上に、パーシステントストレジの特定領域への書き
込みの大量発生を防ぐことができる。
【0085】コミットバッファからのデータ読み込みト
ライ時間が早くなり、特にノーヒットだった場合に著し
く速度が向上し、また、ヒットした場合にも速度が向上
する。
【0086】
【発明の効果】以上詳述したようにこの発明によれば、
不揮発性メモリへの書き込みを少なくすると共に汎用的
なアトミシティ管理を行うことのできるICカードとI
Cカードのデータ更新方法を提供することができる。
【図面の簡単な説明】
【図1】ICカードシステムの概略構成を示す図。
【図2】ICカードの概略構成を示すブロック図。
【図3】EEPROMの概略構成を示す図。
【図4】EEPROMのユーザアプリケーション領域の
概略構成を示す図。
【図5】ブロックトランザクション内外におけるアトミ
シティ管埋機能を説明するための図。
【図6】データの読み込み、書き込み手順を示す図。
【図7】コミットバッファ管理部の書き込み動作を説明
するためのフローチャート。
【図8】コミットバッファ管理部の読み込み動作を説明
するためのフローチャート。
【図9】RAM上のコミットバッファを示す図。
【図10】EEPROM上のコミットバッファを示す
図。
【図11】RAM上のコミットバッファをEEPROM
上のコミットバッファに書き込む動作を説明するための
フローチャート。
【図12】ICカード起動時に有効なコミットバッファ
を検索する動作を説明するためのフローチャート。
【符号の説明】
11…端末装置 12…ICカード 21…プロセッサ(設定手段、処理手段、制御手段) 22…揮発性メモリ(RAM) 23…不揮発性メモリ(EEPROM)

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】 揮発性メモリと不揮発性メモリとを有
    し、この不揮発性メモリにアプリケーションがロードさ
    れる機能を有したICカードにおいて、 上記不揮発性メモリにバッファ領域を設定する設定手段
    と、 この設定手段で設定されたバッファ領域を用いた要求通
    信から応答通信までの間で連鎖処理を行う処理手段と、 を具備したことを特徴とするICカード。
  2. 【請求項2】 揮発性メモリと不揮発性メモリとを有
    し、この不揮発性メモリにアプリケーションがロードさ
    れる機能を有したICカードにおいて、 上記不揮発性メモリにバッファ領域を設定する設定手段
    と、 この設定手段で設定されたバッファ領域を所定量に分割
    し、この分割された領域を循環して使用する制御を行う
    制御手段と、 を具備したことを特徴とするICカード。
  3. 【請求項3】 揮発性メモリと不揮発性メモリとを有
    し、この不揮発性メモリにアプリケーションがロードさ
    れる機能を有したICカードにおいて、 上記揮発性メモリと不揮発性メモリとにバッファ領域を
    設定する設定手段と、 この設定手段で設定された上記不揮発性メモリのバッフ
    ァ領域を用いたデータ更新動作に、必要に応じて上記揮
    発性メモリのバッファ領域を反映させて制御する制御手
    段と、 を具備したことを特徴とするICカード。
  4. 【請求項4】 揮発性メモリと不揮発性メモリとを有
    し、この不揮発性メモリにアプリケーションがロードさ
    れる機能を有したICカードにおいて、 上記揮発性メモリと不揮発性メモリとにバッファ領域を
    設定する設定手段と、 この設定手段で設定されたバッファ領域に識別情報を付
    与し、この識別情報を用いてバッファ領域の使用領域を
    循環させる制御を行う制御手段と、 を具備したことを特徴とするICカード。
  5. 【請求項5】 揮発性メモリと不揮発性メモリとを有
    し、この不揮発性メモリにアプリケーションがロードさ
    れる機能を有したICカードにおいて、 上記揮発性メモリと不揮発性メモリとにバッファ領域を
    設定する設定手段と、 この設定手段で設定されたバッファ領域で使用する1構
    成単位を複数の領域に分割して制御する制御手段と、 を具備したことを特徴とするICカード。
  6. 【請求項6】 揮発性メモリと不揮発性メモリとを有
    し、この不揮発性メモリにアプリケーションがロードさ
    れる機能を有したICカードのデータ更新方法であっ
    て、 上記不揮発性メモリにバッファ領域を設け、このバッフ
    ァ領域を用いた要求通信から応答通信までの間で連鎖処
    理を行うことを特徴とするICカードのデータ更新方
    法。
  7. 【請求項7】 揮発性メモリと不揮発性メモリとを有
    し、この不揮発性メモリにアプリケーションがロードさ
    れる機能を有したICカードのデータ更新方法であっ
    て、 上記不揮発性メモリにバッファ領域を設け、このバッフ
    ァ領域を所定量に分割し、この分割された領域を循環し
    て使用することを特徴とするICカードのデータ更新方
    法。
  8. 【請求項8】 揮発性メモリと不揮発性メモリとを有
    し、この不揮発性メモリにアプリケーションがロードさ
    れる機能を有したICカードのデータ更新方法であっ
    て、 上記不揮発性メモリだけでなく上記揮発性メモリにもバ
    ッファ領域を設け、必要に応じて上記不揮発性メモリの
    バッファ領域を用いたデータ更新動作に上記揮発性メモ
    リのバッファ領域を反映させるようにしたことを特徴と
    するICカードのデータ更新方法。
  9. 【請求項9】 揮発性メモリと不揮発性メモリとを有
    し、この不揮発性メモリにアプリケーションがロードさ
    れる機能を有したICカードのデータ更新方法であっ
    て、 上記揮発性メモリと不揮発性メモリとにバッファ領域を
    設け、このバッファ領域に識別情報を付与し、この識別
    情報を用いてバッファ領域の使用領域を循環させること
    を特徴とするICカードのデータ更新方法。
  10. 【請求項10】 揮発性メモリと不揮発性メモリとを有
    し、この不揮発性メモリにアプリケーションがロードさ
    れる機能を有したICカードのデータ更新方法であっ
    て、 上記揮発性メモリと不揮発性メモリとにバッファ領域を
    設け、このバッファ領域が使用される1構成単位が複数
    の領域に分割されていることを特徴とするICカードの
    データ更新方法。
JP34183898A 1998-12-01 1998-12-01 Icカードにおけるデータ書込方法およびicカードにおけるデータ読込方法 Expired - Lifetime JP3749798B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP34183898A JP3749798B2 (ja) 1998-12-01 1998-12-01 Icカードにおけるデータ書込方法およびicカードにおけるデータ読込方法
DE1999633841 DE69933841T8 (de) 1998-12-01 1999-09-24 Chipkarte und Datenaktualisierungsverfahren für eine Chipkarte
EP19990118897 EP1006478B1 (en) 1998-12-01 1999-09-24 IC card and data updating method for IC card

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP34183898A JP3749798B2 (ja) 1998-12-01 1998-12-01 Icカードにおけるデータ書込方法およびicカードにおけるデータ読込方法

Publications (2)

Publication Number Publication Date
JP2000172804A true JP2000172804A (ja) 2000-06-23
JP3749798B2 JP3749798B2 (ja) 2006-03-01

Family

ID=18349148

Family Applications (1)

Application Number Title Priority Date Filing Date
JP34183898A Expired - Lifetime JP3749798B2 (ja) 1998-12-01 1998-12-01 Icカードにおけるデータ書込方法およびicカードにおけるデータ読込方法

Country Status (3)

Country Link
EP (1) EP1006478B1 (ja)
JP (1) JP3749798B2 (ja)
DE (1) DE69933841T8 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009251818A (ja) * 2008-04-03 2009-10-29 Dainippon Printing Co Ltd Icチップ用データ書き込み装置及びデータ書き込み方法
KR100951949B1 (ko) 2007-11-15 2010-04-09 주식회사 케이티 스마트 카드에서의 데이터베이스 관리 시스템을 이용한정보 관리 방법 및 장치
EP2711871A2 (en) 2012-09-20 2014-03-26 Kabushiki Kaisha Toshiba IC card and IC card control method

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10320062A1 (de) 2003-05-06 2004-12-16 Giesecke & Devrient Gmbh Speicherverwaltung bei einem tragbaren Datenträger
JP5259513B2 (ja) 2009-07-15 2013-08-07 株式会社東芝 携帯可能電子装置、icカードおよび携帯可能電子装置の制御方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2701578B1 (fr) * 1993-02-16 1995-03-31 Gemplus Card Int Procédé d'écriture dans une mémoire non volatile, notamment dans une carte à mémoire.
BR9713267A (pt) * 1996-10-25 2004-06-15 Schlumberger Systems & Service Cartão de circuito integrado para uso com um terminal, processo para uso com o mesmo, microcontrolador e processo para sua programação
US6488211B1 (en) * 1997-05-15 2002-12-03 Mondex International Limited System and method for flexibly loading in IC card

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100951949B1 (ko) 2007-11-15 2010-04-09 주식회사 케이티 스마트 카드에서의 데이터베이스 관리 시스템을 이용한정보 관리 방법 및 장치
JP2009251818A (ja) * 2008-04-03 2009-10-29 Dainippon Printing Co Ltd Icチップ用データ書き込み装置及びデータ書き込み方法
EP2711871A2 (en) 2012-09-20 2014-03-26 Kabushiki Kaisha Toshiba IC card and IC card control method
JP2014063314A (ja) * 2012-09-20 2014-04-10 Toshiba Corp Icカード
US9798739B2 (en) 2012-09-20 2017-10-24 Kabushiki Kaisha Toshiba IC card and IC card control method

Also Published As

Publication number Publication date
JP3749798B2 (ja) 2006-03-01
EP1006478A3 (en) 2001-02-28
EP1006478B1 (en) 2006-11-02
EP1006478A2 (en) 2000-06-07
DE69933841T8 (de) 2007-06-21
DE69933841T2 (de) 2007-03-08
DE69933841D1 (de) 2006-12-14

Similar Documents

Publication Publication Date Title
US5410700A (en) Computer system which supports asynchronous commitment of data
EP0964370B1 (en) Method and device for loading instruction codes to a memory and linking said instruction codes
US7882198B2 (en) Shared JAVA JAR files
KR100528973B1 (ko) 가비지 콜렉션 방법 및 그 장치
KR20040032199A (ko) 비휘발성 메모리에의 데이터 저장 방법 및 장치
JPH04213116A (ja) マイクロプロセッサを備えるメモリカード読取機にアプリケーションプログラムをロードする方法及びこの方法を実施するためのシステム
JP4398619B2 (ja) Icカードとこのicカードにおける揮発性メモリの管理方法
US20010034818A1 (en) Method for linking program modules reloaded into a main memory of a processor on a smart card
JP2000172804A (ja) Icカードとicカードのデータ更新方法
JP5007868B2 (ja) プロセッサメモリシステム
JP3515417B2 (ja) 非持続メモリ内にオブジェクトを作成する方法および装置、ならびにオブジェクトへのアクセス可能性を維持する方法
US7168612B2 (en) Method and apparatus for processing transactions in a data processing system
Oestreicher Transactions in java card
EP2102748B1 (en) System and method for recovery of memory transactions
JP4460850B2 (ja) Icカードとicカードの処理方法
JP2000172808A (ja) Icカードとアプリケーション管理方法
JP4195822B2 (ja) Icカード及びicカードプログラム
JP2001067210A (ja) Icカードとicカードにおけるアプリケーションのインストール方法
JP2000148945A (ja) Icカード
JP2003114831A (ja) 携帯可能電子装置
JPH04205291A (ja) Icカードとその情報送出方式
JP2000172790A (ja) 端末装置とicカード処理システムとアプリケーションのインストール方法
JP2005011171A (ja) Icカード及びicカードプログラム
CN115840532A (zh) 非连续变长的Flash缓存方法、电子设备及存储介质
US20120131634A1 (en) Method of executing an application embedded in a portable electronic device

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040810

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041012

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050830

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051031

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20051129

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20051205

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091209

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091209

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101209

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111209

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121209

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121209

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131209

Year of fee payment: 8

EXPY Cancellation because of completion of term