(57)【特許請求の範囲】
【請求項１】
スマートＩＣカード（２）用の読み取り装置（１）において、
該装置の主導で、接続されたスマートＩＣカード（２）との情報の交換を管理するための手段と、
トランザクションの管理を主導する、接続されたスマートＩＣカード（２）からの命令とデータとを受信し処理するための手段と、
前記読み取り装置（１）により命令を実行したときに、接続されたスマートＩＣカード（２）へのレポートメッセージを作成して送信するための手段と、
を含むことを特徴とするスマートＩＣカード（２）用の読み取り装置（１）。
【請求項２】
接続されたＩＣカード（２）との情報の交換を管理するための前記手段は、接続されたＩＣカード（２）に、一方では、カードメッセージと呼ばれる前記スマートＩＣカード（２）で発生する命令とデータのパケットの要求と、他方では、接続されたＩＣカード（２）からのカードメッセージで受信した命令の実行に関するレポートメッセージに関連するレポート宣言を交互にくり返し発生し、該レポートメッセージとレポート宣言は読み取りレポートと呼ばれる、請求項１に記載の読み取り装置。
【請求項３】
接続されたスマートＩＣカード（２）から受けた命令とデータとを処理する前記手段が、カードメッセージの送信要求に続いて受信する接続された前記スマートＩＣカード（２）から受ける命令を理解し、実行するコマンドインタプリタ（１１）を含むことを特徴とする請求項２に記載の読み取り装置。
【請求項４】
接続されたＩＣカード（２）に、一方では、カードメッセージと呼ばれる前記スマートＩＣカード（２）で発生する命令とデータのパケットの要求を、他方では、接続されたＩＣカード（２）からのカードメッセージで受信した命令の実行に関するレポートメッセージに関連するレポート宣言を交互にくり返し発生する、接続されたＩＣカード（２）との情報の交換を管理するための読み取り装置（１）の側の前記手段は、コマンド識別フィールドと、カードメッセージの期待される長さを宣言するフィールドを含む複数の連続するフィールドを持つデジタルシーケンスの形でカードメッセージ用意リクエストを生ずる、請求項２に記載の読み取り装置。
【請求項５】
接続されたＩＣカード（２）に、一方では、カードメッセージと呼ばれる前記スマートＩＣカード（２）で発生する命令とデータのパケットの要求と、他方では、接続されたＩＣカード（２）からのカードメッセージで受信した命令の実行に関するレポートメッセージに関連するレポート宣言を交互にくり返し発生する、接続されたＩＣカード（２）との情報の交換を管理するための読み取り装置（１）の側の前記手段は、コマンド識別フィールドと、レポートメッセージの期待される長さを宣言するフィールドを含む複数の連続するフィールドを持つデジタルシーケンスの形でレポート宣言を生ずる、請求項２に記載の読み取り装置。
【発明の詳細な説明】
ＩＣカードの用語は一般にはクレジットカードの大きさのカードを示すため使用され、又は、メモリに基づく電子マイクロ回路とトランザクション、例えば金融又は医学的なトランザクションを行うことができる様に設計されたマイクロコントローラとを備えたトークンを示すため使用される。
周知のＩＣカードの読み取り装置はマルチピンの電子コネクタか、又は容量性あるいは誘導性のアンテナのいずれかの手段によりＩＣカードと関連付けられるシステムに提供されている。これらの読み取り装置には本質的に次の２つのタイプがある：内蔵型及びトランスペアレント型。
内蔵型ＩＣカード読み取り装置は、該装置自体で動作する装置である。該装置は個人がトランザクションが行われたことをモニターし理解することが十分にできる次の通信要素を有している：問題とするトランザクションに対する特別なプログラムを有している読み取り装置自体のマイクロコントーラにより管理されているＩＣカードへのリンクとのキーボード及びディスプレイ。
トランスペアレント型ＩＣカード読み取り装置は問題とするトランザクションのために特別にプログラムされたコンピュータシステムにアクセスするＩＣカードに使用される。該コンピュータシステムに対し読み取り装置は特にＩＣカード用に設計された簡単な入力／出力ポートとして動作する。
これらの内蔵型又はトランスペアレント型ＩＣカード読み取り装置はデータ保護媒体として、即ち提供されたセキュリティ又は暗号機能のためＩＣカードを使用している。いずれの場合でも、該読み取り装置は特別な交換プロトコル、しばしばＩＳＯ規格７８１６−３で定められた交換プロトコルに基づく形式で決められたＩＣカードに命令を送り、内蔵型であれば命令を処理するこのカードからの応答を管理し、トランスペアレント型であれば接続されているコンピュータシステムに返す。
それ故、トランザクションの処理能力は、読み取り装置内か、又は読み取り装置と共同するコンピュータ内のいずれかにある。この方式の欠点はトランザクションの種類に基づき読み取り装置を、又は関連するコンピュータを特殊化することが必要であることである。従って、トランザクションの種類を変える必要があると、ＩＣカードのプログラムを変えることでは十分ではない。内蔵型であれば、読み取り装置のプログラムを変えることが必要であり、トランスペアレント型であれば関連するコンピュータシステムのプログラムも変える必要がある。これはＩＣカードの利用を発展させることに障害である。
この欠点を解決するため、処理能力即ちトランザクションの管理をＩＣカード自体に移すことが提案されている。しかし、この方法は、ＩＣカードが、現在の特別な読み取り装置と互換性を持つことを希望するときは十分でない。これらのＩＣカードは実際には現在のデータ交換プロトコルを受け入れることが必要である。多数のデータ交換プロトコルを与えることは１つの解決方法であるが、これによりスマートＩＣカードの容量が本質的に制限されているにもかかわらずスマートカードが行わなければ成らないタスクの複雑度が増す。
本発明はトランザクションの種類に特有でないスマートＩＣカード読み取り装置に関する。
本発明は、更に専用の読み取り装置とデータの交換を行う従来のＩＣカードに使用されるデータ交換プロトコルと互換性のある単一のデータ変換プロトコルを使用して、種々のタイプのスマートＩＣカードに対応する汎用性のある読み取り装置にも関する。
本発明の特徴は、スマートＩＣカード（２）用の読み取り装置（１）において、該装置の主導で、接続されたスマートＩＣカード（２）との情報の交換を管理するための手段と、トランザクションの管理を主導する、接続されたスマートＩＣカード（２）からの命令とデータとを受信し処理するための手段と、前記読み取り装置（１）により命令を実行したときに、接続されたスマートＩＣカード（２）へのレポートメッセージを作成して送信するための手段と、を含むスマートＩＣカード（２）用の読み取り装置（１）にある。
好ましくは、接続されたＩＣカード（２）との情報の交換を管理するための前記手段は、接続されたＩＣカード（２）に、一方では、カードメッセージと呼ばれる前記スマートＩＣカード（２）で発生する命令とデータのパケットの要求と、他方では、接続されたＩＣカード（２）からのカードメッセージで受信した命令の実行に関するレポートメッセージに関連するレポート宣言を交互にくり返し発生し、該レポートメッセージとレポート宣言は読み取りレポートと呼ばれる。
好ましくは、ＩＣカード読み取り装置からのカードメッセージの用意の要求は、用意されたデータを読み取り装置に送るための、ＩＳＯ規格７８１６／ｐｒＥＮ７２６の“ゲットレスポンス（get response）”タイプのコマンドから成っている。一方、ＩＣカード読み取り装置からのレポート宣言は、ＩＣカード内のデータを送るため又はプログラムを実行するための、ＩＳＯ規格７８１６／ｐｒＥＮ７２６の“エンベロープ（envelope）”又は“エクセキュート（execute）”タイプのコマンドから成っている。
本発明の他の特徴及び利点は例として提示した本発明の実施態様の次の記載から明らかに成る。この記載は図に関して述べている。この図の中で、ＩＣカード、キーボード及びスクリーンによる外部とのリンクを有する、本発明に基づく汎用のスマートＩＣカード読み取り装置のマイクロコンピュータに対するプログラムの種々の論理レベルの概要を示している。
この図はスマートＩＣカード２に対する読み取り装置１のマイクロコントローラに対する管理プログラムの概括的なパーテションを示しており、この読み取り装置にはディスプレイスクリーン３と、制御及びデータ入力のためのキーボード４が備えられている。
該プログラムの最下位のレベルは、実行可能なコードにおける基本オペレーティングシステム１０であり、該システムは読み取り装置１の種々のエレメントを管理するため使用されたマイクロコントローラのタイプに対して設計されており、更に読み取り装置１のメモリを管理している。この基本オペレーティングシステム１０はカードメッセージが含まれている種々の高級言語の命令を理解するコマンドインタプリタ１１と関連している。この組み合わせの上には読み取り装置１の種々のエレメントを監督する制御プログラム１２からなる中間のレベルと、種々の周辺管理プログラムからなる外側のレベルとがある。この外側のレベルにはＩＳＯ規格７８１６−３に基づくＩＣカードとの通信を管理するためのプログラム１３と、ディスプレイスクリーンを管理するプログラム１４と、キーボードを管理するプログラム１５と、遠隔コンピュータシステムに接続を可能にするための同期シリアルポート管理用のプログラム１６が含まれている。制御プログラム１２はカードメッセージから生ずるコマンドをコマンドインタプリタ１１に向け、ＩＣカードのためのレポートメッセージを構成し、ＩＣカード用の一連のカードメッセージ用意リクエストとレポート宣言を作り、更に基本オペレーティングシステムと種々の周辺の管理プログラムとのインターフェースを行う。
読み取り装置１は、両方向交互接続により、ＩＳＯ規格７８１６／ｐｒＥＮ７２６からの２つの連続したコマンド、即ち“get response”コマンドと“envelope”又は“execute”コマンドの連続したサイクルを使用することによりスマートＩＣカードと通信を行う。
“get response”コマンドは次の５つの連続した１バイトフィールドを備えた２進メッセージを送ることから成る：
−“ＣＬＡ”で示す１番目のフィールドで、例えば金融での応用に予約される命令の様な命令のクラスを識別する１バイトを含んでいる、
−“ＩＮＳ”で示す２番目のフィールドで、“get response”コマンドタイプを識別する１６進のバイトＣＯを含んでいる、
−“Ｐ１”で示す３番目の予約フィールドで、１６進のバイト００を含んでいる、
−“Ｐ２”で示す４番目の予約フィールドで、１６進のバイト００を含んでいる、
−“Ｌｅフィールド”で示す５番目のフィールドで、値ｎはＩＣカードからの応答で期待されるバイト数に対応したバイトを含んでいる。
この“get response”コマンドはＩＣカードからの所謂“Ｄａｔａフィールド”応答を促す。該応答は、ｎ個のデータバイトを含み、ｎが“Ｌｅフィールド”で宣言される数であり、更にカードレポートを与える２バイト“ＳＷ１”，“ＳＷ２”を含む。
“execute”コマンドは５つの連続した１バイトのフィールドと最後のマルチバイトのデータフィールドからなる２進メッセージを送ることから成る：
−“ＣＬＡ”で示す１番目のフィールドは、例えば金融への応用に対する予約の命令の様な命令のクラスを識別する１バイトを含んでいる、
−“ＩＮＳ”で示す２番目のフィールドは“execute”コマンドタイプを示す１６進のバイトＡＥを含んでいる、
−“Ｐ１”で示す３番目の予約フィールドは１６進のバイト００を含んでいる、
−“Ｐ２”で示す４番目の予約フィールドは、１６進のバイト００を含んでいる、
−“Ｌｃフィールド”で示す５番目のフィールドは、値ｎが“execute”コマンドを伴うメッセージ内のバイト数に対応しているバイトを含んでいる、
−“Ｄａｔａフィールド”で示す６番目の最後のフィールドは、５番目の“Ｌｃフィールド”内で宣言されたｎ個のデータバイトを含んでいる。この“execute”コマンドはカードレポートを与える２バイトの“ＳＷ１，ＳＷ２”のＩＣカードからの応答を促す。
“envelope”コマンドは“execute”コマンドと同じ構造であるが、１６進の値Ｃ２を有するコマンドを示す２番目のフィールド“ＩＮＳ”のバイトの値だけが異なっている。
これら３つのメッセージに於て、“Ｌｅフィールド”と“Ｌｃフィールド”は期待されるカードメッセージの長さ、又は読み取り装置からのレポートメッセージの長さを宣言しており、それぞれのフィールドはＩＣカードから来る実行すべき命令と関連するデータ及び読み取り装置により実行される動作及び結果のレポートを運ぶために使用されている。
スマートＩＣカード２が読み取り装置１に挿入されると、該ＩＣカードは読み取り装置１により検出され、電源が投入される。該読み取り装置はカードにＩＳＯ規格７８１６−３に基づくリセットコマンドを送る。これによりスマートＩＣカード２のマイクロコントローラの初期化の過程が行われる。この過程はスマートＩＣカード２から読み取り装置１に送られるリセットに対するアンサーと最初の処理サイクルに対するスマートＩＣカード２のトランザクション管理プログラムの開始により終了する。この最初の処理サイクルによりカード内で最初のカードメッセージの用意が行われ、これにより読み取り装置１が“get response”コマンドの形でメッセージ用意リクエストにより該カードに要求を出すとすぐに読み取り装置１と通信が可能に成る。
リセットに対するアンサーを受けると、読み取り装置１はスマートＩＣカード２とのデータ交換の１番目のサイクルを開始する。
この一番目の交換サイクルの間、読み取り装置１はスマートＩＣカード２にメッセージ用意リクエストを“get response”コマンドの形で送り、初期化の後にスマートＩＣカード２により用意されたカードメッセージの送出を要求する。
“get response”コマンドを通してこの様なリクエストを受けると、スマートＩＣカード２は用意されたカードメッセージを読み取り装置１に送る。
読み取り装置１は該カードメッセージを受け、含まれているデータを識別し、該メッセージを解釈し、リクエストされたコマンドを実行すると、“envelope”又は“execute”コマンドの形のレポート宣言により、レポートメッセージと共に、スマートＩＣカード２に応答する。このレポートメッセージはスマートＩＣカード２に要求されたものがどの様に行われたか、及びこの処理の結果を知らせる。これにより一番目の交換サイクルが終了する。
読み取り装置１から来る一番目の交換サイクルに対する“envelope”又は“execute”コマンドを受けると、スマートＩＣカード２は二番目の処理サイクルでトランザクション管理プログラムを走らせることを続ける。このサイクルの間、該スマートＩＣカードは最初にレポートメッセージにより、今送られたカードメッセージの正しい実行をチェックし、次に他のカードメッセージを用意する。
次に、読み取り装置１は二番目の“get response”コマンドをスマートＩＣカード２に送る二番目の交換サイクルを開始し、新しいカードメッセージを読む。この新しいカードメッセージのデータを処理した後、読み取り装置１は二番目の“envelope”又は“execute”コマンドに関連したレポートメッセージにより、実行をスマートＩＣカード２に伝え、第２の交換サイクルが終了する。
読み取り装置１から来るこの二番目の“envelope”又は“execute”コマンドを受けると、未だトランザクション管理プログラムの制御下にあるスマートＩＣカード２は三番目の処理サイクルを開始し、このサイクルの間に、今送られたカードメッセージの正しい実行を、読み取り装置１から受けたレポートメッセージによりチェックし、他のカードメッセージを用意する。
読み取り装置１は次に三番目の“get response”コマンドをスマートＩＣカード２に送ることにより三番目の交換サイクルを開始し、カードメッセージを受けとる。
スマートＩＣカード２により行われる処理サイクルと読み取り装置１により行われる交換サイクルは、この様にスマートＩＣカード２に記憶されたトランザクション管理プログラムに基づき互いに続く。
ＩＳＯ規格７８１６−３に依れば、読み取り装置１は電気的に交換を管理しているが、トランザクションはスマートカードであるＩＣカード２の主導で走る。
読み取り装置１には幾つかのＩＣカードコネクタが含まれている場合がある。この場合、一度に１つのスマートＩＣカードのみトランザクションを走らせる。該トランザクションを走らせるスマートＩＣカードは“アクティブである”と呼ばれている。他のスマートＩＣカードは“パッシブである”と呼ばれている。読み取り装置からの“get response”命令に答えることができる一番目のスマートＩＣカードは一つの宣言されたアクティブのカードである。
0003900535.tif 000002