(57)【要約】本発明は、一連のカード識別処理においてリーダライタが通信相手を特定することができるとともに、カード所有者のプライバシーを保護することができる可能性を向上させる非接触カードを提供することを目的とする。非接触カード（２００）は、電力検出部（２０３）と、電力検出部（２０３）によって電力が供給されたことが検出された場合、都度、カード（２００）を特定するための識別子を決定する乱数ＩＤ生成部（２１０）と、決定された識別子を記憶するためのＩＤ記憶部（２０８１）と、カード（２００）を特定するための識別子をリーダライタ（１００）に送信することを要求する指示を受信する送受信回路（２０４）とを備え、送受信回路（２０４）は、１回目の前記指示を受信した場合、決定された識別子をリーダライタ（１００）に送信し、２回目以降の前記指示を受信した場合、記憶された識別子をリーダライタ（１００）に送信する。
2007538296.tif 000002
【特許請求の範囲】
【請求項１】
電力が供給された後にリーダライタと通信する非接触カードであって、
前記リーダライタと通信するための十分な電力を検出する電力検出部と、
前記電力検出部によって前記十分な電力が検出される場合、都度、前記非接触カードを特定するための識別子を決定する識別子決定部と、
前記識別子決定部によって決定された識別子を記憶するための決定識別子記憶部と、
前記リーダライタからの、前記非接触カードを特定するための識別子を前記リーダライタに送信することを要求する指示を受信する受信部と、
（ｉ）１回目の前記指示が前記受信部によって受信された場合、前記識別子決定部によって決定された識別子を前記リーダライタに送信し、（ｉｉ）２回目以降の前記指示が前記受信部によって受信された場合、前記決定識別子記憶部に記憶された識別子を前記リーダライタに送信する送信部と
を備える非接触カード。
【請求項２】
前記識別子決定部は、前記十分な電力が検出される都度、識別子を生成し、生成された識別子を、前記非接触カードを特定するための識別子と決定する
請求項１に記載の非接触カード。
【請求項３】
前記識別子決定部は、固定値の部分と乱数部分とにより構成される識別子を生成する
請求項２に記載の非接触カード。
【請求項４】
更に、識別子の候補を複数記憶する候補識別子記憶部を備え、
前記識別子決定部は、前記電力検出部によって前記十分な電力が検出される都度、前記候補識別子記憶部によって記憶されている複数の前記識別子の候補の何れか一つを選択し、選択された識別子の候補を、前記非接触カードを特定するための識別子と決定する
請求項１に記載の非接触カード。
【請求項５】
前記識別子決定部は、乱数を用いて識別子を決定する
請求項１に記載の非接触カード。
【請求項６】
更に、前記受信部及び前記送信部と前記リーダライタとの通信の終了を検出する通信終了検出部を備え、
前記通信終了検出部が前記通信の終了を検出した場合、前記識別子決定部は新たな識別子を決定し、前記決定識別子記憶部は前記新たな識別子を記憶する
請求項１に記載の非接触カード。
【請求項７】
前記リーダライタと前記非接触カードとの通信は、ＩＳＯ／ＩＥＣ１４４４３に基づいて行なわれ、
前記送信部によって送信される識別子は、前記リーダライタから前記非接触カードへ送信されるリクエストコマンドに対する応答における、Ｐｓｅｕｄｏ−Ｕｎｉｑｕｅ  Ｐｒｏｘｉｍｉｔｙ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ  Ｃａｒｄ  Ｉｄｅｎｔｉｆｉｅｒとして設定される
請求項１に記載の非接触カード。
【請求項８】
更に、
前記非接触カードの動作を示す動作モードを判定するモード判定部と、
無秩序に識別子を生成する無秩序識別子生成部と、
特定の識別子を生成する特定識別子生成部とを備え、
前記識別子決定部は、前記モード判定部により得られる判定結果に基づいて、前記無秩序識別子生成部により生成される識別子と、前記特定識別子生成部により生成される識別子との何れか一方を、前記非接触カードを特定するための識別子と決定する
請求項１に記載の非接触カード。
【請求項９】
前記動作モードは、前記非接触カードが検査工程にあることを示す検査モードと、前記非接触カードが一般のユーザによって使用される環境にあることを示す使用モードとを含み、
前記識別子決定部は、（ｉ）前記検査モードにおいては、前記特定識別子生成部により生成される識別子を、前記非接触カードを特定するための識別子と決定し、（ｉｉ）前記運用モードにおいては、前記無秩序識別子生成部により生成される識別子を、前記非接触カードを特定するための識別子と決定する
請求項８に記載の非接触カード。
【請求項１０】
前記特定識別子生成部は、情報を書き換えることができないＲｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙに記載されている情報に基づいて、識別子を生成する
請求項８に記載の非接触カード。
【請求項１１】
前記特定識別子生成部は、情報を書き換えることができる不揮発メモリに記載されている情報に基づいて、識別子を生成する
請求項８に記載の非接触カード。
【請求項１２】
前記不揮発メモリは、Ｅｌｅｃｔｒｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ、Ｆｅｒｒｏｅｌｅｃｔｒｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ、Ｍａｇｎｅｔｏｒｅｓｉｓｔｉｖｅ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ、又は、Ｏｖｏｎｉｃ  Ｕｎｉｆｉｅｄ  ｍｅｍｏｒｙである
請求項１１に記載の非接触カード。
【請求項１３】
電力が供給された後にリーダライタと通信する非接触カードが識別子を送信する場合の通信方法であって、
前記リーダライタと通信するための十分な電力を検出し、
前記電力を検出する際において前記十分な電力を検出する場合、都度、前記非接触カードを特定するための識別子を決定し、
決定した識別子を記憶部に記憶させ、
前記リーダライタからの、前記非接触カードを特定するための識別子を前記リーダライタに送信することを要求する指示を受信し、
（ｉ）１回目の前記指示を受信した場合、決定した識別子を前記リーダライタに送信し、（ｉｉ）２回目以降の前記指示を受信した場合、前記記憶部に記憶された識別子を前記リーダライタに送信する
非接触カードによる識別子の通信方法。
【請求項１４】
電力が供給された後にリーダライタと通信する非接触カードにおける集積回路であって、
前記リーダライタと通信するための十分な電力を検出する電力検出部と、
前記電力検出部によって前記十分な電力が検出される場合、都度、前記非接触カードを特定するための識別子を決定する識別子決定部と、
前記識別子決定部によって決定された識別子を記憶するための決定識別子記憶部と、
前記リーダライタからの、前記非接触カードを特定するための識別子を前記リーダライタに送信することを要求する指示を受信する受信部と、
（ｉ）１回目の前記指示が前記受信部によって受信された場合、前記識別子決定部によって決定された識別子を前記リーダライタに送信し、（ｉｉ）２回目以降の前記指示が前記受信部によって受信された場合、前記決定識別子記憶部に記憶された識別子を前記リーダライタに送信する送信部と
を備える集積回路。
【請求項１５】
電力が供給された後にリーダライタと通信する非接触カードの識別子を送信するためのプログラムであって、
前記リーダライタと通信するための十分な電力を検出し、
前記電力を検出する際において前記十分な電力を検出する場合、都度、前記非接触カードを特定するための識別子を決定し、
決定した識別子を記憶部に記憶させ、
前記リーダライタからの、前記非接触カードを特定するための識別子を前記リーダライタに送信することを要求する指示を受信し、
（ｉ）１回目の前記指示を受信した場合、決定した識別子を前記リーダライタに送信し、（ｉｉ）２回目以降の前記指示を受信した場合、前記記憶部に記憶された識別子を前記リーダライタに送信すること
をコンピュータに実行させるためのプログラム。
【請求項１６】
電力が供給された後にリーダライタと通信する非接触カードの識別子を送信するためのプログラムが格納された記憶媒体であって、
前記リーダライタと通信するための十分な電力を検出し、
前記電力を検出する際において前記十分な電力を検出する場合、都度、前記非接触カードを特定するための識別子を決定し、
決定した識別子を記憶部に記憶させ、
前記リーダライタからの、前記非接触カードを特定するための識別子を前記リーダライタに送信することを要求する指示を受信し、
（ｉ）１回目の前記指示を受信した場合、決定した識別子を前記リーダライタに送信し、（ｉｉ）２回目以降の前記指示を受信した場合、前記記憶部に記憶された識別子を前記リーダライタに送信すること
をコンピュータに実行させるためのプログラムが格納された記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、リーダライタと無線により通信する非接触カードに関する。
【背景技術】
【０００２】
従来、電磁誘導方式等を用いてデータを送受信する非接触カードとその非接触カードを認識するリーダライタとの間の通信には、タイムスロット方式が採用されている。複数の非接触カードがリーダライタの通信エリア内に同時に存在し、リーダライタによるポーリングに対して、複数の非接触カードが同時に応答信号を送信した場合、複数の応答信号が衝突することにより、何れの非接触カードもリーダライタと正常に通信することができなくなる。タイムスロット方式は、このような状況が発生することを防止する。
【０００３】
タイムスロット方式による通信を以下に説明する。
【０００４】
（１）リーダライタは、非接触カードの存在を検出するため、リクエストコマンドを送信する。リクエストコマンドには、非接触カードが初期応答を行なうことが可能な期間（タイムスロット）の数である「スロット数」が含まれる。
【０００５】
（２）非接触カードは、リクエストコマンドを受信した後、何れかのタイムスロットで、カードＩＤを含む初期応答を返す。非接触カードは、初期応答を行なうタイムスロットを自ら決定する。
【０００６】
（３）リーダライタは、初期応答の衝突を検出した場合、リクエストコマンドを再度送信する。これにより、タイムスロットは新規に開始する。
【０００７】
（４）リーダライタは、何れのタイムスロットにおいても初期応答の衝突を検出しない場合、全ての非接触カードを認識することができる。これにより、カード識別処理は完了する。
【０００８】
リーダライタが非接触カードを識別する方法として、初期応答を行なうことができるタイミングをリーダライタが通知するスロットマーカ方式も存在する。この方式においても、非接触カードは、初期応答を行なうタイムスロットを自ら決定する。
【０００９】
リーダライタが各非接触カードを識別するためには、各非接触カードが他の非接触カードと区別することができるカードＩＤを使用する必要がある。リーダライタは、カードＩＤを使用して通信相手の非接触カードを特定する。このような方式は、ＩＳＯ／ＩＥＣ１４４４３−３（ＴｙｐｅＢ  初期化アンチコリジョン仕様）により規格化されている。
【発明の開示】
【００１０】
しかしながら従来は、各非接触カードに、特定の値を記憶しているＲｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ（ＲＯＭ）が搭載されており、その値がカードＩＤとして用いられている。そのため、非接触カードが初期応答を行なう際に用いるカードＩＤが、その非接触カードを所有する人（以下、「カード所有者」という）を特定する識別子と推定され、カード所有者のプライバシーが侵害される可能性がある。
【００１１】
非接触カードは、リーダライタから送信されるリクエストコマンドに対して、カードＩＤを含む初期応答を返す。異なる場所に設けられている複数のリーダライタにより初期応答を記録し、その記録を解析することにより、カード所有者の行動範囲及び行動時間を特定することできる。そのため、同じカードＩＤが常に使用されると、そのカードＩＤを使用する非接触カードの所有者の行動が特定され、そのカード所有者のプライバシーが侵害される可能性がある。
【００１２】
このような問題に対処するために、リーダライタから送信されるリクエストコマンドを受け取った非接触カードが、リクエストコマンド毎にカードＩＤを変更して初期応答を行なう、という方法が考えられる。しかしながら、カードＩＤがリクエストコマンド毎に変更されると、リーダライタは、特定のカードＩＤを使用する非接触カードと通信することができない。一連のカード識別処理においては、非接触カードが同一のカードＩＤを使用すること、が要求される。“一連のカード識別処理”とは、リーダライタが、非接触カードに最初にリクエストコマンドを送信してから、非接触カードを識別するまで、の処理を意味する。
【００１３】
本発明は、上記課題を考慮し、一連のカード識別処理においてリーダライタが通信相手を特定することができるとともに、カード所有者のプライバシーを保護することができる可能性を向上させる非接触カードを提供することを目的とする。
【００１４】
上記目的を達成するために、本発明の非接触カードは、電力が供給された後にリーダライタと通信する非接触カードであって、前記リーダライタと通信するための十分な電力を検出する電力検出部と、前記電力検出部によって前記十分な電力が検出される場合、都度、前記非接触カードを特定するための識別子を決定する識別子決定部と、前記識別子決定部によって決定された識別子を記憶するための決定識別子記憶部と、前記リーダライタからの、前記非接触カードを特定するための識別子を前記リーダライタに送信することを要求する指示を受信する受信部と、（ｉ）１回目の前記指示が前記受信部によって受信された場合、前記識別子決定部によって決定された識別子を前記リーダライタに送信し、（ｉｉ）２回目以降の前記指示が前記受信部によって受信された場合、前記決定識別子記憶部に記憶された識別子を前記リーダライタに送信する送信部とを備える。ここで、「前記リーダライタと通信するための十分な電力を検出すること」とは、電力が供給されたことを検出することを意味する。また、「前記電力検出部によって前記十分な電力が検出される場合」とは、前記電力検出部によって電力が供給されたことが検出される場合を意味する。
【００１５】
前記識別子決定部は、前記電力検出部によって前記十分な電力が検出される場合、都度、前記非接触カードを特定するための識別子を決定する。これにより、前記電力検出部が前記十分な電力を検出する毎に、他者が予測することができない識別子が決定される可能性が高くなる。したがって、本発明の非接触カードが使用する識別子を記録して解析しても、カード所有者の行動を特定することは困難である。すなわち、本発明の非接触カードは、カード所有者のプライバシーを保護することができる可能性を向上させる。
【００１６】
また、前記送信部は、決定された識別子、又はそれと同じ識別子である、前記決定識別子記憶部に記憶された識別子を送信する。これにより、リーダライタは、通信相手が本発明の非接触カードであるということを判断して通信することができる。
【００１７】
前記識別子決定部は、前記電力検出部によって前記十分な電力が検出される都度、識別子を生成し、生成された識別子を、前記非接触カードを特定するための識別子と決定してもよい。
【００１８】
前記識別子決定部は、固定値の部分と乱数部分とにより構成される識別子を生成してもよい。これにより、本発明の非接触カードの識別子の固定値の部分に、カードの発行者のＩＤや、サービスの種別等を含めることができる。乱数部分により本発明の目的を達成することができる。そのため、リーダライタは、固定値の部分の識別子をチェックすることでカードの情報を取得することができる。また、カード所有者の行動が特定されることを防止することができる。
【００１９】
本発明の非接触カードは、更に、識別子の候補を複数記憶する候補識別子記憶部を備え、前記識別子決定部は、前記電力検出部によって前記十分な電力が検出される都度、前記候補識別子記憶部によって記憶されている複数の前記識別子の候補の何れか一つを選択し、選択された識別子の候補を、前記非接触カードを特定するための識別子と決定してもよい。
【００２０】
前記識別子決定部は、乱数を用いて識別子を決定する。このように、識別子が乱数を用いて決定されると、他者は、決定された識別子を推測することができない。他者は、次回に決定される識別子を推測することもできない。
【００２１】
本発明の非接触カードは、更に、前記受信部及び前記送信部と前記リーダライタとの通信の終了を検出する通信終了検出部を備え、前記通信終了検出部が前記通信の終了を検出した場合、前記識別子決定部は新たな識別子を決定し、前記決定識別子記憶部は前記新たな識別子を記憶してもよい。
【００２２】
リーダライタは、非接触カードとの通信が終了すると、その後の通信では、そのカードを別のカードと見なすことができる。そのため、非接触カードが自身の識別子を変更することが可能である。これにより、カード所有者の行動が特定されることを防止することができる可能性を更に向上させることができる。
【００２３】
前記リーダライタと前記非接触カードとの通信は、ＩＳＯ／ＩＥＣ１４４４３に基づいて行なわれ、前記送信部によって送信される識別子は、前記リーダライタから前記非接触カードへ送信されるリクエストコマンドに対する応答における、Ｐｓｅｕｄｏ−Ｕｎｉｑｕｅ  Ｐｒｏｘｉｍｉｔｙ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ  Ｃａｒｄ（ＰＩＣＣ）  Ｉｄｅｎｔｉｆｉｅｒとして設定される。
【００２４】
本発明の非接触カードは、更に、前記非接触カードの動作を示す動作モードを判定するモード判定部と、無秩序に識別子を生成する無秩序識別子生成部と、特定の識別子を生成する特定識別子生成部とを備え、前記識別子決定部は、前記モード判定部により得られる判定結果に基づいて、前記無秩序識別子生成部により生成される識別子と、前記特定識別子生成部により生成される識別子との何れか一方を、前記非接触カードを特定するための識別子と決定してもよい。
【００２５】
本発明の非接触カードは、動作モードに応じて識別子を決定する。その結果、カード所有者がプライバシーを気にしない場合、特定の識別子（固定の識別子等）を用いることにより、カード所有者は、特別なサービスを受けることができる。逆に、カード所有者がプライバシーを気にする場合、無秩序に生成される識別子を用いることにより、カード所有者の利便性の向上を図ることができる。
【００２６】
前記動作モードは、前記非接触カードが検査工程にあることを示す検査モードと、前記非接触カードが一般のユーザによって使用される環境にあることを示す使用モードとを含み、前記識別子決定部は、（ｉ）前記検査モードにおいては、前記特定識別子生成部により生成される識別子を、前記非接触カードを特定するための識別子と決定し、（ｉｉ）前記運用モードにおいては、前記無秩序識別子生成部により生成される識別子を、前記非接触カードを特定するための識別子と決定してもよい。
【００２７】
本発明の非接触カードを用いると、検査工程において、非接触の通信によりテストすることが可能な環境では、検査機は、特定の識別子を用いることができる。また、検査機は、非接触カードからの応答に含まれる識別子をパターンとして保持することができる。これにより、識別子に関する計算を行なう必要がなくなる。その結果、検査の効率が向上する。他方、非接触カードの使用時には、無秩序に生成された識別子が使用されるので、カード所有者のプライバシーを保護することができる。
【００２８】
また、本発明の非接触カードを用いると、検査機は、テストパターンを事前に用意することが可能である。
【００２９】
前記特定識別子生成部は、情報を書き換えることができないＲｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙに記載されている情報に基づいて、識別子を生成してもよい。
【００３０】
前記特定識別子生成部は、情報を書き換えることができる不揮発メモリに記載されている情報に基づいて、識別子を生成してもよい。前記不揮発メモリは、Ｅｌｅｃｔｒｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ、Ｆｅｒｒｏｅｌｅｃｔｒｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ、Ｍａｇｎｅｔｏｒｅｓｉｓｔｉｖｅ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ、又は、Ｏｖｏｎｉｃ  Ｕｎｉｆｉｅｄ  ｍｅｍｏｒｙである。
【００３１】
上述したように、本発明は、一連のカード識別処理においてリーダライタが通信相手を特定することができるとともに、カード所有者のプライバシーを保護することができる可能性を向上させる非接触カードを提供することができる。
【００３２】
更に、本発明は、本発明の非接触カードの特徴的な構成部をステップとする方法として実現したり、それらのステップをコンピュータに実行させるプログラムとして実現したり、そのプログラムが格納された、ＣＤ−ＲＯＭ等の記憶媒体として実現したり、集積回路として実現することもできる。プログラムは、通信ネットワーク等の伝送媒体を介して流通させることもできる。
【００３３】
明細書、図面、及び特許請求の範囲を含む、２００４年４月１４日にされた出願番号２００４−１１８８０７号の日本特許出願により開示されている事項は、そっくりそのまま引用されている。
【発明を実施するための最良の形態】
【００３４】
以下に、本発明を実施するための最良の形態について、図面を参照して説明する。
ＩＳＯ／ＩＥＣ１４４４３−３（ＴｙｐｅＢ  初期化アンチコリジョン仕様）に基づいてリーダライタと通信する非接触カードについての実施の形態を説明する。ＩＳＯ／ＩＥＣ１４４４３−３（ＴｙｐｅＢ  初期化アンチコリジョン仕様）は、例えば、公共交通機関の改札ゲート等で適用される通信規約の一つである。図１を参照して、乗車券としての機能を有する非接触カード２００及び非接触カード３００が、改札ゲートとして機能するリーダライタ１００に、同時に接近してきた場合を想定する。
【００３５】
ＩＳＯ／ＩＥＣ１４４４３−３（ＴｙｐｅＢ  初期化アンチコリジョン仕様）において、非接触カードは以下の手順により識別される。
【００３６】
先ず、改札ゲートであるリーダライタ１００がリクエストコマンドを送信する。リクエストコマンドは図２に示されるフォーマットの信号である。タイムスロット数（Ｎ）は、リクエストコマンドに含まれる“ＰＡＲＭ”の“ｂｉｔ１（図２の“ｂ１”）”から“ｂｉｔ３（図２の“ｂ３”）”の３ｂｉｔにおいて特定される。特定されたタイムスロット数（Ｎ）は、非接触カード２００及び非接触カード３００に通知される。非接触カード２００及び非接触カード３００は、タイムスロット１からＮまでの何れかで初期応答を行なう。
【００３７】
以下では、タイムスロット数（Ｎ）が“４”である場合を想定する。すなわち、非接触カード２００及び非接触カード３００は、リクエストコマンドに対して、タイムスロット１から４までの何れか一つのタイムスロットを選択し、選択したタイムスロットで初期応答を行なう。
【００３８】
初期応答は図３に示されるフォーマットの信号である。初期応答には、非接触カードを識別するためのカードＩＤ（ＰＵＰＩ）と、非接触カードに搭載されているアプリケーションの情報をリーダライタ１００に通知するためのＡＰＰ  Ｄａｔａと、リーダライタ１００と通信する際のプロトコルをリーダライタ１００に通知するためのＰｒｏｔｏｃｏｌ  Ｉｎｆとが含まれる。非接触カード２００及び非接触カード３００は、カードＩＤ（ＰＵＰＩ）と、ＡＰＰ  Ｄａｔａと、Ｐｒｏｔｏｃｏｌ  Ｉｎｆとを設定して、リーダライタ１００に初期応答を行なう。
【００３９】
リーダライタ１００は、非接触カード２００及び非接触カード３００からの初期応答を受信すると、受信した初期応答のＣＲＣの値等を参照し、初期応答の衝突が発生しているか否かを判定する。
【００４０】
図４の１回目のカード識別処理において、リーダライタ１００は、リクエストコマンドＲ１を送信する。リクエストコマンドＲ１に対して、非接触カード２００も非接触カード３００も、タイムスロット２において初期応答を行なう。すなわち、同一のタイミングであるタイムスロット２において、非接触カード２００は初期応答Ａ２１を行ない、非接触カード３００は初期応答Ａ３１を行なう。そのため、リーダライタ１００は、初期応答の衝突が発生していることを検出する。したがって、カード識別処理が再度行なわれる。
【００４１】
２回目のカード識別処理において、リーダライタ１００は、リクエストコマンドＲ２を送信する。リクエストコマンドＲ２に対して、非接触カード２００はタイムスロット３において初期応答Ａ２２を行ない、非接触カード３００はタイムスロット２において初期応答Ａ３２を行なう。すなわち、非接触カード２００と非接触カード３００とは、異なるタイムスロットにおいて初期応答を行なう。この場合、リーダライタ１００は、初期応答の衝突が発生していることを検出しない。そのため、リーダライタ１００は、非接触カード２００及び非接触カード３００を識別することができる。これにより、カード識別処理は完了する。
【００４２】
本明細書では、リーダライタが非接触カードに最初にリクエストコマンドを送信してからその非接触カードを識別するまで、の処理を“一連のカード識別処理”と定義する。したがって、図４に示す例では、１回目のカード識別処理と２回目のカード識別処理とが、“一連のカード識別処理”を構成する。
【００４３】
“一連のカード識別処理”が終了すると、非接触カード２００と非接触カード３００とは、リーダライタ１００を介して、実体的なデータを通信する。図５は、“一連のカード識別処理”と、実体的なデータの通信とを示す図である。
【００４４】
非接触カード２００及び非接触カード３００がリーダライタ１００から所定の距離範囲内に同時に位置し、非接触カード２００及び非接触カード３００に電力が供給されると（図５の“Ｐｏｗｅｒ  Ｏｎ”参照）、通信開始時における一連のカード識別処理が行なわれる。
【００４５】
通信開始時における一連のカード識別処理が終了した後、非接触カード２００と非接触カード３００とは、リーダライタ１００を介して、実体的なデータを通信する。
【００４６】
実体的なデータの通信が行なわれた後、通信終了時における一連の処理が行なわれる。その処理では、リーダライタ１００は、個々のカードに対して、通信の終了を意味するＤｅｓｅｌｅｃｔコマンドを送信する。
【００４７】
なお、図１に示すように、非接触カード２００及び非接触カード３００がリーダライタ１００に同時に接近する例として、以下に示す場合を想定することもできる。それは、非接触カード２００が、非接触カード２００の所有者の名前が格納されているマスターカードであって、非接触カード３００内のメモリにそのカード所有者の名前を複製する目的で、非接触カード２００及び非接触カード３００がリーダライタ１００に同時に接近する、という場合である。
【００４８】
以下では、説明の簡単化のために、リーダライタ１００が最初にリクエストコマンドを送信してから非接触カード２００を識別するまでの、“一連のカード識別処理”について説明する。
【００４９】
（実施の形態１）
図６は、実施の形態１のリーダライタ１００及び非接触カード２００の構成を示す図である。
【００５０】
リーダライタ１００は、アンテナ１０１と、送受信回路１０２と、中央演算処理装置（ＣＰＵ）１０３と、メモリ１０４とを有する。メモリ１０４は、ＣＰＵ１０３が実行するプログラムが格納されているとともに、プログラムの実行時にデータを格納する格納部として使用される。メモリ１０４は、例えば、情報を書き換えることが可能な不揮発メモリにより実現されてもよいし、情報を書き換えることができない、プログラムやデータを格納するＲＯＭと、プログラムの実行時に一時的な作業領域として使用されるＲＡＭとにより実現されてもよい。
【００５１】
非接触カード２００は、アンテナ２０１と、蓄電部２０２と、電力検出部２０３と、送受信回路２０４と、中央演算処理装置（ＣＰＵ）２０５と、ＲＡＭ２０８と、ＲＯＭ２０７とを有する。蓄電部２０２は、非接触カード２００がリーダライタ１００からの所定の距離範囲内に位置するときに誘導起電力により電力を蓄積する。電力検出部２０３は、送受信回路２０４がリーダライタ１００と通信するための十分な電力を検出する。すなわち、電力検出部２０３は、電力が供給されたことを検出する。更に言い換えると、電力検出部２０３は、蓄電部２０２が電力を蓄積したことを検出する。
【００５２】
ＲＯＭ２０７は、リーダライタ１００からのコマンドを処理するためのプログラムが格納されているとともに、プログラムの実行時に処理データを格納する格納部として使用される。処理データには、格納対象のデータが含まれる。ＲＡＭ２０８は、例えば、情報を書き換えることが可能な不揮発メモリにより実現される。
【００５３】
ＲＯＭ２０７には、乱数を用いてカードＩＤを生成するための乱数ＩＤ生成プログラム２１０Ａが格納されている。ＲＡＭ２０８は、乱数ＩＤ生成プログラム２１０ＡがＣＰＵ２０５によって実行されることにより生成されたカードＩＤを記憶する。また、ＲＡＭ２０８は、“一連のカード識別処理”において、送受信回路２０４が受け取ったリクエストコマンドが最初のリクエストコマンドであるか否かを示す初回リクエスト判定フラグを記憶する。
【００５４】
また、ＲＯＭ２０７には、“一連のカード識別処理”において、送受信回路２０４が受け取ったリクエストコマンドが最初のリクエストコマンドであるか否かを判定するための初回リクエスト判定プログラム２１１Ａが格納されている。更に、ＲＯＭ２０７には、ＲＡＭ２０８に記憶されるカードＩＤを抽出するための抽出プログラム２１２Ａが格納されている。
【００５５】
ＲＯＭ２０７に格納されている、乱数ＩＤ生成プログラム２１０Ａ、初回リクエスト判定プログラム２１１Ａ、及び抽出プログラム２１２Ａは、ＣＰＵ２０５によって実行される。
【００５６】
図７は、図６に示す非接触カード２００の内部の構成を機能的に示す図である。以下の説明では図７を用いる。乱数ＩＤ生成部２１０の機能は、ＣＰＵ２０５が乱数ＩＤ生成プログラム２１０Ａを実行することによって実現される。初回リクエスト判定部２１１の機能は、ＣＰＵ２０５が初回リクエスト判定プログラム２１１Ａを実行することによって実現される。抽出部２１２の機能は、ＣＰＵ２０５が抽出プログラム２１２Ａを実行することによって実現される。
【００５７】
乱数ＩＤ生成部２１０、初回リクエスト判定部２１１、及び抽出部２１２の全部又は一部は、ソフトウェアにより実現されてもよいし、専用のハードウェアにより実現されてもよい。
【００５８】
乱数ＩＤ生成部２１０は、本発明の非接触カードの識別子決定部の一例である。
ＩＤ記憶部２０８１は、ＲＡＭ２０８のカードＩＤが記憶される領域である。初回リクエスト判定フラグ記憶部２０８２は、ＲＡＭ２０８の初回リクエスト判定フラグが記憶される領域である。
【００５９】
初回リクエスト判定フラグには、蓄電部２０２が電力を蓄積するまでは、初期値、例えば“０”が設定される。蓄電部２０２が電力を蓄積した時以降であって、“一連のカード識別処理”において、送受信回路２０４がリクエストコマンドを最初に受け取ったときに、初回リクエスト判定フラグには、初期値と異なる値、例えば“１”が設定される。初回リクエスト判定フラグに、初期値と異なる値、例えば“１”が設定されている場合、送受信回路２０４がリクエストコマンドを受け取ったとき、そのリクエストコマンドは、“一連のカード識別処理”において、２回目以降のリクエストコマンドであることを意味する。
【００６０】
初回リクエスト判定部２１１が、初回リクエスト判定フラグの値を変更する。
図８は、非接触カード２００がカードＩＤを含む初期応答を行なう場合の各手順を示すフローチャートである。
【００６１】
ここで、蓄電部２０２が電力を蓄積したことを電力検出部２０３が検出した場合を想定する。
【００６２】
送受信回路２０４がリーダライタ１００からリクエストコマンドを受信すると（Ｓ２０１）、初回リクエスト判定部２１１は、初回リクエスト判定フラグ記憶部２０８２に記憶されている初回リクエスト判定フラグを抽出する（Ｓ２０２）。初回リクエスト判定部２１１は、抽出した初回リクエスト判定フラグの値に基づいて、送受信回路２０４によって受信されたリクエストコマンドが初回のリクエストコマンドであるか否かを判定する（Ｓ２０３）。初回リクエスト判定フラグの値が初期値、例えば“０”である場合、初回リクエスト判定部２１１は、受信されたリクエストコマンドが初回のリクエストコマンドであると判定する。他方、初回リクエスト判定フラグの値が初期値と異なる値、例えば“１”である場合、初回リクエスト判定部２１１は、受信されたリクエストコマンドが初回のリクエストコマンドではないと判定する。つまり、初回リクエスト判定部２１１は、受信されたリクエストコマンドが２回目以降のリクエストコマンドであると判定する。
【００６３】
受信されたリクエストコマンドが初回のリクエストコマンドであると初回リクエスト判定部２１１によって判定された場合（Ｓ２０３でＹｅｓ）、乱数ＩＤ生成部２１０は、乱数を用いてカードＩＤを生成する（Ｓ２０４）。カードＩＤは乱数が用いられて生成されるので、他者はカードＩＤを推測することは困難である。他者は、次回に生成されるカードＩＤを推測することも困難である。乱数ＩＤ生成部２１０は、乱数を用いた計算によりカードＩＤを生成してもよいし、所定の乱数の列を利用してカードＩＤを生成してもよい。要するに、乱数ＩＤ生成部２１０は、他者がカードＩＤを推測することができないように、乱数を用いてカードＩＤを生成する。乱数ＩＤ生成部２１０は、生成したカードＩＤをＩＤ記憶部２０８１に格納する（Ｓ２０５）。
【００６４】
初回リクエスト判定部２１１は、初回リクエスト判定フラグ記憶部２０８２に記憶されている初回リクエスト判定フラグの値を、初期値からそれと異なる値、例えば“１”に変更する（Ｓ２０６）。その変更は、一連のカード識別処理において、同一のカードＩＤを使用させるために行なわれる。
【００６５】
抽出部２１２は、ＩＤ記憶部２０８１に格納されているカードＩＤを抽出する（Ｓ２０７）。送受信回路２０４は、抽出されたカードＩＤを含む初期応答をリーダライタ１００に送信する。
【００６６】
他方、送受信回路２０４によって受信されたリクエストコマンドが初回のリクエストコマンドではないと初回リクエスト判定部２１１によって判定された場合（Ｓ２０３でＮｏ）、抽出部２１２は、ＩＤ記憶部２０８１に格納されているカードＩＤを抽出する（Ｓ２０７）。送受信回路２０４は、抽出されたカードＩＤを含む初期応答をリーダライタ１００に送信する（Ｓ２０８）。
【００６７】
すなわち、送受信回路２０４によって受信されたリクエストコマンドが２回目以降のリクエストコマンドである場合も、送受信回路２０４は、受信されたリクエストコマンドが初回のリクエストコマンドである場合に送信するカードＩＤと同一のカードＩＤをリーダライタ１００に送信する。
【００６８】
上述したように、実施の形態１では、非接触カード２００は、一連のカード識別処理において、受信したリクエストコマンドが初回のリクエストコマンドである場合であっても、２回目以降のリクエストコマンドである場合であっても、同一のカードＩＤを含む初期応答をリーダライタ１００に送信する。これにより、リーダライタ１００は、通信相手が非接触カード２００であることを判断して通信することができる。
【００６９】
また、非接触カード２００は、電力が供給される毎に、乱数を用いてカードＩＤを生成する。そのため、他者は、非接触カード２００が生成するカードＩＤを推測することは困難である。図９は、（１）非接触カード２００が、電力が供給される毎に、異なるカードＩＤを生成して初期応答を行ない、（２）一連のカード識別処理においては、非接触カード２００が同一のカードＩＤを含む初期応答をリーダライタ１００に送信する、ことを示す図である。
【００７０】
図９に示すように、非接触カード２００は、電力が供給される毎に、最初のリクエストコマンドを受信すると、他者が推測することが困難なカードＩＤを用いて初期応答を行なう。これにより、リーダライタ１００に初期応答が記録され、その記録が解析されても、非接触カード２００の所有者の行動範囲及び行動時間が推定される可能性は低い。その結果、非接触カード２００の所有者のプライバシーを保護することができる。
【００７１】
更に、図１０に示すように、非接触カード２００は、乱数ＩＤ生成部２１０の代わりに、複数のカードＩＤの候補を記憶しているＩＤ候補記憶部２３０と、ＩＤ選択部２３１とを有する非接触カード２００Ａに置き換えられてもよい。受信されたリクエストコマンドが初回のリクエストコマンドであると初回リクエスト判定部２１１によって判定された場合、ＩＤ選択部２３１は、ＩＤ候補記憶部２３０に記憶されている複数のカードＩＤの候補の何れか一つを選択して抽出し、抽出したカードＩＤをＩＤ記憶部２０８１に格納する。この場合、複数のカードＩＤの候補が十分に秘匿されていれば、乱数ＩＤ生成部２１０が乱数を用いてカードＩＤを生成する場合と同様に、非接触カード２００の所有者のプライバシーを保護することができる。
【００７２】
（実施の形態２）
図１１は、実施の形態２における、製造途中の非接触カード２００Ｂの様子を示す図である。非接触カード２００Ｂは、製造途中では、検査部２５１と一体化されており、製品となる直前に検査部２５１と分離される。製造途中の検査工程において、複数の非接触カード２００Ｂそれぞれが有するメモリを一括して初期化する場合等、リーダライタ１００が複数の非接触カード２００Ｂと同時に通信することが求められる場合がある。その場合、全ての非接触カード２００Ｂは、所定のカードＩＤ（以下、「固定のカードＩＤ」という。）を含む初期応答を行なわなければならない。他方、製品となった非接触カード２００Ｂは、固定のカードＩＤを含む初期応答を行なうことは許されない。なぜなら、リーダライタ１００が通信相手を判断する必要があるからである。また、カード所有者のプライバシーを保護する必要があるからである。
【００７３】
したがって、非接触カード２００Ｂは、固定のカードＩＤを生成しなければならないのか、固定ではないカードＩＤを生成しなければならないのかを、判定しなければならない。
【００７４】
そのために、実施の形態２の非接触カード２００Ｂは、実施の形態１において説明した非接触カード２００が有する機能に加えて、固定のカードＩＤを生成すべきなのか、固定ではないカードＩＤを生成すべきなのかを判定する機能を有する。以下では、非接触カード２００Ｂと非接触カード２００との相違点を中心に説明する。なお、図１１に示すように、非接触カード２００Ｂは電圧測定部２５０を有する。実施の形態２では、非接触カード２００Ｂが製造途中にある場合、非接触カード２００Ｂと検査部２５１とが一体化されており、非接触カード２００Ｂと検査部２５１とを接続する配線が存在し、電圧測定部２５０によって０Ｖの電圧値が得られる。他方、非接触カード２００Ｂが製品として使用されている場合、非接触カード２００Ｂと検査部２５１とは分離し、非接触カード２００Ｂと検査部２５１とを接続する配線が断線しており、電圧測定部２５０によって電圧値Ｖ０（例えば、５Ｖ）が得られる。
【００７５】
図１２は、実施の形態２の非接触カード２００Ｂの構成を示す図である。非接触カード２００Ｂは、実施の形態１の非接触カード２００と同様に、アンテナ２０１と、蓄電部２０２と、電力検出部２０３と、送受信回路２０４と、ＣＰＵ２０５と、ＲＯＭ２０７Ａと、ＲＡＭ２０８Ａとを有し、更に、電圧測定部２５０を有する。
【００７６】
ＲＯＭ２０７Ａには、乱数ＩＤ生成プログラム２１０Ａと、初回リクエスト判定プログラム２１１Ａと、抽出プログラム２１２Ａとが格納されている。ＲＯＭ２０７Ａには、更に、固定ＩＤ生成プログラム２１３Ａと、モード判定プログラム２１４Ａとが格納されている。ＲＯＭ２０７Ａに格納されている各プログラムは、ＣＰＵ２０５によって実行される。
【００７７】
固定ＩＤ生成プログラム２１３Ａは、固定のカードＩＤを生成するためのプログラムである。
【００７８】
モード判定プログラム２１４Ａは、動作モードを判定するためのプログラムである。ここで、動作モードとして、“検査モード”と“使用モード”とがある場合を想定する。“検査モード”は、非接触カード２００Ｂが製造途中であって、検査のために、固定のカードＩＤを生成させるためのモードである。“使用モード”は、非接触カード２００Ｂが製品として使用されており、通信相手を特定する目的と、カード所有者のプライバシーを保護する目的とを達成するために、乱数を用いてカードＩＤを生成させるためのモードである。電圧測定部２５０によって測定された電圧値に基づいて、“検査モード”と“使用モード”との何れかが選択される。
【００７９】
ＲＡＭ２０８Ａは、乱数ＩＤ生成プログラム２１０Ａ又は固定ＩＤ生成プログラム２１３ＡがＣＰＵ２０５によって実行されることにより生成されたカードＩＤを記憶する。また、ＲＡＭ２０８Ａは初回リクエスト判定フラグを記憶する。また、ＲＡＭ２０８Ａは、カードＩＤを、“検査モード”により生成させるのか、“使用モード”により生成させるのか、を特定するモード判定フラグを記憶する。
【００８０】
図１３は、図１２に示す非接触カード２００Ｂの内部の構成を機能的に示す図である。以下の説明では図１３を用いる。固定ＩＤ生成部２１３の機能は、ＣＰＵ２０５が固定ＩＤ生成プログラム２１３Ａを実行することによって実現される。モード判定部２１４の機能は、ＣＰＵ２０５がモード判定プログラム２１４Ａを実行することによって実現される。
【００８１】
固定ＩＤ生成部２１３及びモード判定部２１４の双方又は一方は、ソフトウェアにより実現されてもよいし、専用のハードウェアにより実現されてもよい。
【００８２】
乱数ＩＤ生成部２１０及び固定ＩＤ生成部２１３は、本発明の非接触カードの識別子決定部の一例である。また、乱数ＩＤ生成部２１０は、本発明の非接触カードの無秩序識別子生成部の一例でもある。更に、固定ＩＤ生成部２１３は、本発明の非接触カードの特定識別子生成部の一例でもある。
【００８３】
固定ＩＤ生成部２１３は、例えば、ＲＯＭ２０７Ａに記載されている情報に基づいて、固定のカードＩＤを生成する。また、非接触カード２００Ｂが、ＲＯＭ２０７Ａ以外のＲＯＭ又は不揮発メモリを有している場合、固定ＩＤ生成部２１３は、ＲＯＭ２０７Ａ以外のＲＯＭ又は不揮発メモリに記載されている情報に基づいて、固定のカードＩＤを生成してもよい。上記情報は、例えば、製造時に付与された、非接触カード２００Ｂを特定するための識別子である。不揮発メモリは、Ｅｌｅｃｔｒｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ（ＥＥＰＲＯＭ）、Ｆｅｒｒｏｅｌｅｃｔｒｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ（ＦｅＲＡＭ）、Ｍａｇｎｅｔｏｒｅｓｉｓｔｉｖｅ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ（ＭＲＡＭ）、又は、Ｏｖｏｎｉｃ  Ｕｎｉｆｉｅｄ  ｍｅｍｏｒｙ（ＯＵＭ）である。
【００８４】
モード判定フラグ記憶部２０８３は、ＲＡＭ２０８Ａのモード判定フラグが記憶される領域である。
【００８５】
モード判定フラグには、非接触カード２００Ｂが製造途中にある場合、初期値、例えば“０”が設定される。他方、非接触カード２００Ｂが製品として使用されている場合、モード判定フラグには、初期値と異なる値、例えば“１”が設定される。
【００８６】
モード判定部２１４が、電圧測定部２５０によって測定された電圧値に基づいて、モード判定フラグの値を変更する。
【００８７】
図１４は、非接触カード２００ＢがカードＩＤを含む初期応答を行なう場合の各手順を示すフローチャートである。
【００８８】
ここで、蓄電部２０２が電力を蓄積したことを電力検出部２０３が検出した場合を想定する。
【００８９】
送受信回路２０４がリーダライタ１００からリクエストコマンドを受信すると（Ｓ３０１）、初回リクエスト判定部２１１は、初回リクエスト判定フラグ記憶部２０８２に記憶されている初回リクエスト判定フラグを抽出する（Ｓ３０２）。初回リクエスト判定部２１１は、抽出した初回リクエスト判定フラグの値に基づいて、送受信回路２０４によって受信されたリクエストコマンドが初回のリクエストコマンドであるか否かを判定する（Ｓ３０３）。
【００９０】
初回リクエスト判定部２１１が、受信されたリクエストコマンドが初回のリクエストコマンドであると判定した場合（Ｓ３０３でＹｅｓ）、モード判定部２１４は、モード判定フラグ記憶部２０８３に記憶されているモード判定フラグを抽出する（Ｓ３０４）。モード判定部２１４は、抽出したモード判定フラグの値に基づいて、“検査モード”によりカードＩＤを生成させるべきであるのか、“使用モード”によりカードＩＤを生成させるべきであるのか、を判定する（Ｓ３０５）。
【００９１】
モード判定フラグの値が初期値、例えば“０”である場合、モード判定部２１４は、“検査モード”によりカードＩＤを生成させるべきであると判定する（Ｓ３０５で“検査モード”）。他方、モード判定フラグの値が初期値と異なる値、例えば“１”である場合、モード判定部２１４は、“使用モード”によりカードＩＤを生成させるべきであると判定する（Ｓ３０５で“使用モード”）。
【００９２】
モード判定部２１４が“検査モード”によりカードＩＤを生成させるべきであると判定した場合（Ｓ３０５で“検査モード”）、固定ＩＤ生成部２１３は、予め決められた固定のカードＩＤを生成し（Ｓ３０６）、生成したカードＩＤをＩＤ記憶部２０８１に格納する（Ｓ３０８）。他方、モード判定部２１４が“使用モード”によりカードＩＤを生成させるべきであると判定した場合（Ｓ３０５で“使用モード”）、乱数ＩＤ生成部２１０は、乱数を用いてカードＩＤを生成し（Ｓ３０７）、生成したカードＩＤをＩＤ記憶部２０８１に格納する（Ｓ３０８）。
【００９３】
初回リクエスト判定部２１１は、初回リクエスト判定フラグ記憶部２０８２に記憶されている初回リクエスト判定フラグの値を、初期値からそれと異なる値、例えば“１”に変更する（Ｓ３０９）。
【００９４】
抽出部２１２は、ＩＤ記憶部２０８１に格納されているカードＩＤを抽出する（Ｓ３１０）。送受信回路２０４は、抽出されたカードＩＤを含む初期応答をリーダライタ１００に送信する（Ｓ３１１）。
【００９５】
それに対して、送受信回路２０４によって受信されたリクエストコマンドが初回のリクエストコマンドではないと初回リクエスト判定部２１１によって判定された場合（Ｓ３０３でＮｏ）、抽出部２１２は、ＩＤ記憶部２０８１に格納されているカードＩＤを抽出する（Ｓ３１０）。送受信回路２０４は、抽出されたカードＩＤを含む初期応答をリーダライタ１００に送信する（Ｓ３１１）。
【００９６】
すなわち、送受信回路２０４によって受信されたリクエストコマンドが２回目以降のリクエストコマンドである場合も、送受信回路２０４は、受信されたリクエストコマンドが初回のリクエストコマンドである場合に送信するカードＩＤと同一のカードＩＤをリーダライタ１００に送信する。
【００９７】
上述したように、実施の形態２では、非接触カード２００Ｂは、動作モードが“検査モード”であるのか“使用モード”であるのかを判定し、判定結果に基づいてカードＩＤを生成する。これにより、非接触カード２００Ｂが製造途中にあれば、リーダライタ１００は、複数の非接触カード２００Ｂそれぞれと、固定のカードＩＤを用いて一括して通信することができる。他方、非接触カード２００Ｂが使用されていれば、非接触カード２００Ｂは、他者が推測することが困難であるカードＩＤを用いてリーダライタ１００と通信する。そのため、非接触カード２００Ｂの所有者のプライバシーを保護することができる。
【００９８】
“検査モード”では、検査機が、リーダライタ１００を介して、固定のカードＩＤを用いて複数の非接触カード２００Ｂと通信して、複数の非接触カード２００Ｂを検査することができる。検査機は、固定のカードＩＤを保持することにより、カードＩＤに関する計算を行なう必要がなくなり、検査の効率が向上する。
【００９９】
なお、動作モードは、“検査モード”と“使用モード”とであると限定されない。動作モードは、メモリを初期化することが可能なモードと、メモリを初期化することが不可能なモードとであってもよい。いずれにしても、非接触カード２００Ｂは、動作モードに応じてカードＩＤを生成する。
【０１００】
例えば、カード所有者がプライバシーを気にしない場合、非接触カード２００Ｂは、固定のカードＩＤを生成するモードにより固定のカードＩＤを生成する。その場合、その固定のカードＩＤが用いられることにより、カード所有者は特別なサービスを受けることができる。逆に、カード所有者がプライバシーを気にする場合、非接触カード２００Ｂは、乱数を用いてカードＩＤを生成するモードによりカードＩＤを生成する。その場合、そのカードＩＤが用いられることにより、カード所有者の利便性の向上を図ることができる。
【０１０１】
また、固定のカードＩＤは、情報を書き換えることができないＲＯＭに記憶されていてもよい。その場合、上記検査機等は、テストパターンを事前に用意することが可能である。
【０１０２】
また、固定のカードＩＤは、情報を書き換えることができる不揮発メモリに記憶されてもよい。その場合、固定のカードＩＤを書き換えることができる。不揮発メモリの例は、ＥＥＰＲＯＭ、ＦｅＲＡＭ、ＭＲＡＭ、及び、ＯＵＭ等である。
【０１０３】
なお、固定ＩＤ生成部２１３は、固定のカードＩＤを生成するのではなく、既知のカードＩＤ列のカードＩＤを順に利用してカードＩＤを生成してもよい。この場合、リーダライタ１００が、上記カードＩＤ列と、上記カードＩＤ列の使用開始時に使用されるカードＩＤとから、送信されるカードＩＤを予め知ることにより、固定のカードＩＤが使用される場合と同様の効果を得ることができる。
【０１０４】
また、図１５に示すように、非接触カード２００Ｂは、エリア検出部２２０を更に有する非接触カード２００Ｃに置き換えられてもよい。エリア検出部２２０は、非接触カード２００Ｃが特定の場所に存在することを検出する。エリア検出部２２０は、検出結果に基づいて、モード判定フラグ記憶部２０８３に記憶されているモード判定フラグの値を変更する。
【０１０５】
例えば、非接触カード２００Ｃの所有者が特定の会社の社員である場合を想定する。その社員が非接触カード２００Ｃを携帯して会社が所有する建物に入った場合、エリア検出部２２０は、非接触カード２００Ｃがその建物内に存在することを検出する。この場合、エリア検出部２２０は、モード判定フラグの値を、固定のカードＩＤを生成させることを示す値に変更する。他方、エリア検出部２２０は、非接触カード２００Ｃが上記建物内に存在しないことを検出した場合、モード判定フラグの値を、乱数を用いてカードＩＤを生成させることを示す値に変更する。
【０１０６】
これにより、会社の建物内では、社員の行動を管理することができるとともに、会社の建物外における社員のプライバシーは保護される。
【０１０７】
更に、図１６に示すように、非接触カード２００Ｂは、非接触カード２００Ｂから、初回リクエスト判定部２１１と、初回リクエスト判定フラグ記憶部２０８２とが削除された非接触カード２００ＢＢに置き換えられてもよい。この場合、非接触カード２００ＢＢの動作は、図１７に示すように、図１４に示す動作から、初回リクエスト判定部２１１が初回リクエスト判定フラグを抽出する手順（Ｓ３０２）と、リクエストコマンドが初回のリクエストコマンドであるか否かを判定する手順（Ｓ３０３）と、初回リクエスト判定フラグの値を変更する手順（Ｓ３０９）とが削除された動作である。
【０１０８】
非接触カード２００ＢＢは、非接触カード２００Ｂが動作モードに基づいてカードＩＤを生成する際の効果をもたらすことができる。
【０１０９】
（実施の形態３）
図１８は、実施の形態３の非接触カード２００Ｄの構成を示す図である。
【０１１０】
非接触カード２００Ｄは、実施の形態１の非接触カード２００と同様に、アンテナ２０１と、蓄電部２０２と、電力検出部２０３と、送受信回路２０４と、ＣＰＵ２０５と、ＲＯＭ２０７Ｂと、ＲＡＭ２０８とを有する。
【０１１１】
ＲＯＭ２０７Ｂには、乱数ＩＤ生成プログラム２１０Ａと、初回リクエスト判定プログラム２１１Ａと、抽出プログラム２１２Ａとが格納されている。ＲＯＭ２０７Ｂには、更に、通信終了判定プログラム２２１Ａが格納されている。ＲＯＭ２０７Ｂに格納されている各プログラムは、ＣＰＵ２０５によって実行される。
【０１１２】
通信終了判定プログラム２２１Ａは、送受信回路２０４とリーダライタ１００との通信の終了を監視するためのプログラムである。
【０１１３】
図１９は、図１８に示す非接触カード２００Ｄの内部の構成を機能的に示す図である。以下の説明では図１９を用いる。通信終了判定部２２１の機能は、ＣＰＵ２０５が通信終了判定プログラム２２１Ａを実行することによって実現される。
【０１１４】
通信終了判定部２２１は、ソフトウェアにより実現されてもよいし、専用のハードウェアにより実現されてもよい。
【０１１５】
以下に、通信終了判定部２２１の動作を説明する。
通信終了判定部２２１は、送受信回路２０４とリーダライタ１００との通信の終了を監視する。通信終了判定部２２１は、送受信回路２０４とリーダライタ１００との通信が終了したと判定した場合、初回リクエスト判定フラグ記憶部２０８２に記憶されている初回リクエスト判定フラグの値を、初期値、例えば“０”に変更する。通信が終了したと判定しない場合、通信終了判定部２２１は初回リクエスト判定フラグの値を変更しない。
【０１１６】
実施の形態１及び実施の形態２における説明から明らかなように、初回リクエスト判定フラグの値が初期値であると、新規にカードＩＤが生成される。したがって、非接触カード２００Ｄは、送受信回路２０４とリーダライタ１００との通信が終了し、その後にリクエストコマンドを受信した場合、新規にカードＩＤを生成する。
【０１１７】
リーダライタ１００は、非接触カードとの通信が終了すると、その後の通信では、そのカードを別のカードと見なすことができる。そのため、非接触カードは、自身のカードＩＤを変更することができる。これにより、非接触カードの所有者のプライバシーを保護することができる。
【０１１８】
なお、通信終了判定部２２１が、送受信回路２０４とリーダライタ１００との通信が終了したと判定した場合、乱数ＩＤ生成部２１０は、新たなカードＩＤを生成し、新たなカードＩＤをＩＤ記憶部２０８１に格納してもよい。この場合、次回の通信が開始するときに行なわなければならない新たなカードＩＤを生成する手順を、前もって行なうことができる。
【０１１９】
（実施の形態４）
上述した実施の形態では、カードＩＤが乱数値又は固定値である場合を説明した。図２０に示すように、カードＩＤは、乱数により構成される部分５００と、固定値により構成される部分５０１とで構成されてもよい。一連のカード識別処理においては同一のカードＩＤが使用され、かつ、同じカードＩＤが常に使用されなければ、本発明の目的は達成される。そのため、カードＩＤの一部分は固定値であってもよい。
【０１２０】
非接触カードのカードＩＤの固定値の部分には、カードの発行者のＩＤや、サービスの種別等を含めることができ、乱数値の部分により、本発明の目的が達成される。したがって、リーダライタが固定値の部分のカードＩＤをチェックすることによりカードの情報を取得することができるとともに、カード所有者の行動が特定されることを防止することができる。
【０１２１】
この場合、乱数により構成される部分５００は乱数ＩＤ生成部２１０により生成され、固定値により構成される部分５０１は固定ＩＤ生成部２１３により生成される。
【０１２２】
また、カードＩＤは不揮発メモリに記録されてもよい。その場合、固定のカードＩＤ部分を書き換えることができる。したがって、非接触カードがサービスに応じてカードＩＤを選択し、その値を不揮発メモリに格納することにより、カード所有者のプライバシーをより強く保護することができる。
【０１２３】
（実施の形態５）
図２１に示すように、非接触カード２００は、携帯電話機等の携帯端末装置４００に収納されて使用される非接触カード２００Ｅに置き換えられてもよい。図２２は、携帯端末装置４００及び非接触カード２００Ｅの構成を示す。
【０１２４】
非接触カード２００Ｅはアンテナを有していない。非接触カード２００Ｅは、携帯端末装置４００に挿入された際に、携帯端末装置４００に設けられているアンテナ４０１を利用して、リーダライタ１００と通信する。また、非接触カード２００Ｅは、蓄電部２０２の代わりに、電力伝達部２６０を有している。電力伝達部２６０は、携帯端末装置４００に設けられている電力供給部４０２から供給される電力を非接触カード２００Ｅ内部に伝達する。
【０１２５】
非接触カード２００Ｅの動作は次の通りである。電力検出部２０３が、電力伝達部２６０が電力供給部４０２から供給される電力を非接触カード２００Ｅ内部に伝達したことを検出した後に、初回リクエスト判定部２１１は以下の判定を行なう。送受信回路２０４がアンテナ４０１を介してリクエストコマンドを受信した場合、初回リクエスト判定部２１１は、受信されたリクエストコマンドが初回のリクエストコマンドであるのか、２回目以降のリクエストコマンドであるのかを判定する。
【０１２６】
受信されたリクエストコマンドが初回のリクエストコマンドである場合、乱数ＩＤ生成部２１０は乱数を用いてカードＩＤを生成し、送受信回路２０４は、そのカードＩＤを含む初期応答を、アンテナ４０１を介してリーダライタ１００に送信する。また、乱数ＩＤ生成部２１０は、生成したカードＩＤをＩＤ記憶部２０８１に格納する。
【０１２７】
他方、受信されたリクエストコマンドが２回目以降のリクエストコマンドである場合、送受信回路２０４は、ＩＤ記憶部２０８１に記憶されているカードＩＤを含む初期応答を、アンテナ４０１を介してリーダライタ１００に送信する。
【０１２８】
実施の形態５においても、実施の形態１における効果と同様の効果が得られる。すなわち、一連のカード識別処理において、リーダライタ１００は、通信相手が非接触カード２００Ｅであることを判断して非接触カード２００Ｅと通信することができる。また、非接触カード２００Ｅの所有者のプライバシーを保護することができる可能性を向上させることができる。
【０１２９】
（実施の形態１から５の補足事項１）
上記の実施の形態において説明した、乱数ＩＤ生成部２１０、ＩＤ記憶部２０８１、初回リクエスト判定部２１１、抽出部２１２、通信終了判定部２２１、モード判定部２１４、及び固定ＩＤ生成部２１３の各機能は、典型的には、ＣＰＵがコンピュータプログラムを実行することにより実現される。そのプログラムは、非接触カードに設けられているＲＯＭに格納されて実行されてもよいし、外部よりダウンロードされ、不揮発メモリに格納されて、実行されてもよい。
【０１３０】
（実施の形態１から５の補足事項２）
上記の機能は、プログラムと、ＣＰＵ、ＲＡＭ、ＲＯＭ、不揮発メモリ等のハードウェア資源との組み合わせにより、集積回路であるＬＳＩにより実現されてもよい。各機能は、個別に１チップ化されてもよいし、複数の機能の全部又は一部が１チップ化されてもよい。
【０１３１】
図２３、図２４、及び図２５は、実施の形態１、実施の形態２、及び実施の形態３それぞれにおける集積回路化の一例を示す。ＬＳＩ１００１、ＬＳＩ１００２、及びＬＳＩ１００３は集積回路の一例である。破線で囲まれている部分が集積回路である。集積回路は、集積度の違いにより、ＩＣ、システムＬＳＩ、スーパーＬＳＩ、ウルトラＬＳＩと呼称されることもある。
【０１３２】
集積回路は、ＬＳＩに限るものではなく、専用回路又は汎用プロセサにより実現されてもよい。ＬＳＩ製作後にプログラムを格納することが可能な、Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ（ＦＰＧＡ）や、ＬＳＩ内部の回路セルの接続や設定を再構成することが可能なリコンフィギュラブル・プロセッサーが利用されてもよい。
【０１３３】
更には、半導体技術の進歩又は派生する別技術によりＬＳＩに置き換わる集積回路化の技術が登場すれば、当然その技術を用いて上記機能の集積化が行なわれてもよい。バイオ技術の適用等が可能性としてありえる。
【０１３４】
また、上述した実施の形態では、ＩＳＯ／ＩＥＣ１４４４３−３（ＴｙｐｅＢ  初期化アンチコリジョン仕様）に基づいて通信する非接触カードについて説明した。本発明の非接触カードは、ＩＳＯ／ＩＥＣ１４４４３−３のＴｙｐｅＡや、ＴｙｐｅＣと称される規格に基づいて通信する非接触カードであってもよい。
【産業上の利用可能性】
【０１３５】
本発明の非接触カードは、他者が推測することが困難であるカードＩＤを用いることにより、カード所有者のプライバシーを保護する。加えて、リーダライタは、本発明の非接触カードを特定して通信することが可能である。本発明の非接触カードは、非接触の通信が行なわれるシステム（ＲＦタグ等）の用途にも応用することができる。
【図面の簡単な説明】
【０１３６】
これら、並びに、発明の他の目的、効果、及び特徴は、発明の特定の実施の形態を説明する添付図面とともに行なう説明から明らかである。
【図１】実施の形態が実行される状況を説明するための図である。
【図２】リクエストコマンドの構成を示す図である。
【図３】初期応答の構成を示す図である。
【図４】一連のカード識別処理を示す図である。
【図５】一連のカード識別処理と、実体的なデータの通信とを示す図である。
【図６】実施の形態１におけるリーダライタ及び非接触カードのモジュール構成図である。
【図７】実施の形態１におけるリーダライタ及び非接触カードの機能を示す構成図である。
【図８】実施の形態１の非接触カードがカードＩＤを含む初期応答を行なう場合の各手順を示すフローチャートである。
【図９】実施の形態１における効果を説明するための図である。
【図１０】実施の形態１における非接触カードの機能を示す構成図である。
【図１１】実施の形態２における、製造途中の非接触カードを示す図である。
【図１２】実施の形態２における非接触カードのモジュール構成図である。
【図１３】実施の形態２における非接触カードの機能を示す構成図である。
【図１４】実施の形態２の非接触カードがカードＩＤを含む初期応答を行なう場合の各手順を示すフローチャートである。
【図１５】実施の形態２における非接触カードの機能を示す構成図である。
【図１６】実施の形態２における非接触カードの機能を示す構成図である。
【図１７】実施の形態２の非接触カードがカードＩＤを含む初期応答を行なう場合の各手順を示すフローチャートである。
【図１８】実施の形態３における非接触カードのモジュール構成図である。
【図１９】実施の形態３における非接触カードの機能を示す構成図である。
【図２０】実施の形態４におけるカードＩＤの構成図である。
【図２１】実施の形態５における携帯端末装置及び非接触カードの外観図である。
【図２２】実施の形態５における携帯端末装置及び非接触カードの機能を示す構成図である。
【図２３】実施の形態１における非接触カードの機能の一部をＬＳＩにより実現したことを示す図である。
【図２４】実施の形態２における非接触カードの機能の一部をＬＳＩにより実現したことを示す図である。
【図２５】実施の形態３における非接触カードの機能の一部をＬＳＩにより実現したことを示す図である。
【図１】
2007538296.tif 000003
【図２】
2007538296.tif 000004
【図３】
2007538296.tif 000005
【図４】
2007538296.tif 000006
【図５】
2007538296.tif 000007
【図６】
2007538296.tif 000008
【図７】
2007538296.tif 000009
【図８】
2007538296.tif 000010
【図９】
2007538296.tif 000011
【図１０】
2007538296.tif 000012
【図１１】
2007538296.tif 000013
【図１２】
2007538296.tif 000014
【図１３】
2007538296.tif 000015
【図１４】
2007538296.tif 000016
【図１５】
2007538296.tif 000017
【図１６】
2007538296.tif 000018
【図１７】
2007538296.tif 000019
【図１８】
2007538296.tif 000020
【図１９】
2007538296.tif 000021
【図２０】
2007538296.tif 000022
【図２１】
2007538296.tif 000023
【図２２】
2007538296.tif 000024
【図２３】
2007538296.tif 000025
【図２４】
2007538296.tif 000026
【図２５】
2007538296.tif 000027
【国際調査報告】
2007538296.tif 000028
2007538296.tif 000029