JP4655201B2 - 非接触icチップ、処理方法、並びにプログラム - Google Patents

非接触icチップ、処理方法、並びにプログラム Download PDF

Info

Publication number
JP4655201B2
JP4655201B2 JP2005041199A JP2005041199A JP4655201B2 JP 4655201 B2 JP4655201 B2 JP 4655201B2 JP 2005041199 A JP2005041199 A JP 2005041199A JP 2005041199 A JP2005041199 A JP 2005041199A JP 4655201 B2 JP4655201 B2 JP 4655201B2
Authority
JP
Japan
Prior art keywords
processing
packet
card
encryption
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 - Fee Related
Application number
JP2005041199A
Other languages
English (en)
Other versions
JP2006227935A (ja
Inventor
繁 有沢
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Priority to JP2005041199A priority Critical patent/JP4655201B2/ja
Publication of JP2006227935A publication Critical patent/JP2006227935A/ja
Application granted granted Critical
Publication of JP4655201B2 publication Critical patent/JP4655201B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Near-Field Transmission Systems (AREA)

Description

本発明は、非接触IC(Integrated Circuit)チップ、処理方法、並びにプログラムに関し、特に、非接触ICチップによる処理の高速化を、リーダライタとの通信距離を確保しつつ実現することができるようにする非接触ICチップ、処理方法、並びにプログラムに関する。
近年、例えば、自動改札機により鉄道の乗客を管理するため、リモート(非接触)ICカードシステムが用いられている。
リモートICカードシステムは、自動改札機に設けられるリーダライタと、FeliCa(登録商標)などのICチップが搭載された、乗客が有するリモートICカードからなる。リモートICカードシステムによる乗客の管理は、図1に示すように、リーダライタから送信されてきたパケットを受信したリモートICカードのICチップが、そのパケットに含まれるコマンドの内容に応じて、例えば、内部に設けられた不揮発性メモリに記憶されている乗車料金の残高や定期券のデータを読み書きするなどのカード処理を行い、その処理結果をリーダライタに返信することにより行われる。
リーダライタから送信されてきたパケットに基づいて処理を行うICチップは、基本的に、リーダライタが送信する電磁波を受信するアンテナ、アンテナで受信された電磁波からICチップ内で消費する電力を生成したり、リーダライタから送信されてきたデータを復調したりするアナログ部、アナログ部で復調された、リーダライタからのパケットに応じて処理を行うロジック部から構成される。
図2は、ICチップのアナログ部の構成例を示す図である。
アンテナ端子CPおよびCMには整流回路1が接続される。整流回路1は、アンテナにおいて電磁波が受信されることに応じて生じた信号を整流し、整流して得られた信号を出力する。整流回路1にはダイオード2が設けられており、そのアノードは接地され、カソードは、アンテナ端子CMとキャリア抽出回路11の接続点に接続されている。
整流回路1の出力には、平滑用のコンデンサ3の一端、プロテクタ4、変調回路7、復調回路8、および定電圧レギュレータ9が接続される。コンデンサ3の他端は接地される。
プロテクタ4は、抵抗5と、N個のダイオードからなるダイオード群6から構成され、これにより、アナログ部等に過電圧が供給されるのが防止される。プロテクタ4を構成する抵抗5の一端は整流回路1の出力側に接続され、他端はダイオード6−1のアノードに接続される。ダイオード6−Nのカソードは接地される。
変調回路7は、外部のリーダライタにデータを送信するとき、ロジック部から供給されてきた信号rdに応じてアンテナのインピーダンスを変化させことによってアンテナで受信されているリーダライタからの電磁波を変調し、データを送信する(ロードスイッチング方式)。
復調回路8は、整流回路1から供給されてきた信号を復調し、リーダライタから送信されてきたデータを表す信号wdをロジック部に出力する。
定電圧レギュレータ9は、その入力端子に印可される電圧を一定の電圧VDDに安定化し、得られた電圧VDDを各部に供給する。定電圧レギュレータ9により得られた電圧VDDは、ロジック部の他、復調回路8、フラグ生成回路10、キャリア抽出回路11等のアナログ部にも供給される。
フラグ生成回路10は、定電圧レギュレータ9により得られた電圧のレベルを監視し、電圧のレベルに応じて生成したフラグをロジック部に出力する。例えば、フラグ生成回路10は、定電圧レギュレータ9により得られる電圧が所定の閾値より少なくなったとき、そのことを表すフラグrstを生成し、ロジック部に出力する。
キャリア抽出回路11は、コンデンサ12、ダイオード13および14、並びに増幅器15から構成される。コンデンサ12の一端はアンテナ端子CMに接続され、他端は増幅器15の入力端子に接続される。コンデンサ12と増幅器15の接続点にはダイオード13のアノードと、ダイオード14のカソードが接続されている。このキャリア抽出回路11は、アンテナにおいて受信された電磁波に基づいて、搬送波と同じ周波数の信号であるクロック信号clkを抽出し、抽出したクロック信号clkをロジック部に出力する。
図3は、ICチップのロジック部の構成例を示すブロック図である。
ロジック部は、CPU(Central Processing Unit)21、SPU(Signal Processing Unit)22、I/O(Input/Output)管理部23、CRC(Cyclic Redundancy Check)演算部24、ROM(Read Only Memory)26、RAM(Random Access Memory)27、EEPROM(Electrically Erasable and Programmable Read Only Memory)28、および暗号/復号処理部29がバス25を介して接続されることによって構成される。CPU21にはクロックギヤ30も接続されている。
CPU21は、アナログ部から電圧VDDが供給されてくることに応じて起動し、クロックギヤ30から供給されてきたクロックを基準クロックとしてロジック部全体の動作を制御する。CPU21による処理はROM26に記憶されているプログラムに従って行われ、例えば、EEPROM28に記憶されているデータの書き換えなどが行われる。
SPU22は、アナログ部の復調回路8から供給されてきた信号wdに基づいて、リーダライタから送信されてきたデータ(パケット)を取得し、例えば、取得したパケットに含まれるパケットデータを、バス25を介してCPU21に出力する。SPU22により取得されるパケットには、プリアンブル、シンク、パケットのデータ長を表すレングス、リーダライタからの指示を表すコマンドコード、パラメータ(ペイロード)、パケットのエラーを検出するためのCRCが含まれる。
また、SPU22は、リーダライタにパケットを送信するとき、CPU21による処理結果や、CRC演算部24により生成されたCRCなどを含むパケットを生成し、生成したパケットを表す信号rdをアナログ部の変調回路7に出力する。
I/O管理部23はCPU21のインタフェースであり、例えば、クロック速度の変更がバス21を介して指示されたとき、そのことを表す信号をクロックギヤ30に出力し、クロック速度を変更させる。また、I/O管理部23は、適宜、アナログ部から供給されてきた信号を、バス25を介してCPU21に出力する。
CRC演算部24は、SPU22により取得されたパケットに含まれるCRCを用いてパケットの正当性を検証する。また、CRC演算部24は、リーダライタにパケットを送信するとき、それに含めるCRCを生成し、生成したCRCをSPU22に出力する。
ROM26はCPU21により実行されるプログラムや、暗号/復号処理部29において用いられる鍵などの各種のデータを記憶し、記憶しているデータを要求に応じて出力する。
RAM27はCPU21が各種の処理を実行する上において必要なデータなどを適宜記憶する。
EEPROM28は不揮発性のメモリであり、電子マネーの残高、鉄道の運賃の残高を表すデータ、暗号/復号処理部29において用いられる鍵などの各種のデータを記憶する。EEPROM28に記憶されているデータが、リーダライタからの指示に応じて適宜書き換えられる。
暗号/復号処理部29は、リーダライタから送信され、SPU22により取得されたパケットに含まれるパラメータに暗号化が施されているとき、それを復号する。また、暗号/復号処理部29は、リーダライタに送信するデータに暗号化を施す必要があるとき、送信するデータに暗号化を施し、処理結果をSPU22に出力する。暗号/復号処理部29によるデータの暗号化、復号は、ROM26やEEPROM28に予め記憶されている鍵を用いて行われる。
図4は、以上のような構成のアナログ部とロジック部を有するICチップにより行われる処理、すなわち、図1のカード処理の流れを示す図である。
図4に示すように、カード処理は、例えば、パケットの受信、コマンドの解釈、パケットの復号、カード内部処理、返信パケットの生成、パケットの暗号化、および返信パケットの送信の各処理からなる。各処理の内容については後述する。
従来のICチップによる一連のカード処理においては、各処理が時系列順に行われ、ある1つの処理が行われている間に、他の処理が行われることがない。
すなわち、図4の例においては、時刻t0から時刻t1までの間にコマンドパケットの受信が行われ、コマンドパケットの受信が終了した時刻である時刻t1から時刻t2までの間にコマンドの解釈が行われる。
また、コマンドの解釈が終了した時刻である時刻t2から時刻t3までの間にパケットの復号が行われ、復号が終了した時刻である時刻t3から時刻t4までの間に、所定のデータをEEPROM28に書き込むなどの、コマンドに応じたカード内部処理が行われる。
カード内部処理が終了した時、次に、処理結果をリーダライタに返信することが行われるが、時刻t4から時刻t5までの間に、処理結果を含む返信パケットの生成が行われ、返信パケットの生成が終了した時刻である時刻t5から時刻t6までの間に、返信パケットの暗号化が行われる。返信パケットの暗号化が終了した時刻である時刻t6から時刻t7までの間に、返信パケットの送信が行われる。
このように、従来のICチップにおいては、各処理が時系列的に行われているため、各処理かかる時間を単純に合計した時間が、カード処理全体にかかる時間になる。
占有帯域幅を広げることなく、高いレートの通信を実現する技術については特許文献1に開示されている。
特開平10−13312号公報
ところで、リモートICカードシステムにおいては、乗客はリモートICカードや、カード互換機能を搭載したPDA(Personal Digital Assistants)等を自動改札機に翳して入出場するが、ラッシュ時も含めてそれをスムーズに管理するためには、自動改札機(リーダライタ)からの指示に応じて行われるICチップ内での処理が高速に行われる必要がある。そのため、ICチップにおいては、リーダライタとの間で送受信されるデータの転送速度の高速化や、ロジック部の動作を規定するクロックの高速化が図られている。
しかしながら、データの転送速度を高速化させるためには、ICチップに設けられるアンテナの帯域をより広帯域のものにする必要があるが、むやみにその広帯域化を進めると電磁波の受信効率が低下し、通信距離が犠牲になってしまう。また、ICチップはリーダライタからの電磁波のエネルギで動作するものであるから、受信効率の低下は、動作に十分な電力を得ることができなくなることにもつながり、特に問題になる。
また、ロジック部のクロックの高速化は、ICチップがリーダライタからの電磁波のエネルギーで動作する関係上とCMOS(Complementary Metal Oxide Semiconductor)のプロセス上の制約もあって限界がある。
本発明はこのような状況に鑑みてなされたものであり、ICチップによる処理の高速化を、リーダライタとの通信距離を確保しつつ実現することができるようにするものである。
本発明の非接触ICチップは、リーダライタからの電磁波に基づいて生成された電力により駆動する非接触ICチップにおいて、前記リーダライタから電磁波を介して送信されてきたパケットの受信と、暗号化されたカード内処理の結果を格納する返信パケットの生成と、前記リーダライタに対する前記返信パケットの送信とを行う送受信手段と、前記パケットに含まれるコマンドが実行可能なコマンドであるか否かの確認であるコマンド解釈と、前記パケットに含まれる、暗号化されているパラメータの復号と、前記返信パケットに含まれる、前記カード内処理の結果の暗号化とを行う暗号処理手段と、前記暗号処理手段により実行可能であるか否かの確認が行われた前記コマンドと、前記暗号処理手段により復号された前記パラメータに従って前記カード内処理を行い、記憶しているデータの読み書きを行う制御手段とを備え、前記リーダライタから前記パケットが送信されてくることに応じて、前記パケットの受信、前記コマンド解釈、前記パラメータの復号、前記カード内処理、前記返信パケットの生成、前記カード内処理の結果の暗号化、および前記返信パケットの送信が一連の処理としてその順番で開始される場合において、前記パケットの受信と前記コマンド解釈と前記パラメータの復号と前記カード内処理とのうちの少なくとも一部の処理が時間的に並行して行われ、前記カード内処理が終了した後、前記返信パケットの生成と前記カード内処理の結果の暗号化とが時間的に並行して行われ、前記カード内処理の結果の暗号化が終了した後、前記返信パケットの送信が行われる。
リーダライタからの電磁波の受信状況を監視する監視手段をさらに備え、制御手段は監視手段による監視結果に基づいて、前記一連の処理の各処理のタイミングを制御するようにすることができる。
制御手段は、前記一連の処理の各処理が時間的に並行して行われることによって消費される電力の量が、リーダライタからの電磁波に基づいて生成される電力の量に近い場合、、並行して行われる処理の数を減らすように、前記一連の処理の各処理のタイミングを制御するようにすることができる。
本発明の処理方法は、リーダライタからの電磁波に基づいて生成された電力により駆動し、前記リーダライタから電磁波を介して送信されてきたパケットの受信と、暗号化されたカード内処理の結果を格納する返信パケットの生成と、前記リーダライタに対する前記返信パケットの送信とを行う送受信手段と、前記パケットに含まれるコマンドが実行可能なコマンドであるか否かの確認であるコマンド解釈と、前記パケットに含まれる、暗号化されているパラメータの復号と、前記返信パケットに含まれる、前記カード内処理の結果の暗号化とを行う暗号処理手段と、前記暗号処理手段により実行可能であるか否かの確認が行われた前記コマンドと、前記暗号処理手段により復号された前記パラメータに従って前記カード内処理を行い、記憶しているデータの読み書きを行う制御手段とを備える非接触ICチップの処理方法であって、前記リーダライタから前記パケットが送信されてくることに応じて、前記パケットの受信、前記コマンド解釈、前記パラメータの復号、前記カード内処理、前記返信パケットの生成、前記カード内処理の結果の暗号化、および前記返信パケットの送信を一連の処理としてその順番で開始する場合において、前記パケットの受信と前記コマンド解釈と前記パラメータの復号と前記カード内処理とのうちの少なくとも一部の処理を時間的に並行して行い、前記カード内処理が終了した後、前記返信パケットの生成と前記カード内処理の結果の暗号化とを時間的に並行して行い、前記カード内処理の結果の暗号化が終了した後、前記返信パケットの送信を行うステップを含む。
本発明のプログラムは、リーダライタからの電磁波に基づいて生成された電力により駆動し、前記リーダライタから電磁波を介して送信されてきたパケットの受信と、暗号化されたカード内処理の結果を格納する返信パケットの生成と、前記リーダライタに対する前記返信パケットの送信とを行う送受信手段と、前記パケットに含まれるコマンドが実行可能なコマンドであるか否かの確認であるコマンド解釈と、前記パケットに含まれる、暗号化されているパラメータの復号と、前記返信パケットに含まれる、前記カード内処理の結果の暗号化とを行う暗号処理手段と、前記暗号処理手段により実行可能であるか否かの確認が行われた前記コマンドと、前記暗号処理手段により復号された前記パラメータに従って前記カード内処理を行い、記憶しているデータの読み書きを行う制御手段とを備える非接触ICチップにおける処理をコンピュータに実行させるプログラムであって、前記リーダライタから前記パケットが送信されてくることに応じて、前記パケットの受信、前記コマンド解釈、前記パラメータの復号、前記カード内処理、前記返信パケットの生成、前記カード内処理の結果の暗号化、および前記返信パケットの送信を一連の処理としてその順番で開始する場合において、前記パケットの受信と前記コマンド解釈と前記パラメータの復号と前記カード内処理とのうちの少なくとも一部の処理を時間的に並行して行い、前記カード内処理が終了した後、前記返信パケットの生成と前記カード内処理の結果の暗号化とを時間的に並行して行い、前記カード内処理の結果の暗号化が終了した後、前記返信パケットの送信を行うステップを含む処理をコンピュータに実行させる。
本発明の非接触ICチップ、処理方法、並びにプログラムにおいては、リーダライタからパケットが送信されてくることに応じて、前記パケットの受信、コマンド解釈、パラメータの復号、カード内処理、返信パケットの生成、前記カード内処理の結果の暗号化、および前記返信パケットの送信を一連の処理としてその順番で開始する場合において、前記パケットの受信と前記コマンド解釈と前記パラメータの復号と前記カード内処理とのうちの少なくとも一部の処理が時間的に並行して行われ、前記カード内処理が終了した後、前記返信パケットの生成と前記カード内処理の結果の暗号化とが時間的に並行して行われ、前記カード内処理の結果の暗号化が終了した後、前記返信パケットの送信が行われる。
本発明によれば、非接触ICチップにより行われる処理の時間を短縮することができる。また、それを、リーダライタとの通信距離を確保しつつ実現することができる。
以下、本発明の実施の形態について図を参照して説明する。
図5は、本発明を適用したICチップ41の構成例を示すブロック図である。
図5のICチップ41は、例えば、リモートICカードに搭載され、外部のリーダライタとのやりとりを非接触で行うチップである。ICチップ41は、アンテナ51、アナログ部52、およびロジック部53から構成される。
アナログ部52は、リーダライタから送信され、アンテナ51により受信された電磁波に基づいてICチップ41の電源となる電圧を生成し、生成した電圧を、ロジック部53を含むICチップ41の全体に供給する。これにより、電池交換などのメンテナンスが不要となる。また、アナログ部52は、リーダライタから送信されてきたデータを復号し、取得したデータをロジック部53に出力したり、ロジック部53から供給されてきたデータを変調し、アンテナ51からリーダライタに送信したりする。
ロジック部53は、アナログ部52から供給されてきたデータ(パケット)を受信し、カード処理を行う。ロジック部53によるカード処理においては、図4に示したように、ある前の処理が終わってから後の処理が行われるといったように時系列順に各処理が行われるのではなく、前の処理が行われている間でも、それと時間的に並行して行うことが可能な後の処理については、前の処理が終わるのを待つことなく開始される。
図6は、図5のロジック部53により行われるカード処理の流れの例を示す図である。
ロジック部53により行われるカード処理は、開始タイミング、終了タイミングが異なるものの、図4に示した処理と同様の処理からなる。すなわち、一連のカード処理は、パケットの受信、コマンドの解釈、パケットの復号、カード内部処理、返信パケットの生成、パケットの暗号化、および返信パケットの送信からなる。
パケットの受信は、リーダライタから送信されてきたパケットに含まれるシンクを検出したり、CRCを用いてパケットの正当性を検証する処理であり、コマンドの解釈は、リーダライタから送信されてきたパケットに含まれるコマンドコードが、処理可能なコマンドコードとしてICチップ41に予め登録されているコマンドコードと一致するか否かを確認する処理である。
パケットの復号は、リーダライタから送信されてきたパケットに含まれるデータに暗号化が施されている場合、それを復号する処理であり、カード内部処理は、リーダライタから送信されてきたパケットに含まれるコマンドコードとパラメータに従って行われる処理である。
返信パケットの生成は、プリアンブル、シンク、CRCや、カード内部処理の処理結果のデータなどを含む返信パケットを生成する処理であり、パケットの暗号化は、返信パケットに含まれる処理結果のデータに暗号化を施す場合、それを行う処理である。返信パケットの送信は、返信パケットをリーダライタに送信する処理である。
図6の例においては、時刻t0にパケットの受信が開始され、パケットの受信が終了する時刻t1より前の時刻である時刻t11において、パケットの受信の後の処理であるコマンドの解釈が開始される。
リーダライタから送信されてくるパケットには、例えば、図7に示すように、プリアンブル、シンク、レングス、コマンドコード、パラメータ、およびCRCの各データが配置され、その順番でロジック部53により受信されるが、コマンドコードが受信された時点でコマンドコードの解釈が開始される。
これにより、パケットの受信(コマンドコードより後に受信されるCRCを用いたパケットのチェックなどの処理)と、コマンドコードの解釈は、コマンドコードの解釈が開始された時刻t11から、パケットの受信が終了する時刻t1までの間、時間的に並行して行われることになる。コマンドコードの解釈は時刻t13まで行われる。
同様に、並行して行うことが可能な後の処理については、前の処理が終わるのを待つことなく、開始することが可能になった時点で開始される。
図6の例においては、コマンドコードに続けてパケットに配置されるパラメータの復号が、コマンドの解釈が終了する時刻t13より前の時刻である時刻t12において開始され、コマンドの解釈と、パラメータの復号が並行して行われる(図6ではパケットの受信の一部も並行して行われている)。パラメータの復号は時刻t15まで行われる。
また、復号されたパラメータと、解釈されたコマンドコードに基づくカード内部処理が、パラメータの復号が終了する時刻t15より前の時刻である時刻14において開始され、パラメータの復号と、カード内部処理が並行して行われる。カード内部処理は時刻t16まで行われる。
パケットに含まれるパラメータ全体のうち、復号が終わった一部のパラメータだけを用いることによって実行可能な処理もあることから、このような実行可能な処理については、全てのパラメータの復号が終わる前に開始される。例えば、EEPROMに書き込むパラメータとして、2つのパラメータが暗号化された状態でパケットに含まれている場合、1つ目のパラメータの復号が終わった時、2つ目のパラメータの復号と並行して、既に復号された1つ目のパラメータの書き込みが開始される。
図6の説明に戻り、カード内部処理が終了する時刻t16において、返信パケットの生成(返信パケットに含まれるプリアンブル、シンク、CRCの生成)が開始される。返信パケットの生成は時刻t18まで行われる。
また、返信パケットに含まれるパラメータの暗号化が、プリアンブルの生成などが終了する時刻t18より前の時刻である時刻17において開始され、プリアンブルの生成などの処理と、パラメータの暗号化が時間的に並行して行われる。パラメータの暗号化は時刻t19まで行われる。
暗号化されたパラメータが格納されることによって返信パケットが生成され、それを送信することが可能になった時刻t19において返信パケットの送信が開始される。返信パケットの送信は時刻t20まで行われる。
以上のように、カード内部処理の結果が必要になる返信パケットの生成や、返信パケットが生成されている必要がある返信パケットの送信のように、その処理を行うためには前の処理が完全に終わっている必要がある処理を除いて、複数の処理が並行して行われることにより、前の処理が終わってから後の処理を行うといったように時系列順に各処理が行われる場合に較べて、カード処理全体にかかる時間を短縮することができる。例えば、図6の時刻t0からt20までの時間は、図4の時刻t0からt7までの時間より短い。図6のカード処理に含まれる1つの処理にかかる時間は、図4の、同じ1つの処理にかかる時間と同じ時間である。
なお、カード内部処理の処理結果が得られた部分から、それを用いて返信パケットを生成したり、暗号化処理の処理結果が得られた部分から、それを送信したりすることにより、返信パケットの生成、および返信パケットの送信についても前の処理をオーバーラップさせる事も可能である。
以上のような、各処理のタイミングを制御するロジック部53の処理についてはフローチャートを参照して後述する。
図8は、図5のアナログ部52の構成例を示す図である。図2と同じ部分には同じ符号を付してある。重複する説明については適宜省略する。
アナログ部52の構成は、エネルギモニタ部61が設けられている点を除いて、図2に示したものと同様である。エネルギモニタ部61は、定電圧レギュレータ9から供給されてきた電圧VDDにより駆動し、アンテナ51により受信される、リーダライタからの電磁波のエネルギを監視する。エネルギモニタ部61による監視結果はロジック部53に通知される。
ロジック部53においては、例えば、アンテナ51により受信されるリーダライタからの電磁波のエネルギが比較的多い場合にだけ複数の処理が並行して行われるように、各処理のタイミングがエネルギモニタ部61による監視結果に基づいて制御される。
複数の処理を並行して行う場合、当然、それに伴って消費電力が高くなるが、それを、アンテナ51により受信される電磁波のエネルギが少ないときにも行うとすると、リーダライタからの電磁波に基づいて得られる電力によってICチップ41の消費電力を賄うことができなり、リーダライタとの通信距離が短くなってしまうことから、そのような事態を回避すべく、アンテナ51により受信される電磁波のエネルギが多い場合、すなわち、エネルギに余裕がある場合にだけ複数の処理が並行して行われるように、各処理のタイミングが制御される。
定電圧レギュレータ9は、入力端子に印可される電圧を一定の電圧VDDに安定化し、ロジック部53のCPUによる制御(電源電圧制御)に従って各部に電力を供給する。
図9は、図5のロジック部53の構成例を示すブロック図である。
図9の例においては、CPU71、I/O管理部72、暗号処理制御部73、暗号/復号処理部74、暗号処理用バッファ75、ROM82、RAM83、EEPROM84、暗号/復号処理部85、およびCRC演算部86がバス81を介して接続されている。CPU71にはクロックギヤ80も接続される。また、暗号処理制御部73、暗号/復号処理部74、および暗号処理用バッファ75はバス76にも接続され、このバス76には、送受信用バッファ77が接続されている。送受信用バッファ77にはSPU78が各種のデータを書き込むことができるようになされている。バス76とバス81は接続されている。
CPU71は、アナログ部52から電圧VDDが供給され、リセットが解除されることに応じて起動し、ROM82に記憶されているプログラムに従って、クロックギヤ80から供給されてくるクロックを基準クロックとして各処理を行う。起動したとき、CPU71は、リーダライタから送信されてくるパケットの処理を可能とするため、ハードウエアの初期化の他、ROM82に記憶されている鍵を暗号/復号処理部74に登録したり、暗号処理制御部73(コマンドチェック部73A)に暗号化が必要なコマンドを登録したりする。
また、CPU71は、起動したとき、送受信制御部79に対して、受信モードの起動を指示するとともに、暗号処理制御部73に対して、復号モードの起動を指示する。これらの指示はI/O管理部72を介して行われる。受信モードで起動したとき、送受信制御部79においては、SPU78により取得されたパケットの解析が行われ、シンクの検出、CRCを用いたパケットの正当性の検証などが、CPU71による制御によらずに独立して行われる。そのとき、復号モードが起動されている事により、暗号処理制御部73においては、受信したパケットデータ内のコマンドコードが確認され、そのコマンドコードが、予め登録した、復号が必要なコマンドコードであった場合は、その復号が、CPU71による制御によらずに独立して行われる。
CPU71は、受信モードで起動した送受信制御部79から、シンクを検出したことが通知されてきたとき、暗号処理用バッファ75、または送受信用バッファ77に転送されたパラメータを用いて、EEPROM84に記憶されているデータの書き換えなどの、図6でいうカード内部処理を行う。また、パケットにエラーがあることが送受信制御部79から通知されてきたとき、CPU71は、ロジック部53の全体の処理を終了させる。
CPU71は、返信パケットをリーダライタに送信するとき、送受信制御部79に対して、送信モードの起動を指示するとともに、暗号処理制御部73に対して、暗号化モードの起動を指示する。これらの指示もI/O管理部72を介して行われる。送信モードで起動したとき、送受信制御部79においては、プリアンブル、シンク、CRCを生成したり、暗号化されたパラメータを格納したりする返信パケットの生成が、CPU71による制御によらずに独立して行われる。一方、暗号化モードがさらに起動されていると、暗号処理制御部73においては、送信するデータに暗号化を行うが、その暗号化が、CPU71による制御によらずに独立して行われる。
さらに、CPU71は、I/O管理部72において受信される、エネルギモニタ部61からの監視結果(受信エネルギ通知)に基づいて、アンテナ51により受信される電磁波のエネルギに余裕がある場合にだけ複数の処理が並行して行われるように、定電圧レギュレータ9から各部(例えば、暗号処理制御部73、送受信制御部79、暗号/復号処理部85)に対する電源の供給をI/O管理部72を介して制御する。
I/O管理部72はCPU71のインタフェースである。I/O管理部72にはアンテナ51により受信される電磁波のエネルギの監視結果がエネルギモニタ部61から通知されており、CPU71は、それをバス81を介して読み出す事ができる。また、I/O管理部72は、各部に対する指示がバス81を介してCPU71から供給されてきたとき、それを各部に出力する。
暗号処理制御部73は、CPU71からの指示に応じて暗号化モード、復号モードを起動し、起動した後は、CPU71からの制御によらずに独立して処理を行う。例えば、暗号処理制御部73は、送受信用バッファ77に記憶されているデータの復号、暗号処理用バッファ75に記憶されているデータの暗号化を暗号/復号処理部74に行わせる。
暗号処理制御部73はコマンドチェック部73Aを有しており、このコマンドチェック部73Aは、送受信用バッファ77にパケットデータが受信された事が送受信制御部79から通知されてきたとき、その受信されたコマンドコードが、CPU71の起動時に登録されたコマンドコードと一致するか否かを確認する。一致することを確認した場合、コマンドチェック部73Aは、その一致することを確認したコマンドコードを、ICカード41において処理可能なコマンドコードとしてCPU71に出力するとともに、暗号処理制御部73は、送受信用バッファ77に記憶されているデータの復号を行う。
暗号/復号処理部74は、リーダライタから送信されてきたパケットに含まれるパケットデータに暗号化が施されている場合、SPU78により受信され、送受信用バッファ77に転送されたパラメータを暗号処理制御部73による制御に従って復号し、復号して得られたパラメータを暗号処理用バッファ75に転送する。
また、暗号/復号処理部74は、リーダライタに送信する返信パケットに含まれるパケットデータに暗号化を施す必要がある場合、暗号処理用バッファ75に記憶されているパラメータに暗号化を施し、暗号化されたパラメータを送受信用バッファ77に転送する。パラメータの復号、暗号化は、CPU71の起動時や、カード内部の処理過程で登録された鍵を用いて行われる。
暗号処理用バッファ75はデュアルポートメモリであり、送受信用バッファ77からバス76を介して転送されてきたデータの記憶と、記憶しているデータの読み出しを並行して行うことが可能とされる。逆に、データの書き込みを行いながら、記憶されたデータを送受信バッファ側に送出する事も可能とされる。
送受信用バッファ77もデュアルポートメモリであり、SPU78から転送されてきたデータの記憶と、記憶しているデータの読み出しを並行して行うことが可能とされる。このバッファについても、逆に、データの書き込みを行いながら、SPU78側に送出する事も可能とされる。
SPU78は、送受信制御部79による制御に従って、アナログ部52の復調回路8から供給されてきた信号wdに基づいて、リーダライタから送信されてきたパケットを取得し、取得したパケットを送受信用バッファ77に転送する。また、SPU78は、リーダライタに返信パケットを送信するとき、送受信制御部79による制御に従って、送受信制御部79により生成された返信パケットを表す信号rdをアナログ部52の変調回路7に出力する。
送受信制御部79は、CPU71からの指示に応じて、受信モード、送信モードを起動し、起動した後は、CPU71からの制御によらずに独立して処理を行う。例えば、送受信制御部79は、受信モードを起動しているとき、SPU78により取得されたパケットに含まれるシンクの検出、CRCを用いたパケットの正当性の検証などを行い、シンクを検出したとき、或いは、パケットがエラーであることを検出したとき、そのことをCPU71に通知する。また、送受信制御部79は、SPU78から送受信用バッファ77にコマンドコードを転送させたとき、そのことを暗号処理制御部73(コマンドチェック部73A)に通知する。
送受信制御部79は、送信モードを起動しているとき、リーダライタに送信する返信パケットに含めるプリアンブル、シンク、CRCを生成し、それらを含む返信パケットを、SPU78を制御することによってリーダライタに送信する。
ROM82は、CPU71により実行されるプログラム、処理可能なコマンドコードとして予め登録されているコマンドコード、暗号/復号処理部74により用いられる鍵などの各種のデータを記憶する。
RAM83はCPU71が各種の処理を実行する上において必要なデータなどを適宜記憶する。
EEPROM84は不揮発性のメモリであり、暗号/復号処理部74により用いられる鍵などの各種のデータや運賃の残高を表すデータなどを記憶する。図9の例においては、EEPROM84は4つのバンクからなる。
暗号/復号処理部85は、EEPROM84に記憶させるデータに暗号化を施す必要があるとき、その暗号化を行い、暗号化されたデータをEEPROM84に記憶させる。また、暗号/復号処理部85は、例えば、CPU71が処理対象とするデータなどの、EEPROM84に記憶されているデータに暗号化が施されている場合、それを復号する。暗号/復号処理部85によるデータの暗号化、復号は、CPU71による制御に従って、適宜、暗号処理制御部73などによる処理と時間的に並行して行われる。
CRC演算部86は、EEPROM84に記憶させるデータにCRCを付加する必要があるとき、生成したCRCをデータに付加し、それをEEPROM84に記憶させる。また、CRC演算部86は、例えば、CPU71が処理対象とするデータなどの、EEPROM84に記憶されているデータにCRCが付加されている場合、CRCを用いてデータの正当性を検証する。
次に、ロジック部53のCPU71、送受信制御部79、および暗号処理制御部73のそれぞれの動作についてフローチャートを参照して説明する。
始めに、図10のフローチャートを参照して、CPU71の処理について説明する。
アナログ部52から電圧VDDが供給され、リセットが解除されることによってステップS1において起動したとき、CPU71は、ステップS2に進み、リーダライタから送信されてきたパケットを受信可能な状態にする準備を行う。
例えば、CPU71は、ハードウエアの初期化を行った後、ROM82に記憶されているコマンドコードをコマンドチェック部73Aに、鍵を暗号/復号処理部74にそれぞれ登録する。また、CPU71は、受信モードの起動を送受信制御部79に指示するとともに、復号モードの起動を暗号処理制御部73に指示する。
ステップS3において、CPU71は、シンクを検出したことが送受信制御部79から通知されてきたか否かを判定し、通知されてきたと判定するまで待機する。受信モードで起動した送受信制御部79においては、SPU78により取得されたパケットの解析が行われ、シンクが検出されたとき、そのことが送受信制御部79から通知されてくる。
ステップS3において、シンクを検出したことが通知されてきたと判定した場合、CPU71は、ステップS4に進み、コマンドチェック部73Aから供給されてきたコマンドコードと、送受信用バッファ77、または暗号処理用バッファ75に記憶されているパラメータに基づいてカード内部処理を行う。さらに、受信したパケットデータ内のコマンドコードが、復号が必要なものとして予め登録したコマンドコードである場合、パケットデータは、SPU78から送受信用バッファ77に転送され、暗号/復号処理部74により復号された後、暗号処理用バッファ75に転送される。コマンドコードが、予め登録したコマンドコードと一致しない場合、SPU78から送受信用バッファ77に転送されるパケットデータは、そのまま保持される。
CPU71によるカード内部処理の結果は、それを暗号化して送信する必要がある場合、暗号処理用バッファ75に転送される。
ステップS5において、CPU71は、カード内部処理が終了したか否かを判定し、終了していないと判定した場合、ステップS6に進み、パケットのエラーを検出したことが送受信制御部79から通知されてきたか否かを判定する。送受信制御部79においては、SPU78により取得されたパケットに含まれるCRCを用いてパケットの正当性の検証が行われ、エラーであることが確認された場合、そのことが送受信制御部79から通知されてくる。
ステップS6において、CPU71は、パケットのエラーを検出したことが通知されてきていないと判定した場合、ステップS4に戻り、それ以降の処理を繰り返し行う。また、CPU71は、ステップS6において、パケットのエラーを検出したことが通知されてきたと判定した場合、処理を終了させる。
一方、ステップS5において、CPU71は、カード内部処理を終了したと判定した場合、ステップS7に進み、処理結果を表すデータなどを含む返信パケットをリーダライタに送信するための送信処理を行う。例えば、CPU71は、送信モードの起動を送受信制御部79に指示するとともに、暗号化モードの起動を暗号処理制御部73に指示する。
暗号化モードを起動した暗号処理制御部73においては、暗号処理用バッファ75に記憶されている、CPU71によるカード内部処理の処理結果であるデータの暗号化が行われ、暗号化されたデータが送受信用バッファ77に転送される。一方、受信モードを起動した送受信制御部79においては、プリアンブル、シンク、CRCが生成され、生成されたそれらのデータと、送受信用バッファ77に転送されたデータ(暗号化された処理結果のデータ)から生成された返信パケットがSPU78から送信される。
次に、図11のフローチャートを参照して、送受信制御部79の処理について説明する。
ステップS21において、CPU71からの指示に応じて受信モードを起動したとき、送受信制御部79は、ステップS22に進み、SPU78により取得されたパケットの解析を行う。SPU78においては、アナログ部52から供給されてきた信号wdに基づいて、リーダライタから送信されてきたパケットが取得される。
ステップS23において、送受信制御部79は、パケットに含まれるシンクを検出したか否かを判定し、検出したと判定するまでパケットの解析を行う。送受信制御部79は、ステップS23において、シンクを検出したと判定した場合、ステップS24に進み、そのことをCPU71に通知する。
シンクを検出したとき、送受信制御部79は、パケットのシンク以降の位置に含まれるコマンドコード、パラメータなどのデータを、SPU78から送受信用バッファ77に転送させ、ステップS25において、コマンドコードを転送したことをコマンドチェック部73Aに通知する。
ステップS26において、送受信制御部79は、パケットに含まれるCRCを用いてパケットの正当性を検証し、パケットのエラーを検出したか否かを判定する。
送受信制御部79は、ステップS26において、パケットのエラーを検出したと判定した場合、ステップS27に進み、そのことをCPU71に通知した後、処理を終了させる。CPU71においても、その後の処理は終了される。
一方、ステップS26において、送受信制御部79は、パケットのエラーを検出していないと判定した場合、ステップS28に進み、送信モードの起動がCPU71から指示されたか否かを判定する。カード内部処理がCPU71により行われ、その処理結果を含む返信パケットをリーダライタに送信するとき、送信モードの起動がCPU71から指示されてくる。
ステップS28において、送受信制御部79は、送信モードの起動が指示されていないと判定した場合、ステップS29に進み、まだ解析していないパケットがSPU78により取得されたか否かを判定する。
送受信制御部79は、ステップS29において、SPU78によりパケットが取得されたと判定した場合、ステップS22以降の処理を繰り返す。一方、送受信制御部79は、ステップS29において、SPU78によりパケットが取得されていないと判定した場合、ステップS28に戻り、送信モードの起動が指示されるまで待機する。
ステップS28において、送信モードの起動がCPU71から指示されたと判定した場合、ステップS30に進み、送受信制御部79は、プリアンブル、シンク、CRCを生成し、生成したそれらのデータと、送受信用バッファ77に記憶されているデータに基づいて返信パケットを生成する。送受信用バッファ77には、例えば、暗号/復号処理部74により暗号化された、カード内部処理の処理結果のデータが記憶されている。
ステップS31において、送受信制御部79は、SPU78を制御することによって、返信パケットをリーダライタに送信し、処理を終了させる。
次に、図12のフローチャートを参照して、暗号処理制御部73の処理について説明する。
ステップS41において、CPU71からの指示に応じて復号モードが起動されたとき、暗号処理制御部73のコマンドチェック部73Aは、ステップS42において、CPU71によりROM82から読み出され、バス81を介して供給されてきたコマンドコードを復号が必要なコマンドコードとして登録する(内部に保持する)。
コマンドチェック部73Aは、ステップS43において、送受信用バッファ77にコマンドコードを転送したことが送受信制御部79から通知されてきたか否かを判定する。
コマンドチェック部73Aは、ステップS43において、コマンドコードを転送したことが通知されてきたと判定するまで待機し、通知されてきたと判定した場合、ステップS44に進む。
ステップS44において、コマンドチェック部73Aは、送受信用バッファ77に受信されているパケットデータからコマンドコードを読み出し、読み出したコマンドコードが、ステップS42で登録したコマンドコードと一致するか否かを確認する。それらのコマンドコードが一致する場合、コマンドチェック部73Aは、送受信用バッファ77から読み出したコマンドコードをCPU71に出力するとともに、暗号処理制御部73は、送受信用バッファ77に記憶されているデータの復号を行う。
ステップS45において、暗号処理制御部73は、送受信用バッファ77に記憶されているパラメータに施されている暗号を暗号/復号処理部74により復号させ、復号により得られたデータを暗号処理用バッファ75に転送する。
ステップS46において、カード内部処理が行われる。
ステップS47において、暗号処理制御部73は、暗号化モードの起動がCPU71から指示されたか否かを判定し、指示されていないと判定した場合、ステップS48に進む。
ステップS48において、カード内部処理により取得されたデータはそのまま送受信バッファ77に転送される。送受信用バッファ77に転送されたデータは、送受信制御部79により返信パケットに含められてリーダライタに送信される。
一方、ステップS47において、暗号化モードの起動が指示された場合、暗号処理制御部73は、ステップS49に進み、暗号処理用バッファ75に記憶されているデータ(CPU71によるカード内部処理の処理結果のデータ)を暗号/復号処理部74により暗号化させ、得られたデータを送受信用バッファ77に転送させる。送受信用バッファ77に転送されたデータは、送受信制御部79により返信パケットに含められてリーダライタに送信される。
以上のように、暗号処理制御部73、および送受信制御部79において、CPU71による制御によらずにそれぞれ独立して処理が行われるようにすることにより、CPU71による処理、暗号処理制御部73による処理、送受信制御部79による処理を時間的に並行して行わせることができ、カード処理全体にかかる時間を短縮することができる。
次に、図13のフローチャートを参照して、CPU71の電源電圧制御処理について説明する。この処理は、例えば、所定の周期で割り込み的に行われる。
ステップS61において、CPU71は、エネルギモニタ部61から通知され、I/O管理部72により取得された電磁波の受信状況の監視結果を受信し、ステップS62に進み、受信した監視結果に基づいて、電磁波のエネルギから得られる電力に余裕があるか否かを判定する。
ロジック部53の各部において並列的に複数の処理が行われていることから、その消費電力の量が、電磁波から得られる電力の量に近く、ステップS62において、電力に余裕がないと判定した場合、CPU71は、ステップS63に進み、並行して行われる処理の数を減らしたり、処理を行っている各部に定電圧レギュレータ9から供給される電圧を下げる等の制御を行うことによってロジック部53の消費電力を減らす。
消費電力が減らされた場合、または、ステップS62において、アンテナ51で受信される電磁波から得られる電力に余裕があると判定された場合、処理は終了される。
これにより、複数の処理が並行して行われることによりICチップ41の消費電力が多くなり、リーダライタとの通信距離が短くなることを防止することができる。また、図10乃至図12の処理により可能となる処理時間の短縮を、十分な通信距離を確保しつつ実現することができる。
上述した一連の処理は、ハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。
一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば、汎用のパーソナルコンピュータなどに、ネットワークや記録媒体からインストールされる。
この記録媒体は、装置本体とは別に、ユーザにプログラムを提供するために配布される、プログラムが記録されている磁気ディスク(フレキシブルディスクを含む)、光ディスク(CD-ROM(Compact Disk-Read Only Memory),DVD(Digital Versatile Disk)を含む)、光磁気ディスク(MD(登録商標)(Mini-Disk)を含む)、もしくは半導体メモリなどより構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに提供される、プログラムが記録されているROMやハードディスクなどで構成される。
なお、本明細書において、各ステップは、記載された順序に従って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
また、本明細書において、システムとは、複数の装置により構成される装置全体を表わすものである。
リーダライタとリモートICカード間のやりとりについて示す図である。 従来のICチップに設けられるアナログ部の構成例を示す図である。 従来のICチップに設けられるロジック部の構成例を示す図である。 図1のカード処理の流れを示す図である。 本発明を適用したICチップの構成例を示すブロック図である。 図5のロジック部により行われるカード処理の流れの例を示す図である。 パケット構造の例を示す図である。 図5のアナログ部の構成例を示す図である。 図5のロジック部の構成例を示す図である。 CPUの処理について説明するフローチャートである。 送受信制御部の処理について説明するフローチャートである。 暗号処理制御部の処理について説明するフローチャートである。 CPUの電源電圧制御処理について説明するフローチャートである。
符号の説明
41 ICチップ, 51 アンテナ, 52 アナログ部, 53 ロジック部, 61 エネルギモニタ部, 71 CPU, 73 暗号処理制御部, 79 送受信制御部

Claims (5)

  1. リーダライタからの電磁波に基づいて生成された電力により駆動する非接触ICチップにおいて、
    前記リーダライタから電磁波を介して送信されてきたパケットの受信と、暗号化されたカード内処理の結果を格納する返信パケットの生成と、前記リーダライタに対する前記返信パケットの送信とを行う送受信手段と、
    前記パケットに含まれるコマンドが実行可能なコマンドであるか否かの確認であるコマンド解釈と、前記パケットに含まれる、暗号化されているパラメータの復号と、前記返信パケットに含まれる、前記カード内処理の結果の暗号化とを行う暗号処理手段と、
    前記暗号処理手段により実行可能であるか否かの確認が行われた前記コマンドと、前記暗号処理手段により復号された前記パラメータに従って前記カード内処理を行い、記憶しているデータの読み書きを行う制御手段と
    を備え、
    前記リーダライタから前記パケットが送信されてくることに応じて、前記パケットの受信、前記コマンド解釈、前記パラメータの復号、前記カード内処理、前記返信パケットの生成、前記カード内処理の結果の暗号化、および前記返信パケットの送信が一連の処理としてその順番で開始される場合において、前記パケットの受信と前記コマンド解釈と前記パラメータの復号と前記カード内処理とのうちの少なくとも一部の処理が時間的に並行して行われ、前記カード内処理が終了した後、前記返信パケットの生成と前記カード内処理の結果の暗号化とが時間的に並行して行われ、前記カード内処理の結果の暗号化が終了した後、前記返信パケットの送信が行われる
    非接触ICチップ。
  2. 前記リーダライタからの電磁波の受信状況を監視する監視手段をさらに備え、
    前記制御手段は前記監視手段による監視結果に基づいて、前記一連の処理の各処理のタイミングを制御する
    請求項1に記載の非接触ICチップ。
  3. 前記制御手段は、前記一連の処理の各処理が時間的に並行して行われることによって消費される電力の量が、前記リーダライタからの電磁波に基づいて生成される電力の量に近い場合、並行して行われる処理の数を減らすように、前記一連の処理の各処理のタイミングを制御する
    請求項2に記載の非接触ICチップ。
  4. リーダライタからの電磁波に基づいて生成された電力により駆動し、
    前記リーダライタから電磁波を介して送信されてきたパケットの受信と、暗号化されたカード内処理の結果を格納する返信パケットの生成と、前記リーダライタに対する前記返信パケットの送信とを行う送受信手段と、
    前記パケットに含まれるコマンドが実行可能なコマンドであるか否かの確認であるコマンド解釈と、前記パケットに含まれる、暗号化されているパラメータの復号と、前記返信パケットに含まれる、前記カード内処理の結果の暗号化とを行う暗号処理手段と、
    前記暗号処理手段により実行可能であるか否かの確認が行われた前記コマンドと、前記暗号処理手段により復号された前記パラメータに従って前記カード内処理を行い、記憶しているデータの読み書きを行う制御手段と
    を備える非接触ICチップの処理方法であって
    前記リーダライタから前記パケットが送信されてくることに応じて、前記パケットの受信、前記コマンド解釈、前記パラメータの復号、前記カード内処理、前記返信パケットの生成、前記カード内処理の結果の暗号化、および前記返信パケットの送信を一連の処理としてその順番で開始する場合において、
    前記パケットの受信と前記コマンド解釈と前記パラメータの復号と前記カード内処理とのうちの少なくとも一部の処理を時間的に並行して行い、
    前記カード内処理が終了した後、前記返信パケットの生成と前記カード内処理の結果の暗号化とを時間的に並行して行い、
    前記カード内処理の結果の暗号化が終了した後、前記返信パケットの送信を行う
    ステップを含む処理方法。
  5. リーダライタからの電磁波に基づいて生成された電力により駆動し、
    前記リーダライタから電磁波を介して送信されてきたパケットの受信と、暗号化されたカード内処理の結果を格納する返信パケットの生成と、前記リーダライタに対する前記返信パケットの送信とを行う送受信手段と、
    前記パケットに含まれるコマンドが実行可能なコマンドであるか否かの確認であるコマンド解釈と、前記パケットに含まれる、暗号化されているパラメータの復号と、前記返信パケットに含まれる、前記カード内処理の結果の暗号化とを行う暗号処理手段と、
    前記暗号処理手段により実行可能であるか否かの確認が行われた前記コマンドと、前記暗号処理手段により復号された前記パラメータに従って前記カード内処理を行い、記憶しているデータの読み書きを行う制御手段と
    を備える非接触ICチップにおける処理をコンピュータに実行させるプログラムであって、
    前記リーダライタから前記パケットが送信されてくることに応じて、前記パケットの受信、前記コマンド解釈、前記パラメータの復号、前記カード内処理、前記返信パケットの生成、前記カード内処理の結果の暗号化、および前記返信パケットの送信を一連の処理としてその順番で開始する場合において、
    前記パケットの受信と前記コマンド解釈と前記パラメータの復号と前記カード内処理とのうちの少なくとも一部の処理を時間的に並行して行い、
    前記カード内処理が終了した後、前記返信パケットの生成と前記カード内処理の結果の暗号化とを時間的に並行して行い、
    前記カード内処理の結果の暗号化が終了した後、前記返信パケットの送信を行う
    ステップを含む処理をコンピュータに実行させるプログラム。
JP2005041199A 2005-02-17 2005-02-17 非接触icチップ、処理方法、並びにプログラム Expired - Fee Related JP4655201B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005041199A JP4655201B2 (ja) 2005-02-17 2005-02-17 非接触icチップ、処理方法、並びにプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005041199A JP4655201B2 (ja) 2005-02-17 2005-02-17 非接触icチップ、処理方法、並びにプログラム

Publications (2)

Publication Number Publication Date
JP2006227935A JP2006227935A (ja) 2006-08-31
JP4655201B2 true JP4655201B2 (ja) 2011-03-23

Family

ID=36989270

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005041199A Expired - Fee Related JP4655201B2 (ja) 2005-02-17 2005-02-17 非接触icチップ、処理方法、並びにプログラム

Country Status (1)

Country Link
JP (1) JP4655201B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103879157B (zh) * 2014-01-20 2016-10-05 珠海艾派克微电子有限公司 成像盒存储芯片的参数发送方法、存储芯片及成像盒

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004206409A (ja) * 2002-12-25 2004-07-22 Toshiba Corp 非接触式icカード

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004206409A (ja) * 2002-12-25 2004-07-22 Toshiba Corp 非接触式icカード

Also Published As

Publication number Publication date
JP2006227935A (ja) 2006-08-31

Similar Documents

Publication Publication Date Title
EP1632836A2 (en) Information processing apparatus and method, program, and recording medium
JP5521803B2 (ja) 通信装置、通信方法、及び、通信システム
JP2007317170A (ja) Icモジュールおよび携帯電話
JP2008015802A (ja) 情報処理システム、情報処理装置および方法
US20050167513A1 (en) IC card with built-in coprocessor for auxiliary arithmetic, and control method thereof
JP2007142820A (ja) 携帯端末,データ通信方法,およびコンピュータプログラム
JP2006172121A (ja) カード状記憶装置とそのアダプタ及びホスト機器
KR20080100121A (ko) 무선 통신 단말, 반도체 디바이스, 데이터 통신 방법 및무선 통신 시스템
EP2120386A1 (en) Communication device, communication method, reader/writer, and communication system
US7889055B2 (en) IC tag, IC tag system, and method of executing command of the IC tag
CN103902402A (zh) 射频标签安全芯片设备及其数据处理方法
JP4670917B2 (ja) 通信装置、通信方法、プログラム、および通信システム
US6831548B1 (en) Data carrier with means for reducing the power consumption upon reception of data
JP3929761B2 (ja) 半導体装置の動作制御方法、半導体装置動作制御プログラム、半導体装置動作制御プログラムを記録した記録媒体、半導体装置、およびicカード
JP4655201B2 (ja) 非接触icチップ、処理方法、並びにプログラム
JP2006236200A (ja) カード状記憶装置とそのホスト装置
JP2009223827A (ja) 情報記憶媒体及び情報記憶媒体処理装置
US20120045055A1 (en) Communication device, information processing system, and encryption switching method
JP2006119693A (ja) 情報処理装置及び情報処理方法、並びにコンピュータ・プログラム
WO2011002030A1 (ja) 携帯可能電子装置、及び携帯可能電子装置の制御方法
JP2006107380A (ja) 情報処理装置及び情報処理方法、メモリ装置、並びにコンピュータ・プログラム
JP5693824B2 (ja) Icカードの処理装置、icカード、及びicカードの処理システム
JP4799058B2 (ja) Icカード、並びにコンピュータ・プログラム
JP2009015651A (ja) 情報記憶媒体
JP2005078181A (ja) 非接触icカード

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070828

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100722

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100727

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100915

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

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

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

Free format text: PAYMENT UNTIL: 20140107

Year of fee payment: 3

R151 Written notification of patent or utility model registration

Ref document number: 4655201

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

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

Free format text: PAYMENT UNTIL: 20140107

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

LAPS Cancellation because of no payment of annual fees