(57)【要約】【課題】制御装置に対する不正な設定値の設定を防止するとともに、予め決められた時間内において設定値の変更を許容できるようにする。【解決手段】第一の処理装置との通信回数と機器固有の識別情報とを記憶する記憶部と、第一の処理装置から設定値及びワンタイムパスワードを受信する受信部と、通信回数と識別情報とに基づいて生成したワンタイムパスワードと、受信部の受信したワンタイムパスワードとを照合する照合部と、外部装置の制御に用いる設定値を切り替える切替部と、を有し、切替部は、ワンタイムパスワードが一致する場合に、所定時間、外部装置の制御に用いる設定値を、第一の処理装置から受信した設定値に切り替える。【選択図】図１
2014123228.tif 000002
【特許請求の範囲】
【請求項１】
第一の処理装置と通信可能な、外部装置を制御する制御装置であって、
第一の処理装置と共有して保持される、前記第一の処理装置との通信回数と、機器固有の識別情報とを記憶する記憶部と、
前記第一の処理装置から設定値及びワンタイムパスワードを受信する受信部であって、前記ワンタイムパスワードは、第二の処理装置が、前記第一の処理装置から受信した前記設定値に対する許容可否の判定結果並びに前記第一の処理装置を介して受信した前記識別情報及び前記通信回数とに基づいて生成する、受信部と、
前記通信回数と前記識別情報とに基づいて生成したワンタイムパスワードと、前記受信部の受信したワンタイムパスワードとを照合する照合部と、
前記外部装置の制御に用いる設定値を切り替える切替部と、
を有し、
前記切替部は、前記ワンタイムパスワードが一致する場合に、所定時間、前記外部装置の制御に用いる設定値を、前記第一の処理装置から受信した前記設定値に切り替える、
制御装置。
【請求項２】
前記切替部は、前記所定時間の経過後、前記外部装置の制御に用いる設定値を、前記第一の処理装置から受信した前記設定値を設定する前の設定値に切り替える、
請求項１に記載の制御装置。
【請求項３】
前記切替部は、前記ワンタイムパスワードが一致しない場合には、前記外部装置の制御に用いる設定値を、前記第一の処理装置から受信した前記設定値に切り替えない、
請求項１又は２に記載の制御装置。
【請求項４】
前記第二の処理装置が生成する前記ワンタイムパスワードは、前記第一の処理装置から受信された前記設定値が許容範囲内であれば、前記識別情報と前記通信回数とに基づいて生成され、前記設定値が許容範囲外であれば、所定のデータに基づいて生成される、
請求項１ないし３何れか一項に記載の制御装置。
【請求項５】
第一の処理装置と通信可能な、外部装置を制御する制御装置で実行される制御方法であって、
前記第一の処理装置から設定値を受信する第一受信段階と、
第一の処理装置と共有して保持される、前記第一の処理装置との通信回数を取得して格納する格納段階と、
前記第一の処理装置からワンタイムパスワードを受信する第二受信段階であって、前記ワンタイムパスワードは、第二の処理装置が、前記第一の処理装置から受信した前記設定値に対する許容可否の判定結果並びに前記第一の処理装置を介して受信した前記制御装置の機器固有の識別情報及び前記通信回数とに基づいて生成する、第二受信段階と、
前記通信回数と前記識別情報とに基づいてワンタイムパスワードを生成する生成段階と、
生成した前記ワンタイムパスワードと、前記受信部の受信したワンタイムパスワードとを照合する照合段階と、
前記外部装置の制御に用いる設定値を切り替える切替段階と、
を有し、
前記切替段階において、前記ワンタイムパスワードが一致する場合に、所定時間、前記外部装置の制御に用いる設定値を、前記第一の処理装置から受信した前記設定値に切り替える、
制御方法。
【請求項６】
請求項５に記載の制御方法をコンピュータに実行させるプログラム。
【請求項７】
第一の処理装置と通信可能な制御装置と、前記第一の処理装置と通信可能な第二の処理装置とを有する情報処理システムであって、
前記制御装置は、
第一の処理装置と共有して保持される、前記第一の処理装置との通信回数と、機器固有の識別情報とを記憶する記憶部と、
前記第一の処理装置から設定値及びワンタイムパスワードを受信する受信部と、
前記通信回数と前記識別情報とに基づいて生成したワンタイムパスワードと、前記受信部の受信した前記ワンタイムパスワードとを照合する照合部と、
前記外部装置の制御に用いる設定値を切り替える切替部と、
を有し、
前記切替部は、前記ワンタイムパスワードが一致する場合に、所定時間、前記外部装置の制御に用いる設定値を、前記第一の処理装置から受信した前記設定値に切り替え、
前記第二の処理装置は、
前記第一の処理装置から受信した前記設定値に対する許容可否の判定結果並びに前記第一の処理装置を介して受信した前記識別情報及び前記通信回数とに基づいてワンタイムパスワードを生成する生成部と、
前記ワンタイムパスワードを前記第一の処理装置に送信する送信部と、
を有する、情報処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御装置、制御方法、プログラム及び情報処理システムに関する。
【背景技術】
【０００２】
制御装置の一つであるインバータ装置は、メンテナンス用の保守ＰＣを用いて、制御するモータ装置の仕様に応じて、限度値まで設定値を変更することができる。限度値の設定については、製品出荷時に行われる。通常は特約店による限度値の変更が出来ないように保守ＰＣに制限がなされている。
【０００３】
しかし、特約店によっては、保守ＰＣのプログラムを解析して、この設定制限を解除し、設定値を現在の限度値以上に不正変更する場合がある。これにより、中容量だったインバータ装置を高容量のインバータ装置として、特約店がユーザに対して不正に販売してしまう恐れがある。
【０００４】
そこで、これらの課題を解決するために、ワンタイムパスワードを用いて、不正な変更を防止する次のような従来技術がある。例えば、記憶メディアを使用してメンテナンス認証を行う装置に対して、記憶メディアが無いなどの非常時に、時計機能を用いて生成されたワンタイムパスワードの認証を行う技術がある（例えば特許文献１）。
【０００５】
また、パスワードを生成する度に更新されるカウンタに基づいて生成されたワンタイムパスワードを生成する際、カウンタ値の許容範囲を広げる技術がある（例えば特許文献２）。
【０００６】
このように、ワンタイムパスワードを照合した結果から設定値を変更することにより、不正な変更が容易に行えないようにしている。一方で、特約店は、ユーザーとの商談の中で、ユーザーが指定する他社の装置（モータ）とのマッチング（結合テスト）できることを条件に、購入を決定するケースがある。
【０００７】
このようなケースに対応する手段として、装置の設定変更を期間限定して行うようにする、先行技術がある（例えば特許文献３）。この先行技術では、まず、第一の基本パスワードと第二の期限付きパスワードをICカードに登録する。そして、第二の期限付きパスワードをユーザーが装置に入力した場合、オンラインで認証サーバの登録した第一のパスワードと照会し、一致すれば装置の使用を認める。一方で、一致しなければ、装置の使用を認めなくする。このような技術を利用すれば、制御装置とモータのマッチングを、パスワードの有効期間内に行うことができる。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００４−１５７８４５号公報
【特許文献２】特開２００８−２６２２９９号公報
【特許文献３】特開２００６−２３５７３１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら、従来の方法では、ワンタイムパスワードの有効期間内であれば、自由に制御装置の設定値が自由に変更できてしまい、結果として、不正な設定値が設定されてしまうおそれがある。
【００１０】
そこで、本発明は、制御装置に対する不正な設定値の設定を防止するとともに、予め決められた時間内において設定値の変更を許容できるようにすることを目的とする。
【課題を解決するための手段】
【００１１】
本発明の一態様における制御装置は、
第一の処理装置と通信可能な、外部装置を制御する制御装置であって、
第一の処理装置と共有して保持される、前記第一の処理装置との通信回数と、機器固有の識別情報とを記憶する記憶部と、
前記第一の処理装置から設定値及びワンタイムパスワードを受信する受信部であって、前記ワンタイムパスワードは、第二の処理装置が、前記第一の処理装置から受信した前記設定値に対する許容可否の判定結果並びに前記第一の処理装置を介して受信した前記識別情報及び前記通信回数とに基づいて生成する、受信部と、
前記通信回数と前記識別情報とに基づいて生成したワンタイムパスワードと、前記受信部の受信したワンタイムパスワードとを照合する照合部と、
前記外部装置の制御に用いる設定値を切り替える切替部と、
を有し、
前記切替部は、前記ワンタイムパスワードが一致する場合に、所定時間、前記外部装置の制御に用いる設定値を、前記第一の処理装置から受信した前記設定値に切り替える。
【００１２】
また、本発明の他の態様における制御方法は
第一の処理装置と通信可能な、外部装置を制御する制御装置で実行される制御方法であって、
前記第一の処理装置から設定値を受信する第一受信段階と、
第一の処理装置と共有して保持される、前記第一の処理装置との通信回数を取得して格納する格納段階と、
前記第一の処理装置からワンタイムパスワードを受信する第二受信段階であって、前記ワンタイムパスワードは、第二の処理装置が、前記第一の処理装置から受信した前記設定値に対する許容可否の判定結果並びに前記第一の処理装置を介して受信した前記制御装置の機器固有の識別情報及び前記通信回数とに基づいて生成する、第二受信段階と、
前記通信回数と前記識別情報とに基づいてワンタイムパスワードを生成する生成段階と、
生成した前記ワンタイムパスワードと、前記受信部の受信したワンタイムパスワードとを照合する照合段階と、
前記外部装置の制御に用いる設定値を切り替える切替段階と、
を有し、
前記切替段階において、前記ワンタイムパスワードが一致する場合に、所定時間、前記外部装置の制御に用いる設定値を、前記第一の処理装置から受信した前記設定値に切り替える。
【００１３】
また、本発明の他の態様におけるプログラムは、上記制御方法を、コンピュータに実行させる。
【００１４】
また、本発明の他の態様における情報処理システムは、
第一の処理装置と通信可能な制御装置と、前記第一の処理装置と通信可能な第二の処理装置とを備える情報処理システムであって、
前記制御装置は、
第一の処理装置と共有して保持される、前記第一の処理装置との通信回数と、機器固有の識別情報とを記憶する記憶部と、
前記第一の処理装置から設定値及びワンタイムパスワードを受信する受信部と、
前記通信回数と前記識別情報とに基づいて生成したワンタイムパスワードと、前記受信部の受信したワンタイムパスワードとを照合する照合部と、
前記外部装置の制御に用いる設定値を切り替える切替部と、
を有し、
前記切替部は、前記ワンタイムパスワードが一致する場合に、所定時間、前記外部装置の制御に用いる設定値を、前記第一の処理装置から受信した前記設定値に切り替え、
前記第二の処理装置は、
前記第一の処理装置から受信した前記設定値に対する許容可否の判定結果並びに前記第一の処理装置を介して受信した前記識別情報及び前記通信回数とに基づいて前記ワンタイムパスワードを生成する生成部と、
前記ワンタイムパスワードを前記第一の処理装置に送信する送信部と、
を有する。
【発明の効果】
【００１５】
開示の技術によれば、制御装置に対する不正な設定値の設定を防止するとともに、予め決められた時間内において設定値の変更を許容できる。
【図面の簡単な説明】
【００１６】
【図１】実施例におけるシステム構成の一例を示す図。
【図２】各装置における記憶部の記憶領域の一例を示す図。
【図３】アクセス権限の一例を示す図。
【図４】設定値変更の一例を示す図。
【図５】ワンタイムパスワード生成の演算方法（一例目）を示す図。
【図６】ワンタイムパスワード生成の演算方法（二例目）を示す図。
【図７】ワンタイムパスワード生成の演算方法（三例目）を示す図。
【図８】通信回数のカウント処理の一例を示すシーケンス図。
【図９】パスワード生成、照合処理、仮設定値での一時動作の一例を示すシーケンス図。
【図１０】実施例におけるシステムの適用例を説明する図。
【図１１】システム内の各装置のハードウェアの一例を示す図。
【発明を実施するための形態】
【００１７】
以下、制御装置に対する一定時間の設定変更を許容し、かつ、不正な設定値の設定を防止する実施例について、添付図面を参照しながら説明する。
【００１８】
［実施例］
＜構成＞
図１は、実施例におけるシステム構成の一例を示す図である。図１に示すシステムは、第一処理装置１００（請求項における「第一の処理装置」に対応）と、第三処理装置２００（請求項における「第二の処理装置」に対応）と、第二処理装置３００と、制御装置４００とを備える。制御装置４００は、電源４１６により電源を供給され、モータのような外部の装置４１５（以下、モータを代表的に用いて説明する）を制御する。
【００１９】
制御装置４００は、例えばインバータ装置であり、第一処理装置１００は、例えば特約店の保守ＰＣ（Personal Computer）であり、第二処理装置３００は、例えば遠隔操作可能なタッチパネルであり、第三処理装置２００は、メーカの保守ＰＣであり、制御システム４５０は、例えば制御盤である。
【００２０】
以下では、第一処理装置１００が制御装置４００に対し不正にアクセスしたり、不正に設定値を変更したりできないように、ワンタイムパスワードを設定し、照合を行うことで不正を防ぐ仕組みについて説明する。
【００２１】
（仮設定値の設定）
まずは、モータ４１５を制御する設定値を変更する場合について、特約店の担当者１０１が、制御装置４００に対して仮設定値を設定し、該仮設定値や該制御装置４００から受信した機器固有コードを第三処理装置に通知するまでの手順について説明する。
【００２２】
特約店の担当者１０１は、第一処理装置１００を用いて、制御装置４００に対して仮の設定値（以下、「仮設定値」とする）を書き込み、その旨を例えばＥメールで第三処理装置２００に通知する。
【００２３】
特約店の担当者１０１は、制御装置４００の記憶部４０２内に仮設定値４０９を書き込むため、第一処理装置１００の設定値仮変更部１０５に、変更指示をする。
【００２４】
設定値仮変更部１０５は、特約店の担当者１０１から設定された仮設定値１０８を、制御装置４００の記憶部４０２に仮設定値４０９として書き込むために、通信部１０２にコマンド通信を行うよう指示する。また、設定値仮変更部１０５は、特約店の担当者１０１から設定された仮設定値１０８を記憶部１０７に書き込む。
【００２５】
次に、通信部１０２は、制御装置４００の第一通信部４１２から機器固有コード（例えば、ＭＡＣアドレスや任意の文字と数字の組み合わせによって構成される、機器の識別情報）４１３をコマンド通信によって取得する。通信部１０２は、取得した機器固有コード４１３を記憶部１０７に機器固有コード１０３として書き込む。
【００２６】
また、通信部１０２と第一通信部４１２とは、お互いの通信回数をカウントし、同じカウント値をそれぞれの通信回数（１０４、４１４）として各記憶部（１０７、４０２）に記録する。通信回数は、第一処理装置１００と制御装置４００との通信回数を同期してカウントされたカウント値であり、各装置に共有して保持される。なお、どちらかの装置が通信回数をカウントし、他方の装置に通信回数を送信することで、通信回数が共有されてもよい。
【００２７】
メール送受信部１０６は、制御装置４００から機器固有コードが取得された場合、記憶部１０７から仮設定値１０８、機器固有コード１０３、通信回数１０４を読み出し、これらの情報を添付ファイルにして、第三処理装置２００にメール送信する。
【００２８】
（第三処理装置によるワンタイムパスワードの生成）
次に、第三処理装置２００による、仮設定値に対する許容範囲内か否かの判定をして、ワンタイムパスワードを生成する手順を説明する。
【００２９】
第三処理装置２００のメール送受信部２０２は、公衆回線通信網又はインターネットのようなネットワークを介して、第一処理装置１００からメールを受信する。このメールの添付ファイルは、機器固有コード（識別情報）、仮設定値、通信回数を含む。メール送受信部２０２は、受信したメールの添付ファイルに含まれる各データを、仮設定値２０３、機器固有コード２０５、通信回数２０６として記憶部２１０に書き込む。
【００３０】
判定部２０４は、記憶部２１０から仮設定値２０３を取得し、仮設定値２０３が使用限度内、つまり許容範囲内であるか否かを判定する。判定部２０４は、判定結果をワンタイムパスワード生成部２０７に通知する。
【００３１】
判定部２０４は、仮設定値２０３に対する許容範囲のデータを保持しており、自動で判定してもよいし、メーカ担当者２０１により判定されてもよい。メーカ担当者２０１は、表示された仮設定値２０３を見てＯＫかＮＧかのボタンなどを押すことで判定を行うことができる。
【００３２】
ワンタイムパスワード生成部２０７は、判定部２０４から通知された判定結果に基づいて、機器固有コード２０５、通信回数２０６に基づくか否かを決めてワンタイムパスワードを生成する。
【００３３】
例えば、ワンタイムパスワード生成部２０７は、判定結果がＯＫの場合、機器固有コード２０５、通信回数２０６に基づいてワンタイムパスワードを生成する。また、ワンタイムパスワード生成部２０７は、判定結果がＮＧの場合、所定データ２０９に基づいてワンタイムパスワードを生成する。例えば、ワンタイムパスワード生成部２０７は、判定結果がＮＧの場合、判定結果がＮＧであることが分かる値をＮＧパスワードとし、このＮＧパスワードをワンタイムパスワードとして生成してもよい。
【００３４】
判定結果がＮＧであることが分かる値とは、例えば、数値以外のアルファベットなどである。所定データ２０９とは、例えば上述したアルファベットや、機器固有コード２０５又は通信回数２０６に加算する数値データなどである。ワンタイムパスワードの生成処理について後述する。ワンタイムパスワード生成部２０７は、生成したワンタイムパスワードを通信部２０８に通知する。
【００３５】
なお、判定結果がＮＧの場合は、メール送受信部２０２は、予め保持している特約店の担当者１０１のメールアドレスに対し、判定結果がＮＧ（仮設定値が許容範囲外）であることをメールで送信する。また、ＮＧの通知方法としては、メールに限られず、ＦＡＸなどでもよい。
【００３６】
通信部２０８は、ワンタイムパスワード生成部２０７から取得したワンタイムパスワードを、メール送受信部２０２に通知する。
【００３７】
メール送受信部２０２は、通信部２０８から通知されたワンタイムパスワードを、添付ファイルにして、第一処理装置１００にメール送信する。
【００３８】
（制御装置による照合処理、設定値変更処理）
次に、制御装置４００が、第三処理装置２００の生成したワンタイムパスワードと、制御装置４００の内部で照合用に生成したワンタイムパスワードとの照合を行い、両パスワードが一致した場合に、仮設定値を用いて、一定期間、外部装置（モータ）を制御する手順を説明する。
【００３９】
まず、第一処理装置１００のメール送受信部１０６は、第三処理装置２００からメールで受信したワンタイムパスワードを、記憶部１０７に、ワンタイムパスワード１０８として格納する。
【００４０】
次に、通信部１０２は、記憶部１０７に格納されたワンタイムパスワード１０８を読出し、制御装置４００に送信する。
【００４１】
制御装置４００の第一通信部４１２は、第一処理装置１００からワンタイムパスワードを受信する。第一通信部４１２は、受信したワンタイムパスワードをワンタイムパスワード照合部４０８に出力する。
【００４２】
ワンタイムパスワード生成部４０５は、記憶部４０２内の通信回数４１４及び機器固有コード４１３を用いて、ワンタイムパワードを生成する。ワンタイムパスワード生成部４０５は、生成したワンタイムパスワードをワンタイムパスワード照合部４０８に出力する。
【００４３】
ここで、ワンタイムパスワード生成部４０５は、例えば第一処理装置１００からワンタイムパスワードを受信するまでに処理を行い、ワンタイムパスワードを生成してもよい。
【００４４】
ワンタイムパスワード照合部４０８は、第一通信部４１２により受信されたワンタイムパスワードと、ワンタイムパスワード生成部４０５により生成された照合用のワンタイムパスワードとを照合する。ワンタイムパスワード照合部４０８は、両パスワードが一致すれば照合ＯＫ、両パスワードが一致しなければ照合ＮＧとする。ワンタイムパスワード照合部４０８は、照合結果を設定値切替部４１８に出力する。
【００４５】
設定値切替部４１８は、ワンタイムパスワード照合部４０８から取得した照合結果が照合ＯＫであれば、モータ制御部４１１で制御している設定値を仮設定値に切り替える。つまり、設定値切替部４１８は、記憶部４０２内に記憶されている仮設定値４０９の値を、記憶部４０２内に記憶されている設定値４１０の値に反映する。このとき、元の設定値は、記憶部４０２のセキュリティ領域（データ）に、一時的に格納しておく（図示しない）。
【００４６】
一方、設定値切替部４１８は、照合結果が照合ＮＧであれば、記憶部４０２内に記憶されている仮設定値４０９をクリアする。仮設定値がクリアされると、制御装置４００は、第一処理装置１００から再び仮設定値を設定されることが可能な状態となる。
【００４７】
また、設定値切替部４１８は、仮設定値の切替結果を第二通信部４０１に出力する。切替結果とは、仮設定値の切り替えが成功したか否かを示す情報であり、仮設定値を切り替えた場合は切替後の設定値を切替結果に含むようにしてもよい。第二通信部４０１は、取得した切替結果（切替後の設定値）を第二処理装置３００に通知する。
【００４８】
通知を受けた第二処理装置３００は、表示部３０６を通じて、設定値の切替結果を表示する。このとき、第二処理装置３００は、切替後の設定値とともに、そのような仮の設定値でモータが動作中（仮動作中）旨を表示してもよい。
【００４９】
また、設定値切替部４１８は、ワンタイムパスワード照合部４０８から取得した照合結果が照合ＯＫであれば、その旨を仮設定値有効タイマー部４１６に通知する。
【００５０】
仮設定値有効タイマー部４１６は、設定値切替部４１８から通知を受け取ると、記憶部４１７に格納されたタイマー値４１７を読出し、タイマーをスタートさせる。続いて、モータ制御部４１１は、正式に反映された仮設定値でモータ４１５を制御する。
【００５１】
一方で、ワンタイムパスワードの照合結果が照合ＮＧであれば、元の設定値でモータ４１５を制御する。
【００５２】
その後、仮設定値有効タイマー部４１６は、タイマーの値が、タイマー値４１７に達したとき、その旨を設定値切替部４１８に通知する。
【００５３】
設定値切替部４１８は、仮設定値有効タイマー部４１６からの通知を受けると、記憶部４０２内に記憶されている、元の設定値４１０を読出し、設定値４１０に設定する。さらに、記憶部４０２内に記憶されている、仮設定値をクリアする。そして、モータ制御部４１１は、元の設定値でモータ４１５を制御する。
【００５４】
また、設定値切替部４１８は、設定値を元の設定値に切り替えたことを表す、設定値の切替結果を、第二通信部４１０に通知する。第二通信部４０１は、当該通知を、第二処理装置３００に通知する。
【００５５】
通知を受けた第二処理装置３００は、表示部３０６を通じて、設定値の切替結果を表示する。このとき、第二処理装置３００は、切替後の設定値とともに、仮の設定値でのモータの動作が終了した（仮動作終了）旨を表示してもよい。
【００５６】
以上の構成を有することで、実施例におけるシステムは、制御装置に対する一定時間の設定変更を許容し、かつ、不正な設定値の設定を防止することができる。
【００５７】
なお、上記例において、制御装置４００は、第一処理装置１００により仮設定値１０８が設定されたことをトリガとして、パスワードの生成、照合処理を行った。しかしながら、制御装置４００は、第一処理装置１００からの通信要求を受信した段階で、パスワードの生成、照合処理を行ってもよい。
【００５８】
＜データ構造＞
次に、各記憶部にあるデータやプログラムについて説明する。図２は、各装置における記憶部の記憶領域の一例を示す図である。
【００５９】
図２（Ａ）は、制御装置４００の記憶部４０２の記憶領域を示す。記憶部４０２は、セキュリティ領域と非セキュリティ領域とがある。セキュリティ領域には、データ領域とプログラム領域とがある。
【００６０】
セキュリティ領域のデータ領域には、機器固有コード４１３、通信回数４１４、設定値４１０が記憶される。また、セキュリティ領域のプログラム領域には、ワンタイムパスワード生成プログラム５０１、パスワード照合プログラム５０３、設定値切替プログラム５０４、モータ制御プログラム５０５が記憶される。また、非セキュリティ領域のデータ領域には、仮設定値４０９が記憶される。
【００６１】
図２（Ｂ）は、第三処理装置２００の記憶部２１０の記憶領域を示す。記憶部２１０は、セキュリティ領域と非セキュリティ領域とがある。セキュリティ領域には、データ領域とプログラム領域とがある。
【００６２】
セキュリティ領域のデータ領域には、通信回数２０６、機器固有コード２０５、所定データ２０９が記憶される。また、セキュリティ領域のプログラム領域には、ワンタイムパスワード生成プログラム６０１が記憶される。また、非セキュリティ領域のデータ領域には、仮設定値２０３が記憶される。
【００６３】
上述した各プログラムは、それぞれの装置のプロセッサにより実行されることで、各部として機能する。
【００６４】
＜アクセス権限＞
次に、図２に示したデータやプログラムのアクセス権限について説明する。図３は、アクセス権限の一例を示す図である。図３に示す例では、セキュリティ領域とは、ワンタイムパスワード、パスワードの生成アルゴリズムを含むプログラムやデータを安全に保管する為のものである。
【００６５】
具体的には、プログラムやデータにアクセスする際に権限をかけて、この権限がない場合にはアクセス（読み書き）できないようにする。また、これらを実現する手段として、ハードウェアによるプロテクト機能のある記憶デバイスを使用する。プロテクト機能とは、読み書きを禁止する機能である。
【００６６】
機器固有コードは、制御装置４００に割り振られたユニークなコードであり、制御装置４００、第一処理装置１００及び第三処理装置２００がアクセス出来るセキュリティ領域に記憶する。ただし、第一処理装置１００は、機器固有コードの読み出し権限のみを有する。
【００６７】
通信回数は、第一処理装置１００と制御装置４００間で通信した回数である。第一処理装置１００と、制御装置４００とがそれぞれ通信回数をカウントし、記憶する。また、通信回数は、制御装置４００、第一処理装置１００、第三処理装置２００のみが読み書きできるセキュリティ領域に記憶される。第一通信回数のカウント方法は、図８を用いて後述する。
【００６８】
設定値は、制御装置４００のみが読み書きできるセキュリティ領域に記憶される。
【００６９】
ワンタイムパスワード生成プログラムは、制御装置４００、第三処理装置２００のみが実行できるセキュリティ領域に記憶される。
【００７０】
ワンタイムパスワード照合プログラムや、設定値切替プログラムや、モータ制御プログラムは、制御装置４００のみが実行できるセキュリティ領域に記憶される。
【００７１】
また、仮設定値は、通常のデータ領域に記憶される。このように、プログラムやデータに対しアクセス権限を設定して読取を制限することで、特約店の担当者１０１が、第一処理装置１００を使って、パスワードや生成に必要なアルゴリズムやデータを入手できないようにする。これにより、特約店での不正な設定値書き換えを防ぐことができる。
【００７２】
＜設定値の変更＞
図４は、設定値変更の一例を示す図である。図４（Ａ）は、仕様Ａの各設定値を示す。図４（Ｂ）は、仕様Ｂの各設定値を示す。
【００７３】
図４に示す例は、特約店の担当者１０１が、第一処理装置１００を介して、制御装置４００に接続されるモータ４１５のモータ容量を変更（７５ｋｗ→９０ｋw）する時に設定する例を示す。モータ容量の変更は、定格電流値の上限値を担当者１０１が書き換えることで実行される。なお、仕様Ｂは、各設定値が許容範囲内であるので、設定値切替部４１８により設定値が切り替えられる。なお、変更される設定値は、モータ４１５の設定値に限られない。
【００７４】
＜パスワード生成＞
次に、ワンタイムパスワード生成処理の例について説明する。
【００７５】
（生成処理１）
図５は、ワンタイムパスワード生成の演算方法（一例目）を示す図である。図５に示す例では、次の式でワンタイムパスワードが生成される。「％」は、剰余算を表し、余りを返す演算子である。
式１：機器固有データの上位４桁％第一通信回数の下位４桁＝Ａ
式２：機器固有データの下位４桁×第一通信回数の上位４桁＝Ｂ
式３：Ａ＋Ｂ＝ワンタイムパスワード
ここで、機器固有データ＝１２３４５６７８、通信回数＝０００２２２５６とした場合、ワンタイムパスワードの演算結果は、以下の様になる。
式１：１２３４％２２５６＝１２３４・・・・・Ａ
式２：５６７８×０００２＝１１３５６・・・・Ｂ
式３：１２３４＋１１３５６＝１２５９０・・・ワンタイムパスワード
ワンタイムパスワードは、０００１２５９０となる。
【００７６】
（生成処理２）
図６は、ワンタイムパスワード生成の演算方法（二例目）を示す図である。図６に示す例では、図５のパスワード生成の前に、機器固有データ及び通信回数の桁を変換する手法を加えたものである。
【００７７】
具体的には、機器固有データ＝１２３４５６７８、通信回数＝０００２２２５６の数値に対して桁変換ａ１０１が行われる。
桁変換１）機器固有データ＝１２３４５６７８→桁変換→８６４２７５３１
桁変換２）通信回数＝０００２２２５６→桁変換→６２２０５２００
上記桁変換の例は一例であり、生成処理ではいずれの桁変換を用いてもよい。
【００７８】
桁変換が行われた後、さらに、図５と同じ演算が行われることで、ワンタイムパスワードが生成される。
式１：８６４２％５２００＝３４４２・・・・・・・・・・Ａ
式２：７５３１×６２２０＝４６８４２８２０・・・・・・Ｂ
式３：３４４２＋４６８４２８２０＝４６８４６２６２・・ワンタイムパスワード
ワンタイムパスワードは、４６８４６２６２となる。
【００７９】
（生成処理３）
図７は、ワンタイムパスワード生成の演算方法（三例目）を示す図である。図９に示す例では、図５のパスワード生成の前に、数値を変換する手法を加えたものである。
【００８０】
具体的には、機器固有データ＝１２３４５６７８、通信回数＝０００２２２５６の数値に対し、数値変換表ｂ１０１を用いて数値変換が行われる。
値変換１）機器固有データ＝１２３４５６７８→数値変換→０９８７６５４３
値変換２）通信回数＝０００２２２５６→数値変換→１１１９９９６５
数値変換が行われた後、さらに、図５と同じ演算が行われることで、ワンタイムパスワードが生成される。
式１：９８７％９９６５＝９８７・・・・・・・・・・Ａ
式２：６５４３×１１１９＝７３２１６１７・・・・・Ｂ
式３：９８７＋７３２１６１７＝７３２２６０４・・・ワンタイムパスワード
ワンタイムパスワードは、０７３２２６０４となる。
【００８１】
上記数値変換の例は一例であって、その他の数値変換が行われてもよい。なお、式１〜３もこの式に限ったものではなく、例えば上位と下位とを入れ替えた式や、四則演算をその他の演算にした式などを用いてもよい。ワンタイムパスワード生成処理で用いられる演算式は、各パラメータを代入することでワンタイムパスワードが生成されるような演算式なら何れでもよい。
【００８２】
各パスワード生成部（２０７、４０５）は、上記生成処理１〜３のいずれか１つを実行すればよい。また、各パスワード生成部（２０７、４０５）は、複数のパスワード生成処理を実行可能にし、適応的にいずれか１つを選択して処理するようにしてもよい。
【００８３】
このとき、各パスワード生成部（２０７、４０５）は、例えば日、週、月単位で、生成処理を順に切り替えて使用してもよい。また、各パスワード生成部（２０７、４０５）は、例えば複数の第一処理装置１００をＩＤなどによりグループ化しておき、このグループと生成処理とを対応付けたテーブルを参照して、アクセスしてきた第一処理装置１００毎に生成処理を使用してもよい。
【００８４】
＜通信回数のカウント＞
図８は、通信回数のカウント処理の一例を示すシーケンス図である。図８に示す例では、主局と従局とに分けて説明する。ここで、主局は、第一処理装置１００である。また、従局は、制御装置４００である。
【００８５】
なお、主局と、従局とに記憶されている通信回数は、一致させておく必要がある。そこで、一番初めの通信では、両者に記憶されている通信回数がクリアされる。
【００８６】
ステップＳ１０１で、主局は、従局に対して、カウンタリセットの要求コマンドを送信する。ステップＳ１０２で、従局は、カウンタリセットの要求コマンドを受信した場合に、記憶されている通信回数をクリアし、クリアＯＫの応答コマンドを主局に送信する。このとき、主局は、従局から応答を受信した場合に、記憶されている通信回数をクリアする。
【００８７】
ステップＳ１０３で、主局は、従局に対して、通信開始の要求コマンドを送信する。ステップＳ１０４で、従局は、主局に対して、通信開始ＯＫの応答コマンドを送信する。
【００８８】
ステップＳ１０５で、主局は、従局に対して、データの読み取りの要求コマンドを送信する。ステップＳ１０６で、従局は、主局に対して、データ読み取りＯＫの応答コマンドを送信する。
【００８９】
ステップＳ１０７で、主局は、従局に対して、データ（例えば仮設定値）の書き込みを要求する。このとき、主局は、主局の記憶部に記憶されている通信回数のカウント値を１つカウントアップする。
【００９０】
ステップＳ１０８で、従局は、主局に対して、データの書き込みＯＫの応答コマンドを送信する。このとき、従局は、従局の記憶部に記憶されている通信回数のカウント値を１つカウントアップする。
【００９１】
ステップＳ１０９で、主局は、従局に対して、ダミーの要求コマンドを送信する。このとき、主局は、主局の記憶部に記憶されている通信回数のカウント値を１つカウントアップする。
【００９２】
ステップＳ１１０で、従局は、主局に対して、ダミーの応答コマンドを送信する。このとき、従局は、従局の記憶部に記憶されている通信回数のカウント値を１つカウントアップする。
【００９３】
ステップＳ１１１で、主局は、従局に対して、通信終了の要求コマンドを送信する。ステップＳ１１２で、従局は、主局に対して、通信終了ＯＫの応答コマンドを送信する。このＳ１１１とＳ１１２の処理で、通信回数のカウントアップの処理が停止される。
【００９４】
図８に示すように、主局の通信回数のカウントアップは、要求コマンドの書込み、ダミーを送信したときに行われる。従局の通信回数のカウントアップは、応答コマンド書込み、ダミーを送信したときに行われる。
【００９５】
読み出し要求時にカウントアップを行わない理由は、次の通りである。例えば、主局は、仮設定値を設定した後、従局の設定値の内容を確認したいときなどに、読み出しの通信要求を行う。このとき、読み出しの通信でカウントをアップさせないことで、パスワード生成時のカウント値と、パスワード照合時のカウント値との整合をとることができる。これにより、従局に仮設定値を設定した後も、従局への情報取得が可能となる。また、通信回数は、例えば最大99999999とし、これを超えると0に戻る様にする。
【００９６】
＜動作＞
次に、実施例におけるシステムの動作について説明する。図９は、パスワード生成、照合処理、及び仮設定値での一時動作の一例を示すシーケンス図である。
【００９７】
ステップＳ３０１で、制御装置４００は、第一処理装置１００からの仮設定値の設定要求、又は通信要求をトリガとし、機器固有コードを第一処理装置１００に送信する。
【００９８】
ステップＳ３０２で、制御装置４００は、機器固有コード４１３及び通信回数４１４を用いて、照合用のワンタイムパスワードを生成する。
【００９９】
ステップＳ３０３で、第一処理装置１００は、仮設定値、機器固有コード、通信回数を添付ファイルにし、第三処理装置２００に対してメール送信する。
【０１００】
ステップＳ３０４で、第三処理装置２００は、仮設定値が、許容範囲内の値であるか否かを判定する。
【０１０１】
ステップＳ３０５で、第三処理装置２００は、仮設定値の判定結果に応じて、ワンタイムパスワードを生成する。
【０１０２】
ステップＳ３０６で、第三処理装置２００は、生成したワンタイムパスワードを第一処理装置１００に送信する。
【０１０３】
ステップＳ３０７で、第一処理装置１００は、第三処理装置２００から受信したワンタイムパスワードを、制御装置４００に送信する。
【０１０４】
なお、ステップＳ３０２の処理と、ステップＳ３０３−Ｓ３０７の処理は、それぞれ独立に平行して実行されてもよい。すなわち、これらの処理の実行順序は任意である。
【０１０５】
ステップＳ３０８で、制御装置４００は、ステップＳ３０２で生成した照合用のワンタイムパスワードと、ステップＳ２０７で受信したワンタイムパスワードとを照合する。
【０１０６】
ステップＳ３０９で、制御装置４００は、ステップＳ３０８の処理で両パスワードが一致した場合、設定値の切り替えを行う。なお、両パスワードが一致しなかった場合、仮設定値は不正の値であるため、制御装置４００は、仮設定値の切り替えを行わない。
【０１０７】
ステップＳ３１０で、制御装置４００は、設定値の切替結果（仮動作中）を、第二処理装置３００に通知する。
【０１０８】
ステップＳ３１１で、第二処理装置３００は、モニタなどに設定値の切替結果（仮動作中）を表示する。
【０１０９】
ステップＳ３１２で、制御装置４００は、仮設定値を設定値に設定し、カウンターチェックを起動する。その後、制御装置４００は、カウンタの値が、予め設定されたタイマー値４１７に達するかどうかを監視する。
【０１１０】
ステップＳ３１３で、制御装置４００は、カウンタの値がタイマー値４１７に達すると、設定値を、元の設定値に切り替える。
【０１１１】
ステップＳ３１４で、制御装置４００は、設定値の切替結果（仮動作終了）を、第二処理装置３００に通知する。
【０１１２】
ステップＳ３１５で、第二処理装置３００は、設定値の切替結果（仮動作終了）をモニタ等に表示する。
【０１１３】
以上、実施例によれば、制御装置をワンタイムパスワードによって認証することにより、特約店による無許可の設定変更を阻止すると共に、外部装置（モータ）を試験的に接続して、期間限定で動作確認することができるようになる。
【０１１４】
＜適用例＞
次に、実施例におけるシステムの適用例について説明する。図１０は、実施例におけるシステムの適用例を説明する図である。
【０１１５】
図１０に示すように、制御装置４００は、汎用のインバータ装置であり、第一処理装置１００は、特約店の保守ＰＣであり、第二処理装置３００は、遠隔操作可能なタッチパネルであり、第三処理装置２００は、メーカの保守ＰＣ（サーバ）であるとする。また、タッチパネル３００とインバータ装置４００は、制御システム４５０としての制御盤に装着される。タッチパネル３００は、制御盤４５０から着脱可能である。
【０１１６】
ここで、特約店の保守ＰＣ１００がインバータ装置４００の設定を一時的に変更するため、保守ツールを用いて仮設定値を設定する。このとき、保守ＰＣ１００は、インバータ装置４００の機器固有コードを取得し、この機器固有コードと、仮設定値と、インバータ装置４００と保守ＰＣ１００との通信回数とをＥメールに添付して、メーカの保守ＰＣ２００に送信する。
【０１１７】
メーカの保守ＰＣ２００は、これらの情報を用いてワンタイムパスワードを生成する。保守ＰＣ２００は、このワンタイムパスワードを、Ｅメールに添付して、特約店の保守ＰＣ１００に送信する。特約店の保守ＰＣ１００は、受信したワンタイムパスワードを、インバータ装置４００に送信する。
【０１１８】
インバータ装置４００は、内部的に生成したワンタイムパスワードと、特約店の保守ＰＣ１００から受信したワンタイムパスワードの照合に成功した場合に、設定値を一時的に変更する。そして、予め設定された時間（タイマー値）が経過すると、設定を元に戻す。
【０１１９】
次に、図１１を用いて、システム内の各装置のハードウェアについて説明する。図１１は、システム内の各装置のハードウェアの一例を示す図である。装置８００は、例えば、制御部８０１、主記憶部８０２、補助記憶部８０３、通信部８０４、ドライブ装置８０５を有する。各部は、バスを介して相互にデータ送受信可能に接続されている。また、装置によっては、ドライブ装置８０５を有しなくてもよい。
【０１２０】
制御部８０１は、コンピュータの中で、各部の制御やデータの演算、加工を行うＣＰＵ（Central Processing Unit）である。また、制御部８０１は、主記憶部８０２や補助記憶部８０３に記憶されたプログラムを実行する演算装置であり、記憶部などからデータを受け取り、演算、加工した上で、記憶部などに出力する。
【０１２１】
主記憶部８０２は、例えば、ＲＯＭ（Read Only Memory）やＲＡＭ（Random Access Memory）などである。主記憶部８０２は、制御部８０１が実行する基本ソフトウェアであるＯＳやアプリケーションソフトウェアなどのプログラムやデータを記憶又は一時保存する記憶装置である。
【０１２２】
補助記憶部８０３は、例えばＨＤＤ（Hard Disk Drive）などであり、アプリケーションソフトウェアなどに関連するデータを記憶する記憶装置である。
【０１２３】
通信部８０４は、有線又は無線で周辺機器とデータ通信を行う。通信部８０４は、例えばネットワークを介して、パスワードや各種データを取得し、補助記憶部８０３などに記憶する。
【０１２４】
ドライブ装置８０５は、記録媒体８０６、例えばフレキシブルディスクやＣＤ（Compact Disc）から所定のプログラムを読み出し、記憶装置にインストールする。
【０１２５】
また、記録媒体８０６に、所定のプログラムを格納し、この記録媒体８０６に格納されたプログラムは、ドライブ装置８０５を介して処理装置にインストールされる。インストールされた所定のプログラムは、装置８００により実行可能となる。
【０１２６】
なお、図１に示す記憶部（１０７、２１０、４０２）は、例えば装置の主記憶部８０２や補助記憶部８０３などにより実現されうる。各装置（１００、２００、３００、４００）の通信部（１０２、２０８、３０５、４０１、４１２）は、例えば装置８００の通信部８０４などにより実現されうる。各装置（１００、２００、３００、４００）のその他の各部は、例えば装置８００の制御部８０１により各種プログラムを実行することで機能するため、制御部８０１やワークメモリとしての主記憶部８０２などにより実現されうる。
【０１２７】
なお、前述した実施例で説明した制御処理を実現するためのプログラムを記録媒体に記録することで、実施例での制御処理をコンピュータに実施させることができる。例えば、このプログラムを記録媒体に記録し、このプログラムが記録された記録媒体をコンピュータに読み取らせて、前述した制御処理を実現させることも可能である。
【０１２８】
なお、記録媒体は、ＣＤ−ＲＯＭ、フレキシブルディスク、光磁気ディスク等の様に情報を光学的、電気的或いは磁気的に記録する記録媒体、ＲＯＭ、フラッシュメモリ等の様に情報を電気的に記録する半導体メモリ等、様々なタイプの記録媒体を用いることができる。この記録媒体には、搬送波は含まれない。
【０１２９】
以上、実施例について詳述したが、特定の実施例に限定されるものではなく、特許請求の範囲に記載された範囲内において、種々の変形及び変更が可能である。また、前述した実施例の構成要素を全部又は複数を組み合わせることも可能である。
【符号の説明】
【０１３０】
１００  第一処理装置
１０２  通信部
１０７  記憶部
２００  第三処理装置
２０４  判定部
２０７  ワンタイムパスワード生成部
２０８  通信部
２１０  記憶部
３００  第二処理装置
３０５  第二通信部
４００  制御装置
４０１  第二通信部
４０２  記憶部
４０５  ワンタイムパスワード生成部
４０８  ワンタイムパスワード照合部
４１２  第一通信部
【図１】
2014123228.tif 000003
【図２】
2014123228.tif 000004
【図３】
2014123228.tif 000005
【図４】
2014123228.tif 000006
【図５】
2014123228.tif 000007
【図６】
2014123228.tif 000008
【図７】
2014123228.tif 000009
【図８】
2014123228.tif 000010
【図９】
2014123228.tif 000011
【図１０】
2014123228.tif 000012
【図１１】
2014123228.tif 000013