(57)【要約】【課題】ネットワークを介して接続されている端末装置のファームウェアの更新状況を正確に管理する。【解決手段】端末装置１０１が、ファームウェアバージョン情報１５１を端末装置１０１の使用者にて更新不能な記憶部１４１の秘匿領域１４２に格納し、バージョン比較部２２１は、ファームウェアバージョン情報１５１に基づいて、前記ファームウェアの更新の要否を判定し、ファームウェア管理部２１１は、ファームウェアの更新が必要である場合、前記端末装置にファームウェア２３１を送信し、ファームウェア更新部１３２ａは、ファームウェア２３１で、ファームウェア１４１を更新し、バージョン情報更新部１３２ｂは、ファームウェア２３１のバージョン情報でファームウェアバージョン情報１５１を更新する。本発明は、カードリーダ端末の管理システムに適用することができる。【選択図】図２
2008181228.tif 000002
【特許請求の範囲】
【請求項１】
端末装置と前記端末装置の端末ファームウェアを管理する管理サーバからなる管理システムにおいて、
前記端末装置は、
前記ファームウェアを前記端末装置の使用者にて更新可能な状態で格納し、前記ファームウェアのバージョン情報を前記使用者にて更新不能な状態で格納する格納手段と、
前記バージョン情報に基づいて、前記管理サーバより送信されてくる上位バージョンのファームウェアにより、前記格納手段に格納されているファームウェアを更新するファームウェア更新手段と、
前記ファームウェア更新手段により更新されたファームウェアのバージョン情報により、前記格納手段に格納されているバージョン情報を更新するバージョン情報更新手段と
を含み、
前記管理サーバは、
前記端末装置より送信されてくる前記端末装置のファームウェアのバージョン情報に基づいて、前記ファームウェアの更新の要否を判定する判定手段と、
前記判定手段により前記ファームウェアの更新が必要である場合、前記端末装置に前記上位バージョンのファームウェアを送信する送信手段と
を含む管理システム。
【請求項２】
前記格納手段は、前記ファームウェアのバージョン情報を前記端末装置の使用者にて更新不能な秘匿領域に格納し、
前記バージョン情報更新手段は、前記ファームウェア更新手段により更新されたファームウェアのバージョン情報により、前記格納手段の前記秘匿領域に格納されているバージョン情報を更新する
請求項１に記載の管理システム。
【請求項３】
前記管理サーバは、
前記判定手段によりファームウェアの更新が必要である場合、前記送信手段が、前記端末装置にファームウェアと共に、前記送信しようとするファームウェアのバージョン情報を自らの秘密鍵で暗号化して送信し、
前記端末装置は、
前記バージョン情報更新手段が、前記暗号化されたバージョン情報で、前記ファームウェアのバージョン情報を更新し、
前記格納手段が、前記暗号化された状態でバージョン情報を格納することにより、前記端末装置の使用者にて更新不能な状態で前記バージョン情報を格納する
請求項１に記載の管理システム。
【請求項４】
端末装置と前記端末装置のファームウェアを管理する管理サーバからなる管理システムの管理方法において、
前記端末装置の管理方法は、
前記ファームウェアを前記端末装置の使用者にて更新可能な状態で格納し、前記ファームウェアのバージョン情報を前記使用者にて更新不能な状態で格納する格納ステップと、
前記バージョン情報に基づいて、前記管理サーバより送信されてくる上位バージョンのファームウェアにより、前記格納手段に格納されているファームウェアを更新するファームウェア更新ステップと、
前記ファームウェア更新ステップの処理により更新されたファームウェアのバージョン情報により、前記格納ステップの処理で格納されているバージョン情報を更新するバージョン情報更新ステップと
を含み、
前記管理サーバの管理方法は、
前記端末装置より送信されてくる前記端末装置のファームウェアのバージョン情報に基づいて、前記ファームウェアの更新の要否を判定する判定ステップと、
前記判定ステップの処理により前記ファームウェアの更新が必要である場合、前記端末装置に前記上位バージョンのファームウェアを送信する送信ステップと
を含む管理方法。
【請求項５】
端末装置と前記端末装置のファームウェアを管理する管理サーバからなる管理システムを制御するコンピュータのうち、
前記端末装置を制御するコンピュータに、
前記ファームウェアを前記端末装置の使用者にて更新可能な状態で格納し、前記ファームウェアのバージョン情報を前記使用者にて更新不能な状態で格納する格納ステップと、
前記バージョン情報に基づいて、前記管理サーバより送信されてくる上位バージョンのファームウェアにより、前記格納手段に格納されているファームウェアを更新するファームウェア更新ステップと、
前記ファームウェア更新ステップの処理により更新されたファームウェアのバージョン情報により、前記格納ステップの処理で格納されているバージョン情報を更新するバージョン情報更新ステップと
を含む処理を実行させ、
前記管理サーバを制御するコンピュータに、
前記端末装置より送信されてくる前記端末装置のファームウェアのバージョン情報に基づいて、前記ファームウェアの更新の要否を判定する判定ステップと、
前記判定ステップの処理により前記ファームウェアの更新が必要である場合、前記端末装置に前記上位バージョンのファームウェアを送信する送信ステップと
を含む処理を実行させるプログラム。
【請求項６】
請求項５に記載のプログラムを格納するプログラム格納媒体。
【請求項７】
ファームウェアを自らの使用者にて更新可能な状態で格納し、前記ファームウェアのバージョン情報を前記使用者にて更新不能な状態で格納する格納手段と、
前記バージョン情報に基づいて、管理サーバより送信されてくる上位バージョンのファームウェアにより、前記格納手段に格納されているファームウェアを更新するファームウェア更新手段と、
前記ファームウェア更新手段により更新されたファームウェアのバージョン情報により、前記格納手段に格納されているバージョン情報を更新するバージョン情報更新手段と
を含む端末装置。
【請求項８】
端末装置より送信されてくる前記端末装置のファームウェアのバージョン情報に基づいて、前記ファームウェアの更新の要否を判定する判定手段と、
前記判定手段により前記ファームウェアの更新が必要である場合、前記端末装置に前記上位バージョンのファームウェアを送信する送信手段と
を含む管理サーバ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、管理システムおよび管理方法、端末装置、管理サーバ、並びにプログラムに関し、特に、ファームウェアの更新状況を正確に管理できるようにした管理システムおよび管理方法、端末装置、管理サーバ、並びにプログラムに関する。
【背景技術】
【０００２】
近年、ＩＣ(Integrated Circuit)チップを内蔵するカード（ＩＣカード）が一般に普及しつつある。
【０００３】
このＩＣカードは、内蔵するＩＣチップに課金情報などのデータを記憶しており、ＣＩカード内のデータに対して操作（更新）を行なう場合、ＩＣカードリーダライタを備える端末装置が、端末装置に情報を提供するサーバに接続し、オンラインで相互認証を行った後に、ＩＣカードリーダライタを備える端末装置がＩＣカード内のデータに対して操作を行っている。
【０００４】
例えば、オンラインでＩＣカード内のデータを読み出す技術が開示されている（特許文献１参照）。
【０００５】
また、ＩＣカードリーダライタを備える端末装置は、アプリケーションプログラムを記憶しており、そのアプリケーションプログラムは、ファームウェア上で実行されている。
【０００６】
このファームウェアは、端末装置の基本プログラムであり、例えば、端末装置そのものに新たな機能が追加されるとき、新しいバージョンのものに更新される。この更新により、端末装置は、さらに高機能なアプリケーションプログラムを実行させることが可能となる。
【特許文献１】特開２００３−１４１０６３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
ところで、ファームウェアの更新は、オンラインで実行されることが一般的なものとされてきている。
【０００８】
図１は、従来のファームウェア管理システムを示している。
【０００９】
店舗１−１乃至１−ｎは、ＩＣカード１３の情報を読み出したり、または、ＩＣカード１３に情報を記録するリーダライタ部２１を含む端末装置１１を備えており、店舗１−１乃至１−ｎのいずれにおいても、同様の端末装置１１を備えている。アプリケーションプログラム２２は、各種のＩＣカード１３に応じた処理を実行するプログラムであり、ＩＣカード１３を発行したカード会社に対応した処理を実行する。ファームウェア２３は、端末装置１１の基本プログラムであり、アプリケーションプログラム２２を実行させる。尚、図１においては、アプリケーションプログラム２２が１個の場合について示されているが、複数であってもよく、そのアプリケーションプログラム２２が増えることにより、対応可能なＩＣカード１３の種類や機能が増えるものである。
【００１０】
POS（Point Of Sales System）レジスタ１２は、店内における精算時に使用されるレジスタであり、商品購入に係る支払の際に、端末装置１１を介してＩＣカード１３にチャージされている金額の情報に基づいて、支払いを受け付ける。また、POSレジスタ１２は、端末装置１１を制御管理するための情報の入出力端末として機能し、例えば、ファームウェア２３の更新を要求するとき、操作されて、操作内容に応じた情報により、ネットワーク２を介してファームウェア管理サーバ３に対してファームウェア２３のバージョンアップ（配信）を要求する。
【００１１】
ファームウェア管理サーバ３は、ファームウェアを開発・管理する事業主により運営されるサーバであり、インターネットなどに代表されるネットワーク２を介して店舗１−１乃至１−ｎの端末装置１１に接続されており、ファームウェアを配信する。
【００１２】
次に、図１のファームウェア管理システムの動作について説明する。
【００１３】
まず、店舗１−１を管理する係員（使用者）により、POSレジスタ１２が操作されて、ファームウェアの更新を要求する旨の指示が入力されると、ネットワーク２を介して、ファームウェア管理サーバ３に対してファームウェア２３のバージョンアップが要求される。
【００１４】
ファームウェア管理サーバ３は、この要求に応じて、最新のファームウェアをネットワーク２を介して店舗１−１に対して配信する。
【００１５】
これに応じて、端末装置１１は、ネットワーク２を介してファームウェア管理サーバ３より配信されてくるファームウェアを受信して、新たなファームウェアによりファームウェア２３を上書きして更新し、処理は終了する。
【００１６】
以上のような処理により、従来は、ファームウェアが更新されていた。
【００１７】
しかしながら、上述したようなファームウェアの更新(バージョンアップ)がなされることにより、ファームウェア管理サーバ３は、ファームウェア２３を順次店舗１−２乃至１−ｎのファームウェア２３も一気に更新できればよいが、ファームウェアの更新は、各店舗１の端末装置１１よりファームウェアのバージョンアップの要求がなされた場合にのみなされるものであるため、必ずしも全ての店舗１−１乃至１−ｎにおける端末装置１１に対してファームウェア２３の更新が可能なわけではない。このため、どの店舗１−１乃至１−ｎの端末装置１１がファームウェア２３を更新しているのか否かを把握するのが困難になる。結果として、ファームウェア管理サーバ３を管理する事業主は、ファームウェアの開発や管理にコストが発生しているにもかかわらず、ファームウェア２３を更新した店舗１−１乃至１−ｎが把握できないため、ファームウェアの開発に係る費用を、対価として回収することが困難であった。
【００１８】
本発明はこのような状況に鑑みてなされたものであり、特に、顧客ごとのファームウェアの更新状況を正確に把握して、更新すべき端末装置に対してのみファームウェアを配信すると共に、ファームウェアの店舗ごと（端末装置ごと）の更新状況に応じて、例えば、課金などができるようにするものである。
【課題を解決するための手段】
【００１９】
本発明の第１の側面の管理システムは、端末装置と前記端末装置の端末ファームウェアを管理する管理サーバからなる管理システムであって、前記端末装置が、前記ファームウェアを前記端末装置の使用者にて更新可能な状態で格納し、前記ファームウェアのバージョン情報を前記使用者にて更新不能な状態で格納する格納手段と、前記バージョン情報に基づいて、前記管理サーバより送信されてくる上位バージョンのファームウェアにより、前記格納手段に格納されているファームウェアを更新するファームウェア更新手段と、前記ファームウェア更新手段により更新されたファームウェアのバージョン情報により、前記格納手段に格納されているバージョン情報を更新するバージョン情報更新手段とを含み、前記管理サーバは、前記端末装置より送信されてくる前記端末装置のファームウェアのバージョン情報に基づいて、前記ファームウェアの更新の要否を判定する判定手段と、前記判定手段により前記ファームウェアの更新が必要である場合、前記端末装置に前記上位バージョンのファームウェアを送信する送信手段とを含む。
【００２０】
前記格納手段には、前記ファームウェアのバージョン情報を前記端末装置の使用者にて更新不能な秘匿領域に格納させるようにすることができ、前記バージョン情報更新手段には、前記ファームウェア更新手段により更新されたファームウェアのバージョン情報により、前記格納手段の前記秘匿領域に格納されているバージョン情報を更新させるようにすることができる。
【００２１】
前記管理サーバにおいては、前記判定手段によりファームウェアの更新が必要である場合、前記送信手段には、前記端末装置にファームウェアと共に、前記送信しようとするファームウェアのバージョン情報を自らの秘密鍵で暗号化して送信させるようにすることができ、前記端末装置においては、前記バージョン情報更新手段には、前記暗号化されたバージョン情報で、前記ファームウェアのバージョン情報を更新させ、前記格納手段には、前記暗号化された状態でバージョン情報を格納することにより、前記端末装置の使用者にて更新不能な状態で前記バージョン情報を格納させるようにすることができる。
【００２２】
本発明の第１の側面の管理システムの管理方法は、端末装置と前記端末装置のファームウェアを管理する管理サーバからなる管理システムの管理方法であって、前記端末装置の管理方法は、前記ファームウェアを前記端末装置の使用者にて更新可能な状態で格納し、前記ファームウェアのバージョン情報を前記使用者にて更新不能な状態で格納する格納ステップと、前記バージョン情報に基づいて、前記管理サーバより送信されてくる上位バージョンのファームウェアにより、前記格納手段に格納されているファームウェアを更新するファームウェア更新ステップと、前記ファームウェア更新ステップの処理により更新されたファームウェアのバージョン情報により、前記格納ステップの処理で格納されているバージョン情報を更新するバージョン情報更新ステップとを含み、前記管理サーバの管理方法は、前記端末装置より送信されてくる前記端末装置のファームウェアのバージョン情報に基づいて、前記ファームウェアの更新の要否を判定する判定ステップと、前記判定ステップの処理により前記ファームウェアの更新が必要である場合、前記端末装置に前記上位バージョンのファームウェアを送信する送信ステップとを含む。
【００２３】
本発明の第１の側面のプログラムは、端末装置と前記端末装置のファームウェアを管理する管理サーバからなる管理システムを制御するコンピュータのうち、前記端末装置を制御するコンピュータに、前記ファームウェアを前記端末装置の使用者にて更新可能な状態で格納し、前記ファームウェアのバージョン情報を前記使用者にて更新不能な状態で格納する格納ステップと、前記バージョン情報に基づいて、前記管理サーバより送信されてくる上位バージョンのファームウェアにより、前記格納手段に格納されているファームウェアを更新するファームウェア更新ステップと、前記ファームウェア更新ステップの処理により更新されたファームウェアのバージョン情報により、前記格納ステップの処理で格納されているバージョン情報を更新するバージョン情報更新ステップとを含む処理を実行させ、前記管理サーバを制御するコンピュータに、前記端末装置より送信されてくる前記端末装置のファームウェアのバージョン情報に基づいて、前記ファームウェアの更新の要否を判定する判定ステップと、前記判定ステップの処理により前記ファームウェアの更新が必要である場合、前記端末装置に前記上位バージョンのファームウェアを送信する送信ステップとを含む処理を実行させる。
【００２４】
本発明の第１の側面のプログラム格納媒体は、請求項５に記載のプログラムを格納する。
【００２５】
本発明の第２の側面の端末装置は、ファームウェアを自らの使用者にて更新可能な状態で格納し、前記ファームウェアのバージョン情報を前記使用者にて更新不能な状態で格納する格納手段と、前記バージョン情報に基づいて、管理サーバより送信されてくる上位バージョンのファームウェアにより、前記格納手段に格納されているファームウェアを更新するファームウェア更新手段と、前記ファームウェア更新手段により更新されたファームウェアのバージョン情報により、前記格納手段に格納されているバージョン情報を更新するバージョン情報更新手段とを含む。
【００２６】
本発明の第３の側面の管理サーバは、端末装置より送信されてくる前記端末装置のファームウェアのバージョン情報に基づいて、前記ファームウェアの更新の要否を判定する判定手段と、前記判定手段により前記ファームウェアの更新が必要である場合、前記端末装置に前記上位バージョンのファームウェアを送信する送信手段とを含む。
【００２７】
本発明の第１の側面の管理システムおよび方法、並びにプログラムにおいては、前記端末装置により、前記ファームウェアが前記端末装置の使用者にて更新可能な状態で格納され、前記ファームウェアのバージョン情報が前記使用者にて更新不能な状態で格納され、前記バージョン情報に基づいて、前記管理サーバより送信されてくる上位バージョンのファームウェアにより、格納されているファームウェアが更新され、更新されたファームウェアのバージョン情報により、格納されているバージョン情報が更新され、前記管理サーバにより、前記端末装置より送信されてくる前記端末装置のファームウェアのバージョン情報に基づいて、前記ファームウェアの更新の要否が判定され、前記ファームウェアの更新が必要である場合、前記端末装置に前記上位バージョンのファームウェアが送信される。
【００２８】
本発明の第２の側面の端末装置においては、ファームウェアが自らの使用者にて更新可能な状態で格納され、前記ファームウェアのバージョン情報が前記使用者にて更新不能な状態で格納され、前記バージョン情報に基づいて、管理サーバより送信されてくる上位バージョンのファームウェアにより、格納されているファームウェアが更新され、更新されたファームウェアのバージョン情報により、格納されているバージョン情報が更新される。
【００２９】
本発明の第３の側面の管理サーバにおいては、端末装置より送信されてくる前記端末装置のファームウェアのバージョン情報に基づいて、前記ファームウェアの更新の要否が判定され、前記ファームウェアの更新が必要である場合、前記端末装置に前記上位バージョンのファームウェアが送信される。
【００３０】
本発明の管理システム、端末装置、および管理サーバは、独立した装置であっても良いし、管理処理を行うブロックであっても良い。
【発明の効果】
【００３１】
本発明の一側面によれば、ネットワークを介して接続されている端末装置のファームウェアの更新状況を正確に管理することが可能となる。
【発明を実施するための最良の形態】
【００３２】
以下に本発明の実施の形態を説明するが、本明細書に記載の発明と、発明の実施の形態との対応関係を例示すると、次のようになる。この記載は、本明細書に記載されている発明をサポートする実施の形態が本明細書に記載されていることを確認するためのものである。従って、発明の実施の形態中には記載されているが、発明に対応するものとして、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その発明に対応するものではないことを意味するものではない。逆に、実施の形態が発明に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その発明以外の発明には対応しないものであることを意味するものでもない。
【００３３】
さらに、この記載は、本明細書に記載されている発明の全てを意味するものではない。換言すれば、この記載は、本明細書に記載されている発明であって、この出願では請求されていない発明の存在、すなわち、将来、分割出願されたり、補正により出現、追加される発明の存在を否定するものではない。
【００３４】
即ち、本発明の第１の側面の管理システムは、端末装置（例えば、図２の端末装置１０１）と前記端末装置の端末ファームウェアを管理する管理サーバ（例えば、図２のファームウェア管理サーバ５３）からなる管理システムであって、前記端末装置が、前記ファームウェアを前記端末装置の使用者にて更新可能な状態で格納し、前記ファームウェアのバージョン情報を前記使用者にて更新不能な状態で格納する格納手段（例えば、図２または図５の記憶部１２４）と、前記バージョン情報に基づいて、前記管理サーバより送信されてくる上位バージョンのファームウェアにより、前記格納手段に格納されているファームウェアを更新するファームウェア更新手段（例えば、図２のファームウェア更新部１３２ａ、または、図５のファームウェア更新部２４１ａ）と、前記ファームウェア更新手段により更新されたファームウェアのバージョン情報により、前記格納手段に格納されているバージョン情報を更新するバージョン情報更新手段（例えば、図２のバージョン情報更新部１３２ｂ、または、図５のバージョン情報更新部２４１ｂ）とを含み、前記管理サーバは、前記端末装置より送信されてくる前記端末装置のファームウェアのバージョン情報に基づいて、前記ファームウェアの更新の要否を判定する判定手段（例えば、図２のバージョン比較部２２１）と、前記判定手段により前記ファームウェアの更新が必要である場合、前記端末装置に前記上位バージョンのファームウェアを送信する送信手段（例えば、図２または図５の通信部２０２）とを含む。
【００３５】
前記格納手段（例えば、図２の記憶部１２４）には、前記ファームウェアのバージョン情報を前記端末装置の使用者にて更新不能な秘匿領域（例えば、図２の秘匿領域１４２）に格納させるようにすることができ、前記バージョン情報更新手段には、前記ファームウェア更新手段により更新されたファームウェアのバージョン情報により、前記格納手段の前記秘匿領域に格納されているバージョン情報を更新させるようにすることができる。
【００３６】
前記管理サーバにおいては、前記判定手段によりファームウェアの更新が必要である場合、前記送信手段には、前記端末装置にファームウェアと共に、前記送信しようとするファームウェアのバージョン情報を自らの秘密鍵（例えば、図５の秘密鍵２９１）で暗号化して送信させるようにすることができ、前記端末装置においては、前記バージョン情報更新手段には、前記暗号化されたバージョン情報（例えば、図５の電子証明書２６１）で、前記ファームウェアのバージョン情報を更新させ、前記格納手段（例えば、図５の記憶部１２４）には、前記暗号化された状態でバージョン情報を格納することにより、前記端末装置の使用者にて更新不能な状態で前記バージョン情報を格納させるようにすることができる。
【００３７】
本発明の第１の側面の管理システムの管理方法は、端末装置と前記端末装置のファームウェアを管理する管理サーバからなる管理システムの管理方法であって、前記端末装置の管理方法は、前記ファームウェアを前記端末装置の使用者にて更新可能な状態で格納し、前記ファームウェアのバージョン情報を前記使用者にて更新不能な状態で格納する格納ステップ（例えば、図３のステップＳ１０，Ｓ１１）と、前記バージョン情報に基づいて、前記管理サーバより送信されてくる上位バージョンのファームウェアにより、前記格納手段に格納されているファームウェアを更新するファームウェア更新ステップ（例えば、図３のステップＳ１０）と、前記ファームウェア更新ステップの処理により更新されたファームウェアのバージョン情報により、前記格納ステップの処理で格納されているバージョン情報を更新するバージョン情報更新ステップ（例えば、図３のステップＳ１１）とを含み、前記管理サーバの管理方法は、前記端末装置より送信されてくる前記端末装置のファームウェアのバージョン情報に基づいて、前記ファームウェアの更新の要否を判定する判定ステップ（例えば、図３のステップＳ２８）と、前記判定ステップの処理により前記ファームウェアの更新が必要である場合、前記端末装置に前記上位バージョンのファームウェアを送信する送信ステップ（例えば、図３のステップＳ３０）とを含む。
【００３８】
図２は、本発明を適用したファームウェア管理システムの一実施の形態の構成を示している。
【００３９】
店舗５１−１乃至５１−ｎは、ＩＣカードによる支払いを受け付ける端末装置１０１をいずれも備えている。また、店舗５１−１乃至５１−ｎの端末装置１０１は、いずれもネットワーク５２を介してファームウェア管理サーバ５３に対してファームウェアのバージョンアップ（更新）を要求すると共に、要求に応じて配信されてくるファームウェアを取得し、更新する。尚、以降において、店舗５１−１乃至５１−ｎについて、特に区別する必要がない場合、単に店舗５１と称するものとし、その他の構成についても同様に称するものとする。
【００４０】
端末装置１０１は、POS（Point Of Sales System）レジスタ１０２に接続されており、POSレジスタ１０２により商品の価格が入力された後、対応する金額の支払いにあたり、上述した図示せぬＩＣカード（図１のＩＣカード１３と同様のもの）に記録されている（チャージされている）課金情報を読み出して、支払い処理を実行すると共に、支払い後の課金情報を図示せぬＩＣカードに記録する。
【００４１】
端末装置１０１の制御部１２１は、インタフェース部１２５を介してPOSレジスタ１０２のキーボードなどからなる入力部１７３からの操作信号に基づいて、端末装置１０１の動作の全体を管理している。端末装置１０１は、インタフェース部１２５を介して入力部１７３より供給される操作信号に基づいて、リーダライタ部１２３を制御してＩＣカードの課金情報を読み出すと共に、インタフェース部１２５を介してPOSレジスタ１０２に供給し、LCD（Liquid Crystal Display）などからなる表示部１７２に表示させる。
【００４２】
また、制御部１２１は、ネットワークインタフェースなどから構成される通信部１２２を制御し、ネットワーク５２を介してファームウェア管理サーバ５３と各種のデータを授受する。さらに、制御部１２１は、ハードディスクやフラッシュメモリなどからなる記憶部１２４に記憶された基本プログラムであるファームウェア１４１を実行することにより、ファームウェア１４１上で記憶部１２４の一般領域に記憶されているアプリケーションプログラム１６１−１乃至１６１−ｎを実行する。
【００４３】
制御部１２１は、端末装置１０１に固有のデバイスID１３１を記憶している。また、制御部１２１のファームウェア管理部１３２は、POSレジスタ１０２の入力部１７３が操作されることにより、ファームウェア１４１のバージョンアップが指示された場合、デバイスID１３１を読み出すと共に、記憶部１２４のうち端末装置１０１の使用者では操作不能な（或いは認識不能な）秘匿領域１４２に格納されているファームウェアバージョン情報１５１を読み出し、通信部１２２を制御して、ネットワーク５２を介してファームウェア管理サーバ５３にファームウェアのバージョンアップを要求する。
【００４４】
このファームウェアのバージョンアップの要求に応じて、ファームウェア管理サーバ５３より最新のファームウェア（または、バージョン情報が上位のファームウェア）が配信されてきた場合、ファームウェア管理部１３２は、ファームウェア更新部１３２ａを制御して、新たに供給されてきた（ファームウェア管理サーバ５３の記憶部２０３に格納されている）ファームウェア２３１で、ファームウェア１４１を更新する。このとき、バージョン情報更新部１３２ｂは、秘匿領域１４２にアクセスし、更新されたファームウェア１４１と共に送信されてきたファームウェア２４１の最新バージョン情報２２１ａに基づいて、ファームウェアバージョン情報１５１を更新する。
【００４５】
POSレジスタ１０２は、キーボードからなる入力部１７３、LCDからなる表示部１７２、およびインタフェース部１７１から構成される。インタフェース部１７１は、入力部１７３が操作されることにより発生される操作信号を端末装置１０１に供給すると共に、端末装置１０１から供給されてくる各種の情報を取得して表示部１７２に表示させる。尚、端末装置１０１は、単独で使用者からの情報の入力を受け付けることができないので、POSレジスタ１０２を介して全ての動作がなされる。
【００４６】
ファームウェア管理サーバ５３の制御部２０１は、ファームウェア管理サーバ５３の動作の全体を制御している。制御部２０１は、通信部２０２を制御して、店舗５１の端末装置１０１よりファームウェアのバージョンアップの要求があると、その要求を取得すると共に、記憶部２０３より最新の（または、上位の）ファームウェア２３１を読み出して通信部２０２を介して店舗５１の端末装置１０１に送信する。
【００４７】
制御部２０１は、端末装置１０１よりファームウェアのバージョンアップが要求されると、その要求に含まれているファームウェアバージョン情報１５１をファームウェア管理部２１１に供給する。ファームウェア管理部２１１は、ファームウェア管理DB２３２にアクセスし、デバイスIDに基づいて、ファームウェア１４１のサポート契約があるか否か、すなわち、ファームウェアのバージョンアップの要求があったとき、最新のファームウェアを配信する契約がなされているか否かを判定し、契約がなされている場合、バージョン比較部２２１を制御して、最新バージョン情報２２１ａとファームウェアバージョン情報１５１とを比較させる。そして、最新バージョン情報２２１ａがファームウェアバージョン情報１５１と同一ではない、すなわち、ファームウェアバージョン情報１５１が、最新のファームウェア２３１の最新バージョン情報２２１ａよりも古いバージョンであった場合、ファームウェア管理部２１１は、記憶部２０３にアクセスし、最新のファームウェア２３１を読み出して、通信部２０２を制御して、ファームウェアのバージョンアップを要求してきた端末装置１０１に送信する。
【００４８】
次に、図３のフローチャートを参照して、図２のファームウェア管理システムによるファームウェアのバージョンアップ処理について説明する。
【００４９】
ステップＳ１において、制御部１２１は、ファームウェア管理部１３２を制御して、インタフェース部１２５を介してPOSレジスタ１０２よりファームウェアのバージョンアップが要求されてきたか否かを判定し、ファームウェアのバージョンアップが要求されるまで、同様の処理を繰り返す。そして、ステップＳ１において、例えば、店舗５１の店員などの使用者により入力部１７３が操作されて、表示部１７２に表示される情報に基づいて、ファームウェアのバージョンアップを要求するコマンドが入力されると、対応する操作信号が発生される。この操作信号が、インタフェース部１７１，１２５を介して制御部１２１に供給されると、ファームウェアのバージョンアップが要求されてきたと判定され、処理は、ステップＳ２に進む。
【００５０】
ステップＳ２において、制御部１２１は、通信部１２２を制御して、ファームウェア管理サーバ５３に対して相互認証処理を実行する。
【００５１】
この処理に応じて、ステップＳ２１において、ファームウェア管理サーバ５３における制御部２０１も、制御部２０２を制御して相互認証処理を実行する。
【００５２】
この相互認証処理は、端末装置１０１とファームウェア管理サーバ５３とが相互に認証できる処理であれば、処理方法が限定されるものではなく、例えば、チャレンジアンドレスポンスなどでもよいし、秘密鍵と公開鍵を用いたものであってもよい。この相互認証処理により相互認証が認められた場合、以降の処理が開始される。尚、相互認証処理により相互認証が認められなかった場合、処理は、終了する。
【００５３】
ステップＳ３において、ファームウェア管理部１３２は、記憶部１２４内に設定されており、POSレジスタ１０２からの使用者の操作に対応してデータを書き換えることができない秘匿領域１４２にアクセスし、そこに格納されている今現在のファームウェア１４１のファームウェアバージョン情報１５１を読み出す。
【００５４】
ステップＳ４において、ファームウェア管理部１３２は、通信部１２２を制御して、読み出したファームウェアバージョン情報１５１に、端末装置１０１を識別するデバイスID１３１を付してネットワーク５２を介して、ファームウェア管理サーバ５３に対してファームウェアのバージョンアップを要求する。
【００５５】
ステップＳ２２において、制御部２０１は、通信部２０２を制御して、ファームウェアのバージョンアップが要求されてきたか否かを判定し、要求されてくるまで、その処理を繰り返す。ステップＳ２２において、例えば、ステップＳ４の処理により、ファームウェアのバージョンアップが要求されてきた場合、処理は、ステップＳ２３に進む。
【００５６】
ステップＳ２３において、制御部２０１は、ファームウェア管理部２１１を制御して、記憶部２０３に格納されているファームウェア管理DB２３２にアクセスさせ、ファームウェアのバージョンアップの要求と共に送信されてきたデバイスID１３１に基づいて、ファームウェアのバージョンアップを要求してきた端末装置１０１に関するサポート契約情報を読み出して確認させる。
【００５７】
ファームウェア管理DB２３２は、例えば、図４で示されるようなものであり、デバイスIDに対応付けてサポート契約情報、バージョン情報、および課金管理情報が記録されたデータベースである。図４の場合、左からデバイスID、サポート契約情報、バージョン情報、および課金管理情報が登録されており、デバイスIDは、上から１，２，３・・・Xと記録され、サポート契約情報は、上から１，０，１・・・１と記録され、バージョン情報は、上からVersion１−１，−，Version２−１・・・Version１−３と記録され、課金管理情報は、上から１，−，０・・・１と記録されている。図４において、サポート契約情報は、契約されている場合「１」が付され、契約されていない場合「０」が付される。また、課金管理情報は、課金処理部２１２の処理により領収済みのものについては「１」が付されており、未納のものについては「０」が付されている。
【００５８】
すなわち、デバイスID＝１に対応する端末装置１０１は、サポート契約がなされており、今現在のバージョン情報は、Version１−１であり、課金がなされていることが示されており、デバイスID＝２に対応する端末装置１０１は、サポート契約がなされておらず、今現在のバージョン情報は、管理されておらず、不明であるので「−」であり、課金も管理されていないことから不明であるので、「−」で示されており、デバイスID＝３に対応する端末装置１０１は、サポート契約がなされており、今現在のバージョン情報は、Version２−１であり、課金がなされていないことが示されており、デバイスID＝Ｘに対応する端末装置１０１は、サポート契約がなされており、今現在のバージョン情報は、Version１−３であり、課金がなされていることが示されている。尚、図４において、バージョン情報は、古いものからVersion１−１，Version１−２，Version１−３，Version２−１・・であるものとする。
【００５９】
従って、ステップＳ２４において、例えば、デバイスID＝２の端末装置１０１からファームウェアのバージョンアップが要求されているような場合、サポート契約情報が「０」であるので、ファームウェア管理部２１１は、サポート契約がなされていないとみなし、ステップＳ２５において、制御部２０１は、通信部２０２を制御して、サポート契約なしのためバージョンアップを受け付けられないことを示す通知を端末装置１０１に送信させ、処理は、ステップＳ２１に戻る。
【００６０】
一方、ステップＳ２４において、例えば、デバイスID＝１の端末装置１０１からファームウェアのバージョンアップが要求されているような場合、サポート契約情報が「１」であるので、ファームウェア管理部２１１は、サポート契約がなされているとみなし、処理は、ステップＳ２６に進む。
【００６１】
ステップＳ２６において、ファームウェア管理部２１１は、端末装置１０１より送信されてきたファームウェアバージョン情報１５１と、ファームウェア管理DB２３２より読み出したバージョン情報とを比較し、不正があるか否かを判定する。すなわち、通常、端末装置１０１より送信されてきたファームウェアバージョン情報１５１と、ファームウェア管理DB２３２より読み出したバージョン情報とは、同一である筈であるが、秘匿領域１４２で管理され、端末装置１０１においては、更新不能である筈のファームウェアバージョン情報１５１が何らかの不正な手段により改竄されるなどした場合、同一ではないことが考えられるので、ファームウェア管理部２１１は、ファームウェアバージョン情報１５１が不正なものであるか否かを判定する。
【００６２】
ステップＳ２６において、例えば、図４の場合、デバイスID＝１の端末装置１０１からのファームウェアバージョン情報１５１が、Version１−２であったとき、端末装置１０１より送信されてきたファームウェアバージョン情報１５１（Version１−２）と、ファームウェア管理DB２３２より読み出したバージョン情報（Version１−１）とが同一ではないので、ファームウェア管理部２１１は、ファームウェアバージョン情報１５１が不正なものであるとみなし、処理は、ステップＳ２７に進む。
【００６３】
ステップＳ２７において、ファームウェア管理部２１１は、通信部２０２を制御して、不正なファームウェアバージョン情報１５１であるので、ファームウェアのバージョンアップの要求を受け付けられないことを、端末装置１０１に対して通知させる。
【００６４】
一方、ステップＳ２６において、例えば、図４の場合、デバイスID＝１の端末装置１０１からのファームウェアバージョン情報１５１が、Version１−１であったとき、端末装置１０１より送信されてきたファームウェアバージョン情報１５１（Version１−１）と、ファームウェア管理DB２３２より読み出したバージョン情報（Version１−１）とが同一となるので、ファームウェアバージョン情報１５１が不正なものではないとみなし、処理は、ステップＳ２８に進む。
【００６５】
ステップＳ２８において、ファームウェア管理部２１１は、バージョン比較部２２１を制御して、端末装置１０１より送信されてきたファームウェアバージョン情報１５１と、記憶部２０３に格納されているファームウェア２３１のバージョン情報である最新バージョン情報２２１ａとを比較させ、ファームウェアバージョン情報１５１が最新のものであるか否かを判定する。
【００６６】
ステップＳ２８において、例えば、最新バージョンがVersion２−１である場合、図４において、デバイスID＝３の端末装置１０１からファームウェアのバージョンアップが要求されたとき、ファームウェアバージョン情報１５１もVersion２−１であるので、ファームウェアバージョン情報１５１と最新バージョン情報２２１ａとが同一となる。結果として、ファームウェアバージョン情報１５１が最新のものであるとみなされ、ステップＳ２９において、制御部２０１は、通信部２０２を制御して、ファームウェアのバージョンアップが不要である、すなわち、更新不要であることをファームウェアのバージョンアップを要求してきた端末装置１０１に送信させる。
【００６７】
一方、ステップＳ２８において、例えば、最新バージョンがVersion２−１である場合、図４において、デバイスID＝１の端末装置１０１からファームウェアのバージョンアップが要求されたとき、ファームウェアバージョン情報１５１はVersion１−１であるので、ファームウェアバージョン情報１５１は最新バージョン情報２２１ａよりも古い、すなわち、ファームウェアバージョン情報１５１が最新のものではないとみなされ、ステップＳ３０において、ファームウェア管理部２１１は、記憶部２０３にアクセスし、格納されている最新のバイナリデータのファームウェア２３１を読み出し、通信部２０２を制御して、ファームウェアのバージョンアップを要求してきた端末装置１０１に送信させる。このとき、ファームウェア管理部２１１は、最新のバイナリデータのファームウェア２３１と共に、最新バージョン情報２２１ａ、および、ファームウェアのバージョンアップ要求を受け付けた日時の情報なども合わせて送信させる。
【００６８】
ステップＳ３１において、ファームウェア管理部２１１は、記憶部２０３にアクセスし、ファームウェア管理DB２３２を、ファームウェア１４１のバージョンアップに伴って更新し、処理は、ステップＳ２１に戻る。すなわち、例えば、最新バージョンがVersion２−１である場合、図４において、デバイスID＝１の端末装置１０１からファームウェアのバージョンアップが要求されたとき、ファームウェアの更新によりデバイスID＝１の端末装置１０１のファームウェア１４１は、Version１−１からVersion２−１に更新されることになる。
【００６９】
一方、端末装置１０１においては、ステップＳ５において、ファームウェア管理部１３２が、通信部１２２を制御して、ファームウェア１４１のバージョンアップの要求に伴って、ファームウェア管理サーバ５３より送信されてくる通知を受信させる。
【００７０】
ステップＳ６において、ファームウェア管理部１３２は、通知内容がサポート契約されていないので、ファームウェア１４１のバージョンアップができないことを示すものである、または、ファームウェアバージョン情報１５１が不正なものであるので、ファームウェア１４１のバージョンアップができないことを示すものであることを示すものであるか否かを判定する。
【００７１】
ステップＳ６において、例えば、上述したステップＳ２５、またはＳ２７の処理により送信されてくる通知である場合、すなわち、通知内容が、サポート契約されていないので、ファームウェア１４１のバージョンアップができないことを示すものである、または、ファームウェアバージョン情報１５１が不正なものであるので、ファームウェア１４１のバージョンアップができないことを示すものである場合、ステップＳ７において、ファームウェア管理部１３２は、インタフェース部１２５を介して、POSレジスタ１０２にサポート契約されていないので、ファームウェア１４１のバージョンアップができないことを示すものである、または、ファームウェアバージョン情報１５１が不正なものであるので、ファームウェア１４１のバージョンアップができないことを示す通知を受信したことを示す情報を供給する。これに応じて、POSレジスタ１０２は、表示部１７２にサポート契約されていないので、ファームウェア１４１のバージョンアップができない、または、ファームウェアバージョン情報１５１が不正なものであるので、ファームウェア１４１のバージョンアップができないことを示す情報を表示し、処理は、終了する。
【００７２】
また、ステップＳ６において、通知内容が、サポート契約されていないので、ファームウェア１４１のバージョンアップができないことを示すものでも、ファームウェアバージョン情報１５１が不正なものであることを示すものでもない場合、ステップＳ８において、ファームウェア管理部１３２は、通知内容が、バージョンアップ不要であることを通知するものであるか否かを判定する。
【００７３】
ステップＳ８において、通知内容が、ステップＳ２９の処理により通知された、バージョンアップが不要であることを示すものである場合、ステップＳ９において、ファームウェア管理部１３２は、インタフェース部１２５を介して、POSレジスタ１０２にファームウェア１４１のバージョンアップが不要であることを示す情報を供給する。これに応じて、POSレジスタ１０２は、ファームウェア１４１のバージョンアップが不要であることを示す情報を表示し、処理は、終了する。
【００７４】
ステップＳ８において、通知内容が、ステップＳ３０の処理により送信されてくるバイナリ形式の最新バージョンのファームウェア２３１である場合、ステップＳ１０において、ファームウェア管理部１３２は、通信部１２２を制御して、送信されてきたファームウェア２３１および最新バージョン情報２２１ａを取得すると共に、ファームウェア更新部１３２ａを制御して、記憶部１２４のファームウェア１４１をファームウェア２３１で更新する。
【００７５】
ステップＳ１１において、ファームウェア管理部１３２は、バージョン情報更新部１３２ｂを制御して、記憶部１２４の秘匿領域１４１のファームウェアバージョン情報１５１を更新したファームウェア２３１の最新バージョン情報２２１ａで更新し、処理は、ステップＳ５１に戻る。このとき、ファームウェアバージョン情報１５１は、最新バージョン情報２２１ａと共に送信されてきたファームウェアのバージョンアップを要求した日時情報なども含んでいる。
【００７６】
以上の処理により、ファームウェアバージョン情報１５１が、記憶部１２４の秘匿領域１４１に格納されることにより、端末装置１０１の使用者による改竄を抑制することが可能となるので、不正なファームウェアのバージョンアップを抑制することが可能となる。また、図４で示されるファームウェア管理DB２３２によりファームウェア２３１が更新されることにより、デバイスID毎に、すなわち、端末装置１０１毎にファームウェアのバージョンアップ状況を把握することが可能になる。結果として、バージョンアップ状況を把握することで、ファームウェアのバージョンアップに係る対価を正確に徴収することが可能となる。
【００７７】
以上においては、ファームウェアバージョン情報１５１を記憶部１２４における秘匿領域１４２において管理する例について説明してきたが、端末装置１０１の使用者により改竄できない状態でファームウェアバージョン情報を格納できるようにすればよいので、例えば、ファームウェアバージョン情報を電子証明書の形式で管理するようにしても良い。
【００７８】
次に、図５を参照して、ファームウェアバージョン情報を電子証明書の形式で管理するようにした端末装置１０１、およびファームウェア管理サーバ５３の構成について説明する。尚、図５の端末装置１０１、およびファームウェア管理サーバ５３において、図２の端末装置１０１、およびファームウェア管理サーバ５３の構成と同一の構成については、同一の符号を付しており、その説明は適宜省略するものとする。
【００７９】
図５の端末装置１０１において、図２の端末装置１０１と異なる点は、ファームウェア管理部１３２に代えてファームウェア管理部２４１が設けられており、さらに、記憶部１２４においては、秘匿領域１４２が存在せず、全てがユーザにより記述を加えることが可能な一般領域２５１とされており、さらに、一般領域２５１内には、ファームウェアバージョン情報２６１ａを含む電子証明書２６１、および公開鍵２６２が格納されている。また、図５のファームウェア管理サーバ５３において、図２のファームウェア管理サーバ５３と異なる点は、ファームウェア管理部２１１に代えてファームウェア管理部２８１が設けられている点である。
【００８０】
ファームウェア管理部２４１は、ファームウェア更新部２４１ａおよびバージョン情報更新部２４１ｂを備えており、基本的な機能は、ファームウェア管理部１３２と同様である。さらに、バージョン情報更新部２４１ｂは、図５のファームウェア管理サーバ５３より送信されてくるファームウェアに付されている、秘密鍵２９１で暗号化された（電子署名された）ファームウェアバージョン情報２６１ａを含む電子証明書２６１を取得すると、記憶部１２４の一般領域２５１に格納する。電子証明書２６１は、電子署名された（ファームウェア管理サーバ５３の秘密鍵２９１で暗号化された）ファームウェアバージョン情報２６１ａを含むものであり、換言すれば、電子証明書２６１が、ファームウェアバージョン情報そのものである。
【００８１】
ファームウェア管理部２４１は、電子証明書２６１の形式で格納されているファームウェアバージョン情報２６１ａを認識するため、秘密鍵２９１と対になっている公開鍵２６２により、ファームウェア管理サーバ５３の秘密鍵２９１により暗号化されているファームウェアバージョン情報２６１ａを復号して、実際のファームウェア１４１のファームウェアバージョン情報２６１ａを取得し、POSレジスタ１０２の表示部１７２に表示させる。
【００８２】
さらに、ファームウェア管理部２４１は、通信部１２２を制御して、ファームウェア１４１のバージョンアップを要求するとき、デバイスID１３１および電子証明書２６１を合わせてファームウェア管理サーバ５３に送信する。
【００８３】
ファームウェア管理部２８１は、基本的にファームウェア管理部２１１と同様の機能を備えているが、バージョン比較部２２１に加えて、秘密鍵２９１、秘密鍵２９１に対応する公開鍵２９２、および電子証明書発行部２９３を備えている。電子証明書発行部２９３は、ファームウェア２３１を端末装置１０１に送信してバージョンアップするとき、ファームウェア２３１のファームウェアバージョン情報を秘密鍵２９１にて暗号化して（署名して）、ファームウェアバージョン情報の電子証明書を発行する。また、ファームウェア管理部２８１は、ファームウェアのバージョンアップが要求された場合、併せて供給されてくる電子証明書２６１を公開鍵２９２により復号して、ファームウェアバージョン情報２６１ａを読み出す。
【００８４】
すなわち、ファームウェアバージョン情報は、基本的に秘密鍵２９１により暗号化された電子証明書２６１として流通することになるため、公開鍵２６２で復号し、ファームウェアバージョン情報２６１ａを改竄したとしても、端末装置１０１の使用者は、公開鍵２６２に対応する秘密鍵２９１を持ち合わせていないことから、改竄したファームウェアバージョン情報２６１ａを再び秘密鍵２９１により暗号化して電子証明書として流通させることができないので、ファームウェアバージョン情報２６１ａの改竄を困難なものとしている。
【００８５】
次に、図６のフローチャートを参照して、図５のファームウェア管理システムによるバージョンアップ処理について説明する。尚、ステップＳ５１，Ｓ５２，Ｓ５５乃至Ｓ５９の処理、およびステップＳ８１，Ｓ８２，Ｓ８４乃至Ｓ９０の処理については、図３のステップＳ１，Ｓ２，Ｓ５乃至Ｓ９、およびステップＳ２１，Ｓ２２，Ｓ２３乃至Ｓ２９の処理と同様であるので、その説明は、省略するものとする。
【００８６】
ステップＳ５３において、ファームウェア管理部２４１は、記憶部１２４内に設定されている一般領域２５１にアクセスし、そこに格納されている今現在のファームウェアバージョン情報２６１ａを含む電子証明書２６１を読み出す。
【００８７】
ステップＳ５４において、ファームウェア管理部２４１は、通信部１２２を制御して、読み出した電子証明書２６１に、端末装置１０１を識別するデバイスID１３１を付してネットワーク５２を介して、ファームウェア管理サーバ５３に対してファームウェアのバージョンアップを要求する。
【００８８】
ステップＳ８２において、例えば、ステップＳ５４の処理により、ファームウェアのバージョンアップが要求されてきた場合、処理は、ステップＳ８３に進む。
【００８９】
ステップＳ８３において、制御部２０１は、ファームウェア管理部２８１を制御して、公開鍵２９２を用いて、ファームウェアのバージョンアップが要求されるとき、合わせて送信されてくる電子証明書２６１を復号して、ファームウェアのバージョンアップを要求してきた端末装置１０１のファームウェア１４１のファームウェアバージョン情報２６１ａを読み出す。
【００９０】
ステップＳ８４において、ファームウェア管理部２８１は、記憶部２０３に格納されているファームウェア管理DB２３２にアクセスし、ファームウェアのバージョンアップの要求と共に送信されてきたデバイスID１３１に基づいて、ファームウェアのバージョンアップを要求してきた端末装置１０１に関する契約情報を読み出して確認する。
【００９１】
ステップＳ８５において、例えば、サポート契約がなされていないとみなされた場合、ステップＳ８６において、制御部２０１は、通信部２０２を制御して、サポート契約なしのためバージョンアップを受け付けられないことを示す通知を端末装置１０１に送信させ、処理は、ステップＳ８１に戻る。
【００９２】
一方、ステップＳ８５において、例えば、サポート契約がなされているとみなされた場合、ステップＳ８７において、ファームウェア管理部２８１は、端末装置１０１より送信されてきた電子証明書２６１に含まれていたファームウェアバージョン情報２６１ａと、ファームウェア管理DB２３２より読み出したバージョン情報とを比較し、不正があるか否かを判定する。
【００９３】
ステップＳ８７において、端末装置１０１より送信されてきた電子証明書２６１に含まれていたファームウェアバージョン情報２６１ａと、ファームウェア管理DB２３２より読み出したバージョン情報とが同一ではない場合、ファームウェア管理部２８１は、ファームウェアバージョン情報２６１ａが不正なものであるとみなし、ステップＳ８８において、通信部２０２を制御して、不正なファームウェアバージョン情報２６１ａであるので、ファームウェアのバージョンアップを受け付けることができないことを、端末装置１０１に対して通知させ、処理は、ステップＳ８１に戻る。
【００９４】
一方、ステップＳ８７において、端末装置１０１より送信されてきた電子証明書２６１に含まれていたファームウェアバージョン情報２６１ａと、ファームウェア管理DB２３２より読み出したバージョン情報とが同一である場合、すなわち、ファームウェアバージョン情報２６１ａが不正なものではない場合、ステップＳ８９において、ファームウェア管理部２８１は、バージョン比較部２２１を制御して、端末装置１０１より送信されてきたファームウェアバージョン情報２６１ａと、最新バージョン情報２２１ａとを比較させ、ファームウェアバージョン情報２６１ａが最新のものであるか否かを判定する。
【００９５】
ステップＳ８９において、例えば、ファームウェアバージョン情報２６１ａが最新のものであるとみなされた場合、ステップＳ９０において、制御部２０１は、通信部２０２を制御して、ファームウェアのバージョンアップが不要である、すなわち、更新不要であることをファームウェアのバージョンアップを要求してきた端末装置１０１に送信させ、処理は、ステップＳ８１に戻る。
【００９６】
一方、ステップＳ８９において、例えば、ファームウェアバージョン情報２６１ａが最新のものではないとみなされた場合、ステップＳ９１において、ファームウェア管理部２８１は、記憶部２０３にアクセスし、格納されている最新のバイナリデータのファームウェア２３１を読み出す。電子証明書発行部２９２は、そのファームウェア２３１のバージョン情報である、最新バージョン情報２２１ａを秘密鍵２９２を利用して暗号化することにより、新たなファームウェアバージョン情報の電子証明書を発行する。このとき、電子証明書発行部２９２は、最新のバイナリデータのファームウェア２３１と共に、最新バージョン情報２２１ａ、および、ファームウェアのバージョンアップ要求を受け付けた日時の情報なども合わせて、秘密鍵２９２を利用して暗号化することにより、新たなファームウェアバージョン情報の電子証明書を発行する。
【００９７】
ステップＳ９２において、ファームウェア管理部２８１は、通信部２０２を制御して、ファームウェアのバージョンアップを要求してきた端末装置１０１に、新たに発行した電子証明書とバイナリ形式のファームウェア２３１を送信させる。
【００９８】
ステップＳ９３において、ファームウェア管理部２８１は、記憶部２０３にアクセスし、ファームウェア管理DB２３２を、ファームウェア１４１のバージョンアップに伴って更新し、処理は、ステップＳ８１に戻る。
【００９９】
一方、端末装置１０１においては、ステップＳ５５において、ファームウェア管理部２４１が通信部１２２を制御して、ファームウェア１４１のバージョンアップの要求に伴って、ファームウェア管理サーバ５３より送信されてくる通知を受信させる。
【０１００】
ステップＳ５６において、ファームウェア管理部２４１は、通知内容がサポート契約されていないので、ファームウェア１４１のバージョンアップができないことを示すものである、または、ファームウェアバージョン情報１５１が不正なものであるので、ファームウェア１４１のバージョンアップができないことを示すものであることを示すものであるか否かを判定する。
【０１０１】
ステップＳ５６において、例えば、通知内容が、サポート契約されていないので、ファームウェア１４１のバージョンアップができないことを示すものである、または、ファームウェアバージョン情報２６１ａ（電子証明書２６１）が不正なものであるので、ファームウェア１４１のバージョンアップができないことを示すものである場合、ステップＳ５７において、ファームウェア管理部２４１は、インタフェース部１２５を介して、POSレジスタ１０２にサポート契約されていないので、ファームウェア１４１のバージョンアップができないことを示すものである、または、ファームウェアバージョン情報２６１ａ（電子証明書２６１）が不正なものであるので、ファームウェア１４１のバージョンアップができないことを示す通知を受信したことを示す情報を供給する。これに応じて、POSレジスタ１０２は、表示部１７２にサポート契約されていないので、ファームウェア１４１のバージョンアップができない、または、ファームウェアバージョン情報２６１ａ（電子証明書２６１）が不正なものであるので、ファームウェア１４１のバージョンアップができないことを示す情報を表示し、処理は、終了する。
【０１０２】
また、ステップＳ５６において、通知内容が、サポート契約されていないので、ファームウェア１４１のバージョンアップができないことを示すものでも、ファームウェアバージョン情報１５１が不正なものであることを示すものでもない場合、ステップＳ５８において、ファームウェア管理部２４１は、通知内容が、バージョンアップ不要であることを通知するものであるか否かを判定する。
【０１０３】
ステップＳ５８において、通知内容が、例えば、バージョンアップが不要であることを示すものである場合、ステップＳ５９において、ファームウェア管理部２４１は、インタフェース部１２５を介して、POSレジスタ１０２にファームウェア１４１のバージョンアップが不要であることを示す情報を供給する。これに応じて、POSレジスタ１０２は、ファームウェア１４１のバージョンアップが不要であることを示す情報を表示し、処理は、終了する。
【０１０４】
ステップＳ５８において、通知内容が、ステップＳ９２の処理により通知された、バイナリ形式の最新バージョンのファームウェア２３１である場合、ステップＳ６０において、ファームウェア管理部２４１は、通信部１２２を制御して、送信されてきたファームウェア２３１を取得すると共に、ファームウェア更新部２４１ａを制御して、記憶部１２４のファームウェア１４１をファームウェア２３１で更新する。
【０１０５】
ステップＳ６１において、ファームウェア管理部２４１は、バージョン情報更新部２４１ｂを制御して、記憶部１２４の一般領域２５１における電子証明書２６１を、更新したファームウェア２３１と共に送信されてきた電子証明書で更新することにより、ファームウェアバージョン情報２６１ａを更新し、処理は、ステップＳ５１に戻る。
【０１０６】
以上の処理により、ファームウェアバージョン情報２６１ａが、記憶部１２４の一般領域２５１に、電子証明書の形式で格納されることにより、端末装置１０１の使用者による改竄を抑制することが可能となるので、不正なファームウェアのバージョンアップを抑制することが可能となる。また、上述の場合と同様に、図４で示されるファームウェア管理DB２３２によりファームウェア２３１が更新されることにより、デバイスID毎に、すなわち、端末装置１０１毎にファームウェアの更新状況を把握することが可能になると共に、更新状況を把握することで、ファームウェアのバージョンアップに係る対価を正確に徴収することが可能となる。
【０１０７】
上述した一連の処理は、ハードウエアにより実行することもできるし、ソフトウエアにより実行することもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、専用のハードウエアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
【０１０８】
図７は、上述した一連の処理をプログラムにより実行するパーソナルコンピュータのハードウエアの構成の例を示すブロック図である。
【０１０９】
コンピュータにおいて、CPU（Central Processing Unit）１００１，ROM（Read Only Memory）１００２，RAM（Random Access Memory）１００３は、バス１００４により相互に接続されている。
【０１１０】
バス１００４には、さらに、入出力インタフェース１００５が接続されている。入出力インタフェース１００５には、キーボード、マウス、マイクロホンなどよりなる入力部１００６、ディスプレイ、スピーカなどよりなる出力部１００７、ハードディスクや不揮発性のメモリなどよりなる記憶部１００８、ネットワークインタフェースなどよりなる通信部１００９、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア１０１１を駆動するドライブ１０１０が接続されている。
【０１１１】
以上のように構成されるコンピュータでは、CPU１００１が、例えば、記憶部１００８に記憶されているプログラムを、入出力インタフェース１００５及びバス１００４を介して、RAM１００３にロードして実行することにより、上述した一連の処理が行われる。
【０１１２】
コンピュータ（CPU１００１）が実行するプログラムは、例えば、磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)等）、光磁気ディスク、もしくは半導体メモリなどよりなるパッケージメディアであるリムーバブルメディア１０１１に記録して、あるいは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供される。
【０１１３】
そして、プログラムは、リムーバブルメディア１０１１をドライブ１０１０に装着することにより、入出力インタフェース１００５を介して、記憶部１００８にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部１００９で受信し、記憶部１００８にインストールすることができる。その他、プログラムは、ROM１００２や記憶部１００８に、あらかじめインストールしておくことができる。
【０１１４】
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
【０１１５】
また、本明細書において、システムの用語は、複数の装置、手段などより構成される全体的な装置を意味するものとする。
【図面の簡単な説明】
【０１１６】
【図１】従来のファームウェア管理システムの実施の形態の外観を示す図である。
【図２】本発明を適用したファームウェア管理システムの実施の形態を示す図である。
【図３】図２のファームウェア管理システムによるバージョンアップ処理を説明するフローチャートである。
【図４】ファームウェア管理DBを説明する図である。
【図５】本発明を適用したその他のファームウェア管理システムの実施の形態を示す図である。
【図６】図５のファームウェア管理システムによるバージョンアップ処理を説明するフローチャートである。
【図７】パーソナルコンピュータの構成例を説明する図である。
【符号の説明】
【０１１７】
５１，５１−１乃至５１−ｎ  店舗，  １０１  端末装置，  １０２  POSレジスタ，  １２１  制御部，  １２２  通信部，  １２３  リーダライタ部，  １２４  記憶部，  １２５  インタフェース部，  １３１  デバイスID，  １３２  ファームウェア管理部，  １３２ａ  ファームウェア更新部，  １３２ｂ  バージョン情報変換部，  １４１  ファームウェア，  １４２  秘匿領域，  １４３  一般領域，  １５１  ファームウェアバージョン情報，  ２０１  制御部，  ２０２  通信部，  ２０３  記憶部，  ２１１  ファームウェア管理部，  ２１２  課金処理部，  ２２１  バージョン比較部，２２１ａ  最新バージョン情報，  ２３１  ファームウェア，  ２３２  ファームウェア管理DB，  ２４１  ファームウェア管理部，  ２４１ａ  ファームウェア更新部，  ２４１ｂ  バージョン情報更新部，  ２５１  一般領域，  ２６１  電子証明書，  ２６２  公開鍵，  ２８１  ファームウェア管理部，  ２９１  秘密鍵，  ２９２  公開鍵，  ２９３  電子証明書発行部
【図１】
2008181228.tif 000003
【図２】
2008181228.tif 000004
【図３】
2008181228.tif 000005
【図４】
2008181228.tif 000006
【図５】
2008181228.tif 000007
【図６】
2008181228.tif 000008
【図７】
2008181228.tif 000009