JP4898056B2 - スマートカードとホストステーションとの間の通信の方法 - Google Patents

スマートカードとホストステーションとの間の通信の方法 Download PDF

Info

Publication number
JP4898056B2
JP4898056B2 JP2001567205A JP2001567205A JP4898056B2 JP 4898056 B2 JP4898056 B2 JP 4898056B2 JP 2001567205 A JP2001567205 A JP 2001567205A JP 2001567205 A JP2001567205 A JP 2001567205A JP 4898056 B2 JP4898056 B2 JP 4898056B2
Authority
JP
Japan
Prior art keywords
card
request
portable article
microcontroller
command
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 - Lifetime
Application number
JP2001567205A
Other languages
English (en)
Other versions
JP2003526863A (ja
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 JP2003526863A publication Critical patent/JP2003526863A/ja
Application granted granted Critical
Publication of JP4898056B2 publication Critical patent/JP4898056B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/067Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components
    • G06K19/07Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips
    • G06K19/077Constructional details, e.g. mounting of circuits in the carrier
    • G06K19/0772Physical layout of the record carrier
    • G06K19/07733Physical layout of the record carrier the record carrier containing at least one further contact interface not conform ISO-7816
    • 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
    • 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/0013Methods or arrangements for sensing record carriers, e.g. for reading patterns by galvanic contacts, e.g. card connectors for ISO-7816 compliant smart cards or memory cards, e.g. SD card readers
    • G06K7/0021Methods or arrangements for sensing record carriers, e.g. for reading patterns by galvanic contacts, e.g. card connectors for ISO-7816 compliant smart cards or memory cards, e.g. SD card readers for reading/sensing record carriers having surface contacts

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Information Transfer Systems (AREA)
  • Storage Device Security (AREA)
  • Communication Control (AREA)
  • Computer And Data Communications (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、マイクロコントローラを有するカード状の携帯物品に関する。さらに本発明は、このようなカード状携帯物品を受け入れるスロットを有するコネクタに関する。
【0002】
【発明の背景】
スマートカードは、ISO規格7816において定義されている標準化された携帯物品であり、これはとりわけ、秘密情報の安全な管理や身元確認に利用することができる。これらのカードは一般に、外界との通信に、上述の規格の第三部及び第四部で定義された通信プロトコールを利用している。特に、これらには、T=0として当業者によく知られている、定義されたフォーマットのコマンドすなわちアプリケーション・プロトコール・データ・ユニット(APDU)コマンドを実現するプロトコールが含まれている。
【0003】
ユニバーサル・シリアル・バス(USB)規格には、ユニバーサル・シリアル・バス・システムが記述されており、これは、ホスト・ステーションすなわちパーソナル・コンピュータから構成されるワークステーションと、任意の周辺デバイスたとえばプリンタ、キーボードなどとの間でのデータ交換が単純かつ高速な方法で管理されることを可能とすべく開発された。このシステムを使うと種々の利点がある。第一に、これは周辺デバイスへ電力を供給する二つの導線VBUS及びGNDと、データ信号の差動転送(differential transmission)のための二つの導線D+及びD−を必要とする。第二に、パーソナル・コンピュータにインストールされている従来からのシリアル・リンクによって提案されているものよりも一般に高い速度でのデータ転送を可能とする。この速度は最高で毎秒12メガビット(Mb/s)、低速で1.5Mb/sである。さらに、周辺機器の「プラグ・アンド・プレー」、すわなち動作中の周辺機器を認識するホストコンピュータとも互換性がある。このような認識によって、ホストコンピュータの大容量メモリ内にある周辺機器のドライバ・プログラムは、前記周辺機器が接続されたときのみ前記コンピュータのリード/ライト・メモリにロードされる。このドライバ・プログラムは、周辺機器が取り外されたときは、前記リード/ライト・メモリから消去される。加えてユニバーサル・シリアル・バスは、単一の物理USBポートに126台までの周辺機器をカスケード接続することができる。最後に、USBの周辺機器は、コンピュータのコンポーネントによって管理されているハードウェアの割り込み要求(IRQ)を独占しない。
【0004】
今日、ホスト・ステーションへのアクセス、同様に前記ステーションと関連するサーバーへのアクセスを安全に行うことの必要性がますます重要になっている。このようなステーションの制御のもとでデータの転送、特に、データを保証し署名することを可能にする暗号化アルゴリズムによってデータが認証されるようにするのが望ましいeメール専用又はインターネットの閲覧専用の前記ステーションのアプリケーション・ソフトウェアからの転送を、安全に行うことの必要性についてもますます重要になっている。
【0005】
上で述べた最新技術が与えられたとすれば、ISO規格7816の第3部及び第4部に規定されたプロトコールを用いて動作するスマートカードを、ホストコンピュータのUSBポートへ接続された、USB/ISOプロトコール変換を実現するスマートカード・リーダとともに利用することによって、前述の安全性のニーズを満たすことができる。このようなリーダは、まずUSBシステムを用いてホスト・コンピュータと通信し、続いてISOシステムを用いてカードと通信する。
【0006】
残念ながら、このようなリーダは非常に高価である。これらは、カードのクロック(CLK)コンタクトエリアを通してカードのマイクロコントローラ内の中央処理装置(CPU)を動作させるクロックを生成する手段を有する必要がある。これらはまた、リセット信号を生成する手段、およびリセット(RST)エリアとして知られる特定のコンタクトエリアを通してこの信号をカードへ転送する手段を有する必要がある。
【0007】
さらに、カードが純粋なISOカードの場合は、このようなカードと通信するためのプロシージャには前述のUSBシステムの利点、特に、数少ない導線及び高速なデータ速度等に関連する利点はない。
【0008】
【発明の概要】
コストを削減することが、本発明の一つの目的である。
【0009】
第一の特徴として、本発明は、ホスト・ステーションと、スマートカードなどのようなマイクロコントローラを有する携帯物品との間の通信の方法を提供し、前記携帯物品はバス・システムによって前記ホスト・ステーションと接続され、当該方法は、ホスト・ステーションがマイクロコントローラを有する携帯物品へ特定のリクエストを伝達するステップを含んでいることを特徴とする。
【0010】
バス・システムは、ユニバーサル・シリアル・バス(USB)システムとし、前記特定のリクエストは、前記システムのコントロール・トランスファー・モードを用いてマイクロコントローラを有する携帯物品へ伝達され、特定のリクエストは、マイクロコントローラを有する携帯物品のためのリーダの機能を与える特定のリクエストであり、マイクロコントローラは中央処理装置を揮発性メモリと連携させるアセンブリを含んでおり、そして、特定のリクエストは、前記アセンブリの揮発性メモリをリセットする動作をトリガーするDoReset()リクエストであり、特定のリクエストは、携帯物品をリセットする際にアンサー列(answer string)が回復されるようにするGetATR()リクエストであり、特定のリクエストは、ホスト・ステーションがコマンド・ヘッダを携帯物品に送ることができるようにするSendAPDU()リクエストであり、特定のリクエストは、ホスト・ステーションが携帯物品によって送られたデータを回復できるようにすると共にステータス・ワードを回復できるようにするGetData()リクエストであり、特定のリクエストは、ホスト・ステーションが携帯物品にデータを転送できるようにするSendData()リクエストであり、特定のリクエストは、ホスト・ステーションが携帯物品における動作の低消費電力モードをトリガーするのを防ぐ役割を果たすIsReady()リクエストであり、携帯物品は前記ステーションが前記携帯物品における低消費電力モードをトリガーできるようにするリクエストに応答してOS-STATUSアンサーをホスト・ステーションへ送り、前記応答は携帯物品の現在のステータスを定義するような方法でエンコードされ、携帯物品の現在のステータスはミュート・ステータス又はカードが現在処理中であるというステータスであり、マイクロコントローラを有する携帯物品はマイクロコントローラ・カードであり、そして、カードのマイクロコントローラはISO7816規格において定義されているようなAPDUコマンドを実現するプロトコールによって通信するのに適合したオペレーティング・システムを搭載した不揮発性メモリを含むようにするのが有利である。
【0011】
第二の特徴として、スマートカードのようなマイクロコントローラを有する携帯物品を提供することによってこの問題を解決する。この物品はパーソナル・コンピュータなどのホスト・ステーションとの間で、前記携帯物品とホスト・ステーションの両方に接続されたバスによって通信するように適合されており、この物品はホスト・ステーションと直接通信できるように適合されているという特徴を有している。
【0012】
携帯物品はスマートカードから構成され、バス・システムはUSBバス・システムであり、携帯物品は、中央処理装置を、ISO7816規格において定義されているようなAPDUコマンドを管理するのに適合したオペレーティング・システムが搭載された不揮発性メモリと連携させる構成を含むようにするのが有利である。
【0013】
この発明は、以下の非限定的な説明を精読することによってより良く理解されるだろう。この説明は図面を参照しながら読むべきある。
【0014】
【詳細な説明】
本発明は、特に、商標として保護されているウィンドウズ2000としてマイクロソフトから頒布されているオペレーティング・システムが搭載されたホスト・ステーションなどのホスト・ステーションの安全を確保するという場合に適用できる。このオペレーティング・システム及びこのオペレーティング・システムと共に動作する一定のソフトウェア・アプリケーションは、データ転送の安全を特に確保すること、例えばeメールに署名すること、及びオーセンティケーション・アルゴリズムや否認防止(non-repudiation)アルゴリズムなどによってコンピュータ・ネットワークへのアクセスの安全を確保することを意図したカードを使用できるようになっている。本発明は、一般に、ISO規格7816の第3部及び第4部に適合するオペレーティング・システムを有する任意のカードについて実施することができる。
【0015】
図1は、統合ハブ2を有するホスト・ステーション1を示しており、このハブ2には、1998年9月23日に公表されたUSB規格バージョン1.1で定義された特定のポート21、22、23が設けられている。USBポートは本発明に従ってマイクロコントローラを有する物品3に接続することができる。この接続は、ポート21、22に接続されている物品のように直接でも、ポート23に接続されている物品のように別のハブ4を介して間接的であってもよい。
【0016】
図2に示すように、ホスト・ステーションは、例えばパーソナル・コンピュータ1からなるワークステーションであり、マイクロコントローラを有する携帯物品は、スマートカード3である。スマートカード3はコネクタ5に接続されている。これはリーダではなく、ここにリーダがカードのリード及び/又はライトを行うための手段、及び/又はこのようなリード/ライトをイネーブルとする手段を有することになるだろう。
【0017】
従来からと同様、コンピュータ1はモニタ12及びキーボードと接続された中央装置11を有している。中央装置11はマザーボードを搭載している。マザーボードには特に、マイクロプロセッサ及び複数の揮発性メモリ片が含まれている。これはコンピュータの大容量メモリとなるハードディスクと、コンピュータ内に一体化されたハブに含まれる少なくとも一つのUSBポートに接続されている。
【0018】
ここで図6を参照すると、ホスト・コンピュータ1には、最低一つのソフトウェア・アプリケーション13を含み、スマートカード3を利用していることが分かる。またこれは、アプリケーションが使うインターフェースを管理するソフトウェア部PC/SC14を有している。またこれは、二つのメインの論理部分(図6には不図示)からなる中間的なソフトウェア・ドライバー15を有している。この第一の部分は、起動時にホスト・コンピュータのリード/ライト・メモリにロードされ、PC/SCソフトウェア部14とのインターフェースを与え、ホスト・コンピュータに接続された本発明の一又は二以上のスマートカードのためのリーダの存在をシミュレートする。これは仮想リーダである。第二の部分はホスト・コンピュータの大容量メモリに格納されており、カードが実際にホスト・コンピュータに接続されたときにそのリード/ライト・メモリにロードされ、アドレスされ、コンフィギュアされる。この第二の部分は、PC/SC部からあるいはカードから、それぞれの行く先へ情報を伝達する役割を果たし、データ変換を実行する。これはまたホスト16のコントローラ部を含み、これはUSBバスへのデータの配分を管理する役割を果たす。最後に、これはまた、ホストと外界との間のインターフェースとなるハードウェア部17を含む。
【0019】
図2に示したカード3は、例えば標準的なISOフォーマットのカード、又は前記ISO規格7816又は ETSI GSM規格11.11に記述されているような「プラグイン」フォーマットのカードである。このようなカードを図3に詳しく示してある。これは、中に挿入された電子モジュールを有するプラスチックのカード本体31からなり、この電子モジュールには接続ワイヤを介してカード本体の表面と同一面とされたコンタクト・エリア32に接続されたマイクロコントローラを含んでいる。
【0020】
図4は、カード3のコンタクト領域32を示している。一例として、ここでは8個のコンタクト領域が設けられている。これらの領域はC1、C2、C3、C4、C5、C6、C7、C8と符号付けされている。領域C1及びC5はそれぞれ、カードのマイクロコントローラのVCCパッド及びGNDパッドに接続されており、マイクロコントローラに電力を供給する。領域C4及びC8はそれぞれ前記マイクロコントローラのD+及びD−に接続されている。これらのパッドはUSBバス・システムを用いたデータの転送のための差動ペア(differential pair)となる。他の領域はISO規格を用いるデータの転送のために使われ、前述のUSBバス・システムでは利用されない。
【0021】
カード3のマイクロコントローラ33を、図5にブロック図として描いてある。これは、中央処理装置CPUを揮発性のリード/ライト・メモリRAM及び不揮発性のROM及びEEPROMメモリと結合したアセンブリ331を含んでいる。ここでROMには、カードのオペレーティング・システムが搭載されている。また、ISOシステムを利用するインターフェース332、一方で転送システム334、他方でレジスタ335と連携するUSBエンジン333、そして外部ブロック・インターフェース(EBI)336を有している。この転送システムは、カードの少なくともD+領域及びD−領域に接続されている。また、電力供給の目的でVCC及びGNDにも接続されている。カードのオペレーティング・システム337、EBI336、そしてUSBエンジン333は、図6にブロック図として示してある。
【0022】
図3から分かるように、カードは使用時にはカード・コネクタ5に挿入される。本発明においてコネクタ5は小さく、USBコネクタ51及びカード3用のコネクタ52を有するだけである。
【0023】
USB規格では、データは、高速度で12Mb/sであり、低速度で1.5Mb/sという二つの速度で転送される。本発明では、データは低速度で転送される。したがって、USBバスのデータ線に基づいて内部クロック信号を生成することが可能である。その結果、コネクタ5はカード3へクロック信号を供給するための手段は持っていない。
【0024】
USB規格には、四つのデータ転送モードが設けられている。バルク(bulk)転送モード及びアイソクロナス(isochronous)転送モードは、高速度通信の実現のためだけに意図されたものである。コントロール転送モード及びインターラプト転送モードは、低速度通信及び高速度通信の両方を実現することを意図したものである。
【0025】
本発明では、カードは、コントロール転送モードで直接ホスト・コンピュータと通信するUSB周辺機器である。このためカードは、USBバス上を低速度USB信号の形態でそのカードにアドレスされるデータを解釈し、処理することができる。これはまた、コントロール転送モード特有のUSBリクエスト、そして特にホスト・コンピュータにカードのデスクリプタ(descriptor)を復元することを可能として、ホスト・コンピュータにアドレスを与えこれをコンフィギュアする、従来からのリクエストを処理することを可能とするプログラムも有している。USB規格では、コントロール転送モードが、すべてのUSB周辺機器について要求されるが、これは、それらのデスクリプタを復元するため、それらに対してアドレスを割り当てるため、そしてそれらをコンフィギュアするためである。USB規格は、前述のタイプのコントロールステップの間以外は、データ転送をハンドリングするためにコントロール転送モードを用いることを提案していない。
【0026】
周辺機器を認識し、アドレスし、そしてコンフィギュアすることを可能とする従来からのUSBリクエストに加えて、6つのベンダー特有の(vendor-specific)リクエストが定義されている。カードは、これらのベンダー特有のリクエストを認識し、そして処理するための手段を有している。これらのベンダー特有のリクエストは、アクティブ・スマートカード・リーダと協働して、USBプロトコール及び関連するデータバスを用い、かつ当該リーダによって構成される追加のインターフェースを用いずに、ISO7816-3又はISO7816-4のカードの動作を再生(reproduce)することを可能にする。これらのリクエストは、特に、APDUコマンドが処理されることを保証し、ホスト・コンピュータとの通信インターフェースを再初期化せずにカードのマイクロコントローラを初期化又は再初期化する役割を果たす。
【0027】
カードは、第一に、ベンダー特有のリクエストを送信することを担うホスト・コンピュータにインストールされたドライバーによって、第二に、これらのリクエストの認識及び処理を担うカードのマイクロコントローラ及びそのオペレーティング・システムに含まれているUSBエンジンによってコントロールされる。
【0028】
最後に、カードは、あたかもスマートカード・リーダに接続されているかのように動作するが、USBプロトコールを使っているときは、これはインターフェースの変更、すなわちISOスマートカード・リーダからUSBコネクタへの変更は、ホスト・コンピュータのアプリケーション・レベルには見えない。
【0029】
本発明のベンダー特有のリクエストは、下記の表に定義されている。
【0030】
【表1】
Figure 0004898056
【0031】
この表において、
−bmRequestという列の値は、リクエストの特性を示す。bmRequestの値が40hであれば、そのリクエストは、そのデータ・フェーズがホストからカードへ転送されるベンダー特有のリクエストである。bmRequestの値がC0hであれば、そのリスクエストは、そのデータ・フェーズがカードからホストへ転送されるベンダー特有のリクエストである。
−bRequestという列の値は、最小桁ビット(least significant bit)がビット0の場合にビット4及びビット5の各場合に1ビットだけテストして、USBエンジンにリクエストDoReset()及びIsReady()を特定することを可能とする。
−wValueという列の値は、リクエストについて固有である。
−wIndexという列の値も同様である。
−wLengthという列の値は、リクエストのデータ・フェーズにおけるバイト数を指定する。
−表の最後の列のModeは、USBデータの伝送方向に対応する。OUTは、データ・フェーズの間に、データがホスト・コンピュータからカードへ向かって進行し、INは、データがカードからホスト・コンピュータに向かって進行することを意味する。
【0032】
最初に、二つのリクエストがカードのリセット・シーケンスに用いられる。これらのリクエストとは、DoReset()及びGetATR()である。
【0033】
リクエストDoReset()は、ホスト・コンピュータとの通信インターフェースをリセットすせずに、マイクロコントローラ及びリード/ライト・メモリRAMをリセットさせる。これはもっぱらマイクロコントローラに含まれるUSBエンジン333によって処理され、カードのオペレーティング・システムの関与は必要としない。ベンダー特有のリクエストであるDoReset()の自動処理は、スマートカード自身がリセット信号を生成することを可能とし、そしてベンダー特有のリクエストGetATR()と共同でISOモードにおけるリセット信号の通常動作の維持を可能とする。
【0034】
リクエストGetATR()は、カードのリセットに対するアンサー・ストリングを回復させる(ここでATRは「リセットへのアンサー」を表す)。このアンサーは、ISO規格7816-3において定義されている。これはカードを特定する。
【0035】
ほとんどの周辺機器に、異常動作の際に使われるリセットが設けられていることが分かるだろう。USBプロトコールは、周辺機器を完全に初期化させるUSBウォーム・リセットを送る可能性をホスト・コンピュータに与えることによって、このような状況に備えている。それにも拘わらず、スマートカードの使用に頼っているアプリケーションは、前記カードのマイクロコントローラによって管理されるリード/ライト・メモリだけを再初期化する目的でスマートカード・リセットを用いることができる。このような状況のもとでは、ホスト・コンピュータとの通信インターフェースをリセットする必要性はなく、これは時間の無駄となる。したがって、USBウォーム・リセット信号を用いることを正当化する理由はない。さらに、このリセット信号は、完全に非同期でなければならない。これは、任意のコマンドが処理される場合、カード又は処理されるコマンドの状態に拘わらず考慮されるうることを意味する。これが、従来技術において現在利用可能な解決策においてスマートカード・リーダを用いる一つの理由である。この場合、マイクロコントローラのリセット・コンタクト・パッドに接続されたコンタクト領域によってマイクロコントローラ及びそれに関連するメモリをリセットさせるのはこのリーダである。
【0036】
その後、APDUコマンドを処理するのに四つのリクエストが用いられる。このうちの三つはSendAPDU()と、GetData()と、SendData()である。
【0037】
SendAPDU()リクエストは、ISOのAPDUコマンドのヘッダをカードへ送る役割を果たす。すなわち、CLAss、INStruction、パラメータP2、パラメータP3の部分である。
【0038】
リクエストGetDATA()は、タイプ2のISOコマンドの状況でカードによって送られるデータを復元することと、ISO規格7816によって定義されているステータス・ワードを復元するという役割を果たし、これはコマンドの実行が終了したときに前に送られたコマンドの結果を外界へ通知する。
【0039】
リクエストSendData()は、は、タイプ3のISOコマンドの状況で、コマンドのヘッダ・パラメータに加えてデータを送る役割を果たす。
【0040】
最後に、四つ目のリクエストは、低消費電力モードをトリガーするのを防ぐのと、APDUコマンドの順序付け(sequencing)を処理するのに用いられるリクエストで、これはリクエストIsReady()である。ベンダー特有のリクエストであるIsReady()の半自動処理は、APDUのISOコマンドを実行する際に、低消費電力へ切り換わるのを防止する役割をする。カードがAPDUのISOコマンドを処理するのに必要な時間を予測することはできない。残念ながら、USBプロトコールはバスがある長さの時間使われていないときに、低消費電力モードとなり、これは、APDUのISOコマンドの処理に要する時間が長すぎるときに生じうる。このためこのリクエストは、APDUのISOコマンドを処理しているあいだ低消費電力モードとなることを防ぐ。もっとも別の場合にはこのような切り換えは可能である。より正確には、カードのオペレーティング・システムの状態又は、コマンドが実際に処理されている場合には処理されるコマンドの状態を復元することを可能とする。これは、カードがAPDUのISOコマンドを処理しているときに、例えば5ミリ秒(ms)に一回という頻度で周期的にホスト・コンピュータに含まれているドライバー15によって送られる。これはマイクロコントローラに含まれているUSBエンジン333によって処理されうる。これは特にマイクロコントローラがビジー又はミュートの状態で応答できない場合に当てはまる。これはまた、特にカードが利用可能で、したがって応答可能の時には、カードのオペレーティング・システムによっても処理することができる。
【0041】
このベンダー特有のリクエストの組は、ISOモードにおける従来からのスマートカードの動作の実行及び標準的なUSB周辺機器の動作の実行に加えて、カードに関連するスマートカード・リーダの動作を再構成することを可能にする。
【0042】
さらに、IsReady()リクエストに対するOS_STATUS応答も定義されている。この応答は、最初の4ビットがカードの現在状態を定義し、最後の4ビットが前記状態を特定する1バイトでエンコードされている。
【0043】
したがって、ビット7が1のときは、カードはMUTEと表されるミュート状態にあることを意味する。ビット6が1のときは、カードのオペレーティング・システムが処理を行っており、したがってシステムを他の処理に利用できないことを意味する。ビット5が1のときは、前にカードが受け取ったコマンドの処理が終了し、オペレーティング・システムはステータス・ワードSW1、SW2を送る準備ができていることを意味する。このときカードはステータス・ワード・フェーズ(SWP)にあると言われる。ビット4が1のときは、カードのオペレーティング・システムが以前のコマンドに関連するデータの送信又は受信の準備ができていることを意味する。この場合カードはデータ転送フェーズ(DTP)状態にあると言われる。
【0044】
ビット3、2、1、0は、現在の状態についてのさらなる情報を与える。これらは、例えばコマンドが非常に長いときにタイム・アウト(time-out)の発生を避けるのに有用である。すなわちコマンドがある最大指定時間を超えたことで措置をとる。この場合、その値は周期的にインクリメントされる。したがってこれはその値がFhになった後は0hに戻り、これによりPCに入っているドライバーにある動作の検出を可能ならしめる。
【0045】
USBプロトコールによるISO規格7816の第3部及び第4部に定義されている通信プロトコールの純粋なカプセル化は、カードがホスト・コンピュータによってバス上で情報を転送するよう要求されたときのみUSBバス上で情報を伝送できるという事実及びいくつかの情報はAPDUコマンドを実行する状況において役に立たないという事実に関連して、時間のロスを生じるだろう。ベンダー特有のリクエストIsReady()を使用すると、カード・ドライバーに現在のカードの状態だけでなく、コマンドの現在の状態も知らせることによって、この時間の長さを短縮でき、これによりISO規格7816-3において定義されているプロシージャ・バイトのステップ(procedure byte step)を削除できる。
【0046】
ISO規格7816-3は、カードのオペレーティング・システムがATRストリングによって定義された時間内にデータを返さない場合には、タイム・アウトの管理を行う。この時間内に処理され得ないコマンドに対して、規格は、カードがまだ処理中であることを指定するための予備の値であるバイト60hを用いるようにされている。カードがこのバイトを送ると、タイム・アウトをトリガーするためのカウンタを再初期化する効果がある。このタイム・アウトの管理は、IsReady()リクエストへの応答として返された値によって再生される。
【0047】
図7は、本発明のスマートカードとの通信セッションがどのように行われるかを示している。この図の左側には、カードのUSBエンジンによって実行される処理を示しており、右側はカードのオペレーティング・システムによって実行される処理を示している。
【0048】
カードのオペレーティング・システムによって実行される処理には、特に以下の処理が含まれている。
【0049】
「カードの接続」は、ホスト・コンピュータのUSBポートへのカードの接続である。このときホスト・コンピュータには、カードが接続されたことと、新しいUSB周辺機器を構成することが知らされる。そしてコンピュータはカードに電力を供給してカードをリセットする。このリセットには、カードのRAM、EBI336、レジスタ335、そして転送システム334のリセット動作が含まれる。
【0050】
「カード部品のリスト及び初期化」 リスト動作は、カードを動作状態にすること、すなわちアドレスされ、コンフィギュアされることを可能とする。以前の処理によって一旦カードがリセットされると、カードはそれをホスト・コンピュータに知らせる。カードがデスクリプタの形態でホスト・コンピュータに種々の情報の断片を送るのはこのリスト段階の期間である。すると、ホスト・コンピュータはカードにアドレスを与え、それをコンフィギュアする。これでカードは使用準備ができた状態になる。
【0051】
「GetATR()受信」 前の「リスト及び初期化」のステップの後、カードはベンダー特有のリクエストであるGetATR()を待つ。これはこの段階で認められている唯一のベンダー特有のリクエストである。
【0052】
「カードがATRストリングを返す」 一旦ベンダー特有のリクエストであるGetATR()が受信されると、カードはATRストリングを返す。すなわち、ホスト・コンピュータのアプリケーション・レベルにおいて、カードに存在するISO規格7816と完全に互換性のあるResetがシミュレートされる。
【0053】
「OS_STATUS=00h」 カードのオペレーティング・システムはコンフィギュレーションを開始し、その中でそのステータスバイトを00hに設定することによってAPDUのISOコマンドの処理の準備ができる。
【0054】
「SendAPDU()受信」 カードのオペレーティング・システムはベンダー特有のUSBリクエストの形態でAPDUコマンドのヘッダを受け取る。
【0055】
「OS_STATUS=BUSY」 カードのオペレーティング・システムはそれ自身でAPDUコマンドのヘッダを処理する準備をする。これにより利用不可となる。外界に対して利用不可あることを知らせるために、そして実際にはホスト・コンピュータに知らせるために、前記オペレーティング・システムはそのステータス・バイトを「BUSY」に設定して更新する。この段階で、ホスト・コンピュータから来るリクエストはカードのUSBエンジンによって処理される。
【0056】
「コマンドの処理」 カードのオペレーティング・システムがAPDUコマンドのヘッダを処理する。
【0057】
この段階で、いくつかの状況が生じうる。
まず、このコマンドはISOのタイプ1のAPDUコマンド、すなわちすべてがそのヘッダによって表されるAPDUコマンドで、その実行によってカードはステータス・ワードを送る。そうでなければ誤ったタイプ2又はタイプ3のISOコマンドであり、タイプ2のISOコマンドはそのヘッダによって定義されるコマンドであって、その実行によってデータはステータス・ワードと共にカードから送られ、ISOのタイプ3コマンドはそのヘッダ及びデータによって定義されるコマンドであって、その実行によってカードはステータス・ワードを送る。この場合、以下のケースが実行される。
【0058】
「OS_STATUS=SWP」 カードのオペレーティング・システムはステータス・ワードを返す準備ができ、これはまたここへ送られたリクエストを処理するのに利用され、ホスト・コンピュータに知らせるためのIsReady()リクエストを待っている。このステータス・バイトは更新される。これは値「SWP」をとる。
【0059】
「IsReady()受信」 カードのオペレーティング・システムは続いてベンダー特有のリクエストIsReady()を受け取る。このリクエストの役割は、外界に対してカードのオペレーティング・システムの状態を知らせることであり、これには「MUTE」又は「BUSY」があり、そうでければAPDUのISOコマンドの状態は処理され、それは「SWP」又は「DTP」である。今の場合、このリクエストへの応答は「SWP」である。これはホスト・コンピュータに、ステータス・ワードを復元するためにGetData()コマンドを送らなければならないことを知らせる。
【0060】
「Return OS_STATUS」 カードのオペレーティング・システムはそのステータス・ワードをホスト・コンピュータに返し、ベンダー特有のリクエストGetData()を待つ。
【0061】
「GetData()受信」 ベンダー特有のリクエストが送られた後、この場合のステータス・ワードのようなカードのオペレーティング・システムによって返されたデータをコンピュータが復元できるようにする目的で、カードのオペレーティング・システムはGetData()を受信する。
【0062】
「Return status word」 GetData()リクエストに応答して、カードのオペレーティング・システムはステータス・ワードを返す。そしてコンフィギュレーションを開始し、新たなAPDU ISOコマンドを処理する準備ができ、そしてシステムは前述のステップ「OS_STATUS=00h」に戻る。
【0063】
タイプ2及びタイプ3のISO APDUコマンドには、ISO 2コマンドに対してはカードからホストへ、そしてISO 3コマンドに対してはホストからカードへというデータ・フェーズを有しているという特別の特徴がある。いずれの場合も、オペレーティング・システムはホスト・コンピュータに、データ・フェーズの準備ができたことを知らせなければならない。それから以下のステップが実行される。
【0064】
「OS_STATUS=DTP」 カードのオペレーティング・システムはAPDUのISOコマンドのデータ・フェーズの準備ができる。したがってこれは再び送られてきたリクエストを処理するのに利用可能であり、この利用可能性の状態を外界に対して知らせるために、IsReady()を受け取るのを待っている。ステータス・バイトは更新される。これは「DTP」という値を取る。
【0065】
「IsReady()受信」 カードのオペレーティング・システムは、ベンダー特有のリクエストIsReady()を受け取る。このリクエストの目的は、ホスト・コンピュータにカードのオペレーティング・システムのステータスを知らせることである。このステータスは「MUTE」又は「BUSY」のいずれかで、そうでなければ現在処理されているAPDUのISOコマンド「SWP」又は「DTP」である。今の場合、このリクエストに対する応答は「DTP」である。最初に、この応答はホスト・コンピュータにAPDUのISOコマンドへの応答を構成するデータを復元するためにGetData(P3)を送らなければならないことを知らせる。このデータはP3バイトからなる。ここでP3はAPDUのISOコマンドのパラメータの一つである。二つ目の場合として、この応答は、ホスト・コンピュータに、APDUのISOコマンドの追加データを送るためのSendData(P3)リクエストを送らなければならないことを知らせる。このデータはP3バイトからなり、ここでP3はAPDUのISOコマンドのパラメータの一つである。
【0066】
「OS_STATUSを返す」 カードのオペレーティング・システムは、そのステータス・バイトをホスト・コンピュータに返し、GetData(P3)リクエスト又はSendData(P3)リクエストのいずれかを待つ。
【0067】
ここで二つの状況が生じうる。
一つ目の状況は、コマンドのヘッダに関連する又はカードの現在の状況におけるエラーが検出されないという形式上の場合についてのISO2のAPDUコマンドの状況である。この場合、カードのオペレーティング・システムはGetData(P3)リクエストを待つ。
【0068】
「GetData()受信」 カードのオペレーティング・システムは、GetData()リクエストを受信している。このリクエストの機能は、オペレーティング・システムによって返されたデータ、例えば今の場合であればタイプ2のAPDUのISOコマンドへの応答を構成するデータを復元することである。
【0069】
「カードがデータを返す」 GetData()リクエストが受信されると、APDUのISOコマンドへの応答を構成するデータを返し、それ自身をステータス・ワードを返す準備ができているコンフィギュレーションの中に入れる。この場合、システムは前述のステップ「OS_STATUS=SWP」へ戻る。
【0070】
二つ目の状況は、コマンドのヘッダ又はカードの現在の状況においてエラーが検出されない形式上の場合におけるタイプ3のAPDUのISOコマンドの状況である。この場合、オペレーティング・システムはSendData(P3)リクエストを待つ。
【0071】
「SendData()受信」 カードのオペレーティング・システムはSendData()リクエストを受信している。このリクエストは、タイプ3のAPDUのISOコマンドを動作させるのに必要とされる、追加データの送信を可能とする。
【0072】
「カードがデータを復元」 リクエストが受信されると、カードはタイプ3のAPDUのISOコマンドの追加データを復元し、そのコマンドのデータの残りを処理することを可能とするコンフィギュレーションの中にそれ自身を入れる。
【0073】
「OS_STATUS=BUSY」 カードのオペレーティング・システムは処理中なので、送られるリクエストを処理することはできない。オペレーティング・システムはこのステータスを、ステータス・バイトを「BUSY」に設定することによって表す。この段階では、ホスト・コンピュータによって送られたリクエストを処理するのは、カードのUSBエンジンである。
【0074】
「コマンドの処理」 オペレーティング・システムはAPDUのISOコマンドの処理を終了し、ステータス・ワードを返す準備ができているコンフィギュレーションの中に自身を入れる。そして、前述の「OS_STATUS=SWP」に戻る。
【0075】
カードのオペレーティング・システムによって処理される最後の状況は、任意のAPDUのISOコマンドの実行中に生じる重大なエラー、例えばこの後の安全性への攻撃又はデータの改変などの状況である。このような状況下では、カードのオペレーティング・システムは、続く処理でミュートに設定される。
【0076】
「OS_STATUS=MUTE」 カードのオペレーティング・システムはそのステータス・バイトを「MUTE」に設定して、次のDoReset()リクエストまで、あるいはカードが外されるまでは利用不可であることをホスト・コンピュータに知らせる。このステージの間は、ホスト・コンピュータによって送られるリクエストを処理するのは、USBエンジンである。
【0077】
USBエンジンによって実行される処理には、特に以下の処理が含まれる。
オペレーティング・システム(OS)が利用不可の間、すなわちOS_STATUS=BUSY又はOS_STATUS=MUTEの間は、ホスト・コンピュータによって送られるリクエストはUSBエンジンによって処理される。さらに、リクエストDoReset()は、カードのオペレーティング・システムが自身のリセットの際に介入するのを防ぐために常にUSBエンジンによって処理される。
【0078】
三つの状況が生じうる。最初の状況(図7には示していない)は、USBエンジンによって処理されていると述べられていないすべてのリクエストに対応する。これらのリクエストに対しては、USBエンジンはホスト・コンピュータにこれらが関係ないことを知らせるだけである。
【0079】
二番目の状況はDoReset()リクエストの場合であり、以下のステップが実行される。
【0080】
「DoReset()」 カードのオペレーティング・システムの状況、あるいは現在処理されているAPDUのISOコマンドの状況がどうであろとう、このリクエストは常にUSBエンジンによって処理される。これは、カードのCPU及びこれに関連するメモリをリセットさせ、そして、コンフィギュレーション及び周辺機器及びアドレスによって形成されたUSB通信インターフェースは元のままなので、セントラル・ユニット及びこれに関連するメモリだけがリセットされる。
【0081】
「リセット・シーケンス」 カードのCPU及びそのメモリは再初期化される。カードのオペレーティング・システムはGetATR()リクエストを待つ。このリセット・シーケンスは、カードのオペレーティング・システムを、オペレーティング・システムに送られてきたリクエストを処理できる状態にする。
【0082】
三番目の状況は、カードのオペレーティング・システムが利用不可のときに生じるIsReady()リクエストの状況である。以下のステップが実行される。
【0083】
「IsReady()受信」 カードのオペレーティング・システムは、IsReady()リクエストを受信する。このリクエストの機能は、ホスト・コンピュータにカードのオペレーティング・システムの「MUTE」又は「BUSY」の状態を知らせること、あるいは処理されているAPDUのISOコマンドの「SWP」又は「DTP」の状態を知らせることである。カードのオペレーティング・システムは、「MUTE」又は「BUSY」であるために、利用不可である。他の状況については、カードのオペレーティング・システムによって処理される。
【0084】
「USBエンジンがOS_STATUSを返す」 USBエンジンは、ステータス・バイトを返すことによって、ホスト・コンピュータにカードのオペレーティング・システムのステータスを知らせる。
【0085】
この方法において、スマートカード・リーダに関連するISOカードの動作が再生される。
【0086】
ここまでは図7について説明したが、以下の記述は図8A、図8B、図9A〜図9D、図10A〜図10Dの説明である。
【0087】
図8Aに示したタイプ1のAPDUコマンドに対して、コマンド・ヘッダは、このコマンドを完全に実行するのに十分であり、そしてカードのオペレーティング・システムからの唯一の応答はステータス・ワードである。このためISOプロトコールでは、通信は最低二つのステップに分割される。第一のステップにおいて、コンピュータはコマンド・ヘッダを送る。そして第二のステップにおいて、カードは、タイム・アウト又はその他のステータス・ワードSW1、SW2(図8B)を決定するために、バイト60hを送ってカウンタをリセットする。バイト60hが送られると、続くステップでは他のバイトか、あるいは60hを送り、最後のステップでは常にステータス・ワードSW1、SW2を送る。これとは対照的に、本発明では、図8Bに示したステップが削除されている。これはホスト・コンピュータによって送られたIsReady()コマンドに対するカードの応答に置き換えられている。
【0088】
タイプ2のISOのAPDUコマンドに対して、コマンド・ヘッダは実行を開始するが、カードのオペレーティング・システムの応答は、ステータス・ワードに加えてデータから成り立っている。通信は一般に四つのステップに分割される。図9Aに示した第一のステップにおいて、コンピュータはコマンド・ヘッダを送る。第二のステップは慣例的にISOプロシージャにおいて使われる。このステップにおいて、コンピュータはプロシージャ・バイト60h、INS、又はSW1を受け取る。プロシージャ・バイトが60hのときは、システムは、INSバイト又はSW1バイトを受け取るまで上で述べた状況へ戻る。図9Bに示すように、INS又はSW1のプロシージャ・バイトが受信されると、プロセスは図9C、図9Dを参照して下で説明するように処理は継続する。それにもかかわらず、本発明では図9Bのステップが省略されることが分かるだろう。これはホスト・コンピュータによって送られたIsReady()コマンドへのカードの応答に置き換えられている。図9Cを参照すると、これは受信されたプロシージャ・バイトがINSである場合に対応するが、カードはデータを送る。最後に、コンピュータは図9Dに示すようにSW1になるまでプロシージャ・バイトを待つ。INSが受信されずSW1が直接受信された場合は、SW2が受信され、コマンドは終了される。本発明では、図9C及び図9Dに示したこれらのステップは、図9Dに示したようにカードがプロシージャ・バイト60hを返す状況を除いて、保存される。
【0089】
タイプ3のAPDUコマンドに対するプロシージャは、データが送られる方向を除いてタイプ2のISOコマンドの処理に関し上で述べたプロシージャと同じであり、ここではカードからコンピュータへではなく、コンピュータからカードへという方向である。
【0090】
以上を要約すると、マイクロコントローラを有するカード状の携帯物品について説明してきた。このカード状の携帯物品は、第一の通信プロトコールに従ってマイクロコントローラが通信できるようにするインストラクションの組が組み込まれたメモリを有しいてる。このカード状の携帯物品はさらに、第一の通信プロトコールに従ったコマンドを第二の通信プロトコールに従ったコマンドに変換し、そしてその逆に変換するためのインターフェースを有している。第一の通信プロトコールはISO7816-3規格に従うものであり、第二の通信プロトコールはUSB規格に従うものであることが好ましい。一つの利点は、カード状の携帯物品が、USB規格に従った通信を行うのに、特定のオペレーティング・システムを必要としないということである。ISO7816をベースとしたオペレーティング・システムを用いることが可能である。USBのための特定のオペレーティング・システムは相対的に高い開発コストを伴うのに対し、このようなオペレーティング・システムは、相対的に低コストで実現することができる。
【0091】
コネクタについても説明してきた。このコネクタはカード状の携帯物品を受け入れるためのスロットとなる端部と、ホスト・ステーションのUSBスロットに挿入可能なプラグとなるもう一方の端部を有している。このスロットは、ISO7816互換のカード状の携帯物品が挿入されたときには、ISO7816互換のカード状の携帯物品のコンタクト領域C1、C5、C4、C8と接触するコンタクト・エレメントの組を備えていることが望ましい。
【図面の簡単な説明】
【図1】 本発明に係る、ホストのワークステーションとと携帯物品との間の考え得る接続の構成を示している。
【図2】 本発明に係る、ホストのパーソナル・コンピュータとスマートカードとの間の接続を示している。
【図3】 本発明に従ってホスト・コンピュータと接続するためにスマートカードを受け入れるのに適したコネクタ・エレメントの斜視図である。
【図4】 本発明に従ったスマートカードのホスト・コンピュータとの接続用のコンタクトを示した拡大正面図である。
【図5】 本発明に従ったホスト・コンピュータとの接続のためのカードのマイクロコントローラの動作に関係する種々のエレメントを示したブロック図である。
【図6】 カードとホスト・コンピュータのソフトウェア・アプリケーションとの間の通信のための、本発明に従ったシステムの論理構成を示した図である。
【図7】 本発明のスマートカードとの通信セッションがどのように行われるかを示したフローチャートである。
【図8A】 カードによってISOのタイプ1のコマンドを実行するモードにおいて行われるトランザクションを示している。
【図8B】 カードによってISOのタイプ1のコマンドを実行するモードにおいて行われるトランザクションを示している。
【図9A】 カードによってISOのタイプ2のコマンドを実行するモードにおいて行われるトランザクションを示している。
【図9B】 カードによってISOのタイプ2のコマンドを実行するモードにおいて行われるトランザクションを示している。
【図9C】 カードによってISOのタイプ2のコマンドを実行するモードにおいて行われるトランザクションを示している。
【図9D】 カードによってISOのタイプ2のコマンドを実行するモードにおいて行われるトランザクションを示している。
【図10A】 カードによってISOのタイプ3のコマンドを実行するモードにおいて行われるトランザクションを示している。
【図10B】 カードによってISOのタイプ3のコマンドを実行するモードにおいて行われるトランザクションを示している。
【図10C】 カードによってISOのタイプ3のコマンドを実行するモードにおいて行われるトランザクションを示している。
【図10D】 カードによってISOのタイプ3のコマンドを実行するモードにおいて行われるトランザクションを示している。

Claims (15)

  1. ホスト・ステーションと、マイクロコントローラを有する携帯物品との間の通信方法であって、前記携帯物品は第1の通信プロトコールを用いるバス・システムによって前記ホスト・ステーションに接続されており、ホスト・ステーションが前記第1の通信プロトコールに従って、第2の通信プロトコールに対応する特定のリクエストを、マイクロコントローラを有する携帯物品に転送するステップを含んでおり、
    前記マイクロコントローラを有する携帯物品はマイクロコントローラ・カードであり、
    当該マイクロコントローラ・カードは、
    前記マイクロコントローラに第一の通信プロトコールに従って通信することを可能とする一組のインストラクションを有するメモリと、
    第一の通信プロトコールに従うコマンドを第二の通信プロトコールに従うコマンドに変換するとともに、逆にも変換するインターフェースと、
    を備えることを特徴とする方法。
  2. 前記携帯物品はカード状であって、前記ホスト・ステーションにコネクタを介して接続されており、前記コネクタは、カード状携帯物品を受け入れるためのスロットとなる端部、及びホスト・ステーションのUSBスロットに挿入可能なプラグとなるもう一方の端部を有することを特徴とする請求項1に記載の方法。
  3. 前記スロットは、一組のコンタクト・エレメントを有し、前記コンタクト・エレメントは、ISO7816互換のカード状の携帯物品がスロットに挿入されたときに、ISO7816互換のカード状の携帯物品のC1,C5,C4,C8のコンタクト領域と接触する、請求項2に記載の方法。
  4. 前記バス・システムは、ユニバーサル・シリアル・バスUSBシステムであり、前記特定のリクエストは前記システムのコントロール・トランスファー・モードを用いてマイクロコントローラを有する携帯物品と通信することを特徴とする請求項1に記載の方法。
  5. 前記特定のリクエストは、マイクロコントローラを有する携帯物品のためのリーダの機能を与える特定のリクエストであることを特徴とする請求項1に記載の方法。
  6. 前記マイクロコントローラは、中央処理装置を揮発性メモリと提携させるアセンブリを含み、かつ、特定のリクエストは前記アセンブリの揮発性メモリのリセット動作をトリガーするDoReset()リクエストであることを特徴とする請求項1に記載の方法。
  7. 前記特定のリクエストは、前記携帯物品をリセットするときにアンサー・ストリングが復元されるようにするGetATR()リクエストである請求項1に記載の方法。
  8. 前記特定のリクエストは、ホスト・ステーションにコマンド・ヘッダを携帯物品に送ることを可能にするSendADPU()リクエストであることを特徴とする請求項1に記載の方法。
  9. 前記特定のリクエストは、ホスト・ステーションに携帯物品によって送られたデータを復元し、そしてステータス・ワードを復元することを可能にするGetData()リクエストであることを特徴とする請求項1に記載の方法。
  10. 前記特定のリクエストは、ホスト・ステーションに携帯物品へのデータの通信を可能にするSendData()リクエストであることを特徴とする請求項1に記載の方法。
  11. 前記特定のリクエストは、ホスト・ステーションが携帯物品における動作を低消費電力モードにトリガーするのを防ぐ役割を果たすIsReady()リクエストであることを特徴とする請求項1に記載の方法。
  12. 前記ホスト・ステーションに前記携帯物品における低消費電力モードをトリガーすることを可能にするリクエストに応答して、前記携帯物品がOS-STATUSアンサーをホスト・ステーション送ることを特徴とし、前記応答は携帯物品の現在のステータスを定義するようなやり方でコード化されている、請求項11に記載の方法。
  13. 携帯物品の前記現在のステータスは、ミュート・ステータス又はカードが現在処理中であるというステータスである、請求項12に記載の方法。
  14. 第一の通信プロトコールはISO7816−3規格に適合し、第二の通信プロトコールはUSBプロトコールに適合するものである、請求項1に記載の方法。
  15. 前記カードの前記マイクロコントローラは、ISO7816規格において定義されているようなAPDUコマンドを実行するプロトコールを用いての通信に適合するオペレーティング・システムを搭載した不揮発性メモリを含んでいることを特徴とする請求項1に記載の方法。
JP2001567205A 2000-03-15 2001-03-15 スマートカードとホストステーションとの間の通信の方法 Expired - Lifetime JP4898056B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR00/03498 2000-03-15
FR0003498A FR2806505A1 (fr) 2000-03-15 2000-03-15 Procede de communication entre une carte a puce et une station hote
PCT/IB2001/000380 WO2001069881A2 (en) 2000-03-15 2001-03-15 A method of communication between a smart card and a host station

Publications (2)

Publication Number Publication Date
JP2003526863A JP2003526863A (ja) 2003-09-09
JP4898056B2 true JP4898056B2 (ja) 2012-03-14

Family

ID=8848255

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001567205A Expired - Lifetime JP4898056B2 (ja) 2000-03-15 2001-03-15 スマートカードとホストステーションとの間の通信の方法

Country Status (9)

Country Link
US (2) US7011247B2 (ja)
EP (1) EP1264461B1 (ja)
JP (1) JP4898056B2 (ja)
CN (1) CN1241142C (ja)
BR (1) BR0109225A (ja)
DE (1) DE60138689D1 (ja)
ES (1) ES2329970T3 (ja)
FR (1) FR2806505A1 (ja)
WO (1) WO2001069881A2 (ja)

Families Citing this family (82)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8625270B2 (en) 1999-08-04 2014-01-07 Super Talent Technology, Corp. USB flash drive with deploying and retracting functionalities using retractable cover/cap
US7872871B2 (en) * 2000-01-06 2011-01-18 Super Talent Electronics, Inc. Molding methods to manufacture single-chip chip-on-board USB device
US8102662B2 (en) * 2007-07-05 2012-01-24 Super Talent Electronics, Inc. USB package with bistable sliding mechanism
US20080286990A1 (en) * 2003-12-02 2008-11-20 Super Talent Electronics, Inc. Direct Package Mold Process For Single Chip SD Flash Cards
FR2804816B1 (fr) * 2000-02-03 2003-10-31 Gemplus Card Int Transport d'unites de protocole d'objet electronique portable par protocole pour peripheriques de micro- ordinateur
US7127678B2 (en) * 2000-12-21 2006-10-24 Microsoft Corporation System and method to specify device specific user interface information in the firmware of a USB device
JP2002351569A (ja) * 2001-03-21 2002-12-06 Toshiba Corp ソフトウェアのライセンス管理方法、ソフトウェアのライセンス管理システムおよび記憶媒体
WO2002099742A1 (fr) * 2001-06-04 2002-12-12 Renesas Technology Corp. Carte memoire
FR2830107B1 (fr) * 2001-09-24 2004-09-24 Gemplus Card Int Cle electronique destinee a etre connectee a un port d'un dispositif de telecommunication et procede de fabrication de la cle
KR100960859B1 (ko) * 2001-10-10 2010-06-08 제말토 에스에이 스마트 카드에서의 바이트 전송 관리
EP1308805A1 (en) * 2001-10-31 2003-05-07 Telefonaktiebolaget Lm Ericsson Method and apparatus for controlling a device from a smart card
WO2003038534A1 (en) * 2001-10-31 2003-05-08 Telefonaktiebolaget Lm Ericsson Method and apparatus for controlling a device from a smart card
US7296098B2 (en) * 2001-12-29 2007-11-13 Taiguen Technology (Shen-Zhen), Co., Ltd. Portable data converting and processing storage device with standard interface wherein the body unity does not include any built-in flash memory
CN2517012Y (zh) * 2002-01-23 2002-10-16 台均实业有限公司 可随意升级扩容更换存储介质的usb移动存储器
US7344074B2 (en) * 2002-04-08 2008-03-18 Nokia Corporation Mobile terminal featuring smart card interrupt
US7114105B2 (en) * 2002-12-05 2006-09-26 Qualcomm, Inc. System and method for software download to wireless communication device
JP3804657B2 (ja) * 2003-01-08 2006-08-02 ソニー株式会社 外部記憶装置
FR2849945B1 (fr) 2003-01-10 2005-03-11 Atmel Corp Moyens pour la communication des cartes a puces usb utilisant des transferts a vitesse maximale ou elevee
US6945454B2 (en) * 2003-04-22 2005-09-20 Stmicroelectronics, Inc. Smart card device used as mass storage device
US7373522B2 (en) * 2003-05-09 2008-05-13 Stmicroelectronics, Inc. Smart card with enhanced security features and related system, integrated circuit, and methods
US7080789B2 (en) * 2003-05-09 2006-07-25 Stmicroelectronics, Inc. Smart card including a JTAG test controller and related methods
US7181649B2 (en) * 2003-05-09 2007-02-20 Stmicroelectronics, Inc. Universal serial bus (USB) smart card having enhanced testing features and related system, integrated circuit, and methods
US6991173B2 (en) * 2003-07-07 2006-01-31 Stmicroelectronics, Inc. Method and apparatus for autoreset of a USB smart card device in a mute mode
KR100562505B1 (ko) * 2003-10-09 2006-03-21 삼성전자주식회사 중앙 처리 장치의 개입없이 널 바이트 정보를 자동적으로전송할 수 있는 집적회로 카드
US8102657B2 (en) 2003-12-02 2012-01-24 Super Talent Electronics, Inc. Single shot molding method for COB USB/EUSB devices with contact pad ribs
US7440286B2 (en) * 2005-04-21 2008-10-21 Super Talent Electronics, Inc. Extended USB dual-personality card reader
US7872873B2 (en) * 2003-12-02 2011-01-18 Super Talent Electronics, Inc. Extended COB-USB with dual-personality contacts
US8998620B2 (en) * 2003-12-02 2015-04-07 Super Talent Technology, Corp. Molding method for COB-EUSB devices and metal housing package
US8321923B2 (en) * 2004-03-04 2012-11-27 Gemalto Sa Secure sharing of resources between applications in independent execution environments in a retrievable token (e.g. smart card)
HK1063994A2 (en) * 2004-06-09 2004-12-17 Advanced Card Systems Ltd Smart card reader with contactless access capability.
WO2005124932A2 (en) 2004-06-17 2005-12-29 Walletex Microelectronics Ltd. Improved connector and device for flexibly connectable computer systems
JP4981271B2 (ja) * 2004-07-05 2012-07-18 三星電子株式会社 モード検出を含むマルチモード集積回路装置及びそれの動作方法
TW200606642A (en) * 2004-08-02 2006-02-16 Power Quotient Int Co Ltd Multimedia storage and communication device, and its determining method
KR100579053B1 (ko) * 2004-08-26 2006-05-12 삼성전자주식회사 스마트 카드와 메모리 카드간의 멀티 인터페이스 방법 및멀티 인터페이스 카드
TWI282517B (en) * 2004-10-15 2007-06-11 C One Technology Corp Ltd Multi-functional integrated circuit card module having mixed interface
US20060095598A1 (en) * 2004-10-30 2006-05-04 Axalto Inc. Method and apparatus of extending answer to reset and subsequent communications between a smart card and a chip card interface device
CN1878055B (zh) * 2005-06-07 2010-11-03 北京握奇数据系统有限公司 一种分离式大数据量加/解密设备及实现方法
KR100691281B1 (ko) * 2005-09-15 2007-03-12 삼성전기주식회사 쿼드러처 전압제어발진기
US8078788B2 (en) * 2005-12-08 2011-12-13 Sandisk Technologies Inc. Media card command pass through methods
FR2896060A1 (fr) * 2006-01-06 2007-07-13 Gemplus Sa Cle electronique generique munie d'une carte a puce personnalisee
EP1826709A3 (en) * 2006-02-24 2012-04-25 LG Electronics Inc. Method and apparatus for contactless interface on ICC supporting high speed interface
US20070235519A1 (en) * 2006-04-05 2007-10-11 Samsung Electronics Co., Ltd. Multi-functional dongle for a portable terminal
EP1883257A1 (fr) * 2006-07-28 2008-01-30 Gemplus Procédé de synchronisation entre un equipement mobile et une carte a puce
WO2008044160A2 (en) 2006-10-12 2008-04-17 Nxp B.V. Device, system and method for compensating signal delays in an rfid communication system
KR100849212B1 (ko) * 2006-10-12 2008-07-31 삼성전자주식회사 메모리 카드 및 메모리 카드의 구동 프로그램 업데이트방법
CN100414556C (zh) * 2006-10-23 2008-08-27 北京飞天诚信科技有限公司 一种主机与智能卡信息交互的方法和装置
US8151345B1 (en) 2007-01-25 2012-04-03 Yeager C Douglas Self-authorizing devices
US8161546B2 (en) * 2007-02-28 2012-04-17 Red Hat, Inc. Partitioning data on a smartcard dependent on entered password
US7726568B2 (en) 2007-03-21 2010-06-01 Research In Motion Limited Smart card session optimization
US8254134B2 (en) * 2007-05-03 2012-08-28 Super Talent Electronics, Inc. Molded memory card with write protection switch assembly
US7789680B2 (en) * 2007-07-05 2010-09-07 Super Talent Electronics, Inc. USB device with connected cap
US8102658B2 (en) * 2007-07-05 2012-01-24 Super Talent Electronics, Inc. Micro-SD to secure digital adaptor card and manufacturing method
JP2009086988A (ja) * 2007-09-28 2009-04-23 Toshiba Corp メモリカード
US20090094472A1 (en) * 2007-10-08 2009-04-09 Asustek Computer Inc. Computer system and method for dynamically saving power thereof
US8812970B2 (en) * 2008-02-27 2014-08-19 Microsoft Corporation Dynamic device state representation in a user interface
TW200950218A (en) * 2008-05-23 2009-12-01 Chant Sincere Co Ltd Card reader
KR20100030126A (ko) * 2008-09-09 2010-03-18 삼성전자주식회사 메모리 장치 및 그를 포함하는 전자 장치
DE102008047639A1 (de) * 2008-09-17 2010-03-25 Giesecke & Devrient Gmbh Verfahren und Vorrichtung zum Zugriff auf ein maschinenlesbares Dokument
CN201387639Y (zh) * 2008-12-29 2010-01-20 深圳市江波龙电子有限公司 一种读卡器及移动支付终端
JP4944213B2 (ja) * 2010-01-04 2012-05-30 株式会社バッファロー 本体機器、外部機器、及び通信システム
US8566934B2 (en) 2011-01-21 2013-10-22 Gigavation, Inc. Apparatus and method for enhancing security of data on a host computing device and a peripheral device
CN202004207U (zh) * 2011-02-25 2011-10-05 华为终端有限公司 一种连接器及无线调制解调器
US8713237B2 (en) * 2011-03-29 2014-04-29 Cisco Technology, Inc. X2 10GBASE-T transceiver with 1 Gigabit side-band support
JP5796741B2 (ja) 2011-05-19 2015-10-21 日立工機株式会社 電動工具
WO2013023105A1 (en) 2011-08-10 2013-02-14 Srivastava Gita Apparatus and method for enhancing security of data on a host computing device and a peripheral device
US11210648B2 (en) 2012-10-17 2021-12-28 Royal Bank Of Canada Systems, methods, and devices for secure generation and processing of data sets representing pre-funded payments
US11080701B2 (en) 2015-07-02 2021-08-03 Royal Bank Of Canada Secure processing of electronic payments
US9082119B2 (en) * 2012-10-17 2015-07-14 Royal Bank of Canada. Virtualization and secure processing of data
WO2014087381A1 (en) 2012-12-07 2014-06-12 Visa International Service Association A token generating component
JP2014137777A (ja) * 2013-01-18 2014-07-28 Gt Telecom Co Ltd 携帯端末機用タッチペン
CN104077618B (zh) * 2013-03-29 2018-08-31 西门子公司 一种访问智能卡的方法和装置
EP3000025B1 (en) * 2013-05-22 2021-05-05 Gimso Mobile Ltd. Remote update of a portable storage device
DE102015011013B4 (de) 2014-08-22 2023-05-04 Sigma Additive Solutions, Inc. Verfahren zur Überwachung von generativen Fertigungsprozessen
CN107004190A (zh) 2014-10-10 2017-08-01 加拿大皇家银行 用于处理电子交易的系统
US10786948B2 (en) 2014-11-18 2020-09-29 Sigma Labs, Inc. Multi-sensor quality inference and control for additive manufacturing processes
WO2016115284A1 (en) 2015-01-13 2016-07-21 Sigma Labs, Inc. Material qualification system and methodology
WO2016115620A1 (en) 2015-01-19 2016-07-28 Royal Bank Of Canada Secure processing of electronic payments
US11354651B2 (en) 2015-01-19 2022-06-07 Royal Bank Of Canada System and method for location-based token transaction processing
CN104750630B (zh) * 2015-04-14 2017-09-22 飞天诚信科技股份有限公司 一种pc/sc驱动库在ios设备中的工作方法
US11599879B2 (en) 2015-07-02 2023-03-07 Royal Bank Of Canada Processing of electronic transactions
US10207489B2 (en) 2015-09-30 2019-02-19 Sigma Labs, Inc. Systems and methods for additive manufacturing operations
TWI659359B (zh) 2018-04-27 2019-05-11 慧榮科技股份有限公司 控制儲存裝置之方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1153485A (ja) * 1997-08-01 1999-02-26 Tokyo Electron Ltd コンピュータシステム、記憶装置、変換システム、及び記録媒体
JPH11259605A (ja) * 1998-01-08 1999-09-24 Tdk Corp Pcカード
WO1999049415A2 (en) * 1998-03-26 1999-09-30 Gemplus Versatile interface smart card
JP2000200248A (ja) * 1998-11-10 2000-07-18 Aladdin Knowledge Systems Ltd ユ―ザとコンピュ―タ間の対話方法及び装置
JP2001166858A (ja) * 1999-11-22 2001-06-22 Ritsuwa Yo ダブルインターフェイスを有するメモリーカード及びその変換アダプタ

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0259786A1 (de) * 1986-09-12 1988-03-16 Xmit Ag Auf einer Steckkarte für einen Mikrocomputer angeordnete Schnittstelle mit bestimmbaren Protokollen
JPH04205079A (ja) * 1990-11-29 1992-07-27 Kyocera Corp メモリカード変換装置
JPH06105271A (ja) * 1992-09-16 1994-04-15 Asahi Optical Co Ltd Icメモリカードカメラシステム
US6457647B1 (en) * 1993-11-16 2002-10-01 Canon Kabushiki Kaisha Memory card adaptor to facilitate upgrades and the like
FR2743647B1 (fr) * 1996-01-12 1998-02-13 Bull Cp8 Coupleur pour gerer une communication entre un support de donnees portable et un dispositif d'echange de donnees, et dispositif d'echange de donnees associe
US5767844A (en) * 1996-02-29 1998-06-16 Sun Microsystems Inc Modified universal serial bus interface implementing remote power up while permitting normal remote power down
US6188761B1 (en) * 1997-10-21 2001-02-13 Mci Communications Corporation System and method for providing operator and customer services
FR2774194A1 (fr) * 1998-01-27 1999-07-30 Scm Schneider Microsysteme Mic Dispositif de liaison entre au moins une carte a puce, un lecteur et l'hote
US6216230B1 (en) * 1998-02-11 2001-04-10 Durango Corporation Notebook security system (NBS)
US6151647A (en) * 1998-03-26 2000-11-21 Gemplus Versatile interface smart card
FR2783336B1 (fr) * 1998-09-11 2001-10-12 Schlumberger Ind Sa Procede de transmission de donnees et carte pour une telle transmission
US6168077B1 (en) * 1998-10-21 2001-01-02 Litronic, Inc. Apparatus and method of providing a dual mode card and reader
CN1262485A (zh) 1998-11-10 2000-08-09 阿拉丁知识系统有限公司 由可灵活连接计算机系统群体使用的用户-计算机交互方法
US6145035A (en) * 1999-02-25 2000-11-07 Dallas Semiconductor Corporation Card cradle system and method
US6343364B1 (en) * 2000-07-13 2002-01-29 Schlumberger Malco Inc. Method and device for local clock generation using universal serial bus downstream received signals DP and DM
US6439464B1 (en) * 2000-10-11 2002-08-27 Stmicroelectronics, Inc. Dual mode smart card and associated methods
US6634565B2 (en) * 2001-11-06 2003-10-21 Litronic, Inc. Smart card having additional connector pads
US6752321B1 (en) * 2003-03-31 2004-06-22 Stmicroelectronics, Inc. Smart card and method that modulates multi-color LED indicative of operational attributes and/or transactions between the smart card and USB port of a USB host
US7143224B2 (en) * 2003-05-09 2006-11-28 Stmicroelectronics, Inc. Smart card for performing advance operations to enhance performance and related system, integrated circuit, and methods

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1153485A (ja) * 1997-08-01 1999-02-26 Tokyo Electron Ltd コンピュータシステム、記憶装置、変換システム、及び記録媒体
JPH11259605A (ja) * 1998-01-08 1999-09-24 Tdk Corp Pcカード
WO1999049415A2 (en) * 1998-03-26 1999-09-30 Gemplus Versatile interface smart card
JP2000200248A (ja) * 1998-11-10 2000-07-18 Aladdin Knowledge Systems Ltd ユ―ザとコンピュ―タ間の対話方法及び装置
JP2001166858A (ja) * 1999-11-22 2001-06-22 Ritsuwa Yo ダブルインターフェイスを有するメモリーカード及びその変換アダプタ

Also Published As

Publication number Publication date
US20050211788A1 (en) 2005-09-29
EP1264461A2 (en) 2002-12-11
EP1264461B1 (en) 2009-05-13
CN1241142C (zh) 2006-02-08
WO2001069881A3 (en) 2002-01-31
FR2806505A1 (fr) 2001-09-21
US7703688B2 (en) 2010-04-27
US7011247B2 (en) 2006-03-14
DE60138689D1 (de) 2009-06-25
ES2329970T3 (es) 2009-12-03
BR0109225A (pt) 2003-03-25
JP2003526863A (ja) 2003-09-09
CN1418349A (zh) 2003-05-14
WO2001069881A2 (en) 2001-09-20
US20030093609A1 (en) 2003-05-15

Similar Documents

Publication Publication Date Title
JP4898056B2 (ja) スマートカードとホストステーションとの間の通信の方法
EP1473664B1 (en) Smart card device as mass storage device
EP1643372B1 (en) USB device with secondary USB on-the-go function
EP1792257B1 (en) Generic universal serial bus device operable at low and full speed and adapted for use in a smart card device
US6779059B2 (en) Reconfigurable flash media reader system
US8297987B2 (en) Extended USB plug, USB PCBA, and USB flash drive with dual-personality for embedded application with mother boards
US7721046B2 (en) Memory card authentication system, capacity switching-type memory card host device, capacity switching-type memory card, storage capacity setting method, and storage capacity setting program
US20030046472A1 (en) Enhanced protocol conversion system
KR101068380B1 (ko) 다기능 주변 장치, 대응 방법 및 단일 인터페이스를 통해 통신하는 주변 장치와 호스트를 갖는 전자 시스템
EP1457901A2 (en) System and method for simulating USB smart cards connected to USB host
JP2001523369A (ja) 改良されたオペレーティングモード検出機能を備えたフラッシュメモリーカード及びユーザフレンドリなインターフェーシングシステム
KR100782113B1 (ko) 메모리 카드 시스템 및 그것의 호스트 식별 정보 전송 방법
US20010024066A1 (en) Handheld device, smart card interface device (IFD) and data transmission method
US7850082B1 (en) Extended universal serial bus (USB) card reader
JP2000222337A (ja) インターフェース装置
EP1102173A3 (en) Universal serial bus architecture
JPWO2006038260A1 (ja) Usbストレージシステムおよびusbストレージデバイス

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080110

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100823

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100916

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20101216

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20101224

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110316

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110728

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111028

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

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

R150 Certificate of patent or registration of utility model

Ref document number: 4898056

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20150106

Year of fee payment: 3

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

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term