JP2015501039A - スマートカードの不揮発性メモリにおけるデータの書込み - Google Patents

スマートカードの不揮発性メモリにおけるデータの書込み Download PDF

Info

Publication number
JP2015501039A
JP2015501039A JP2014543962A JP2014543962A JP2015501039A JP 2015501039 A JP2015501039 A JP 2015501039A JP 2014543962 A JP2014543962 A JP 2014543962A JP 2014543962 A JP2014543962 A JP 2014543962A JP 2015501039 A JP2015501039 A JP 2015501039A
Authority
JP
Japan
Prior art keywords
address
data
written
write command
smart card
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.)
Pending
Application number
JP2014543962A
Other languages
English (en)
Inventor
ミカエル・バルト
ジョフレー・スピノー
Original Assignee
モルフォ
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
Application filed by モルフォ filed Critical モルフォ
Publication of JP2015501039A publication Critical patent/JP2015501039A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0643Management of files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/102External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Storage Device Security (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Credit Cards Or The Like (AREA)
  • Read Only Memory (AREA)

Abstract

本発明は、詳細には、スマートカードの不揮発性メモリにデータを書き込む方法に関する。本発明は、スマートカードおよびそのような方法を実施することができるコンピュータプログラム、そのようなコンピュータプログラムを含む記憶媒体、ならびにスマートカードおよび同カードへの書込みを可能にするデバイスを含むシステムにも関する。

Description

本発明は、スマートカードの不揮発性メモリにおけるデータの書込みに関する。
スマートカードは、典型的には、不揮発性メモリと揮発性メモリとの両方を含む。
「不揮発性」メモリは、外部電力を必要とせずにデータを記憶することができるメモリである。非揮発性メモリには、プログラム可能なもの(たとえばEEPROMメモリ、フラッシュメモリなど)またはプログラム不可能なもの(一例にはROMメモリがあり、その内容は製造段階で一度限りすべて定義される)がある。プログラム可能な不揮発性メモリは、たとえば様々なディレクトリおよびサブディレクトリを含んでいるファイルシステム、登録会員に特有のデータ(名称、連絡先など)を有するファイル、Java(登録商標)Cardアプレットなどといった、カードごとに異なり得るデータまたはアプリケーションを記憶するためにしばしば使用される。スマートカードは、典型的に、プログラム可能な不揮発性メモリ(通常EEPROM)の約8KB〜256KBの容量を有する。プログラム不可能な不揮発性メモリは、オペレーティングシステムと、(より一般的には)カードごとに異なる可能性が低いデータとを記憶するためにしばしば使用される。スマートカードは、典型的に、ROMの約64KB〜512KBの容量を有する。もちろん、他の容量の(other amounts of) RAM、EEPROMまたはROMも存在する。いくつかのスマートカードは、ROMとEEPROMとの代わりにフラッシュメモリを使用する。
(RAMメモリなどの)「揮発性」メモリは、外部電源の供給が遮断されたとき、その内容が失われるメモリである。揮発性メモリは、典型的に、不揮発性メモリよりも、特に書込み操作に関してはるかに高速である。たとえば、EEPROMまたはフラッシュメモリへの書込みは、一般にRAMへの書込みよりもはるかに遅い。揮発性メモリは、たとえばソフトウェアの実行中に一時データ(状態変数、計算結果など)を記憶するのに使用される。スマートカードは典型的に、通常2KB〜8KBの間である、RAMメモリを含む。このRAMの多くは、一般に、変数(特にカードのオペレーティングシステム)および様々なアプリケーションによって占有される。RAMの一部分は、一般にバッファによって占有され、このバッファは典型的に、数百バイトのサイズであり、コマンド受取り専用である。
スマートカードは、一般に、そのメモリのいかなるものにも、外部のエンティティが絶対アドレス指定で書き込むことを許さない。その代わりに、スマートカードは、一般に(ISO 7816-4インターフェースなどの)インターフェースを提供し、外部のエンティティは、このインターフェースを介して、カードに(読取りコマンドまたは書込みコマンドを含む)コマンドを送ることができる。コマンドはバッファで受け取られる。受け取ったコマンドを実行する役割を担うのはカード自体であり、カードは、コマンドを処理するかまたは拒否するかを選択すること、特定のアクセスを禁止すること、いくつかのアクセスに対して認証を求めることなどができる。最も一般的なプロトコルであるISO 7816-4規格のT=0プロトコルによれば、コマンドは、5バイト(クラスバイト、命令バイト、ならびにパラメータP1、P2およびP3の3つのバイト)を含み、任意選択で、これにデータ(たとえばカードに書き込まれるべきデータ)が続く。任意のそのようなデータの長さは、通常はバイトP3によって指定され、したがって、一度に送られるのはわずか255バイト(これに前の5バイトが加わる)である。しかしながら、これは、少なくとも260バイトのバッファを必要とする。他の変形形態および他のプロトコル(1つのコマンドで、理論上64KBまでのデータを送受することができるT=1プロトコルなど)も存在する。
比較的小サイズのバッファおよびT=0プロトコルの制限を想定すると、一般に、非常に長いコマンドをカードに送ることは不可能である。カード(T=0)上のファイルに255バイト超を書き込む場合、データは、通常、より小さいサブセット(たとえば255バイトのブロック)に分割され、ブロックと同数の書込みコマンドが送られる。
たとえば、UPDATE BINARYコマンド(ISO 7816-4規格の命令0xD6)が用いられ得、これによって、いわゆる「透過的な」ファイルに書き込むことが可能になる。これは、タイプEFのファイル(基本ファイル)であり、(ファイルの開始の0x0000と、ファイルの最終バイトを変更する場合のファイルサイズから少なくとも1バイトを減じたものに相当するアドレスとの間で)対象を指定することにより、書き込むことができる。しかしながら、これには、送信エンティティが、データサブセット(255バイトのブロック)ばかりか、ターゲットファイルの各ブロックを書き込むべきアドレスも計算する必要があり、実用的でない。
UPDATE RECORDコマンド(ISO 7816-4規格の命令0xDC)を用いることも知られており、これによって、インデックスで識別される各レコードを有する、レコードのEFファイルを生成することができる。各レコードは、(カード次第で)様々なサイズを有することができる。しかしながら、これには、レコードのインデックスを計算する必要があり、実用的でない。加えて、あるサイズのブロック(たとえば11バイトのブロック)を書き込んで、別のサイズのブロック(たとえば13バイトのブロック)を読み取る必要がときどきある。この場合、読み取るべきデータが複数のレコードおよびレコード部分にまたがるので、レコードのファイル構造が極めて非実用的である。
PUT DATAコマンド(ISO 7816-4規格の命令0xDA)を用いることも知られている。この規格は、(PUT DATAコマンドによって書き込まれることになる)選択されたオブジェクトに依拠して、「1回書き込む」操作または「更新する」操作または「追加する」操作を実行することが可能であることを規定している。しかしながら、この規格では、「追加する」操作の手続きが規定されていない。
本発明は、この状況を改善することを目的とするものである。
本発明の一態様は、スマートカードの不揮発性メモリにデータを書き込む方法に関するものであり、この方法は、
/a/ スマートカードの揮発性メモリのバッファにおいて書込みコマンドを受け取るステップと、
/b/ スマートカードによって、書込みコマンドに関連したオブジェクト識別パラメータを、スマートカードの不揮発性メモリに記憶されたオブジェクト識別パラメータと比較するステップと、
/c/ 比較結果(the comparison)が正であれば、
/c1/ 書込みコマンドに組み込まれている書き込むべきデータを、バッファから、書込みコマンドに関連したオブジェクトに、不揮発性メモリにその値が記憶されている事前定義されたアドレスにおいて書き込むステップと、
/c2/ 記憶された事前定義されたアドレスと書き込まれたデータのサイズの合計に相当するアドレスを計算するステップと、
/c3/ 計算されたアドレスを、事前定義されたアドレスの代わりに不揮発性メモリに記憶するステップと、
/d/ 比較結果が負であれば、
/d1/ 書込みコマンドに組み込まれている書き込むべきデータを、バッファから、書込みコマンドに関連したオブジェクトのデフォルトアドレスに書き込むステップと、
/d2/ デフォルトアドレスと書き込まれたデータのサイズの合計に相当するアドレスを計算するステップと、
/d3/ 計算されたアドレスを、事前定義されたアドレスとして不揮発性メモリに記憶するステップと
を含む。
この方法は、スマートカードにおいて、大量のデータを書き込む単純なやり方を提供するという点で有利である。この方法により、エンティティがアドレスまたはインデックスを計算するためのデータを送る必要がなく、カードに、バッファのサイズより長いデータ、ならびにT=0のプロトコルによって課される255バイトの制限を超過するデータを書き込むことが可能になる。これは、カード自体が生体データを認証することを可能にする「カード上の一致」技法などの生体測定の技法を利用するカードにおいて特に有益である。実際、生体データ(たとえば指紋または顔認識データ)は、数キロバイトまでといった、非常に大きいものであり得る。
本発明の一態様は、スマートカードのプロセッサによって実行されたとき、本発明の一態様による方法を実施する一連の命令を含むコンピュータプログラムに関する。
本発明の一態様は、本発明の一態様によるコンピュータプログラムを記憶する不揮発性のコンピュータ可読記憶媒体に関する。
本発明の一態様は、不揮発性メモリと、揮発性メモリと、揮発性メモリに含まれているバッファと、不揮発性メモリに書き込むための書込みコマンドを処理する回路とを備えるスマートカードに関するものであり、この回路は、バッファに記憶されており、コマンドが書き込む不揮発性メモリに記憶されているオブジェクトを識別するパラメータに関連付けられているコマンドを処理するように構成され、前記回路は、不揮発性メモリに記憶されているオブジェクトを識別するパラメータと、このオブジェクトの内部の事前定義されたアドレスとを不揮発性メモリに記憶するように構成されており、この回路は、書込みコマンドを処理するとき、書込みコマンドに関連したオブジェクト識別パラメータを、不揮発性メモリに記憶されたオブジェクト識別パラメータと比較して、比較結果が正であれば、書込みコマンドに組み込まれている書き込むべきデータを、バッファから、書込みコマンドに関連したオブジェクトに、不揮発性メモリに記憶されている事前定義されたアドレスにおいて書き込み、記憶されている事前定義されたアドレスと書き込まれたデータのサイズの合計に相当するアドレスを計算し、事前定義されたアドレスの代わりに、計算されたアドレスを不揮発性メモリに記憶するように構成されており、この回路は、比較結果が負であれば、書込みコマンドに組み込まれている書き込むべきデータを、バッファから、書込みコマンドに関連したオブジェクトに、デフォルトアドレスにおいて書き込み、デフォルトアドレスと書き込まれたデータのサイズの合計に相当するアドレスを計算し、計算されたアドレスを、事前定義されたアドレスとして不揮発性メモリに記憶するように構成されている。
本発明の一態様は、電子デバイスおよび本発明の一態様によるスマートカードを備えるシステムに関するものであり、電子デバイスは、スマートカードに書き込むべきデータを、各サブセットのサイズが最大でも所定の値と等しくなるようにサブセットに分割することと、カードの同一のオブジェクトに関連した1組の書込みコマンドを構築することであって、それぞれの書込みコマンドが、書き込むべきデータのそれぞれのサブセットを含む、構築することと、このようにして構築されたそれぞれの書込みコマンドをカードに送ることとを行うように構成されている。
本発明の他の特徴、目的、および利点が、その実施形態のうちのいくつかの説明から、限定的でないやり方で明らかになるであろう。
本発明は、図面を参照することによっても、よりよく理解されるであろう。
本発明の一実施形態による方法の、連続した6回の実行を示す図である。 本発明の一実施形態による、携帯用コンピュータと、同コンピュータに接続されたスマートカードリーダと、スマートカードとから成るシステムを示す図である。 本発明の一実施形態によるスマートカードのアーキテクチャを示す概略図である。
可能な実施形態の1つは、スマートカードの(EEPROMまたはフラッシュメモリなどの)不揮発性メモリにデータを書き込む方法に関する。この方法は、書込みコマンドを受け取るステップを含む。このコマンドは、たとえばISO 7816-4規格のPUT DATAコマンドとしてフォーマットされたコマンドでよいが、以下で明示されるやり方で機能的に変更されてもよい。従来のPUT DATAコマンドを用いることもできるように、(未使用の命令コードなどの)ISO 7816-4規格による命令コードINSに関して規定された値0xDAまたは0xDBとは異なる命令コードを、この書込みコマンドのために用いることが可能である。したがって、この受け取られる書込みコマンドは、コマンドのタイプ(ISO 7816-4規格によるコマンドの場合、その命令コードINS)および書き込まれるべきデータなどの様々なパラメータを含んでいるヘッダを含んでよい。このコマンドは、カードの外部のエンティティ(銀行端末、携帯電話、またはコンピュータに接続されたスマートカード読取り装置など)から、スマートカードの揮発性メモリ(RAMなど)のバッファに受け取られる。具体的には、このコマンドは、スマートカードの入出力インターフェースを介して(たとえば、ISO 7816-3規格によって特定された入出力接続を用いて)受け取られてよい。
この方法は、スマートカードによる、書込みコマンドに関連したオブジェクト識別パラメータと、スマートカードの不揮発性メモリに記憶されたオブジェクト識別パラメータとの比較を含む。したがって、このコマンドは、EFファイルなどのカードの特定のオブジェクトに関連付けられ得る。この関連付けには、コマンドによって、コマンドが関連付けられているオブジェクトに、コマンドが含むデータが書き込まれるという効果がある。不揮発性メモリに記憶されたオブジェクト識別パラメータは、本発明の一実施形態による別の(書込み)コマンドによって書き込むようにスマートカードが指示された最後のオブジェクトを識別することができる。この他のコマンドは同一のタイプのコマンドであり、たとえば同一の命令コードを有し、ISO 7816-4規格によって定義されているものと同一のINSバイトを意味しており、異なるのは、たとえばそのパラメータ(たとえばT=0プロトコルで定義されているようなパラメータP1、P2およびP3)、およびそのデータ(T=0プロトコルの場合にはコマンドの5番目のバイトに続くバイト)のみである。カードが初期化されるとき(たとえば初めて使用されるとき(during its first use)、または電源に接続される場合は常に)、あらゆる可能なオブジェクトに対応することができるデフォルト値(たとえば値ゼロ、またはこの目的のために任意に従来のやり方で選択された他の値)を、不揮発性メモリに記憶されたオブジェクト識別パラメータとして保存することが可能である。したがって、このデフォルト値と、書込みコマンドに関連したオブジェクト識別パラメータとの間の比較は、必然的に負になる。
比較結果が正であれば、書込みコマンドが、同一のタイプの最後の書込みコマンドによって書き込まれたものと同一のオブジェクトに書き込もうとすることを意味しており、この方法は以下のステップを実施してよい。
第1のステップは、(書込みコマンドに含まれている)書き込むべきデータを、バッファから(データは書込みコマンドの一部分であって書込みコマンドを受け取った後にバッファに記憶される) 、書込みコマンドに関連したオブジェクトへ、不揮発性メモリにその値が記憶されている事前定義されたアドレスに書き込むステップを含む。したがって、カードは、不揮発性メモリから事前定義されたアドレスの値を読み取り、次いで、事前定義されたアドレスのオブジェクトに書き込むことができる。この事前定義されたアドレスは、好ましくはオブジェクト内の相対アドレスである。したがって、カードは、オブジェクトのアドレス(絶対アドレスとして表現される)と事前定義されたアドレスの合計に等しい絶対アドレスに書き込むことができる。もちろん、カードは、(たとえば事前定義されたアドレスと書き込むべきデータのサイズとの合計に等しいアドレスから1を減じたものが実際にオブジェクト内にあるのをチェックすることによって)書込み操作が当該オブジェクト内で行われることを確認するための安全メカニズムを実施してよい。
第2のステップは、記憶された事前定義されたアドレスと書き込まれたデータのサイズの合計に相当するアドレスを計算するステップを含む。このアドレスは、書き込まれた最終バイトの直後のアドレスに相当する。
第3のステップは、計算されたアドレスを、事前定義されたアドレスの代わりに不揮発性メモリに記憶するステップを含む。このようにして、同一のタイプの書込みコマンドの次の呼出しは、同一のタイプのこのコマンドが同一のオブジェクトに関連付けられているならば、この書込みコマンドを構築し送る役割を担うエンティティ(たとえば携帯電話)が以前のアドレスを記憶したり新規のアドレスを計算したりする必要性なしに、たった今書き込まれたものの直後に書き込むことになる。
比較結果が負であれば、書込みコマンドが、呼び出された同一のタイプの最後の書込みコマンドによって書き込まれたものと異なるオブジェクトに書き込もうとしていることを意味しており、または、このタイプの書込みコマンドが初めて呼び出される場合には、方法は以下のステップを実行することができる。
第1のステップは、書込みコマンドに組み込まれている書き込むべきデータを、バッファから、書込みコマンドに関連したオブジェクトに、デフォルトアドレスにおいて書き込むステップを含む。デフォルトアドレスは、オブジェクト内の相対アドレスであることが有利である。次いで、カードは、オブジェクトのアドレス(絶対アドレスとして表現される)とデフォルトアドレスの合計に等しい絶対アドレスに書き込むことができる。もちろん、カードは、(たとえばデフォルトアドレスと書き込むべきデータのサイズとの合計に等しいアドレスから1を減じたものが実際にオブジェクト内にあるのをチェックすることによって)書込み操作が当該オブジェクト内で行われることを確認するための安全メカニズムを実施してよい。
第2のステップは、デフォルトアドレスと書き込まれたデータのサイズの合計に相当するアドレスを計算するステップを含む。このアドレスは、書き込まれた最終バイトの直後のアドレスに相当する。
第3のステップは、計算されたアドレスを、事前定義されたアドレスとして不揮発性メモリに記憶するステップを含む。このようにして、同一のタイプの書込みコマンドの次の呼出しは、この同一のタイプのコマンドが同一のオブジェクトに関連付けられているならば、この書込みコマンドを構築して送る役割を担うエンティティ(たとえば携帯電話)が以前のアドレスを記憶したり新規のアドレスを計算したりする必要性なしに、たった今書き込まれたものの直後に書き込むことになる。
可能な実施形態の1つは、書込みコマンドに関連したオブジェクト識別パラメータが書込みコマンドに組み込まれている方法に関する。このように、オブジェクト(たとえばISO 7816-4規格で定義されているような基本ファイルEF)の識別子(ISO 7816-4規格で定義されているようなFIDと略されたファイルID)を記憶するために、たとえばパラメータP1およびP2を用いることができる。たとえば、コマンドが、ISO 7816-4規格で定義されているようなUPDATE BINARYコマンドに基づくものである場合、書き込まれるオブジェクトの内部アドレスを表すと想定されるパラメータP1およびP2は、もはや不要であり、書き込まれるオブジェクトを識別するファイルIDで置換され得る。
可能な実施形態の1つは、書込みコマンドに関連したオブジェクト識別パラメータが、揮発性メモリに記憶され、スマートカードのオブジェクト選択コマンドによって更新される方法に関する。たとえば、EFを選択するのに、ISO 7816-4規格で定義されているようなSELECTコマンド(これは、命令コードINSに値0xA4を用いる)を用いることが可能であり、後続の書込みコマンドは、書き込まれるオブジェクトを明確に示す必要はなく、EFに自動的に書き込むことになる。
可能な実施形態の1つは、デフォルトアドレスがゼロアドレスである方法に関する。したがって、呼び出された同一のタイプの最後の書込みコマンドが(存在する場合)別のオブジェクトに書き込んだとき、本発明の一実施形態による書込みコマンドが、あるオブジェクトに書き込むたびに、また、このタイプの書込みコマンドが初めて(たとえば特定のセッションにおいて初めて、またはカードを電源に接続した後に初めて、またはカードが製造されてから正に初めて)呼び出されるたびに、この方法はゼロアドレスに書き込む。これは、明らかに当のオブジェクトに対するゼロアドレスであり、オブジェクトの先頭に相当する。
あるいは、ゼロとは異なるデフォルトアドレスを用いることができる。たとえば、本発明の一実施形態による書込みコマンドによって書き込まれるオブジェクトが、特定のアドレスにしか書き込むことができない構造であって、オブジェクト(たとえばカード自体によって管理される管理データを含んでいるもの)の先頭でなければ、このオブジェクトの内部の有効なアドレスをデフォルト値として用いることができる。
このデフォルト値がすべてのオブジェクトに対して共通であって、この方法がソフトウェアによって実施されるとき、このデフォルト値は実際のコード(たとえばROMに記憶され得るコード)で記憶され得る。
デフォルトアドレスは、オブジェクトタイプの間で変化する(たとえば、カードが、各オブジェクトタイプに対して別々のデフォルトアドレスを記憶する)可能性がある。この場合、たとえばROMの中の表に別々のデフォルト値が記憶されてよい。デフォルト値が変更可能であるか、またはカード開発業者が用いられるオブジェクトタイプを予想することができない場合、デフォルト値はEEPROMまたはフラッシュメモリの中の表に記憶されてよい。オブジェクトタイプは、たとえば、指紋を記憶する透過的なEFファイル、顔認識データを記憶する透過的なEFファイル、日付を記憶する透過的なEFファイル、ロケーションを記憶する透過的なEFファイル、地理的アドレス(番地、ストリート名、市、国など)を記憶する透過的なEFファイルなどでよい。オブジェクトタイプは、(可能性はあるが)必ずしも(ISO 7816-4の「透過的なEF」ファイルタイプなどの)ファイルタイプに相当するものではなく、これらのファイルのコンテンツに相当するより低レベルの下位区分に相当してもよく、この下位区分は、スマートカードのオペレーティングシステムの定義の一部分ではなく、スマートカードを使用するエンティティの定義の一部分であることが理解され得る。この場合、一般に、EEPROMまたはフラッシュメモリの中の表がより適切である。
デフォルト値をそれぞれの特定のオブジェクトに関連付けることも可能である(すなわち、それぞれのオブジェクトのインスタンスに関して、同一のタイプの2つの異なるオブジェクトが2つの異なるデフォルト値に関連付けられ得ることを意味する)。したがって、指紋を含んでいる2つの透過的なEFファイルは、異なるデフォルト値に関連付けられ得る。このデフォルト値は、オブジェクトが生成されたときにはゼロ(または前節で説明されたように、オブジェクトのタイプに依拠する別の値)であり得、次いで更新され得る。このデフォルト値は、書き換え可能な不揮発性メモリ(たとえばEEPROMまたはフラッシュメモリ)のオブジェクト内に、またはオブジェクトとともに記憶されてよい。可能な実施形態の1つでは、スマートカードは、オブジェクトの数とは無関係にただ1つの事前定義された値を記憶する。この事前定義された値は、本発明の一実施形態による書込みコマンドが新規のオブジェクト(実行された同一のタイプの最後のコマンドによって書き込まれたオブジェクトではないオブジェクト、または最初のオブジェクトを意味する)に書き込むごとに再初期化される。この場合、所与のオブジェクト向けに記憶されたデフォルト値の更新は、このオブジェクトに関連した事前定義された値を、デフォルトとして用いるためにコピーすることによって達成される。したがって、外部エンティティが、同一のタイプの書込みコマンドを用いて第1のオブジェクトに書き込み、次いで第2のオブジェクトに書き込み、次いで再び第1のオブジェクトに書き込む場合、外部エンティティは、第1のオブジェクトに対して、最初に書き込んだ値に上書きすることなく、もともと書き込んだ値の後に書き込む。スマートカードがデフォルト値の自動更新を実施する場合、カード内に、デフォルト値を再初期化するコマンドを用意することが有利であり、このコマンドは、たとえばオブジェクトが生成されたとき割り当てられた値を割り当てるものでよい。したがって、本発明の一実施形態による書込みコマンドを用いて以前にオブジェクトに書き込まれたデータを、本発明の一実施形態による書込みコマンドで置換することができる。
可能な実施形態の1つは、コマンドがISO 7816-4規格によるAPDUコマンドとして符号化される方法に関する。書込みコマンドはAPDUコマンドでよく、選択コマンドもAPDUコマンド(ISO 7816-4規格によるSELECTコマンドであり得る)でよい。デフォルト値を再初期化するためのコマンドは、1つあるとすれば、これもAPDUコマンドでよい。
図1は、本発明の一実施形態による方法の繰り返し使用を示す。読取り装置RDRが、本発明の一実施形態によるスマートカードSCに第1の書込みコマンドWRITE(FID_1, DATA_1)を送る。スマートカードは、識別子FID_1を有するファイルに書き込むWRITE命令を初めて受け取る。したがって、スマートカードはファイルの先頭にデータDATA_1を書き込む。読取り装置は、スマートカードに第2の書込みコマンドWRITE(FID_1, DATA_2)を送る。次いで、カードはデータDATA_1の後にデータDATA_2を書き込む。読取り装置は、スマートカードに第3の書込みコマンドWRITE(FID_1, DATA_3)を送る。次いで、カードはデータDATA_2の後にデータDATA_3を書き込む。読取り装置は、スマートカードに第4の書込みコマンドWRITE(FID_2, DATA_4)を送る。カードは、直前に(just)書き込んだファイルとは別のファイルに書き込むコマンドを受け取ったことを検出する。したがって、カードは、識別子FID_2を有するファイルの先頭にデータDATA_4を書き込む。読取り装置は、スマートカードに第5の書込みコマンドWRITE(FID_2, DATA_5)を送る。次いで、カードは、識別子FID_2を有するファイルのデータDATA_4の後にデータDATA_5を書き込む。読取り装置は、スマートカードに第6の書込みコマンドWRITE(FID_1, DATA_6)を送る。カードは、直前に書き込んだファイルとは別のファイルに書き込むコマンドを受け取ったことを検出する。カードは、前記ファイルへの以前の書込みによって更新された識別子FID_1を有するファイルのデフォルトアドレスを調べ、したがって、データDATA_3の後にデータDATA_6を書き込む。
この操作は、デバイスにおいて複数のアプリケーションがマルチタスクで実行され、これらのアプリケーションがカードに書込みコマンドを送る可能性があるとき特に有利である。次いで、カードは、別々のファイルへの書込みを交互に行うことができ、デバイス上のアプリケーションは、ファイル構成の詳細に煩わされたり(worry about)書き込むためのアドレスを計算したりする必要がない。極端な事例の1つでは、必ずしも互いに通信することのない様々なアプリケーションが、イベントが生じたときに記録するログファイルなどのスマートカード上の同一のファイルに書き込むことが必要になることがある。どのアプリケーションも、それ自体では、新規のイベントを書き込むべきアドレスを決定することができないであろう。
別の実施形態(図示せず)では、スマートカードは2つの空のオブジェクト(O1およびO2)を含む。この方法は、たとえば、
Write (O1, D1)、
Write (O1, D2)、
Write (O1, D3)、
Write (O2, D4)、
Write (O2, D5)、
Write (O1, D6)、および
Write (O1, D7)、
といった生体データD1〜D7を書き込むための連続した書込みコマンドを受け取るステップを含む。
次いで、データD1、D2およびD3がオブジェクトO1において連結され、次いで、オブジェクトO2が依然として空であるため、データD4およびD5は、オブジェクトO2において連結され(データD1、D2およびD3は依然としてオブジェクトO1にあり)、最後にオブジェクトO1のデータD1、D2およびD3が失われ(上書きされ)、オブジェクトO1においてデータD1〜D3の代わりにデータD6およびD7が連結される。オブジェクトが変更されると直ちに(たとえばFIDが変化したとき)、書込みは、新しく選択されたオブジェクトの先頭において、古いデータを上書きする。データD1〜D3を連結したものがデータD6とD7を連結したものより長ければ、残差は、論理的観点からはオブジェクトO1にあると見なされることなく、スマートカードのメモリに(D7データの後に)物理的に残されていてもよい。たとえば、オブジェクトO1には、(この場合、データD6とD7を連結したサイズに相当する)現在のサイズを示すパラメータが含まれてよく、このサイズを過ぎて記憶されたいかなる情報も無視され得る。残りの残差を削除しないので、不揮発性メモリへの書込み操作の回数が減少し(削除は書込みの一形態である)、このことは、より高速の処理(より少ない書込み操作)のために、または(一定数の書込みサイクルしか保証していないメモリが、1つ1つの書込み操作によって劣化する)不揮発性メモリの寿命の延長のために、特に有利であり得る。
可能な実施形態の1つは、携帯電話、銀行端末などの電子デバイスによって、スマートカードの不揮発性メモリにデータを書き込む方法に関する。
この方法は、デバイスによって、書き込むべきデータをサブセットに分離するステップを含む。各サブセットのサイズは最大でも事前定義された値である。事前定義された値は、たとえば、一実施形態による書込みコマンドで送ることができる書き込むべきデータの最大量と定義することができ、書込みコマンドのサイズは、(コマンドを受け取る)スマートカードの揮発性メモリにおけるバッファのサイズと、コマンドの最大サイズとの間の最も小さい値に等しい(たとえば、T=0では、書込みコマンドはせいぜい260バイトであり、したがって送ることができるのは255バイトにすぎない)。
たとえば、生体認証パスポートを確認するための端末(スマートカードの特定の形式である)は、(たとえば空港の国境検査所で)パスポート保有者であると主張する人の指紋を取得して、255バイトの連続したセグメントへと分割することができる。バイトで表した指紋のサイズが255の倍数でなければ、セグメントのうち少なくとも1つ、たとえば最後のセグメントは、より小さいことがある。次いで、各セグメントが、上記のサブセットのうちの1つに相当する。
この方法は、スマートカードの同一のオブジェクトに関連した1組の書込みコマンドであって、それぞれが、書き込むべきデータのそれぞれのサブセットを含んでいる書込みコマンドを構築するステップを含む。
たとえば、コマンドは、先行のそれぞれのデータサブセットによって構築されてよく、たとえば、255バイトの各ブロックが、書込みコマンドのヘッダを有する指紋の一部分を示す。
ヘッダは、{CLA、INS、P1、P2、P3}の形をとることができ、値CLA、INS、P1、P2およびP3がそれぞれ1バイトであり、そのとき、もたらされるコマンドのサイズは260バイトである。P3は、書き込むべき255バイトのデータが5バイトのヘッダに続くことを示すために0xFFに等しくてよい。P1およびP2はゼロに等しくてよい。あるいは、P1||P2は、書込みコマンドがデータを書き込むことになるファイルの識別子を表してよい。INSバイトは、たとえば、ISO 7816-4規格によって特定されていない任意の値でよく、または関係するスマートカードによって用いられていない任意の特定の値でもよい。ISO 7816-4規格は、それが特定する命令のすべてを実施することを必要とするわけではない。この最後のオプション(以前にカードで用いられたことのない標準命令コードの再利用)は、ISO 7816-4規格を厳密には守らないカードをもたらす。この違反は、アプリケーション次第で、必ずしも問題ではない。クラスバイト(CLA)は任意の適切な値をとることができる。
この方法は、デバイスによってスマートカードにそれぞれの書込みコマンドを送るステップを含む。デバイスは、書き込むべきデータにおいてこれらのサブセットが(細分化の前に)占めていた順序でサブセットを含んでいるコマンドを送る。したがって、スマートカードの不揮発性メモリに書き込まれるデータは、書き込まれることが意図されたものと同一である。
最後に、この方法は、本発明の一実施形態による方法によって、受け取られた各コマンドをスマートカードによって処理するステップを含む。
別の実施形態によれば、デバイスは、スマートカードに書き込むべきデータを漸次受け取るかまたは取得して、(書込みコマンドを漸次構築することによって)データを、到達した通りにカードに送る。この場合、デバイスは、(T=0プロトコルの場合)一度に255バイト超を受け取るか、またはスマートカードのバッファのサイズ(260バイト未満の場合)を超えるデータを受け取るのでなければ、サブセットを生成する必要はない。
スマートカードのバッファが260バイト未満の場合、このバッファのサイズをユーザデバイスに送るのが有利である。このサイズは、たとえばISO 7816で特定されているATR(Answer To Reset)の空きバイトに出現する可能性がある。一般に、制約要因は、バッファのサイズ(一般に少なくとも255バイトである)ではなくT=0によって課された255バイトのサイズであり、その場合、したがってバッファサイズを送る必要はない。
可能な実施形態の1つは、スマートカードのプロセッサによって実行されたとき、本発明の一実施形態による方法を実施する一連の命令を含むコンピュータプログラムに関する。これらの命令は、たとえばアセンブリ言語の命令でよく、または、高水準言語(たとえばCまたはJava)でプログラム可能なプロセッサを有するスマートカードについては、この高水準言語でよい。
可能な実施形態の1つは、本発明の一実施形態によるコンピュータプログラムを記憶する不揮発性のコンピュータ可読記憶媒体に関する。記憶媒体は、たとえばスマートカードのROM、フラッシュメモリ、またはEEPROMでよい。
可能な実施形態の1つは、不揮発性メモリEEPROMと、揮発性メモリRAMと、揮発性メモリ内のバッファBUFと、不揮発性メモリにおける書込みコマンドを処理する回路PROC, ROMとを備えるスマートカードSCに関する。
この回路は、スマートカードプロセッサと、本発明の一実施形態による方法を実施する、プロセッサで実行可能なソフトウェアを含んでいるメモリ(たとえばROM)とを含んでよい。図3に表されたプロセッサPROCは、(DIPパッケージの)集積回路の形態である。しかしながら、スマートカードのプロセッサは、一般に、様々なメモリ(RAM、EEPROM、ROMなど)も備えるマイクロコントローラに統合されるので、これは概略図である。このマイクロコントローラは、典型的に、ウェーハから切り取られ、従来のやり方でモジュールに取り付けられたダイ(または半導体材料のブロック)の形態である。この回路は、プロセッサまたはソフトウェアなしで(たとえばハードワイヤードロジックまたはFPGAを用いて)、完全に電子的に実現されてもよい。
この回路は、バッファに記憶されたコマンドを処理するように構成されている。コマンドは識別パラメータに関連付けられている。識別パラメータは揮発性メモリに記憶されてよい。この識別パラメータは、不揮発性メモリに記憶されたオブジェクトを識別する。コマンドは、このオブジェクトに書き込まなければならない。この回路は、不揮発性メモリに、オブジェクトEF識別パラメータFIDを記憶するようにも構成されている。オブジェクトEF(コマンドに関連付けられた上記のオブジェクトまたは別のオブジェクトでよい)は、不揮発性メモリに記憶される。この回路は、事前定義されたアドレスADDRを不揮発性メモリに記憶するように構成されている。この事前定義されたアドレスは、オブジェクトEF内にあるアドレスである。この回路は、書込みコマンドを処理するとき、書込みコマンドに関連したオブジェクト識別パラメータを、不揮発性メモリに記憶されたオブジェクトEF識別パラメータFIDと比較するように構成されている。
この回路は、比較結果が正であれば、書込みコマンドに組み込まれている書き込むべきデータを、バッファから、書込みコマンドに関連したオブジェクトに、不揮発性メモリに記憶されている事前定義されたアドレスにおいて書き込むように構成されている。この回路は、記憶されている事前定義されたアドレスADDRと書き込まれたデータのサイズの合計に相当するアドレスを計算するように構成されている。この回路は、計算されたアドレスを、事前定義されたアドレスADDRの代わりに不揮発性メモリに記憶するように構成されている。
この回路は、比較結果が負であれば、書込みコマンドに組み込まれている書き込むべきデータを、バッファから、書込みコマンドに関連したオブジェクトに、デフォルトアドレスにおいて書き込むように構成されている。この回路は、デフォルトアドレスと書き込まれたデータのサイズの合計に相当するアドレスを計算するように構成されている。この回路は、計算されたアドレスを、事前定義されたアドレスとして不揮発性メモリに記憶するように構成されている。
可能な実施形態の1つは、電子デバイス(カード読取り装置RDRと対になったコンピュータPCなど)と、本発明の可能な実施形態によるスマートカードSCとを備えるシステムに関する。電子デバイスは、電子デバイスによってスマートカードに書き込まれるべきデータを、各サブセットのサイズが最大でも事前定義された値と等しくなるようにサブセットに分割するように構成されている。電子デバイスは、カードの同一のオブジェクトに関連した1組の書込みコマンドを構築するように構成されており、それぞれの書込みコマンドが、書き込むべきデータのそれぞれのサブセットを含む書込みコマンドを含む。電子デバイスは、このようにして構築されたそれぞれの書込みコマンドをカードに送るように構成されている。
本発明の方法に関して説明された実施形態は、スマートカード、本発明によるシステム、ならびにコンピュータプログラムおよび本発明によるプログラムを記憶するための媒体に置き換えることができ、また、これらのものを、本発明の方法に関して説明された実施形態に置き換えることもできる。
本発明は、具体例を用いて上記で説明されてきたが、これらの例に限定されるものではない。詳細には、本発明は、すべての形態のスマートカード(接触型または非接触型のカード、セキュアUSBキー、電子身分証明書、SIMカード、銀行カード、アクセスカード、セキュアトークン、生体認証パスポート、タコグラフ、ヘルスカード、電子ビザ、SecureMMCカードなど)に適用可能である。スマートカードに書込みコマンドを送る電子デバイスは、あらゆる種類のデバイス(現金自動預け払い機、自動通行料金徴収機、POS支払い端末、ヘルスカード読取り装置、スマートカード個人ステーション、スマートカード生産機、携帯電話、スマートカード読取り装置を装備したコンピュータ、生体認証パスポート検証ステーションなど)であり得る。
本発明の一実施形態による書込みコマンドはデイジーチェーン化されてよく、特にそのようなコマンドの最大のサイズよりもバッファが大きいときに、いくつかのコマンドを順番に送って、これらのコマンドの最後のものが受け取られた後にのみ不揮発性メモリに書き込むことが可能であることを意味する。たとえば、バッファが含むことができるコマンドが3つであって、書き込むべきデータが12のコマンドを必要とする場合、スマートカードは3つのコマンドをつなぎ合わせ、したがって、書込みステップの実行を、12回ではなく4回だけにすることができる(しかし3倍長いデータを用いる)。
示された例は、基本的にT=0プロトコルに基づく例であったが、本発明は他のプロトコルに対して機能する。たとえば、本発明の一実施形態による書込みコマンドはT=1プロトコルに従うコマンドであり得、カードは、コマンドがそのバッファのサイズを超過しないことを単に確認する。
SC スマートカード
RDR 読取り装置
PC コンピュータ
RAM 揮発性メモリ
BUF バッファ
PROC プロセッサ
EF 基本ファイル
EEPROM 不揮発性メモリ
FID 識別子
ADDR アドレス
ROM 読取り専用メモリ

Claims (10)

  1. スマートカードの不揮発性メモリにデータを書き込む方法であって、
    /a/ 前記スマートカードの揮発性メモリのバッファにおいて書込みコマンドを受け取るステップと、
    /b/ 前記スマートカードによって、前記書込みコマンドに関連したオブジェクト識別パラメータを前記スマートカードの前記不揮発性メモリに記憶されたオブジェクト識別パラメータと比較するステップと、
    /c/ 前記比較結果が正であれば、
    /c1/ 前記書込みコマンドに組み込まれている前記書き込むべきデータを、前記バッファから、前記書込みコマンドに関連したオブジェクトに、前記不揮発性メモリにその値が記憶されている事前定義されたアドレスにおいて書き込み、
    /c2/ 前記記憶されている事前定義されたアドレスと前記書き込まれたデータのサイズの合計に相当するアドレスを計算し、
    /c3/ 前記計算したアドレスを、前記事前定義されたアドレスの代わりに前記不揮発性メモリに記憶するステップと、
    /d/ 前記比較結果が負であれば、
    /d1/ 前記書込みコマンドに組み込まれている前記書き込むべきデータを、前記バッファから、前記書込みコマンドに関連した前記オブジェクトに、デフォルトアドレスにおいて書き込み、
    /d2/ 前記デフォルトアドレスと前記書き込まれたデータのサイズの合計に相当するアドレスを計算し、
    /d3/ 前記計算したアドレスを、前記事前定義されたアドレスとして前記不揮発性メモリに記憶するステップと
    を含む方法。
  2. 前記書込みコマンドに関連した前記オブジェクト識別パラメータが前記書込みコマンドに組み込まれている請求項1に記載の方法。
  3. 前記書込みコマンドに関連した前記オブジェクト識別パラメータが、前記揮発性メモリに記憶され、前記スマートカードのオブジェクト選択コマンドによって更新される請求項1に記載の方法。
  4. 前記デフォルトアドレスがゼロアドレスである請求項1から3のいずれか一項に記載の方法。
  5. 前記コマンドが、ISO 7816-4規格によるAPDUコマンドとして符号化される請求項1から4のいずれか一項に記載の方法。
  6. 電子デバイスによって、スマートカードの不揮発性メモリにデータを書き込む方法であって、
    /a/ 前記デバイスによって、前記書き込むべきデータを、各サブセットのサイズが最大でも事前定義された値と等しくなるようにサブセットに分割するステップと、
    /b/ 前記カードの同一のオブジェクトに関連した1組の書込みコマンドを構築するステップであって、それぞれの書込みコマンドが、書き込むべきデータのそれぞれのサブセットを含む、構築するステップと、
    /c/ 前記デバイスによって、それぞれの書込みコマンドを前記スマートカードへ送るステップと、
    /d/ 請求項1から5のいずれか一項に記載の方法に従って、前記スマートカードによって、受け取られたそれぞれのコマンドを処理するステップと
    を含む方法。
  7. スマートカードのプロセッサによって実行されたとき、請求項1から5のいずれか一項に記載の方法を実施する一連の命令を含むコンピュータプログラム。
  8. 請求項7に記載のコンピュータプログラムを記憶する不揮発性のコンピュータ可読記憶媒体。
  9. 不揮発性メモリ(EEPROM)と、揮発性メモリ(RAM)と、前記揮発性メモリ内のバッファ(BUF)と、不揮発性メモリにおける書込みコマンドを処理するための回路(PROC, ROM)とを備えるスマートカード(SC)であって、前記回路(PROC, ROM)が、前記バッファ(BUF)に記憶されており、コマンドが書き込む前記不揮発性メモリ(EEPROM)に記憶されているオブジェクトを識別する識別パラメータに関連付けられている前記コマンドを処理するように構成されており、前記回路(PROC, ROM)が、一方、前記不揮発性メモリ(EEPROM)に記憶されているオブジェクト(EF)の識別パラメータ(FID)と、他方、前記オブジェクト(EF)内の事前定義されたアドレス(ADDR)とを、前記不揮発性メモリ(EEPROM)に記憶するように構成されており、前記回路(PROC, ROM)が、書込みコマンドを処理するとき、前記書込みコマンドに関連した前記オブジェクト識別パラメータを、前記不揮発性メモリ(EEPROM)に記憶された前記オブジェクト(EF)識別パラメータ(FID)と比較し、前記比較結果が正であれば、前記書込みコマンドに組み込まれている前記書き込むべきデータを、前記バッファ(BUF)から、前記書込みコマンドに関連した前記オブジェクトに、前記不揮発性メモリ(EEPROM)に記憶されている前記事前定義されたアドレス(ADDR)において書き込み、前記記憶されている事前定義されたアドレス(ADDR)と前記書き込まれたデータのサイズの合計に相当するアドレスを計算し、前記事前定義されたアドレス(ADDR)の代わりに、前記計算されたアドレスを前記不揮発性メモリ(EEPROM)に記憶するように構成されており、前記回路(PROC, ROM)が、前記比較結果が負であれば、前記書込みコマンドに組み込まれている前記書き込むべきデータを、前記バッファ(BUF)から、前記書込みコマンドに関連した前記オブジェクトに、デフォルトアドレスにおいて書き込み、前記デフォルトアドレスと前記書き込まれたデータのサイズの合計に相当するアドレスを計算して、前記計算されたアドレスを、前記事前定義されたアドレスとして前記不揮発性メモリ(EEPROM)に記憶するように構成されている、スマートカード(SC)。
  10. 電子デバイス(PC, RDR)および請求項9に記載のスマートカード(SC)を備えるシステムであって、前記電子デバイス(PC, RDR)が、前記デバイス(PC, RDR)によって前記スマートカード(SC)に書き込むべき前記データを、各サブセットのサイズが最大でも事前定義された値と等しくなるようにサブセットに分割することと、前記カード(SC)の同一のオブジェクトに関連した1組の書込みコマンドを構築することであって、それぞれの書込みコマンドが、書き込むべきデータのそれぞれのサブセットを含む、構築することと、このようにして構築されたそれぞれの書込みコマンドを前記カード(SC)に送ることとを行うように構成されているシステム。
JP2014543962A 2011-12-02 2012-11-30 スマートカードの不揮発性メモリにおけるデータの書込み Pending JP2015501039A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR1161102 2011-12-02
FR1161102A FR2983622B1 (fr) 2011-12-02 2011-12-02 Ecriture de donnees dans une memoire non volatile de carte a puce
PCT/FR2012/052770 WO2013079885A1 (fr) 2011-12-02 2012-11-30 Ecriture de donnees dans une memoire non volatile de carte a puce

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2016210582A Division JP6355699B2 (ja) 2011-12-02 2016-10-27 スマートカードの不揮発性メモリにおけるデータの書込み

Publications (1)

Publication Number Publication Date
JP2015501039A true JP2015501039A (ja) 2015-01-08

Family

ID=47599040

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2014543962A Pending JP2015501039A (ja) 2011-12-02 2012-11-30 スマートカードの不揮発性メモリにおけるデータの書込み
JP2016210582A Expired - Fee Related JP6355699B2 (ja) 2011-12-02 2016-10-27 スマートカードの不揮発性メモリにおけるデータの書込み

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2016210582A Expired - Fee Related JP6355699B2 (ja) 2011-12-02 2016-10-27 スマートカードの不揮発性メモリにおけるデータの書込み

Country Status (13)

Country Link
US (1) US9513842B2 (ja)
EP (1) EP2786317B1 (ja)
JP (2) JP2015501039A (ja)
KR (1) KR20140108666A (ja)
CN (1) CN104205132B (ja)
BR (1) BR112014013064A2 (ja)
FR (1) FR2983622B1 (ja)
IL (1) IL232873A (ja)
IN (1) IN2014MN01055A (ja)
MY (1) MY167911A (ja)
RU (1) RU2607622C2 (ja)
SG (1) SG11201402827UA (ja)
WO (1) WO2013079885A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3825881A1 (en) * 2019-11-21 2021-05-26 IDEMIA France Managing personalisation in a device implementing a java card enviroment
JP2022505356A (ja) * 2018-10-19 2022-01-14 中興通訊股▲ふん▼有限公司 データ処理方法及び装置、コンピュータで読み取り可能な記憶媒体

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6926945B2 (ja) * 2017-10-25 2021-08-25 大日本印刷株式会社 Icカードおよびターミナル装置
US11113608B2 (en) * 2017-10-30 2021-09-07 Accenture Global Solutions Limited Hybrid bot framework for enterprises
US10958640B2 (en) * 2018-02-08 2021-03-23 Citrix Systems, Inc. Fast smart card login
JP6905486B2 (ja) 2018-03-13 2021-07-21 信越化学工業株式会社 付加硬化型シリコーン組成物、シリコーン硬化物、及び半導体装置
JP6923475B2 (ja) 2018-03-23 2021-08-18 信越化学工業株式会社 付加硬化型シリコーン組成物、シリコーン硬化物、及び光半導体装置
US11132673B1 (en) * 2018-04-25 2021-09-28 Dmitry Mikhailov Use of secure chips for storage of hashed data and private keys in hardware cryptowallets
CN109578259A (zh) * 2018-10-15 2019-04-05 Tcl家用电器(合肥)有限公司 识别、运行方法及装置、计算机设备和存储介质
CN110210591B (zh) * 2019-06-05 2022-06-21 金邦达有限公司 一种智能ic卡个人化数据的写入方法、计算机装置及计算机可读存储介质
US10963187B2 (en) * 2019-06-11 2021-03-30 Cirrus Logic, Inc. Discrete exchange and update of multiple consistent subset views of an evolving data store
FR3107971B1 (fr) * 2020-03-03 2022-02-18 St Microelectronics Rousset Procédé d’écriture de données dans une mémoire d’un transpondeur sans contact, et dispositif de transpondeur sans contact correspondant.
CN111813345A (zh) * 2020-07-17 2020-10-23 济南浪潮数据技术有限公司 一种数据传输方法、装置、服务器及可读存储介质

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3594980B2 (ja) * 1993-12-10 2004-12-02 株式会社東芝 ファイル管理方式
JPH09231113A (ja) * 1995-12-22 1997-09-05 Dainippon Printing Co Ltd Icカード
FR2759795B1 (fr) * 1997-02-14 1999-05-07 Francois Charles Oberthur Fidu Procede de stockage de donnees dans une memoire reinscriptible de carte a puce
US7024532B2 (en) * 2001-08-09 2006-04-04 Matsushita Electric Industrial Co., Ltd. File management method, and memory card and terminal apparatus that make use of the method
FR2842622B1 (fr) * 2002-07-18 2004-09-24 Xiring Procede et equipement de transfert de donnees entre deux cartes a microcircuit
AU2003225439A1 (en) * 2003-02-11 2004-09-06 Unisys Corporation Method and apparatus for updating a control file
EP1702250B1 (de) * 2003-12-30 2009-07-08 Wibu-Systems AG Verfahren zum steuern eines datenverarbeitungsgeräts
SG120215A1 (en) * 2004-03-31 2006-03-28 Toshiba Kk Portable electronic device
US20070094478A1 (en) * 2005-10-20 2007-04-26 Erich Plondke Pointer computation method and system for a scalable, programmable circular buffer
JP4583305B2 (ja) * 2005-12-28 2010-11-17 シャープ株式会社 記録方法、記録装置及びicカード
CN100485681C (zh) * 2006-03-23 2009-05-06 北京握奇数据系统有限公司 智能卡存储系统及该系统中文件创建管理的方法
JP4776462B2 (ja) * 2006-07-19 2011-09-21 株式会社東芝 携帯可能電子装置および携帯可能電子装置の制御方法
JP2008070929A (ja) * 2006-09-12 2008-03-27 Matsushita Electric Ind Co Ltd メモリコントローラ、不揮発性記憶装置、及び不揮発性記憶システム
TWI363966B (en) * 2008-01-23 2012-05-11 Phison Electronics Corp Method, system and controller for transmitting and dispatching data stream
JP2010211516A (ja) * 2009-03-10 2010-09-24 Toshiba Corp 携帯可能電子装置および携帯可能電子装置におけるアクセス制御方法
JP5259513B2 (ja) * 2009-07-15 2013-08-07 株式会社東芝 携帯可能電子装置、icカードおよび携帯可能電子装置の制御方法
JP2011141928A (ja) * 2010-01-07 2011-07-21 Elpida Memory Inc 半導体装置及びその制御方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022505356A (ja) * 2018-10-19 2022-01-14 中興通訊股▲ふん▼有限公司 データ処理方法及び装置、コンピュータで読み取り可能な記憶媒体
EP3825881A1 (en) * 2019-11-21 2021-05-26 IDEMIA France Managing personalisation in a device implementing a java card enviroment

Also Published As

Publication number Publication date
FR2983622B1 (fr) 2014-01-24
CN104205132B (zh) 2017-06-20
MY167911A (en) 2018-09-26
JP2017027625A (ja) 2017-02-02
EP2786317B1 (fr) 2015-08-26
KR20140108666A (ko) 2014-09-12
BR112014013064A2 (pt) 2017-06-13
WO2013079885A1 (fr) 2013-06-06
EP2786317A1 (fr) 2014-10-08
IL232873A0 (en) 2014-07-31
IL232873A (en) 2017-09-28
US9513842B2 (en) 2016-12-06
SG11201402827UA (en) 2014-09-26
RU2014126884A (ru) 2016-02-10
RU2607622C2 (ru) 2017-01-10
CN104205132A (zh) 2014-12-10
JP6355699B2 (ja) 2018-07-11
FR2983622A1 (fr) 2013-06-07
US20140351494A1 (en) 2014-11-27
IN2014MN01055A (ja) 2015-05-01

Similar Documents

Publication Publication Date Title
JP6355699B2 (ja) スマートカードの不揮発性メモリにおけるデータの書込み
JPH0259940A (ja) 携帯可能電子装置
US20100070707A1 (en) Portable electronic device and data processing method in portable electronic device
US9183400B2 (en) IC card and IC card control method
JP5895565B2 (ja) Icカード、及びプログラム
CN106709386B (zh) 智能卡数据写入方法及装置
US7942333B2 (en) IC card secure personalization method
KR20150135753A (ko) Ic 카드, 전자 장치 및 휴대 가능 전자 장치
JP6194714B2 (ja) ユニバーサルicカードおよびセキュリティ属性の照合方法
US7343452B2 (en) Apparatus for direct access to only specific lower hierarchy data in a nest structure
US20090012975A1 (en) Portable electronic device and file management method for use in portable electronic device
EP1384197B1 (en) Method of manufacturing smart cards
JP6750450B2 (ja) 電子情報記憶媒体、データ送信方法、icカード及びデータ送信プログラム
KR20070038400A (ko) 휴대 가능 전자 장치 및 휴대 가능 전자 장치의 제어 방법
JP7021465B2 (ja) 電子情報記憶装置、icカード、データ復元方法、及びデータ復元プログラム
AU2002254795B2 (en) Method of manufacturing smart cards
JP6015461B2 (ja) 情報記録媒体、データ読み書き方法、及びデータ読み書きプログラム
JP2008047040A (ja) 携帯可能電子装置およびicカード
JP6772545B2 (ja) Icカード,tlvオブジェクトへのアクセス方法
JP2022132923A (ja) Icカード
RU2673394C2 (ru) Способ установки приложения на защищенный элемент
KR101357518B1 (ko) Transient 메모리에 파일 데이터가 저장되는 파일을 운용하는 스마트카드 및 그의 파일 관리 방법
JP2019168944A (ja) 電子情報記憶媒体、icカード、コマンド群実行方法及び、コマンド群実行プログラム
AU2002254795A1 (en) Method of manufacturing smart cards
JPH0264878A (ja) 携帯可能電子装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20151113

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160318

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20160627