(57)【要約】【課題】  システムのプログラム更新方法に関し、より詳細には入力したパスワードが更新対象のシステムのデータベースに含まれるユーザの識別子に基づいて生成したパスワードと照合することにより、正規ユーザにのみシステムの更新が可能な方法を提供することを目的とする。【解決手段】  本発明のプログラムの更新方法は、入力された第１のパスワードを取得するパスワード取得手順と、更新対象システムのデータベース中の正規ユーザである識別子を基に第２のパスワードを生成するパスワード生成手順と、第１と第２のパスワードが等しいときプログラムの更新を実施する更新手順とで構成する。【選択図】    図１
2005128812.tif 000002
【特許請求の範囲】
【請求項１】
特定ユーザの識別子を含むデータベースを持つシステムのプログラムの更新方法であって、
入力された第１のパスワードを取得するパスワード取得手順と、
前記データベースの前記識別子を基に所定のルールにより第２のパスワードを生成するパスワード生成手順と、
前記第１のパスワードと前記第２のパスワードとが等しいとき、プログラムの更新を実施する更新手順と
を有することを特徴とするプログラムの更新方法。
【請求項２】
前記第２のパスワードは、前記データベースの前記識別子と更新用のファイルの版数とに基づいて前記所定のルールで生成されるものである
ことを特徴とする請求項１記載のプログラムの更新方法。
【請求項３】
特定のユーザの識別子を含むデータベースを持つシステムの更新を行う更新プログラムであって、
入力された第１のパスワードを取得するパスワード取得手順と、
前記データベースの前記識別子を基に所定のルールで第２のパスワードを生成するパスワード生成手順と、
前記第１のパスワードと前記第２のパスワードとが等しいとき、プログラムの更新を実施する更新手順と
をコンピュータに実行させるための更新プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
システムのプログラム更新に関し、より詳細には更新対象のシステムのデータベースに含まれるユーザの識別子に基づいてパスワードを生成することにより、正規ユーザにのみシステムの更新が可能なプログラムの更新方法および更新プログラムに関する。
【背景技術】
【０００２】
ソフトウェア（プログラム）の不正使用は、ソフトウェアメーカの損益を圧迫し、場合によっては会社の存続を危うくする。ソフトウェアメーカは正規のユーザ（ソフトウェアメーカに対価を支払って使用許諾権（ライセンス）を得たユーザ）にのみソフトウェアの使用を認めており、正規ユーザ以外のユーザによる不正使用を排除すべく種々の防止策を講じている。
【０００３】
不正使用に対する防止策は、一般に次の観点から考えられている。
【０００４】
（１）ソフトウェアの記録媒体の不正コピー防止策
（２）コンピュータへの不正インストール防止策
（３）使用時の不正起動防止策
不正コピーに対する防止策としては、例えば原本のソフトウェアを記録する時に所定のサイズ単位で記録媒体の物理アドレスに書き込み、論理アドレス順に読み出して実行するようにしておいて、物理アドレスと論理アドレスとの対応表を記録媒体に書き込んでおく。この対応表は原本とコピーディスクを行ったものでは異なるため、対応表を照合することにより不正コピーてあるかどうか判断するものがある（特許文献１）。
【０００５】
不正インストールの防止策としては、例えばインストーラはユーザのマシン識別コードを読み取って、マシン識別コードに対応したパスワードをベンダコンピュータから取得し、パスワードとマシン識別コードとの間で所定の演算を行って演算結果がインストーラに設定されている許可値と一致したとき、インストールの実行を行うものである（特許文献２）。
【０００６】
使用時の不正起動防止策としては、複数ユーザにソフトウェアの使用を許す例であるが、ソフトウェアをインストールするコンピュータ固有の値と使用可能のユーザ数に基づいて文字列を生成して記憶しておき、ユーザから入力された文字列が記憶する文字列と一致するとき起動を可とするものがある（特許文献３）。
【０００７】
上述したこれらの防止策は、新規にインストールするソフトウェアに限定されるものではなく、更新（レベルアップ）を行うソフトウェアについても同様と考えられる。しかし、更新を行うソフトウェアについては、更新前のソフトウェアが必ず存在することを利用した不正使用の防止策も実施されている。例えば、更新用のソフトウェアをインストールする際に、レベルアップ前のソフトウェアのシリアル番号の入力を求めるなどである。この方法は現在多く用いられている方法であり、上記の不正インストールの防止策の一つである。
【特許文献１】特開平７−２６２００１
【特許文献２】特開平９−２６８７５
【特許文献３】特開平５−３３４２５４
【発明の開示】
【発明が解決しようとする課題】
【０００８】
本発明は、システムの更新において更新用のソフトウェアの不正インストールを防止することを目的とするものである。前述した不正インストールの防止策である特許文献２では、マシン識別コードが異なるユーザコンピュータへのインストールができない効果があるが、ユーザのマシン識別コードに対応するパスワードを取得するためベンダコンピュータと通信を行う必要がある。従って、スタンドアロンで使用するコンピュータには適用が困難、と言う問題がある。
【０００９】
また、更新前のソフトウェアのシリアル番号を入力させる方法は、必ずしも更新前のソフトウェアが正規のものかどうか不明である。例えば、１セットのソフトウェアを購入して、複数人でインストールした場合などである。
【００１０】
本発明は、例えば介護支援システムのデータベース中に正規ユーザである識別子が存在するような場合に、その識別子を利用して正規ユーザにのみプログラムの更新が行える方法を提供する。
【課題を解決するための手段】
【００１１】
本発明は、更新前のシステムが持つデータベース中に含まれるユーザの識別子を利用して正規ユーザであることを確認してシステムの更新を行う方法を実現している。
【００１２】
個々の発明は、以下のように構成される。
（１）第１の発明
第１の発明は、データベースに含まれる正規ユーザの識別子を基に生成したパスワードが入力されたパスワードと一致するときシステムの更新を許すものである。
【００１３】
図１はその原理を示すもので、第１の発明はパスワード取得手順１、パスワード生成手順２および更新手順３から構成する。
【００１４】
パスワード取得手順１は、入力されたパスワードを第１のパスワードとして取得することを行う。入力されたパスワードは、例えばシステムの開発元から更新のためのパスワードとして予めユーザに通知されたものであり、このパスワードがユーザによって入力されたものである。
【００１５】
パスワード生成手順２は、更新前のシステムのデータベース中に含まれる特定ユーザの識別子を基に所定のルールでパスワードを生成し、このパスワードを第２のパスワードとするものである。特定ユーザの識別子とは、例えば医療システムであれば医療機関毎に割り振られている事業者ＩＤである。医療機関用のシステムでは健康保険組合等に対してレセプト（診療報酬明細書）の作成が行われるが、レセプトデータ中にシステムの正規ユーザである事業者ＩＤが含まれている。
【００１６】
更新手順３は、ユーザから取得した第１のパスワードとデータベース中の識別子に基づいて生成した第２のパスワードが等しいとき（一致したとき）、正規ユーザと判断して当該システムの更新を実施する。
【００１７】
レセプトデータには、正規ユーザである事業者ＩＤのみが存在し、他の事業者ＩＤが含まれないので、正規ユーザの識別が可能となる。
（２）第２の発明
第２の発明は、第２のパスワードがデータベース中のユーザの識別子とこれから更新を行う更新ファイル（更新用のソフトウェア）の版数とに基づいて所定のルールで生成され、入力された第１のパスワードと等しいとき正規ユーザで且つ正規の更新レベルと判断して当該システムの更新を実施するものである。例えば、入力された第１のパスワードにそのユーザのサポート契約で許される更新レベルの版数を反映しておけば、正規ユーザであって、且つ更新ファイルの版数が許された版数以内である場合にはそのシステムの更新は可能であり、そうでない場合にはシステムの更新を不可能とすることができる。
（３）第３の発明
第３の発明は、第１の発明のプログラムである。
【発明の効果】
【００１８】
第１の発明では、入力したパスワードがデータベース中の正規ユーザの識別子から生成されたパスワードと比較されるため、一致すれば正規ユーザであることが確認されるので不正なシステムの更新を防止する方法の提供ができる。
【００１９】
第２の発明では、照合されるパスワードが正規ユーザの識別子と更新ファイルの版数とで生成されるため、サポート契約の状況を反映でき契約切れの更新を防止する方法の提供ができる。例えば、ある時点で契約を打ち切った場合にその時点までの版数の更新は可能とし、以降の更新は不可能とする、などである。
【００２０】
第３の発明では、第１の発明のプログラムの提供ができる。
【発明を実施するための最良の形態】
【００２１】
更新用のソフトウェアのインストールの際に、自動的に正規ユーザで許されるレベルの更新であることを判定するように実現した。
【実施例１】
【００２２】
本発明の実施例を、介護事業者支援システムを更新する例を用いて説明する。図２は、ユーザがシステム開発元からパスワードを入手するための構成と介護事業者支援システムとを示すものである。
【００２３】
パスワード入手ための構成は、システムの更新を行うユーザが顧客番号や要求する更新レベルを入力したり、送信されてきたパスワードを表示するパスワード入手ＰＣ（パーソナルコンピュータ）１０、通信回線であるインターネット２０およびパスワードを発行するシステム開発元のサポートセンタ３０からなる。サポートセンタ３０は顧客ＤＢ（データベース）４０を有している。
【００２４】
図３は顧客ＤＢ４０のデータ例を示すもので、サポート契約を行っている顧客に対して付与した「顧客番号」、その顧客が介護事業者として認可されている「事業者番号」、システム開発元とのサポート契約により介護事業者支援システムの更新が許される「許可レベル」の各フィールドを含むものとなっている。例えば、顧客番号「ＣＳ０００００」のユーザは、事業者番号として「１２５４１６２５２３」と「１２１２４５１２１５」の２つを有している。複数の事業者番号を持っているのは、例えばそのユーザが訪問介護と通所介護の２つのサービスに対して認可されているような場合である。許可レベルは「Ｌｅｖ２．ｘ」であり、これは顧客番号「ＣＳ０００００」のユーザのサポート契約によって更新のレベル（Ｌｅｖｅｌ）が２．ｘまで許可されることを示している。
【００２５】
次に、ユーザのパスワード入手におけるサポートセンタ３０の処理フローを図４に示す。まず、ユーザがパスワード入手ＰＣ１０からサポートセンタ３０にアクセスを行うと、サポートセンタ３０からユーザに対して「顧客番号」と要求する「更新レベル」の入力を求める。ユーザの入力画面の表示例を図５（ａ）に示す。ここでは、ユーザは顧客番号として「ＣＳ００００１」を、更新レベルとして「３．０」を入力している。そして、ユーザは「パスワード発行」ボタンを押下する。サポートセンタ３０はユーザから送信された「顧客番号」と「更新レベル」を取得する（Ｓ１０１）。
【００２６】
サポートセンタ３０は、取得した情報に基づいて顧客ＤＢ４０を検索し、入力された顧客番号が登録されているかどうか、を調べる。登録されていれば、次にユーザが要求した更新レベルは許可レベル以下であるかどうか、を調べる。許可レベル以下であれば、顧客番号に対応する事業者番号と入力された更新レベルの２つの情報を基に予め決められたパスワード生成アルゴリズムでパスワードを生成する。生成したパスワードを事業者番号とともにパスワード入手ＰＣ１０に送信する。
【００２７】
図５（ｂ）は、パスワード入手ＰＣ１０におけるパスワード発行画面の例を示す。顧客ＤＢのＣＳ００００１の顧客番号に対する事業者番号は３つあるので、それぞれ対し生成されたパスワードは「ａｄｉｊｂａｋ」、「ｇｇｅｉｊｄｋ」および「ｆｄｋｆｊｄｋ」である。これでユーザはパスワードを入手したことになり、ユーザは発行されたパスワードを用いて介護事業者支援システムの更新を行うことになる。顧客ＤＢに顧客番号が登録されていないときはサポート契約がなされていない旨のメッセージを、または要求した更新レベルが許可レベル以下でないときはそのユーザのサポート契約に基づいて許される更新レベルのメッセージをパスワード入手ＰＣ１０に送信して終了する（Ｓ１０２〜Ｓ１０７）。
【００２８】
続いて、前述に示した方法でユーザが入手したパスワードにより介護事業者支援システムの更新を行う方法について説明する。図６は、図２に示した介護事業者支援システムの構成をより詳細に示したもので、システムの本体１００には更新用のソフトウェアである更新ファイル５００をインストールするためのインストーラ２００がメモリ上に展開している。また、本体に接続した外部記憶には介護事業者支援システムの更新前のプログラム３００、およびそのプログラムのデータベースであるレセプトデータ４００が格納されている。更に、本体１００は更新を行うユーザに対してインストーラ２００からのメッセージを表示するディスプレイ１１０、ユーザがインストーラ２００に対して指示を行うキーボード１２０、および更新ファイル５００を読み込むためのＣＤ−ＲＯＭ１３０を接続している。
【００２９】
インストーラ２００は、パスワード取得部２１０、パスワード生成部２２０および更新部２３０から構成しており、パスワード取得部２１０はユーザからキーボード１２０を介してパスワードを取得し、パスワード生成部２２０はレセプトデータ４００から事業者番号を、更新ファイル５００から更新レベルを取り出し、この事業者番号と更新レベルを基に予め決められたパスワード生成アルゴリズムでパスワード（第２のパスワード）を生成する。このときのパスワード生成アルゴリズムは、前述したサポートセンタ３０で第１のパスワードを生成したものと同一のアルゴリズムである。そして、更新部２３０はパスワード取得部２１０で取得した第１のパスワードとパスワード生成部２２０で生成した第２のパスワードが等しいとき、更新ファイル５００のインストールを行い更新処理を終了する。
【００３０】
ここで、レセプトデータ４００のデータ例を図７により説明する。レセプトデータ４００は介護サービスを利用した人の費用の一部を利用者が加入している健康保険組合に請求するためのデータであり、事業者番号、介護利用者のＩＤ、レセプト請求金額等のフィールドから構成する。ここに示す例は介護事業者支援システムの顧客番号「ＣＳ００００１」の事業者の例であり、この事業者は図３の顧客ＤＢに示すように３つの事業者番号を有しているのでそれぞれの事業者番号と介護利用者ＩＤに対する請求額が格納されている。最初の行のデータ例は、「４８４５４５３４５４」の事業者番号の「１２３」の介護利用者に対する請求額は２５７，０００円であることを示している。
【００３１】
次に、本発明のプログラム更新方法によるインストーラ２００の処理フローを図８を用いて説明する。インストーラ２００は入力されたパスワードを第１のパスワード（ＰＷＤ１）として取得する。このとき、ユーザが取得したパスワードが複数あるときは、複数のパスワードを取得する。（Ｓ２０１）。
【００３２】
続いてインストーラ２００は、レセプトデータ４００を参照して事業者番号を取り出し、さらに更新ファイル５００を参照して更新レベルを取り出す。事業者番号と更新レベルを基にパスワード生成アルゴリズムにより第２のパスワード（ＰＷＤ２）を生成する。レセプトデータ４００に複数の事業者番号が存在すればそれに対応する複数のパスワードの生成を行う（Ｓ２０２〜Ｓ２０４）。
【００３３】
第１のパスワードと第２のパスワードを比較し、その内の一つでもパスワードが等しければ更新ファイル５００のインストールを実施して更新前プログラム３００の書き換えを行う。第１と第２のパスワードの比較において、一致するものがなければユーザにエラーメッセージを表示して終了する。パスワードが等しくなかった場合の原因は、事業者番号が異なる（即ち、正規ユーザでない）か、更新ファイル５００のレベルがユーザが要求したレベルと異なる場合である。
【００３４】
ここでは複数のパスワードを比較したが、複数発行されたパスワードのうちの１つのパスワードだけで比較した場合に、たまたまその事業者番号による請求が発生しなかった場合にパスワードの一致が見られず正規ユーザとして扱われないことを避けるためである。もし、レセプトデータ４００中に確実に認可された複数の事業者番号に対するサービスが行われていれば（即ち、レセプトデータには必ず認可された事業者番号が存在する）、発行されたパスワードの内の１つのパスワードを入力するようにしてもよい（Ｓ２０５〜Ｓ２０７）。
【００３５】
以上、本発明の実施例を説明したが、これはあくまで一実施例であり、本旨を損なわないようであればこの実施例以外の構成であってもよい。例えば、実施例ではインターネットを用いてサポートセンタからパスワードの発行を受けたが、単に電話で通知されたものであってもよいし、介護事業者支援システムはスタンドアロンでなくクライアント／サーバ型のものであってもよい。また、更新ファイルはＣＤ−ＲＯＭの媒体にあるものをインストールしたが、他の媒体であってもよいし通信回線を用いたものであってもよい。
（付記１）
特定ユーザの識別子を含むデータベースを持つシステムのプログラムの更新方法であって、
入力された第１のパスワードを取得するパスワード取得手順と、
前記データベースの前記識別子を基に所定のルールにより第２のパスワードを生成するパスワード生成手順と、
前記第１のパスワードと前記第２のパスワードとが等しいとき、プログラムの更新を実施する更新手順と
を有することを特徴とするプログラムの更新方法。
（付記２）
前記第２のパスワードは、前記データベースの前記識別子と更新用のファイルの版数とに基づいて前記所定のルールで生成されるものである
ことを特徴とする付記１記載のプログラムの更新方法。
（付記３）
特定のユーザの識別子を含むデータベースを持つシステムの更新を行う更新プログラムであって、
入力された第１のパスワードを取得するパスワード取得手順と、
前記データベースの前記識別子を基に所定のルールで第２のパスワードを生成するパスワード生成手順と、
前記第１のパスワードと前記第２のパスワードとが等しいとき、プログラムの更新を実施する更新手順と
をコンピュータに実行させるための更新プログラム。
（付記４）
前記第２のパスワードは、前記データベースの前記識別子と更新用のファイルの版数とに基づいて前記所定のルールで生成されるものである
ことを特徴とする付記３記載のプログラムの更新方法。
（付記５）
特定のユーザの識別子を含むデータベースを持つシステムの更新を行うプログラム更新装置であって、
入力された第１のパスワードを取得するパスワード取得手段と、
前記データベースの前記識別子を基に所定のルールで第２のパスワードを生成するパスワード生成手段と、
前記第１のパスワードと前記第２のパスワードとが等しいとき、プログラムの更新を実施する更新手段と
を有することを特徴とするプログラム更新装置。
【図面の簡単な説明】
【００３６】
【図１】発明の原理図である。
【図２】パスワード入手の構成と介護事業者支援システムの構成例である。
【図３】顧客ＤＢのデータ例である。
【図４】パスワード要求の処理フローである。
【図５】パスワード要求の入力画面とパスワード発行画面例である。
【図６】介護事業者支援システムの詳細構成例である。
【図７】レセプトデータのデータ例である。
【図８】インストーラの処理フローである。
【符号の説明】
【００３７】
１      パスワード取得手順
２      パスワード生成手順
３      更新手順
１０    パスワード入手ＰＣ
２０    インターネット
３０    サポートセンタ
４０    顧客ＤＢ
１００  介護事業者支援システム本体
１１０  ディスプレイ
１２０  キーボード
１３０  ＣＤ−ＲＯＭ
２００  インストーラ
２１０  パスワード取得部
２２０  パスワード生成部
２３０  更新部
３００  更新前プログラム
４００  レセプトデータ
５００  更新ファイル
【図１】
2005128812.tif 000003
【図２】
2005128812.tif 000004
【図３】
2005128812.tif 000005
【図４】
2005128812.tif 000006
【図５】
2005128812.tif 000007
【図６】
2005128812.tif 000008
【図７】
2005128812.tif 000009
【図８】
2005128812.tif 000010