JP4463471B2 - マスタとスレーブとの間の単一の物理交換チャネル上でのコマンド/応答対の多重交換のための複数の論理流れの伝送用プロトコル、およびアプレットの実行を検査し監視するための対応する装置 - Google Patents

マスタとスレーブとの間の単一の物理交換チャネル上でのコマンド/応答対の多重交換のための複数の論理流れの伝送用プロトコル、およびアプレットの実行を検査し監視するための対応する装置 Download PDF

Info

Publication number
JP4463471B2
JP4463471B2 JP2002536746A JP2002536746A JP4463471B2 JP 4463471 B2 JP4463471 B2 JP 4463471B2 JP 2002536746 A JP2002536746 A JP 2002536746A JP 2002536746 A JP2002536746 A JP 2002536746A JP 4463471 B2 JP4463471 B2 JP 4463471B2
Authority
JP
Japan
Prior art keywords
command
execution
exchange
response
flow
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.)
Expired - Fee Related
Application number
JP2002536746A
Other languages
English (en)
Other versions
JP2004512593A5 (ja
JP2004512593A (ja
Inventor
アレクサンドル フレイ、
セドリク メニ、
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.)
Trusted Logic SAS
Original Assignee
Trusted Logic SAS
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 Trusted Logic SAS filed Critical Trusted Logic SAS
Publication of JP2004512593A publication Critical patent/JP2004512593A/ja
Publication of JP2004512593A5 publication Critical patent/JP2004512593A5/ja
Application granted granted Critical
Publication of JP4463471B2 publication Critical patent/JP4463471B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/0008General problems related to the reading of electronic memory record carriers, independent of its reading method, e.g. power transfer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/14Multichannel or multilink protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computer And Data Communications (AREA)
  • Communication Control (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Radio Relay Systems (AREA)
  • Alarm Systems (AREA)
  • Information Transfer Systems (AREA)

Description

【0001】
本発明は、マスタ送信機/受信機とスレーブ送信機/受信機との間での、単一の物理交換チャネル上でのコマンド/応答対の多重交換のための論理流れ(flux logique)の伝送のためのプロトコルと、そのようなプロトコルの応用とに関し、特に、マイクロプロセッサカードにインストールされているアプレット(appliquette)の実行を検査し監視し、またデバッグするための装置の実装に関する。
【0002】
マスタ送信機/受信機とスレーブ送信機/受信機との間でデータまたは情報を交換するプロトコルは、そのプロトコルが、かなりの計算性能および処理性能を持つマスタ要素と、記憶性能に関連して計算性能および処理性能が現状でははるかに低いスレーブ要素との間のデータしたがって情報の確実かつ完全に安定な交換を行うことを可能にするものである限り、現在、極めて興味があるものである。
【0003】
これは、特に、組込みシステムとしても知られている、カード読取器(CAD)とマイクロプロセッサカード、チップカードとの対で構成されているコンピュータ装置に対する場合である。それに対しては、ISO 7816規格がチップカードとCAD読取器との間の通信のための2つのプロトコルを定義している。
【0004】
さらに詳しくいえば、これら2つのプロトコルは、パラメータT=0およびT=1により定められ、各プロトコルは、「半二重」プロトコルに対応し、すなわちカード読取器とチップカードの2つの参加要素のちょうど一方が、それぞれ、所与の時にデータを他の参加要素へ送ることができる。
【0005】
カード読取器へのカードの挿入に続いて、カード読取器によってカードへの供給が始められ、マスタ送信機/受信機すなわちCAD読取器とスレーブ送信機/受信機すなわちチップカードとの間で、単一の物理チャネル上でのデータ交換が行われる。伝送される情報ユニットは、アプリケーションプロトコルデータユニット(Application Protocol Data Unit)を意味するAPDUと呼ばれる。
【0006】
先行技術から知られている上述したプロトコルでは、コマンドAPDUすなわちC−APDUと、応答APDUすなわちR−APDUとを区別する。
【0007】
情報交換セッションは、1つまたは複数のAPDU交換で構成されている。したがってAPDU交換は、マスタ送信機/受信機要素により常に開始されるC−APDU/R−APDUコマンド/応答対の交換で構成される。マスタ送信機/受信機要素は、スレーブ送信機/受信機がR−APDUを介して応答する対象であるC−APDUを発行する。交換が行われている間は、マスタ要素は動作不能にされたままで、その間、応答を待ち、したがって、コマンド/応答対の交換は、マスタ送信機/受信機とスレーブ送信機/受信機との間での、伝送のイニシアティブすなわち制御の引き続く転送を含み、また、逆もまた同じである。
【0008】
最悪の場合には、マスタ送信機/受信機すなわちカード読取器が取りがちである、この引き続く転送とは異なる唯一のイニシアティブは、スレーブ送信機/受信機すなわちチップカードへの電力供給を遮断することによる全交換セッションを中断することである。
【0009】
しかし、集積回路をエッチングする物理的プロセスにおける絶えざる向上、したがって所与の体積または面積のシリコンにおける計算性能および処理性能ならびに記憶性能の絶えざる向上によって、最近、多数の機能を持つスレーブ送信機/受信機の出現が促進されている。これは特に、多重アプリケーションチップカードの場合にそうである。例えばあるチップカードに、カード読取器がチップカードに対して独立に通信することを求めることができるようないくつかのアプリケーションを組込むことができる。特に、カード読取器は容量に対して禁止的な制約を示すことがなく、例えば、銀行に設置されている自動紙幣払出し機またはGSM携帯電話端末などのこの種のCAD読取器にはいくつかのアプリケーションを組込むことができ、そうすると、スレーブ送信機/受信機すなわち多重アプリケーションチップカードで構成されている装置は、実質的に独立しているアプリケーションの間で単一の物理チャネルを介して、コマンド/応答対により、情報の多重交換をすることに直面させられる。
【0010】
あるチップカードは、いくつかのファイルシステムと、いくつかのアプレットまたはそのアプレットに設定されるいくつかのサービスを実際に包含できる。特に、GSMカードは、加入者の認証の提供と、および可搬ユニットすなわち組込みシステムとしてアプレット(英語ではapplet)の実行の提供とを行う。
【0011】
この目的で、ISO 7816−4規格のセクション5.5は、論理チャネル(canal logique)の概念を定義している。これらの論理チャネルは、チップカード上に存在する種々の参加要素すなわちアプレットまたはサービスに結び付けられているAPDU交換のセッションを切り離すことを可能にする。提案されている標準化されたプロセスは非常に簡単で、チップカードは0から3まで番号を付けられている4つまでの論理チャネルを管理できる。それらの論理チャネルは、ISO 7816−4規格のセクション6.16に規定されているように、“管理チャネル(MANAGE CHANNEL)”標準コマンドによってそれぞれ開閉できる。次に、C−APDUコマンドに対する宛先論理チャネルのインデックス番号が、APDUのクラスコード(CLA)の下位2ビットで符号化される。
【0012】
したがって、ISO 7816−4規格により規定されている種々の論理チャネルは、このようにして論理的に切り離されるが、単一の物理交換チャネル上でのAPDU交換は、CAD読取器とそれの種々のアプリケーションに対して、かつチップカード上で実行できる種々のアプレットまたはサービスに対して、特に分けられていない異なる論理チャネルに関連するコマンド/応答対が同時に多数存在することによって生じがちである衝突が生じないままにする。特にISO 7816−4規格のパラグラフ4、セクション5.5.1の規定を参照されたい。その規定によれば、次のコマンド/応答対の送り出し前にコマンド/応答対の送り出しを終了せねばならず、いくつかの論理チャネル上ではコマンドと応答とを入れ子にさせてはならず、コマンドの受取りと対応する応答の発行との間で単一の論理チャネルはアクティブでなければならない。
【0013】
本発明の目的は、マスタ送信機/受信機とスレーブ送信機/受信機との間のコマンド/応答対によるデータ交換のためのプロトコルの諸欠点を、多数の論理チャネルに課される制約を解消することによって、除去することである。
【0014】
本発明の他の目的は、マスタ送信機/受信機とスレーブ送信機/受信機との間の、単一の物理交換チャネル上でのコマンド/応答対の多重交換のための複数の論理流れの伝送用プロトコルをコンカレント論理チャネルの実装によって、明らかにすることである。各コンカレント論理チャネルは、コマンド/応答対の独立な交換を許すが、いくつかのコマンド/応答対を開かれている種々のコンカレント論理チャネルで同時にアクティブであるようにすることが可能である。
【0015】
特に、本発明の別の目的は、マスタ送信機/受信機とスレーブ送信機/受信機との間の、単一の物理交換チャネル上でのコマンド/応答対の多重交換のための複数の論理流れの伝送用プロトコルであって、CAD読取器などのマスタ送信機/受信機が別のコンカレント論理チャネルでコマンド/応答対、APDU、の交換を開始でき、既にアクティブな並行チャネルでコマンド/応答対の交換が既に進行中であり、スレーブ送信機/受信機すなわちチップカードにインストールされているアプレットまたはサービスにより管理されている少なくとも1つのアプリケーションを用いて、マスタ送信機/受信機すなわちカード読取器に接続されている種々のアプリケーションが、したがって、実行のコンフリクトのいかなる危険もなしに、相互に独立して実行されるようにする伝送用プロトコルを与えることである。
【0016】
逆に本発明の他の目的は、マルチアプリケーションチップカードにインストールされた種々のアプレットまたはサービスなどのスレーブ送信機/受信機によって管理されている種々のアプリケーションにつながれた異なるコンカレント論理チャネル上で異なるコマンド/応答対を交換できる、マスタ送信機/受信機とスレーブ送信機/受信機との間での、単一の物理交換チャネル上でのコマンド/応答対の多重交換のための複数の論理流れの伝送のためのプロトコルであり、これらのアプリケーションは、本発明の主題であるプロトコルの実装によって、同時かつ独立に実行する。
【0017】
本発明の別の目的は、また、進行中のコマンド/応答対の交換の場合を含めて、コンカレント論理チャネルのおのおのがマスタ送信機/受信機のみのイニシアティブで閉じられる、マスタ送信機/受信機とスレーブ送信機/受信機との間の、単一の物理交換チャネル上でのコマンド/応答対の多重交換のための複数の論理流れの伝送のためのプロトコルでもある。
【0018】
本発明の他の目的は、また、コマンド/応答対をベース論理チャネル上で交換するマスタ送信機/受信機とスレーブ送信機/受信機との間の、単一の物理交換チャネル上でのコマンド/応答対の多重交換のための複数の論理流れの伝送のためのプロトコルであって、コマンド/応答対がおそらくまたこのマスタ送信機/受信機とこのスレーブ送信機/受信機との間でコンカレント論理チャネル上でも交換され、コマンド/応答対は、ベース論理チャネルによって運ばれるベース論理流れとコンカレント論理チャネルにより運ばれるコンカレント論理流れとを構成し、それらの論理流れは、いかなる衝突もなしに、単一の物理交換チャネル上でコマンド/応答対を交換する手順から利益を得られるように共存プロトコルでもある。
【0019】
本発明の他の目的は、最後に、マスタ送信機/受信機がCAD読取器により構成され、スレーブ送信機/受信機がチップカードにより構成されている場合に、コマンド/応答対の多重交換のための複数の論理流れの伝送のための、ISO 7816規格の仕様に完全に適合する、プロトコルである。
【0020】
本発明の主題である、マスタ送信機/受信機とスレーブ送信機/受信機との間の単一の物理交換チャネル上でのコマンド/応答対の多重交換のための複数の論理流れの伝送のためのプロトコルは、マスタ送信機/受信機によって開始され、単一の物理交換チャネルと同じマスタ/スレーブ関係を前提とする、少なくとも1つのベース論理流れを含む論理流れに関しており、マスタ送信機/受信機とスレーブ送信機/受信機はそれぞれ少なくとも1つのソフトウエアアプリケーションの実行を許す。
【0021】
基準論理流れとしてとられたベース論理流れの1つにおいて、コマンド/応答対をセグメント化(区分化)する引き続く基本パケットによりおのおのが形成されているコンカレント論理流れのセットを発生することは、注目に値する。コンカレント論理流れのセットを形成する引き続く基本パケットは、基準論理流れ上で伝送される。このセットの2つのコンカレント論理流れは、異なるコマンド/応答対の独立した実質的に同時の伝送を行えるようにする。
【0022】
コマンド/応答対のいかなる交換の開始および継続も、この基準論理流れ上で伝送される特定のコマンドを基にしてマスタ送信機/受信機のイニシアティブで行われ、引き続く基本パケットへのセグメント化は、この基準流れ上でのそれらの特定のコマンドに応答して伝送される特定の応答のイニシアティブで行われる。これによって、一方では、マスタ送信機/受信機およびスレーブ送信機/受信機の少なくとも一対のアプリケーションの間の独立した実質的に同時のコマンド/応答対の交換が行えるようにされ、他方では、物理交換チャネル上において基準論理流れとしてとられた論理流れからの異なるベース論理流れにおける優先コマンド/応答対の交換が行えるようにされる。
【0023】
本発明の主題である、マスタ送信機/受信機とスレーブ送信機/受信機との間での、単一の物理交換チャネル上でのコマンド/応答対の多重交換のための複数の論理流れの伝送のためのプロトコル、および、そのようなプロトコルを実行する組込みコンピュータ装置などのコンピュータ装置にインストールされているアプレットの実行を検査および監視する装置が、下記の説明を読み、図面を参照することによってより良く理解されるであろう。
【0024】
本発明の主題に基づく、マスタ送信機/受信機とスレーブ送信機/受信機との間の、単一の物理交換チャネル上でのコマンド/応答対の多重交換のための複数の論理流れの伝送のためのプロトコルについて、図1aおよびそれに続く図面を参照して以下に詳細に説明する。
【0025】
この説明の範囲内で、論理流れは、マスタ送信機/受信機とスレーブ送信機/受信機との間の単一の物理交換接続を介する論理チャネル上での多数のコマンド/応答対の交換で構成されていることが、想起される。
【0026】
一般に、本発明の主題であるプロトコルは、コマンド/応答対の交換を行えるようにする“半二重”接続によりつながれている任意のマスタ送信機/受信機と任意のスレーブ送信機/受信機との間で実装されることが想起され、ここで、マスタ送信機/受信機は、アプリケーションのセットの中からの1つのアプリケーションに接続され、スレーブ送信機/受信機は、アプリケーションまたはサービスのセットの中からの少なくとも1つのアプリケーションの実行を行えるようにする。E/RMと記されているマスタ送信機/受信機とE/REと記されているスレーブ送信機/受信機とへの各アプリケーションの相互接続は、ベース論理流れを介して実行できる。それらのアプリケーションは、マスタ送信機/受信機に相互接続されるアプリケーションの場合にはAMyと記され、スレーブ送信機/受信機に相互接続されるアプリケーションの場合にはAEzと記されている。このベース論理流れを、SEPCと記されている単一の物理交換チャネルによって伝送することが可能である。前述のベース論理流れBLFは、単一の物理交換チャネルSPEC上での、(C,R)bと記されているコマンド/応答対の伝送で構成される。
【0027】
これらの条件の下で、図1aに示されているように、前述のパラメータのセットが定義されており、Sで記されているスタート条件について考えることにする。そのスタート条件は、非限定的な態様において、少なくとも1つのアプリケーションの実行を許すCAD読取器によってマスタ送信機/受信機E/RMが構成されており、かつアプレットまたはサービスがインストールされているチップカードによってスレーブ送信機/受信機E/REが構成されているような状況に対応し、この状況では、ベース論理流れは、ISO規格7816−3および7816−4の規定により定められている論理流れに対応する。
【0028】
しかしながら、上述した規格の規定にしたがう第1の使用にしたがって、単一のベース流れがプロトコルの実装のフレームワーク内で開いていてアクティブであると考えられる。これは図1aに示されている本発明の主題である。
【0029】
より具体的なやり方で、図1aに示されているように、本発明の主題であるプロトコルは、現在のアクティブな論理流れBLFを基準論理流れLFrとみなすことからなる。この操作は、図1aのステップBで実行され、関係:
LFr=BLF
により示されている。このステップは、たとえば16進数値FEなどの、特定の値を現在のアクティブなベース論理流れのクラスコードまたはパラメータに割り当てることによって実行できる。
【0030】
ステップBの後にステップCが続く。ステップCは、コンカレント論理流れ集合{CLFx}を発生することからなる。各コンカレント論理流れは、コマンド/応答対をセグメント化する引き続く基本パケットにより形成される。コンカレント論理流れ集合{CLFx}を形成する引き続く基本パケットは、基準論理流れLFr上で伝送され、その間にステップDのセグメント化を行い、この集合の2つのコンカレント論理流れは、異なるコマンド/応答対の独立かつ実質的に同時の伝送を行えるようにする。ステップDに示されている戻り矢印は、セグメント化から生じた引き続く基本パケットの多重交換を示している。
【0031】
コマンド/応答対のいかなる交換の開始および継続も、基準論理流れ上で伝送される特定のコマンドを基にしてマスタ送信機/受信機のイニシアティブで行われ、引き続く基本パケットへのセグメント化は、この基準流れ上でのそれらの特定のコマンドに応答して送信された特定の応答を基にしてスレーブ送信機/受信機のイニシアティブで行われる。このようにしてマスタ送信機/受信機は、アプリケーションと異なるアプレットとの間の交換の実行のために基準論理流れLFrを維持することによって、異なるコマンド/応答対の交換を維持でき、または、値FEの差し引きにより、ベース論理流れへの復帰によるコマンド/応答対の交換を維持できる。
【0032】
このやり方で、この明細書において後で以下に非常に詳しく説明するように、マスタ送信機/受信機およびスレーブ送信機/受信機の少なくとも一対のアプリケーションの間の独立した実質的に同時のコマンド/応答対の交換が行えるようにされる。異なるコマンド/応答対の実質的に同時の伝送という概念に関する限り、同時という概念は、引き続くパケットの伝送の期間内に限られることがもちろん理解される。
【0033】
さらに、本発明の主題であるプロトコルは、複数のアクティブなベース論理流れの存在する中で実現できる。図1bに示されているように、この状況では、マスタ送信機/受信機E/RMにより開始されるいかなるベース論理流れの存在中も、この状況は、図1aの開始状況と同様の開始状態Sに対応し、本発明の主題であるプロトコルは、マスタ送信機/受信機とスレーブ送信機/受信機との間の任意の開かれている、かつ通常はアクティブな、ベース論理流れの伝送を行うことからなるとすることができる。この操作は、マスタ送信機/受信機に接続されまたは接続されがちである任意のアプリケーションAMyからの要求で、マスタ送信機/受信機のイニシアティブで初期化されるアクティブなベース流れBLF*の存在を検証することからなるテストステップAにより実行できる。
【0034】
図1bにおいて、対応するテストAは
BLF*={Φ}
で示されている。このテストは、任意のアクティブなベース論理流れの不存在を検証することからなる。
【0035】
上述したテストAに対する否定的な応答に際して、アクティブなベース流れがマスタ送信機/受信機のレベルに存在し、本発明の主題であるプロトコルは、ステップSへ戻ることによる上述のアクティブなベース論理流れの伝送の実行することからなる。
【0036】
逆に、上述したテストAへの肯定的な応答に際して、アクティブなベース流れはマスタ送信機/受信機のレベルに存在せず、そして本発明の主題であるプロトコルは、基準論理流れとしてとられる少なくとも1つのベース流れにおいて、コンカレント論理流れ集合を発生することからなることができる。
【0037】
図1bで、図1aのステップに類似するステップBは、関係:
LFr=BLFu
によりLFrとして示されている、基準論理流れとしてベース論理流れBLFuの定義を表わす。本発明の主題であるプロトコルの実装のフレームワーク内で、ISO規格7816−4の規定に適合できるプロトコルにしたがって、ステップBにおける基準論理流れの定義を、例えば、先に述べた16進数値FEなどの特定の値を関連するベース論理流れのクラスコードまたはパラメータに割り当てることによって、有利に実行することができる。
【0038】
ステップBに続いて、コンカレント論理流れ集合が、図1aでのステップに類似するステップCで発生される。CLFxで示されている各コンカレント論理流れと、{CLFx}で示されているそれらのコンカレント論理流れ集合とが、この明細書で後で説明するように、引き続く基本データパケットにより形成される。上述したコンカレント論理流れ集合{CLFx}のコンカレント論理流れによって、マスタ送信機/受信機に接続されているアプリケーションすなわちAMpで示されているアプリケーションと、スレーブ送信機/受信機に接続されているアプリケーションすなわちAEqで示されているアプリケーションとの間の異なるコマンド/応答対の独立した実質的に同時の伝送を行えるようにされ、それらのアプリケーションを、データの交換が集合BLF*からのベース論理流れによって前に実行されているようなアプリケーションAMy、AEzとは先験的(アプリオリ)に異なるまたは異ならないようにすることが可能である。
【0039】
図1bに、異なるコマンド/応答対の独立した実質的に同時の伝送ステップがDで示されている。これらのコマンド/応答対は(C,R)xで示されており、対応するコンカレント論理流れCLFxにしたがって単一の物理交換チャネルSEPC上で伝送される。
【0040】
さらに、図1bに示されているように、本発明の主題であるプロトコルは、単一の物理交換チャネル上での基準論理流れとは異なるベース論理流れ上におけるコマンド/応答対の交換の実行のためにマスタ送信機/受信機E/RMによりアクティブにされると、直ちに任意のコンカレント論理流れの交換を一時停止することからなる。この一時停止操作は、図1bに示されているステップなどのテストステップEに対応することができる。このテストステップEは、アクティブなベース論理流れBLF*が存在しないことを検証する、ステップAにおいて実行されるものと同じテストにおそらく対応する。
【0041】
テストEに対する否定応答があると、マスタ送信機/受信機E/RMにより開始されたアクティブなベース論理流れが存在し、このアクティブなベース論理流れの伝送を実行するために、開始ステップSへの戻りが行われる。
【0042】
逆に、テストEに対する肯定応答があると、基準論理流れを再び定めるためにステップBへの戻りが実行され、もちろん、上記のようにステップB、C、Dにしたがう多重交換プロセスの実行も行われる。
【0043】
したがって、本発明の主題であるプロトコルの引き続くステップの実行によって、図1bに示されているように、前記プロトコルは、任意のベース論理流れの交換が終了すると、いかなるコンカレント論理流れの交換も直ちに継続可能にすることが理解される。
【0044】
このやり方によって、単一の物理交換チャネル上でのマスタ送信機/受信機とスレーブ送信機/受信機の少なくとも一対のアプリケーションの間の独立した実質的に同時のコマンド/応答対の交換が行えるようにされる。
【0045】
本発明の主題であるプロトコルは、図1bに示されているように、衝突(conflit)なしの共存を提供可能にし、コンカレント論理チャネルは、コンカレント論理流れの伝送を行えるようにし、ベース論理チャネルは、ベース論理流れの伝送を行えるようにする。特に、それは一方では、マスタ送信機/受信機とスレーブ送信機/受信機の少なくとも一対のアプリケーションの間の独立した実質的に同時のコマンド/応答対の交換を行えるようにし、他方では、単一の物理交換チャネル上でのベース論理流れにおける優先コマンド/応答対の交換を行えるようにする。
【0046】
したがって、以下に説明するように、ベース論理流れがISO規格7816−4の規定を満たすように定められており、かつマスタ送信機/受信機がカード読取器によって構成されスレーブ送信機/受信機がチップカードにより構成されている場合には、任意の時に、カード読取器はベース論理チャネル上でのAPDUコマンドの交換を開始できることが、理解される。この交換が行われている間、他のチャネル、すなわちコンカレントまたはその他のチャネルが一時停止されるが、コンカレントチャネル上で現在進行中の交換は中断されることはない。
【0047】
上述した特定の実装では、処理に比較的短い時間のみを要するコマンド/応答対の伝送を提供するためにベース論理流れおよびベース論理チャネルを使用することが、有利である。
【0048】
本発明の主題であるプロトコルのステップB、C、Dの、図1aおよび1bを参照して先に説明した特定の実装についてのより詳細な説明を、特に、上述したベース論理流れBLFuがISO規格7816−4の規定を満たす場合に、図2a、2b、2cおよび2dを参照して以下に行う。
【0049】
図2aには、それぞれ要素E/RMおよびE/REとして記載されているマスタ送信機/受信機とスレーブ送信機/受信機が示されている。
【0050】
ベース論理流れBLFu上の、(C,R)と記されている、コマンド/応答対の交換が単一の物理交換チャネルSEPC上で行われ、要素E/RMは、コマンドCを、パイロットPを介して要素E/RMに接続されているアプリケーションAMpから受ける。この要素E/RMは、C=[“COMMAND”]と記されているコマンドCのスレーブ要素E/REへの伝送を行うために制御を行う。制御を行う要素E/RMは、コマンドCを、スレーブ要素E/REに接続されているアプリケーションAEqへ送る。上述したアプリケーションの応答Rは、スレーブ要素E/REへ伝えられ、スレーブ要素E/REは、R=[“REPONSE”]と記されている応答の、単一の物理交換チャネルSEPC上でのE/RMへの伝送を行うように、再び制御を行う。要素E/RMは、それをパイロットPを介してアプリケーションAMpへ送る。この所与の例では、文字列“COMMAND”と“REPONSE”は、シンボリックなコマンドとシンボリックな応答をそれぞれ示す。
【0051】
関連する論理流れがベース論理流れBLFuであると、コマンド/応答プロセスを、引き続く対応する論理流れの入れ子(imbrication)または絡み合わせ(entrelacement)なしに、ISO規格7816−4の規定にしたがって、対応するコマンドおよび応答の実行で継続できる。
【0052】
逆に、例えばこの明細書で以前に述べた特定のクラスコードを割当てることによってベース論理流れが基準論理流れLFrとして構成されると、引き続くコンカレント論理流れを生成するプロセスが、関連するコンカレント論理チャネル上でAPDUの交換を構成しているデータを切断分割することにより、スレーブ要素E/REのイニシアティブで実行される。この切断分割は、より基本的なデータユニットまたはデータセグメントへの切断分割と、通常のAPDUを用いる単一の物理交換チャネルSEPCでのそれらのデータまたはセグメントの伝送とで構成される。
【0053】
スレーブ要素E/REのイニシアティブでの前述した切断分割は、定義により本発明の主題であるプロトコルの特に注目に値する面にしたがって、応答とセグメント化命令によって要素E/REのイニシアティブで実行できるので、有利であることが特に理解される。このセグメント化命令は、例えば、部分的なコマンドまたはデータ項目の形態でマスタ要素E/RMにより伝送されるコマンドのパケットの最大サイズを定める。スレーブ要素E/REは、それ自身のイニシアティブで、またはアプリケーションAEqからの求めで、前述したマスタ要素E/RMによって発行された、部分的なコマンドの形態で伝送されるパケットの最大サイズを定める。逆に、スレーブ要素は、部分的な応答の形態で伝送されたパケットの実際のサイズを定める。データセグメントまたはパケットへの前述したデータの切断分割が、それらの部分的APDUを絡み合わせること、したがって、データ論理流れと、コンカレント論理流れおよび上述したコンカレントチャネルで流れるコンカレント論理流れ絡み合わせることを可能にすることが、特に、理解される。
【0054】
マスタ要素E/RMに接続されているアプリケーションAMpとコンカレント論理流れCLFxを介してスレーブ要素E/REに接続されているアプリケーションAEqとの間で交換されるコマンド/応答対を構成するコマンドおよび応答のそれぞれの引き続く基本パケットへのセグメント化または切断分割の例を、図2bを参照して、限定しない例によって説明することにする。
【0055】
前述した図では、用いられたコマンド/応答対は、前述した限定しない実施形態では、もちろんAPDUコマンドに対応することが示されている。
【0056】
したがって、アプリケーションAMpは、コマンドCをマスタ要素E/RMへ送る。このコマンドは、
C=[“COMMAND”]
と示されている。C−APDUを構成する前述したコマンドでは、シンボリックコマンドを表わす文字列“COMMAND”は、APDUコマンドの形態で通常利用できる任意のコマンドを指し示す。このコマンドの論理値は、APDUコマンドの集りで通常利用されるものであり、前述した文字列は、このコマンドの構文を単に記号化(シンボル化)する。
【0057】
前述したコマンドCがマスタ要素E/RMによって受けられると、マスタ要素E/RMは制御を行い、スレーブ要素E/REへのコマンド通知を行うために、特定のコマンドをスレーブ要素E/REへ送る。
【0058】
コマンド通知コマンドは、
[COMMAND_READY x]
で示される。ここでxは、CLFxのインデックスを示す。
【0059】
前述したコマンド通知を受けると、スレーブ要素E/REは制御を行い、アプリケーションAEqとともに、受けるべきコマンドすなわち上記のコマンドCのセグメント化のための命令を送る。
【0060】
セグメント化命令は、書式
{RECEIVE_BYTES x NB=3}
のAPDUタイプの応答である。この応答すなわち前述したセグメント化命令は、もちろん、機能ヘッダRECEIVE_BYTESに加えて、インデックスxのコンカレント流れに関連するフィールドと、NB=3によって図2bに任意に示されているフィールドとを有する。NBは、スレーブ要素E/REにより要求されたバイトまたはワード(文字)の最大数を、前記要素に接続されているアプリケーションAEqとともに示す。
【0061】
セグメント化命令がマスタ要素E/RMにより受けられると、マスタ要素E/RMは、再び制御を行い、基準論理流れLFr上で、スレーブ要素E/REにより要求されたその数またはそれより小さい数のバイトまたはワードをもちろん有するデータ伝送コマンドを送る。
【0062】
パケット伝送コマンドは、書式
[SEND_DATA x [“COM”]]
のAPDUコマンドである。データ伝送コマンドに対応する機能ヘッダ“SEND−DATA”と本発明の主題であるインデックスxのコンカレント論理流れに関連するフィールドとに加えて、このパケット伝送コマンドは、3に等しい数で、かつコマンドCの場合には任意のコマンド“COMMAND”の最初の3つの文字に対応するバイトまたはワードをもちろん有する。
【0063】
前述したパケット伝送コマンドがスレーブ要素E/REにより受けられたのに続いて、制御を行うスレーブ要素は、図2bに[OK]で示されている受領応答のAPDUタイプ肯定応答をマスタ要素へ送る。
【0064】
マスタ要素E/RMは再び制御し、その後で書式
[RESUME]
のコマンド/応答対の交換の伝送の継続のためのコマンドをスレーブ要素E/REへ送る。この継続コマンドを受けると、制御を行うスレーブ要素E/REは、アプリケーションAEqによる処理の後で、セグメント化命令応答のマスタ要素への発行を繰返す。その応答では、例えば、要求されたバイト数に関連するフィールドは、NB=に等しくとられる。
【0065】
前述した新しいセグメント化コマンドのマスタ要素E/RMによる受取りに続いて、前記要素は、パケットの伝送のための新しいコマンドを送る。そのコマンドでは、送られるパケットのフィールドは、前述したコマンドCの文字“MAND”に対応するバイトを有する。
【0066】
前述したバイトの新しいパケットの受取りに続いて、スレーブ要素E/REは、もちろんアプリケーションAEqとともに、書式が
[SEND_BYTES x [“REPO”]]
であるAPDUタイプのセグメント化された応答を送るための用意ができて制御を行う。前述した応答は、送信バイト数または送信ワード数を有する。その数の選択は、スレーブ要素E/REに接続されているアプリケーションAEqと一緒に、スレーブ要素のみのイニシアティブで行われる。図2bの場合には、セグメント化された応答は、4バイトまたはワード、すなわち、シンボリック応答“REPONSE”の最初のセグメントに対応する4つの文字“REPO”を有する。
【0067】
マスタ要素E/REによる前述したセグメント化された応答の受取りに続いて、制御を行うマスタ要素は、新しい継続コマンドをスレーブ要素E/REへ送ることにより、アプリケーションAEqとともにあって制御を行うスレーブ要素E/REが、マスタ要素E/RMに対し、に等しく“NSE”に対応する任意にとられた数NBの転送バイトまたはワードを有する新しいセグメント化された応答を発行できるようにする。
【0068】
この新しいセグメント化されたコマンドを受けると、マスタ要素E/RMは、応答メッセージのAPDUタイプ終端がスレーブ要素E/REによりマスタ要素E/RMへ送られるまで、応答が完全に送られるように、継続コマンドをスレーブ要素E/REへ実際に送る。
【0069】
応答APDUメッセージの終わりは
[RESPONSE_COMPLETES x]
の書式を有する。応答メッセージの終わりの受取りに続いて、マスタ要素E/RMは書式
R=[“REPONSE”]
の完全応答Rを持ち、したがって、シンボリック応答に対応し、コマンド/応答対C/Rは、スレーブ要素E/REのイニシアティブで、引き続くパケットにより、単一の物理交換チャネルSEPC上のコンカレント論理流れCLFxによって、送られていた。
【0070】
コンカレント論理流れにより送られたコマンドと応答とのパケットへのセグメント化は、このようにして、伝送されるデータの受信者すなわち例えばアプレットとともに、スレーブ要素すなわちチップカード自体の管理の下に、実行される。このやり方は、それが、特にトランスポートパラメータT=0の値に対して、ISO 7816−4規格により定められている全てのトランスポートプロトコルを使用することを可能にするので、極めて重要であるようにみえる。そのパラメータに対して、APDUの正確な形態、特にそれの方向はあいまいであって、単一の物理交換チャネル上で通信している2つのパーティ、すなわち、結局、アプリケーションAMpとAEqのみに知られている暗黙の情報要素を構成する。
【0071】
さらに、スレーブ要素E/REがマスタ要素すなわちCAD読取器へ制御を定期的に譲る上述したセグメント化プロセスは、種々のコンカレントチャネルに接続されているアプリケーションAMpまたはAEqから生ずる交換のいかなる非同期要求をも管理することを可能にする。
【0072】
前述したセグメント化プロセスに関する限り、およびもちろん、本発明の主題である、図1に示されている、プロトコルの実現のプロセスに関する限り、アプリケーションAMpとAEqは、コンカレント論理流れの伝送のためのコンカレントチャネル、またはベース論理流れの伝送のためのベースチャネルの、特定の計算ユニットによって構成されているパイロット、図に示されていない、による開放(開通)を要求できる。パイロットは、もちろん、マスタ要素E/RMおよびアプリケーションAMpと通信できる。各アプリケーションは、さらに、それぞれコンカレント論理流れおよびベース論理流れの交換のためにコンカレントチャネルまたはベースチャネルの開放に続いて、このチャネルでのAPDUの交換を要求でき、かつチャネルがコンカレントである場合、または交換される論理流れが図1に示されているようにコンカレント論理流れである場合に、現在の交換を中断できる。
【0073】
さらに、図1および図2bに示されているように、コンカレントチャネル上でのAPDUの交換を構成しているデータまたはコマンドのセグメント化によって、それらのデータまたはコマンドセグメントを単一の物理交換チャネル上で伝送できるようにされ、一方では、基本APDUにより構成されているコマンド/応答対の絡み合わせを許可し、図2cを参照して特定の非限定例で説明するように、最終的には、前述したコンカレントチャネルを流れるコンカレントデータ流れの対応する絡み合わせを許可する。
【0074】
前述した図2cでは、2つのアプリケーションAMpとAMp'をパイロットによりマスタ要素E/RMに接続でき、かつスレーブ要素E/REが例えば単一のアプリケーションに接続されているような、非限定的な例が考察されている。この理由から、図2cにはそのようには示されていない。
【0075】
前述した図では、アプリケーションAEyが、コンカレント論理流れCLFxの開放の要求に引き続いて、コマンドC=[“COMMAND”]をパイロット、示されていない、を介して、マスタE/RMへおそらく発行する。
【0076】
図2bを参照して、マスタ要素E/RMは、この明細書で以前に述べたコマンド通知コマンドを単一の物理交換チャネルSEPC上で送る。スレーブ要素E/REは、セグメント化命令応答を伝送することによって応答する。セグメント化命令応答に対しては、NBは、スレーブ要素E/REにより実行されるアプレットまたはアプリケーションにより、任意に8に等しくとられる。
【0077】
セグメント化命令応答をマスタ要素E/RMが受けると、マスタ要素E/RMは、スレーブ要素E/REにより要求されたバイト数またはワード数に対応する8つの文字を有する文字列を含む、パケット伝送コマンドをスレーブ要素E/REへ送る。このようにしてシンボリックコマンドは完全に伝送される。そうするとスレーブ要素E/REは、受領コマンド[OK]の肯定応答をマスタ要素へ送ることができる。そうすると、以下に説明するように、マスタ要素はいかなる伝送手続きも、コンカレント論理流れCLFxの伝送によるコンカレント論理チャネル上で、または他のコンカレント論理チャネル上で継続できる。
【0078】
マスタ要素E/RMにより実行されるアプリケーションAMpは、
C’=[“C’O’M’M’A’N’D’E’”]
の書式のシンボリックコマンドに対応する、コマンドC’のパイロットによる伝送に先だって、コンカレント論理チャネルCLFxの開放を求めた。
【0079】
マスタ要素E/RMによりスレーブ要素E/REへ発行された継続コマンドを受けると、スレーブ要素E/REは、コマンドCに対応するセグメント化された応答の発行へ進むことができる。その理由は、もちろん、スレーブ要素E/REが、コンカレント論理チャネルが単独で開かれている対象とするコマンドC’の存在をまだ知らず、対応するコンカレント論理流れCLFxがまだアクティブでないからである。
【0080】
非限定的な例によって、かつシンボリック応答“REPONSE”に対して、セグメント化された応答は、文字列“REPO”よりなる部分応答によってパケットを送る。
【0081】
そうするとマスタ要素E/RMは、パイロットを介して、先に述べたコマンドC’に関連するコマンド通知コマンドの発行を介して入れ子にされている交換を初期化するように、コンカレント論理流れCLFx'のアクチベーションへ進むことができる。
【0082】
コマンド通知コマンドをスレーブ要素E/REが受けると、制御を行うスレーブ要素E/REは、NB=4に任意にとられる数のバイト数に対してコマンドC’に関連するセグメント化命令応答を送る。これに応じて、マスタ要素E/RMは、C’のコマンドに関連し、かつもちろん4バイトまたは4文字を有するパケット伝送コマンドを送る。それらの文字は、シンボリックコマンドC’の文字列“C’O’M’M’”を構成している。
【0083】
スレーブ要素E/REは、応答して受取りの肯定応答を送る。
【0084】
制御を行うマスタ要素E/RMは、現在アクティブであるコンカレント論理流れ集合が空集合とは異なるときに、パイロットを介して、その現在アクティブであるコンカレント論理流れ集合についてスレーブ要素E/REに知らせる。この通知は、継続コマンドの形で実行できる。継続コマンドについては、この明細書において後で非常に詳しく述べることにする。継続コマンドに応答して、スレーブ要素E/REは、コンカレント論理ストリームCLFx上のバイトまたはワード“NSE”を有するセグメント化された応答によって、シンボリック応答“REPONE”の伝送を実行するように、失われた4つのバイトを送ることができる。その後でマスタ要素E/RMは、同じコンカレント論理チャネル上で、継続コマンドをスレーブ要素E/REへ送る。その後でスレーブ要素E/REは、コマンドCに関連する応答コマンドの終りを送ることができる。このメッセージコマンドの終りを受けると、マスタ要素E/RMは、コマンドCに対するシンボリック応答を、パイロットを介して、アプリケーションAMpへ送ることができる。
【0085】
さらに、マスタ要素E/RMは、パイロットを介して、コマンドC’に関連するコマンド/応答対交換のためにコンカレント論理流れCLFx'上での多重交換プロセスを継続できる。コマンドC’に関しては、応答コマンドの終りは、スレーブ要素E/REによりまだ送られていない。アプリケーションAMp'のイニシアティブで開かれたコンカレント論理流れCLFx'は、パイロットにより再びアクティブにされ、スレーブ要素E/REによる継続コマンドの受取りに続いて、スレーブ要素E/REは、NB=4に等しくとられるとともに、アプリケーションAMp'により初期化されたコマンドC’に関連する最大の所与のバイトまたはワード数に対するセグメント化命令応答をマスタ要素E/RMへ送ることができる。
【0086】
セグメント化命令応答を受けると、マスタ要素E/RMは、コマンドC’に関連し、かつバイトすなわちシンボリックコマンドC’の文字列“A’N’D’E’”を構成している最後のバイトまたはワードを有するパケットを含む、パケット伝送コマンドを送ることができる。
【0087】
スレーブ要素E/REによる前述したパケット伝送コマンドの受取りと、前記要素による受領の肯定応答の発行とに続いて、マスタ要素は、シンボリックコマンドに対する応答を得るように、継続コマンドを送る。
【0088】
この継続コマンドに応答して、スレーブ要素R/REは、シンボリック応答の全体、すなわち“R’E’P’O’N’S’E’”として示され、かつコマンドC’へのセグメント化された応答書式での応答に関連するシンボリック応答を送る。
【0089】
マスタ要素E/RMによる前述したセグメント化された応答の受取りに続いて、マスタ要素E/RMは、継続コマンドをスレーブ要素E/REへ再び送り、その後でスレーブ要素E/REは、コマンドC’に関連する応答コマンドの終りをマスタ要素E/RMへ送ることができる。その後でマスタ要素E/RMは、文字列[“R’E’P’O’N’S’E’”]により形成されているシンボリック応答のアプリケーションAEy'への伝送へ進むことができる。
【0090】
パイロットによるコンカレントチャネルの開放手順に関する限りは、この開放は、“管理チャネル”タイプ、のAPDUコマンドを介して実行できる。ISO 7816−6のパラグラフ6.16を参照されたい。
【0091】
一般に、コンカレント論理流れを構成する、引き続く各基本パケットは、特定のAPDUコマンド/応答対により、単一の物理交換チャネル上で伝送される。
【0092】
ベース論理流れを実行するためのコマンド/応答対は、APDUエンティティにより構成され、異なるコマンド/応答対は“エンベロープ”タイプの特定のAPDUコマンドと、APDU応答の部分集合に属する短いAPDU応答とによって形成されることが好ましい。
【0093】
“エンベロープ”タイプの特定の物理C−APDUコマンドを受けると、スレーブ要素E/REは、処理を行う。例えば、スレーブ要素は、スレーブ要素E/REがチップカードによって構成されている場合には、あるインストールされているAPDUの実行を進めることができる。しかし、比較的短い時間で応答を与えねばならない。R−APDUを構成する応答は次の形の1つをとらなければならない。
【0094】
1. [TIME_OUT]
カードは、他のいかなる特定の事象もなしに、認められた時間から単に実行した。
【0095】
2. [GET_HEADER x]
カードは、コンカレントチャネルxのC−APDUヘッダを要求する。パイロットは、物理的コマンド[SEND_HEADER x CLA INS P1 P2 P3]を介して応答せねばならない。その物理的コマンドに対してカードは、R−APDU[OK]を介して応答する。
【0096】
3. [GET_BYTES x n]
カードは、コンカレントチャネルxのC−APDUの次のnバイトを要求する。パイロットは、物理的コマンド[SEND_DATA x a1...am]を介して応答する。ここにm≦nであって、nが入来データの最後のセグメントであるならば、これは異なることがある。カードは、R−APDU[OK]を介して受取りを肯定応答する。
【0097】
4. [SET_OUTGOING_LENGTH x Lr]
カードは、コンカレントチャネルx上における応答R−APDUの長さをパイロットに指示する。
【0098】
5. [SEND_BYTES x a1...am
カードは、コンカレントチャネルx上のR−APDUの次のnバイトを発行する。
【0099】
6. [STATES x SW]
カードは、コンカレントチャネルx上のR−APDUの状態、すなわち最後の2バイトを指示する。チャネルx上での交換が、その後、終了される。
【0100】
全ての場合において、パイロットはこの交換の後で制御を再び行う。
【0101】
カードの要求がプロトコルの誤りを構成する場合には、例えば、上述の2〜6までのケースであって、チャネルx上で交換が進行中でない、あるいは、カードが全く同一の交換中にヘッダを2回要求するなどの場合には、パイロットは、その問題をコマンド[IO_ERROR x code]を介してカードに送信する。そのコマンドでは、誤りの性質がコード番号で表わされている。
【0102】
コンカレント論理流れによる他の交換の長い処理中における、コンカレント論理流れによる交換の要求の特定の処理が、マスタ要素E/RMにより実行される2つのアプリケーションAMp、AMp'に関連して、図2dにさらに示されている。
【0103】
図2dを参照して、アプリケーションAEyのイニシアティブで実行されるコマンドC=[COMMAND”]に対するコンカレント論理流れCLFx上におけるコマンド/応答対の交換の実行について考えることにする。
【0104】
そのような場合には、コンカレント論理流れCLFxの開放に続いて、このコンカレント論理流れは、パイロットによりアクティブにされ、交換の実行は、スレーブ要素E/REに認められている時間内という実行条件の下で、行うことができる。
【0105】
交換の実行のために、他のいかなる特定の事象もなしでスレーブ要素E/REに対して認められた時間から実行するそのスレーブ要素E/REのいかなる部分的な実行も、
[TIME_OUT]
という書式のR−APDUタイプの応答のスレーブ要素E/REによる発行と、マスタ要素E/RMによる継続コマンドの発行との主題を形成する。このプロセスは、スレーブ要素E/REにより使用される種々の引き続く時間スライスに対してアクティブなコンカレント論理流れCLFxのために継続できる。
【0106】
コマンドC’が他のアプリケーションAMp'のイニシアティブでマスタ要素E/RMにより受けられると、パイロットによってアクティブにされているコンカレント論理流れCLFx'の開放により、コンカレント論理流れCLFx'を支持しているコンカレント論理チャネル上におけるコマンドC’に関連するコマンド通知のスレーブ要素E/REへの伝送が行われるようにされる。その後で、コンカレント論理流れCLFx'上におけるコマンドC’の実行、コマンドCおよびコマンドC’の伝送の実行のために、応答[TIME_OUT]を送るプロセスを継続できる。
【0107】
本発明の主題であるプロトコルによって、マスタ要素E/RMにより実行されるアプリケーションの間の交換の非同期要求の処理と、およびスレーブ要素E/REにより実行されるアプレットまたはサービスの間の交換の非同期要求の処理を行えるようにする。
【0108】
図1bを参照して、これらの要求がベース論理流れと関連しベース論理チャネルに対応すると、この場合には、ベース論理流れに関連する応答が受け取られるまで、コンカレント論理チャネルとコンカレント論理流れ集合が一時停止される。
【0109】
しかし、交換のための非同期要求は、空きコンカレントチャネル上におけるC−APDUコマンドの発行に関連することもある。この場合には、パイロットは、マスタ要素E/RMを介して、コマンド通知コマンドを発行し、C−APDUタイプコマンドを論理チャネル上および関連するコンカレント論理流れCLFx上で利用できることを示す。そうするとその通知コマンドは、非限定例により、スレーブ要素E/REでの受領アプレットの実行をトリガできる。
【0110】
パイロットがマスタ要素E/RMを介して制御するが、非同期交換要求がそのマスタ要素に到達せず、それでも交換がコンカレントチャネルの1つで依然として進行中であると、交換の継続が、C−APDUタイプコマンドの発行を介して、すなわちこの明細書で以前に述べた継続コマンドを介して、実行される。
【0111】
これらの条件の下では、スレーブ要素E/REは、非同期要求をできる限り速く処理できるように、比較的短い時間内で制御を譲らなければならない。
【0112】
最後に、図1および図2bを参照して、本発明の主題であるプロトコルは、2つの特定のコマンドすなわちC−APDUタイプコマンドと、3つの特定の応答、すなわちR−APDUタイプの応答とを基にして実装することができ、そうすることが好ましい。
【0113】
第1の特定のコマンドは、マスタ要素E/RMがスレーブ要素E/REに対して、現在アクティブなコンカレント論理流れ集合の存在を通知できるようにする、コマンド通知コマンドで構成される。特に図2bと図2cに与えられている例では、説明を不必要に複雑にしないように、各コマンド通知コマンドは単一のアクティブなコンカレント論理流れCLFx、CLFx'を含んでいたが、いくつかのコンカレント論理流れを同時にアクティブにすることが適切なことがあり、コンカレント論理流れの単一の物理交換チャネル上での伝送は連続する以外は実行できないことが理解される。
【0114】
コマンド通知コマンドは、実際には、
・コマンド[COMMAND_READY x]により形成されているコマンドCIa
・コマンド[RESUME]により形成されているコマンドCIb
で構成される。
【0115】
コマンドCIaとCIbは、コンカレントチャネル上での交換の実行または継続のためのマスタ要素E/RMの利用可能性をスレーブ要素E/REに通知可能にする。
【0116】
パケット伝送コマンドで構成されている第2の特定のコマンドは、基本パケットをマスタ送信機/受信機からスレーブ送信機/受信機へ発行可能にする。CIIで示されているこの第2の特定のコマンドは、第1の特定のコマンドまたは第2の特定のコマンドの1つに応答して、セグメント化命令を構成するRIで示されている第1の特定の応答を受けて、スレーブ送信機/受信機により発行される。第2の特定のコマンドCIIは、スレーブ要素E/REから出た第1の特定の応答を受けて、第1の特定のコマンドCIa、CIbと第2の特定のコマンドCIIの1つへ発行され、第1の特定の応答RIで示されているコンカレント論理流れ集合のコンカレント論理流れの1つに対して現在アクティブであるコマンドに関連する基本パケットを、マスタ要素E/RMからスレーブ要素E/REへ送ることを可能にする。現在アクティブであるコマンド、例えば図2bでコマンドCの引き続くパケットへの切断分割は、第2の特定のコマンドCIIで伝送されるパケットの最大サイズのセグメント化命令を構成する、第1の特定の応答RIの仕様によりスレーブ要素のイニシアティブで実行される。
【0117】
セグメント化された応答を構成している第2の特定の応答RIIは、第2の特定の応答RIIで示されている、現在アクティブであるコンカレント論理流れでの応答の基本パケットを、スレーブ要素E/REからマスタ要素E/RMへ発行することを可能にする。
【0118】
最後に、第3の特定の応答RIIは、単一の応答、すなわち、スレーブ要素E/REからマスタ要素E/RMへ送られた特定のコマンド/応答対応答の終りで構成されている。
【0119】
このように、引き続く基本パケットの交換の継続が、第1の特定のコマンド、特にコマンド通知コマンドCIaのマスタ要素による発行により、マスタ要素E/RMのイニシアティブで実行される。しかしこの継続は、図1bに示されているように、いかなるアクティブなベース論理流れも存在しないという条件をつけられる。
【0120】
逆に、アクティブなベース論理流れが存在すると、図1bに示されているように、このアクティブなベース論理流れのマスタ要素E/RMによる単一の物理交換チャネル上での優先伝送が条件付けされる。
【0121】
本発明の主題であるプロトコルのステップの全体によって、図2cに示されているように、独立したコマンド/応答対C、Rと応答対C’、R’の交換を行えるようにされる。
【0122】
少なくとも1つのメモリと、実行オートマトンと、オペレーティングシステムとが装備されている組込みコンピュータ装置などのコンピュータ装置にインストールされているアプレットであって、インストールされているアプレットの少なくとも1つが、特定の情報を、他のオペレーティングシステムが装備されているコンピュータにより実行される少なくとも1つのアプリケーションと交換することを意図されているような、このようなアプレットの実行を検査および監視する装置のより詳細な説明を図3a、図3bおよび以後の図面を参照して以下に行う。
【0123】
通常のやり方で、本発明の主題に従って、アプレットの実行を検査および監視する装置が、アプレットの実行を検査および監視するため、すなわちアプレットのデバッグのためのプロセスを提供するように、前述したマスタ要素E/RMとスレーブ要素E/REとの間で単一の物理交換チャネル上でコマンド/応答対の多重交換のために複数の論理流れの伝送のためのプロトコルを実現することが示されている。
【0124】
前述した図3aに示されているように、本発明の主題である装置は、少なくとも、例えばチップカード1により構成されている組込みコンピュータ装置と、特定のオペレーティングシステムが装備されているコンピュータにより実行されるアプリケーション2とに加えて、組込みコンピュータ装置1にインストールされている任意のアプレットの実行を検査および監視するための、すなわちアプレットのデバッグのためのパイロットモジュール3を有する。パイロットモジュール3は、一方では、L23と記された接続によりアプリケーション2につながれており、他方では、コマンド/応答タイプの単一の物理交換接続、すなわちL13で示されている接続により、組込みコンピュータ装置1につながれている。
【0125】
本発明の主題である実行検査および監視装置は、接続34によりパイロットモジュール3に相互接続されている実行検査および監視モジュール4も有し、この実行検査および監視モジュールは、組込みコンピュータ装置1の実行オートマトンの実行を監視することを意図されている。
【0126】
さらに詳しくいえば、組込みコンピュータ装置1は、オペレーションシステムOSと、JAVACARD環境における特定の実施形態では、例えばJCVMタイプの仮想マシンVMにより構成できる、AUTで示されている実行オートマトンとを有することが示されている。
【0127】
もちろん、組込みコンピュータ装置1は、App1,...,Appx,...,AppNで示されている種々のアプレットを、不揮発性メモリにインストールしている。それらのアプレットはアプリオリに独立である。
【0128】
最後に、組込みコンピュータ装置1は、組込みコンピュータ装置1の不揮発性メモリにインストールされている実行オートマトンの実行を検査および監視するためのエージェントモジュールを有する。
【0129】
特に有利な非限定的な実施形態では、組込みコンピュータ装置1は、チップカードまたはマイクロプロセッサと、マイクロプロセッサを備えたCAD読取器を有するパイロットモジュール3と、ISO 7816タイプ接続により構成されている接続13によって構成されているコマンド/応答タイプの単一の物理交換接続と、によって構成されている組込みシステムであることが示されている。
【0130】
さらに詳しくいえば、コマンド/応答タイプの単一の物理交換接続は、本発明の主題であってこの明細書で以前に述べたプロトコルにしたがって、多重交換を実行することを可能にすることが示されている。
【0131】
接続23およびL34に関する限り、接続23はISO 7816タイプ接続として、またはソフトウエアライブラリ、例えばPC/SCまたはOCFに適合するソフトウエアレイヤとして具体化できる。ソフトウエアライブラリPC/SCは、参考文献、Interoperability Specification for ICCs and Personal Computer Systems, version 1.0(ICCおよびパーソナル・コンピュータ装置用相互操作可能性仕様、1.0版)、1997年12月、パート1ないし8、PC/SC Wokgroup発行、の主題を構成している。この文献は、アドレス[www.pcsworkgroup.com]でアクセスできる。参考文献のOCF(OpenCard Framework)ソフトウエアライブラリは、Opencard Framework 1.1.1... Programmer's Guide, 3rd Edition(オープンカード・フレームワーク1.1.1...プログラマズガイド、3版)、OpenCard Consortium発行であって、アドレス[www.opencard.org]で入手できる。しかし、接続34の実装の場合には、この接続は、SUN MICROSYSTEMS INC.により、SUNによるソフトウエア“Java2DSK,v 1.3.0”と一緒に配布されている文献JAVATM Debug Wire Protocol(JAVATMデバッグワイヤプロトコル)で仕様化されているJDWPプロトコルにより具体化でき、そうすると有利である。その文献は、アドレス[http://java.sun.com/products/jpda/doc/jdwp-spec.html]でアクセスできる。そのようなプロトコルの実装によって、このプロトコルに適するいかなる実行検査および監視ツールも使用可能にされる。
【0132】
さらに、図3bに示されているように、実行オートマトンAUTは、VMで示されている仮想マシンを備えることができる。この仮想マシンには、アプリケーションインタフェースAPIのライブラリが組合わされる。
【0133】
最後に、組込みコンピュータ装置の不揮発性メモリにインストールされているエージェントモジュール5は、アプリケーションとアプレットとの間の交換の実行を検査および監視するためのソフトウエアエージェントモジュールを有する。
【0134】
この組立体の全体的な動作態様は次の通りである。パイロットモジュール3は、暗黙裡(implicitement)に開いている対応するコンカレント論理流れの交換を行うために、2つのコンカレント論理チャネルを使用する。第1のコンカレント論理流れが、デバッグモードに指定された実行検査および監視モードにおいて、例えば、1つのアプレットAppxと通信するために用いられる。
【0135】
第2のコンカレント論理流れが、例えば、仮想マシンVMが停止点に達した時、またはそれが実行検査および監視モジュール4がモニタされることまたは追従されることを求めた任意の動作を実行するときに、その仮想マシンから出た事象(evenement)を送るために使用される。
【0136】
最後に、デフォルト非コンカレント論理流れの交換を許す非コンカレント論理チャネルが、仮想マシンVMの実行を監視し、かつ仮想マシンVMの内部状態にアクセスするために、その後で用いられる。
【0137】
パイロットモジュール3は、実行検査および監視モジュール4により送られた非同期停止要求を処理するために、マスタ要素E/RMの制御を引き続いて再び行うことを考慮にいれている。本発明の主題であるプロトコルの実行中に図2bまたは図2cに略図で示されているように、このような非同期停止要求がパイロットモジュールに達し、かつパイロットモジュールが制御を再び行うとすると、仮想マシンVMの実行は一時停止される。その後でマスタ要素E/RMは、ユーザ、すなわちユーザにより制御される実行検査および監視モジュール4がその実行を継続することを要求する時にのみ、パイロットモジュール3により継続コマンドを送る。
【0138】
本発明の主題である実行検査および監視装置の具体的な実装が、実際に使用されるAPDUコマンドおよび応答のフォーマットを最適にすることを可能にできる。例えば、命令の実行を行うために、組込みコンピュータ装置1に継続コマンド[RESUME]による狭義の次の実行を指示するように、前述したベース論理流れの経路指定を可能にする監視コマンドを最初に使用することが、原則として必要である。それら2つのコマンドは、コマンド[STEP]などの、単一のコマンドで置き換えることができる。
【0139】
パイロットモジュール3の動作態様は次の通りである。
【0140】
−パイロットモジュールは、デバッグを考えられているアプリケーションで指定されている、APDUタイプの特定のコマンド/応答対により、エージェントモジュール5の監視と管理とのコマンドを提供する。この理由から、DPDUはデバッグプロトコルデータユニット(Debug Protocol Data Unit)を意味する。この目的で、エージェントモジュールは、オートマトンにより実行される入力/出力I/Oの、すなわち仮想マシンVMによる入力/出力機能に対する呼出しの各遷移で、前述したDPDUメッセージの交換を促す。図2bと図2cを参照してこの明細書で先に述べたように、DPDUメッセージは、パケットおよびアプリケーションの間のコマンドまたはアプレットのパケットを有する。
【0141】
−パイロットモジュールは、実行検査および監視モジュール4からの要求で、ユーザのイニシアティブで、入力/出力交換中に、および実行オートマトンAUTがその入力/出力遷移を前述したユーザーにより選択された指定された時間の間実行しない時に、その実行オートマトンの実行、すなわち最終的には仮想マシンVMの実行を一時停止する。
【0142】
−前述した実行に続いて、パイロットモジュール3は、実行オートマトンの状態を監視し、その後で前述した実行オートマトンAUTの実行の継続を促すように、特定のコマンド/応答対すなわちDPDUメッセージをエージェントモジュール5へ送る。
【0143】
どのようなデバッグモードも存在しない時のアプレットの実行、すなわち、図4aに示されている、デバッグモードにおける先行技術の仮想マシンの実行にほぼ従う正常な実行を、本発明の主題である装置とプロトコルとの実装により、検査および監視するプロセスの手順の詳細な説明を図4bおよび図4cを参照して以下に行う。
【0144】
図4aを参照して、組込みコンピュータ装置1、すなわち対応するチップカードでの仮想マシンVMの入力/出力I/Oに対するアクセスが、JAVA CARDタイプの仮想マシンに組合わされているインタフェースAPIのライブラリに等しいサービスを提供するものと考えられるオペレーティングシステムOSの少数の機能を呼び出すことを含むことが、示されている。組込みコンピュータ装置1を構成するマイクロプロセッサカードでは、実行を検査および監視するエージェント5が、オペレーティングシステムOSと仮想マシンVMの間にセットアップされている。このセットアップは図3bに示されている。それがアクティブにされると、エージェントモジュール5は、それらの入力/出力I/O機能に対する全ての呼出しをインタラプトし、それらの呼出しのおのおのをパイロットモジュール3でDPDUの交換に変換する。
【0145】
正常な実行、すなわち図4aに示されているようにデバッグモードがない時の実行のために、アプリケーション2の実行を許す端末装置が、例えば、入来データC1、C2、C3、C4、C5の5バイトまたはワードで構成されているコマンドを発行する。関連するアプレットが、ワードC1、C2、その後でC3、C4、C5の転送を許すゲットバイト(Get Bytes)メソッドに対する2回の呼び出しによって入来データにアクセスし、その後で1回の操作の4つの応答ワード、すなわちワードR1、R2、R3、R4を送る。
【0146】
ISO 7816の半二重性のために、組込みコンピュータ装置1を構成するチップカードは、交換の持続時間中にわたって制御を保持する。そうすると、カードへの供給を断つこと以外に、実行をインタラプトすることは可能でない。
【0147】
他方、図3aおよび図3bに示されているように、本発明の主題であるアプレット検査および監視装置の実現に従って、デバッグモードへ切り替えると、その操作手順は、図4bにしたがって次の通りである。
【0148】
前述した図において、パイロットモジュール3とエージェントモジュール5の間で交換されたDPDUコマンドが、大括弧の中に表わされている。エージェントモジュール5は、オペレーティングシステムOSに関しては正常なアプリケーションのように挙動し、アプレットが非デバッグモードで実行されるときにアプレットにより使用される機能と同じ機能でDPDUコマンドをアクセスする。それらの機能は、“GET_BYTES”と“SEND_BYTES”、および本発明の主題であるプロトコルの実行に関してこの明細書で以前に述べた機能以外のものではない。単一のコマンド/応答対の交換を、ISO 7816プロトコルに適合するいくつかのコマンド/応答に分断することの利点は、次の通りである。引き続く2つの部分交換の間で、入力/出力チャネルは、パイロットモジュール3とモジュール5との間の他の交換に対しては、空いている。そのような交換は、アプレットにとって、およびもちろんアプリケーション2を実行する端末装置にとっては、見ることができない。それらの交換は仮想マシンVMの実行を監視すること、および仮想マシンVMの内部状態をアクセスすることを可能にする。
【0149】
仮想マシンVMが入力/出力機能に対する2つの呼出しの間の停止点に達すると、チップカードは、エージェントモジュール5によって、制御をパイロットモジュール3に譲ることにより、実行検査および監視モジュール4が適切なコマンドによって仮想マシンVMの状態を調べることを許す。
【0150】
図4bに非限定的な例で表わされているのは、変数xの値を要求する実行検査および監視モジュール4である。そのような交換は、物理的には完全に有効である。その理由は、この交換が、文法にかなったC−APDUコマンドおよびR−APDUコマンドのみを有するからである。それは、アプリケーション2を実行している端末装置と、組込みシステム1にインストールされているアプレットとの間で進行している交換を中断すべきでなかった場合ではない。
【0151】
したがって、仮想マシンVMの状態の検査は、この仮想マシンが、コンピュータ装置1のメモリの読出し/書込みコマンドによる実行を検査および監視するモジュール4のイニシアティブで一時停止される時に、実行されることが理解される。
【0152】
実行を検査および監視するそのようなプロセス、すなわちデバッグによって、一方ではアプリケーション2とアプレットAppxの実行を許す端末装置との間で、他方ではパイロットモジュール3と検査および監視エージェントモジュール5との間で交換されるデータを多重化することが可能である。
【0153】
そのような操作手順は、
−オペレーティングシステムOSと、他のいかなるアプリケーションにも類似するアプリケーションに似た挙動を行う仮想マシンVMにエージェントモジュール5をプラスした組立体との実装に及ぼす影響の完全な不存在。特に、この手順は第2の物理通信チャネルの存在を必要としない。
【0154】
−仮想マシンの実装に対する限られた影響。その理由は、オペレーティングシステムOSの少数の機能に対する呼出しをエージェントモジュール5における等価な機能に対する呼出しで置き換えることで十分であるからである
【0155】
最後に、本発明の主題であるアプレットとプロトコルの実行を検査および監視する装置は、仮想マシンの実行の非同期停止の実行に特に良く適する。
【0156】
特に、例えばアプレットが長い計算または無限の計算に関わらせられるいかなる時にも、仮想マシンの実行を停止できることが望ましい。接続13の性質に注意すると、制御を検査および監視エージェントモジュール5へ移して、この検査および監視エージェントモジュール5が実行を終了させること、またはアプレットAppxが入力/出力の実行を進めることを待つことは可能ではなく、エージェントモジュール5は、それのイニシアティブの下でのみ制御を譲ることができる。
【0157】
そうすると、本発明の主題である装置およびプロトコルの実装に従って、提案された解決策は、仮想マシンVMの実行を、指定された時間Tの間、始めるコマンドを採用することからなる。その時間が経過すると、エージェントモジュール5は、制御をパイロットモジュール3に譲る。その後でパイロットモジュールは、その間に一時停止要求が起きなければ、実行を一時停止する機会、またはそれを再開する機会を持つ。指定された時間の間のこの実行プロセスは、アプリケーション2とパイロットモジュール3によって構成されているマスタ要素E/RMと、組込みコンピュータ装置1、および特に検査および監視エージェントモジュール5によって構成されているスレーブ要素E/REとの間の、図2dのプロセスに対応する。その後で、実行検査および監視モジュールから出される一時停止要求がその間に生じないならば、パイロットモジュール3は、実行を再開できる。
【0158】
チップカードにより構成されている組込みコンピュータ装置1のレベルでは、指定された時間にわたって実行するためのそのようなコマンドの実装は、システム時間ダウンカウンタまたは実行すべき各命令で減少させられる簡単なカウンタを使用することによって、実行できる。実行の正確な持続時間Tは、それが有限であれば、すなわちエージェントモジュール5が終了制御によって終了するならば、任意にできる。実行の持続時間Tの値の大きさの程度は、システムが要求を中断する反応性を決定する。Tの値が短くなると、システムが実行をインタラプトできる速さが速くなる。持続時間Tの値は、組立体の全体の効率も決定する。その理由は、APDU交換が持続時間Tの各実行ごとに存在するからである。したがって、持続時間Tの値の大きさの程度の決定は、ユーザのイニシアティブによって、要求の関数として実行できる。
【0159】
最後に、本発明の主題であるアプレットの実行を検査および監視する装置は、アプレットのコードを、ソースコードでの行ごとに実行することも可能にする。一般に、プログラムカウンタと上述したソースコードの行のインデックス数との間の対応のルックアップテーブルは、チップカードにより形成されている組込みシステム1に保存できず、それは、交換の監視を最少にするために必須である。
【0160】
本発明の主題である装置およびプロトコルによって許される解決策は、ソースの各行に対してプログラムカウンタのインターバルを関連させることからなる。このテ−ブルはコンパイラにより計算でき、かつ組込みシステム1の外部の、パイロットモジュール3をアクセスできるメモリ領域内に保存できる。このアクセス可能なメモリ領域は、例えば実行検査および監視モジュール4内に配置できる。各行ごとでの実行要求に対して、現在の行に対応するインターバルがコマンドと一緒に送られる。各命令に対して、仮想マシンVMの実行は、検査および監視エージェントモジュール5のコード要素に転換される。その後でそれは、プログラムカウンタがその関連するインターバル内に実際に静止しているかどうかを判定する。このインターバルが関連するインターバルより短いときは、それは、実行が現在の行とは異なる行に到達してエージェントモジュール5がパイロットモジュール3に制御を譲るからである。
【0161】
したがって、各行ごとでの実行要求にとって重要な情報を、組込みコンピュータ装置1に行のテーブルを保存する必要なしに、送ることが可能である。
【0162】
仮想マシンのスタックのサイズを含んでいる類似の停止条件が、例えば、メソッド呼出しをスキップする間の行の実行または現在のメソッドからの退出などの、他のタイプのシンボリック実行の簡単な実現を許す。
【図面の簡単な説明】
【図1a】 単一のベース論理流れの存在の下でマスタ送信機/受信機とスレーブ送信機/受信機との間で、単一の物理交換チャネル上でのコマンド/応答対の多重交換のために複数の論理流れの伝送のためにプロトコルの実行を許す、本発明の主題であるそのプロトコルの重要なステップの実装を例示するフローチャートである。
【図1b】 複数のベース論理流れの存在の下でマスタ送信機/受信機とスレーブ送信機/受信機との間で、単一の物理交換チャネル上でのコマンド/応答対の多重交換のために複数の論理流れの伝送のためにプロトコルの実行を許す、本発明の主題であるそのプロトコルの重要なステップの実装を例示するフローチャートである。
【図2a】 基準論理流れとして場合に応じてとることができるベース論理流れ上での交換の実装の態様を例示する図である。
【図2b】 スレーブ送信機/受信機のイニシアティブでコンカレント論理流れによる交換を引き続くパケットに切断分割する手順を例示する図である。
【図2c】 マスタ送信機/受信機とスレーブ送信機/受信機との間の2つの異なるコンカレント論理流れによる2つの交換の引き続くパケットの絡み合わせ(entrelacement)を例示する図であり、引き続くパケットへの各コンカレント流れ切断分割は、スレーブ送信機/受信機のイニシアティブによって図2bの場合と同様にして行われる。
【図2d】 コンカレント論理流れによる他の交換の長い処理のための手続中にコンカレント論理流れによる交換を処理する手順を例示する図である。
【図3a】 本発明の主題である、マスタ送信機/受信機とスレーブ送信機/受信機との間で単一の物理交換チャネル上でコマンド/応答対の多重交換のために複数の論理流れの伝送のためのプロトコルを実装している組込みコンピュータ装置にインストールされているアプレットの実行を検査および監視するコンピュータシステムの機能図であって、マスタ送信機/受信機要素はパイロットモジュールとCAD端末により構成され、スレーブ送信機/受信機要素はチップカードなどのこの組込みコンピュータシステムにより構成され、単一の物理交換チャネルはISO 7816プロトコルの1つを満たす接続により構成されている。
【図3b】 非限定的な例において、実行オートマトンは、アプリケーションインタフェース(API)のライブラリが組合わされている仮想マシンにより構成されているときに、組込みコンピュータ装置にインストールされている実行オートマトンの実行を検査および監視するための特定のエージェントモジュールと、この組込みコンピュータ装置のオペレーティングシステムと、入力/出力機能(APDUにより構成されているI/O機能)と、実行オートマトンの実行を検査および監視する機能との間の論理接続の例示する図である。
【図4a】 図3aと図3bとに非デバッグモード、すなわちデバッグ機能が起動されていない、で示されているように、本発明の主題である、アプレットを検査および監視するコンピュータ装置の種々の要素の間で実行される交換のタイムチャートであり、この装置は、この場合には、実質的に、先行技術のマルチアプリケーションチップカードが組合わされているCAD読取器として挙動する。
【図4b】 図3aと図3bとにデバッグモード、すなわちデバッグ機能が起動されている、で示されているように、本発明の主題である、アプレットを検査および監視するコンピュータ装置の種々の要素の間で実行される交換のタイムチャートである。
【図4c】 仮想マシンが、“ブレークポイントヒット”としても知られている停止点状態に達した時に、図3a、図3bおよび図4aにで示されているように、本発明の主題である、アプレットを検査および監視するコンピュータ装置の種々の要素の間で実行される交換のタイムチャートである。

Claims (4)

  1. 少なくとも1つのメモリとアプレットを実行する実行オートマトンオペレーティングシステムとが装備されている第1のコンピュータ装置(1)にインストールされている前記アプレットであって、それらのアプレットの少なくとも1つは、前記第1のコンピュータ装置(1)に対しコマンド/応答タイプの単一の物理交換接続(L 13 )により接続され別のオペレーティングシステムが装備されているコンピュータによって実行される少なくとも1つのアプリケーション(2)と特定の情報を交換することを意図されているような、前記アプレットの実行を検査し監視する装置において、
    前記別のオペレーティングシステムが装備されているコンピュータ内にあって、前記アプリケーション(2)に通信可能にされ、前記単一の物理交換接続(L13)により前記実行オートマトンに通信可能にされている、実行を検査および監視するパイロット手段(3)と、
    前記別のオペレーティングシステムが装備されているコンピュータ内にあって、前記パイロット手段と通信可能にされ、前記第1のコンピュータ装置の前記実行オートマトンの実行を監視することを意図されている、実行を検査および監視する手段(4)と、
    前記第1のコンピュータ装置(1)にインストールされ、前記実行オートマトンの実行を検査および監視するエージェントモジュール(5)と、
    を少なくとも備え、
    前記パイロット手段(3)は、前記単一の物理交換接続上での、特定のコマンド/応答対すなわちDPDUメッセージによるエージェントモジュールの監視の制御および管理の制御を各入力/出力遷移で行い、前記エージェントモジュール(5)は、アプリケーションとアプレットとの間のコマンドまたは応答のタイプのパケットを有するDPDUメッセージの交換を促進し、
    前記パイロット手段(3)は、実行を検査および監視する手段(4)からの要求で、入力/出力交換中である場合か指定された時間に対してこの実行オートマトンが入力/出力遷移を実行しない場合に制御を再び獲得して前記実行オートマトンの実行を一時停止し、
    の実行の一時停止に引き続いて、前記パイロット手段(3)は、実行オートマトンの状態をアクセスし、その後で特定のコマンドによるこの実行オートマトンの実行の継続を促進するように、特定のコマンド/応答対すなわちDPDUメッセージを前記エージェントモジュール(5)に送ることを特徴とする、アプレットの実行を検査し監視する装置。
  2. 前記第1のコンピュータ装置(1)はマイクロプロセッサカードにより構成されている組込みシステムであり、前記別のオペレーティングシステムが装備されているコンピュータはマイクロプロセッサカード読取器を有し、前単一の物理交換接続がISO 7816接続であることを特徴とする、請求項1に記載の装置。
  3. 前記実行を検査および監視する手段(4)は、JDWPプロトコルにより前記パイロット手段(3)に通信することにより、このプロトコルに適合されている任意の検査および監視ツールを使用することを可能にすることを特徴とする、請求項1または2に記載の装置。
  4. 前記実行オートマトンが仮想マシンおよびアプリケーションインタフェース(API)のライブラリを備えることを特徴とする、請求項またはに記載の装置。
JP2002536746A 2000-10-20 2001-10-17 マスタとスレーブとの間の単一の物理交換チャネル上でのコマンド/応答対の多重交換のための複数の論理流れの伝送用プロトコル、およびアプレットの実行を検査し監視するための対応する装置 Expired - Fee Related JP4463471B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0013476A FR2815801B1 (fr) 2000-10-20 2000-10-20 Protocole de transmission d'une pluralite de flux logiques d'echange multiple de couples de commande/reponse sur un canal physique unique d'echange entre maitre et esclave et systeme de suivi et de controle d'execution d'appliquettes
PCT/FR2001/003207 WO2002033866A2 (fr) 2000-10-20 2001-10-17 Protocole de transmission d'une pluralite de flux logiques d'echange multiple de couples de commande/reponse sur un canal physique unique d'echange entre maitre et esclave et systeme de suivi et de controle d'execution d'appliquettes correspondant

Publications (3)

Publication Number Publication Date
JP2004512593A JP2004512593A (ja) 2004-04-22
JP2004512593A5 JP2004512593A5 (ja) 2007-08-30
JP4463471B2 true JP4463471B2 (ja) 2010-05-19

Family

ID=8855572

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002536746A Expired - Fee Related JP4463471B2 (ja) 2000-10-20 2001-10-17 マスタとスレーブとの間の単一の物理交換チャネル上でのコマンド/応答対の多重交換のための複数の論理流れの伝送用プロトコル、およびアプレットの実行を検査し監視するための対応する装置

Country Status (9)

Country Link
US (1) US6901459B2 (ja)
EP (1) EP1356656B1 (ja)
JP (1) JP4463471B2 (ja)
CN (1) CN100518193C (ja)
AT (1) ATE463920T1 (ja)
AU (1) AU2002214082A1 (ja)
DE (1) DE60141770D1 (ja)
FR (1) FR2815801B1 (ja)
WO (1) WO2002033866A2 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7043493B2 (en) 2001-09-17 2006-05-09 Fujitsu Limited Hierarchical file system and anti-tearing algorithm for a limited-resource computer such as a smart card
DE102004015535B4 (de) * 2004-03-30 2009-01-29 Infineon Technologies Ag Datenübertragungsschnittstelle und Verfahren
KR100559251B1 (ko) * 2004-05-12 2006-03-15 한국생산기술연구원 개방형 인터넷망 기반의 로봇 개발을 위한 분산소프트웨어 통합서비스방법
US8352917B2 (en) * 2006-06-26 2013-01-08 Adobe Systems Incorporated Web-beacon plug-ins and their certification
US7992135B1 (en) * 2006-06-26 2011-08-02 Adobe Systems Incorporated Certification of server-side partner plug-ins for analytics and privacy protection
CA2658419C (en) 2006-07-19 2013-05-21 Research In Motion Limited Method, system and smart card reader for management of access to a smart card
US7766243B2 (en) 2006-07-19 2010-08-03 Research In Motion Limited Method, system and smart card reader for management of access to a smart card
EP1895743A1 (en) * 2006-08-31 2008-03-05 Incard SA A method for implementing a wireless personal communication protocol for an IC Card
US8321481B2 (en) 2010-05-13 2012-11-27 Assa Abloy Ab Method for incremental anti-tear garbage collection
US9572132B2 (en) 2012-04-13 2017-02-14 Samsung Electronics Co., Ltd. Method and apparatus for communicating data packets in a cloud cell
EP3814997B1 (en) * 2018-06-29 2024-01-10 Visa International Service Association Chip card socket communication

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2184066T3 (es) * 1996-10-25 2003-04-01 Schlumberger Systems & Service Uso de un lenguaje de programacion de alto nivel con microcontrolador.
US6736325B1 (en) * 1998-01-22 2004-05-18 Mondex International Limited Codelets
PL193009B1 (pl) * 1998-03-23 2007-01-31 Ibm Sposób wprowadzania nowego kodu do systemu przetwarzania Java z modyfikowaną pulą stałą
US6591229B1 (en) 1998-10-09 2003-07-08 Schlumberger Industries, Sa Metrology device with programmable smart card
FR2791159B1 (fr) * 1999-03-15 2001-05-04 Bull Cp8 Procede d'acces a un objet a l'aide d'un navigateur de type "web" cooperant avec une carte a puce et architecture pour la mise en oeuvre du procede
US6684389B1 (en) * 1999-08-05 2004-01-27 Canon Kabushiki Kaisha Compiler that decrypts encrypted source code
US6748592B1 (en) * 2000-02-14 2004-06-08 Xoucin, Inc. Method and apparatus for protectively operating a data/information processing device
DE60210416T2 (de) * 2002-02-28 2006-09-07 Matsushita Electric Industrial Co., Ltd., Kadoma Speicherkarte

Also Published As

Publication number Publication date
CN1529972A (zh) 2004-09-15
WO2002033866A2 (fr) 2002-04-25
FR2815801A1 (fr) 2002-04-26
FR2815801B1 (fr) 2004-10-29
EP1356656B1 (fr) 2010-04-07
WO2002033866A3 (fr) 2003-09-04
CN100518193C (zh) 2009-07-22
AU2002214082A1 (en) 2002-04-29
US20040054817A1 (en) 2004-03-18
ATE463920T1 (de) 2010-04-15
US6901459B2 (en) 2005-05-31
DE60141770D1 (de) 2010-05-20
JP2004512593A (ja) 2004-04-22
EP1356656A2 (fr) 2003-10-29

Similar Documents

Publication Publication Date Title
US6769622B1 (en) System and method for simulating universal serial bus smart card device connected to USB host
US4855905A (en) Multiprotocol I/O communications controller unit including emulated I/O controllers and tables translation of common commands and device addresses
US8706839B2 (en) Virtual serial port and protocol for use in serial-over-LAN communication
CN101484873B (zh) 接口的同时运行
JP4463471B2 (ja) マスタとスレーブとの間の単一の物理交換チャネル上でのコマンド/応答対の多重交換のための複数の論理流れの伝送用プロトコル、およびアプレットの実行を検査し監視するための対応する装置
EP1002291B1 (en) Smart card control of terminal and network resources
RU2200973C2 (ru) Способ передачи команд управления модулем подлинности абонента (sim-картой) из внешнего устройства в sim-карту
US6676022B1 (en) Smart card system with command queuing
CN113806116A (zh) 基于Linux***的协议栈数据传输方法、计算机设备和存储介质
CN101199168A (zh) 监控通信链路的队列
JPH11505947A (ja) スマートicカードシステム
JP3764679B2 (ja) スマートカードタイプエンティティおよび通信レベルにおいてその時間管理を行う方法
US7039718B2 (en) Multiprocess computer system
US6082615A (en) Reader for smart IC card
JP4293729B2 (ja) チップカード読取り装置遠距離通信端末
KR100339928B1 (ko) 비지속성 메모리 내의 객체 생성 방법 및 장치
CN1950810B (zh) 用于主机子卡接口的后向兼容并行ddr总线
KR100669949B1 (ko) 전용 sms 발송 시스템 및 전용 sms 발송 방법
WO2008104601A2 (en) Method of managing command execution in an electronic token
JP3644158B2 (ja) 並列計算機におけるデータ送受信方法
JP2568374B2 (ja) ネットワーキングコード用シミュレーション装置
JP2004094800A (ja) プログラムシミュレーション装置およびプログラムシミュレーション方法
CN114328317A (zh) 一种提升存储***通信性能的方法、装置及介质
JPH10207814A (ja) コンピュータ・システム及びバス操作方法
KR100441742B1 (ko) 정보교환 버스를 이용한 프로세스간 통신 데이터 제어방법및 그 시스템

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040930

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040930

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20061130

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061213

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20070313

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20070330

A524 Written submission of copy of amendment under article 19 pct

Free format text: JAPANESE INTERMEDIATE CODE: A524

Effective date: 20070613

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090401

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090701

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091021

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091218

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: 20100120

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100217

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

Free format text: PAYMENT UNTIL: 20130226

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20140226

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees