(57)【特許請求の範囲】
【請求項１】
リーダの対応する複数のピンに接続されることが意図されている複数のピンを有するカードが前記ピンに接続された少なくとも２つの通信インタフェースを有し、リーダが前記ピンに接続された１つ以上の通信インタフェースを有し、リーダの通信インタフェースがカードによってサポートされるインタフェースより多数のインタフェースのリストに含まれる、前記カード用のブートシーケンス方法であって、
リーダとの通信を開始するためカードの１つの選別されたインタフェースが決定される決定ステップ（１１０、２００、３００、３１０）と、
リーダと通信するため選別されたインタフェースが始動される第１の始動ステップ（１２０、２１０、２４０、２４５、３２０、３３０）と、
互換性のある電力レンジを決定するため電力ネゴシエーションがカードとリーダとの間で実行される第１のネゴシエーションステップ（１３０、１３１、１３２、２２０）と、
同時にアクティブ化するインタフェースを決定するためネゴシエーションがカードとリーダとの間で実行される第２のネゴシエーションステップ（１４０、１４１、１４２、２３０）と、
同時にアクティブ化することができるインタフェースが次々に始動される第２の始動ステップ（１５０から１５６、２３０）と
を含むことを特徴とする、ブートシーケンス方法。
【請求項２】
決定ステップがカードとリーダとに共通した少なくとも１つの競合しないインタフェースが存在するかどうかを識別する識別ステップ（１１０）を含む、請求項１に記載の方法。
【請求項３】
決定ステップがカードの１つ以上のインタフェースがリーダ中に存在するかどうかを決定する検出ステップ（２００）を含む、請求項１に記載の方法。
【請求項４】
検出ステップ（２００）がリーダ中に存在するカードの少なくとも２つのインタフェースを検出する場合、始動ステップ（２４０）が検出されたインタフェースの間で優先インタフェースを始動させる、請求項３に記載の方法。
【請求項５】
検出ステップ（２００）がリーダ中に存在するカードの少なくとも２つのインタフェースを検出する場合、始動ステップ（２４５）が検出されたインタフェースの間で最も制約されたインタフェースを始動させる、請求項３に記載の方法。
【請求項６】
検出ステップ（２００）がリーダ中に存在するカードの少なくとも２つのインタフェースを検出する場合、検出ステップがリーダとカードとの両方に存在するより確実なインタフェースを決定する選択ステップ（３１０）をさらに含む、請求項３に記載の方法。
【請求項７】
インタフェースのリストが、ＩＳＯ７８１６、ＵＳＢ、ＭＭＣ、および、ＳＷＰの間で選択された少なくとも２つのインタフェースを含む、請求項１に記載の方法。
【請求項８】
処理手段と少なくとも２つの通信インタフェースとを有するカードであって、請求項１から７のいずれか一項に記載のブートシーケンス方法を実施する手段を備えることを特徴とする、カード。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は複数の通信インタフェースを備える携帯オブジェクトをブートする方法に関する。
【０００２】
本発明は、複数の通信インタフェースを有する携帯オブジェクト、特に、スマートカードに関する。この種のオブジェクトはこれらのインタフェースのいずれによっても始動させることが可能である。このような場合に携帯オブジェクトに関して正しいプロトコルを検出しアクティブ化する方法は複雑である可能性がある。特に、本発明は、ＩＳＯ、ＵＳＢ、ＭＭＣおよびＳＷＰの能力を備えるスマートカードに適用される。
【背景技術】
【０００３】
従来のスマートカードは、当然カードをブートするため使用される通信カードである１つの通信インタフェースしか有さない。新型スマートカードは複数の通信インタフェースを利用可能である。この種の新型スマートカードは、各インタフェースに固有であるブートシーケンスにおいてこれらのインタフェースのいずれによっても始動させられることがある。最新式のチップは基本的なハードウェア検出メカニズムを有し、これらのメカニズムはインタフェースがアクティブであるかどうかを調べるためにチップピン状態をテストすることが可能である。
【０００４】
今のところ、これらの「新型」スマートカードは、デュアルモードだけで使用され、すなわち、通信インタフェースのうちの２つだけが使用され、いつでもアクティブである。１つの基本的前提は、このようなオブジェクトが未知の環境に置かれることはないということであり、たとえば、ＩＳＯ／ＭＭＣモードで使用されるカードはＵＳＢリーダに差し込まれることになっていない。
【０００５】
多少の制約がカードを正しくブートするためインタフェース間に設定される。そのコンフィギュレーションでは、ブートシーケンスは、実行中のインタフェースを正しく決定するために、これらのインタフェースのうちの１つのインタフェースの検出メカニズムに依存するだけでよい。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
問題は、インタフェース検出が１００％信頼できるわけではないことである。一部のインタフェースは検出されないことがあり、一部の他のインタフェースは、存在していない場合でさえ検出される可能性がある。この問題は、標準化されていないリーダへのインタフェースの組み込みのいくつかの可能性が原因である。
【０００７】
電源ピンはすべてのインタフェースの間で共用され、カードはどのインタフェースが電力源であるかを知る方法がない。目標は、携帯オブジェクトがすべてのサポートされているインタフェース（ここでは、ＩＳＯ／ＭＭＣ／ＵＳＢ／ＳＷＰ）をアクティブ化できるようにすることである。一部のインタフェースは同じピンに多重化されることがあり、同時にアクティブ化されないことがある。
【０００８】
本発明の課題は、スマートカード中の３つ以上のインタフェースをアクティブ化することができるブートシーケンスを実施する方法を見出すことである。シーケンスは、「厳しい」環境において機能停止すべきではなく、いくつかのインタフェースが多重化されるとき、シーケンスは、ホストまたはカードに破壊的な影響を及ぼすインタフェースを始動すべきではない。優先的に、シーケンスは、競合する電圧ネゴシエーションを取り扱うべきであり、ホストインターフェース実施に関して最小限かつ明瞭な制約が付いている必要がある。
【課題を解決するための手段】
【０００９】
好ましい態様によれば、本発明は、リーダの対応する複数のピンに接続されることが意図されている複数のピンを有する携帯オブジェクト用のブートシーケンス方法である。前記携帯オブジェクトは、前記ピンに接続された少なくとも２つの通信インタフェースを有する。リーダは前記ピンに接続された１つ以上の通信インタフェースを有し、リーダの通信インタフェースはカードによってサポートされるインタフェースより多数のインタフェースのリストに含まれる。前記方法は、決定ステップと、第１の始動ステップと、第１のネゴシエーションステップと、第２のネゴシエーションステップと、第２の始動ステップとを含む。決定ステップにおいて、カードの１つの選別されたインタフェースがリーダとの通信を開始するため決定される。第１の始動ステップにおいて、選別されたインタフェースがリーダと通信するため始動される。第１のネゴシエーションステップにおいて、電力ネゴシエーションが互換性のある電力レンジを決定するためカードとリーダとの間で実行される。第２のネゴシエーションステップにおいて、ネゴシエーションが同時にアクティブ化するインタフェースを決定するためカードとリーダとの間で実行される。第２の始動ステップにおいて、同時にアクティブ化することができるインタフェースが次々に始動される。
【００１０】
いくつかの実施形態の可能性に依存して、決定ステップは、カードとリーダとに共通した少なくとも１つの競合しないインタフェースが存在するかどうかを識別する識別ステップを含むことがある。決定ステップは、カードの１つ以上のインタフェースがリーダ中に存在するかどうかを決定する検出ステップを含むことがある。検出ステップは、リーダ中に存在するカードの少なくとも２つのインタフェースを検出することがあり、始動ステップは、検出されたインタフェースの間で優先インタフェースを始動させることがある。検出ステップは、リーダ中に存在するカードの少なくとも２つのインタフェースを検出することがあり、始動ステップは検出されたインタフェースの間で最も制約されたインタフェースを始動させることがある。検出ステップがリーダ中に存在するカードの少なくとも２つのインタフェースを検出する場合、検出ステップは、リーダとカードとの両方に存在するより確実なインタフェースを決定する選択ステップをさらに含むことがある。インタフェースのリストは、ＩＳＯ７８１６、ＵＳＢ、ＭＭＣおよびＳＷＰの間で選択された少なくとも２つのインタフェースを含むことがある。
【００１１】
別の態様によれば、本発明は、処理手段と少なくとも２つの通信インタフェースとを有する携帯オブジェクトである。前記携帯オブジェクトは、ブートシーケンス方法の様々なステップを実施する手段を備える。優先的に、前記オブジェクトはスマートカードである。
【００１２】
添付図面に関連して以下の詳説を読んだ後に、本発明はより良く理解され、その他の詳細および利点が明らかになる。
【図面の簡単な説明】
【００１３】
【図１】マルチインタフェース起動シーケンスの第１の一般的な実施形態を説明する図である。
【図２】競合検出解決手順を有するマルチインタフェース起動シーケンスを説明する図である。
【図３】電力制約およびタイミング制約によるインタフェース順序付けを有するマルチインタフェース起動シーケンスを説明する図である。
【図４】スマートカードに関連したより詳細な実施を説明する図である。
【図５】スマートカードに関連したより詳細な実施を説明する図である。
【発明を実施するための形態】
【００１４】
本発明は、正しいインタフェースを明確かつ非破壊的にアクティブ化でき、ホストに関する一連の制約を最小とする、携帯オブジェクトの起動シーケンスを提示する。図１から図３は、いくつかの通信インタフェースをサポートするスマートカード用のいくつかの起動シーケンスの実施形態のフローチャートを示している。これらの３つの図において、同じ参照番号は、同じステップに対応し、理解を要約する１つの図だけに関連して説明されている。
【００１５】
起動シーケンスは以下のステップで構成される：
パワーオンステップ１００は、チャートの始まりであり、カードの差し込み、または、カードのリーダによるカードの電源スイッチオンに対応する。
【００１６】
次に、現在のインタフェースの識別が競合しないインタフェースのグループを識別するため実行される。競合するインタフェースが発生する理由は：
様々な電圧ネゴシエーション、
様々な電圧レンジ、
多重化されたピンである。
【００１７】
テスト１１０は、電圧およびその他のアクティブなインタフェースのグループをネゴシエートするために少なくとも１つの共通した競合しないインタフェース（マスタＩｆｘ）の識別に対応する。マスタＩｆｘが検出される場合、マスタＩｆｘはステップ１２０において始動させられる。ステップ１３０において、電力ネゴシエーションがマスタＩｆｘを介して行われる。前記電力ネゴシエーションは、リーダによって、カードのためのより多くの適切な電圧と、より多くの割り当てられた電流制限とを決定することにあってもよい。いくつかの方法が知られている。次に、ネゴシエーションがカードによってサポートされているインタフェースおよびリーダによってサポートされているインタフェースがどれであるかを決定するためのステップ１４０において、リーダとカードとの間で始動され得る。ネゴシエーションステップ１４０は、同時に始動させることができるすべてのインタフェース（ネゴシエートされたＩｆｘ）の決定を可能にする。次に、ステップ１５０において、ネゴシエートされたＩｆｘが同時に始動される。
【００１８】
マスタＩｆｘが検出されない場合、カードは、カードのインタフェースの中で使用できるインタフェースを決定するため検出を継続する。テスト２００は、検出されたアクティブなインタフェース（アクティブＩｆｘ）の個数を示している。アクティブＩｆｘを用いて、当業者は、リーダの中へカードによって検出され、カードの少なくとも１つのインタフェースに対応するすべてのインタフェースを理解するはずである。１つのアクティブＩｆｘだけが検出される場合、このアクティブＩｆｘがステップ２１０において始動される。次に、ステップ２２０において、電力ネゴシエーションがステップ１３０の場合と同様に実行される。この電力ネゴシエーションステップ２２０の後、アクティブ化ステップ２３０が、ステップ１４０および１５０の場合と同様に、カード内およびリーダ内のその他のインタフェースをアクティブ化できる場合、アクティブ化するため実行される。
【００１９】
２つ以上のアクティブＩｆｘが検出される場合、カードはステップ２４０において優先アクティブＩｆｘを始動させる。カードの各インタフェースに関連付けられた優先順序番号は優先インタフェースを決定できる。より多くのインタフェースのうちの２つが同時に検出される場合、優先インタフェースは最高順序番号を有するインタフェースに対応する。次に、ステップ２２０および２３０を実行させることができる。
【００２０】
図２は、２つ以上のアクティブＩｆｘの検出の場合のインタフェースの優先順序の代案を示している。テスト３００は、少なくとも２つの検出されたアクティブＩｆｘのグループ内での潜在的な競合の検出を明らかにするため使用される。グループ内に競合が存在しない場合、図１のステップ２４０を実行し、ステップ２２０および２３０を後に続けることができる。
【００２１】
潜在的な競合が検出されたアクティブＩｆｘのグループ内に存在する場合、別のインタフェースのグループが最終的な検出曖昧性を決定するため考慮され得るかどうかを決定するテスト３１０が実行される。クリアＩｆｘまたはクリアＩｆｘグループは、２つのインタフェースが検出されたけれども、同時に存在すべきでない場合に曖昧性を取り除くことができる１つのインタフェースまたはインタフェースのグループに対応する。少なくとも１つのインタフェースからなるクリアＩｆｘグループが存在する場合、前記グループ内の優先インタフェースを始動させるステップ３２０が実行される。次に、ステップ２２０および２３０が実行され、その他のアクティブＩｆｘが始動されることがある。
【００２２】
クリアＩｆｘが見つからない場合、ステップ３３０が実行される。ステップ３３０では、インタフェースのデフォルトグループに対応するアクティブＩｆｘが選別され、優先インタフェースがアクティブＩｆｘの前記選別の際に選択される。
【００２３】
図３は図１の別の変形例を対象とし、テスト２００によっていくつかのアクティブＩｆｘが検出された場合に、アクティブＩｆｘの選択が最適アクティブ化タイミングを取り扱う。互換性のあるインタフェースのグループの場合でさえ、各インタフェースは、それぞれの固有のタイミングおよび電力消費制約を有することがある。この変形例は、これらのインタフェースを最も制約の多い（最速起動時間が必要とされるか、または、より電力消費が少ない）インタフェースから最も制約の少ないインタフェースまで順序付けることにある。アクティブ化シーケンスステップ２４５がその後にステップ２４０の代わりに実行される。したがって、ステップ２４５において、最も制約の多いアクティブＩｆｘが始動され、次に、ステップ２２０が実行される。本変形例では、ステップ２３５は、他のアクティブＩｆｘを、最も制約の多いアクティブＩｆｘから最も制約の少ないアクティブＩｆｘまで１つずつ始動するためステップ２２０の後に実行される。互換性のあるアクティブＩｆｘだけが始動される。
【００２４】
これらの３つの図は、複数のピンを有し、リーダの対応した複数のピンに接続されることが意図されている携帯オブジェクト用の単一のブートシーケンス方法に要約できる。前記携帯オブジェクトは前記ピンに接続された少なくとも２つの通信インタフェースを有し、リーダは前記ピンに接続された１つ以上の通信インタフェースを有する。リーダの通信インタフェースは、カードによってサポートされるインタフェースより多数であるが、カードが可能性のあるインタフェース間の潜在的な競合を把握するような方法でカードによって見分けられるインタフェースのリストに含まれる。カードはリーダより多くのインタフェースを有することがあり、同様に競合の原因である前記カードのいくつかのインタフェースによって使用され得るピンを有することもある。カードは、リーダが有するインタフェースの種類を検出する検出手段を必ず備える。前記要約された方法は、以下のステップを含む：
ステップ１１０および２００と、同様にステップ３００および３１０とを再編成する決定ステップ。この決定ステップにおいて、カードの１つの選択されたインタフェースがリーダとの通信を開始するため決定される、
図の事例に応じて、ステップ１２０、２１０および２４０と、同様にステップ２４５、３２０および３３０とを再編成する第１の始動ステップ。第１の始動ステップでは、選択されたインタフェースがリーダとの通信のため始動される。この単独のインタフェースの始動は、潜在的な競合の大半を阻止し、検出誤りの場合に損害を被る可能性を低減する。図１から３に関連して示されているように、いくつかの実施が可能であり、カードのインタフェースにリンクされた潜在的な危険性に応じて選択できる、
ステップ１３０および２２０を再編成する第１のネゴシエーションステップ。第１のネゴシエーションステップでは、電力ネゴシエーションが互換性のある電力レンジを決定するためカードとリーダとの間で実行される。この電力レンジは、最小電圧および最大電圧と電流制限とを規定する。決定は、リーダの電力供給能力と、カード仕様とに依存する。このステップの後、電力は決定されたレンジの中の値に設定される、
ステップ１４０および２３０を再編成する第２のネゴシエーションステップ。この第２のネゴシエーションステップでは、ネゴシエーションは、同時にアクティブ化するインタフェースを決定するためカードとリーダとの間で実行される。このネゴシエーションはカードとリーダとの間のメッセージ交換を用いて行われる。考慮されるインタフェースはカードおよびリーダに実際に存在するすべてのインタフェースである。この決定は電力レンジおよび全ての存在し得る互換性問題をさらに考慮する。カードが同時に使用できる全てのインタフェースのリストは誤りなく定めることができる、
ステップ１５０および２３０を再構成する第２の始動ステップ。この第２の始動ステップでは、第２のネゴシエーションステップの間に決定されたインタフェースが次々に始動させられる。
【００２５】
今度は、ＩＳＯ、ＭＭＵ、ＵＳＢおよびＳＷＰプロトコルを装備したスマートカード関係する本発明の実際的な実施がより詳しく説明される。このようなインタフェースのピン接続の実施例は、たとえば、２００６年７月３１日に出願でされた欧州特許出願第０６２９１２４３．１号明細書に明らかにされている。
【００２６】
図４は、ＩＳＯ、ＭＭＣおよびＵＳＢだけを使用するカードを考慮する第１の実施例に対応する。ＭＭＣおよびＵＳＢはカード上で短絡されているので、したがって異なる互換性グループに含まれる。ＩＳＯ、ＭＭＣおよびＵＳＢは、すべてが１．８Ｖおよび３Ｖで動作できる。注意事項として、ＩＳＯクラスＢは３Ｖの電源に対応し、ＩＳＯクラスＣは１．８Ｖの電源に対応する。互換性グループは、その結果、ＩＳＯ−ＵＳＢ／３Ｖと、ＩＳＯ−ＵＳＢ／１．８Ｖと、ＩＳＯ−ＭＭＣ／３Ｖと、ＩＳＯ−ＭＭＣ／１．８Ｖとである。ＩＳＯはこれらのすべてのグループにおける共通インタフェースである。
【００２７】
図４は図２のフローチャートをそのまま実施する。その場合、ＵＳＢ／ＭＭＣ検出は信頼できないと考えられる。すなわち、リーダ内のインタフェースがどうであろうと、カードは前記インタフェースのうち実際にリーダ内に存在するインタフェースを検出できない。
【００２８】
ステップ１１０の共通インタフェースの識別は、ＩＳＯプロトコルインタフェース検出にある。ＩＳＯインタフェースが検出されない場合、ＵＳＢおよびＭＭＣの両方のインタフェースを検出したとみなされる。テスト２００、３００および３１０は、明瞭に識別することができるインタフェースを含まない２つのインタフェースが検出されたという暗黙の結果を有する。したがって、ステップ３３０が実行され、選択されるデフォルトのアクティブ化されたインタフェースはＵＳＢインタフェースである。電力ネゴシエーションは電力クラスＢまたはＣを決定するため行うことができる。
【００２９】
ＩＳＯが検出される場合、ＩＳＯはマスタＩｆｘである。電力ネゴシエーション１３０は、クラスＢ内だけで電力を位置決めするため行われる。カードは、たとえば、カードにおけるＮＡＮＤフラッシュの存在のため、電圧クラスＣを拒絶することがある。したがって、テスト１３１は、クラスがＢであるかどうかを確認し、Ｂでない場合、ステップ１３２はクラスＢを要求し、リーダとの第２のネゴシエーションを始動する前に電力変化を待つ。
【００３０】
ステップ１４０は、メッセージの交換に対応する２つのステップ１４１および１４２に分割される。ステップ１４１は、カードのいくつかの特徴を識別するカードの第１のメッセージに対応するＩＳＯ７８１６規格におけるＡＴＲメッセージ定義のカードによる送信である。このＡＴＲにおいて、カードは、ＵＳＢ互換性をリーダに知らせる。リーダがＵＳＢをサポートする場合、リーダは、同様にＩＳＯ７８１６規格によって定義されたメッセージＰＰＳ  Ｔ１５を送信する。カードがＰＰＳ  Ｔ１５メッセージを受信する場合、ＵＳＢはステップ１５１で始動される。ＰＰＳ  Ｔ１５メッセージが受信されない場合、カードのＭＭＣインタフェースはステップ１５２において始動される。
【００３１】
図５は、カードがＩＳＯ／ＭＭＣ／ＵＳＢ／ＳＷＰと完全に互換性がある第２の実施例に対応する。そのシナリオでは、ＵＳＢおよびＳＷＰはＭＭＣと同じピンに配線される。すべてのこれらのインタフェースは、３Ｖまたは１．８Ｖで動作できるので、互換性グループは、ＩＳＯ／ＵＳＢ／ＳＷＰ／クラスＢと、ＩＳＯ／ＵＳＢ／ＳＷＰ／クラスＣと、ＩＳＯ／ＭＭＣ／クラスＢと、ＩＳＯ／ＭＭＣ／クラスＣとである。
【００３２】
この場合も同様に、ＵＳＢ／ＭＭＣ検出メカニズムは信頼できないと考えられる。その上、ＳＷＰプロトコルは、消費およびタイミングに関して重大な制約を有する特定のバッテリオフモードを有する。グループＩＳＯ／ＵＳＢ／ＳＷＰにおいて、制約で順序付けられたグループは、ＳＷＰ−ＩＳＯ−ＵＳＢである。したがって、図２および図３は、図５の状態にするため組み合わされ、適合させられる。最後に、ＰＰＳ  Ｔ１５だけがＵＳＢを排除するが、曖昧性は、ＩＳＯ／ＳＷＰ対ＩＳＯ／ＭＭＣに残される。再度同様に、共通マスタインタフェースは、ＮＡＮＤフラッシュの存在のため、ＩＳＯが推進するアプリケーションに対する３Ｖを依然として拒絶する。
【００３３】
要約すると、ＩＳＯインタフェースが検出されない場合、ステップ２００において、ＳＷＰインタフェースが、ＳＷＰインタフェースのバッテリに関連した電力制約と共に検出される。状態が「バッテリオフ」である場合、電力は、ＳＷＰ以外のインタフェースのため十分でないので、ＳＷＰだけがステップ２４５において始動される。ＳＷＰが「バッテリオフ」状態でない場合、別のインタフェースを始動するため十分な電力が存在することを意味する。ＳＷＰが存在することを考慮すると、その他のインタフェースは必然的にＵＳＢインタフェースである。ＳＷＰインタフェースはステップ２４５において始動され、その後に、ＵＳＢがステップ２３５において始動される。
【００３４】
ＩＳＯインタフェースがリーダ内に存在する場合、ネゴシエーションが上述されているように実行される。しかし、カードが、テスト１４２において、ＵＳＢインタフェースが存在することを示し、ＳＷＰインタフェースであり得るが、ＭＭＣインタフェースを有する危険性はないというメッセージＰＰＳ  Ｔ１５を受信する場合、ＵＳＢインタフェースはステップ１５３で始動され、ＳＷＰインタフェースもまたステップ１５３で始動される。
【００３５】
リーダがテスト１４２において肯定的に応答しない場合、カードは、ステップ１５３でＳＷＰが存在するかどうかをチェックする。ＳＷＰインタフェースが存在する場合、ＳＷＰインタフェースはステップ１５５で始動され、さもなければ、ＭＭＣインタフェースがステップ１５６で始動される。
【図１】
0005431322.tif 000002
【図２】
0005431322.tif 000003
【図３】
0005431322.tif 000004
【図４】
0005431322.tif 000005
【図５】
0005431322.tif 000006