(57)【特許請求の範囲】
【請求項１】
データセンターから通信回線を介して多数の端末装置で動作している複数のプログラム及びデータを更新するプログラムデータ遠隔更新システムにおいて、
端末装置内には、通信処理部と、中央処理装置と、更新処理部と、揮発性メモリーと、前記複数のプログラム及びデータを格納する不揮発性メモリーと、更新するプログラム及びデータを退避させる第２の不揮発性メモリーを含み、
データセンターには、端末装置の遠隔制御部と、更新用のプログラム及びデータを格納する外部記憶装置を含み、
データセンターから端末装置に対して前記複数のプログラム及びデータを更新するにあたり、
データセンターと通信処理部の間で秘密鍵対称暗号又は公開鍵非対称暗号技術を用いて相互認証を行ない、お互いに正当性を確認した場合に、
前記遠隔制御部は、
機能更新しようとする端末装置の新版のプログラムのプログラムファイル名と版数を外部記憶装置から読み出し、そのうちのプログラムファイル名を暗号化し、その暗号化したデータを端末装置に送信し、
端末装置における通信処理部は、
前記暗号化したデータを受信すると、その暗号化データを復号化して得られたプログラムファイル名を更新処理部に送信し、
更新処理部は、受信したプログラムファイル名と一致する不揮発性メモリーに書きこまれたプログラムのプログラムファイル名の版数を読み出し、通信処理部に送信し、通信処理部は、受信した版数を暗号化してデータセンターに送信し、
前記遠隔制御部は、
暗号化したデータを受信して、暗号化データを復号化して版数を得て、新版のプログラムのプログラムファイル名の版数と比較し、
受信した版数の方が小さい場合に、
データセンターは、
新版プログラム及びデータを暗号化した信号を送信し、通信処理部はその信号を受信して復号化し、前記新版プログラム及びデータを揮発性メモリーに書きこんだ後、更新処理部に更新信号を送信し、更新処理部は、前記更新信号をうけて旧版プログラム及びデータを第２の不揮発性メモリーに退避し、中央処理装置が待機状態になるのを見計らって、新版プログラム及びデータの書きこまれた揮発性メモリーの内容を中央処理装置の実行プログラムが書きこまれている不揮発性メモリーに書きこみ、新版のプログラムで中央処理装置を動作させ、新版のプログラムで中央処理装置を動作させることに失敗したとき、不揮発性メモリーの内容を旧版プログラム及びデータの書きこまれている第２の不揮発性メモリーの内容に書き換えて旧版プログラムで中央処理装置を動作させることを特徴とする端末装置のプログラムデータ遠隔更新システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、データセンターと多数の端末装置とを通信回線設備を介し、接続してサービスを行うシステムにおいて、センターから端末装置のプログラムデータを遠隔変更する方法に関するものである。
【０００２】
【従来の技術】
上記システムにおいて、ソフトウエアのバージョンアップにより、端末装置の例えば表示器に従来できなかった表示も可能にするなど、既設の端末装置の機能を変更することが行なわれている。従来の機能遠隔変更方法は、機能変更しようとする端末装置、つまり通信相手を特定するためにその端末装置のＩＤ番号のようなものだけを用いていた。例えば、データセンターと端末装置を中継する通信回線設備として一般公衆電話網を使用する場合は、端末装置のＩＤ番号としてそれぞれの電話番号を用いていた。また、センター装置と端末装置を中継する通信回線設備として閉域回線（ＬＡＮ）を使用する場合はそれぞれのＩＰアドレスを用いていた。システムによっては更に高位レイヤのプロトコルにおいて互いのＩＤを確認するものもあるが、ＩＤ番号のようなものを用いていることに変わりはない。一方、従来の機能変更方法の多くは、このような相手確認面の不安やシステムの複雑化を避け、直接、端末装置の置かれている場所に作業者が出向いてその端末装置をアクセスして変更する方法であって遠隔で行うことはなかった。
【０００３】
【発明が解決しようとする課題】
しかしながら端末装置の数が多くなるに従い、直接、端末装置の置かれる場所に出向いてアクセスする方法は、運用コストや機能変更に要する時間の面で不利になる。また、ＩＤ番号のようなものだけで通信相手を特定する機能遠隔変更方法では、セキュリティ処理や料金処理関連機能の変更などを実施するには信頼性、安全性が十分でない。
【０００４】
一方、信頼性、安全性を保ちながら、遠隔の通信相手とデータをやりとりする技術として、例えば“電子通信学会編現代暗号理論”や“辻井、笠原編暗号と情報セキュリティ”などに示されるように、ＤＥＳやＦＥＡＬなどの秘密鍵暗号方式や、それらを応用した相手認証法、鍵配送法が存在する。また、ＲＳＡなどの公開鍵暗号方式やそれらを応用したディジタル署名法、鍵配送法が存在する。
【０００５】
この発明は、データセンターから端末装置の機能を遠隔変更する方法において、前記のような暗号技術を採り入れた信頼性の高い相手認証方法を組み入れることにより、信頼性を保ちつつ、運用コストを押さえ、迅速で柔軟な機能変更を実現することを目的とする。
【０００６】
【課題を解決するための手段】
上記の目的を達成するために、請求項１の発明では、データセンターから通信回線を介して多数の端末装置で動作している複数のプログラム及びデータを更新するプログラムデータ遠隔更新システムにおいて、端末装置内には、通信処理部と、中央処理装置と、更新処理部と、揮発性メモリーと、前記複数のプログラム及びデータを格納する不揮発性メモリーと、更新するプログラム及びデータを退避させる第２の不揮発性メモリーを含み、データセンターには、端末装置の遠隔制御部と、更新用のプログラム及びデータを格納する外部記憶装置を含み、データセンターから端末装置に対して前記複数のプログラム及びデータを更新するにあたり、データセンターと通信処理部の間で秘密鍵対称暗号又は公開鍵非対称暗号技術を用いて相互認証を行ない、お互いに正当性を確認した場合に、前記遠隔制御部は、機能更新しようとする端末装置の新版のプログラムのプログラムファイル名と版数を外部記憶装置から読み出し、そのうちのプログラムファイル名を暗号化し、その暗号化したデータを端末装置に送信し、端末装置における通信処理部は、前記暗号化したデータを受信すると、その暗号化データを復号化して得られたプログラムファイル名を更新処理部に送信し、更新処理部は、受信したプログラムファイル名と一致する不揮発性メモリーに書きこまれたプログラムのプログラムファイル名の版数を読み出し、通信処理部に送信し、通信処理部は、受信した版数を暗号化してデータセンターに送信し、前記遠隔制御部は、暗号化したデータを受信して、暗号化データを復号化して版数を得て、新版のプログラムのプログラムファイル名の版数と比較し、受信した版数の方が小さい場合に、データセンターは、新版プログラム及びデータを暗号化した信号を送信し、通信処理部はその信号を受信して復号化し、前記新版プログラム及びデータを揮発性メモリーに書きこんだ後、更新処理部に更新信号を送信し、更新処理部は、前記更新信号をうけて旧版プログラム及びデータを第２の不揮発性メモリーに退避し、中央処理装置が待機状態になるのを見計らって、新版プログラム及びデータの書きこまれた揮発性メモリーの内容を中央処理装置の実行プログラムが書きこまれている不揮発性メモリーに書きこみ、新版のプログラムで中央処理装置を動作させ、新版のプログラムで中央処理装置を動作させることに失敗したとき、不揮発性メモリーの内容を旧版プログラム及びデータの書きこまれている第２の不揮発性メモリーの内容に書き換えて旧版プログラムで中央処理装置を動作させることを特徴とする端末装置のプログラムデータ遠隔更新システムを提供する。
【０００７】
削除
【０００８】
削除
【０００９】
削除
【００１０】
【作用】
請求項１に述べた手段により、データセンターと端末装置のなりすましや、新版のプログラム及びデータの内容を不正に読み取られることを防ぎながら、新版プログラム及びデータによって予期できないプログラムエラーが発生した場合でも、自動的に更新前の状態へ戻すことができ、これによって信頼性が向上する。
【００１１】
削除
【００１２】
削除
【００１３】
また、データセンターは端末装置からの更新するプログラム及びデータの版数の情報を得ることによって、端末装置で動作しているプログラムを必要以上に更新することを防ぐことができる。
【００１４】
【発明の実施の形態】
以下、本発明について図面を用いて詳細に説明する。
【００１５】
図１に本件発明請求項１の実施例を示す。図１は請求項１の実施例のブロック図である。まず、プログラム遠隔更新システムではデータセンター１と端末装置３とが通信回線２を介して接続されている。通信回線２は一般公衆電話網であっても良いし、閉域回線（ＬＡＮ）やインターネット回線、またその混合であっても良い。
【００１６】
データセンター１は遠隔制御部１０、保守センター１１、外部記憶装置１２で構成される。遠隔制御部１０は端末装置３の遠隔制御、保守センター１１はシステムの制御・運用監視を行ない、外部記憶装置１２は不揮発性データを格納する媒体であり、更新用の新版のプログラム及びデータを格納している。
【００１７】
端末装置３は、通信処理部４と中央処理装置９と、更新処理部５と、揮発性メモリー６と、不揮発性メモリー７、第２の不揮発性メモリー８から構成される。通信処理部４は遠隔制御部１０との間でプログラム及びデータの交換を行う。中央処理装置９は端末装置３の全体の処理を行う部分で、例えば外部への画像表示や、通信処理部４を介してデータセンター１以外のＷＥＢサイトやＡＳＰ間等とデータ交換などを行うが、これら全体の処理は不揮発性メモリー８に書きこまれているプログラムで行われている。揮発性メモリー６には、通信処理部４が受信して新版のプログラム及びデータに復号化したものを一時的に書きこまれる。
【００１８】
まず、新版のプログラム及びデータへの更新の手順を説明する。データセンター１の保守センター１１は遠隔制御部１０に対し、端末装置３のプログラム及びデータを外部記憶装置１２に書きこまれている新版のプログラム及びデータに更新するように指示すると、遠隔制御部１０は、端末装置３の通信処理部４との間で、秘密鍵対称暗号又は公開鍵非対称暗号技術を用いて相互認証する。
【００１９】
ここでは、秘密鍵暗号方式を用いた相互認証の手順の１例について図２のフローを用いて説明する。データセンター１と端末装置３は事前に秘密鍵を共有している。まずデータセンター１の遠隔制御部１０は乱数データを生成し（Ｓ１）、その乱数データを含むデータを通信相手の端末装置３の更新処理部５に送信する（Ｓ２）。これを端末装置３の通信処理部４は受信し（Ｓ３）、乱数データを生成し（Ｓ４）、データセンター識別子を不揮発性メモリー７から読み出し（Ｓ５）、生成した乱数データと受信した乱数データとデータセンター識別子とを含むデータを暗号化する（Ｓ６）。つぎに、該暗号化データを含むデータを、通信相手のデータセンター１の遠隔制御部１０に送信する（Ｓ７）。これをデータセンター１の遠隔制御部１０は受信し（Ｓ７）、受信データの暗号化部分を復号化し（Ｓ９）、端末装置３の通信処理部４が受信したとしている乱数データと以前に端末装置３の通信処理部４に送信した乱数データとを照合し（Ｓ１０）、更に、端末装置３の通信処理部４が発信したデータセンター識別子を自装置識別子と照合する（Ｓ１１）。以上のステップＳ１０、Ｓ１１がＯＫなら、データセンター１の遠隔制御部１０は、通信相手の端末装置３を正当な端末と認識する（Ｓ１２）。
【００２０】
つぎに、データセンター１の遠隔制御部１０は、以前に端末装置３の通信処理部４に送信した乱数データと端末装置３の通信処理部４が発生した受信乱数データとを含むデータを暗号化し（Ｓ１３）、その暗号化データを含むデータを、通信相手の端末装置３の通信処理部４に送信する（Ｓ１４）。これを端末装置３の通信処理部は受信し（Ｓ１５）、受信データの暗号化部分を復号化し（Ｓ１６）、そこに含まれる２種の乱数データを抽出し（Ｓ１７）、これら乱数データがそれぞれ、最初にセンター装置１から受信したデータならびに自装置３で発生してセンター装置１に送信したデータに合致するかどうかを確認する（Ｓ１８）。この確認がＯＫなら、端末装置３は、通信相手のデータセンター１を正当センターと認識する（Ｓ１９）。以上が相互認証手順の１例である。また、データの再利用抑止のために、送信データに時間情報やシーケンス番号を含める手順例もある。なお、以上で説明した相互認証で、データセンター１と端末装置２がどちらか一方でも正当性を認証できなかった場合、プログラムの遠隔更新作業を終了する。
【００２１】
次にデータセンター１と端末装置２がお互いに正当であると認証すると、遠隔制御部１０は、機能更新しようとする端末装置３の機能を実現する新版のプログラム及びデータを暗号化し、その暗号化データを含むプログラム及びデータを端末装置３に送信する。これを通信処理部４は受信して、その暗号化データを復号し、新版のプログラム及びデータを揮発性メモリー６に書込む。
【００２２】
通信処理部４はプログラムおよびデータの受信を終了すると更新信号を送信する。更新処理部５はこの更新信号を受けて不揮発性メモリー７の旧版プログラム及びデータを第２の不揮発性メモリー８に退避する。
【００２３】
更新処理部５は、中央処理装置９が待機状態になるのを見計らって、中央処理装置９の動作を停止させる。更新処理部５は新版プログラム及びデータの格納された揮発性メモリーの内容を中央処理装置９の実行プログラムが格納されている不揮発性メモリー８に書きこみ、中央処理装置９を再立ち上げさせる。また、新版のプログラムで中央処理装置を動作させることに失敗したとき、不揮発性メモリーの内容を旧版プログラム及びデータの書きこまれている第２の不揮発性メモリーの内容に書き換えて旧版プログラムで中央処理装置を再動作させる。
【００２４】
ここでは新版のプログラムで中央処理装置９を再動作させた後の処理について説明する。中央処理装置が正常に動作しているかどうかを確認する方法としてウオッチ・ドッグ・タイマーを用いる方法がある。ここでは、このウオッチ・ドッグ・タイマーを用いた中央処理装置の動作状態の確認方法について図３を用いて説明する。この図は、請求項１の端末装置３の構成にウオッチ・ドッグ・タイマー１３を加えたものである。ウオッチ・ドッグ・タイマーは、内部に加算タイマーを持っており、外部からＷＤＴリセット信号を受けるとタイマーのカウントの加算を０から開始し、カウント値がＴ秒に達すると中央処理装置リセット信号を出力して停止するようなものである。
【００２５】
まず、中央処理装置９はプログラム処理によって、Ｔ１秒の間隔でＷＤＴリセット信号を出力させるように設定されている。更新処理部５は中央処理装置９を再立ち上げさせ、中央処理装置が動作開始する時間が経過したのちにウオッチ・ドッグ・タイマー１３にＷＤＴリセット信号を出力し、その後Ｔ秒間、ウオッチ・ドッグ・タイマー１３の中央処理装置リセット信号を監視する。ウオッチ・ドッグ・タイマー１３はＷＤＴリセット信号を受けて、タイマーのカウントの加算を開始する。中央処理装置９が正常に動作している場合、ウオッチ・ドッグ・タイマー１３はカウント値がＴ秒に達する前に中央処理装置９からＷＤＴリセット信号をうけるため中央処理装置リセット信号を出力しない。また、中央処理装置９が正常に動作していない場合、ウオッチ・ドッグ・タイマー１３は、カウント値がＴ秒に達しても中央処理装置９からＷＤＴリセット信号をうけないため中央処理装置リセット信号を出力する。
【００２６】
更新処理部５は、ウオッチ・ドッグ・タイマー１３にＷＤＴリセット信号を出力した後のＴ秒間に、ウオッチ・ドッグ・タイマー１３から中央処理装置リセット信号が出力され無かった場合、正常と判断して更新処理を終了し、また、中央処理装置リセット信号が出力された場合、中央処理装置９が再動作に失敗したと判断する。
【００２７】
更新処理部５は、中央処理装置９の再動作に失敗したと判断した場合、不揮発性メモリーの内容を旧版プログラム及びデータの書きこまれている第２の不揮発性メモリー８の内容に書き換えを行い、旧版プログラムで中央処理装置を再動作させる。
【００２８】
次に図１の実施例を用いて他の例の説明を行なう。データセンター１と端末装置３の間の認証が確認された後の更新処理部５の様態である。
【００２９】
まず、遠隔制御部１０は、機能更新しようとする端末装置３の機能を実現する新版のプログラム及びデータを暗号化し、その暗号化データを含むプログラム及びデータを端末装置３に送信する。通信処理部４は、これを受信後、暗号化データを復号化して、新版のプログラム及びデータを揮発性メモリー６に書込む。
【００３０】
通信処理部４は新版のプログラム及びデータの受信が全て終了すると更新信号を出力し、更新処理部５は、この更新信号を受けて旧版のプログラムを第２の不揮発性メモリーに退避する。
【００３１】
ここでは、更新処理部５の旧版プログラムを退避させる方法について説明する。まず、更新処理部５は、揮発性メモリー６に書きこまれた新版のプログラム及びデータのうち、データに含まれる新版のプログラムのファイル名、プログラム容量、プログラム開始アドレス情報に基づいて、該当する不揮発性メモリー７の旧版のプログラムを第２の不揮発性メモリー８に退避させる。次に不揮発性メモリー７のプログラムを消去して該当する揮発性メモリー６のプログラムを書きこむ。
【００３２】
なお、不揮発性メモリー７、第２の不揮発性メモリー８にはフラッシュメモリを用いることができる。フラッシュメモリを用いる場合、その特性上メモリーをブロック毎に消去しなければプログラムの書きこみが行えないが、請求項２の方法を用いると、新版のプログラムのアドレス情報とプログラム容量をフラッシュメモリのブロックのアドレスと、ブロックのメモリー容量に一致させておけば、フラッシュメモリのブロック毎にプログラムの更新が実現できる。この時、更新用の第２の不揮発性メモリー８のメモリー容量は、不揮発性メモリー７の１ブロック分の大きさ分ほど搭載すればよい。この後、新版のプログラムで中央処理装置９を再立ち上げさせるが、この部分については、請求項１の実施例で説明しているので説明は省略する。
【００３３】
次に図１の実施例を用いて他の例の説明を行なう。データセンター１と端末装置３の間の認証が確認された後の、データセンター１の様態である。
【００３４】
データセンター１と端末装置３の間の認証が確認された後、遠隔制御部１０は、機能更新しようとする端末装置３の機能を実現する新版のプログラム及びデータを暗号化し、その暗号化データを含むプログラム及びデータを端末装置３に分割して送信する。これを通信処理部４は受信して、その暗号化データを復号化し、新版のプログラム及びデータを揮発性メモリー６に書込む。通信処理部４は新版のプログラム及びデータの受信が全て終了すると更新信号を出力し、前記データセンターは、前記新版プログラム及びデータを時分割して前記端末装置に送信するものである。なお、分割後のデータ容量は、中央処理装置９からの通信処理部のタスク処理に影響がない程度の大きさにする。
【００３５】
次に図１の実施例を用いてデータセンター１と端末装置３の間の認証が確認された後の更新処理部５の実施様態について説明を行う。
【００３６】
まず、遠隔制御部１０は、機能更新しようとする端末装置３の新版のプログラムのプログラムファイル名と版数を外部記憶装置１２から読み出し、そのうちのプログラムファイル名を暗号化し、その暗号化したデータを端末装置３に送信する。通信処理部４はこの暗号化したデータを受信して、その暗号化データを復号化して得られたプログラムファイル名を、更新処理部５に送信する。
【００３７】
更新処理部５は、受信したプログラムファイル名と一致する不揮発性メモリー７に書きこまれたプログラムのプログラムファイル名の版数を読み出し、通信処理部４に送信する。
【００３８】
通信処理部４は、受信した版数を暗号化してデータセンター３に送信する。遠隔制御部１０はこの暗号化したデータを受信して、その暗号化データを復号化して版数を得て、新版のプログラムのプログラムファイル名の版数と比較する。新版のプログラムファイル名と版数のうち、受信した版数の方が小さければ、新版プログラム及びデータの遠隔更新をおこなう。また、新版のプログラムファイル名と版数のうち、受信した版数の方が大きければ更新処理を行わない。なお、これ以降の遠隔更新作業については、請求項１〜３の実施例と同じなので省略する。
【００３９】
【発明の効果】
請求項１に述べた手段により、データセンターと端末装置のなりすましや、新版のプログラム及びデータの内容を不正に読み取られることを防ぎながら、新版プログラム及びデータによって予期できないプログラムエラーが発生した場合でも、自動的に更新前の状態へ戻すことができ、これによって信頼性が向上する。
【００４０】
削除
【００４１】
削除
【００４２】
また、データセンターは、端末装置の更新するプログラム及びデータの版数の情報を得ることによって、端末装置で動作しているプログラムを必要以上に更新することを防ぐことができる。
【図面の簡単な説明】
【図１】実施例の説明の図
【図２】相互認証のフロー図
【図３】中央処理装置が正常に作動しているかどうかを検証する方法を説明した図
【符号の説明】
１  データセンター
２  通信回線設備
３  端末装置
４  通信処理部
５  更新処理部
６  揮発性メモリー
７  不揮発性メモリー
８  第２の不揮発性メモリー
９  中央処理装置
１０  遠隔制御部
１１  保守センター
１２  外部記憶装置
【図１】
0004755772.tif 000002
【図２】
0004755772.tif 000003
【図３】
0004755772.tif 000004