説明

データキャリア及びデータキャリアシステム

【課題】メモリデータ書換え中にタグへの供給電源が切れた場合にメモリ内容が壊れてしまう不都合を回避するためにデータ保証に必要なメモリ容量を少なくできるようにするとともに、メモリ内容の改竄を防止できるようにする。
【解決手段】条件判定手段の判定結果が更新条件に合致する場合には、有効データ管理手段により管理されている有効データが保持されているアドレス領域とは異なる側のアドレス領域に前記最新の更新データの書込みを行い、その後、有効データとして管理するアドレス領域を反転させるように制御するとともに、リーダ/ライタ装置へACK応答するように前記条件判定手段を制御し、前記判定結果が前記更新条件に合致しない場合には、メモリの更新データを無効として不揮発メモリに保持されている有効データの書換えを行なわないように更新データ書き込み手段を制御する状態制御シーケンサとを備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明はデータキャリア及びデータキャリアシステムに関し、特に、食器の使用回数、リネンのクリーニング回数、貸衣装のレンタル回数、またはバッテリーパックの充電回数、トナー・インクカートリッジなどの消耗品リサイクル回数などを管理するために用いて好適な技術に関するものである。
【背景技術】
【0002】
近年、地球環境の保全を目的として各種リサイクル品のリサイクルが図られるようになってきた。例えば、レストランや学校、社員食堂などで繰り返し使用される食器や、ホテルのリネン用品、貸衣装業者の衣装、デジタルカメラのバッテリー、複写機・プリンタなどのトナー・インクカートリッジなどは、使い捨てることなくリサイクル品として繰り返し使用できるように様々な工夫がされてきている。
【0003】
しかしながら、リサイクル品は再使用するにつれて劣化していくため、その再使用回数を効率よく管理する仕組みが必要になってきている。再使用回数を管理する方法のひとつとして、書換え可能なメモリ機能を持つタグを用いる方法がある。これは、メモリ機能を持つタグをリサイクル品に取り付け、リサイクル品を再使用する都度メモリの使用履歴を更新して再利用期限や制限回数と比較することで管理するようにしている。例えば、特許文献1においては、確実に対応するリサイクル品に対する使用情報を記録する方法が提案されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2005−134513号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、メモリ機能を搭載したタグを取り付けたリサイクル品の運用に際して次のような課題がある。
第1の課題としては、書換えに失敗してメモリ内容を壊してしまう場合がある。また、第2の課題として、不正な値に意図的に書き換えられてしまうことを確実に防止することが困難なことである。
【0006】
第1の課題の具体例としては、タグのメモリデータ書換え中にタグへの供給電源が切れた場合には、メモリの保存データは不定値となり書換え前の値か書換え後の値であるかを含めて全く保証されない。例えば、書換え可能な不揮発性メモリの代表であるEEPROMの場合、データ書換えの際には一度昇圧して該当アドレスのメモリデータをデータの全ビットの値が全て「1」の値になるようイレース(HIGHレベルにチャージ)し、データの値が「0」(LOWレベル)のビット線のみ書き込む(LOWレベルにディスチャージする)動作を行う。
【0007】
よって、チャージ直後に電源が切れた場合、データは全て値「1」に化けてしまい、ディスチャージ中に電源が切れた場合はデータの値そのものが「0」とも「1」とも判定できない中間的な電圧レベルで不定な値となる危険性が高くなってしまう。このため従来は、プリペード前払いカードの課金データや、リネン・消耗品などのリサイクル回数データなどのように、減算方向への一方向性を担保する必要性があるデータ(履歴データ)では、データが壊れては運用システムが破綻することになってしまう。このような不都合を回避するため、書き込み中にデータ化けが起こり得るものとしてソフトウェアで回避シーケンスを組む方法が考案されていた。
【0008】
この回避方法として、複数メモリの多数決判定方式がある。具体的には、メモリの4つの異なるアドレスに同じ値を書いておいて、更新する前に当該4つのアドレスのデータを読み出して2つの値が同じであれば多数決で正しい値として認識し、更新値をメモリの当該4つのアドレスに書き込む方法である。ここで言う更新値とは、プリペード前払いカードにあってはカードの利用者が消費した課金データであり、リネン・消耗品などにあっては読み出した値からリサイクル使用数を差し引いた値のことである。
【0009】
また、メモリの節約のため3つの異なるアドレスを使って多数決判定する方法もあるが、この場合には2つ目を書き換えている最中に供給電源が落ちた場合には3つの値がそれぞれ異なって正確な判定がつかないリスクがあった。以上のようなソフトウェアによる回避方法では処理時間がかかる上に制御ソフトウェアの負担が大きいという問題があった。
【0010】
第2の課題の具体例としては、偽造を試みる者によってプリペードの課金データが任意の値に書き換えられてしまうと大きな損失を伴う。また、リネン・消耗品などのリサイクルデータが不正に書き換えられてしまうと、リネン・消耗品の品質問題が生じてしまうことである。
【0011】
このため、これら重要な履歴データ(多くの場合一方向性のデータ改竄防止を図る方法として、パスワード照合や鍵データに基づく認証、データそのものの暗号化などの技術が用いられている。
【0012】
しかしながら、いずれの方法も偽造を試みる者による解読攻撃を受けており、いたちごっこの状況にある。これらの改竄防止策が破られた場合には為すすべがなく、システム自体を新たに更新するなど大きなコストを伴っていた。
【0013】
本発明は前述の問題点に鑑み、メモリデータ書換え中にタグへの供給電源が切れた場合にメモリ内容が壊れてしまう不都合を回避するための方式を考案し、正しいデータの保証に必要なメモリ容量を少なくできるようにするとともに、パスワード照合や鍵データに基づく認証、データそのものの暗号化などの技術を用いることなく、メモリ内容の改竄を防止できるようにすることを目的とする。
【課題を解決するための手段】
【0014】
本発明のデータキャリアは、リーダ/ライタ装置との間でデータ通信を行う送受信回路と、前記送受信回路を介して前記リーダ/ライタ装置から取得する更新データを第1のアドレス領域または第2のアドレス領域に保持する不揮発メモリと、前記第1のアドレス領域または第2のアドレス領域にそれぞれ保持されている更新データのうちのどちらかを有効データとして管理する有効データ管理手段と、前記リーダ/ライタ装置とデータ通信を行って取得した最新の更新データと、前記不揮発メモリに保持されている有効データとが更新条件に合致するか否かを判定する条件判定手段と、前記条件判定手段の判定結果が前記更新条件に合致する場合には、前記有効データ管理手段により管理されている有効データが保持されているアドレス領域とは異なる側のアドレス領域に前記最新の更新データの書込みを行う更新データ書き込み手段と、前記更新データ書き込み手段が前記最新の更新データの書込みを行った後に有効データとして管理するアドレス領域を反転させるように前記有効データ管理手段を制御するとともに、前記送受信回路から前記リーダ/ライタ装置へACK応答するように前記条件判定手段を制御し、前記判定結果が前記更新条件に合致しない場合には、メモリの更新データを無効として前記不揮発メモリに保持されている有効データの書換えを行なわないように前記更新データ書き込み手段を制御する状態制御シーケンサとを備えたことを特徴とする。
【発明の効果】
【0015】
本発明によれば、メモリデータ書換え中にタグへの供給電源が切れた場合にメモリ内容が壊れてしまう不都合を回避するために必要なメモリ容量を少なくすることができる。また、リーダ/ライタ装置側のソフトウェアで行っていた誤書込み防止処理を不要にできるとともに、運用で開示されている書込みコマンドでは履歴データを戻す方向への不正なデータ改竄を行うことができないので、データ改竄を確実に防止することができる。ここで履歴データを戻す方向への不正なデータとは、プリペードの課金データにあってはカードに記憶されている残高値より増やす方向のデータのことであり、リネン・消耗品などにあっては残り使用可能回数が増やされる方向のデータのことである。
【図面の簡単な説明】
【0016】
【図1】本発明の第1の実施形態を示し、食器用タグのリサイクル管理説明図である。
【図2】本発明の第2の実施形態を示し、レンタル衣料品用タグのリサイクル管理説明図である。
【図3】本発明の第3の実施形態を示し、消耗品用タグのリサイクル管理を説明する第1の例を示す図である。
【図4】本発明の第4の実施形態を示し、消耗品用タグのリサイクル管理を説明する第2の例を示す図である。
【図5】実施形態のタグの機能構成例を示すブロック図である。
【図6】タグのメモリ内容を書き換える際に行なわれる時系列処理の順を示すタイミングチャートである。
【図7】実施形態の状態制御シーケンサの処理の一例を示すフローチャートである。
【図8】状態制御シーケンサの構成例を説明するブロック図である。
【図9】発行時の状態制御シーケンサの処理の一例を示すフローチャートである。
【発明を実施するための形態】
【0017】
次に、図面を参照しながら本発明の実施形態を説明する。
(第1の実施形態)
図1は、本実施形態のタグを食器のリサイクル管理を行うために用いた例を説明する図である。
図1において、1は管理パソコン、2は食器、3はタグ、4はタグリーダライタ、5は食器洗い機、6はオートレジ(自動清算)システムを導入した店舗部門、レストラン、7は食器洗浄部門である。
【0018】
図1に示すように、本実施形態においては、レストランや学校、社員食堂などで繰り返し使用される食器2の使用回数(リサイクル回数)を管理するために用いられ、タグ3は食器2の底部に取り付けられている。タグ3には、食器2の使用回数が記録されるとともに、食器2に盛られている料理の内容に係る情報が記録されている。ここで、食器2に盛られている料理の内容に係る情報としては、料理の価格、料理のカロリー、料理の栄養素等に係る情報が考えられる。
【0019】
料理が盛られている食器2は、店舗部門6においては、タグリーダライタ4に載置されることにより、前述したように、料理の価格、料理のカロリー、料理の栄養素等に係る情報がタグリーダライタ4によってタグ3から読み取られる。そして、読み取られた情報は、タグリーダライタ4に接続されている管理パソコン1に供給され、前述した各種の情報が管理パソコン1により管理される。
【0020】
店舗部門6において、内部に盛られていた料理が食された食器2は、食器洗浄部門7に運ばれ、食器洗い機5により洗浄される。その後、タグリーダライタ4に載置され、タグ3から情報が読み取られる。この場合、食器2には料理が盛られていないので、読み取られる情報は、食器2の使用回数(リサイクル回数)である。
【0021】
タグリーダライタ4により読み取られた食器2の使用回数の情報は、管理パソコン1に送られる。食器2は、再使用するにつれて劣化していくため、その材質などにより再使用する回数の上限が予め設定されている。そのため、予め設定されている上限に達していない食器2は店舗部門6に運ばれて再使用されるが、上限に達した食器2は店舗部門6に運ばれることなく廃棄処分にされる。
【0022】
前述したように、第1の実施形態においては、食器2を使用して洗浄する毎に再使用回数を管理するので、予め設定されている上限を超えて食器2を使用する不都合を確実に防止することができる。また、後述するように、タグ3に書き込まれている使用回数を改ざんしたりして食器の再利用を際限なく続けるなどの不正使用を確実に防止することができる。
【0023】
(第2の実施形態)
次に、図2を参照しながら本発明の第2の実施形態を説明する。本実施形態においては、レンタル衣料品の使用回数を管理するシステムにタグを使用した例を示している。
図2において、21は管理パソコン、22はリネンサプライ品、制服、貸衣裳などを含むレンタル衣料品、23はタグ、24はタグリーダライタ、25は洗濯機、26はホテル、店舗部門などのレンタル衣料品の使用部門、27はクリーニング部門である。
【0024】
本実施形態においては、レンタル衣料品22にはタグ23が取り付けられている。これにより、レンタル衣料品の使用部門26においては、タグリーダライタ24によりタグ23に格納されている情報を取得することができる。
【0025】
タグ23に格納されている情報としては、レンタル衣料品22の使用履歴、名称(品名)、材質、色、デザイン等、種々であるが、本実施形態においては、使用履歴を厳格に管理している。これは、使用回数の上限や再利用期限がレンタル衣料品22ごとに予め設定されており、使用回数の上限や再利用期限を超えてレンタル衣料品22を使用しないようにするためである。
【0026】
使用回数の上限や再利用期限に係る情報は、クリーニング部門27において取得される。すなわち、レンタル衣料品の使用部門26において使用されたレンタル衣料品22は回収されてクリーニング部門27に運ばれる。そして、使用済のレンタル衣料品22は洗濯機25によりクリーニングされた後に、タグリーダライタ24によりタグ23に格納されている情報が読み取られる。タグリーダライタ24により読み取られたレンタル衣料品22に係る情報は、管理パソコン21に送られる。
【0027】
管理パソコン21は、レンタル衣料品22毎に、使用回数の上限や再利用期限などを管理しているので、再利用期限や制限回数を超えたレンタル衣料品22がレンタル衣料品の使用部門26に回されるのを確実に防止することができる。
【0028】
(第3の実施形態)
次に、図3を参照しながら本発明の第3の実施形態を説明する。
本実施形態は、ビデオカメラやデジタルカメラなどに使用する、リチウムイオンバッテリなどの2次電池32にタグ33を取り付けて、2次電池32の使用回数などを管理するようにした例を示している。
【0029】
図3において、31はリーダ/ライタ装置を内蔵したビデオカメラまたはデジタルカメラなどの2次電池32を使用する機器である。34はリーダ/ライタ装置、35は充電器である。
【0030】
本実施形態においては、2次電池32にはタグ33が取り付けられている。これにより、2次電池32を充電器35にセットして充電すると、タグ33に記録されている過去の充電回数がリーダ/ライタ装置34によって読み取られる。また、今回の充電を行うことにより、タグ33に記録されている充電回数が1回加算される。
【0031】
充電済の2次電池32を2次電池使用機器31に装着すると、2次電池使用機器31に内蔵されているリーダ/ライタ装置34が2次電池32のタグ33から記録されている情報を読み取る。読み取る情報としては、2次電池32の製造年月日、定格、使用履歴(充電回数)などである。
【0032】
前述のように構成することにより、2次電池32の使用履歴を確実に管理することが可能となり、2次電池32の使用期限を過ぎて使用して液漏れ事故を起こしたり、充電回数の上限を超えて使用したりする不都合を確実に防止可能なシステムを構築することができる。
【0033】
(第4の実施形態)
次に、図4を参照しながら本発明の第4の実施形態を説明する。
本実施形態においては、本発明のリサイクル回数管理用タグを消耗品のリサイクル管理に使用した例である。
【0034】
図4において、41はトナー使用機器であるプリンタ、42はトナーカートリッジ、43はタグであり、トナーカートリッジ42に取り付けられている。44はリーダ/ライタ装置であり、プリンタ41に取り付けられている。プリンタ41〜リーダ/ライタ装置44はユーザのオフィイス46で使用される。
【0035】
トナーカートリッジ42内のトナーが空になると、トナーカートリッジ再生工場47に運ばれて詰め替え(リフィル)が行なわれる。トナーカートリッジ再生工場47においては、トナー充填機45によりトナーカートリッジ42の内部にトナーが再充填される。この際に、トナーカートリッジ42に取り付けられているタグ43に、再充填に係る情報が書き込まれる。書き込まれる情報の一例としては、トナーカートリッジ42のIDコード、再充填を行った回数等、トナーカートリッジ42の使用履歴を管理するために必要な情報である。
【0036】
トナーリサイクルシステムについて、更に詳細に説明する。
消耗品であるトナーは、トナーカートリッジ42に充填され、このトナーカートリッジ42をプリンタ41に装着して印刷される。1本のトナーカートリッジ42で印刷可能なおおよその上限枚数は決まっており、たとえば文字情報の印刷が多い一般事務用途では通常容量カートリッジで4000枚、大容量カートリッジで8000枚といった具合である。勿論、トナー消費量の多い写真などの画像印刷ではこれらの枚数より少なくなる。
【0037】
消耗品の使用履歴管理では、トナーを工場で充填時にこれら上限値データを充填したトナーカートリッジ42に貼り付けたタグ内のメモリに定義した「印刷枚数データ」に書いておき、プリンタ41側は印刷時にタグからこの「印刷枚数データ」を読み出して、文字情報や画像などの印刷内容に応じて増減させた換算枚数を印刷の都度計算し、読み出し値から減じて「更新データ書込みコマンド」でタグの「印刷枚数データ」に上書きする。
【0038】
これによって、印刷の都度「印刷枚数データ」は減算されていくことになり、読み出し値がゼロになったら使い切ったということで、新たな印刷を禁止するとともにコントロールパネルやパソコンの画面にトナーカートリッジ42の交換アラームを表示して利用者に周知する。ここで、プリンタ41のユーザは使い切って空になったトナーカートリッジ42をプリンタメーカの指定場所に送り、新たなトナーカートリッジ42を購入するのが通常のトナーリサイクルシステムである。
【0039】
上述のリサイクルシステムでは具体的に、空になったトナーカートリッジ42は、プリンタメーカのトナー充填工場に送られ、清掃確認後に再度充填して「リサイクル回数データ」(新品の初回発行時には予めリサイクル上限値を工場にて書き込んであるものとする)を1回減じるとともに充填量に応じた「印刷枚数データ」を再度発行する。ここで用いられる発行コマンドは、工場のみで使われるコマンドであり、図9にそのフローチャートを示して後述する。プリンタ41はこの発行コマンドを搭載しないので、「印刷枚数データ」を再度発行することはできない。このように、正規のトナー消耗品リサイクルシステムでは品質保証ができるように、計画されたリサイクル回数、印刷枚数で運用することができるようにしている。
【0040】
しかしながら、トナーの充填のみを安価に請け負う不正な業者などによってトナーカートリッジ42に取り付けたタグの「リサイクル回数データ」や「印刷枚数データ」を不正に書き換えられてこれらの業者によってトナー充填された場合、正規のメーカーのトナー充填工場には戻ってこないことになる。このようなケースでは、トナーカートリッジ42が際限なく再利用されることになり品質保証ができなくなる。
【0041】
最悪の場合、プリンタヘッドが傷つくなどしてプリンタ41が故障する原因になる。プリンタ41側では、これらタグメモリの「リサイクル回数データ」や「印刷枚数データ」の読み出しと「更新データ書込みコマンド」による書込みしかアクセスしない場合には正規品か不正品(成りすまし)かを判別することが困難である。
【0042】
そこで、データの発行ができないメモリデータ(「アクセスログデータ」)を定義し、タグの起動時(電源投入時など)にタグ内に専用に設けた「アクセスカウンタ(カウンタ回路)」にロードし、所定のコマンド(例えば「印刷枚数データ」の読み出しコマンドなど)をタグが受信した都度「アクセスカウンタ」を減算し、別の所定のコマンド(例えば「更新データ書込みコマンド」など)を受信した都度、この「アクセスカウンタ」の値を「アクセスログデータ」に上書きするようにする。
【0043】
プリンタ41は、このカウンタ値を読み出すか、「アクセスカウンタ」の値がゼロになったことを示す「ゼロフラグ」を読み出すことで正規品か不正品かを判断することができる。「アクセスログデータ」は、予め定めたリサイクル寿命に相当する値を決めておき、タグメーカーのICレベルの段階で初期値として書き込んで初期値の再発行を禁止しておいてプリンタメーカのトナー充填工場でも発行しないようにすることで、「アクセスログデータ」の安全性がより高まる。
【0044】
このようにすることで「初期データ」を発行する工場から仮に発行コマンドの仕組みが外部に漏れるなどした場合でも「アクセスログデータ」は初期値を再発行することはできないので、プリンタ41側ではこのタグにアクセスする都度「アクセスカウンタ」は減算一方となり、予め設定したリサイクル寿命値になるとゼロになるため、不正業者による不正なトナーリサイクル品を際限なく繰り返し使用されることを抑止することができる。
【0045】
次に、第1の実施形態〜第4の実施形態で使用されるタグの構成例を、図5を参照しながら説明する。
図5に示すように、本実施形態のタグ51は、状態制御シーケンサ52、コマンドデコーダ53、送受信回路54、ログ管理用メモリ55、条件判定回路56、第1のデータレジスタ(R)57、第2のデータレジスタ(N)58を有する。
【0046】
ログ管理用メモリ55は、不揮発メモリで構成されており、条件判定回路56による条件判定処理が実行された際に、その結果をデータとして保存しておく有効フラグ領域55a、メモリ内容を記憶しておくためのアドレス領域として、第1のアドレス領域55b及び第2のアドレス領域55cを有している。
【0047】
このように構成された本実施形態のタグ51において、状態制御シーケンサ52の処理の一例を、図7のフローチャートを参照しながら説明する。
送受信回路54がリーダ/ライタ装置RWとデータ通信を行い、リーダ/ライタ装置RWから更新用のNEWデータ(n−m)を受信し、第2のデータレジスタ(N)58に保存する(S71)。リーダ/ライタ装置RWとの通信は送受信回路54を用いてRF(電磁誘導)方式で行う。この他に、通信をUART(非同期シリアル)、またはI2Cバスを含む接触方式で行うようにしてもよい。
【0048】
次に、「有効フラグ」が指示するメモリデータ(図5では、第1のアドレス領域55b(A面)とする)に記憶されているOLDデータ(n)を読み出して第1のデータレジスタ(R)57に保持する(S72)。次に、OLDデータ(n)=0か否かを条件判定回路56で判定する(S73)。「0」の場合はメモリ書き換えを行わずにNACK応答コードをリーダ/ライタ装置RWに返信する。
【0049】
「0」以外の場合は、第1のデータレジスタ(R)57に保持されたOLDデータ(n)と、第2のデータレジスタ(N)58に保持されたNEWデータ(n−m)とを条件判定回路56により条件判定処理する(S74)。S73、74は、ログ管理用メモリ55に保持されている有効データが更新条件に合致するか否かを判定する条件判定処理である。
【0050】
なお、このタグ51のメモリ55の上記第1のアドレス領域55b、第2のアドレス領域55cには、運用時には用いない専用の発行コマンドで初期値となるデータを予め書き込んでおく。運用時のデータ更新処理については図6のタイミングチャートを用いて後述する。図6は図7のフローチャートを時間軸で表現したチャートである。運用時には図6に示すように、更新データの書込みコマンド「CMD」で更新用の「ID」、「ADR」、NEWデータ(n−m)を、リーダ/ライタ装置RWから送信する。タグ51は、リーダ/ライタ装置RWから送信された当該更新データ書込みコマンド「CMD」に続く「ID」、「ADR」を受信後に、状態制御シーケンサ52が「ID」が一致した場合には、「ADR」と「有効フラグ」で特定される第1のアドレス領域55bまたは第2のアドレス領域55cのいずれかから更新対象データのOLDデータ(n)を読み出して第1のデータレジスタ(R)57に保存する。
【0051】
ここで指定する「ID」とは、タグがRFIDであって、リーダ/ライタ装置RWの発する交番磁界中に複数のタグが存在するような場合に、所定のタグ51を特定するために使用されるものであり、言わば背番号のことである。タグの個体識別が必要ない1対1通信の場合は、特段「ID」の指定をする必要がない。
【0052】
S74の条件処理において、条件が成立した場合、メモリ55の有効フラグ領域55aの「有効フラグ」の示す方と反対側のアドレス領域のデータを、最新の「NEWデータ(n−m)」に書き換えて更新し(S75)、その後「有効フラグ」を反転し、有効フラグ領域55aに書き込んで保存する(S76)。その後、条件判定回路56は送受信回路54を介してACK(更新終了)をリーダ/ライタ装置RWに返信する。
【0053】
一方、S74の条件処理において、条件が不成立の場合はS78に進み、メモリ55のデータも「有効フラグ」も書き換えず、送受信回路54からNACK応答コードをリーダ/ライタ装置RWに返信する。これら一連のタイミング制御は、状態制御シーケンサ52で行う。前述の説明において、「n」、「m」は整数である。前述のようにして、第1のアドレス領域55bまたは第2のアドレス領域55cにそれぞれ保持されている更新データのうちのどちらかを有効データとして管理する有効データ管理処理を行う。
【0054】
次に、第1のデータレジスタ(R)57及び第2のデータレジスタ(N)58を設けた利点について詳細に説明する。
「データレジスタN」を設けた理由としては、次の(a)、(b)2つがある。
(a)リーダ/ライタ装置RWから送られてくるコマンドCMDからNEWデータの前後には、通信パケット用のヘッダーとなるSOF(Start of Flame)、コマンドCMDからNEWデータまでのデータ値を検算するCRC16データ、フッターとなるEOF(End of Flame)が付加してある。
【0055】
そして、コマンドとデータが正しいか否かを、受信したCRC16のデータと照合してフッター受信まで正しく完結したことをもってコマンドを実行する。このため、受信したNEWデータを一旦「第2のデータレジスタ(N)58」にセーブし、コマンド完結後に処理を実行する回路構成にしている。この理由は、リーダ/ライタ装置RWから送信されるコマンドには、リード、ライト、パスワード照合など色々なコマンドがありそれぞれによって処理が異なるためである。
【0056】
(b)更新データ書込みコマンドで送られてくるNEWデータはLSB(最下位桁)側からシリアルで送られて来るため、OLDデータと大小判定するにはひっくり返してMSB(最上位桁)側からサーチした方が簡便である。このため、一度NEWデータを全て保存している。
勿論下位桁側から1bitずつ比較して大小判定することもできるので、(b)項は多少分りやすいという程度である。
【0057】
次に「第2のデータレジスタ(R)57」を設けた理由は、安価なタグに搭載したメモリは、1byte単位で読み書きするパラレルインターフェイスになっておりメモリに保存したOLDデータは複数Byteで構成される場合が殆どであり、Byte単位での順次アクセスとなるため、条件判定回路56に入力する前に読み出したOLDデータを一時的に保存することでタイミング設計を容易にするためである。
【0058】
しかしながら、リーダ/ライタ装置RWからの更新データ書込みコマンドで送られてくるNEWデータを送受信回路54からシリアル信号のまま出力し、そのシリアル信号に同期してメモリデータをシリアル信号で出力して条件判定回路56に入力すれば、リアルタイム処理で条件判定することができるので、第1のデータレジスタ(R)57及び第2のデータレジスタ(N)58は必ずしも設けなくてもよい。
【0059】
次に、図8を参照しながら状態制御シーケンサ52の内部構成の一例を説明する。
図8の例ではCPU81、ROM82、RAM83、入力ポート84、出力ポート85で構成し、入力ポート84から取り込んだコマンドデコード信号の内容によってROM82に格納したシーケンスプログラムによって出力ポート85からメモリ55へのアドレス、リードライト信号、条件判定タイミング信号を出力する。なお、この例ではCPU81を紹介したが、CPU81に限らずハードウェアによるシーケンス制御でもよい。
【0060】
具体的な手順を図6に示すタイミングチャートによって説明する。
送受信回路54から受信したコマンドデータ列をコマンドデコーダ53に入力し、更新データ書込みコマンドを検出した場合に状態制御シーケンサ52を起動する。
【0061】
図6のデータ更新、条件判定のタイミングにおいて、
(1)条件判定NGの場合は、ログ管理用メモリ55をNEWデータ(n−m)に更新せず送受信回路54からNACK応答する。ここでいう条件判定NGとはOLDデータ=0(S73)、またはOLDデータ(n)>NEWデータ(n-m)(S74)が成立しないことを指す。
(2)条件判定OKの場合は、ログ管理用メモリ55の有効フラグ領域55aの「有効フラグ」が示す方と反対のアドレス領域(図5ではB面のメモリ)を「NEWデータ(n−m)」に書換え後、有効フラグ領域55aの「有効フラグ」を保存してからACK応答する。ここでいう条件判定OKとはOLDデータ=0(S73)が成立せず、かつOLDデータ(n)>NEWデータ(n-m)(S74)が成立することを指す。
【0062】
本実施形態において、更新用のデータと「有効フラグ」を同時ではなく時間的な順番で書き込む点がポイントである。
以上の制御をすることで、車の燃料計のように走行中は減算一方の巻き戻しができない一方向性のデータとして管理することがきる。
【0063】
本実施形態により、第1の課題でリーダ/ライタ装置RW側のソフトウェアで行っていた誤書込み防止処理が不要になるとともに、第2の課題についても発行系コマンドが解析されない限り、リサイクル運用時のデータ改竄防止に効果がある。
【0064】
例えば、更新データが小さい値のみ有効とする条件比較では、データ更新の都度ログメモリは減算方向のみ記録保持されることになる。また、値が0になった場合には減算を停止する仕組みを設けてエラー応答するようにすることでリサイクル回数の管理を行うことができる。
【0065】
また、不正な業者がより大きなデータに書き戻そうとしても発行コマンドを開示しない限り運用で開示されている書込みコマンドでは大きなデータに書き戻すことはできない。これにより、リサイクル回数を不正に改竄することを防止することができる。
【0066】
前述した実施形態においては、不揮発メモリに記憶している2種類のデータのどちらが有効であるかを示すために、「有効フラグ」を用いていた。これは、プリンタなどのトナー消耗品の場合、ユーザによる脱着が容易であるため、トナー消耗品に対するアクセスの回数を管理することは困難であるからである。また、データそのものが書き損じがあって壊れているかもしれず、真正値であることは保証されないからである。このため、本実施形態においては「有効フラグ」を設け、同じデータを異なるアドレスに時間差をつけて書き込んでから「有効フラグ」を反転することで、データの書き損じによる悪影響(誤認識によるデータ化け)をなくしている。
【0067】
しかしながら、図8に示したように、CPU81を搭載したタグ製品ではROM82のソフトウェアで奇数アドレスデータ、偶数アドレスデータそれぞれに、データとともにそのCRC(巡回冗長検査)値を計算して一緒に書くなどして、読み出した際に真正値であることを保証するようにすることもできる。
【0068】
この場合は、図6のタイミングチャートで「有効フラグ更新」に該当する箇所を「A面データ更新」に変更する。フラグがない代わりにA面、B面に時間をおいて同じデータとCRC値をセットで書き込むことで更新値を保証することが可能になる。同じ値を時間をおいて2回書き込むことで、パワー途絶によるデータ破壊があった場合でも片方のデータは保全されているので、読み出し時はA面、B面のCRC値が合っている方のデータを採用すればよい。通常データが壊れていなければどちらも同じデータ値とCRC値になっている。これは、いわゆるミラーデータ、バックアップデータの扱いとなる。
【0069】
なお、本発明には直接関係しないが、専用の発行コマンドについて触れておく。発行コマンドとは、通常運用系とは異なる発行専用装置に搭載されるコマンドであり、リサイクル回数やプリペード課金値などの初期値をメモリに書き込むための専用コマンドである。このため、高いセキュリティ性が求められる場合が多く、発行前に認証を必要としたり、1回しか発行できないようにしたりして、タグのメモリに発行済フラグを設けるなど様々に改竄防止対策がとられることが多い。
【0070】
図9(a)はRWの発行コマンドの一般的なフォーマットである。ここに示すように、発行データの書込みコマンド「CMD」で発行用の「ID」、「ADR」、「発行データ」を、リーダ/ライタ装置RWから送信する。タグ51は、リーダ/ライタ装置RWから送信された当該発行データ書込みコマンド「CMD」に続く「ID」、「ADR」を受信後に、状態制御シーケンサ52が「ID」が一致した場合には、「ADR」とで特定されるメモリ領域に発行データを保存する。
【0071】
ここで指定する「ID」とは、タグがRF「ID」であって、リーダ/ライタ装置RWの発する交番磁界中に複数のタグが存在するような場合に、所定のタグ51を特定するために使用されるものであり、言わば背番号のことである。タグの個体識別が必要ない1対1通信の場合は、特段「ID」の指定をする必要がない。
【0072】
図9(b)は、発行処理手順の一例を示すフローチャートである。
S91において、ログデータ書き込みアドレスADRの受信、発行データの受信が行われると、次に、S92に進み、発行済フラグがメモリから読み出される。
【0073】
次に、S93において、新規発行か否かを判断する。新規発行の場合にはS94に進み、発行データを第1のアドレス領域55b、第2のアドレス領域55cに書き込む。次に、発行済フラグをログ管理用メモリ55に書き込み、その後、ACK(更新終了)応答をリーダ/ライタ装置に行う。
【0074】
一方、S93の判断の結果、新規発行ではない場合には、S97に進み、メモリ書き換えなしであるので、NACK(更新不可)応答をリーダ/ライタ装置に行う。
なお、S92、93、95の97の処理は、発行済フラグをメモリに設けた場合にのみ行う処理である。
【0075】
前述した実施形態では、「消耗品サイクル回数の管理用タグ」として使用した場合について説明したが、本発明は記憶しているデータを厳重に、かつ正確に保護する必要があるタグ(データキャリア)、例えば、プリペイドカードなどにも適用することができる。
【符号の説明】
【0076】
51 タグ、52 状態制御シーケンサ、53 コマンドデコーダ、54 送受信回路、55 ログ管理用メモリ、55a 有効フラグ領域、55b 第1のアドレス領域、55c 第2のアドレス領域、56 条件判定回路、57 第1のデータレジスタ(R)、58 第2のデータレジスタ(N)

【特許請求の範囲】
【請求項1】
リーダ/ライタ装置との間でデータ通信を行う送受信回路と、
前記送受信回路を介して前記リーダ/ライタ装置から取得する更新データを第1のアドレス領域または第2のアドレス領域に保持する不揮発メモリと、
前記第1のアドレス領域または第2のアドレス領域にそれぞれ保持されている更新データのうちのどちらかを有効データとして管理する有効データ管理手段と、
前記リーダ/ライタ装置とデータ通信を行って取得した最新の更新データと、前記不揮発メモリに保持されている有効データとが更新条件に合致するか否かを判定する条件判定手段と、
前記条件判定手段の判定結果が前記更新条件に合致する場合には、前記有効データ管理手段により管理されている有効データが保持されているアドレス領域とは異なる側のアドレス領域に前記最新の更新データの書込みを行う更新データ書き込み手段と、
前記更新データ書き込み手段が前記最新の更新データの書込みを行った後に有効データとして管理するアドレス領域を反転させるように前記有効データ管理手段を制御するとともに、前記送受信回路から前記リーダ/ライタ装置へACK応答するように前記条件判定手段を制御し、前記判定結果が前記更新条件に合致しない場合には、メモリの更新データを無効として前記不揮発メモリに保持されている有効データの書換えを行なわないように前記更新データ書き込み手段を制御する状態制御シーケンサとを備えたことを特徴とするデータキャリア。
【請求項2】
所定の通信コマンドの受信回数をカウントするカウンタ回路と、
前記カウンタ回路のカウンタ値を所定のコマンドで不揮発メモリに更新データとして書込んで保存する保存手段と、
各部の動作を制御する制御手段とを備え、
前記制御手段は、更新データの誤書込みが発生した場合には書き込み前のデータを有効にし、更新データが更新前のデータより小さい場合には更新データを有効とし、逆に大きい場合には書き込み自体を防止することを特徴とするデータキャリア。
【請求項3】
前記送受信回路と前記リーダ/ライタ装置との通信をRF方式で行うことを特徴とする請求項1に記載のデータキャリア。
【請求項4】
前記送受信回路と前記リーダ/ライタ装置との通信をUART、またはI2Cバスを含む接触方式で行うことを特徴とする請求項1に記載のデータキャリア。
【請求項5】
前記状態制御シーケンサは、前記判定結果が前記更新条件に合致しない場合には、メモリの更新データを無効として前記不揮発メモリに保持されている有効データの書換えを行なわないように前記更新データ書き込み手段を制御するとともに、前記送受信回路から前記リーダ/ライタ装置へNACK応答するように前記条件判定手段を制御することを特徴とする請求項1に記載のデータキャリア。
【請求項6】
前記第1のアドレス領域または第2のアドレス領域にそれぞれ保持されている更新データは、前回の書き込み処理により書き込まれた更新データ及び前々回の書き込み処理により書き込まれた更新データであり、
前記有効データ管理手段は、前回の書き込み処理により書き込まれた更新データを有効データとして管理することを特徴とする請求項1に記載のデータキャリア。
【請求項7】
データキャリアとの間でデータ通信を行うリーダ/ライタ装置であって、
データ通信相手のデータキャリアが何度もアクセスを試みた場合には、所定の通信コマンドの発行回数をカウントし、前記カウントした値を不揮発メモリに保存するカウント値保存手段と、
前記不揮発メモリに保存しているカウント値が、予め設定されているリサイクル数に応じた所定の回数より多い値であることを検出するカウント値検出手段とを有し、
前記カウント値検出手段により不正なアクセスを検出することを特徴とするリーダ/ライタ装置。
【請求項8】
請求項1〜6の何れか1項に記載のデータキャリアと、請求項7に記載のリーダ/ライタ装置とを有することを特徴とするデータキャリアシステム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate


【公開番号】特開2012−230560(P2012−230560A)
【公開日】平成24年11月22日(2012.11.22)
【国際特許分類】
【出願番号】特願2011−98618(P2011−98618)
【出願日】平成23年4月26日(2011.4.26)
【出願人】(599098851)吉川アールエフシステム株式会社 (23)
【Fターム(参考)】