(57)【要約】【課題】  サーバ装置で管理される復号化キーが更新された後でも、情報処理装置で保存された暗号化されたデバイス情報を処理することである。【解決手段】  プログラムに付加されているいずれかの復号化キーにより保存手段に保存された暗号化されているデバイス情報を復号化できるかどうかを判断する（Ｓ５０３）。  ここで、復号化できないと判断したデバイス情報に付加される特定情報を取得し、該取得した特定情報を付加したプログラムの再構築要求をサーバＰＣに要求する（Ｓ５１０）。そして、特定情報に基づいて復号化キーが再構築されたプログラムをサーバＰＣから取得して、保存手段により保存されているデバイス情報を処理する（Ｓ５１５）ことを特徴とする。【選択図】  図８
2008227707.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークに接続されているデバイスを監視するサーバ装置であって、
監視対象のデバイスからデバイス情報を取得する取得手段と、
前記取得手段により取得したデバイス情報を設定された暗号化キーに基づいて暗号化する暗号化手段と、
前記暗号化手段により暗号化されたデバイス情報を要求元の情報処理装置に送信する送信手段と、
前記暗号化されたデバイス情報を復号化して処理するために複数の復号化キーが付加されているプログラムを要求元の情報処理装置に提供する提供手段と、
前記プログラムに付加されるいずれかの復号化キーを更新する更新手段と、
前記更新手段により更新される前の旧復号化キーを特定する特定情報と共に保存する保存手段と、
前記情報処理装置による前記プログラムの再構築要求に付加される前記復号化キーを特定する特定情報に基づき、前記保存手段に保存されたいずれかの旧復号化キーを検索する検索手段とを備え、
前記送信手段は、前記検索手段が前記特定情報に従い検索した前記旧復号化キーを前記プログラムに付加して要求元の情報処理装置に送信することを特徴とするサーバ装置。
【請求項２】
前記特定情報は、復号化キーに付加される期間情報を特定する情報であることを特徴とする請求項１記載のサーバ装置。
【請求項３】
前記デバイスは、印刷デバイス、印刷機能を備えるデバイスを含むことを特徴とする請求項１記載のサーバ装置。
【請求項４】
前記プログラムは、前記デバイス情報を表示するビューアプログラムであることを特徴とする請求項１記載のサーバ装置。
【請求項５】
ネットワークに接続されているデバイスを監視するサーバ装置と通信可能な情報処理装置であって、
前記サーバ装置により暗号化されているデバイス情報を処理するプログラムまたは前記暗号化されているデバイス情報を取得する取得手段と、
前記暗号化されているデバイス情報を保存する保存手段と、
前記プログラムに付加されているいずれかの復号化キーにより前記保存手段に保存された前記暗号化されているデバイス情報を復号化できるかどうかを判断する判断手段と、
前記判断手段により復号化できないと判断した前記デバイス情報に付加される特定情報を取得し、該取得した特定情報を付加した前記プログラムの再構築要求を前記サーバ装置に要求する要求手段と、
前記特定情報に基づいて復号化キーが再構築されたプログラムを前記サーバ装置から取得して、前記保存手段により保存されているデバイス情報を処理する処理手段と、
を備えることを特徴とする情報処理装置。
【請求項６】
特定のユーザインタフェースを介して前記復号化キーが付加される前記プログラムの再構築要求を受け付けることを特徴とする請求項５記載の情報処理装置。
【請求項７】
特定のユーザインタフェースを介して前記再構築されたプログラムのダウンロード要求を受け付けることを特徴とする請求項５記載の情報処理装置。
【請求項８】
前記デバイスは、印刷デバイス、印刷機能を備えるデバイスを含むことを特徴とする請求項５記載の情報処理装置。
【請求項９】
前記プログラムは、前記デバイス情報を表示するビューアプログラムであることを特徴とする請求項５記載の情報処理装置。
【請求項１０】
ネットワークに接続されているデバイスを監視するサーバ装置におけるデバイス管理方法であって、
監視対象のデバイスからデバイス情報を取得する取得工程と、
前記取得工程により取得したデバイス情報を設定された暗号化キーに基づいて暗号化する暗号化工程と、
前記暗号化工程により暗号化されたデバイス情報を要求元の情報処理装置に送信する送信工程と、
前記暗号化されたデバイス情報を復号化して処理するために複数の復号化キーが付加されているプログラムを要求元の情報処理装置に提供する提供工程と、
前記プログラムに付加されるいずれかの復号化キーを更新する更新工程と、
前記更新工程により更新される前の旧復号化キーを特定する特定情報と共に保存手段に保存する保存工程と、
前記情報処理装置による前記プログラムの再構築要求に付加される前記復号化キーを特定する特定情報に基づき、前記保存手段に保存されたいずれかの旧復号化キーを検索する検索工程とを備え、
前記送信工程は、前記検索工程が前記特定情報に従い検索した前記旧復号化キーを前記プログラムに付加して要求元の情報処理装置に送信することを特徴とするデバイス管理方法。
【請求項１１】
前記特定情報は、復号化キーに付加される期間情報を特定する情報であることを特徴とする請求項１０記載のデバイス管理方法。
【請求項１２】
前記デバイスは、印刷デバイス、印刷機能を備えるデバイスを含むことを特徴とする請求項１０記載のデバイス管理方法。
【請求項１３】
前記プログラムは、前記デバイス情報を表示するビューアプログラムであることを特徴とする請求項１０記載のデバイス管理方法。
【請求項１４】
ネットワークに接続されているデバイスを監視するサーバ装置と通信可能な情報処理装置におけるデバイス管理方法であって、
前記サーバ装置により暗号化されているデバイス情報を処理するプログラムまたは前記暗号化されているデバイス情報を取得する取得工程と、
前記暗号化されているデバイス情報を保存手段に保存する保存工程と、
前記プログラムに付加されているいずれかの復号化キーにより前記保存手段に保存された前記暗号化されているデバイス情報を復号化できるかどうかを判断する判断工程と、
前記判断工程により復号化できないと判断した前記デバイス情報に付加される特定情報を取得し、該取得した特定情報を付加した前記プログラムの再構築要求を前記サーバ装置に要求する要求工程と、
前記特定情報に基づいて復号化キーが再構築されたプログラムを前記サーバ装置から取得して、前記保存手段により保存されているデバイス情報を処理する処理工程と、
を備えることを特徴とするデバイス管理方法。
【請求項１５】
特定のユーザインタフェースを介して前記復号化キーが付加される前記プログラムの再構築要求を受け付けることを特徴とする請求項１４記載のデバイス管理方法。
【請求項１６】
特定のユーザインタフェースを介して前記再構築されたプログラムのダウンロード要求を受け付けることを特徴とする請求項１４記載のデバイス管理方法。
【請求項１７】
前記デバイスは、印刷デバイス、印刷機能を備えるデバイスを含むことを特徴とする請求項１４記載のデバイス管理方法。
【請求項１８】
前記プログラムは、前記デバイス情報を表示するビューアプログラムであることを特徴とする請求項１４記載のデバイス管理方法。
【請求項１９】
請求項９〜１８のいずれかに記載のデバイス管理方法をコンピュータに実行させるためのプログラムを格納したことを特徴とするコンピュータが読み取り可能な記憶媒体。
【請求項２０】
請求項９〜１８のいずれかに記載のデバイス管理方法をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーバ装置と情報処理装置とが通信してネットワークに接続されたデバイスを遠隔的に監視して診断を行うデバイス管理処理に関するものである。
【背景技術】
【０００２】
近年、サーバ装置と情報処理装置とが通信してネットワークに接続された印刷デバイスを遠隔的に監視して印刷デバイスの状態を診断する管理システムが提案されている。
【０００３】
このような管理システムにおいて、監視対象デバイスの印刷枚数や、トナー残量、エラー情報など監視診断の対象となる情報を監視システム自身が収集し、その情報を外部の販売会社が設置したサーバに対して暗号化を行い送信していた。
【０００４】
また、管理システムにおいて、外部にデータを送信することは必須であるが、システム導入先の顧客によっては昨今の個人情報保護法などの観点から管理システムのデータ送信に際して、セキュリティを確保したいという要求があった。つまり、印刷デバイスの監視、診断に必要なデータ以外の情報が外部に送信されていないか監査を行いたいという要望が高まっているのが現状である。
【０００５】
従来、上記管理システムは、印刷デバイスの管理を行う販売会社のサーバの暗号キーを使用して送信データを暗号化し、例えばSMTPなどのプロトコルを用いてデータの送信を行っていた。
【０００６】
この場合、管理システム導入先の顧客は、販売会社の暗号キーを持っていないため、どのようなデータが外部に対して送信されたか確認する術を持つことが不可能である。
【０００７】
そこで、システム導入先の顧客ごとに暗号キーを作成する仕組みを管理システムに導入すると共に、外部へ送信するデータを販売会社の暗号キーおよび、顧客ごとの暗号キーを用いて暗号化し、顧客ごとに復号化するための手段を提供していた。
【０００８】
そして、暗号化された外部送信データを復号化し参照するためのビューアプログラムは、顧客ごとに暗号キーを持ち、顧客ごとのパスワードを入力することで実行することを可能にしていた。
【０００９】
また、送信側／受信側双方に、キーペア(暗号化用／復号用のペア)の履歴を保持し、キー変更時には、受信者側のキーペアの履歴を更新していた（特許文献１）。
【特許文献１】特開平10-20779号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかしながら、上記従来例では、次のような問題点があった。
【００１１】
従来のビューアプログラムは、顧客が作成した暗号キーを持つ数の上限値が制限されている。このため、頻繁に暗号キーの更新を行ったような場合には、ビューアプログラムが持ちきれなかった暗号キーで暗号化された外部送信データを復号化できないという問題がある。
【００１２】
また、この問題に対処するために、過去に作成された全ての暗号キーをビューアプログラムにエンベッドするという方法もあるが、不必要な暗号キーをビューアプログラムに付加することとなる。このため、セキュリティの観点からの問題や、またビューアプログラムのサイズが大きくなって、ネットワーク上でトラフィックに負荷をかけてしまう等の課題が指摘されていた。
【００１３】
また、上記従来例では、キーペア(暗号化用／復号用のペア)の履歴を保持しなければならなかった。
【００１４】
本発明は、上記の課題を解決するためになされたもので、本発明の目的は、サーバ装置で管理される復号化キーが更新された後でも、情報処理装置で保存された暗号化されたデバイス情報を処理できる仕組みを提供することである。
【課題を解決するための手段】
【００１５】
上記目的を達成する本発明のサーバ装置は以下に示す構成を備える。
【００１６】
ネットワークに接続されているデバイスを監視するサーバ装置であって、監視対象のデバイスからデバイス情報を取得する取得手段と、前記取得手段により取得したデバイス情報を設定された暗号化キーに基づいて暗号化する暗号化手段と、前記暗号化手段により暗号化されたデバイス情報を要求元の情報処理装置に送信する送信手段と、前記暗号化されたデバイス情報を復号化して処理するために複数の復号化キーが付加されているプログラムを要求元の情報処理装置に提供する提供手段と、前記プログラムに付加されるいずれかの復号化キーを更新する更新手段と、前記更新手段により更新される前の旧復号化キーを特定する特定情報と共に保存する保存手段と、前記情報処理装置による前記プログラムの再構築要求に付加される前記復号化キーを特定する特定情報に基づき、前記保存手段に保存されたいずれかの旧復号化キーを検索する検索手段とを備え、前記送信手段は、前記検索手段が前記特定情報に従い検索した前記旧復号化キーを前記プログラムに付加して要求元の情報処理装置に送信することを特徴とする。
【００１７】
上記目的を達成する本発明の情報処理装置は以下に示す構成を備える。
【００１８】
ネットワークに接続されているデバイスを監視するサーバ装置と通信可能な情報処理装置であって、前記サーバ装置により暗号化されているデバイス情報を処理するプログラムまたは前記暗号化されているデバイス情報を取得する取得手段と、前記暗号化されているデバイス情報を保存する保存手段と、前記プログラムに付加されているいずれかの復号化キーにより前記保存手段に保存された前記暗号化されているデバイス情報を復号化できるかどうかを判断する判断手段と、前記判断手段により復号化できないと判断した前記デバイス情報に付加される特定情報を取得し、該取得した特定情報を付加した前記プログラムの再構築要求を前記サーバ装置に要求する要求手段と、前記特定情報に基づいて復号化キーが再構築されたプログラムを前記サーバ装置から取得して、前記保存手段により保存されているデバイス情報を処理する処理手段とを備えることを特徴とする。
【発明の効果】
【００１９】
本発明によれば、サーバ装置で復号化するための複数の復号化キーが既に更新されていても、情報処理装置は旧復号化キーが付加されるプログラムをサーバ装置から取得して、暗号化されたデバイス情報を復号化して処理できる。
【発明を実施するための最良の形態】
【００２０】
次に本発明を実施するための最良の形態について図面を参照して説明する。
【００２１】
＜システム構成の説明＞
〔第１実施形態〕
図１は、本発明の第１実施形態を示すデバイス管理システムの一例を示す図である。本例は、ネットワーク１０２を介して複数の印刷デバイスが接続され、クライアントＰＣからの印刷要求を処理するシステム例である。なお、本実施形態では、デバイスは印刷機能を備えるデバイスであれば、デバイスは、プリンタやプリント機能を備えるＭＦＰが含まれる。さらに、デバイスは、プリント機能を備えるデバイスに限定されるものではない。
【００２２】
図１において、１０１は情報処理装置（ＰＣ）であって、後述するハードウエア資源を備え、外部記憶装置にインストールされた印刷デバイス監視システムの監視プログラムを起動して、印刷デバイス監視処理を行う。
【００２３】
具体的には、ＰＣ１０１は、上記監視プログラムを起動して、ネットワーク１０２上で監視対象となる印刷デバイスの状態や、印刷枚数などのカウンタ情報を、印刷デバイスより定期的に取得することで監視処理を行う。
【００２４】
１０２は印刷デバイスを物理的に接続するイーサネット（登録商標）などのネットワークである。なお、印刷デバイスは、同一のネットワーク上に接続されていない場合、例えばルータ等を介して他のネットワークに接続されていてもよい。
【００２５】
なお、ＰＣ１０１とデバイスを販売する販売会社等の監視サーバ１０７とは、インターネットを介して通信可能に構成されているものとする。
【００２６】
１０３〜１０６は機能処理を実行する印刷デバイスであり、エンジンやオプション機能により、それぞれ処理能力が異なる。なお、上記ＰＣ１０１の監視プログラムは、ネットワーク１０２に接続された印刷デバイス１０３〜１０６と通信することで、各印刷デバイスから状態情報を特定のプロトコルで取得する。また、本実施形態では、ネットワーク１０２に接続される印刷デバイスは、プリンタ、あるいはプリント機能を備えるＭＦＰを想定する。
【００２７】
ここでは説明を簡略化するために監視対象デバイスの台数を少なくしているが、監視対象デバイスの数には特に制限は設けないものとする。
【００２８】
ＰＣ１０１上の印刷デバイスを監視する監視プログラムは、定期的に監視対象の各印刷デバイス１０３〜１０６の状態や、印刷枚数などのカウンタ情報を取得する。そして、ＰＣ１０１は、各印刷デバイス１０３〜１０６から取得した印刷デバイスの情報をＰＣ１０１上で特定のフォーマットに変換し、販売会社等の監視サーバ１０７に対して印刷機能を備えるデバイスの情報を送信する。
【００２９】
本実施形態では、上記各印刷デバイス１０３〜１０６の情報を送信する場合に、販売会社等のサーバ１０７で用いられる暗号キーを使用して暗号化を行い、ＳＭＴＰプロトコルを使用してＥ−Ｍａｉｌとしてサーバ１０７に対して送信を行う。以上が印刷デバイス監視プログラムの機能処理である。また、通信方法としてＥ−Ｍａｉｌは一例であって、他のネットワーク通信による通知方法であってもよい。
【００３０】
図２は、図１に示したＰＣのハードウエア構成を説明するブロック図である。
【００３１】
図２において、１はＣＰＵで、内部バス４に接続される各デバイスをＲＯＭ３又は外部メモリ１１に記憶された制御プログラムをＲＡＭ２にロードして実行することで総括的に制御する。５はキーボードコントローラ（ＫＢＣ）で、キーボード（ＫＢ）９から入力されるキーコードを処理する。６は表示コントローラで、表示器１０に対する表示情報を処理する。７はメモリコントローラ（ＭＣ）で、外部メモリ１１とのアクセスを制御する。なお、外部メモリ１１は、フレキシブルディスクドライブ、ハードディスクドライブ、光磁気ディスクドライブ等の各種の不揮発性メモリが含まれる。なお、外部メモリ１１には、デバイス監視プログラムを含む各種のプログラム、関連データファイルが記憶される。
【００３２】
８はネットワークコントローラ（ＮＩＣ）で、ネットワーク３５０に接続される印刷デバイスや他のＰＣ、サーバ装置と特定のプロトコルで通信を行う。
【００３３】
次に、図１に示したＰＣ１０１を操作する、例えば顧客先のデータ監査担当者が、監視プログラムにより暗号化された印刷デバイスのデバイス情報を送信する送信データを復号化するための処理の流れについて図３を参照して説明する。
【００３４】
図３は、図１に示したデバイス監視システムにおけるデバイス情報の暗号化、復号化処理を説明する図である。
【００３５】
図３において、２０１はサーバＰＣで、予めデバイス監視プログラムが外部記憶装置にインストールされ、該デバイス監視プログラムをＲＡＭにロードしてＣＰＵが実行することで上記監視処理を実現している。ここでは、印刷機能を備える印刷デバイス１０３〜１０６の情報を収集したデータ（デバイス情報２０２）が、予め決められた送信フォーマットに変換されているものとする。
【００３６】
２０３は暗号キーで、販売会社のサーバ２０６へ印刷デバイスの情報を暗号化するために使用される。２０４は顧客先のデータ顧客用の暗号キーで、ＰＣ２０１に設定されている。ここで、暗号キー２０３はシステム運用を開始後は、常に同じキーが使用されるものである。一方、暗号キー２０４は顧客先のデータ監査担当者が任意のタイミングで鍵の生成を行うことが可能に構成されている。ここで、暗号キー２０４の顧客先暗号キーと顧客先復号キー２０９とはペアで生成されるものである。
【００３７】
このようにしてペアで生成された顧客先復号キー２０９は、ビューアプログラム２１０にエンベッドされ、暗号化された暗号化デバイス情報２０５を復号化する際に使用される。
【００３８】
２０６は販売会社等のサーバＰＣを表し、ＰＣ２０１から暗号化デバイス情報２０５を受信した際に、サーバ用復号キー２０７を用いて復号化する処理を行う。なお、サーバＰＣ２０６、ＰＣ２０８は、ネットワーク２５０を介してサーバＰＣ２０１と通信可能に接続されている。
【００３９】
２１０はビューアプログラムで、顧客先データ監査担当者が操作するＰＣ２０８で起動されて、Ｃ２０８の表示装置上にデバイス情報を表示するＵＩ画面として表示する。
【００４０】
ビューアプログラム２１０は、ＰＣ２０８が任意のタイミングで印刷デバイス監視プログラムが動作しているサーバＰＣ２０１上からダウンロードされ、該ビューアプログラム２１０をＰＣ２０８が実行する。
【００４１】
これにより、ＰＣ２０８が備える表示装置にＵＩ画面に、顧客先復号キー２０９を使用して復号化したデバイス情報を表示して、顧客先データ監査担当者がその内容を確認可能に構成されている。
【００４２】
なお、上記管理システムにおいて、実際の暗号化および復号化のロジックに関してはＤＥＳ（Data Encryption Standard）やＤＨ（Diffie-Hellman key exchange）など広く一般的な暗号化方式を用いて行うものとする。なお、暗号化及び復号化の詳細なロジックに関しては、本発明の主目的ではないので詳細な説明は割愛する。また、本実施形態も説明を単純にするため概念的に説明する。
【００４３】
図４は、図１に示したデバイス監視システムにおけるデバイス情報の暗号化、復号化処理を説明する図である。以下、顧客先用暗号キーを更新した場合の処理と、ビューアプログラムにエンベッドされる鍵の関連について説明する。
【００４４】
顧客先用暗号キーを更新する場合のオペレーションとしては、サーバＰＣ３０１にアクセスし、暗号キー更新用のＵＩにアクセスし鍵生成に必要な文字列などを入力することで、入力文字列などをキーに暗号キーを生成するものとする。
【００４５】
なお、基本的な構成は図３に示すものと同様であるため、顧客先の監査担当者が顧客用暗号キーを更新した場合の処理に関して簡単に説明を行う。
【００４６】
図４において、３０２はデバイス情報で、図３に示したデバイス情報２０２に相当する。
【００４７】
３０５は暗号化デバイス情報で、図３に示した暗号化デバイス情報２０５に相当する。３０３はサーバ用暗号キーで、図３に示したサーバ用暗号キー２０３に対応する。３０７はサーバ用暗号キーで、販売会社等のサーバＰＣ３６０上で使用され、図３に示したサーバ用復号キー２０７に対応する。３１２はビューアプログラムで、ネットワーク３５０を介して要求元の情報処理装置（ＰＣ３０８等に対して）に提供可能に構成されている。３１０はビューアプログラムである。
【００４８】
まず、監査担当者が、サーバＰＣ３０１の顧客用暗号キー３０４を更新した場合、顧客用暗号キー３０４は最新の暗号キーに更新される。顧客用暗号キー３０４を更新すると共に、過去に使用していた顧客用暗号キーは、データベース（ＤＢ）３１１などの記憶媒体に暗号キー作成日時などの情報と関連付けられて格納される。
【００４９】
ここで、データベース（ＤＢ）３１１に格納される過去に使用していた鍵情報の例を図５に示す。
【００５０】
図５は、図４に示したデータベース３１１に格納される鍵情報を管理するテーブルを説明する図である。本例は、顧客先暗号キーが更新された履歴が、暗号キー作成日時などの情報と関連付けられて格納されている例である。
【００５１】
さらに、図４において、３１２はビューアプログラムで、顧客先の監査担当者がダウンロードする前のビューアプログラムである。ビューアプログラム３１２は、顧客用復号キーの条件に従いエンベッドされ、顧客先ＰＣ３０８に対して次回のダウンロードに備えている。
【００５２】
３０９は顧客用復号キー群で、複数の顧客用復号キー３０９−１〜３０９−４から構成され、ビューアプログラム３１２にエンベッドされている状態を表すもので、ここでは４つの顧客用復号キー３０９−１〜３０９−４がエンベットされている例である。
【００５３】
ここで言う顧客用復号キーをエンベッドする条件としては、サーバＰＣ３０１上のメモリにシステムインストール時にデフォルトの鍵エンベッドの条件をセットしておき、その条件に従いビューアプログラムに鍵のエンベッドを行うものとする。ここで、復号キーをエンベッドするためのデフォルトの条件としては、最新の鍵から指定した個数の鍵をエンベッドするなどの指定を行うのが通例である。デフォルトの鍵をエンベッドするための情報の例を図６に示す。
【００５４】
図６は、図４に示したサーバＰＣ３０１で管理されるデフォルトの復号キーをエンベッドするための情報テーブルの一例を示す図である。本例では、図４に示したサーバＰＣ３０１が備えるメモリに設定されている例である。
【００５５】
図６に示す情報テーブルに示すように、デフォルトの条件としては、新しいものか、古いものかの設定を「１」または「０」のフラグで選択を行い、エンベッドする復号キーの個数を指定するような情報となる。
【００５６】
この例では最も新しい復号キーから４個エンベッドするという例を示している。
【００５７】
次に、図７を参照して、ＰＣ３０８からの要求に基づいて、ＤＢ３１１（図７ではＤＢ４０３）に保存されている復号キーをＰＣ３０８がビューアプログラム３１２にエンベットする処理について説明する。
【００５８】
図７は、本実施形態を示すデバイス管理システムの一例を示す図である。
【００５９】
図７において、４０１はデータビューアプログラム（ビューアプログラム）で、図４に示した顧客先データ監査担当者のＰＣ３０８上にダウンロードされたデータビューアプログラムを示す。このビューアプログラム４０１には、例えば４つの復号化キー４０１−１〜４０１−４がエンベッドされており、それぞれ２００５年の６月１日、６月１５日、７月１日、７月１５日の日付に生成された復号鍵を持つ例である。
【００６０】
４０２は暗号化されたデバイス情報で、ビューアプログラム４０１により、復号化しようとしているデバイス情報である。このデバイス情報４０２は、例えば２００４年３月１５日に生成された暗号化キー４０２−１を用いて暗号化された暗号化データ４０２−２を含むものである。なお、図７に示すように、デバイス情報４０２の暗号化キー４０２−１は、最新のビューアプログラム４０１にエンベットされている復号化キー４０１−１〜４０１−４には適合していない。
【００６１】
本例では暗号化データ４０２−２は２００４年３月１５日であり、ビューアプログラム４０１が持つ復号化キー４０１−１〜４０１−４は２００５年６月〜７月のものであるため、デバイス情報４０２−２を復号化できないことになる。つまり、このままでは、デバイス情報４０２を復号化することができない状態である。
【００６２】
なお、暗号化データ４０２−２を暗号化した鍵の情報は、暗号化データファイルの作成日付を用いて判定を行ってもよく、暗号化データのヘッダ情報の部分に暗号化を行った鍵の生成日付情報を格納しておいてもよい。
【００６３】
そこで、ビューアプログラム４０１は、印刷デバイス監視システムが稼動しているサーバＰＣ３０１に対して、復号化を行うデバイス情報４０２から取得した暗号化キー４０２−２の情報を元に２００４年３月１５日の復号キーを要求する。
【００６４】
ＰＣ３０８からの復号キー取得要求（ＳＴ１）に応答して、サーバＰＣ３０１は、ＤＢ４０３を検索して、２００４年３月１５日を含む古い復号キーが４つエンベッドされているビューアプログラム４０４をＤＢ４０３から取得する。
【００６５】
ビューアプログラム４０４は、顧客先監査担当者用のＰＣ３０８にダウンロードし直されたものであり、２００４年２月１日、２月１５日、３月１日、３月１５日の復号化キー４０４−１〜４０４−４がエンベッドされている。
【００６６】
この場合に、ビューアプログラム４０４に対して、ＰＣ３０８が暗号化データ４０２の復号化を指示した場合には、暗号化キー４０２−１と復号化キー４０４−１の日付が一致するため、データ４０２−２の復号化を行うことが可能となる。
【００６７】
次に、図８を参照して、ＰＣ３０８がビューアプログラム４０４を取得してデバイス情報４０２を表示する処理の流れについて説明を行う。
【００６８】
図８は、本実施形態を示すデータ管理システムにおける第１のデータ処理手順の一例を示すフローチャートである。本例は、図４に示すＰＣ３０８によるデータ表示処理例である。なお、Ｓ５０１〜Ｓ５１５は各ステップを示す。また、各ステップは、図４に示すＰＣ３０８のＣＰＵがメモリから制御プログラムをＲＡＭにロードして実行することで実現される。
【００６９】
まず、Ｓ５０１で、ＰＣ３０８のＣＰＵは、サーバＰＣ３０１から取得したビューアプログラム（Viewer）の起動を行う。次に、Ｓ５０２で、ＰＣ３０８の表示装置に表示される画面に表示される情報リストから暗号化された印刷デバイスに関する情報の指定をユーザの操作指示で行う。この暗号化された印刷デバイスに関する情報が、復号化対象として指定されるデータである。
【００７０】
次に、Ｓ５０３で、Ｓ５０２により指定された印刷デバイスに関する暗号化されたデバイス情報をビューアプログラムにエンベットされた復号キーのいずれかで復号化可能かどうかの判定を行う。
【００７１】
ここで言う復号化の判定は、ビューアプログラムにエンベッドされている復号化キーを用いて復号化処理を行い、その復号化処理が成功したかどうかを判定する。
【００７２】
そして、最初の復号化キーによる復号処理が失敗したと判定した場合は、ビューアプログラムにエンベットされた次の復号化キー（本実施形態では、４つの復号キーがエンベットされている）を使用し復号化の処理を行う。そして、次の復号化キーによる復号処理が失敗したと判定した場合は、さらに、ビューアプログラムにエンベッドされている次の復号化キーによる復号化処理を繰り返す。そして、全ての復号キーのいずれかで復号化処理が成功した場合は、本処理を終了して、通常のビューアプログラムの処理に移る。
【００７３】
一方、Ｓ５０３で、全ての復号化キーによる復号化処理が全て失敗したと判定した場合は、Ｓ５０４へ進む。
【００７４】
そして、Ｓ５０４で、ＰＣ３０８のＣＰＵは、復号化を行うデバイス情報から、復号化キーに設定されている日付に関する情報（特定情報）を取得する。
【００７５】
ここで、復号化データに設定されている日付に関する情報は、復号化を行うデバイス情報の日付や、復号化を行うデータのヘッダ情報に格納された日付情報を用いて判定を行うことが可能である。
【００７６】
また、復号化データに設定されている日付に関する情報は、デバイス情報のヘッダ情報に格納された、暗号化を行う際に使用された暗号化キーの情報などを用いて判定を行うことが可能である。
【００７７】
Ｓ５０４で、復号化を行うデバイス情報の日付に関する情報を取得した後、Ｓ５０５へ進み、図９に示すようなビューアプログラムの更新を行うＵＩをＰＣ３０８が備える表示装置に表示し、ユーザの入力を促す。
【００７８】
図９〜図１１は、図４に示したＰＣ３０８の表示装置に表示されるビューア再構築確認ダイアログ（ＵＩ）を説明する図である。なお、図９〜図１１に示すユーザインタフェースは、一例であって、本ユーザインタフェースの画面構成に限定されるものではない。
【００７９】
なお、図９に示すＵＩは、ＰＣ３０８のＣＰＵによる表示制御を実行することで、図９に示すＳ５０５で表示され、図１０に示すＵＩは、図９に示すＯＫボタンが指示された場合に表示される。図１１に示すＵＩは、エンベットする復号鍵の条件を指定する画面である。
【００８０】
図９において、８０１はＯＫボタンで、ビューアプログラムの再構築を要求するボタンとして機能する。８０２はキャンセルボタンで、ビューアプログラム再構築を要求しないボタンとして機能する。
【００８１】
ここで、ＯＫボタン８０１が押下されて、ビューアプログラムの更新が選択された場合、図１０に示すようなＵＩをＰＣ３０８が備える表示装置に表示し、新たに構築するビューアプログラムにエンベッドすべき復号鍵情報の設定を行う。
【００８２】
図１０に示すＵＩ画面は、ビューアプログラムにエンベッドすべき鍵の日付に関する期間指定を行う例である。なお、９０１はＯＫボタン、９０２はキャンセルボタンである。
【００８３】
本例は、例えば２００４年１月〜２００４年３月の間に生成された顧客用復号キーを、図４に示したサーバＰＣ３０１のＤＢ３１１又は外部記憶媒体から検索し、合致する復号化キーをビューアプログラムにエンベッド指示する例である。
【００８４】
なお、図１０に示す期間指定例では、復号化キーを取得するための指定方法として、日付範囲を指定する場合を示しているが、図１１に示すようなＵＩをＰＣ３０８の表示装置に表示し、期間と、その個数を同時に指定可能としてもよい。なお、１００１はＯＫボタン、１００２はキャンセルボタンである。
【００８５】
つまり、図１１に示す例では、復号化を行うデータの日付情報から、その日付をキーとして新しいもの或いは古いものの指定および鍵の個数を指定する。これにより、ビューアプログラムにエンベッドする復号化キーとその数を同時に指定可能である。
【００８６】
なお、図１０、図１１において、ＢＴ１はビューア更新ボタンで、該ビューア更新ボタンＢＴ１を押下すると、ＰＣ３０８からサーバＰＣ３０１に対してビューアプログラムが更新される。ここで、更新されるとは、図１０に示す日付情報に基づいて、サーバＰＣ３０１のＣＰＵがＤＢ３１１から指定された期間中を示す復号化キーをエンベットしたビューアプログラムを生成することである。
【００８７】
ＢＴ２はダウンロードボタンで、該ダウンロードボタンＢＴ２を押下指示することで、ＰＣ３０８からサーバＰＣ３０１に対して更新されたビューアダウンが通知される。そして、この通知に応答して、サーバＰＣ３０１から、ＰＣ３０８の図１０、図１１に示すＵＩで指定された期間、あるいは指定された期間内の複数の復号化キーがエンベットされたビューアプログラムのダウンロードが実行される。
【００８８】
次に、Ｓ５０６で、ＰＣ３０８は、ビューアプログラムにエンベッドする復号化キーの情報を取得する。ここで、取得する復号化キーの情報は図１０や図１１に示すようなＵＩによって設定された、鍵の日付の範囲を指定する情報であったり、指定日付から新旧および鍵の個数を指定するような情報であったりする。
【００８９】
次に、Ｓ５０７で、ＰＣ３０８のＣＰＵは、現在起動中のビューアプログラムに対して、エンベッドする復号化キーを特定するための情報が変更されたか否かの判定を行う。ここで、ＰＣ３０８のＣＰＵが復号化キーを特定するための情報が更新されていると判定した場合は、再度その情報を図１０等で設定された情報を取得し直す。
【００９０】
一方、Ｓ５０７で、ＰＣ３０８のＣＰＵが復号化キーを特定するための情報が変更されていないと判定した場合は、Ｓ５０９へ進む。そして、Ｓ５０９では図１０や図１１に示すＵＩにおいて、ビューアプログラムの更新ボタンＢＴ１が押下されたかどうかの判定を行う。
【００９１】
ここで、ＰＣ３０８のＣＰＵが、図１０，図１１に示したＵＩ画面を介して、更新ボタンＢＴ１が押下されていると判断した場合は、Ｓ５１０へ進み、ビューアプログラムの更新ボタンＢＴ１が押下されていないと判定した場合は、Ｓ５０７へ戻る。そして、Ｓ５０７〜Ｓ５０９の処理を繰り返す。
【００９２】
そして、Ｓ５１０で、ＰＣ３０８のＣＰＵは、上記Ｓ５０６，Ｓ５０８で取得を行ったビューアプログラムにエンベッドを行う復号化キーを特定するための情報の取得を行う。そして、ＰＣ３０８のＣＰＵは、印刷デバイス監視システムが稼動しているサーバＰＣ３０１に対してＳ５０６で取得した情報を付加して、ビューアプログラムの更新指示（再構築指示）を発行する。
【００９３】
サーバＰＣ３０１のＣＰＵは、ＰＣ３０８から受信する更新指示に基づき、該更新指示に付加されている期間情報を参照して、ＤＢ３１１から該当する復号化キーを取得する。そして、サーバＰＣ３０１のＣＰＵは、ＤＢ３１１から取得する復号化キーをビューアプログラムにエンベッドする処理を行い、ビューアプログラムの再構築を行う。この処理の流れは図１２を参照して後述する。
【００９４】
次に、Ｓ５１１で、ＰＣ３０８のＣＰＵは、サーバＰＣ３０１によってビューアプログラムに対して、Ｓ５１０で特定した復号化キーをビューアプログラムにエンベッドを行う再構築の処理が終了したかどうかの判定を行う。つまり、Ｓ５１０で、ビューアプログラムが更新されたかどうかを判定する。
【００９５】
ここで、ＰＣ３０８のＣＰＵが、再構築の処理が終了していないと判定した場合は、Ｓ５１２へ進みサーバＰＣ３０１上での処理の進行具合を取得してその再構築状況をチェックし、Ｓ５１１へ戻り再度判定を行う。
【００９６】
一方、Ｓ５１１で、ＰＣ３０８のＣＰＵがサーバＰＣ３０１上でのビューアプログラム再構築の処理が終了していると判定した場合は、Ｓ５１３へ進む。そして、Ｓ５１３で、図１０、図１１に示すような画面においてビューアプログラムのダウンロードボタンＢＴ２を押下可能な状態に変更する。これは、再構築状態となる前にダウンロード要求を発行する指示をしてしまうことを回避するためである。
【００９７】
次に、Ｓ５１４で、ＰＣ３０８のＣＰＵは、ビューアプログラムのダウンロードボタンＢＴ２が押下されたかどうかの判定を行い、押下されていないと判定した場合は、Ｓ５１３へ戻る。
【００９８】
一方、Ｓ５１４で、ＰＣ３０８のＣＰＵは、ビューアプログラムのダウンロードボタンＢＴ２が押下されていると判定した場合は、Ｓ５１５に進む。そして、Ｓ５１５で、ビューアプログラムをＰＣ３０８が備えるメモリ上に確保される記憶領域にダウンロードして保存したら、本処理を終了する。
【００９９】
図１２は、本実施形態を示すデータ管理システムにおける第２のデータ処理手順の一例を示すフローチャートである。本例は、図４に示すサーバＰＣ３０１によるビューアプログラムの更新処理例である。なお、Ｓ９０１〜Ｓ９０５は各ステップを示す。また、各ステップは、図４に示すサーバＰＣ３０１のＣＰＵがメモリから制御プログラムをＲＡＭにロードして実行することで実現される。
【０１００】
Ｓ９０１で、サーバＰＣ３０１のＣＰＵは、ＰＣ３０６による再構築要求指示に基づいて、該再構築指示と共に送信された、ビューアプログラムにエンベッドすべき復号キーを特定すべき情報をビューアプログラムより取得する。
【０１０１】
次に、Ｓ９０２で、Ｓ９０１において指定された復号キーの情報に合致するものがあるか、ＤＢ３１１もしくはサーバＰＣ３０１上の外部記憶領域を参照し復号キーのデータを取得する。
【０１０２】
そして、Ｓ９０３で、取得すべき復号キーがまだあるか判定を行い、まだエンベッドすべき復号キーがＤＢ３１１に存在すると判定された場合には、Ｓ９０２へ進み上記の処理を繰り返す。
【０１０３】
一方、Ｓ９０３で、取得すべき復号キーがＤＢ３１１もしくは外部記憶領域に存在しないと判定した場合には、Ｓ９０４へ進む。そして、Ｓ９０４で、Ｓ９０１〜Ｓ９０３において取得を行った復号キーをＰＣ３０８へダウンロードするビューアプログラム（Viewer）にエンベッドする処理を行い、Ｓ９０５へ進む。
【０１０４】
そして、Ｓ９０５でビューアプログラムの再構築処理が終了したことを、ビューアプログラム再構築要求となるＰＣ３０８に通知して、本処理を終了する。
【０１０５】
これにより、ＰＣ３０８は、最新のビューアプログラムにエンベットされた復号キーでは復号化できないデバイス情報であっても、再構築されたビューアプログラムにエンベットされた旧復号化キーを取得して復号化処理できる。
【０１０６】
したがって、ビューアプログラムにエンベットされる復号化キーの数が制限されているために、最新の復号化キーでは復号化できないようなデバイス情報であっても、保存されている旧い復号化キーを取得することで復号化可能となる。
【０１０７】
上記実施形態によれば、顧客が作成した暗号キーを持つ数の上限値が制限されている場合でも、ビューアプログラムが持ちきれなかった暗号キーで暗号化された外部送信データを復号化することが可能である。
【０１０８】
また、過去に作成された全ての暗号キーをビューアプログラムにエンベッドすることなく、任意の暗号化データを復号化することが可能となる。このため、セキュリティの観点からの問題もなく、またビューアプログラムのサイズが大きくなるなどの問題も回避することが可能となる。
【０１０９】
また、ビューアプログラムのサイズを小さくできるため、ネットワーク上のトラフィックを圧迫させることもなくなる。
【０１１０】
〔第２実施形態〕
以下、図１３、図１４に示すメモリマップを参照して本発明に係るデータ管理システムで読み取り可能なデータ処理プログラムの構成について説明する。
【０１１１】
図１３は、本発明に係る情報処理装置で読み取り可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【０１１２】
図１４は、本発明に係るサーバ装置で読み取り可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【０１１３】
なお、特に図示しないが、記憶媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報，作成者等も記憶され、かつ、プログラム読み出し側のＯＳ等に依存する情報、例えばプログラムを識別表示するアイコン等も記憶される場合もある。
【０１１４】
さらに、各種プログラムに従属するデータも上記ディレクトリに管理されている。また、各種プログラムをコンピュータにインストールするためのプログラムや、インストールするプログラムが圧縮されている場合に、解凍するプログラム等も記憶される場合もある。
【０１１５】
本実施形態における図８、図１２に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、ＣＤ−ＲＯＭやフラッシュメモリやＦＤ等の記憶媒体により、あるいはネットワークを介して外部の記憶媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。
【０１１６】
以上のように、前述した実施形態の機能を実現するソフトウエアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給する。そして、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【０１１７】
この場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１１８】
従って、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等、プログラムの形態を問わない。
【０１１９】
プログラムを供給するための記憶媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤなどを用いることができる。
【０１２０】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１２１】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、該ホームページから本発明のコンピュータプログラムそのもの、もしくは、圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバやｆｔｐサーバ等も本発明の請求項に含まれるものである。
【０１２２】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【０１２３】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけではない。例えばそのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行う。そして、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１２４】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込ませる。その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１２５】
本発明は上記実施形態に限定されるものではなく、本発明の趣旨に基づき種々の変形（各実施形態の有機的な組合せを含む）が可能であり、それらを本発明の範囲から排除するものではない。
【０１２６】
本発明の様々な例と実施形態を示して説明したが、当業者であれば、本発明の趣旨と範囲は、本明細書内の特定の説明に限定されるのではない。
【図面の簡単な説明】
【０１２７】
【図１】本発明の第１実施形態を示すデバイス管理システムの一例を示す図である。
【図２】図１に示したＰＣのハードウエア構成を説明するブロック図である。
【図３】図１に示したデバイス監視システムにおけるデバイス情報の暗号化、復号化処理を説明する図である。
【図４】図１に示したデバイス監視システムにおけるデバイス情報の暗号化、復号化処理を説明する図である。
【図５】図４に示したデータベース３１１に格納される鍵情報を管理するテーブルを説明する図である。
【図６】図４に示したＰＣで管理されるデフォルトの鍵をエンベッドするための情報テーブルの一例を示す図である。
【図７】本実施形態を示すデバイス管理システムの一例を示す図である。
【図８】本実施形態を示すデータ管理システムにおける第１のデータ処理手順の一例を示すフローチャートである。
【図９】図４に示したＰＣの表示装置に表示されるビューア再構築確認ダイアログ（ＵＩ）を説明する図である。
【図１０】図４に示したＰＣの表示装置に表示されるビューア再構築確認ダイアログ（ＵＩ）を説明する図である。
【図１１】図４に示したＰＣの表示装置に表示されるビューア再構築確認ダイアログ（ＵＩ）を説明する図である
【図１２】本実施形態を示すデータ管理システムにおける第２のデータ処理手順の一例を示すフローチャートである。
【図１３】本発明に係る情報処理装置で読み取り可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【図１４】本発明に係るサーバ装置で読み取り可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【符号の説明】
【０１２８】
３０１  サーバＰＣ
３０８  ＰＣ
３１０  ビューアプログラム
３０９−１〜３０９−４  復号化キー
【図１】
2008227707.tif 000003
【図２】
2008227707.tif 000004
【図３】
2008227707.tif 000005
【図４】
2008227707.tif 000006
【図５】
2008227707.tif 000007
【図６】
2008227707.tif 000008
【図７】
2008227707.tif 000009
【図８】
2008227707.tif 000010
【図９】
2008227707.tif 000011
【図１０】
2008227707.tif 000012
【図１１】
2008227707.tif 000013
【図１２】
2008227707.tif 000014
【図１３】
2008227707.tif 000015
【図１４】
2008227707.tif 000016