JP2009059186A - データ管理装置及びプログラム - Google Patents

データ管理装置及びプログラム Download PDF

Info

Publication number
JP2009059186A
JP2009059186A JP2007226180A JP2007226180A JP2009059186A JP 2009059186 A JP2009059186 A JP 2009059186A JP 2007226180 A JP2007226180 A JP 2007226180A JP 2007226180 A JP2007226180 A JP 2007226180A JP 2009059186 A JP2009059186 A JP 2009059186A
Authority
JP
Japan
Prior art keywords
program
distribution
data
terminal device
unit
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.)
Granted
Application number
JP2007226180A
Other languages
English (en)
Other versions
JP5211586B2 (ja
Inventor
Yukihiro Shinto
幸博 新堂
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.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
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 Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP2007226180A priority Critical patent/JP5211586B2/ja
Publication of JP2009059186A publication Critical patent/JP2009059186A/ja
Application granted granted Critical
Publication of JP5211586B2 publication Critical patent/JP5211586B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】通信ネットワークに接続された複数の端末機器のそれぞれに、端末機器に応じた最新のプログラムを配信可能とする。
【解決手段】本発明のデータ管理装置によれば、プログラム配信対象のECRに搭載されているプログラムの種類と、配信すべき最新のバージョンを示すプログラム管理コードをプログラム配信情報記憶部に記憶しており、各ECRにより開設時と閉設時にプログラムの配信確認要求が送信されると、送信元のECRに搭載された各プログラムのバージョンとその最新のバージョンを示す情報とを比較し、異なる場合に、配信が必要である旨を接続したECRに応答する。ECRでは、データ管理装置からプログラムの配信が必要であると応答された場合に、データ管理装置に該当するプログラムの配信要求を行ってプログラムデータを取得する。
【選択図】図2

Description

本発明は、データ管理装置及びプログラムに関する。
従来、インターネット等の通信ネットワークを介してサーバ装置から端末機器へ向けてプログラム(ソフトウエア)を配信する各種システムが知られている。
例えば、特許文献1には、端末からサーバ側にアプリケーション要求を送信すると、サーバ装置側から端末に対してアプリケーションソフトウエアをダウンロードの形で配信し、端末側で受信したアプリケーションソフトウエアを使ってデータ処理ができるようにしたソフトウエア配信システムが記載されている。
また、特許文献2には、ソフトウエアを再結合可能な複数のセグメントデータに分割して所定のサイトに登録しておき、ユーザ端末がサイトにリンクしたことが検出されるたびに複数のセグメントデータのそれぞれをひとつずつユーザ端末に送信することで、大容量データのソフトウエアであってもユーザにストレスを与えずに送信することができるようにした技術が記載されている。
また、特許文献3には、分散システムにおけるソフトウエア配信方式が記載されている。
特開2005−18604号公報 特開2002−99476号公報 特開平8−95880号公報
ところで、店舗に設置されるECR(売上データ処理装置)や決済端末等の端末機器は、同一の会社が構える店舗間であっても店舗毎に機種が異なり、搭載されるプログラムが店舗毎に異なる場合がある。また、同じ店舗であってもフロア毎に端末機器の機種が異なり、フロア毎に搭載されるプログラムが異なる場合がある。また、同じ機種の端末機器であっても、端末機器によって仕向け等が異なり、搭載されるプログラムが異なる場合がある。
しかしながら、従来のプログラムの配信技術においては、サーバ等のデータ管理装置は端末からの要求に応じてプログラムを配信しているだけであり、店舗に設置される端末機器のように、搭載されるプログラムの種類がまちまちである複数の端末機器のプログラムを最新の状態となるように更新させることはできなかった。
本発明の課題は、通信ネットワークに接続された複数の端末機器のそれぞれに、端末機器に応じた最新のプログラムを配信可能とすることである。
上記課題を解決するため、請求項1に記載の発明は、
通信ネットワークを介して複数の端末機器に接続されるデータ管理装置であって、
前記複数の端末機器の少なくとも一つに配信する一又は複数種類のプログラムを記憶するプログラム記憶手段と、
前記端末機器毎に、当該端末機器に搭載されているプログラムの種類及びこの搭載されているプログラムについて配信すべき最新バージョンを示す情報を記憶する配信情報記憶手段と、
前記通信ネットワークを介して接続された端末機器を認証する認証手段と、
前記認証手段により認証された端末機器から送信される前記端末機器に搭載されている各プログラムのバージョンを示す情報と前記配信情報記憶手段に記憶されている最新バージョンを示す情報とに基づいて、前記認証された端末機器に配信すべきプログラムを判断する配信確認手段と、
前記配信すべきであると判断されたプログラムを前記プログラム記憶手段から読み出し、当該読み出したプログラムを前記通信ネットワークを介して前記認証された端末機器に配信する配信手段と、
を備える。
請求項2に記載の発明は、請求項1に記載の発明において、
最新バージョンのプログラムを前記プログラム記憶手段に登録するとともに、前記配信情報記憶手段に記憶された前記端末機器毎の該当するプログラムの前記最新バージョンを示す情報を更新する登録手段を備え、
前記登録手段は、前記最新バージョンのプログラムを登録した際に、前記複数の端末機器を予め定められた複数のグループに分割し、この分割されたグループ毎に時間をずらして前記配信情報記憶手段の前記最新バージョンを示す情報の更新を行う。
請求項3に記載の発明は、請求項2に記載の発明において、
前記配信情報記憶手段は、前記複数の端末機器に搭載されたプログラム毎に、前記最新バージョンのプログラムが配信されたか否かを示す配信実績情報を格納する領域を有し、
前記配信手段は、前記最新バージョンのプログラムを前記各端末機器に配信した際に、当該プログラムが配信済みであることを示す配信実績情報を前記配信情報記憶手段に記憶させ、
前記登録手段は、前記配信情報記憶手段を参照し、一のグループについての前記最新バージョンのプログラムの配信実績が予め定められた割合を超えた場合に、次のグループについての前記最新バージョンを示す情報の更新を行う。
請求項4に記載の発明は、請求項1に記載の発明において、
前記配信情報記憶手段は、更に、前記配信すべき最新バージョンのプログラムの配信タイミングを更に記憶し、
前記配信確認手段は、更に、前記配信情報記憶手段に記憶されている配信タイミングに基づいて、前記認証された端末機器に配信すべきプログラムを判断する。
請求項5に記載の発明は、請求項1に記載の発明において、
各種データを暗号化する暗号制御手段を備え、
前記配信手段は、前記暗号制御手段により前記認証された端末機器に応じた暗号強度で前記配信すべきプログラムを暗号化して前記認証された端末機器に送信する。
請求項6に記載の発明は、請求項1に記載の発明において、
各種データを暗号化する暗号制御手段を備え、
前記配信手段は、前記暗号制御手段により前記配信するプログラムに応じた暗号強度で前記配信すべきプログラムを暗号化して前記認証された端末機器に送信する。
請求項7に記載の発明のプログラムは、
通信ネットワークを介して複数の端末機器に接続されるデータ管理装置に用いられるコンピュータを、
前記複数の端末機器の少なくとも一つに配信する一又は複数種類のプログラムを記憶するプログラム記憶手段、
前記端末機器毎に、当該端末機器に搭載されているプログラムの種類及びこの搭載されているプログラムについて配信すべき最新バージョンを示す情報を記憶する配信情報記憶手段、
前記通信ネットワークを介して接続された端末機器を認証する認証手段、
前記認証手段により認証された端末機器から送信される前記端末機器に搭載されている各プログラムのバージョンを示す情報と前記配信情報記憶手段に記憶されている最新バージョンを示す情報とに基づいて、前記認証された端末機器に配信すべきプログラムを判断する配信確認手段、
前記配信すべきであると判断されたプログラムを前記プログラム記憶手段から読み出し、当該読み出したプログラムを前記通信ネットワークを介して前記認証された端末機器に配信する配信手段、
として機能させる。
本発明によれば、通信ネットワークに接続された複数の端末機器のそれぞれに、端末機器に応じた最新のプログラムを配信可能とすることができる。
〔実施形態1〕
まず、本発明の実施形態1について説明する。
図1に、実施形態1におけるプログラム配信システム1の構成例を示す。図1に示すように、プログラム配信システム1は、データ管理装置10と、端末機器としてのECR(Electronic Cash Resister)20(20A〜20D)とが通信ネットワークNを介してデータ送受信可能に接続されて構成されている。通信ネットワークNは、例えば、WAN(Wide Area Network)やインターネット等の通信ネットワークにより構成されるが、LAN(Local Area Network)等を含めてもよく、電話回線、専用線、移動体通信網、通信衛星網、CATV(Cable Television)回線、インターネットプロバイダ等を含めてもよい。また、ECR20の台数は、ここでは20A〜20Dの4台として図示しているが、特に限定されない。
データ管理装置10は、通信ネットワークNを介して接続された各ECR20に対応する最新バージョンのプログラムデータを記憶するとともに、ECR20毎に、搭載されているプログラムの種類やそのプログラムの最新バージョンを示すプログラム管理コード等を記憶、管理しており、各ECR20からの要求に応じて、プログラムの配信確認やプログラムデータの配信等を行う。
ECR20は、店舗に設けられ、オペレータの操作に基づいて商品取引の登録処理(取引された日時、商品名、商品の売上個数、売上金額のデータ、担当者等の登録処理)、点検処理、精算処理、店舗内の売上集計等を行う売上データ処理装置である。ECR20としては、例えば、電子レジスタ等が適用可能である。
以下、プログラム配信システム1を構成する各装置について説明する。
まず、データ管理装置10について説明する。
図2に、データ管理装置10の内部構成例を示す。図2に示すように、データ管理装置10は、CPU(Central Processing Unit)11と、入力部12と、RAM(Random Access Memory)13と、表示部14と、記憶部15と、通信部16と、計時部17と、を備えて構成され、各部はバス18を介して接続されて構成されている。
CPU11は、データ管理装置10の各部を集中制御する。CPU11は、記憶部15に記憶されているシステムプログラム及び各種アプリケーションプログラムの中から指定されたプログラムをRAM13に展開し、RAM13に展開されたプログラムとの協働で、各種処理を実行する。
図3に、CPU11と、記憶部15に記憶されている各種アプリケーションプログラムとの協働により実現される機能構成例を示す。図3に示すように、CPU11とプログラムとの協働により、登録手段としてのストアサービス情報登録部100、ストアサービスポート制御部200が実現される。
ストアサービス情報登録部100は、より詳細には、ストアサービスマスタ登録部101、プログラムデータ登録部102及びプログラム配信情報登録部103により構成される。
ストアサービスマスタ登録部101は、入力部12からの入力に基づいて、データ管理装置10におけるプログラム配信対象となるECR20に関するマスタ情報をストアサービスマスタ記憶部151に登録する。
プログラムデータ登録部102は、後述するプログラムデータ登録処理を実行し、入力部12からの入力に基づいて、ECR20の少なくとも一つに配信するプログラムデータ及びその属性情報をプログラムデータ記憶部153に登録する。
プログラム配信情報登録部103は、ストアサービスマスタ登録部101によってマスタ情報の登録が行われた際に、マスタ情報が登録されたECR20についてのプログラムの配信確認を行うための情報(プログラム配信情報)をプログラム配信情報記憶部152に登録する。また、プログラム配信情報登録部103は、プログラムデータ登録部102によってプログラムデータが登録された際に、プログラム配信情報をプログラム配信情報記憶部152に登録する。
ストアサービスポート制御部200は、より詳細には、電文制御部201、認証制御部202、プログラム配信確認部203、プログラム配信部204により構成される。
電文制御部201は、通信部16を介して受信された通信データのプロトコル処理を行い、通信データに含まれる要求データの解釈を行う。
認証手段としての認証制御部202は、後述する認証処理を実行し、ストアサービスマスタ記憶部151に登録されているマスタ情報を参照し、通信部16を介して接続されたECR20の認証を行う。
配信確認手段としてのプログラム配信確認部203は、後述するプログラム配信確認処理を実行し、プログラム配信確認の要求元のECR20に対するプログラム配信情報をプログラム配信情報記憶部152から取得しプログラムの配信が必要であるか否かを判断し、結果を要求元のECR20に送信する。
配信手段としてのプログラム配信部204は、後述するプログラム配信処理を実行し、プログラムデータ記憶部153に記憶されているプログラムデータを読み出して、プログラムの配信要求元のECR20に送信する。
入力部12は、カーソルキー、文字、数字入力キー及び各種機能キーなどを備えたキーボードを含む構成とし、操作者により各キーが押下された操作信号をCPU11に出力する。また、入力部12は、マウス等のポインティングデバイスを含み、位置入力信号を受け付けてCPU11に送信することとしてもよい。
RAM13は、揮発性のメモリである。また、RAM13は、実行される各種プログラムやこれら各種プログラムに係るデータ等を格納するワークエリアを有する。
表示部14は、LCD(Liquid Crystal Display)、CRT(Cathode Ray Tube)等で構成され、CPU11からの表示制御信号に従って画面表示を行う。
記憶部15は、HDD(Hard Disk Drive)等により構成され、各種プログラム及び各種データを読み出し及び書き込み可能に記憶する。本実施形態において、記憶部15は、図2に示すように、ストアサービスマスタ記憶部151、配信情報記憶手段としてのプログラム配信情報記憶部152、プログラム記憶手段としてのプログラムデータ記憶部153を有している。
図4(a)に、ストアサービスマスタ記憶部151のデータ格納例を示す。ストアサービスマスタ記憶部151は、登録された各ECR20についてのマスタ情報を記憶するものであり、図4(a)に示すように、「端末機器コード」フィールド、「グループコード」フィールド、「会社コード」フィールド、「店舗コード」フィールド、「機種コード」フィールド、「接続区分」フィールドを有する。
「端末機器コード」フィールドは、ECR20に一意に割り当てられた端末機器コードを格納する。「グループコード」フィールドは、ECR20を予め定められた基準に従って分類したときの分類区分を示すグループコードを格納する。「会社コード」フィールドは、ECR20を設置している会社を表す会社コードを格納する。「店舗コード」フィールドは、ECR20を設置している店舗を表す店舗コードを格納する。「機種コード」フィールドは、ECR20の端末機種を表す機種コードを格納する。機種コードは、上位3桁からなり、機種に一意に割り当てられたメジャーコードと、下位3桁からなり、仕向けを示すマイナーコードから構成される。「接続区分」フィールドは、ECR20の接続可否を示すフラグ(接続可であれば「1」、不可であれば「0」)を格納する。
図4(b)に、プログラム配信情報記憶部152のデータ格納例を示す。プログラム配信情報記憶部152は、プログラム配信対象となる各ECR20に搭載されているプログラム毎のプログラム配信情報を記憶するものであり、図4(b)に示すように、「端末機器コード」フィールド、「グループコード」フィールド、「会社コード」フィールド、「店舗コード」フィールド、「プログラム識別コード」フィールド、「プログラム管理コード」フィールドを有する。
「端末機器コード」フィールドは、プログラムの配信対象となるECR20の端末機器コードを格納する。「グループコード」フィールドはグループコードを、「会社コード」フィールドは会社コードを、「店舗コード」フィールドは、店舗コードをそれぞれ格納する。「プログラム識別コード」フィールドは、プログラムの種類を表すプログラム識別コードを格納する。「プログラム管理コード」フィールドは、配信すべきプログラムのバージョンを示すプログラム管理コードを格納する。
なお、配信すべきプログラムのバージョンとは、即ち、最新バージョンである。また、各ECR20には、機能毎の複数種類のプログラムが搭載されており、プログラム識別コードは、機能毎のプログラムの種類を表す。
図4(c)に、プログラムデータ記憶部153のデータ格納例を示す。プログラムデータ記憶部153は、配信すべきプログラムのプログラムデータとそのプログラムの属性情報を記憶するものであり、図4(c)に示すように、「機種コード」フィールド、「プログラム識別コード」フィールド、「プログラム管理コード」フィールド、「プログラムデータサイズ」フィールド、「プログラムデータ」フィールドを有する。
「機種コード」フィールドは、プログラムデータに対応するECR20の機種コードを格納する。「プログラム識別コード」フィールドは、プログラムの種類を表すプログラム識別コードを格納する。「プログラム管理コード」フィールドは、プログラムの最新バージョンを示すプログラム管理コードを格納する。「プログラムデータサイズ」フィールドは、プログラムデータのサイズを表す情報を格納する。「プログラムデータ」フィールドは、プログラムデータを格納する。
なお、上述のように、機種コードは、機種に一意に割り当てられたメジャーコードと、仕向けを示すマイナーコードから構成されている。図4(c)に示すように、プログラムデータ記憶部153において、プログラムデータは、機種コード及びプログラム識別コードの組み合わせ毎に格納され、管理されている。即ち、機種が同じであっても仕向けが異なるECR20同士では、異なるプログラムデータを配信することができるようになっている。
通信部16は、モデム、TA(Terminal Adapter)、ルータ、ネットワークカード等により構成される。通信部16は、接続される通信ネットワークN上の等の外部機器とデータ送受信を行う。
計時部17は、計時回路を内蔵し、現在時刻及び現在日付を計時してCPU11に出力する。
次いで、端末機器としてのECR20の構成を説明する。
図5に、ECR20の内部構成例を示す。図5に示すように、ECR20は、CPU21と、入力部22と、RAM23と、表示部24と、記憶部25と、通信部26と、計時部27と、ドロア28と、プリント部29aと、を備えて構成され、各部はバス29bを介して接続されて構成されている。
CPU21、RAM23、通信部26については、それぞれ、データ管理装置10のCPU11、RAM13、通信部16の構成と同様であり、異なる部分を主として説明する。
CPU21は、ECR20の各部を集中制御する。CPU21は、記憶部25に記憶されているシステムプログラム及び各種アプリケーションプログラムの中から指定されたプログラムをRAM23に展開し、RAM23に展開されたプログラムとの協働で、各種処理を実行する。
例えば、CPU21は、オペレータによる入力部22の操作に応じて各種アプリケーションプログラムを読み出して、読み出したアプリケーションプログラムとの協働により、商品取引の登録処理、点検処理、精算処理、店舗内の売上集計処理等を行う。
また、CPU21は、開設時、即ち、入力部22の電源キーが操作され電源がONされた際に、開設処理プログラムを読み出して、読み出したプログラムとの協働により開設処理を実行する。即ち、CPU21は、データ管理装置10に接続してプログラム配信確認要求を送信し、データ管理装置10から受信したプログラム配信確認応答にプログラム更新の必要があることを示す情報が含まれているか否かを判断し、プログラム更新の必要があることを示す情報が含まれていると判断されると、データ管理装置10にプログラム配信要求を送信してプログラムデータを取得し、取得したプログラムデータによりプログラムを更新(インストール)する。
また、CPU21は、入力部22により閉設が指示された際に、閉設処理プログラムを読み出して、読み出したプログラムとの協働により閉設処理(図8参照)を実行する。
入力部22は、電源キー、カーソルキー、文字、数字入力キー及び各種機能キーなどを備えたレジ用のキーボードを含む構成とし、操作者により各キーが押下された操作信号をCPU21に出力する。表示部24は、LCD等で構成され、CPU21からの表示制御信号に従って画面表示を行う。入力部22は、表示部24と一体的にタッチパネルを構成することとしてもよい。また、入力部22は、商品に設けられたバーコードを読み取るバーコードリーダやバーコードスキャナ等を備えることとしてもよい。
記憶部25は、フラッシュメモリ等により構成される。記憶部25は、各種プログラム及び売上データやECR20のマスタ情報(端末機器コード、グループコード、会社コード、店舗コード、機種コード等)を始めとする各種データを読み出し及び書き込み可能に記憶する。また、記憶部25は、HDD等により構成してもよい。
通信部26は、通信ネットワークN上のデータ管理装置10等の外部機器とデータ送受信を行う。
計時部27は、計時回路を内蔵し、現在時刻及び現在日付を計時してCPU21に出力する。
ドロア28は、硬貨や紙幣等の現金を収納する引出しである。ドロア28は、例えば、CPU21の指示により、引出しを開ける。
プリント部29aは、例えば、サーマルプリンタであり、レシート用、ジャーナル用のロール紙を有し、CPU21から入力される指示に従って、各ロール紙に対して金額等のデータをプリントアウトする。
次に、実施形態1におけるデータ管理装置10、ECR20の主要な動作についてフローチャートを参照して詳細に説明する。
(プログラムデータ登録処理)
図6に、データ管理装置10のプログラムデータ登録部102により実行されるプログラムデータ登録処理のフローを示す。なお、登録対象のプログラムデータのファイルは、記憶部15に格納されているものとする。
まず、表示部14にプログラム登録画面(図示せず)が表示され、登録するプログラムデータが格納されているディレクトリ情報や、登録するプログラムデータの属性情報、即ち、機種コード、プログラム識別コード、プログラム管理コード等の入力部12からの入力が受け付けられる(ステップS1)。
次いで、登録対象のプログラムデータがRAM13に読み出され、プログラムデータサイズが取得される(ステップS2)。
次いで、プログラムデータ記憶部153に、登録対象のプログラムデータの属性情報、即ち、ステップS1で入力された機種コード、プログラム識別コード、プログラム管理コード及びステップS2で取得されたプログラムデータサイズが登録されるとともに、RAM13に読み出されたプログラムデータが登録される(ステップS3)。
プログラムデータの登録が終了すると、プログラム配信情報登録部103によりプログラム配信情報登録処理が実行され(ステップS4)、本処理は終了する。
図7に、ステップS4においてプログラム配信情報登録部103により実行されるプログラム配信情報登録処理のフローを示す。
プログラム配信情報登録処理においては、まず、ストアサービスマスタ記憶部151において、ステップS3で登録されたプログラムデータの機種コードを有するレコードが検索処理され、検索されたレコードがRAM13に読み出される(ステップS101)。
次いで、プログラム配信情報記憶部152において、ステップS101で検索された各レコードの端末機器コード及び登録されたプログラムデータのプログラム識別コードを含むレコードが検索処理され、検索されたレコードがRAM13に読み出される(ステップS102)。
次いで、ステップS102でRAMに読み出されたレコードのプログラム管理コードが登録されたプログラムデータのプログラム管理コードに変更され、変更された内容によりプログラム配信情報記憶部152のプログラム配信情報が更新され(ステップS103)、本処理は終了する。
上記プログラムデータ登録処理により、新しいバージョンのプログラムデータがプログラムデータ記憶部153に登録されると、新しいバージョンのプログラムデータを配信すべきECR20についてのプログラム配信情報記憶部152におけるプログラム管理コードを自動的に更新することができる。
(閉設処理)
図8に、各ECR20のCPU21において実行される閉設処理のフローを示す。当該処理は、店舗における業務終了時に入力部22により閉設の指示が入力された際に実行される。
まず、通信部26によりデータ管理装置10への通信接続が行われる(ステップS11)。次いで、1日の売上データのジャーナルへの印字、1日の売上データの保存、リセット等の精算処理が行われる(ステップS12)。
次いで、通信部26によりデータ管理装置10にプログラム配信確認要求が送信され(ステップS13)、データ管理装置10からのプログラム配信確認応答が受信される(ステップS14)。
ここで、ECR20からデータ管理装置10に各種要求を送信するにあたっては、予め定められた形式の要求データが送信されることによって行われる。要求データは、ヘッダ部とデータ部を有している。ヘッダ部には、ECR20とデータ管理装置10とでデータ通信を行う際に必要な情報、例えば、あて先(データ管理装置10)の通信ネットワークN上のアドレスや送信元の通信ネットワークN上のアドレス等が含まれる。また、データ部についての暗号化情報等を含めてもよい。データ部には、要求の種類(例えば、プログラム配信確認、プログラム配信等)、各種要求を行うにあたってデータ管理装置10に引き渡すパラメータ等が含まれる。
例えば、認証要求データのデータ部には、ECR20の端末機器コードが含まれる。プログラム配信確認要求データのデータ部には、ECR20の端末機器コード、記憶部25に記憶されている各プログラムのプログラム識別コード及びプログラム管理コードが含まれる。配信要求データのデータ部には、ECR20の端末機器コード、機種コード、配信を要求するプログラムのプログラム識別コード及びプログラム管理コードが含まれる。
同様に、データ管理装置10からECR20に各種応答を送信するにあたっては、予め定められた形式の応答データが送信される。応答データは、ヘッダ部とデータ部を有している。ヘッダ部には、ECR20とデータ管理装置10とでデータ通信を行う際に必要な情報等が含まれる。また、データ部についての暗号化情報等を含めてもよい。データ部には、応答内容(例えば、プログラム配信確認要求に対する応答の場合は、プログラム識別コード毎の配信確認情報(プログラムの配信が必要であるか否かを示す情報)、プログラム配信要求に対する応答の場合は、プログラムデータ)等が含まれる。
プログラム配信確認応答が受信されると、ステップS15〜S21のループ1の処理が、受信された応答データに含まれるプログラム数分(プログラム識別コード数分)繰り返し実行される。
まず、応答データから一のプログラム識別コードに対応する配信確認情報が取り出され(ステップS16)、プログラムの配信(更新)が必要であるか否かが判断され、プログラムの配信(更新)が必要であると判断されると(ステップS17;YES)、通信部26によりデータ管理装置10にプログラム配信要求が送信される(ステップS18)。プログラム配信要求にあたっては、配信要求データがデータ管理装置10に送信される。通信部26によりデータ管理装置10からのプログラム配信応答の応答データ、即ち、プログラムデータが受信されると(ステップS19)、配信されたプログラムデータにより記憶部25に記憶されているプログラムが更新(インストール)され(ステップS20)、応答データにおける次のプログラム識別コードに対応する配信確認情報についてのループ1の処理に移行する。
なお、データ管理装置10から送信されるプログラムデータには、プログラムデータの属性情報が含まれ、ECR20においてプログラムデータのプログラム識別コードやプログラム管理コードを認識できるようになっている。
一方、プログラムの配信(更新)が必要ではないと判断されると(ステップS17;NO)、次のプログラム識別コードに対応する配信確認情報についてのループ1の処理に移行する。
受信した応答データに含まれるプログラム数分(プログラム識別コード数分)のループ1の処理が終了すると(ステップS21)、通信部26によりデータ管理装置10との接続が切断され(ステップS22)、本処理は終了する。
なお、各ECR20において、電源ON時に実行される開設処理は、上述のステップS12の処理を行わない他は、図8を用いて説明した閉設処理と同様である。
上述の閉設処理及び開設処理により、ECR20は、開設時と閉設時にプログラムの配信(更新)が必要であるか否かをデータ管理装置10に問い合わせ、必要である場合にプログラムデータの配信要求を行ってプログラムを更新することができる。
(サービス提供処理)
図9に、データ管理装置10のストアサービスポート制御部200により実行されるサービス提供処理のフローを示す。当該処理は、上述のECR20における閉設処理、開設処理に対応してデータ管理装置10側で実行される処理である。
まず、通信部16によりECR20からの接続要求が受信されると、接続要求に応じてECR20との接続が開始される(ステップS31)。次いで、通信部16によりECR20からの要求データの受信が待機され(ステップS32)、要求データが受信されると(ステップS32;YES)、電文制御部201により要求データの電文解析処理が行われ、要求された処理の内容が特定される(ステップS33)。
電文制御部201による解析の結果、受信された要求データの内容が認証要求であると判断されると(ステップS34;認証要求)、認証制御部202により図10に示す認証処理が実行される(ステップS35)。
図10に、図9のステップS35において認証制御部202により実行される認証処理のフローを示す。
認証処理においては、まず、ストアサービスマスタ記憶部151において、要求データに含まれる端末機器コードを有するレコードが検索処理される(ステップS201)。検索の結果、要求データに含まれる端末機器コードを有するレコードがストアサービスマスタ記憶部151に存在しないと判断されると(ステップS202;NO)、通信部16を介して接続されたECR20に認証NGである旨が応答され(ステップS205)、処理は図9のステップS32に戻る。
検索の結果、要求データの端末機器コードを含むレコードがストアサービスマスタ記憶部151に存在すると判断されると(ステップS202;YES)、当該レコードの接続区分が参照され、接続区分が“1”である場合(ステップS203;YES)、通信部16を介して接続されたECR20に認証OKである旨が応答され(ステップS204)、処理は図9のステップS32に戻る。接続区分が“0”である場合(ステップS203;NO)、通信部16を介して接続されたECR20に認証NGである旨が応答され(ステップS205)、処理は図9のステップS32に戻る。
図9に戻り、電文制御部201による解析の結果、受信された要求データの内容がプログラム配信確認要求であると判断されると(ステップS34;プログラム配信確認要求)、プログラム配信確認部203により図11に示すプログラム配信確認処理が実行される(ステップS36)。なお、プログラム配信確認処理及びプログラム配信処理は、接続されているECR20が上述の認証処理において認証OKとされた場合にのみ実行される。
図11に、図9のステップS36においてプログラム配信確認部203により実行されるプログラム配信確認処理のフローを示す。
プログラム配信確認処理においては、まず、プログラム配信情報記憶部152において、要求データに含まれる端末機器コードを有するレコードが検索処理され、要求データに含まれる端末機器コードを有するレコードがRAM13に読み出される(ステップS301)。
次いで、ステップS302〜S308のループ2の処理が、受信された要求データに含まれるプログラム識別コード数分(プログラムの種類数分)繰り返し実行される。
まず、受信された要求データから一のプログラム識別コード及び当該プログラム識別コードに対応するプログラム管理コードが取り出される(ステップS303)。次いで、取り出されたプログラム識別コードを有するプログラム配信情報のレコードがRAM13に存在するか否かが判断され、存在しないと判断されると(ステップS304;NO)、当該プログラム識別コードに対応する種類のプログラムの配信は必要ないと判定され、当該プログラム識別コードのプログラム配信が不要であることを示すプログラム配信確認情報が応答データに設定され(ステップS307)、次のプログラム識別コードについてのループ2の処理に移行する。
一方、ステップS303において取り出されたプログラム識別コードを有するプログラム配信情報のレコードがRAM13に存在すると判断されると(ステップS304;YES)、要求データから取り出された当該プログラム識別コードに対応するプログラム管理コードがステップS301でRAM13に読み出された当該プログラム識別コードを有するレコードにおけるプログラム管理コードと異なるか否かが判断され、異なると判断されると(ステップS305;YES)、プログラムの配信が必要であると判定され、当該プログラム識別コードに対応する種類のプログラムの配信が必要であることを示すプログラム配信確認情報が応答データに設定され(ステップS306)、次のプログラム識別コードについてのループ2の処理に移行する。
一方、要求データから取り出された当該プログラム識別コードに対応するプログラム管理コードがステップS301でRAM13に読み出された当該プログラム識別コードを有するレコードにおけるプログラム管理コードと同一であると判断されると(ステップS305;NO)、当該プログラム識別コードに対応する種類のプログラムの配信は必要ないと判定され、当該プログラム識別コードのプログラム配信が不要であることを示すプログラム配信確認情報が応答データに設定され(ステップS307)、次のプログラム識別コードについてのループ2の処理に移行する。
受信した要求データに含まれる全てのプログラム識別コードについてのループ2の処理が終了すると(ステップS308)、設定された応答データが通信部16により接続されたECR20に送信され(ステップS309)、処理は図9のステップS32に移行する。
図9に戻り、電文制御部201による解析の結果、受信された要求データの内容がプログラム配信要求であると判断されると(ステップS34;プログラム配信要求)、プログラム配信部204により図12に示すプログラム配信処理が実行される(ステップS37)。
図12に、図9のステップS37においてプログラム配信部204により実行されるプログラム配信処理のフローを示す。
プログラム配信処理においては、まず、プログラムデータ記憶部153において、要求データに含まれる機種コード、プログラム識別コード及びプログラム管理コードと一致する属性情報を有するプログラムデータが検索処理され、該当するプログラムデータが読み出される(ステップS401)。
次いで、読み出されたプログラムデータが応答データに設定され、通信部16により接続された認証されたECR20に送信される(ステップS402)。そして、処理は図9のステップS32に戻る。
図9に戻り、電文制御部201による解析の結果、受信された要求データの内容が切断要求であると判断されると(ステップS34;切断要求)、通信部16によりECR20との通信が切断され(ステップS38)、本処理は終了する。
以上説明したように、プログラム配信システム1においては、データ管理装置10によりプログラム配信対象のECR20に搭載されているプログラムの種類と、配信すべき最新のバージョンを示すプログラム管理コードをプログラム配信情報記憶部152に記憶しており、各ECR20により開設時と閉設時にプログラムの配信確認要求が送信されると、送信元のECR20に搭載された各プログラムのバージョンとその最新のバージョンを示す情報とを比較し、異なる場合に、配信が必要である旨を接続したECR20に応答する。ECR20では、データ管理装置10からプログラムの配信が必要であると応答された場合に、データ管理装置10に該当するプログラムの配信要求を行ってプログラムデータを取得し更新する。
従って、通信ネットワークNに接続された複数のECR20のそれぞれに、ECR20に応じた最新のプログラムを配信することができ、各ECR20は、常に最新のプログラムで動作することが可能となる。
〔実施形態2〕
以下、本発明の実施形態2について説明する。
実施形態1においては、プログラムデータ登録部102により新しいバージョンのプログラムデータがプログラムデータ記憶部153に登録されると、プログラム配信情報登録部103は、プログラム配信情報登録処理を行って、バージョンアップ前の同種のプログラムが搭載されたECR20の全てのプログラム配信情報のプログラム管理コードを新しいバージョンを示すプログラム管理コードに変更した。しかし、ECR20の開設と閉設が所定時間帯に集中する場合、一度に該当する全てのECR20のプログラム管理コードを変更してしまうとデータ管理装置10へのプログラム配信要求が集中し、ネットワーク負荷やシステム負荷が大きくなる。
そこで、実施形態2においては、データ管理装置10へのプログラム配信要求が集中することを防ぐため、一度に行うプログラム配信情報の更新対象を制限することで、ネットワーク負荷やシステム負荷を抑制する。
図13に、実施形態2におけるプログラム配信情報記憶部152のデータ格納例を示す。図13に示すように、本実施形態におけるプログラム配信情報記憶部152は、実施形態1において図4(b)を用いて説明した各フィールドのほか、「配信実績」フィールドを有する。「配信実績」フィールドは、プログラムデータの更新後、そのプログラムデータを配信済みであることを示す配信実績情報(未配信フラグ“0”、配信済みフラグ“1”)を格納する。
実施形態2におけるその他の構成は、実施形態1で説明したのと同様であるので説明を省略する。
次に、実施形態2における動作について説明する。
実施形態2においては、プログラム配信処理と、プログラムデータ登録処理のステップS4(図6参照)で実行されるプログラム配信情報登録処理が実施形態1と異なる。
実施形態2におけるプログラム配信処理では、図12で説明したステップS402の処理の後に、プログラム配信情報記憶部152における、プログラムデータの配信対象となったECR20の端末機器コード及び配信したプログラムのプログラム識別コードを有するレコードの「配信実績」フィールドに“1”が設定される処理が行われる。
実施形態2におけるプログラム配信情報登録処理(実施形態1と区別するためプログラム配信情報登録処理Bとする)では、図14に示すフローで処理が行われる。なお、以下の説明では、グループコードを所定範囲毎(例えば、001〜100、101〜200、201〜300、・・・)にまとめてプログラム配信対象のECR20をグループに分割し、グループ毎にプログラム配信情報のプログラム管理コードを更新していくものとして説明する。
プログラム配信情報登録処理Bにおいては、まず、ストアサービスマスタ記憶部151において、図6に示すプログラムデータ登録処理のステップS3で登録された機種コードを含むレコードが検索処理され、検索されたレコードがRAM13に読み出される(ステップS501)。
次いで、プログラム配信情報記憶部152において、ステップS501で検索された各レコードの端末機器コード及び登録されたプログラムデータのプログラム識別コードを含むレコードが検索処理され、検索されたレコードがRAM13に読み出される(ステップS502)。
次いで、ステップS502でRAM13に読み出されたレコードが予め定められたグループコードの範囲毎のグループに分割され(ステップS503)、グループコードが所定範囲の(例えば、001〜100)グループに属するレコードのプログラム管理コードが、新たに登録されたプログラムデータのプログラム管理コードに変更され、更に、配信実績フィールドが“0”に初期化され、変更された内容によりプログラム配信情報記憶部152の情報が更新される(ステップS504)。また、更新時に計時部17により出力された日時情報が更新日時としてRAM13に記憶される(ステップS505)。
次いで、ステップS506〜S513のループ3の処理が、全てのグループの更新完了まで繰り返し実行される。
まず、所定時間(例えば、1時間)スリープ状態とされ(ステップS507)、次いで、前回更新対象となったグループのプログラム配信情報の更新から所定期間(例えば、3日間)経過したか否かが判断され、所定期間が経過したと判断されると(ステップS508;YES)、処理はステップS511に移行する。
前回更新対象となったグループのプログラム配信情報の更新から所定期間経過していないと判断されると(ステップS508;NO)、前回更新対象となったグループコードをもつプログラム配信情報のレコードがプログラム配信情報記憶部152から取得され(ステップS509)、「配信実績」フィールドが“1”のレコードが予め定められた割合(例えば、80%)を超えているか否かが判断される(ステップS510)。配信実績のフラグが“1”のレコードが予め定められた割合を超えていると判断されると(ステップS510;YES)、処理はステップS511に移行する。「配信実績」フィールドが“1”のレコードが予め定められた割合を超えていないと判断されると(ステップS510;NO)、次のループ3の処理が実行される。
ステップS511においては、ステップS502でRAM13に読み出されたレコードのうち、次に更新対象となるグループに該当するグループコードをもつレコードのプログラム管理コードが、新たに登録されたプログラムデータのプログラム管理コードに変更され、更に、配信実績フィールドが“0”に初期化され、変更された内容によりプログラム配信情報記憶部152の情報が更新される。また、RAM13に記憶されている更新日時がステップS510における更新時に計時部17により出力された日時情報により更新され(ステップS512)、次のループ3の処理が実行される。
全てのグループについての更新が終了すると(ステップS513)、本処理は終了する。
以上説明したように、実施形態2においては、データ管理装置10において新たなバージョンのプログラムデータがプログラムデータ記憶部153に登録されたときの該当するプログラム配信情報の更新対象を所定のグループコード範囲のグループに制限し、更新後所定期間が経過した後、又は、更新したグループのプログラム配信実績が所定の割合を超えたときに次のグループのプログラム配信情報の更新を行う。このように、プログラム配信情報の更新がグループ毎に時間をずらして行われるので、データ管理装置10へのプログラム配信要求が集中することを防ぎ、ネットワーク負荷やシステム負荷を抑制することができる。
〔実施形態3〕
以下、本発明の実施形態3について説明する。
実施形態1、2においては、ECR20は、開設時と閉設時にデータ管理装置10に接続し自己が搭載しているプログラムの配信確認要求を行って、必要であれば該当するプログラムのプログラムデータを配信要求してプログラムの更新を行うこととして説明した。このように構成することにより、ECR20の全てのプログラムを常に最新とすることができる。しかしながら、プログラムデータのダウンロード及びインストールには時間がかかるため、開設時に電源を立ち上げてもなかなか稼動できないことがある。そこで、実施形態3においては、開設時に即時に更新が必要なプログラムのみ配信を行い、それ以外は閉設時にプログラムの配信を行う。
図15に、実施形態3におけるプログラム配信情報記憶部152のデータ格納例を示す。図15に示すように、本実施形態におけるプログラム配信情報記憶部152は、実施形態1において図4(b)を用いて説明した各フィールドのほか、「配信タイミング」フィールドを有する。「配信タイミング」フィールドは、配信タイミング情報(即時に配信すべきプログラムについては“即時”、即時に配信する必要のないプログラムについては“通常”)を格納する。
実施形態3におけるその他の構成は、実施形態1で説明したのと同様であるので説明を省略する。
次に、実施形態3における動作について説明する。
実施形態3においては、ECR20で実行される閉設処理及び開設処理においてデータ管理装置10に送信されるプログラム配信確認要求の要求データには、閉設処理であるか又は開設処理であるかを示す情報が含まれることが実施形態1と異なる。
また、データ管理装置10において実行されるプログラムデータ登録処理と、図9のサービス提供処理のステップS36で実行されるプログラム配信確認処理が実施形態1と異なる。
実施形態3におけるプログラムデータ登録処理では、図6のステップS1において、登録するプログラムデータの機種コード、プログラム識別コード及びプログラム確認コードとともに、登録するプログラムデータが即時の配信が必要であるか否かの情報が入力される。即時にする場合は、例えば、重大な障害等により早急にプログラムを更新する必要がある場合等が該当する。そして、図7のステップS103において、プログラム配信情報のプログラム管理コードが登録されたプログラムデータのプログラム管理コードに変更されるとともに、ステップS1で入力された“即時”又は“通常”の情報が配信タイミング情報として「配信タイミング」フィールドに追加され、追加、変更された内容によりプログラム配信情報記憶部152が更新される。
また、実施形態3におけるプログラム配信確認処理(実施形態1と区別するためプログラム配信確認処理Bとする)では、図16に示すフローで処理が行われる。
プログラム配信確認処理Bにおいては、まず、プログラム配信情報記憶部152において、要求データに含まれる端末機器コードを有するレコードが検索処理され、検索されたレコードがRAM13に読み出される(ステップS601)。
次いで、ステップS602〜S609のループ4の処理が、受信された要求データに含まれるプログラム識別コード数分(プログラムの種類数分)繰り返し実行される。
まず、受信された要求データからプログラム識別コード及び当該プログラム識別コードに対応するプログラム管理コードが取り出される(ステップS603)。次いで、取り出されたプログラム識別コードを有するプログラム配信情報のレコードがRAM13に存在するか否かが判断され、存在しないと判断されると(ステップS604;NO)、当該プログラム識別コードに対応する種類のプログラムの配信は必要ないと判定され、当該プログラム識別コードのプログラム配信が不要であることを示す配信確認情報が応答データに設定され(ステップS608)、要求データに含まれる次のプログラム識別コードについてのループ4の処理に移行する。
一方、ステップS603において取り出されたプログラム識別コードを有するプログラム配信情報のレコードがRAM13に存在すると判断されると(ステップS604;YES)、要求データから取り出された当該プログラム識別コードに対応するプログラム管理コードが、ステップS601でRAM13に読み出された当該プログラム識別コードを有するレコードのプログラム管理コードと異なるか否かが判断され、異ならない(同一である)と判断されると(ステップS605;NO)、当該プログラム識別コードに対応する種類のプログラムの配信は必要ないと判定され、当該プログラム識別コードのプログラム配信が不要であることを示す配信確認情報が応答データに設定され(ステップS608)、要求データに含まれる次のプログラム識別コードについてのループ4の処理に移行する。
要求データから取り出された当該プログラム識別コードに対応するプログラム管理コードがステップS601でRAM13に読み出された当該プログラム識別コードを有するレコードのプログラム管理コードと異なると判断されると(ステップS605;YES)、要求データ及びステップS601でRAM13に読み出された当該プログラム識別コードを含むレコードの配信タイミング情報に基づき、接続されたECR20が閉設時であるか又は即時配信が必要なプログラムであるかの何れかに該当するか否かが判断される(ステップS606)。
接続されたECR20が閉設時であるか又は即時配信が必要なプログラムであるかの何れかに該当すると判断されると(ステップS606;YES)、プログラムの配信が必要であると判定され、当該プログラム識別コードに対応する種類のプログラムの配信が必要であることを示す配信確認情報が応答データに設定され(ステップS607)、要求データに含まれる次のプログラム識別コードについてのループ4の処理に移行する。
接続されたECR20が閉設時であるか又は即時配信が必要なプログラムであるかの何れにも該当しないと判断されると(ステップS606;NO)、当該プログラム識別コードに対応する種類のプログラムの配信は必要ないと判定され、当該プログラム識別コードのプログラム配信が不要であることを示す配信確認情報が応答データに設定され(ステップS608)、要求データに含まれる次のプログラム識別コードについてのループ4の処理に移行する。
受信した要求データに含まれる全てのプログラム識別コードについてのループ4の処理が終了すると(ステップS609)、設定された応答データが通信部16により接続されたECR20に送信され(ステップS610)、処理は図9のステップS32に移行する。
以上説明したように、実施形態3のプログラム配信確認処理においては、ECR20が閉設時に配信確認要求を行った場合又は配信確認要求したプログラムの配信タイミングがプログラム配信情報記憶部152において即時に設定されている場合に、配信が必要であることを示す配信確認情報が応答データに設定される。従って、開設時には即時に更新が必要なプログラムの更新のみが行われ、それ以外は閉設時に更新が行われることとなるので、ユーザの利便性を損なわずにプログラムの更新を行うことが可能となる。
〔実施形態4〕
以下、本発明の実施形態4について説明する。
実施形態4においては、ECR20とデータ管理装置10との間で送受信するデータ(例えば、要求データやプログラムデータ)を暗号化する。
図17に、実施形態4におけるデータ管理装置10のCPU11と、記憶部15に記憶されている各種アプリケーションプログラムとの協働により実現される機能構成例を示す。
図17に示すように、実施形態4において、ストアサービスポート制御部200は、暗号制御部205を含んで構成されている。暗号制御部205においては、ECR20から送信された要求データの復号や、ECR20に送信するプログラムデータの暗号化等を行う。
また、実施形態4において、各ECR20とデータ管理装置10は予め各暗号方式に使用する暗号鍵を交換しており、記憶部15は、各ECR20の端末機器コードと暗号鍵とを対応付けて記憶している。
また、ECR20は、入力部22の操作によりデータ管理装置10とデータ通信を行う際の暗号強度を設定することができるようになっている。具体的には、RSA(Rivest Shamir Adleman)、T−DES(Triple DES)、DES(Data Encryption Standard)、平文の中からユーザの所望する暗号強度の暗号方式を設定することができるようになっている。ECR20においては、RSA、T−DES、DESのそれぞれの暗号方式でデータの暗号化、復号を行う暗号処理プログラムが記憶されており、CPU21と暗号処理プログラムとの協働により、データの暗号化、復号を行うことができるようになっている。
実施形態4におけるその他の構成は、実施形態1で説明したのと同様であるので説明を省略する。
次に、実施形態4における動作について説明する。
実施形態4において、ECR20で閉設処理、開設処理を行ってデータ管理装置10にプログラム配信要求及びプログラム送信要求を行う際には、予め設定された暗号方式の暗号処理プログラムが読み出され、要求データのデータ部が予め設定された暗号方式で暗号化された後、通信部26を介してデータ管理装置10に送信される。
データ管理装置10においては、図9に示したサービス提供処理において、ECR20からの要求が受信されると、ステップS33において、電文制御部201により図18に示す電文解釈処理が実行される。
電文解釈処理では、まず、ステップS32で受信された要求データのヘッダ部の暗号化情報が参照され(ステップS701)、要求データを暗号化している暗号方式が判断される(ステップS702)。要求データの暗号方式がRSAであると判断されると(ステップS702;RSA)、暗号制御部205により要求元のECR20の暗号鍵(公開鍵)を用いて要求データのデータ部がRSAのアルゴリズムにより復号され(ステップS703)、処理はステップS706に移行する。
一方、要求データの暗号方式がT−DESであると判断されると(ステップS702;T−DES)、暗号制御部205により要求元のECR20の暗号鍵を用いて電文のデータ部がT−DESアルゴリズムにより復号され(ステップS704)、処理はステップS706に移行する。
一方、要求データの暗号方式がDESであると判断されると(ステップS702;DES)、暗号制御部205により要求元のECR20の暗号鍵を用いて要求データのデータ部がDESアルゴリズムにより復号され(ステップS705)、処理はステップS706に移行する。
要求データが平文であると判断されると(ステップS702;平文)、処理はステップS706に移行する。
ステップS706においては、復号された又は平文の要求データが電文制御部201により解析され、要求された処理の内容が特定され(ステップS706)、処理は図9のステップS34に移行し、ステップS34以降の処理が実行される。
本実施形態において、ステップS706で特定された要求がプログラム配信処理の場合、図6のステップS4においては、図19に示すプログラム配信処理(実施形態1と区別するため、プログラム配信処理Bとする)が実行される。
プログラム配信処理Bにおいては、まず、プログラムデータ記憶部153において、要求データに含まれる機種コード、プログラム識別コード及びプログラム管理コードと一致する属性情報を有するプログラムデータが検索処理され、該当するプログラムデータが読み出される(ステップS801)。
次いで、暗号制御部205によりプログラムデータ暗号処理が実行され、読み出されたプログラムデータが暗号化される(ステップS802)。
図20に、図19のステップS802で実行されるプログラムデータ暗号処理を示す。 プログラムデータ暗号処理では、ECR20から受信された要求データの暗号方式が判断される。要求データの暗号方式がRSAであると判断されると(ステップS901;RSA)、暗号制御部205により図19のステップS801において読み出されたプログラムデータが要求元のECR20の暗号鍵を用いてRSAアルゴリズムにより暗号化され(ステップS902)、処理は図19のステップS803に移行する。
一方、要求データの暗号方式がT−DESであると判断されると(ステップS901;T−DES)、暗号制御部205によりステップS801において読み出されたプログラムデータが要求元のECR20の暗号鍵を用いてT−DESアルゴリズムにより暗号化され(ステップS903)、処理は図19のステップS803に移行する。
一方、要求データの暗号方式がDESであると判断されると(ステップS901;DES)、暗号制御部205によりステップS801において読み出されたプログラムデータが要求元のECR20の暗号鍵を用いてDESアルゴリズムにより暗号化され(ステップS904)、処理は図19のステップS803に移行する。
一方、要求データが平文であると判断されると(ステップS901;平文)、処理は図19のステップS803に移行する。
図19のステップS803においては、平文又は暗号化されたプログラムデータが応答データに設定され、通信部16により接続されたECR20に送信される(ステップS803)。そして、処理は図9のステップS32に戻る。
以上説明したように、実施形態4においては、データ管理装置10は、プログラムデータを配信先のECR20に応じた暗号強度で暗号化して送信する。従って、各ECR20に要求されるセキュリティのレベルに応じて暗号強度を変えてプログラムデータを暗号化して送信することができ、暗号化処理にかかる負荷と安全性のバランスをとりながら、効率よくプログラムデータの配信を行うことが可能となる。
なお、実施形態4においては、各ECR20で設定した暗号方式で要求データを暗号化して送信すると、データ管理装置10側で要求データの暗号方式を特定し、その暗号方式でプログラムデータを暗号化して要求元のECR20に送信することとし、ECR20に応じた暗号化方式でプログラムコードを暗号化することとしたが、これに限定されない。
例えば、ECR20の機種コード毎に予め暗号方式が定められており、データ管理装置10は、要求元のECR20の機種コードをストアサービスマスタ記憶部151を参照して特定し、特定した機種コードに応じた暗号化方式で配信するプログラムデータを暗号化するようにしてもよい。このようにすれば、ECR20の機種毎に要求されるセキュリティのレベルに応じた暗号強度でプログラムデータを暗号化して送信することができ、暗号化処理にかかる負荷と安全性のバランスをとりながら、効率よくプログラムデータの配信を行うことが可能となる。
また、例えば、プログラムの種類毎に予め暗号方式が定められており、データ管理装置10は、配信要求されたプログラムデータの種類に応じた暗号化方式で配信するプログラムデータを暗号化するようにしてもよい。このようにすれば、各プログラムに要求されるセキュリティのレベルに応じた暗号強度でプログラムデータを暗号化して送信することができ、暗号化処理にかかる負荷と安全性のバランスをとりながら、効率よくプログラムデータの配信を行うことが可能となる。
なお、上記各実施の形態における記述は、本発明に係るプログラム配信システム1の好適な一例であり、これに限定されるものではない。
例えば、上記実施形態においては、端末機器をECR20とした場合を例にとり説明したが、これに限定されず、例えば、端末機器を店舗において顧客のクレジットカードのカード情報を読み取り、そのカード情報を含む決済データ及び決済承認要求をカード会社の装置に送信する決済端末とし、データ管理装置10により決済端末にプログラムの配信を行う構成としてもよい。
また、上記実施形態においては、或る種類のプログラムの最新バージョンのプログラムデータが新たに登録されると、プログラム配信情報記憶部152に記憶された当該プログラムを搭載した全てのECR20についてのプログラム管理コードを更新することとしたが、特定の端末機器コードや会社コード、店舗コードをもつECR20のみ個別に更新することとしてもよい。このようにすれば、例えば、障害が発生したECR20に障害発生時の監視用プログラムを配信する等の限定した配信が可能となる。
また、実施形態4においては、固定の暗号鍵で暗号化及び復号を行うこととしたが、データ管理装置10において暗号鍵を定期的に更新し、かつ、配信するプログラムの中に更新した暗号鍵を埋め込んで配信するようにしてもよい。これにより、データ管理装置10とECR20との間での通信の安全性を高めることが可能となる。
その他、プログラム配信システム1を構成する各装置の細部構成及び細部動作に関しても、発明の趣旨を逸脱することのない範囲で適宜変更可能である。
本発明の実施形態におけるプログラム配信システムの構成例を示すブロック図である。 図1のデータ管理装置の内部構成例を示すブロック図である。 図2のCPU11と記憶部に記憶されているアプリケーションプログラムとの協働により実現される機能の構成例を示す図である。 (a)は、図2のストアサービスマスタ記憶部のデータ格納例を示す図であり、(b)は、図2のプログラム配信情報記憶部のデータ格納例を示す図であり、(c)は、図2のプログラムデータ記憶部のデータ格納例を示す図である。 図1のECRの内部構成例を示すブロック図である。 図3のプログラムデータ登録部により実行されるプログラムデータ登録処理を示すフローチャートである。 図3のプログラム配信情報登録部により実行されるプログラム配信情報登録処理を示すフローチャートである。 図5のCPUにより実行される閉設処理を示すフローチャートである。 図3のストアサービスポート制御部により実行されるサービス提供処理を示すフローチャートである。 図3の認証制御部により実行される認証処理を示すフローチャートである。 図3のプログラム配信確認部により実行されるプログラム配信確認処理を示すフローチャートである。 図3のプログラム配信部により実行されるプログラム配信処理を示すフローチャートである。 実施形態2におけるプログラム配信情報記憶部のデータ格納例を示す図である。 実施形態2において図3のプログラム配信情報登録部により実行されるプログラム配信情報登録処理Bを示すフローチャートである。 実施形態3におけるプログラム配信情報記憶部のデータ格納例を示す図である。 実施形態3において図3のプログラム配信確認部により実行されるプログラム配信確認処理Bを示すフローチャートである。 実施形態4において図2のCPU11と記憶部に記憶されているアプリケーションプログラムとの協働により実現される機能の構成例を示す図である。 実施形態4において図17の電文制御部201において実行される電文解釈処理を示すフローチャートである。 実施形態4において図17のプログラム配信部204において実行されるプログラム配信処理Bを示すフローチャートである。 実施形態4において図17の暗号制御部205において実行されるプログラムデータ暗号処理を示すフローチャートである。
符号の説明
1 プログラム配信システム
10 データ管理装置
11 CPU
12 入力部
13 RAM
14 表示部
15 記憶部
151 ストアサービスマスタ記憶部
152 プログラム配信情報記憶部
153 プログラムデータ記憶部
16 通信部
17 計時部
18 バス
20 ECR
21 CPU
22 入力部
23 RAM
24 表示部
25 記憶部
26 通信部
27 計時部
28 ドロア
29a プリント部
29b バス
100 ストアサービス情報登録部
101 ストアサービスマスタ登録部
102 プログラムデータ登録部
103 プログラム配信情報登録部
200 ストアサービスポート制御部
201 電文制御部
202 認証制御部
203 プログラム配信確認部
204 プログラム配信部
205 暗号制御部

Claims (7)

  1. 通信ネットワークを介して複数の端末機器に接続されるデータ管理装置であって、
    前記複数の端末機器の少なくとも一つに配信する一又は複数種類のプログラムを記憶するプログラム記憶手段と、
    前記端末機器毎に、当該端末機器に搭載されているプログラムの種類及びこの搭載されているプログラムについて配信すべき最新バージョンを示す情報を記憶する配信情報記憶手段と、
    前記通信ネットワークを介して接続された端末機器を認証する認証手段と、
    前記認証手段により認証された端末機器から送信される前記端末機器に搭載されている各プログラムのバージョンを示す情報と前記配信情報記憶手段に記憶されている最新バージョンを示す情報とに基づいて、前記認証された端末機器に配信すべきプログラムを判断する配信確認手段と、
    前記配信すべきであると判断されたプログラムを前記プログラム記憶手段から読み出し、当該読み出したプログラムを前記通信ネットワークを介して前記認証された端末機器に配信する配信手段と、
    を備えるデータ管理装置。
  2. 最新バージョンのプログラムを前記プログラム記憶手段に登録するとともに、前記配信情報記憶手段に記憶された前記端末機器毎の該当するプログラムの前記最新バージョンを示す情報を更新する登録手段を備え、
    前記登録手段は、前記最新バージョンのプログラムを登録した際に、前記複数の端末機器を予め定められた複数のグループに分割し、この分割されたグループ毎に時間をずらして前記配信情報記憶手段の前記最新バージョンを示す情報の更新を行う請求項1に記載のデータ管理装置。
  3. 前記配信情報記憶手段は、前記複数の端末機器に搭載されたプログラム毎に、前記最新バージョンのプログラムが配信されたか否かを示す配信実績情報を格納する領域を有し、
    前記配信手段は、前記最新バージョンのプログラムを前記各端末機器に配信した際に、当該プログラムが配信済みであることを示す配信実績情報を前記配信情報記憶手段に記憶させ、
    前記登録手段は、前記配信情報記憶手段を参照し、一のグループについての前記最新バージョンのプログラムの配信実績が予め定められた割合を超えた場合に、次のグループについての前記最新バージョンを示す情報の更新を行う請求項2に記載のデータ管理装置。
  4. 前記配信情報記憶手段は、更に、前記配信すべき最新バージョンのプログラムの配信タイミングを更に記憶し、
    前記配信確認手段は、更に、前記配信情報記憶手段に記憶されている配信タイミングに基づいて、前記認証された端末機器に配信すべきプログラムを判断する請求項1に記載のデータ管理装置。
  5. 各種データを暗号化する暗号制御手段を備え、
    前記配信手段は、前記暗号制御手段により前記認証された端末機器に応じた暗号強度で前記配信すべきプログラムを暗号化して前記認証された端末機器に送信する請求項1に記載のデータ管理装置。
  6. 各種データを暗号化する暗号制御手段を備え、
    前記配信手段は、前記暗号制御手段により前記配信するプログラムに応じた暗号強度で前記配信すべきプログラムを暗号化して前記認証された端末機器に送信する請求項1に記載のデータ管理装置。
  7. 通信ネットワークを介して複数の端末機器に接続されるデータ管理装置に用いられるコンピュータを、
    前記複数の端末機器の少なくとも一つに配信する一又は複数種類のプログラムを記憶するプログラム記憶手段、
    前記端末機器毎に、当該端末機器に搭載されているプログラムの種類及びこの搭載されているプログラムについて配信すべき最新バージョンを示す情報を記憶する配信情報記憶手段、
    前記通信ネットワークを介して接続された端末機器を認証する認証手段、
    前記認証手段により認証された端末機器から送信される前記端末機器に搭載されている各プログラムのバージョンを示す情報と前記配信情報記憶手段に記憶されている最新バージョンを示す情報とに基づいて、前記認証された端末機器に配信すべきプログラムを判断する配信確認手段、
    前記配信すべきであると判断されたプログラムを前記プログラム記憶手段から読み出し、当該読み出したプログラムを前記通信ネットワークを介して前記認証された端末機器に配信する配信手段、
    として機能させるためのプログラム。
JP2007226180A 2007-08-31 2007-08-31 データ管理装置及びプログラム Active JP5211586B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007226180A JP5211586B2 (ja) 2007-08-31 2007-08-31 データ管理装置及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007226180A JP5211586B2 (ja) 2007-08-31 2007-08-31 データ管理装置及びプログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2013036074A Division JP5565486B2 (ja) 2013-02-26 2013-02-26 データ管理装置及びプログラム

Publications (2)

Publication Number Publication Date
JP2009059186A true JP2009059186A (ja) 2009-03-19
JP5211586B2 JP5211586B2 (ja) 2013-06-12

Family

ID=40554859

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007226180A Active JP5211586B2 (ja) 2007-08-31 2007-08-31 データ管理装置及びプログラム

Country Status (1)

Country Link
JP (1) JP5211586B2 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012160789A (ja) * 2011-01-28 2012-08-23 Chugoku Electric Power Co Inc:The ネットワーク監視システム
WO2013051142A1 (ja) * 2011-10-06 2013-04-11 富士通株式会社 更新制御装置、更新制御プログラム、および更新制御方法
JP2015100121A (ja) * 2015-01-13 2015-05-28 株式会社平和 遊技機
JP2019192953A (ja) * 2018-04-18 2019-10-31 トヨタ自動車株式会社 車両向けサービス提供システム、車載装置およびコマンド送信方法
JP7464013B2 (ja) 2021-07-05 2024-04-09 トヨタ自動車株式会社 センタ、otaマスタ、方法、プログラム、及び車両

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07334436A (ja) * 1994-06-06 1995-12-22 Mitsubishi Electric Corp ソフトウエア自動配布方式
JPH10269085A (ja) * 1997-03-27 1998-10-09 Tec Corp サテライトコンピュータのプログラム更新方法
JP2001242786A (ja) * 1999-12-20 2001-09-07 Fuji Photo Film Co Ltd 配信装置、配信方法、及び記録媒体
JP2003296116A (ja) * 2002-03-29 2003-10-17 Honda Motor Co Ltd 自動更新システム及び自動更新方法
JP2004005124A (ja) * 2002-05-31 2004-01-08 Fujitsu Ltd ソフトウェア配布システム
JP2004206390A (ja) * 2002-12-25 2004-07-22 Mitsubishi Electric Corp ソフトウェア管理装置及びソフトウェア管理サーバ
JP2005107567A (ja) * 2003-09-26 2005-04-21 Sony Corp プログラム実装方法及びプログラム更新方法
JP2005251125A (ja) * 2004-03-08 2005-09-15 Toshiba Corp 医用装置プロトコル配信システム、医用装置プロトコル配信方法および医用装置プロトコル配信プログラム
JP2006072917A (ja) * 2004-09-06 2006-03-16 Toshiba Tec Corp 情報処理システム
JP2006195766A (ja) * 2005-01-14 2006-07-27 Mitsubishi Electric Corp ファームウェア更新方法およびファームウェア更新システム

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07334436A (ja) * 1994-06-06 1995-12-22 Mitsubishi Electric Corp ソフトウエア自動配布方式
JPH10269085A (ja) * 1997-03-27 1998-10-09 Tec Corp サテライトコンピュータのプログラム更新方法
JP2001242786A (ja) * 1999-12-20 2001-09-07 Fuji Photo Film Co Ltd 配信装置、配信方法、及び記録媒体
JP2003296116A (ja) * 2002-03-29 2003-10-17 Honda Motor Co Ltd 自動更新システム及び自動更新方法
JP2004005124A (ja) * 2002-05-31 2004-01-08 Fujitsu Ltd ソフトウェア配布システム
JP2004206390A (ja) * 2002-12-25 2004-07-22 Mitsubishi Electric Corp ソフトウェア管理装置及びソフトウェア管理サーバ
JP2005107567A (ja) * 2003-09-26 2005-04-21 Sony Corp プログラム実装方法及びプログラム更新方法
JP2005251125A (ja) * 2004-03-08 2005-09-15 Toshiba Corp 医用装置プロトコル配信システム、医用装置プロトコル配信方法および医用装置プロトコル配信プログラム
JP2006072917A (ja) * 2004-09-06 2006-03-16 Toshiba Tec Corp 情報処理システム
JP2006195766A (ja) * 2005-01-14 2006-07-27 Mitsubishi Electric Corp ファームウェア更新方法およびファームウェア更新システム

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012160789A (ja) * 2011-01-28 2012-08-23 Chugoku Electric Power Co Inc:The ネットワーク監視システム
WO2013051142A1 (ja) * 2011-10-06 2013-04-11 富士通株式会社 更新制御装置、更新制御プログラム、および更新制御方法
GB2509635A (en) * 2011-10-06 2014-07-09 Fujitsu Ltd Update control apparatus, update control program, and update control method
JPWO2013051142A1 (ja) * 2011-10-06 2015-03-30 富士通株式会社 更新制御装置、更新制御プログラム、および更新制御方法
US9477742B2 (en) 2011-10-06 2016-10-25 Fujitsu Limited Update control device, update control program, and update control method
JP2015100121A (ja) * 2015-01-13 2015-05-28 株式会社平和 遊技機
JP2019192953A (ja) * 2018-04-18 2019-10-31 トヨタ自動車株式会社 車両向けサービス提供システム、車載装置およびコマンド送信方法
JP7464013B2 (ja) 2021-07-05 2024-04-09 トヨタ自動車株式会社 センタ、otaマスタ、方法、プログラム、及び車両

Also Published As

Publication number Publication date
JP5211586B2 (ja) 2013-06-12

Similar Documents

Publication Publication Date Title
JP2019145071A (ja) クレジット管理装置および決済システム
JP5211586B2 (ja) データ管理装置及びプログラム
EP2905739A1 (en) Electronic bills management system and electronic bills management method
JP2011034556A (ja) 情報システム、処理ステーション、及びクレジットカード支払方法
JP2007141005A (ja) 公文書取得機能を備えた電子申請システム
WO2008113617A1 (en) A method and system for a subscription to a derived symmetric key
JP5331834B2 (ja) 情報処理システム、読取端末および処理端末
JP2003124920A (ja) 識別情報管理システム、方法及び装置、識別情報発行装置、並びにプログラム
JP5565486B2 (ja) データ管理装置及びプログラム
JP5884850B2 (ja) 情報配信装置及びプログラム
US11694202B2 (en) Transaction certification management system, transaction certification management apparatus, and transaction certification processing method
JP6525270B2 (ja) 情報配信装置及びプログラム
US20220150228A1 (en) Computer systems and methods including html browser authorisation approaches
JP7167771B2 (ja) ファイル管理装置、ファイル管理プログラム、及びファイル管理システム
JP7156888B2 (ja) 決済処理方法
KR101980432B1 (ko) 개인 정보 처리를 위한 장치 및 방법
JP2015219822A (ja) ワンストップ申請システム、ワンストップ申請方法およびプログラム
KR20140029696A (ko) 전자 영수증 조회와 이용에 관한 장치 및 방법
KR20020037188A (ko) 전자 영수증 발급 및 공증 장치와 그 방법
JP2006293746A (ja) 管理サーバと管理方法
US20210182843A1 (en) Settlement processing method and settlement processing system
KR20120009742A (ko) 영수증 전송 및 조회 시스템과 그 방법
JP2008022189A (ja) 仮想記憶媒体を用いた電子申請方法
JP2015143938A (ja) 商品販売管理システム
JP2022128813A (ja) 事前入力システム、個人情報の提供方法及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100709

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120724

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120725

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120924

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20120924

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121113

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130108

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130211

R150 Certificate of patent or registration of utility model

Ref document number: 5211586

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20160308

Year of fee payment: 3