JP4597551B2 - Software update device, software update system, software update method, and program - Google Patents
Software update device, software update system, software update method, and program Download PDFInfo
- Publication number
- JP4597551B2 JP4597551B2 JP2004058270A JP2004058270A JP4597551B2 JP 4597551 B2 JP4597551 B2 JP 4597551B2 JP 2004058270 A JP2004058270 A JP 2004058270A JP 2004058270 A JP2004058270 A JP 2004058270A JP 4597551 B2 JP4597551 B2 JP 4597551B2
- Authority
- JP
- Japan
- Prior art keywords
- update
- software
- communication path
- updated
- authentication
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
- Stored Programmes (AREA)
Description
この発明は、ネットワークを介して通信可能な被更新装置のソフトウェアを更新するソフトウェア更新装置、このようなソフトウェア更新装置と被更新装置とによって構成されるソフトウェア更新システム、上記のソフトウェア更新装置によるソフトウェア更新方法、コンピュータを上記のソフトウェア更新装置として機能させるためのプログラムに関する。そして、更新すべきソフトウェアとしては、例えばファームウェアやアプリケーションプログラム等が考えられる。 The present invention relates to a software update device that updates software of a device to be updated that can communicate via a network, a software update system configured by such a software update device and the device to be updated, and software update by the software update device described above. The present invention relates to a method and a program for causing a computer to function as the software update device. As software to be updated, for example, firmware and application programs can be considered.
従来から、プリンタ,FAX装置,コピー機,スキャナ,デジタル複合機等の画像処理装置において、ハードウェアの基本的な制御を行うためのソフトウェアであるファームウェアを更新可能とすることが行われている。そして、特許文献1には、サービスセンタが画像形成装置からファームウェアのバージョン情報を取得し、バージョンが古く、更新が必要だと判断した場合に通信コントロール装置を介して画像形成装置にファームウェアを送信してファームウェアの更新を行わせる画像形成装置管理システムが記載されている。
ところで、特許文献1に記載の画像形成装置管理システムは、基本的にサービスセンタと通信コントロール装置との間の通信は公衆回線(PSTN)や専用回線、通信コントロール装置と画像形成装置との間の通信はRS−485規格の通信経路を用いて行うものである。
これに対し、近年では、汎用性や拡張性を重視し、管理装置と被管理装置との間の通信を、インターネットやローカルエリアネットワーク(LAN)等のネットワークを介して行う管理システムが提案されている。そして、このような管理システムにおいても、特許文献1の場合と同様に、管理装置から被管理装置にファームウェアを送信してファームウェアの更新を行わせることが考えられる。
By the way, in the image forming apparatus management system described in
On the other hand, in recent years, a management system in which communication between a management device and a managed device is performed via a network such as the Internet or a local area network (LAN) has been proposed with emphasis on versatility and expandability. Yes. In such a management system as well, as in the case of
この場合の処理として考えられるのは、例えば図26のシーケンス図に示す処理である。なお、この場合においては、管理装置はファームウェア更新装置(ファーム更新装置)、被管理装置はファームウェア(以下単に「ファーム」ともいう)の被更新装置であると考えられる。
図26に示す処理においては、ファーム更新装置91と被更新装置92とはFTP(File Transfer Protocol)を用いて通信を行うが、予めファーム更新装置91にFTPのためのIDとパスワードを設定しておき、これらをファーム更新装置91と被更新装置92の双方に記憶させておくものとする。
What can be considered as processing in this case is, for example, the processing shown in the sequence diagram of FIG. In this case, it is considered that the management device is a firmware update device (firmware update device), and the managed device is a firmware update device (hereinafter also simply referred to as “firmware”).
In the processing shown in FIG. 26, the
この処理において、まずファーム更新装置91が、一定時間毎あるいは所定のイベントが発生した場合等に、バージョン情報取得処理を実行し、被更新装置92にIDとパスワードを送信してFTPによる接続を要求する。IDとパスワードはFTPの規格に従ったものであり、接続を要求された被更新装置92はこれらによってファーム更新装置91を認証することができる。そして、このIDとパスワードを記憶しているものと比較し、一致すれば認証成功として接続を確立する(S11)。ID又はパスワードが一致しなかった場合には接続は確立されず、エラーとなって処理は終了する。
接続が確立されると、ファーム更新装置91は被更新装置92にファームウェアのバージョン情報を送信するよう要求し、被更新装置92がこれに応答してファームのバージョン情報を送信する(S12)。その後、ファーム更新装置91は被更新装置92との接続を切断する(S13)。以上がバージョン情報取得処理である。
In this processing, first, the
When the connection is established, the
次に、ファーム更新装置91は取得したファームのバージョン情報をもとに更新の要否を判断する。既に最新のバージョンのファームが被更新装置92にインストールされていれば、更新は不要である。ここで更新不要と判断すれば処理を終了し、その後トリガが発生した場合に再度バージョン情報取得処理を行うことになる。しかし、更新が必要と判断すれば(S14)、次のファーム送信処理を実行する。
この処理では、まずステップS11の場合と同様に被更新装置92にIDとパスワードを送信し、接続を確立する(S15)。そして、更新用のファームを被更新装置92に送信する(S16)。被更新装置92側では、これを受信すると、ファームの更新処理を行い(S17)、更新が完了すると自身をリセットし、再起動して新たなファームを有効にする(S18)。また、被更新装置92のリセットにより、FTP接続は切断される。以上がファーム送信処理である。
以上の処理によって、必要な場合に被更新装置92のファームを更新することができる。そして、再度バージョン情報取得処理やファーム送信処理を行う場合も、シーケンス図の続きに同じステップ番号で示したように、同じパスワードを用いて同様な処理を行う。
Next, the
In this process, first, as in the case of step S11, the ID and password are transmitted to the updated
Through the above processing, the firmware of the
しかし、FTPによる通信は、データを暗号化しないため、IDやパスワードも平文のままネットワーク上を転送されることになる。従って、図27に示すように、ファーム更新装置91と被更新装置92との間の通信経路をパケットモニタ93によってモニタリングすれば、転送されるデータパケットからIDやパスワードを取り出すことができてしまう。そして、これを悪用すれば、第3者がファーム更新装置91になりすまして被更新装置92にアクセスし、ファームを不正なものに更新させることも可能になってしまう。
従って、図26に示したようにFTPによって送信したパスワードを何度も繰り返して用いることは、安全面で問題があると言える。
以上のような点は、更新対象のソフトウェアがファームウェアでなく、それ以外の例えばアプリケーションプログラムであっても、同様に問題となる。
However, since communication by FTP does not encrypt data, the ID and password are transferred over the network with plain text. Therefore, as shown in FIG. 27, if the communication path between the
Therefore, as shown in FIG. 26, it can be said that it is problematic in terms of safety to repeatedly use a password transmitted by FTP.
The above-mentioned points are similarly problematic even when the software to be updated is not firmware, but other application programs, for example.
なお、特許文献1に記載のようにPSTN,専用回線,RS−485のような通信経路を用いた場合には、独自の通信プロトコルを用いて通信することになるため、各装置をハード的に解析し、プロトコルを知得しなければ通信をモニタリングすることができない。従って、モニタリングが困難であるので、このような安全面の問題は発生せず、そのためこの問題を解決する手段についても特に記載されていない。
しかし、TCP/IP(Transmission Control Protocol/Internet Protocol)等のインターネットの標準技術を利用してソフトウェア更新システムを構築しようとする場合には、このような安全面の問題の解決は重要な課題となる。
As described in
However, when trying to build a software update system using Internet standard technology such as TCP / IP (Transmission Control Protocol / Internet Protocol), the solution of such a safety problem is an important issue. .
ところで、上記の問題を解消するためには、通信内容を暗号化する通信プロトコルとして例えばSSL(Secure Socket Layer)と呼ばれるプロトコルが開発されており、広く用いられている。このプロトコルを用いて通信を行うことにより、公開鍵暗号方式と共通鍵暗号方式とを組み合わせ、通信相手の認証を行うと共に、情報の暗号化により改竄及び盗聴の防止を図ることができる。
このようなSSLによる通信を行えば、ファーム更新装置91と被更新装置92とが安全に共通鍵を交換することができ、通信を安全に行うことができる。しかしながら、SSLのように暗号化処理を含む通信方式は、認証やデータ転送に係る処理負荷が、FTPのように暗号化を行わない通信方式よりも大きくなってしまう。
特に、ソフトウェアのように大きなサイズのデータを送信する場合には、この影響が大きい。またもちろん、FTPとSSL以外のプロトコルを使用する場合でも、処理負荷の大小の問題は同様に存在する。
By the way, in order to solve the above problem, a protocol called SSL (Secure Socket Layer) has been developed and widely used as a communication protocol for encrypting communication contents. By performing communication using this protocol, it is possible to combine a public key cryptosystem and a common key cryptosystem to authenticate a communication partner and to prevent tampering and eavesdropping by encrypting information.
If such SSL communication is performed, the
In particular, this effect is significant when transmitting large data, such as software. Of course, even when a protocol other than FTP and SSL is used, there is a similar problem in terms of processing load.
この発明は、これらの問題を解決し、ネットワークを介して通信可能な被更新装置のソフトウェアをソフトウェア更新装置によって更新する場合において、高い安全性を確保しながら更新処理の負荷を低減することを目的とする。 An object of the present invention is to solve these problems and reduce the load of update processing while ensuring high safety when updating software of a device to be updated that can communicate via a network by a software update device. And
上記の目的を達成するため、この発明は、ネットワークを介して被更新装置と通信可能なソフトウェア更新装置において、上記被更新装置のソフトウェアを更新する場合に更新用認証情報を生成し、これを暗号化された第1の通信経路で上記被更新装置に送信して記憶するよう要求する認証情報設定手段と、上記被更新装置に上記更新用認証情報を送信し、その認証情報による認証処理を要求する認証要求手段と、その認証処理が成功した場合に更新用ソフトウェアを上記第1の通信経路よりも処理負荷の小さい第2の通信経路で上記被更新装置に送信する送信手段と、上記被更新装置との通信に基づき、上記被更新装置においてソフトウェアの上記更新用ソフトウェアへの更新が成功したと判断した場合に、上記更新用認証情報に上書きさせるための消去用情報を生成し、これを上記第1の通信経路で上記被更新装置に送信して上記更新用認証情報に上書きして記憶するよう要求する認証情報消去手段とを設けたものである。 In order to achieve the above object, according to the present invention, in a software update device capable of communicating with an update target device via a network, when updating the software of the update target device, update authentication information is generated and encrypted. Authentication information setting means for requesting transmission and storage to the device to be updated through the first communication path, and transmitting the authentication information for updating to the device to be updated and requesting authentication processing by the authentication information Authentication requesting means for transmitting, when the authentication process is successful, transmitting means for transmitting the update software to the updated apparatus through a second communication path having a processing load smaller than that of the first communication path, and the updated data Based on the communication with the device, when it is determined that the update of the software to the update software has succeeded in the updated device, the update authentication information is overwritten. It generates erasing information order, which one provided the authentication information erasing means for requesting to store in sending to the target update device in the first communication path to overwrite the updated authentication information It is.
このようなソフトウェア更新装置において、上記被更新装置のソフトウェアの更新を、外部からのソフトウェア更新要求に応じて行い、その結果をその更新要求の要求元に返す手段を設けるとよい。 Oite Such software update device, a software update of the target update device performs in accordance with the software update request from the outside, it may be provided with means to return the result to the request source of the update request.
さらに、上記被更新装置から起動した旨を示す起動通知を受け付ける手段と、上記更新用ソフトウェアの送信後に上記被更新装置から上記起動通知を受け付けた場合にその被更新装置からソフトウェアのバージョン情報を取得し、送信した更新用ソフトウェアのバージョン情報と比較して更新の成否を確認する手段とを設けるとよい。
さらにまた、上記第1の通信経路をSSLによる通信を行う通信経路とし、上記第2の通信経路をFTPによる通信を行う通信経路とするとよい。
あるいは、上記第1の通信経路を、送信すべきデータを暗号化して送信する通信経路とし、上記第2の通信経路を、送信すべきデータを暗号化しないで送信する通信経路としてもよい。
Further, means for receiving a start notification indicating that the device has been started from the device to be updated, and obtaining the software version information from the device to be updated when the start notification is received from the device to be updated after transmission of the update software And means for confirming the success / failure of the update by comparing with the version information of the transmitted update software.
Furthermore, the first communication path may be a communication path for performing SSL communication, and the second communication path may be a communication path for performing FTP communication.
Alternatively, the first communication path may be a communication path for encrypting data to be transmitted, and the second communication path may be a communication path for transmitting data to be transmitted without encryption.
また、この発明のソフトウェア更新システムは、ネットワークを介して互いに通信可能なソフトウェア更新装置と被更新装置とによって構成されるソフトウェア更新システムにおいて、上記ソフトウェア更新装置に、上記被更新装置のソフトウェアを更新する場合に更新用認証情報を生成し、これを暗号化された第1の通信経路で上記被更新装置に送信して記憶するよう要求する認証情報設定手段と、上記被更新装置に上記更新用認証情報を送信し、その認証情報による認証処理を要求する認証要求手段と、その認証処理が成功した場合に更新用ソフトウェアを上記第1の通信経路よりも処理負荷の小さい第2の通信経路で上記被更新装置に送信する送信手段と、上記被更新装置との通信に基づき、上記被更新装置においてソフトウェアの上記更新用ソフトウェアへの更新が成功したと判断した場合に、上記更新用認証情報に上書きさせるための消去用情報を生成し、これを上記第1の通信経路で上記被更新装置に送信して上記更新用認証情報に上書きして記憶するよう要求する認証情報消去手段とを設け、上記被更新装置に、上記更新用認証情報を記憶するよう要求された場合にこれを記憶する記憶手段と、上記認証処理を要求された場合に、受信した更新用認証情報と上記記憶手段に記憶している更新用認証情報とを用いて認証処理を行って結果を返す認証手段と、その認証処理が成功した場合に上記更新用ソフトウェアを受信し、自機のソフトウェアをその更新用ソフトウェアに更新する更新手段と、上記更新装置と通信して、その更新装置に上記更新手段によるソフトウェアの更新が成功したことを確認させる手段と、上記消去用情報を記憶するよう要求された場合にこれを上記更新用認証情報に上書きして記憶する手段とを設けたものである。 The software update system of the present invention is a software update system configured by a software update device and an update target device that can communicate with each other via a network, and updates the software of the update target device to the software update device. Authentication information setting means for generating authentication information for updating and requesting that it be transmitted to and stored in the device to be updated via the encrypted first communication path, and for updating the device to be updated Authentication request means for transmitting information and requesting an authentication process based on the authentication information; and when the authentication process is successful, the update software is transmitted on the second communication path having a processing load smaller than that of the first communication path. Based on the communication between the transmission means for transmitting to the device to be updated and the device to be updated, the software on the device to be updated When it is determined that the update to the update software has been successfully completed, erasure information for overwriting the update authentication information is generated and transmitted to the update target device via the first communication path to An authentication information erasure unit that requests to store the update authentication information by overwriting, and a storage unit that stores the update authentication information when requested to store the update authentication information; When the authentication process is requested, the authentication means that performs the authentication process using the received update authentication information and the update authentication information stored in the storage means and returns the result, and the authentication process succeeded. If the receiving software for the update, and updating means for updating the software of its own to the update software, communicates with the update device software by the update means to the update unit Means for confirming that the update was successful, in which it when it is required to store the erasure information and a means for storing and overwrite in the update authentication information.
このようなソフトウェア更新システムにおいて、上記被更新装置に、上記ソフトウェアの更新が成功したことを確認させる手段として、上記更新手段によるソフトウェアの更新後に自機を再起動する手段と、起動時に上記ソフトウェア更新装置にその旨を示す起動通知を送信する手段と、上記ソフトウェア更新装置からの要求に応じてその装置にソフトウェアのバージョン情報を送信する手段とを設け、上記ソフトウェア更新装置に、上記更新用ソフトウェアの送信後に上記被更新装置から上記起動通知を受け付けた場合にその被更新装置に対してソフトウェアのバージョン情報の送信を要求してそのバージョン情報を取得し、送信した更新用ソフトウェアのバージョン情報と比較して更新の成否を確認する手段を設けるとよい。
さらにまた、上記第1の通信経路をSSLによる通信を行う通信経路とし、上記第2の通信経路をFTPによる通信を行う通信経路とするとよい。
あるいは、上記第1の通信経路を、送信すべきデータを暗号化して送信する通信経路とし、上記第2の通信経路を、送信すべきデータを暗号化しないで送信する通信経路としてもよい。
In such a software update system, as means for making the device to be updated confirm that the software update has been successful, means for restarting the own device after the software update by the update means, and the software update at startup Means for transmitting an activation notification to that effect to the device, and means for transmitting software version information to the device in response to a request from the software updating device. When the activation notification is received from the update target device after transmission, the update target device is requested to transmit software version information to acquire the version information, and compared with the transmitted version information of the update software. It is preferable to provide a means for confirming the success or failure of the update.
Furthermore, the first communication path may be a communication path for performing SSL communication, and the second communication path may be a communication path for performing FTP communication.
Alternatively, the first communication path may be a communication path for encrypting data to be transmitted, and the second communication path may be a communication path for transmitting data to be transmitted without encryption.
また、この発明のソフトウェア更新方法は、ソフトウェア更新装置によって、ネットワークを介して通信可能な被更新装置のソフトウェアを更新するソフトウェア更新方法において、上記被更新装置のソフトウェアを更新する場合に更新用認証情報を生成し、これを暗号化された第1の通信経路で上記被更新装置に送信して記憶させ、上記被更新装置に上記更新用認証情報を送信してその認証情報による認証処理を行わせ、その認証処理が成功した場合に更新用ソフトウェアを上記第1の通信経路よりも処理負荷の小さい第2の通信経路で上記被更新装置に送信してソフトウェアの更新を行わせ、上記被更新装置との通信に基づき、上記被更新装置においてソフトウェアの上記更新用ソフトウェアへの更新が成功したと判断した場合に、上記更新用認証情報に上書きさせるための消去用情報を生成し、これを上記第1の通信経路で上記被更新装置に送信して上記更新用認証情報に上書きして記憶させるようにしたものである。 The software update method of the present invention is a software update method for updating software of a device to be updated that can be communicated via a network by the software update device. Is transmitted to the updated device via the encrypted first communication path and stored, and the updated authentication information is transmitted to the updated device to perform authentication processing using the authentication information. , the authentication process the update software transmitted to the target update device with a small second communication path processing load than the first communication path when succeeds to perform the software update, the target update device If it is determined that the update of the software to the update software is successful in the update target device based on communication with It generates erasing information for overwriting the new authentication information, which is obtained by the so that by sending to the target update device is stored by overwriting on the updated authentication information in the first communication path is there.
このようなソフトウェア更新方法において、上記被更新装置のソフトウェアの更新を、外部からのソフトウェア更新要求に応じて行い、その結果をその更新要求の要求元に返すようにするとよい。 Oite Such software updating method, a software update of the target update device performs in accordance with the software update request from the outside, may be to return the result to the request source of the update request.
さらに、上記被更新装置から起動した旨を示す起動通知を受け付け、上記更新用ソフトウェアの送信後に上記被更新装置から上記起動通知を受け付けた場合にその被更新装置からソフトウェアのバージョン情報を取得し、送信した更新用ソフトウェアのバージョン情報と比較して更新の成否を確認するようにするとよい。
さらにまた、上記第1の通信経路がSSLによる通信を行う通信経路であり、上記第2の通信経路がFTPによる通信を行う通信経路であるとよい。
あるいは、上記第1の通信経路を、送信すべきデータを暗号化して送信する通信経路とし、上記第2の通信経路を、送信すべきデータを暗号化しないで送信する通信経路としてもよい。
Further, when receiving an activation notification indicating that the device has been activated from the updated device, and receiving the activation notification from the updated device after the transmission of the update software, obtain software version information from the updated device, The success or failure of the update may be confirmed by comparing with the transmitted version information of the update software.
Furthermore, the first communication path may be a communication path that performs SSL communication, and the second communication path may be a communication path that performs FTP communication.
Alternatively, the first communication path may be a communication path for encrypting data to be transmitted, and the second communication path may be a communication path for transmitting data to be transmitted without encryption.
また、この発明のプログラムは、ネットワークを介して被更新装置と通信可能なソフトウェア更新装置を制御するコンピュータを、上記被更新装置のソフトウェアを更新する場合に更新用認証情報を生成し、これを暗号化された第1の通信経路で上記被更新装置に送信して記憶するよう要求する認証情報設定手段と、上記被更新装置に上記更新用認証情報を送信し、その認証情報による認証処理を要求する認証要求手段と、その認証処理が成功した場合に更新用ソフトウェアを上記第1の通信経路よりも処理負荷の小さい第2の通信経路で上記被更新装置に送信する送信手段と、上記被更新装置との通信に基づき、上記被更新装置においてソフトウェアの上記更新用ソフトウェアへの更新が成功したと判断した場合に、上記更新用認証情報に上書きさせるための消去用情報を生成し、これを上記第1の通信経路で上記被更新装置に送信して上記更新用認証情報に上書きして記憶するよう要求する認証情報消去手段として機能させるためのプログラムである。 Further, the program of the present invention generates authentication information for update when a computer that controls a software update device that can communicate with the update target device via a network updates the software of the update target device, and encrypts this information. Authentication information setting means for requesting transmission and storage to the device to be updated through the first communication path, and transmitting the authentication information for updating to the device to be updated and requesting authentication processing by the authentication information Authentication requesting means for transmitting, when the authentication process is successful, transmitting means for transmitting the update software to the updated apparatus through a second communication path having a processing load smaller than that of the first communication path, and the updated data When it is determined that the update of the software to the update software has succeeded in the updated device based on communication with the device, the update authentication information is included in the update authentication information. Generates erasing information for write, which functions as the authentication information erasing means for requesting to store in sending to the target update device in the first communication path to overwrite the updated authentication information It is a program to make it.
このようなプログラムにおいて、上記コンピュータを、上記被更新装置のソフトウェアの更新を外部からのソフトウェア更新要求に応じて行い、その結果をその更新要求の要求元に返す手段として機能させるためのプログラムをさらに含めるとよい。 In such a program, the computer performs in accordance with the software update request from outside the software update of the target update device, a program for functioning as a means for returning the result to the request source of the update request further Should be included.
また、上記コンピュータを、上記被更新装置から起動した旨を示す起動通知を受け付ける手段と、上記更新用ソフトウェアの送信後に上記被更新装置から上記起動通知を受け付けた場合にその被更新装置からソフトウェアのバージョン情報を取得し、送信した更新用ソフトウェアのバージョン情報と比較して更新の成否を確認する手段として機能させるためのプログラムをさらに含めるとよい。
さらに、上記第1の通信経路をSSLによる通信を行う通信経路とし、上記第2の通信経路をFTPによる通信を行う通信経路とするとよい。
あるいは、上記第1の通信経路を、送信すべきデータを暗号化して送信する通信経路とし、上記第2の通信経路を、送信すべきデータを暗号化しないで送信する通信経路としてもよい。
A means for receiving a start notification indicating that the computer has been started from the device to be updated; A program for obtaining version information and making it function as a means for confirming the success or failure of the update by comparing with the version information of the transmitted update software may be further included.
Furthermore, the first communication path may be a communication path for performing SSL communication, and the second communication path may be a communication path for performing FTP communication.
Alternatively, the first communication path may be a communication path for encrypting data to be transmitted, and the second communication path may be a communication path for transmitting data to be transmitted without encryption.
以上のようなこの発明のソフトウェア更新装置、ソフトウェア更新システム、ソフトウェア更新方法によれば、ネットワークを介して通信可能な被更新装置のソフトウェアをソフトウェア更新装置によって更新する場合において、高い安全性を確保しながら更新処理の負荷を低減することができる。
また、この発明のプログラムによれば、コンピュータにソフトウェア更新装置を制御させてこのようなソフトウェア更新装置の特徴を実現し、同様な効果を得ることができる。
According to the software update device, the software update system, and the software update method of the present invention as described above, high security is ensured when the software of the update target device that can communicate via the network is updated by the software update device. However, the load of update processing can be reduced.
Further, according to the program of the present invention, the software update device can be controlled by a computer to realize the features of such a software update device, and the same effect can be obtained.
以下、この発明の好ましい実施の形態を図面を参照して説明する。
まず、この発明によるソフトウェア更新装置及びソフトウェア更新システムの構成例について説明する。図1は、そのソフトウェア更新システムを含む遠隔管理システムの構成の一例を示す概念図であり、この図において仲介装置101がソフトウェア更新装置、被管理装置10が被更新装置である。管理装置102をソフトウェア更新装置としたり、この場合に仲介装置101を被更新装置としたりすることもできるが、ここでは、仲介装置101がソフトウェア更新装置、被管理装置10が被更新装置である例について説明する。また、ここでは更新対象のソフトウェアがファームウェアである場合を例として説明するが、これがアプリケーションプログラム等の他のソフトウェアでもよいことはもちろんである。
Preferred embodiments of the present invention will be described below with reference to the drawings.
First, a configuration example of a software update device and a software update system according to the present invention will be described. FIG. 1 is a conceptual diagram showing an example of the configuration of a remote management system including the software update system. In this figure, the
このソフトウェア更新システムは、プリンタ,FAX装置,デジタル複写機,スキャナ装置,デジタル複合機等の画像処理装置や、ネットワーク家電,自動販売機,医療機器,電源装置,空調システム,ガス・水道・電気等の計量システム,汎用コンピュータ,自動車,航空機等に通信機能を持たせた通信装置を被管理装置10とする遠隔管理システムの一部として構成される。そして、必要な場合に仲介装置101から被管理装置10にファームウェアを送信し、被管理装置10のファームウェアを更新させる機能を有する。
また、上記の遠隔管理システムは、被管理装置10とLAN(ローカルエリアネットワーク)によって接続された遠隔管理仲介装置である仲介装置101、更に仲介装置101とインタネット103(公衆回線等の他のネットワークでもよい)を介して接続されるサーバ装置として機能する管理装置102を備え、当該管理装置102が、仲介装置101を介して各被管理装置10を集中的に遠隔管理できるようにしたものである。当該仲介装置101及び被管理装置10は、その利用環境に応じて多様な階層構造を成す。
This software update system includes image processing devices such as printers, fax machines, digital copiers, scanners, digital multifunction devices, network home appliances, vending machines, medical equipment, power supply devices, air conditioning systems, gas, water, electricity, etc. 1 is configured as a part of a remote management system in which a communication device having a communication function in a weighing system, a general-purpose computer, an automobile, an aircraft, or the like is used as the managed
Further, the remote management system described above is an
例えば、図1に示す設置環境Aでは、管理装置102とHTTPによる直接的なコネクションを確立できる仲介装置101aが、被管理装置10a及び10bを従える単純な階層構造になっているが、同図に示す設置環境Bでは、4台の被管理装置10を設置する為、1台の仲介装置101を設置しただけでは負荷が大きくなる。その為、管理装置102とHTTPによる直接的なコネクションを確立できる仲介装置101bが、被管理装置10c及び10dだけでなく、他の仲介装置101cを従え、この仲介装置101cが被管理装置10e及び10fを更に従えるという階層構造を形成している。この場合、被管理装置10e及び10fを遠隔管理するために管理装置102から発せられた情報は、仲介装置101bとその下位のノードである仲介装置101cとを経由して、被管理装置10e又は10fに到達することになる。
For example, in the installation environment A shown in FIG. 1, the
また、設置環境Cのように、被管理装置10に仲介装置101の機能を併せ持たせた仲介機能付被管理装置11a,11bを、別途仲介装置を介さずにインタネット103によって管理装置102に接続するようにしてもよい。
図示はしていないが、仲介機能付被管理装置11の下位にさらに被管理装置10を接続することもできる。
なお、各設置環境には、セキュリティ面を考慮し、ファイアウォール104を設置する。
Further, as in the installation environment C, managed
Although not shown, the managed
Note that a firewall 104 is installed in each installation environment in consideration of security.
このような遠隔管理システムにおいて、仲介装置101は、これに接続された被管理装置10の制御管理のためのアプリケーションプログラムを実装している。
管理装置102は、各仲介装置101の制御管理、更にはこの仲介装置101を介した被管理装置10の制御管理を行うためのアプリケーションプログラムを実装している。そして、被管理装置10も含め、この遠隔管理システムにおけるこれら各ノードは、RPC(Remote Procedure Call)により、相互の実装するアプリケーションプログラムのメソッドに対する処理の依頼である「要求」を送信し、この依頼された処理の結果である「応答」を取得することができるようになっている。
In such a remote management system, the
The
すなわち、仲介装置101又はこれと接続された被管理装置10では、管理装置102への要求を生成してこれを管理装置102へ引き渡し、この要求に対する応答を取得できる一方で、管理装置102は、上記仲介装置101側への要求を生成してこれを仲介装置101側へ引き渡し、この要求に対する応答を取得できるようになっている。この要求には、仲介装置101に被管理装置10に対して各種要求を送信させ、被管理装置10からの応答を仲介装置101を介して取得することも含まれる。
なお、RPCを実現するために、SOAP(Simple Object Access Protocol:ソープ),HTTP(HyperText Transfer Protocol),FTP,COM(Component Object Model),CORBA(Common Object Request Broker Architecture)等の既知のプロトコル(通信規格),技術,仕様などを利用することができる。
That is, the
In order to realize RPC, a known protocol (communication) such as SOAP (Simple Object Access Protocol: SOAP), HTTP (HyperText Transfer Protocol), FTP, COM (Component Object Model), CORBA (Common Object Request Broker Architecture), etc. Standards), technology, specifications, etc. can be used.
この送受信のデータ送受モデルを図2の概念図に示す。
(A)は、被管理装置10で管理装置102に対する要求が発生したケースである。このケースでは、被管理装置10が被管理装置側要求aを生成し、これを仲介装置101を経由して受け取った管理装置102がこの要求に対する応答aを返すというモデルになる。同図に示す仲介装置101は複数であるケースも想定できる(上記図1に示す設置環境B)。なお、(A)では、応答aだけでなく応答遅延通知a′を返信するケースが表記されている。これは、管理装置102が、仲介装置101を経由して被管理装置側要求を受け取って、当該要求に対する応答を即座に返せないと判断したときには、応答遅延通知を通知して一旦接続状態を切断し、次回の接続の際に上記要求に対する応答を改めて引き渡す構成としているためである。
The transmission / reception data transmission / reception model is shown in the conceptual diagram of FIG.
(A) is a case where a request to the
(B)は、管理装置102で被管理装置10に対する要求が発生したケースである。このケースでは、管理装置102が管理装置側要求bを生成し、これを仲介装置101を経由して受け取った被管理装置10が、当該要求に対する応答bを返すというモデルになっている。なお、(B)のケースでも、応答を即座に返せないときに応答遅延通知b′を返すことは(A)のケースと同様である。
(B) is a case where a request for the managed
次に、図1に示す管理装置102の物理的構成について説明すると、当該管理装置102は、不図示のCPU、ROM、RAM、不揮発性メモリ、ネットワークインタフェースカード(以下NICという)等を備えている。
また、図1に示す仲介装置101の物理的構成は、図3に示す通りである。
すなわち、CPU52,SDRAM53,フラッシュメモリ54,RTC(リアルタイムクロック)55,Op-Port(操作部接続ポート)56,PHY(物理メディアインタフェース)57,モデム58,HDD制御部59,拡張I/F(インターフェース)60,RS232I/F61,RS485I/F62,HDD(ハードディスクドライブ)63等を備えている。そして、当該仲介装置15はPHY57を介してLANと接続される。また、そのLANを介して被管理装置10と接続されるものである。RS232I/F61及びRS485I/F62を介しても被管理装置10と接続可能であるが、ここではこのI/Fは使用しないものとする。
Next, the physical configuration of the
The physical configuration of the
That is,
なお、仲介機能付被管理装置11については、仲介装置101の機能を実現するためにこれらのユニットを単に被管理装置10に付加しても良いが、被管理装置10に備えるCPU,ROM,RAM等のハードウェア資源を利用し、CPUに適当なアプリケーションやプログラムモジュールを実行させることによって仲介装置101の機能を実現することもできる。
As for the managed
図4は、仲介装置101のソフトウェア構成の一例を示すブロック図である。この図に示すように、仲介装置101のソフトウェアは、アプリケーション層70,サービス層80,プロトコル層90の3層からなっている。そして、これらのソフトウェアを構成するプログラムはHDD63やSDRAM53、あるいはフラッシュメモリ54上に記憶され、必要に応じて読み出されてCPU52によって実行される。そしてCPU52は、これらのプログラムを必要に応じて実行し、装置の制御を行うことにより、各機能(認証情報設定手段,認証要求手段,送信手段,その他の手段としての機能)を実現することができる。
FIG. 4 is a block diagram illustrating an example of a software configuration of the
このソフトウェアにおいて、アプリケーション層70には、デバイスコントロールメソッド群71とNRS(ニュー・リモート・サービス)アプリケーションメソッド群72とを有する。
そして、デバイスコントロールメソッド群71は、管理対象情報設定,機器設定,ソフトウェアアップデート,ポーリング設定変更,ログ出力,起動処理の各メソッドを備え、この実施形態の特徴に係るファームウェア更新処理を始め、被管理装置の情報管理や通信の設定等を行うためのプログラムである。
NRSアプリケーションメソッド群72は、ログ収集,ソフトウェアダウンロード,機器コマンド実行,機器設定変更,サプライ通知,異常通知,デバイス起動/導入,デバイス生死確認の各メソッドを備え、被管理装置10からの種々の通知や要求に対応したり、管理装置102からの要求に従って被管理装置10に動作を行わせたりするためのプログラムである。
In this software, the application layer 70 has a device
The device
The NRS
次に、サービス層80には、セキュリティサービス81,対接続機器通信サービス82,対管理装置通信サービス83,スケジューラサービス84とを備えている。
そして、セキュリティサービス81は、内部情報などの外部への不正流出を予防、妨害するなどのジョブを生成・実行するモジュールである。
対接続機器通信サービス82は、仲介装置101に接続されたネットワーク接続機器との間で情報の授受を実現するため、情報取得の対象となる機器の検索、対象機器との接続管理、ファイル送受信、パラメータ管理、APL管理などのジョブを生成・実行するモジュールである。
対管理装置通信サービス83は、管理装置102との間でコマンド受信,ファイル送受信,情報要求,情報送信(情報通知)などのジョブを生成・実行するモジュールである。
スケジューラサービス84は、所定の設定時間情報に基づき、リモートコントロールアプリを展開するモジュールである。
Next, the service layer 80 includes a
The
The connected
The management
The
次のプロトコル層90には、情報の送受信対象に応じたプロトコルを用いて情報の授受をおこなうジョブを生成・実行するための各メソッドを備える。即ち、LANを介したネットワーク接続機器の通信環境に広く対応可能なように、SOAP(Simple Object Access Protocol)や、その下位プロトコルとして用いられるHTTP,HTTPS(Hypertext Transfer Protocol Security),FTPなどを制御可能なメソッドを有している。 The next protocol layer 90 includes methods for generating and executing a job for exchanging information using a protocol corresponding to an information transmission / reception target. In other words, it can control SOAP (Simple Object Access Protocol), HTTP, HTTPS (Hypertext Transfer Protocol Security), FTP, etc. used as its lower protocols so that it can be widely applied to the communication environment of network connection devices via LAN. Have a good method.
以下、図1に示した遠隔管理システムのより具体的な例として、画像処理装置を被管理装置とした画像処理装置遠隔管理システムについて説明する。この遠隔管理システムは、画像処理装置を被更新装置とした、この発明によるソフトウェア更新システムの実施形態を含むものである。図5は、その画像処理装置遠隔管理システムの構成の一例を示す概念図であるが、被管理装置10を画像処理装置100に、仲介機能付被管理装置11を仲介機能付画像処理装置110に変更した点が図1と相違するのみであるので、システムの全体構成についての説明は省略する。なお、ソフトウェア更新システムは、この発明のソフトウェア更新装置の実施形態である仲介装置101と被更新装置となる画像処理装置100のみで構成することができ、管理装置102やファイアウォール104等の他の構成要素は必須ではない。
Hereinafter, as a more specific example of the remote management system shown in FIG. 1, an image processing apparatus remote management system in which the image processing apparatus is a managed apparatus will be described. This remote management system includes an embodiment of a software update system according to the present invention in which an image processing apparatus is an update target apparatus. FIG. 5 is a conceptual diagram showing an example of the configuration of the image processing device remote management system. The managed
そして、画像処理装置100は、コピー、ファクシミリ、スキャナ等の機能及び外部装置と通信を行う機能を備えたデジタル複合機であり、それらの機能に係るサービスを提供するためのアプリケーションプログラムを実装しているものである。また、仲介機能付画像処理装置110は、画像処理装置100に仲介装置101の機能を併せ持たせたものである。
The
このような画像処理装置100の物理的構成について図6を用いて説明する。
図6は、画像処理装置100内の物理的構成の一例を示すブロック図である。同図に示すように、画像処理装置100は、コントローラボード200、HDD(ハードディスクドライブ)201、NV−RAM(不揮発性RAM)202、PI(パーソナルインタフェース)ボード203、PHY204、操作パネル205、プロッタ/スキャナエンジンボード206、電源ユニット207、フィニッシャ208、ADF(自動原稿給送装置)209、給紙バンク210、その他周辺機211を備えている。
The physical configuration of such an
FIG. 6 is a block diagram illustrating an example of a physical configuration in the
ここで、コントローラボード200は、制御手段に該当し、CPU,ROM,RAM等を備え、PCI−BUS(Peripheral Components Interconnect-Bus)212を介して各機能を制御している。また、HDD201は、記憶手段に該当する。また、NV−RAM202は、記憶手段に該当し、不揮発性メモリであって、例えば、フラッシュメモリ等が該当する。
Here, the
また、PIボード203とPHY204は、通信手段に該当し、外部との通信を行うためのものであって、例えば、通信ボード等が該当する。PIボード203はRS485規格に準拠したインタフェースを備え、ラインアダプタを介して公衆回線に接続している。PHY204は、LANを介して外部装置と通信を行うためのインタフェースであり、IEEE(Institute of Electrical and Electronic Engineers)802.11b規格(無線LAN対応),IEEE1394規格,IEEE802.3規格(イーサネット(登録商標)対応)に準拠したインタフェースをそれぞれ設け、複数の通信手段としている。
また、操作パネル205は、操作部及び表示部に該当するユーザインタフェースである。
Also, the
The
ここで、同図中のENGRDYは、エンジン側の各種初期設定が完了して、コントローラボード200とコマンドの送受信の準備ができたことをコントローラボード200側に通知するための信号線である。また、PWRCTLは、エンジンへの電源供給をコントローラボード200側から制御するための信号線である。これら信号線の動作に関しては後述する。
Here, ENGRDY in the figure is a signal line for notifying the
次に、画像処理装置100におけるソフトウェア構成を図7を用いて説明する。
図7は、画像処理装置100のソフトウェア構成の一例を示すブロック図である。画像処理装置100のソフトウェア構成は、最上位のアプリケーションモジュール(アプリ)層、その下位のサービスモジュール層からなる。そして、これらのソフトウェアを構成するプログラムはHDD201やコントローラボード200上のRAMに記憶され、必要に応じて読み出されてコントローラボード200上のCPUによって実行される。そしてCPUは、これらのプログラムを必要に応じて実行することにより、各機能(記憶手段,認証手段,更新手段,その他の手段としての機能)を実現することができる。
Next, a software configuration in the
FIG. 7 is a block diagram illustrating an example of a software configuration of the
特に、アプリケーションモジュール層のソフトウェアは、CPUをハードウェア資源を動作させて所定の機能を実現させる複数のアプリケーション制御手段として機能させるためのプログラムによって構成され、サービスモジュール層のソフトウェアは、CPUを、ハードウェア資源と各アプリケーション制御手段との間に介在し、複数のアプリケーション制御手段からのハードウェア資源に対する動作要求の受付,その動作要求の調停,およびその動作要求に基づく動作の実行制御を行うサービス制御手段として機能させるためのプログラムによって構成される。
またOS320は、UNIX(登録商標)などのオペレーティングシステムであり、サービスモジュール層及びアプリケーションモジュール層の各プログラムをそれぞれプロセスとして並列実行する。
In particular, the software in the application module layer is configured by a program for causing the CPU to function as a plurality of application control means that realizes a predetermined function by operating hardware resources. The software in the service module layer includes the CPU, Service control that intervenes between hardware resources and each application control means, and receives operation requests for hardware resources from a plurality of application control means, arbitrates the operation requests, and controls execution of operations based on the operation requests. It is comprised by the program for functioning as a means.
The
サービスモジュール層には、オペレーションコントロールサービス(OCS)300、エンジンコントロールサービス(ECS)301、メモリコントロールサービス(MCS)302、ネットワークコントロールサービス(NCS)303、ファクスコントロールサービス(FCS)304、カスタマーサポートシステム(CSS)305、システムコントロールサービス(SCS)306、システムリソースマネージャ(SRM)307、イメージメモリハンドラ(IMH)308、デリバリーコントロールサービス(DCS)316、ユーザコントロールサービス(UCS)317、データエンクリプションセキュリティサービス(DESS)318、サーティフィカットコントロールサービス(CCS)319を実装している。更に、アプリケーションモジュール層には、コピーアプリ309、ファクスアプリ310、プリンタアプリ311、スキャナアプリ312、ネットファイルアプリ313、ウェブアプリ314、NRS(ニューリモートサービス)アプリ315を実装している。
The service module layer includes an operation control service (OCS) 300, an engine control service (ECS) 301, a memory control service (MCS) 302, a network control service (NCS) 303, a fax control service (FCS) 304, a customer support system (CSS). 305, system control service (SCS) 306, system resource manager (SRM) 307, image memory handler (IMH) 308, delivery control service (DCS) 316, user control service (UCS) 317, data encryption security service (DESS) ) 318, a certificate cut control service (CCS) 319 is implemented. Further, a
これらを更に詳述する。
OCS300は、操作パネル205を制御するモジュールである。
ECS301は、ハードウェアリソース等のエンジンを制御するモジュールである。
MCS302は、メモリ制御をするモジュールであり、例えば、画像メモリの取得及び開放、HDD201の利用等を行う。
NCS303は、ネットワークとアプリケーションモジュール層の各アプリケーションプログラムとの仲介処理を行わせるモジュールである。
FCS304は、ファクシミリ送受信、ファクシミリ読み取り、ファクシミリ受信印刷等を行うモジュールである。
These will be described in further detail.
The
The
The
The
The
CSS305は、公衆回線を介してデータを送受信する際のデータの変換等をするモジュールであり、また公衆回線を介した遠隔管理に関する機能をまとめたモジュールである。
SCS306は、コマンドの内容に応じたアプリケーションモジュール層の各アプリケーションプログラムの起動管理及び終了管理を行うモジュールである。
SRM307は、システムの制御及びリソースの管理を行うモジュールである。
IMH308は、一時的に画像データを入れておくメモリを管理するモジュールである。
The
The
The
The
DCS316は、HDD201やコントローラボード200上のメモリに記憶している(する)画像ファイル等をSMTP(Simple Mail Transfer Protocol)やFTP(File Transfer Protocol)を用いて送受信するモジュールである。
UCS317は、ユーザが登録した宛先情報や宛名情報等のユーザ情報を管理するモジュールである。
DESS318は、PKIやSSLを利用した各ユニットあるいは外部装置の認証や、通信の暗号化を行うモジュールである。
CCS319は、この画像処理装置100に入力された認証情報について認証処理を行うモジュールである。
The
The
The
The
コピーアプリ309は、コピーサービスを実現するためのアプリケーションプログラムである。
ファクスアプリ310は、ファクスサービスを実現するためのアプリケーションプログラムである。
プリンタアプリ311は、プリンタサービスを実現するためのアプリケーションプログラムである。
The
The
The
スキャナアプリ312は、スキャナサービスを実現するためのアプリケーションプログラムである。
ネットファイルアプリ313は、ネットファイルサービスを実現するためのアプリケーションプログラムである。
ウェブアプリ314は、ウェブサービスを実現するためのアプリケーションプログラムである。
NRSアプリ315は、ネットワークを介してデータを送受信する際のデータの変換や、ネットワークを介した遠隔管理に関する機能(管理装置102との通信に係わる機能を含む)を実現するためのアプリケーションプログラムである。そして、外部装置からネットワーク経由で受信したデータを、各アプリにおける処理に適したデータ構造体に変換する機能も有する。
なお、説明の都合上、以下の説明において、CPUが以上のような各プログラムに従って動作することによって実行する処理について、それらのプログラムが処理を実行するものとして説明する。
The
The
The
The
For convenience of explanation, in the following explanation, processing executed by the CPU according to each program as described above will be explained as those programs executing the processing.
ここで、上述したENGRDY信号とPWRCTL信号との動作を図8を用いて説明する。
図8の(A)は機器の立ち上がり時のENGRDY信号とPWRCTL信号の動作の一例を示している。AC−POWERのAC電源をONにすると電源供給が開始され、これと同時にENGRDY信号はHighになる。この状態ではエンジン側との通信はできない。なぜなら、エンジン側の初期設定が完了していないからである。そして、一定期間経過後にエンジン側の初期設定が完了し、ENGRDY信号がLowになった段階でエンジン側との通信が可能となる。
Here, the operation of the ENGRDY signal and the PWRCTL signal will be described with reference to FIG.
FIG. 8A shows an example of the operation of the ENGRDY signal and the PWRCTL signal when the device starts up. When the AC power of the AC-POWER is turned on, power supply is started, and at the same time, the ENGRDY signal becomes High. In this state, communication with the engine side is not possible. This is because the initial setting on the engine side has not been completed. Then, the initial setting on the engine side is completed after a lapse of a certain period, and communication with the engine side becomes possible when the ENGRDY signal becomes Low.
次に、同図(B)は省エネモードに移行した時のENGRDY信号とPWRCTL信号の動作の一例を示している。省エネモードに移行するため、コントローラボード200によりPWRCTL信号をOFFにする。これと同時に電源供給もおちる。これに伴って、ENGRDY信号は、Highとなり省エネモードに移行する。次に、省エネモードから復帰する場合を同図(C)に示す。
Next, FIG. 5B shows an example of the operation of the ENGRDY signal and the PWRCTL signal when the mode is shifted to the energy saving mode. To shift to the energy saving mode, the
同図(C)は、省エネモードから復帰する時のENGRDY信号とPWRCTL信号の動作の一例を示している。上記(B)の省エネモードから復帰する際には、コントローラボード200によりPWRCTL信号をONにする。これと同時に電源供給もされる。しかし、上記の(A)で示したように、エンジン側の初期設定が完了するまで、ENGRDY信号はHighの状態であり、初期設定が完了するとエンジン側との通信が可能となり、Lowとなる。
FIG. 3C shows an example of the operation of the ENGRDY signal and the PWRCTL signal when returning from the energy saving mode. When returning from the energy saving mode (B), the
次に、上述した画像処理装置100のソフトウェアの構成に含まれるNRSアプリ315の内部構成を図9を用いて更に説明する。
図9は、NRSアプリの構成の一例を示す機能ブロック図である。同図に示すように、NRSアプリ315は、アプリケーションモジュール層とNCS303との間で処理をおこなっている。ウェブサーバ機能部500は、外部から受信した要求に関する応答処理を行う。ここでの要求は、例えば、構造化言語であるXML(Extensible Markup Language)形式で記載された、SOAP(Simple Object Access Protocol)によるSOAPリクエストであることが考えられる。ウェブクライアント機能部501は、外部への要求を発行する処理を行う。libxml502は、XML形式で記載されたデータを処理するライブラリであり、libsoap503は、SOAPを処理するライブラリである。また、libgwww504は、HTTPを処理するライブラリであり、libgw_ncs505は、NCS303との間の処理をするライブラリである。
Next, the internal configuration of the
FIG. 9 is a functional block diagram illustrating an example of the configuration of the NRS application. As shown in the figure, the
上記のSOAPリクエストは、PHY204によって受信され、SOAPヘッダとSOAPボディを含むSOAPドキュメントがHTTPメッセージの形でNCS303を介してNRSアプリ315に渡される。そして、NRSアプリ315において、libsoap503を用いてSOAPドキュメントからSOAPボディを取り出し、libxml502を用いてSOAPボディを解釈してDOM(Document Object Model)ツリーを生成し、ウェブサーバ機能部500がこれを各アプリにおける処理に適したデータ構造体に変換した上でSOAPボディに含まれるコマンドに対応したアプリに渡す。
データ構造体については、例えばアプリのプログラムがC言語で記載されている場合にはC言語の構造体データであり、この構造体データを引数としてアプリのプログラムをコールすることによってアプリにデータを渡すことができる。
The SOAP request is received by the
For example, when the application program is written in C language, the data structure is C language structure data. The data is passed to the application by calling the application program with the structure data as an argument. be able to.
上述した構成を踏まえて、図5の画像処理装置遠隔管理システム内で行われるデータ送受信の際の通信シーケンスの一例について図10を用いて説明する。図10は、管理装置、仲介装置、及び画像処理装置間で行われるデータ送受信の際の通信シーケンスの一例を示す図である。
この例においては、まず、仲介装置101は、管理装置102に対してポーリング(送信要求があるかどうかの問い合わせ)を行う(S601)。つまり、自己の識別情報である識別子を付加したポーリング用のSOAPドキュメントを生成し、HTTPメッセージとして管理装置102へ送信する。図5に示したように、仲介装置101と管理装置102との間にはファイアウォール104を設けているため、管理装置102から仲介装置101に向けて通信セッションを張る(通信を要求して通信経路を確立する)ことができないので、管理装置102から仲介装置101(あるいは仲介装置101を介して画像処理装置100)に要求を送信したい場合でも、このように仲介装置101からのポーリングを待つ必要があるのである。
Based on the above-described configuration, an example of a communication sequence for data transmission / reception performed in the image processing apparatus remote management system in FIG. 5 will be described with reference to FIG. FIG. 10 is a diagram illustrating an example of a communication sequence for data transmission / reception performed between the management device, the mediation device, and the image processing device.
In this example, first, the
管理装置102は、仲介装置101から上記HTTPメッセージを受信すると、課金カウンタ取得要求を示すSOAPドキュメントを生成し、該当する仲介装置101(受信したSOAPメッセージの送信元)へ、ポーリングに対する応答のHTTPメッセージとして送信する(S602)。このとき、受信したHTTPメッセージ内のSOAPドキュメントに付加された識別子に基づいて該当する仲介装置101を認識する。このように、ファイアウォール104の内側からの通信(HTTPリクエスト)に対する応答(HTTPレスポンス)であれば、ファイアウォールの外側から内側に対してデータを送信することができる。
When the
仲介装置101は、管理装置102から上記HTTPメッセージを受信すると、そのHTTPメッセージに基づいて課金カウンタ取得要求を示すSOAPドキュメントを生成し、やはりHTTPメッセージとして自己に接続されている画像処理装置100のNRSアプリ315へ送信する(S603)。
NRSアプリ315は、仲介装置101からHTTPメッセージとして受信したSOAPドキュメントに記述されている課金カウンタ取得要求をSCS306へ通知する(S604)。
SCS306は、NRSアプリ315から課金カウンタ取得要求の通知を受けると、NV−RAM202に格納されている課金カウンタのデータを読み取る(S605)。そして、その読み取った課金カウンタのデータ(応答データ)をNRSアプリ315へ引き渡す(S606)。
Upon receiving the HTTP message from the
The
When the
NRSアプリ315は、SCS306から課金カウンタのデータを受け取る(取得する)と、その内容を示す課金カウンタ用のSOAPドキュメントを生成し、HTTPメッセージとして仲介装置101へ送信する(S607)。
仲介装置101は、NRSアプリ315から課金カウンタ用のSOAPドキュメントを受信すると、そのSOAPドキュメントをHTTPメッセージとして管理装置102へ送信する(S608)。
このように、上記通信シーケンスにより、データの送受信が行われる。
When the
When the
Thus, data transmission / reception is performed by the communication sequence.
次に、上記図10と異なり、画像処理装置100から仲介装置101を経て管理装置102へデータを送信する場合の通信シーケンスの一例について図11を用いて説明する。
図11は、画像処理装置から管理装置102へデータを送信する場合の通信シーケンスの一例を示す図である。
この例においては、まず、OCS300は、ユーザコールキーが押下された旨をSCS306へ通知する(S701)。
SCS306は、OCS300からユーザコールキーが押下された旨の通知を受けると、ユーザコール要求をNRSアプリ315へ通知する(S702)。
Next, unlike FIG. 10, an example of a communication sequence when data is transmitted from the
FIG. 11 is a diagram illustrating an example of a communication sequence when data is transmitted from the image processing apparatus to the
In this example, first, the
Upon receiving notification from the
NRSアプリ315は、SCS306からユーザコール要求の通知を受けると、ユーザコールを知らせるユーザコール情報であるユーザコール用のSOAPドキュメントを生成し、HTTPメッセージとして仲介装置101へ送信する(S703)。
仲介装置101は、NRSアプリ315からユーザコール用のSOAPドキュメントを受信すると、そのSOAPドキュメントに自己の識別情報である識別子を付加し、そのSOAPドキュメントをやはりHTTPメッセージとして管理装置102に対して送信し、ユーザコールを行う。つまり、自己の識別子を付加したユーザコール用のSOAPドキュメントを管理装置102へ通報する(S704)。この場合には、ファイアウォール104の内側から外側に向けての送信であるので、仲介装置101が自ら管理装置102に向けてセッションを張ってデータを送信することができる。
ここで、ステップS704の処理後のパターンを以下の(A)から(C)に分けて説明する。
Upon receiving the user call request notification from the
When the
Here, the pattern after the process of step S704 will be described separately in the following (A) to (C).
まず、(A)において、管理装置102は、ユーザ先の仲介装置101からユーザコール用のSOAPドキュメントをHTTPメッセージとして受信し、その受信が正常に終了した場合には、その旨(ユーザコールが成功した旨)のコール結果を、正常に終了しなかった(異常に終了した)場合には、その旨(ユーザコールが失敗した旨)のコール結果を示すSOAPドキュメント生成し、HTTPメッセージによる応答として通報元の仲介装置101へ送信する(S705)。
仲介装置101は、管理装置102からコール結果を示すSOAPドキュメントを受信すると、そのSOAPドキュメントを、やはりHTTPメッセージとしてユーザコールキーが押下された画像処理装置100のNRSアプリ315へ送信する(S706)。
First, in (A), the
When the
NRSアプリ315は、仲介装置101からコール結果を示すSOAPドキュメントを受信すると、そのSOAPドキュメントが示すコール結果を解釈(判定)し、SCS306へ通知する(S707)。
SCS306は、コール結果を受け取ると、それをOCS300へ引き渡す。
OCS300は、SCS306からコール結果を受け取ると、その内容つまりユーザコールが成功したか失敗したかを示すメッセージを操作パネル205上の文字表示器に表示する(S708)。
When the
When the
When the
次に(B)において、仲介装置101は、規定時間(予め設定された所定時間)が経っても管理装置102から応答がないと判断した場合には、ユーザコールが失敗した旨のコール結果を示すSOAPドキュメントを生成し、HTTPメッセージとしてNRSアプリ315へ送信する(S709)。
NRSアプリ315は、失敗した旨のコール結果を示すSOAPドキュメントを受信すると、そのSOAPドキュメントに記述されている失敗した旨のコール結果を解釈し、SCS306へ通知する(S710)。
SCS306は、NRSアプリ315からコール結果を受け取ると、それをOCS300へ引き渡す。
OCS300は、SCS306からコール結果を受け取ると、その内容つまりユーザコールが失敗した旨を示すメッセージを操作パネル205上の文字表示器に表示する(S711)。
Next, in (B), when the
When the
Upon receiving the call result from the
When the
次に(C)において、NRSアプリ315は、規定時間が経っても仲介装置101から応答がないと判断した場合には、ユーザコールが失敗した旨のコール結果をSCS306へ通知する(S712)。
SCS306は、NRSアプリ315からコール結果を受け取ると、それをOCS300へ引き渡す。
OCS300は、SCS306からコール結果を受け取ると、その内容つまりユーザコールが失敗した旨を示すメッセージを操作パネル205上の文字表示器に表示する(S713)。
Next, in (C), when the
Upon receiving the call result from the
When the
なお、ここでは管理装置102からファイアウォール104を越えて仲介装置101(あるいは仲介装置101を介して画像処理装置100)にデータを送信するために、仲介装置101からのHTTPリクエストに対するレスポンスという形で送信を行う例について説明したが、ファイアウォール104を越える手段はこれに限られるものではなく、例えば、SMTP(Simple Mail Transfer Protocol)を利用して、送信したいデータを記載あるいは添付したメールを管理装置102から仲介装置101に送信することも考えられる。ただし、信頼性の面ではHTTPが優れている。
Here, in order to transmit data from the
ここで、このような基本的な機能を有する図5に示した画像処理装置遠隔管理システムにおいて実行する、画像処理装置100のファームウェア更新処理の参考例について説明する。
背景技術の項で図26に示した処理の安全性を向上させる手段としては、通信を暗号化するほか、図12に示すようなパスワードリストを用いることも考えられ、この参考例は、このパスワードリストを使用した処理である。また、ファーム更新装置91と対応する装置は仲介装置101、被更新装置92と対応する装置は画像処理装置100とする。
そして、ここで使用するパスワードリストは、仲介装置101に設定されたIDと対応するパスワードを多数生成し、順序をつけたものである。このようなパスワードリストは、メモリカード等に記憶させて書留郵便のようなネットワーク以外の安全な経路で仲介装置101と画像処理装置100の管理者に送付し、それぞれの管理者が装置の記憶手段に記憶させておく。そして、仲介装置101から画像処理装置100に認証を要求する際には未使用のパスワードの中から先頭のものを選んで使用するようにし、使用したものは使用済みとして、次に認証を要求する際には次のパスワードを用いるようにするのである。
Here, a reference example of firmware update processing of the
As means for improving the security of the processing shown in FIG. 26 in the background art section, it is conceivable to use a password list as shown in FIG. 12 in addition to encrypting communication. Processing using a list. An apparatus corresponding to the
The password list used here is one in which a large number of passwords corresponding to the IDs set in the
このようなパスワードリストを用いる場合の図26と対応する処理は、例えば図13のシーケンス図に示すようになる。
図13に示す処理においても、仲介装置101と画像処理装置100とはFTP(File Transfer Protocol)を用いて通信を行う。
この処理においても、所定のイベントが発生した場合等に仲介装置101が画像処理装置100にIDとパスワードを送信してFTPによる接続を要求するが、その前にパスワードリストを参照して使用するパスワードを決定する(S41)。ここでは、まだパスワードは1つも使用されておらず、先頭のパスワードAを選択するものとする。
The process corresponding to FIG. 26 in the case of using such a password list is as shown in the sequence diagram of FIG. 13, for example.
Also in the processing illustrated in FIG. 13, the
Also in this process, when a predetermined event occurs, the
そしてその後、仲介装置101は図26のステップS11乃至S13の場合と同様にバージョン情報取得処理を行って画像処理装置100のファームのバージョン情報を取得する(S42〜S44)が、この際に用いるパスワードはステップS11で選択したパスワードAである。そして、画像処理装置100も同じパスワードリストを記憶しているので、これを参照して先頭のパスワードAと比較することにより、認証処理を行うことができる。
バージョン情報取得処理が終了すると、仲介装置101はパスワード更新処理を開始し、HTTP(Hyper Text Transfer Protocol)を用いて画像処理装置100にパスワード更新要求を送信する(S45)。そして、この要求に従って、画像処理装置100はパスワードリストのうちの使用したパスワード(パスワードA)を使用済に設定し(S46)、これが成功すると更新OK通知を返す(S47)。
Thereafter, the
When the version information acquisition process ends, the
仲介装置101は、この通知を受け取ると、画像処理装置100と同じように、使用したパスワードを使用済に設定する(S48)。以上がパスワード更新処理であり、この処理によって、仲介装置101と画像処理装置100の双方で、一度FTPで転送したパスワードを使用済みとし、まだ使用していない次の安全なパスワード(パスワードB)を使用するように設定することができる。ただし、続けてファーム送信処理を行う場合には、ファーム送信処理の終了まではバージョン情報取得処理で用いたパスワードをそのまま使用するものとする。
Upon receiving this notification, the
次に、仲介装置101はステップS43で取得したファームのバージョン情報をもとに更新の要否を判断する。ここで更新不要と判断すれば処理を終了し、また必要が生じた場合にバージョン情報取得処理を行うことになる。しかし、更新が必要と判断すれば(S49)、次のファーム送信処理を実行する(S50〜S53)。この処理は、図26に示したファーム送信処理とほぼ同様であり、認証処理に用いるパスワードがパスワードリストに含まれるパスワードAである点が異なるのみである。
Next, the
以上の処理によって、必要な場合に画像処理装置100のファームを更新することができる。そして、再度バージョン情報取得処理やファーム送信処理を行う場合は、再度パスワードリストを参照して使用するパスワードを決定する(S54)が、ここでは、パスワードAが使用済みになっているので、次のパスワードBを選択することになる。
そして、ステップS55〜S57で、ステップS42〜S44の場合と同様に、バージョン情報取得処理を行うが、ここで認証に使用するパスワードはパスワードBとなる。
以下、同様にして、パスワードをパスワードC,D,・・・と順次変更して処理を繰り返すことになる。
Through the above processing, the firmware of the
In steps S55 to S57, version information acquisition processing is performed in the same manner as in steps S42 to S44. The password used for authentication is password B here.
In the same manner, the password is sequentially changed to passwords C, D,.
このようにパスワードリストを用いるようにすれば、一度FTPを用いて転送したパスワードはファームウェア更新処理後には使用されることがなく、常に秘密の保たれたパスワードを使用して認証処理を行うことができるので、なりすまし等の不正アクセスを防止してセキュリティの向上を図ることができる。
しかしながら、この参考例で用いたパスワードリストは、多数のパスワードを含むため、データ量が多くなり、これを記憶する領域を用意するとメモリのコストアップにつながる。また、パスワードを装置に記憶させた状態にすることになるため、装置にアクセスした第3者にリストごとパスワードを盗まれる可能性も否定できない。また、初めにパスワードリストを郵便等によって送付し、管理者が手動で記憶させる必要があるので、労力がかかるという問題もあった。さらに、処理にエラーが生じて装置間で使用するパスワードのNo.が異なる事態が発生すると、認証処理が正常に行えないという問題もあった。また、パスワードリストに含まれるパスワードの数は有限であるので、全部使用してしまった後は、再度新たなリストを配布して記憶させるか、多少の危険を承知で使用済みのパスワードを再利用する必要があるという問題もあった。
If the password list is used in this way, the password once transferred using FTP is not used after the firmware update process, and the authentication process can always be performed using a secret password. Therefore, it is possible to improve security by preventing unauthorized access such as impersonation.
However, since the password list used in this reference example includes a large number of passwords, the amount of data increases, and if an area for storing the data is prepared, the cost of the memory is increased. Further, since the password is stored in the device, it is impossible to deny the possibility that a third party who has accessed the device steals the password for each list. In addition, since it is necessary to send the password list first by mail or the like and manually memorize it, there is a problem that it takes labor. In addition, when an error occurs in the process, the password No. If a different situation occurs, there is a problem that the authentication process cannot be performed normally. Also, since the number of passwords included in the password list is limited, after all the passwords have been used, a new list can be distributed and stored again, or the used passwords can be reused with some risk. There was also a problem that had to be done.
ところで、図5に示した画像処理装置遠隔管理システムにおいて、仲介装置101と画像処理装置100との間の通信を、必要に応じてSSLを用いた認証を行ってから行うようにすることができる。そこで次に、この認証を行う場合の通信手順について、認証処理の部分に焦点を当てて説明する。この認証には、互いが互いを認証する相互認証と、一方が他方を認証する片方向認証とが考えられるが、まず相互認証の場合について説明する。
図14は、仲介装置101と画像処理装置100とがSSLによる相互認証を行う際に各装置において実行する処理のフローチャートを、その処理に用いる情報と共に示す図である。
By the way, in the image processing apparatus remote management system shown in FIG. 5, communication between the
FIG. 14 is a diagram illustrating a flowchart of processing executed in each device when the
図14に示すように、SSLによる相互認証を行う際には、まず仲介装置101側にルート鍵証明書,私有鍵A,公開鍵証明書Aを記憶させておく必要がある。私有鍵Aは、認証局(CA:certificate authority)が仲介装置101に対して発行した私有鍵である。そして、公開鍵証明書Aは、その私有鍵と対応する公開鍵にCAがデジタル署名を付してデジタル証明書としたものである。また、ルート鍵証明書は、CAが付したデジタル署名の正当性を確認するための鍵であるルート鍵に、デジタル署名を付してデジタル証明書としたものである。なお、公開鍵は、対応する私有鍵を用いて暗号化された文書を復号化するための鍵本体と、その公開鍵の発行者(CA),発行相手,有効期限等の情報を含む書誌情報とによって構成されるものとする。
As shown in FIG. 14, when performing mutual authentication by SSL, it is necessary to first store the root key certificate, private key A, and public key certificate A on the
また、画像処理装置100側には、ルート鍵証明書,私有鍵B,公開鍵証明書Bを記憶させておく必要がある。私有鍵B及び公開鍵証明書Bは、CAが画像処理装置100に対して発行した私有鍵及び公開鍵証明書である。ここでは仲介装置101と画像処理装置100に対して同じCAが同じルート私有鍵を用いて証明書を発行しているものとし、この場合にはルート鍵証明書は仲介装置101と画像処理装置100で共通となる。
Further, it is necessary to store the root key certificate, private key B, and public key certificate B on the
フローチャートの説明に入る。なお、図14において、2本のフローチャート間の矢印は、データの転送を示し、送信側は矢印の根元のステップで転送処理を行い、受信側はその情報を受信すると矢印の先端のステップの処理を行うものとする。また、各ステップの処理が正常に完了しなかった場合には、その時点で認証失敗の応答を返して処理を中断するものとする。相手から認証失敗の応答を受けた場合、処理がタイムアウトした場合等も同様である。また、それぞれの処理は、仲介装置101と画像処理装置100とがそれぞれ備えるCPUが所要の制御プログラムに従った処理を行うことにより実現されるものである。
The description of the flowchart begins. In FIG. 14, the arrow between the two flowcharts indicates data transfer, the transmission side performs the transfer process at the root step of the arrow, and the reception side receives the information, the process at the tip of the arrow Shall be performed. In addition, if the process of each step is not completed normally, an authentication failure response is returned at that time and the process is interrupted. The same applies to the case where an authentication failure response is received from the other party or the process times out. In addition, each process is realized by a process performed by a CPU included in each of the
仲介装置101は、画像処理装置100に接続を要求する場合、図14の左側に示すフローチャートの処理を開始する。そして、ステップS21で画像処理装置100に対して接続要求を送信する。
一方画像処理装置100は、この接続要求を受信すると、図14の右側に示すフローチャートの処理を開始する。そして、ステップS31で第1の乱数を生成し、これを私有鍵Bを用いて暗号化する。そして、ステップS32でその暗号化した第1の乱数と公開鍵証明書Bとを仲介装置101に送信する。
When the
On the other hand, when receiving this connection request, the
仲介装置101側では、これを受信すると、ステップS22でルート鍵証明書を用いて公開鍵証明書Bの正当性を確認する。これには、公開鍵に含まれる書誌情報を参照して画像処理装置100が適当な通信相手であることを確認する処理を含む。
そして確認ができると、ステップS23で、受信した公開鍵証明書Bに含まれる公開鍵Bを用いて第1の乱数を復号化する。ここで復号化が成功すれば、第1の乱数は確かに公開鍵証明書Bの発行対象である画像処理装置100から受信したものだと確認できる。そして、画像処理装置100を正当な通信相手として認証する。
Upon receiving this, the mediating
If it can be confirmed, the first random number is decrypted using the public key B included in the received public key certificate B in step S23. Here, if the decryption is successful, it can be confirmed that the first random number has been received from the
その後、ステップS24でこれとは別に第2の乱数及び第3の乱数を生成する。そして、ステップS25で第2の乱数を私有鍵Aを用いて暗号化し、第3の乱数を公開鍵Bを用いて暗号化し、ステップS26でこれらを公開鍵証明書Aと共に画像処理装置100に送信する。第3の乱数の暗号化は、画像処理装置100以外の装置に乱数を知られないようにするために行うものである。
Thereafter, a second random number and a third random number are generated separately in step S24. In step S25, the second random number is encrypted using the private key A, the third random number is encrypted using the public key B, and these are transmitted to the
画像処理装置100側では、これを受信すると、ステップS33でルート鍵証明書を用いて公開鍵証明書Aの正当性を確認する。これにも、ステップS22の場合と同様、仲介装置101が適当な通信相手であることを確認する処理を含む。そして確認ができると、ステップS34で、受信した公開鍵証明書Aに含まれる公開鍵Aを用いて第2の乱数を復号化する。ここで復号化が成功すれば、第2の乱数は確かに公開鍵証明書Aの発行対象である仲介装置101から受信したものだと確認できる。そして、画像処理装置100を正当な通信相手として認証する。
When receiving this, the
その後、ステップS35で私有鍵Bを用いて第3の乱数を復号化する。ここまでの処理で、サーバ側とクライアント側に共通の第1乃至第3の乱数が共有されたことになる。そして、少なくとも第3の乱数は、生成した仲介装置101と、私有鍵Bを持つ画像処理装置100以外の装置が知ることはない。ここまでの処理が成功すると、ステップS36で仲介装置101に対して認証成功の応答を返す。
Thereafter, in step S35, the third random number is decrypted using the private key B. Through the processing so far, the first to third random numbers common to the server side and the client side are shared. Then, at least the third random number is not known by devices other than the generated
仲介装置101側では、これを受信すると、ステップS27で第1乃至第3の乱数から共通鍵を生成し、以後の通信の暗号化に用いるものとして認証処理を終了する。画像処理装置100側でも、ステップS37で同様の処理を行って終了する。そして、以上の処理によって互いに通信を確立し、以後はステップS27又はS37で生成した共通鍵を用い、共通鍵暗号方式でデータを暗号化して通信を行う。
Upon receiving this, the mediating
通信の際にこのようなSSLによる相互認証を行えば、仲介装置101と画像処理装置100とが互いに相手を認証した上で安全に共通鍵を交換することができ、通信を確かな相手と安全に行うことができる。以下の説明において、これらのいずれかの装置が通信相手に対してSSLの接続要求を行う場合には、その要求に応じて図14に示したような相互認証処理を行い、認証が成功した場合に通信を確立するものとする。ただし、図14には仲介装置101から画像処理装置100に対して接続を要求する場合の処理を示しているので、画像処理装置100から仲介装置101に接続を要求する場合には、画像処理装置100が図14の仲介装置101に相当する処理を、仲介装置101が図14の画像処理装置100に相当する処理を行うことになる。
If mutual authentication by SSL is performed at the time of communication, the
なお、片方向認証を採用し、例えば画像処理装置100が仲介装置101を認証するのみでよいのであれば、図14に示した認証処理において、第1及び第3の乱数の暗号化を省略することができる。この場合には、画像処理装置100側にはルート鍵証明書のみを記憶させておけばよい。そして、認証処理は、図15に示すように簡略化することができる。すなわち、仲介装置101側のステップS22及びS23の処理は不要となり、画像処理装置100側のステップS35の処理も不要となる。
逆に、仲介装置101が画像処理装置100を認証するようにする場合、第2の乱数の暗号化を省略することができる。この場合には、仲介装置101側にはルート鍵証明書のみを記憶させておけばよい。そして、認証処理は、図16に示すように簡略化することができる。すなわち、仲介装置101側のステップS23及びS24の処理は不要になる。
If one-way authentication is employed and, for example, the
Conversely, when the
次に、図5に示した画像処理装置遠隔管理システムにおけるこの実施形態の特徴に関連する動作である、画像処理装置100のファームウェア更新処理およびそのために必要な構成について説明する。この処理は、図17のシーケンス図に示す処理であり、この発明のソフトウェア更新方法に係る処理であって、管理装置102,仲介装置101,画像処理装置100の各CPUが、所要の制御プログラムを実行することによって行うものである。なお、仲介装置101がこの発明のソフトウェア更新装置として機能し、画像処理装置100が被更新装置となる。そして、これらの装置によってこの発明のソフトウェア更新システムが実現され、管理装置102はこのソフトウェア更新システムにファームウェア更新要求を行う外部装置に該当する。
なお、図17に示す処理を行うに先立って、仲介装置101には予め更新用ファームウェアを記憶させておくものとする。この記憶は、管理装置102その他の装置から転送して行ってもよいし、記録媒体に記録したものを仲介装置101に読み込ませることによって行ってもよい。その他の適当な方法を採ることもできる。
Next, the firmware update processing of the
Prior to performing the processing shown in FIG. 17, it is assumed that the update firmware is stored in advance in the
図5に示した画像処理装置遠隔管理システムにおいて、管理装置102は、所定時間毎あるいは管理装置102のオペレータから指示があった場合等、所定のイベントが発生した場合に、仲介装置101に対してファームウェア更新要求を送信する(S101)。図示は省略したが、この送信は、図10を用いて説明したように仲介装置101からのポーリングに対する応答として行うようにすることができる。
仲介装置101は、この要求を受けると、画像処理装置100のファーム更新に係る処理を開始するが、初めにワンタイムパスワード共有処理を行う(S102)。
In the image processing apparatus remote management system shown in FIG. 5, the
Upon receiving this request, the
この処理において、まずステップS102で仲介装置101がファーム更新時の認証処理に用いるための更新用認証情報としてワンタイムパスワードを乱数などにより生成し、これを記憶する。そして、画像処理装置100に対してSSLによる接続要求を行う(S103)。この接続が確立すると、画像処理装置100にワンタイムパスワードを送信し、これを記憶するよう要求する(S104)。この要求は、SOAPによるRPCとして行うようにすることができる。
In this process, first, in step S102, the
画像処理装置100は、この要求に応じて受信したワンタイムパスワードを記憶手段に記憶し(S105)、以後FTP接続の際の認証処理において、仲介装置101のIDと対応するパスワードとして用いるものとする。認証はSSLの接続要求の際に完了しているので、ここではワンタイムパスワードを認証処理に用いることはない。そして、図示は省略したが、この記憶の終了後、画像処理装置100はその旨の応答を仲介装置101に返し、仲介装置101はこの応答を受け取るとSSLの接続を切断する(S106)。ステップS103乃至S106の通信は、HTTPSを用いて行われる。
The
以上の処理がワンタイムパスワード共有処理であり、この処理において、仲介装置101のCPU52が認証情報設定手段として機能する。そしてこの処理によって、仲介装置101と画像処理装置100は、暗号化された通信経路を用いて安全にワンタイムパスワードを共有することができる。ここで用いたSSLによる通信経路が、第1の通信経路である。なお、「通信経路」とは、物理的な伝送経路よりむしろ通信に使用するプロトコル(通信方式)によって定められるものである。従って、物理的な伝送経路が同一であっても通信プロトコルが異なれば「通信経路」は異なることになるし、逆にインターネットを介した通信のように物理的な伝送経路が状況に応じて変化する場合であっても、通信を行う装置と通信に使用するプロトコルが定まれば、「通信経路」は特定される。
The above process is a one-time password sharing process. In this process, the
ワンタイムパスワード共有処理が終了すると、仲介装置101は次にバージョン情報取得処理を行う。
この処理は、従来の技術の項で図26に示した処理のステップS11乃至S13とほぼ同様なものであるが、仲介装置101がステップS107でFTPによる接続を要求する際に画像処理装置100に送信するパスワードは、ステップS104で送信したものと同じワンタイムパスワードである。そして、画像処理装置100はステップS105で記憶したワンタイムパスワードを用いて認証処理を行う。これらが一致すれば認証成功として接続を確立し(S107)、一致しなかった場合には接続は確立されず、エラーとなって処理は終了する。この処理において、仲介装置101のCPU52が認証要求手段として機能し、画像処理装置100のCPUが認証手段として機能する。
When the one-time password sharing process ends, the
This process is almost the same as steps S11 to S13 of the process shown in FIG. 26 in the section of the prior art. The password to be transmitted is the same one-time password as that transmitted in step S104. Then, the
接続が確立されると、画像処理装置100は仲介装置101からの要求に応じてファームのバージョン情報を送信する(S108)。仲介装置101はこのバージョン情報を取得し、その後、画像処理装置100との接続を切断する(S109)。以上がバージョン情報取得処理である。
次のステップS110の処理及びその後のファーム送信処理も、ワンタイムパスワードを用いることを除き、図26に示した処理のステップS14乃至S18とほぼ同様なものである。
When the connection is established, the
The processing in the next step S110 and the subsequent firmware transmission processing are substantially the same as steps S14 to S18 in the processing shown in FIG. 26 except that the one-time password is used.
すなわち、仲介装置101はステップS108で取得したファームのバージョン情報をもとに更新の要否を判断し、更新が必要と判断すれば(S110)、次のファーム送信処理を実行する。更新が不要と判断した場合には、管理装置102に対してファーム更新要求に対する応答としてその旨を通知するようにするとよい。
そして、ファーム送信処理では、仲介装置101はまずステップS107の場合と同様に画像処理装置100にIDとワンタイムパスワードを送信し、画像処理装置100が認証処理を行って、成功すればFTPによる接続を確立する(S111)。そして、仲介装置101が更新用ファームウェアを画像処理装置100に送信する(S112)。この処理において、仲介装置101のCPU52が送信手段として機能する。
That is, the
In the firm transmission process, the
画像処理装置100側では、これを受信すると、自機のファームウェアを受信した更新用ファームウェアに更新する(S113)。この処理においては、画像処理装置100のCPUが更新手段として機能する。そして、更新が完了すると自身をリセットし、再起動して新たなファームを有効にする(S114)。また、画像処理装置100のリセットにより、FTP接続は切断される。以上がファーム送信処理である。
ここで用いたFTPによる通信経路が、第2の通信経路である。FTPの場合には、通信内容の暗号化を行わないので、処理負荷はSSLを用いた第1の通信経路よりもはるかに小さい。
When receiving this, the
The FTP communication path used here is the second communication path. In the case of FTP, since the communication content is not encrypted, the processing load is much smaller than that of the first communication path using SSL.
画像処理装置100は、再起動が完了した時に、起動した旨を示す起動通知として電源ON通知を仲介装置101に対して送信するようにするとよい(S115)。このようにすれば、仲介装置101側で画像処理装置100においてファームウェアの更新が終了したことを把握できるので、適切なタイミングで更新が成功したか否かの判断を行うことができる。また、電源ON通知は、SOAPドキュメントとして記載し、HTTPを用いて送信することができる。
When the restart is completed, the
そして、仲介装置101は、この電源ON通知を受信すると、ステップS107〜S109の場合と同様にバージョン情報取得処理を行い、画像処理装置100との間でFTPによる通信を確立し、画像処理装置100からファームのバージョン情報を取得する(S116〜S118)。そして、このバージョン情報がステップS112で送信した更新用ファームウェアのものと一致していれば、ファームの更新が成功したと判断し(S119)、次のワンタイムパスワード消去処理を行う。一致していなければ、更新失敗と判断し、再度ファーム送信処理を行うか、あるいは管理装置102に対してファーム更新要求に対する応答として更新が失敗した旨を通知する。
なお、更新失敗と判断した場合であっても、画像処理装置100との間でSSLを用いた通信(ワンタイムパスワードを安全に送信可能な経路での通信)が可能であることが確認できた場合には、ワンタイムパスワード消去処理を行うようにしてもよい。
When the
Even when it is determined that the update has failed, it has been confirmed that communication using SSL (communication via a path through which a one-time password can be safely transmitted) is possible with the
次のワンタイムパスワード消去処理においては、仲介装置101はワンタイムパスワード共有処理の場合と同様に画像処理装置100に対してSSLによる接続要求を行う(S120)。そして、この接続が確立すると、画像処理装置100に消去用パスワードを送信し、これを記憶するよう要求する(S121)。この要求は、いわばワンタイムパスワードの無効化要求であり、この処理において、仲介装置101のCPU52が認証情報無効化手段として機能する。なお、消去用パスワードは、送信毎に作成するランダムなものであってもよいし、固定のパスワードでもよい。FTPによって送信しておらず、その後もFTPでは送信しないパスワードを用いればよい。また、この要求を行う際に、自身で記憶しているワンタイムパスワードも消去するようにしてもよい。
なお、ワンタイムパスワードの無効化要求は、記憶しているワンタイムパスワードを消去する要求であればよいのであるが、上述のようにパスワードの記憶(上書き)要求を用いるようにすれば、ワンタイムパスワードの共有の場合と処理を共通化し、プログラムのコンパクト化を図ると共に開発効率を向上させることができる。
In the next one-time password deletion process, the
The invalidation request for the one-time password may be a request for deleting the stored one-time password. However, if the password storage (overwrite) request is used as described above, the one-time password invalidation request may be used. By sharing the process with the case of password sharing, the program can be made compact and the development efficiency can be improved.
画像処理装置100は、この要求に応じてワンタイムパスワードを受信した消去用パスワードで上書きし(S122)、以後ステップS105で記憶したワンタイムパスワードはFTP接続の際の認証処理に用いないようにする。認証はSSLの接続要求の際に完了しているので、ここで消去用パスワードを認証処理に用いることはない。この記憶の終了後、仲介装置101はSSLの接続を切断する(S123)。
以上の処理がワンタイムパスワード消去処理であり、この処理によって、画像処理装置100に記憶させたワンタイムパスワードを無効化することができる。
このワンタイムパスワード消去処理が終了すると、仲介装置101は、管理装置102に対してファーム更新要求に対する応答として更新が成功した旨を通知する(S124)。
以上の処理を行うことにより、ネットワークを介して通信可能な被更新装置のファームウェアをソフトウェア更新装置によって更新することができる。
In response to this request, the
The above process is the one-time password erasure process, and the one-time password stored in the
When the one-time password deletion process is completed, the
By performing the above processing, the firmware of the update target apparatus that can communicate via the network can be updated by the software update apparatus.
この処理をフローチャートで示したものが図18乃至図20である。これらの図を用いて上述の処理についての説明を補足する。これらの図において、2本のフローチャート間の矢印は、データの転送を示し、送信側は矢印の根元のステップで転送処理を行い、受信側はその情報を受信すると矢印の先端のステップの処理を行うものとする。
仲介装置101は、管理装置102からファーム更新要求を受け取ると、図18の左側に示すフローチャートの処理を開始する。そして、ステップS201でワンタイムパスワードを生成して記憶し、ステップS202で画像処理装置100に対してSSLによる接続要求を行う。
This process is shown in flowcharts in FIGS. The above-described processing will be supplemented using these drawings. In these figures, the arrow between the two flowcharts indicates data transfer, the transmission side performs the transfer process at the step at the base of the arrow, and the reception side receives the information and performs the process at the step at the tip of the arrow. Assumed to be performed.
When the
画像処理装置100は、この要求を受け取ると図18の右側に示すフローチャートの処理を開始する。そして、ステップS301で仲介装置101側とSSLによる接続処理を行う。仲介装置101側のステップS202と画像処理装置100側のステップS301で行う処理が、図14に示した相互認証処理である。
認証が成功すると、画像処理装置100は図14のステップS36のように認証成功の応答を返す。すると、仲介装置101はステップS203で画像処理装置100にステップS201で生成したワンタイムパスワードを送信し、記憶するよう要求する。画像処理装置100はこれを受け取ると、ステップS302で記憶し、記憶完了の応答を返す。仲介装置101は、この応答があるとステップS204で画像処理装置100に切断要求を送ってSSLによる接続を切断する。この要求を受けた仲介装置101もステップS303で接続を切断する。ここまでの処理がワンタイムパスワード共有処理である。
Upon receiving this request, the
If the authentication is successful, the
次に、仲介装置101は、ステップS205で画像処理装置100に対してFTPの接続要求を行う。すると、画像処理装置100はステップS304で認証のためのIDとパスワードを要求するので、仲介装置101はこれに応じてステップS206でIDとステップS201で生成したワンタイムパスワードを送信する。
画像処理装置100はこのIDとパスワードを用いて認証処理を行い、これらが記憶しているものと一致すれば認証成功としてその旨の応答を返す。そして、これを受けた仲介装置101は、ステップS207で画像処理装置100に対してバージョン情報取得要求を送信してファームのバージョン情報を求める。画像処理装置100はこれに応じてステップS306で仲介装置101にバージョン情報を送信し、仲介装置101はこれを取得するとステップS208でFTP接続を切断する。ここまでの処理がバージョン情報取得処理である。
なお、ステップS305で認証が失敗した場合には、ステップS307に進んでエラー処理を行うが、この処理としては、仲介装置101に認証失敗を通知して再度接続要求を待つ状態に移行することが考えられる。
図示は省略したが、ステップS301等でSSLによる相互認証が失敗した場合にも、同様な処理を行うようにするとよい。
Next, the
The
Note that if authentication fails in step S305, the process proceeds to step S307 to perform error processing. As this processing, the transition to a state in which the
Although illustration is omitted, similar processing may be performed when mutual authentication by SSL fails in step S301 or the like.
一方仲介装置101は、ステップS208の次にステップS209に進み、ステップS207で取得したバージョン情報が最新バージョンのものか否かをもとに、画像処理装置100のファームを更新する必要があるか否か判断する。そして、更新する必要があれば、ステップS210に進んでファーム送信処理を行う。
この場合、仲介装置101はステップS210でステップS205及びS206と同様な処理を、画像処理装置100はステップS308でステップS304及びS305と同様な処理を行ってFTP接続を確立する。ここで用いるパスワードも、ステップS206の場合と同じワンタイムパスワードである。
On the other hand, the
In this case, the
接続が確立すると、仲介装置101はステップS211で画像処理装置100に更新用ファームウェアを送信し、画像処理装置100はステップS309でこれを受信すると、ステップS310で自機のファームウェアをその更新用ファームウェアに更新する。このとき、他のジョブが実行中であったり、予約されていたりした場合には、それが完了するまでは更新せずに待機するようにしてもよい。ファームウェアの更新が完了すると、画像処理装置100はステップS311で自身をリセットし、再起動して新たなファームを有効にする。また、画像処理装置100のリセットにより、FTP接続は切断される。以上がファーム送信処理である。
When the connection is established, the
続いて、画像処理装置100の再起動が完了すると、画像処理装置100は起動したことを示す電源ON通知を仲介装置101に送信する。すると、仲介装置101はこれに応じてステップS212で画像処理装置100に対してFTPによる通信を要求し、以下ステップS214までで、ステップS205〜S208と同様な処理を行って画像処理装置100からファームのバージョン情報を取得する。画像処理装置側でも、ステップS313及びS314で、ステップS304乃至S307の場合と同様な処理を行ってファームのバージョン情報を送信する。
Subsequently, when the restart of the
そして、仲介装置101はステップS215で、ステップS213で取得したバージョン情報と、ステップS211で送信した更新用ファームウェアのバージョン情報を比較し、一致していれば更新成功と判断して図20のステップS217に進む。一致していなければ、更新失敗と判断してステップS216に進み、エラー処理を行う。このエラー処理としては、再度S210からのファーム送信処理を行って画像処理装置100のファームウェアの更新を試みたり、あるいはファーム更新要求の送信元である管理装置102に対して、更新が失敗した旨の応答を返したりするとよい。後者の場合には、処理を終了し、再度のファーム更新要求を待つことになる。
In step S215, the mediating
ステップS215の判断がYESであり、図20のステップS217に進むと、ワンタイムパスワード無効化処理を開始し、仲介装置101はステップS202の場合と同様に画像処理装置100に対してSSLによる接続処理を行い、画像処理装置100側のステップS315の処理と併せて相互認証を行う。そして、画像処理装置100側から認証成功の応答が返されると、仲介装置101はステップS218で画像処理装置100に対して消去用パスワードを送信し、これを記憶するよう要求する。画像処理装置100はこれを受け取ると、ステップS316で記憶していたワンタイムパスワードに消去用パスワードを上書き記憶し、記憶完了の応答を返す。仲介装置101は、この応答があるとステップS219で画像処理装置100に切断要求を送ってSSLによる接続を切断する。この要求を受けた仲介装置101もステップS317で接続を切断する。ここまでの処理がワンタイムパスワード無効化処理である。
なお、この処理において、記憶しているワンタイムパスワードを消去できるのであれば必ずしも上書きをしなくてもよいことは、上述した通りである。
When the determination in step S215 is YES and the process proceeds to step S217 in FIG. 20, the one-time password invalidation process is started, and the
In this process, as described above, it is not always necessary to overwrite the stored one-time password as long as the stored one-time password can be deleted.
この処理は、消去用パスワードを必ずしも毎回生成する必要がない点を除けば、ワンタイムパスワード共有処理と同様なものである。しかし、このような処理によって、画像処理装置100がFTPの認証処理に用いるパスワードを別のパスワードに変更すれば、漏洩の危険性がある元のワンタイムパスワードを無効化でき、第3者によるなりすましを防止できる。また、消去用パスワードはFTPでは転送せず、例えばSSLを用いた安全な通信経路で転送するようにすれば、これが漏洩することもない。
This process is similar to the one-time password sharing process except that it is not always necessary to generate an erasure password each time. However, if the password used for the FTP authentication process by the
ワンタイムパスワード無効化処理の後、仲介装置101はステップS220で管理装置102にファームウェア更新についての結果を通知し、処理を終了する。
なお、ステップS209でファームの更新が不要と判断した場合には、そのまま図20のステップS217に進んでワンタイムパスワード無効化処理を行い、ステップS220で管理装置102に結果を通知して終了する。画像処理装置100側の処理は、基本的に仲介装置101からのトリガに応じて行うので、ステップS210やステップS212での要求がなければ、画像処理装置100は図19に示した部分の処理は行わない。
After the one-time password invalidation process, the
If it is determined in step S209 that updating of the firmware is unnecessary, the process directly proceeds to step S217 in FIG. 20 to perform a one-time password invalidation process, and the result is notified to the
以上説明したような処理を行うことにより、ネットワークを介して通信可能な被更新装置のファームウェアをソフトウェア更新装置によって更新する場合において、高い安全性を確保しながらコンパクトなプログラムによって更新処理を行うことができる。更新の対象がファームウェア以外のソフトウェアでも同様であることは、上述した通りである。
すなわち、まずソフトウェアの更新に必須のバージョン情報取得処理及びソフトウェア送信処理は処理負荷の小さいFTPによって行うようにしているので、プログラムをコンパクトにまとめることができる。ソフトウェア自体は、パスワード等の認証情報や被管理装置の利用者情報等に比べて機密性の高いデータではないので、FTPなどの暗号化を行わない通信で問題なく、むしろ処理負荷を低減してプログラムをコンパクトにする要求が強いのである。また、ソフトウェアは、パスワード等の認証情報に比べてサイズが大きいため、これを処理負荷の小さい通信経路で送信するようにすることにより、処理負荷を大きく低減することができる。
By performing the processing as described above, when updating the firmware of the update target device that can communicate via the network by the software update device, the update processing can be performed by a compact program while ensuring high safety. it can. As described above, the update target is the same for software other than firmware.
That is, first, the version information acquisition process and the software transmission process, which are essential for software update, are performed by FTP with a small processing load, so that the program can be collected in a compact manner. The software itself is not highly confidential data compared to authentication information such as passwords and user information of managed devices. There is a strong demand for compact programs. In addition, since the software is larger in size than authentication information such as a password, the processing load can be greatly reduced by transmitting the information through a communication path with a small processing load.
一方で、不正なソフトウェアを受信しないようにするためには、通信相手の認証が重要となるが、FTPでの認証処理に使用するパスワードは、使用する直前に生成して、通信内容を暗号化するSSLを用いて仲介装置101と画像処理装置100とが共有するようにしている。従って、このパスワードが第3者に漏洩することはなく、第3者が仲介装置101になりすまして別の装置から画像処理装置100に不正なソフトウェアを送信し、これに更新させてしまうといった事態を防止できる。
また、FTPでの認証処理に使用したパスワードを、ソフトウェアの更新成功を確認した後にただちに無効化してしまうようにすれば、第3者がFTPによる通信をモニタリングしてワンタイムパスワードを不正に取得したとしても、後日そのパスワードを用いて接続される可能性はなく、不正なアクセスを防止することができる。
On the other hand, in order to prevent unauthorized software from being received, it is important to authenticate the communication partner, but a password used for FTP authentication processing is generated immediately before use to encrypt the communication contents. The
In addition, if the password used for the authentication process in FTP is invalidated immediately after confirming the successful software update, a third party illegally obtained a one-time password by monitoring FTP communication. However, there is no possibility of connection using the password later, and unauthorized access can be prevented.
また、ソフトウェア更新後に画像処理装置100が再起動した時点でソフトウェアのバージョン情報を確認するようにすれば、仲介装置101側で更新の成否を容易に知ることができる。そして、失敗していた場合に速やかに再更新等の対応を行うことができる。画像処理装置100が再起動時に電源ON通知を仲介装置101に送信するようにすれば、容易にこの確認のタイミングを計ることができる。
さらにまた、仲介装置101が外部からの要求に応じて画像処理装置100にソフトウェアを更新させ、その結果を応答として返すようにすれば、各画像処理装置100におけるソフトウェアの更新状況を管理装置102等によって管理することができる。
Further, if the software version information is confirmed when the
Furthermore, if the
また、特にファームウェアの更新を考慮した場合には、ファームウェアはハードウェアの基本的な制御を行うためのソフトウェアを含むため、ファームウェア自身に更新機能を設けた場合、更新に失敗すると装置が全く動作しなくなる恐れがある。そこで、このような事態を避けるため、更新処理用の更新プログラムを別途用意し、これ以外の部分のみのファームウェアを更新することが行われている。そして、このようにした場合、ファームウェア更新時以外の通常動作時に使用しない更新プログラムのために大きな記憶容量を使用することは、コスト面等を考慮すると妥当でない。従って、更新プログラムはできるだけ容量が小さいものが好ましいという要求がある。そこで、以上説明したような更新処理を行うようにすることにより、更新に直接必要な処理を、例えばFTPのようにコンパクトなプログラムを用いて実現できるので、更新プログラムの容量を低減し、このような要求を満たすことができる。 Also, especially when considering firmware updates, the firmware includes software for basic hardware control. Therefore, if the firmware itself has an update function, the device will operate completely if the update fails. There is a risk of disappearing. Therefore, in order to avoid such a situation, an update program for update processing is separately prepared, and firmware of only the other part is updated. In such a case, it is not appropriate to use a large storage capacity for an update program that is not used during normal operation other than during firmware update, considering cost and the like. Therefore, there is a demand that an update program having a capacity as small as possible is preferable. Therefore, by performing the update process as described above, the process directly necessary for the update can be realized by using a compact program such as FTP, so that the capacity of the update program is reduced, and thus Can meet the demands.
また、ファームウェアの場合、更新に失敗した場合に備えて、被更新装置にはファームウェア自体の他にファームウェア更新処理用の更新プログラムを備えることは上述の通りであるが、上述の処理において、ファームウェアの更新に失敗した場合にはワンタイムパスワードを無効化しないようにしておけば、更新に失敗したとしても、SSLを使用しないバージョン情報取得処理からやり直すことができるので、画像処理装置100における更新プログラムとして用意するのは、バージョン情報取得処理及びファームウェア送信処理のためのプログラムのみでよい。従って、パスワードの受け渡しにSSLを使用して安全性を向上させながら、この処理に必要な部分を更新プログラムに含める必要がなく、更新プログラムをコンパクトにすることができる。
In addition, in the case of firmware, as described above, the device to be updated includes an update program for firmware update processing in addition to the firmware itself in preparation for a case where the update fails. If the update fails, if the one-time password is not invalidated, even if the update fails, it is possible to start over from the version information acquisition process that does not use SSL, so as an update program in the
なお、ワンタイムパスワードの無効化について、上述した処理では、これを消去用パスワードの上書きによって行うようにすることにより、ワンタイムパスワードの共有の場合と処理を共通化し、プログラムのコンパクト化を図っている。
しかし、消去用パスワードの上書き要求に代えて、単に記憶しているワンタイムパスワードを認証処理に用いないようにする要求を行い、画像処理装置がこれに応じてワンタイムパスワードによる認証処理を行わない旨の設定を行うようにしてもよい。このようにする場合、要求自体を秘匿する必要はないので、必ずしもSSLによる通信を行う必要はない。画像処理装置100から消去用パスワードが盗まれる危険性を考慮するのであれば、このような設定が有効になる。
Regarding the invalidation of the one-time password, the above-described processing is performed by overwriting the erasure password, so that the processing is shared with the case of sharing the one-time password and the program is made compact. Yes.
However, instead of overwriting the erasure password, a request is made not to use the stored one-time password for authentication processing, and the image processing apparatus does not perform authentication processing using the one-time password accordingly. You may make it perform the setting to this effect. In this case, since it is not necessary to conceal the request itself, it is not always necessary to perform SSL communication. If the risk of the erasure password being stolen from the
〔変形例〕
以下、上述した実施形態に適用できる種々の変形例について説明する。
以上説明した実施形態においては、仲介装置101が管理装置102からファーム更新要求を受けた場合にファームの更新処理を開始し、この際に仲介装置101がワンタイムパスワードを生成する例について説明した。しかし、この発明に係るファームの更新処理は、これに限られるものではない。
[Modification]
Hereinafter, various modified examples applicable to the above-described embodiment will be described.
In the embodiment described above, an example has been described in which when the
まず、第1の変形例として、ワンタイムパスワードの生成を画像処理装置100側で行うようにしてもよい。この場合、図17のステップS101乃至S106の処理に代えて、図21に示す処理を行う。
すなわち、仲介装置101がステップS101でファーム更新要求を受けると、画像処理装置100のファーム更新に係る処理を開始するが、初めに画像処理装置100に対してワンタイムパスワード生成要求を送信する(S401)。この要求自体は特に秘匿する必要はないので、SOAPドキュメントとしてHTTPによって送信することができる。
First, as a first modification, the one-time password may be generated on the
That is, when the
そして、画像処理装置100はこれに応じてワンタイムパスワードを生成し、これを記憶する(S402)。そしてこのワンタイムパスワードを、以後FTP接続の際の認証処理において、ワンタイムパスワード生成要求の送信元である仲介装置101のIDと対応するパスワードとして用いるものとする。
その後、画像処理装置100は仲介装置101に対してSSLによる接続要求を行う(S403)。この接続が確立すると、仲介装置101にワンタイムパスワードを送信し、これを記憶するよう要求する(S404)。この要求は、SOAPによるRPCとしてなされる。
In response to this, the
Thereafter, the
仲介装置101は、この要求に応じて受信したワンタイムパスワードを記憶手段に記憶し(S405)、以後FTP接続の際の認証処理において、このワンタイムパスワードを送信するものとする。そして、図示は省略したが、この記憶の終了後、仲介装置101はその旨の応答を画像処理装置100に返し、画像処理装置100はこの応答を受け取るとSSLの接続を切断する(S406)。ステップS403乃至S406の通信は、HTTPSを用いて行われる。
そして、ステップS402乃至S406の処理において、画像処理装置100のCPUが認証情報設定手段として機能する。
このような処理によっても、図17に示した処理の場合と同様に、仲介装置101と画像処理装置100が暗号化された通信経路を用いて安全にワンタイムパスワードを共有することができる。従って、図17に示した処理を行う場合と同様な効果を得ることができる。
The
In the processes in steps S402 to S406, the CPU of the
Even in such a process, as in the case of the process shown in FIG. 17, the
また、第2の変形例として、画像処理装置100が、操作パネル205等から直接ファームウェアの更新指示を受け付けることができるようにしてもよい。この場合、図17のステップS101乃至S106の処理に代えて、図22に示す処理を行う。
すなわち、画像処理装置100がファームウェアの更新指示を受け付けた場合(S411)、画像処理装置100のファーム更新に係る処理を開始し、仲介装置101に対してワンタイムパスワード生成要求を送信するようにする(S412)。そして仲介装置101は、この要求を受け取ると、図17に示した処理で管理装置102からファーム更新要求を受け取った場合と同様に、ワンタイムパスワード共有処理を行う。すなわち、ステップS413〜S417では、図17のステップS102〜S106と同様な処理を行う。
As a second modification, the
That is, when the
このようにすれば、画像処理装置100が直接ファームウェアの更新指示を受け付けた場合でも、管理装置102からファーム更新要求があった場合と同様に画像処理装置100のファームウェアを更新することができる。
なお、この変形例では管理装置102からのファーム更新要求はないが、管理装置102が特定できるのであれば、ステップS124の更新結果通知は行うようにするとよい。このようにすれば、管理装置102は自身以外からの指示によるファームの更新状況も把握でき、適切な管理を行うことができる。
また、仲介装置101がOp-Port56に接続する操作部から直接ファームウェアの更新指示を受け付け、これに応じて画像処理装置100のファーム更新に係る処理(ワンタイムパスワード共有処理以降の処理)を開始できるようにしてもよい。
In this way, even when the
In this modification, there is no firmware update request from the
In addition, the
第3の変形例としては、第1の変形例と第2の変形例を組み合わせることが考えられる。すなわち、画像処理装置100が、直接ファームウェアの更新指示を受け付け、さらにワンタイムパスワードの生成を画像処理装置100側で行うようにするのである。
この場合、図17のステップS101乃至S106の処理に代えて、図23に示す処理を行う。
As the third modification, it is conceivable to combine the first modification and the second modification. That is, the
In this case, the processing shown in FIG. 23 is performed in place of the processing in steps S101 to S106 in FIG.
この処理は、ステップS411の処理は図22の場合と同様であり、ステップS402〜S406の処理は図21の場合と同様であるので、詳細な説明は省略するが、この場合には、仲介装置101は、ステップS404でワンタイムパスワードの記憶要求があった時点で画像処理装置100のファーム更新に係る処理が開始されたものと認識し、以後の処理を行うものとする。
この変形例の効果は、第1の変形例の効果と第2の変形例の効果を合わせたものになる。
This process is the same as the process in step S411 in FIG. 22 and the processes in steps S402 to S406 are the same as in FIG. 21, so detailed description thereof will be omitted. 101 recognizes that the processing related to the firmware update of the
The effect of this modification is a combination of the effect of the first modification and the effect of the second modification.
第4の変形例としては、ワンタイムパスワード消去処理において、消去用パスワードの記憶要求を画像処理装置100側から行うようにすることができる。この場合、図17のステップS120乃至S123の処理に代えて、図24に示す処理を行う。
すなわち、画像処理装置100がまず図22のステップS412の場合と同様に仲介装置101に対してSSLによる接続要求を行う(S421)。そして、この接続が確立すると、仲介装置101に消去用パスワードを送信し、これを記憶するよう要求する(S422)。この要求は、いわばワンタイムパスワードの無効化要求であり、この処理において、画像処理装置100のCPUが認証情報無効化手段として機能する。
As a fourth modification, in the one-time password erasing process, a request for storing an erasing password can be made from the
That is, the
仲介装置101は、この要求に応じてワンタイムパスワードを受信した消去用パスワードで上書きし(S423)、それまで記憶していたワンタイムパスワードは以後FTP接続の際に送信しないようにする。一方、画像処理装置100自身も、記憶しているワンタイムパスワードを消去用パスワードで上書きし(S424)、それまで記憶していたワンタイムパスワードは以後FTP接続の際の認証処理に用いないようにする。これらの記憶の終了後、画像処理装置100はSSLの接続を切断する(S425)。
この変形例は、上述した実施形態及び各変形例に適用できるが、第1及び第3の変形例のように、画像処理装置100側でワンタイムパスワードを生成する場合に適用すると、SSLによるパスワードの送信処理を画像処理装置100側に統一できてプログラムの簡略化に効果的である。
なお、この変形例を適用する場合、仲介装置101が、図17のステップS119でファームの更新が成功したと判断した場合に画像処理装置101に対してその旨を通知するようにし、画像処理装置101がその通知を受け取った場合に図24に示す処理を開始するようにするとよい。
In response to this request, the
This modification can be applied to the above-described embodiment and each modification, but when applied to a case where a one-time password is generated on the
When this modification is applied, when the
また、以上の実施形態及び各変形例においては、被更新装置の例として通信機能を備えた画像処理装置について主に説明したが、この発明はこれに限られるものではなく、通信機能を備えたネットワーク家電,自動販売機,医療機器,電源装置,空調システム,ガス・水道・電気等の計量システム等や、ネットワークに接続可能な汎用コンピュータ,自動車,航空機等も含め、通信機能を備えた各種電子装置に適用可能である。 Moreover, in the above embodiment and each modification, although the image processing apparatus provided with the communication function was mainly demonstrated as an example of a to-be-updated apparatus, this invention is not restricted to this, The communication function was provided. Network electronics, vending machines, medical equipment, power supplies, air conditioning systems, gas / water / electric metering systems, and other electronic devices with communication functions, including general-purpose computers that can be connected to networks, automobiles, aircraft, etc. Applicable to the device.
例えば、図1に示した遠隔管理システムにおいて、これらの各装置を被管理装置(被更新装置)とし、図25に示すような遠隔管理システム及び証明書設定システムを構成することが考えられる。この図においては、仲介装置101を別途設ける被管理装置の例としてテレビ受像機12aや冷蔵庫12bのようなネットワーク家電、医療機器12c,自動販売機12d,計量システム12e,空調システム12fを挙げている。そして、仲介装置101の機能を併せ持つ被管理装置の例として、自動車13aや航空機13bを挙げている。また、自動車13aや航空機13bのように広範囲を移動する装置においては、ファイアウォール(FW)104の機能も併せ持つようにすることが好ましい。
このような遠隔管理システムにおいて被管理装置となる各装置のソフトウェアを更新する場合にも、この発明はもちろん適用可能である。
For example, in the remote management system shown in FIG. 1, each of these devices may be managed devices (updated devices), and a remote management system and a certificate setting system as shown in FIG. 25 may be configured. In this figure, network appliances such as a
Of course, the present invention can also be applied to the case where the software of each device to be managed is updated in such a remote management system.
また、ソフトウェア更新装置についても、図1、図3及び図25等に示した仲介装置に限られるものではなく、ソフトウェア更新の専用装置であったり、あるいは管理装置102であってもよい。
さらに、この発明のソフトウェア更新システムは、必ずしも遠隔管理システムに含まれるものとは限らず、また、被更新装置,ソフトウェア更新装置,管理装置の構成及びこれらの接続形式は、以上の実施形態に限られるものではない。これらの各装置の間の通信も、有線,無線を問わず、ネットワークを構築可能な各種通信回線(通信経路)を用いて行うことができる。
Also, the software update device is not limited to the mediation device shown in FIG. 1, FIG. 3, FIG. 25, etc., and may be a software update dedicated device or a
Furthermore, the software update system of the present invention is not necessarily included in the remote management system, and the configuration of the update target device, the software update device, the management device, and the connection form thereof are limited to the above embodiments. Is not something Communication between these devices can be performed using various communication lines (communication paths) capable of constructing a network regardless of wired or wireless.
また、通信経路について、第1の通信経路としてSSLによる通信経路、第2の通信経路としてFTPによる通信経路を用いた例について説明したが、これに限られるものではなく、第1の通信経路が送信すべきデータを暗号化して送信するものであり、第2の通信経路が第1の通信経路よりも処理負荷の小さいものであれば、他のプロトコルを使用した通信経路(通信方式)であっても構わない。このとき、第2の通信経路を、送信すべきデータを暗号化しないで送信する通信経路とすることにより、処理負荷を低減することが考えられる。また、更新装置が被更新装置に更新用認証情報を送信して認証を要求する際の通信経路が、更新用ソフトウェアの転送に使用する第2の通信経路と異なるもの、例えば認証用の独自プロトコルによる通信経路であってもよい。
さらに、以上説明した変形を適宜組み合わせて適用してよいことも、もちろんである。
Moreover, although the example which used the communication path by SSL as a 1st communication path and the communication path by FTP as a 2nd communication path was demonstrated about the communication path, it is not restricted to this, The 1st communication path is If the data to be transmitted is encrypted and transmitted, and the second communication path has a smaller processing load than the first communication path, the communication path (communication method) using another protocol is used. It doesn't matter. At this time, it is conceivable to reduce the processing load by setting the second communication path as a communication path for transmitting data to be transmitted without encryption. Further, the communication path when the update apparatus transmits the authentication information for update to the apparatus to be updated and requests authentication is different from the second communication path used for the transfer of the update software, for example, the original protocol for authentication May be a communication path.
Furthermore, it goes without saying that the above-described modifications may be applied in appropriate combination.
また、この発明によるプログラムは、ネットワークを介して被更新装置と通信可能なソフトウェア更新装置を制御するコンピュータに、上述した各機能(認証情報設定手段,認証要求手段,送信手段,その他の手段としての機能)を実現させるためのプログラムであり、このようなプログラムをコンピュータに実行させることにより、上述したような効果を得ることができる。 In addition, the program according to the present invention provides the above-described functions (authentication information setting means, authentication request means, transmission means, and other means) to a computer that controls a software update apparatus that can communicate with an update target apparatus via a network. The above-described effects can be obtained by causing a computer to execute such a program.
このようなプログラムは、はじめからコンピュータに備えるROMあるいはHDD等の記憶手段に格納しておいてもよいが、記録媒体であるCD−ROMあるいはフレキシブルディスク,SRAM,EEPROM,メモリカード等の不揮発性記録媒体(メモリ)に記録して提供することもできる。そのメモリに記録されたプログラムをコンピュータにインストールしてCPUに実行させるか、CPUにそのメモリからこのプログラムを読み出して実行させることにより、上述した各手順を実行させることができる。
さらに、ネットワークに接続され、プログラムを記録した記録媒体を備える外部機器あるいはプログラムを記憶手段に記憶した外部機器からダウンロードして実行させることも可能である。
Such a program may be stored in a storage means such as a ROM or HDD provided in the computer from the beginning, but a non-volatile recording such as a CD-ROM or flexible disk, SRAM, EEPROM, memory card or the like as a recording medium. It can also be recorded on a medium (memory) and provided. Each procedure described above can be executed by installing a program recorded in the memory in a computer and causing the CPU to execute the program, or causing the CPU to read and execute the program from the memory.
Furthermore, it is also possible to download and execute an external device that is connected to a network and includes a recording medium that records the program, or an external device that stores the program in the storage unit.
以上説明してきたように、この発明のソフトウェア更新装置、ソフトウェア更新システム、ソフトウェア更新方法、またはプログラムによれば、ネットワークを介して通信可能な被更新装置のソフトウェアをソフトウェア更新装置によって更新する場合において、高い安全性を確保しながら更新処理の負荷を低減することができる。
従って、この発明を適用することにより、例えばユーザに販売した通信装置のソフトウェアを安全かつ容易に更新可能とするようなシステムを提供することができる。
As described above, according to the software update device, the software update system, the software update method, or the program of the present invention, when the software of the update target device that can communicate via the network is updated by the software update device, The load of update processing can be reduced while ensuring high safety.
Therefore, by applying the present invention, for example, it is possible to provide a system that can safely and easily update software of a communication device sold to a user.
10:被管理装置 11:仲介機能付被管理装置
52:CPU 53:SDRAM
54:フラッシュメモリ 55:RTC
56:Op-Port 57:PHY
58:モデム 59:HDD制御部
63:HDD 70:アプリケーション層
80:サービス層 90:プロトコル層
100:画像処理装置 101:仲介装置
102:管理装置 103:インタネット
104:ファイアウォール 105:端末装置
110:仲介機能付画像処理装置
200:コントローラボード 201:HDD
202:NV−RAM 203:PIボード
204:PHY 205:操作パネル
206:プロッタ/スキャナエンジンボード
207:電源ユニット 212:PCI−BUS
300:OCS 301:ECS
302:MCS 303:NCS
304:FCS 305:CSS
306:SCS 307:SRM
308:IMH 309:コピーアプリ
310:ファクスアプリ 311:プリンタアプリ
312:スキャナアプリ
313:ネットファイルアプリ 314:ウェブアプリ
315:NRSアプリ 316:DCS
317:UCS 318:DESS
319:CCS
10: Managed device 11: Managed device with mediation function 52: CPU 53: SDRAM
54: Flash memory 55: RTC
56: Op-Port 57: PHY
58: Modem 59: HDD controller 63: HDD 70: Application layer 80: Service layer 90: Protocol layer 100: Image processing device 101: Mediation device 102: Management device 103: Internet 104: Firewall 105: Terminal device 110: Mediation function Image processing apparatus 200: Controller board 201: HDD
202: NV-RAM 203: PI board 204: PHY 205: Operation panel 206: Plotter / scanner engine board 207: Power supply unit 212: PCI-BUS
300: OCS 301: ECS
302: MCS 303: NCS
304: FCS 305: CSS
306: SCS 307: SRM
308: IMH 309: Copy application 310: Fax application 311: Printer application 312: Scanner application 313: Net file application 314: Web application 315: NRS application 316: DCS
317: UCS 318: DESS
319: CCS
Claims (19)
前記被更新装置のソフトウェアを更新する場合に更新用認証情報を生成し、これを暗号化された第1の通信経路で前記被更新装置に送信して記憶するよう要求する認証情報設定手段と、
前記被更新装置に前記更新用認証情報を送信し、該認証情報による認証処理を要求する認証要求手段と、
該認証処理が成功した場合に更新用ソフトウェアを前記第1の通信経路よりも処理負荷の小さい第2の通信経路で前記被更新装置に送信する送信手段と、
前記被更新装置との通信に基づき、前記被更新装置においてソフトウェアの前記更新用ソフトウェアへの更新が成功したと判断した場合に、前記更新用認証情報に上書きさせるための消去用情報を生成し、これを前記第1の通信経路で前記被更新装置に送信して前記更新用認証情報に上書きして記憶するよう要求する認証情報消去手段とを設けたことを特徴とするソフトウェア更新装置。 A software update device capable of communicating with an update target device via a network,
Authentication information setting means for generating authentication information for updating when updating the software of the device to be updated, and requesting this to be transmitted to the device to be updated and stored in the encrypted first communication path;
Authentication request means for transmitting the update authentication information to the update target device and requesting an authentication process using the authentication information;
Transmitting means for transmitting the update software to the updated apparatus via a second communication path having a processing load smaller than that of the first communication path when the authentication process is successful ;
Based on the communication with the update target device, if it is determined that the update target device has been successfully updated to the update software, it generates erasure information for overwriting the update authentication information, A software updating apparatus, comprising: an authentication information erasing unit that transmits the information to the update target apparatus via the first communication path and requests to store the update authentication information by overwriting it .
前記被更新装置のソフトウェアの更新を、外部からのソフトウェア更新要求に応じて行い、その結果を該更新要求の要求元に返す手段を設けたことを特徴とするソフトウェア更新装置。 The software update device according to claim 1 ,
A software update apparatus comprising means for updating software of the update target apparatus in response to an external software update request and returning the result to a request source of the update request.
前記被更新装置から起動した旨を示す起動通知を受け付ける手段と、
前記更新用ソフトウェアの送信後に前記被更新装置から前記起動通知を受け付けた場合に該被更新装置からソフトウェアのバージョン情報を取得し、送信した更新用ソフトウェアのバージョン情報と比較して更新の成否を確認する手段とを設けたことを特徴とするソフトウェア更新装置。 The software updating apparatus according to claim 1 or 2 ,
Means for receiving a start-up notification indicating start-up from the updated device;
When the activation notification is received from the update target device after the update software is transmitted, the software version information is acquired from the update target device, and the success or failure of the update is confirmed by comparing with the transmitted version information of the update software. And a software updating device.
前記第1の通信経路はSSLによる通信を行う通信経路であり、
前記第2の通信経路はFTPによる通信を行う通信経路であることを特徴とするソフトウェア更新装置。 The software update device according to any one of claims 1 to 3 ,
The first communication path is a communication path for performing communication by SSL,
The software update apparatus, wherein the second communication path is a communication path for performing communication by FTP.
前記第1の通信経路は、送信すべきデータを暗号化して送信する通信経路であり、
前記第2の通信経路は、送信すべきデータを暗号化しないで送信する通信経路であることを特徴とするソフトウェア更新装置。 The software update device according to any one of claims 1 to 3 ,
The first communication path is a communication path for encrypting and transmitting data to be transmitted;
The software update apparatus, wherein the second communication path is a communication path for transmitting data to be transmitted without encryption.
前記ソフトウェア更新装置に、
前記被更新装置のソフトウェアを更新する場合に更新用認証情報を生成し、これを暗号化された第1の通信経路で前記被更新装置に送信して記憶するよう要求する認証情報設定手段と、
前記被更新装置に前記更新用認証情報を送信し、該認証情報による認証処理を要求する認証要求手段と、
該認証処理が成功した場合に更新用ソフトウェアを前記第1の通信経路よりも処理負荷の小さい第2の通信経路で前記被更新装置に送信する送信手段と、
前記被更新装置との通信に基づき、前記被更新装置においてソフトウェアの前記更新用ソフトウェアへの更新が成功したと判断した場合に、前記更新用認証情報に上書きさせるための消去用情報を生成し、これを前記第1の通信経路で前記被更新装置に送信して前記更新用認証情報に上書きして記憶するよう要求する認証情報消去手段とを設け、
前記被更新装置に、
前記更新用認証情報を記憶するよう要求された場合にこれを記憶する記憶手段と、
前記認証処理を要求された場合に、受信した更新用認証情報と前記記憶手段に記憶している更新用認証情報とを用いて認証処理を行って結果を返す認証手段と、
該認証処理が成功した場合に前記更新用ソフトウェアを受信し、自機のソフトウェアを該更新用ソフトウェアに更新する更新手段と、
前記更新装置と通信して、該更新装置に前記更新手段によるソフトウェアの更新が成功したことを確認させる手段と、
前記消去用情報を記憶するよう要求された場合にこれを前記更新用認証情報に上書きして記憶する手段とを設けたことを特徴とするソフトウェア更新システム。 A software update system comprising a software update device and an updated device that can communicate with each other via a network,
In the software update device,
Authentication information setting means for generating authentication information for updating when updating the software of the device to be updated, and requesting this to be transmitted to the device to be updated and stored in the encrypted first communication path;
Authentication request means for transmitting the update authentication information to the update target device and requesting an authentication process using the authentication information;
Transmitting means for transmitting the update software to the updated apparatus via a second communication path having a processing load smaller than that of the first communication path when the authentication process is successful;
Based on the communication with the update target device, if it is determined that the update target device has been successfully updated to the update software, it generates erasure information for overwriting the update authentication information, An authentication information erasure unit that transmits the information to the update target device via the first communication path and requests to store the update authentication information by overwriting the authentication information;
In the updated device,
Storage means for storing the update authentication information when requested to store the update authentication information;
An authentication unit that performs an authentication process using the received update authentication information and the update authentication information stored in the storage unit and returns a result when the authentication process is requested;
An update unit that receives the update software when the authentication process is successful, and updates the software of the device to the update software;
Communicating with the update device, and means to confirm that the software update was successful by the update unit to the updating device,
A software update system comprising: means for storing the erasure information by overwriting the update authentication information when requested to store the erasure information.
前記被更新装置に、
前記ソフトウェアの更新が成功したことを確認させる手段として、
前記更新手段によるソフトウェアの更新後に自機を再起動する手段と、
起動時に前記ソフトウェア更新装置にその旨を示す起動通知を送信する手段と、
前記ソフトウェア更新装置からの要求に応じて該装置にソフトウェアのバージョン情報を送信する手段とを設け、
前記ソフトウェア更新装置に、
前記更新用ソフトウェアの送信後に前記被更新装置から前記起動通知を受け付けた場合に該被更新装置に対してソフトウェアのバージョン情報の送信を要求して該バージョン情報を取得し、送信した更新用ソフトウェアのバージョン情報と比較して更新の成否を確認する手段を設けたことを特徴とするソフトウェア更新システム。 The software update system according to claim 6 ,
In the updated device,
As a means for confirming that the software update was successful,
Means for restarting the device after updating the software by the updating means;
Means for transmitting a startup notification to that effect to the software update device at startup;
Means for transmitting software version information to the device in response to a request from the software updating device;
In the software update device,
When the activation notification is received from the update target device after the update software is transmitted, the update target device is requested to transmit the version information of the software to acquire the version information. A software update system comprising means for confirming the success or failure of an update compared with version information.
前記第1の通信経路はSSLによる通信を行う通信経路であり、
前記第2の通信経路はFTPによる通信を行う通信経路であることを特徴とするソフトウェア更新システム。 The software update system according to claim 6 or 7 ,
The first communication path is a communication path for performing communication by SSL,
The software update system, wherein the second communication path is a communication path for performing communication by FTP.
前記第1の通信経路は、送信すべきデータを暗号化して送信する通信経路であり、
前記第2の通信経路は、送信すべきデータを暗号化しないで送信する通信経路であることを特徴とするソフトウェア更新システム。 The software update system according to claim 6 or 7 ,
The first communication path is a communication path for encrypting and transmitting data to be transmitted;
The software update system, wherein the second communication path is a communication path for transmitting data to be transmitted without encryption.
前記被更新装置のソフトウェアを更新する場合に更新用認証情報を生成し、これを暗号化された第1の通信経路で前記被更新装置に送信して記憶させ、
前記被更新装置に前記更新用認証情報を送信して該認証情報による認証処理を行わせ、
該認証処理が成功した場合に更新用ソフトウェアを前記第1の通信経路よりも処理負荷の小さい第2の通信経路で前記被更新装置に送信してソフトウェアの更新を行わせ、
前記被更新装置との通信に基づき、前記被更新装置においてソフトウェアの前記更新用ソフトウェアへの更新が成功したと判断した場合に、前記更新用認証情報に上書きさせるための消去用情報を生成し、これを前記第1の通信経路で前記被更新装置に送信して前記更新用認証情報に上書きして記憶させることを特徴とするソフトウェア更新方法。 A software update method for updating software of a device to be updated that can communicate via a network by a software update device,
When updating the software of the device to be updated, update authentication information is generated, and this is transmitted to the device to be updated through the encrypted first communication path to be stored,
Transmitting the authentication information for updating to the device to be updated and performing authentication processing by the authentication information;
When the authentication process is successful, the update software is transmitted to the update target device via the second communication path having a processing load smaller than that of the first communication path, and the software is updated .
Based on the communication with the update target device, if it is determined that the update target device has been successfully updated to the update software, the erasure information for overwriting the update authentication information is generated, software update method comprising Rukoto is stored by overwriting the updated authentication information it sends the to-be update device in the first communication path.
前記被更新装置のソフトウェアの更新を、外部からのソフトウェア更新要求に応じて行い、その結果を該更新要求の要求元に返すことを特徴とするソフトウェア更新方法。 The software update method according to claim 10 , comprising:
A software update method, comprising: updating software of the update target device in response to an external software update request, and returning the result to a request source of the update request.
前記被更新装置から起動した旨を示す起動通知を受け付け、
前記更新用ソフトウェアの送信後に前記被更新装置から前記起動通知を受け付けた場合に該被更新装置からソフトウェアのバージョン情報を取得し、送信した更新用ソフトウェアのバージョン情報と比較して更新の成否を確認することを特徴とするソフトウェア更新方法。 The software update method according to claim 10 or 11 ,
Accepting a start notification indicating that the device has been started from the updated device,
When the activation notification is received from the update target device after the update software is transmitted, the software version information is acquired from the update target device, and the success or failure of the update is confirmed by comparing with the transmitted version information of the update software. A software update method characterized by:
前記第1の通信経路はSSLによる通信を行う通信経路であり、
前記第2の通信経路はFTPによる通信を行う通信経路であることを特徴とするソフトウェア更新方法。 A software update method according to any one of claims 10 to 12 , comprising:
The first communication path is a communication path for performing communication by SSL,
The software update method, wherein the second communication path is a communication path for performing communication by FTP.
前記第1の通信経路は、送信すべきデータを暗号化して送信する通信経路であり、
前記第2の通信経路は、送信すべきデータを暗号化しないで送信する通信経路であることを特徴とするソフトウェア更新方法。 A software update method according to any one of claims 10 to 12 , comprising:
The first communication path is a communication path for encrypting and transmitting data to be transmitted;
The software update method, wherein the second communication path is a communication path for transmitting data to be transmitted without encryption.
前記被更新装置のソフトウェアを更新する場合に更新用認証情報を生成し、これを暗号化された第1の通信経路で前記被更新装置に送信して記憶するよう要求する認証情報設定手段と、
前記被更新装置に前記更新用認証情報を送信し、該認証情報による認証処理を要求する認証要求手段と、
該認証処理が成功した場合に更新用ソフトウェアを前記第1の通信経路よりも処理負荷の小さい第2の通信経路で前記被更新装置に送信する送信手段と、
前記被更新装置との通信に基づき、前記被更新装置においてソフトウェアの前記更新用ソフトウェアへの更新が成功したと判断した場合に、前記更新用認証情報に上書きさせるための消去用情報を生成し、これを前記第1の通信経路で前記被更新装置に送信して前記更新用認証情報に上書きして記憶するよう要求する認証情報消去手段として機能させるためのプログラム。 A computer that controls a software update device capable of communicating with the update target device via a network;
Authentication information setting means for generating authentication information for updating when updating the software of the device to be updated, and requesting this to be transmitted to the device to be updated and stored in the encrypted first communication path;
Authentication request means for transmitting the update authentication information to the update target device and requesting an authentication process using the authentication information;
Transmitting means for transmitting the update software to the updated apparatus via a second communication path having a processing load smaller than that of the first communication path when the authentication process is successful ;
Based on the communication with the update target device, if it is determined that the update target device has been successfully updated to the update software, it generates erasure information for overwriting the update authentication information, program for operating this as the authentication information erasing means for requesting to store and overwrite in said first of said update authentication information transmitted by the communication path to the target update device.
前記コンピュータを、前記被更新装置のソフトウェアの更新を外部からのソフトウェア更新要求に応じて行い、その結果を該更新要求の要求元に返す手段として機能させるためのプログラムをさらに含むことを特徴とするプログラム。 The program according to claim 15 , wherein
The computer further includes a program for causing the computer to update the software of the update target device in response to a software update request from the outside and returning the result to a request source of the update request. program.
前記コンピュータを、
前記被更新装置から起動した旨を示す起動通知を受け付ける手段と、
前記更新用ソフトウェアの送信後に前記被更新装置から前記起動通知を受け付けた場合に該被更新装置からソフトウェアのバージョン情報を取得し、送信した更新用ソフトウェアのバージョン情報と比較して更新の成否を確認する手段として機能させるためのプログラムをさらに含むことを特徴とするプログラム。 The program according to claim 15 or 16 ,
The computer,
Means for receiving a start-up notification indicating start-up from the updated device;
When the activation notification is received from the update target device after the update software is transmitted, the software version information is acquired from the update target device and compared with the transmitted update software version information to confirm the success or failure of the update. A program further comprising a program for causing the function to function.
前記第1の通信経路はSSLによる通信を行う通信経路であり、
前記第2の通信経路はFTPによる通信を行う通信経路であることを特徴とするプログラム。 A program according to any one of claims 15 to 17 ,
The first communication path is a communication path for performing communication by SSL,
The second communication path is a communication path for performing communication by FTP.
前記第1の通信経路は、送信すべきデータを暗号化して送信する通信経路であり、
前記第2の通信経路は、送信すべきデータを暗号化しないで送信する通信経路であることを特徴とするプログラム。 A program according to any one of claims 15 to 17 ,
The first communication path is a communication path for encrypting and transmitting data to be transmitted;
The program according to claim 2, wherein the second communication path is a communication path for transmitting data to be transmitted without encryption.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004058270A JP4597551B2 (en) | 2003-03-28 | 2004-03-02 | Software update device, software update system, software update method, and program |
US10/810,696 US7555657B2 (en) | 2003-03-28 | 2004-03-29 | Communication device, software update device, software update system, software update method, and program |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003090827 | 2003-03-28 | ||
JP2003090886 | 2003-03-28 | ||
JP2004058270A JP4597551B2 (en) | 2003-03-28 | 2004-03-02 | Software update device, software update system, software update method, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004318838A JP2004318838A (en) | 2004-11-11 |
JP4597551B2 true JP4597551B2 (en) | 2010-12-15 |
Family
ID=33479627
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004058270A Expired - Fee Related JP4597551B2 (en) | 2003-03-28 | 2004-03-02 | Software update device, software update system, software update method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4597551B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200396124A1 (en) * | 2011-01-10 | 2020-12-17 | Snowflake Inc. | Extending remote diagnosis cloud services |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5497974B2 (en) * | 2005-12-19 | 2014-05-21 | 株式会社メガチップス | Video processing apparatus, video processing method, and video processing program |
JP4822544B2 (en) * | 2006-04-26 | 2011-11-24 | 株式会社リコー | Image forming apparatus capable of managing a plurality of module configuration information |
JP4980809B2 (en) | 2007-07-10 | 2012-07-18 | 株式会社リコー | Image forming apparatus, image forming apparatus starting method, and program |
JP2011523915A (en) * | 2007-11-27 | 2011-08-25 | ザ・ボーイング・カンパニー | Method and apparatus for delivering loadable software aircraft parts (LSAP) |
JP2009157611A (en) * | 2007-12-26 | 2009-07-16 | Cis Electronica Industria & Comercio Ltda | Magnetic head |
JP4911187B2 (en) * | 2009-03-25 | 2012-04-04 | ブラザー工業株式会社 | Information processing system, driver update program, and peripheral device |
JP5821640B2 (en) | 2012-01-06 | 2015-11-24 | 株式会社リコー | Information processing device |
WO2013147915A1 (en) | 2012-03-31 | 2013-10-03 | Intel Corporation | Method and system for verifying proper operation of a computing device after a system change |
JP5870864B2 (en) * | 2012-07-09 | 2016-03-01 | 富士ゼロックス株式会社 | Information processing apparatus, information processing system, and program |
CN106257879B (en) * | 2015-06-16 | 2020-02-14 | 阿里巴巴集团控股有限公司 | Method and device for downloading application |
JP7152966B2 (en) * | 2019-02-26 | 2022-10-13 | 株式会社Subaru | Reprogramming method for vehicle electronic control unit |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10145354A (en) * | 1996-11-14 | 1998-05-29 | Nippon Telegr & Teleph Corp <Ntt> | Remote function changing method |
JP2001075965A (en) * | 1999-06-30 | 2001-03-23 | Mega Chips Corp | Information communication system |
JP2002007355A (en) * | 2000-06-27 | 2002-01-11 | Ntt Docomo Kansai Inc | Communication method using password |
JP2002041295A (en) * | 2000-07-24 | 2002-02-08 | Sony Corp | Software update management system, management method, and record medium |
JP2004005585A (en) * | 2002-04-23 | 2004-01-08 | Matsushita Electric Ind Co Ltd | Server apparatus and program management system |
-
2004
- 2004-03-02 JP JP2004058270A patent/JP4597551B2/en not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10145354A (en) * | 1996-11-14 | 1998-05-29 | Nippon Telegr & Teleph Corp <Ntt> | Remote function changing method |
JP2001075965A (en) * | 1999-06-30 | 2001-03-23 | Mega Chips Corp | Information communication system |
JP2002007355A (en) * | 2000-06-27 | 2002-01-11 | Ntt Docomo Kansai Inc | Communication method using password |
JP2002041295A (en) * | 2000-07-24 | 2002-02-08 | Sony Corp | Software update management system, management method, and record medium |
JP2004005585A (en) * | 2002-04-23 | 2004-01-08 | Matsushita Electric Ind Co Ltd | Server apparatus and program management system |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200396124A1 (en) * | 2011-01-10 | 2020-12-17 | Snowflake Inc. | Extending remote diagnosis cloud services |
US11770292B2 (en) * | 2011-01-10 | 2023-09-26 | Snowflake Inc. | Extending remote diagnosis cloud services |
US12040940B2 (en) | 2011-01-10 | 2024-07-16 | Snowflake Inc. | Deploying upgrades for cloud services |
Also Published As
Publication number | Publication date |
---|---|
JP2004318838A (en) | 2004-11-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2004318839A (en) | Communication system, software update system, software update method and program | |
US7555657B2 (en) | Communication device, software update device, software update system, software update method, and program | |
US7489783B2 (en) | Digital certificate management system, digital certificate management apparatus, digital certificate management method, update procedure determination method and program | |
JP4791818B2 (en) | Managed apparatus, management system, managed apparatus control method, program, and recording medium | |
US7584351B2 (en) | Method of transferring digital certificate,apparatus for transferring digital certificate, and system, program, and recording medium for transferring digital certificate | |
JP4555175B2 (en) | Examination device, communication system, examination method, program, and recording medium | |
JP4576210B2 (en) | Certificate transfer device, certificate transfer system, certificate transfer method, program, and recording medium | |
JP4526809B2 (en) | Communication device manufacturing method and system | |
JP2007026412A (en) | Maintenance mediation apparatus, maintenance target apparatus maintenance method, maintenance program, recording medium recording maintenance program, and maintenance system | |
JP2007013597A (en) | Communication system, certificate update apparatus, certificate update program, communication apparatus, and substitute update program | |
JP2004222247A (en) | Communication equipment, remote management system for communication equipment, control method for communication equipment, and program | |
JP2006134301A (en) | Service providing system, information processing apparatus, service providing server and user authentication method | |
JP4597551B2 (en) | Software update device, software update system, software update method, and program | |
KR20180095455A (en) | Information processing apparatus, image forming apparatus, system, method of controlling the same, and storage medium | |
JP2005284985A (en) | Network compatible device, maintenance method for maintaining network compatible device, program, medium storing program thereon, and maintenance system thereof | |
JP7262938B2 (en) | Information processing device, control method for information processing device, and program | |
JP4543068B2 (en) | COMMUNICATION DEVICE, REMOTE MANAGEMENT SYSTEM, COMMUNICATION DEVICE CONTROL METHOD, PROGRAM, AND RECORDING MEDIUM | |
JP4663245B2 (en) | Electronic apparatus, image processing apparatus, remote management system, program, and authentication method | |
JP2008062440A (en) | Image forming apparatus | |
JP2004030625A (en) | Remote management system, its mediation device, management device, secret information setting method and program | |
JP5614197B2 (en) | Communication device and management system | |
JP5729057B2 (en) | COMMUNICATION DEVICE, COMMUNICATION SYSTEM, AND PROGRAM | |
JP4494827B2 (en) | Digital certificate management system, digital certificate management apparatus, digital certificate management method and program | |
JP2004287564A (en) | Communication device, remote management system, method for controlling communication device, program, and recording medium | |
JP2004208295A (en) | Communication device, remote management system and control mehtod of communication device, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20061109 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20090706 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100105 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100304 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20100304 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100706 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100830 |
|
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: 20100914 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100922 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4597551 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: 20131001 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |