(57)【要約】      （修正有）【課題】使いたいファイルがコンピュータウィルスに感染している場合にそのファイルの代替をユーザにとって従来よりも容易に得られるようにした情報処理装置、ファイル不具合対処方法およびコンピュータプログラムを提供する。【解決手段】情報処理装置１において、ウィルススキャン部１０１は、ファイル５を受信すると、ファイル５を検査することによってファイル５が安全であるか否かを判別する。ファイル５が安全でないと判別された場合に、関連ファイル要求部１０５は、ファイル５に関連する関連ファイル５３を他の装置へ要求し取得する。感染部分置換部１０６は、ファイル５の中の不具合のある不具合部分を、関連ファイル５３の中の、不具合部分に対応する対応部分に置き換えることによって、代替ファイル５４を生成する。【選択図】図３
2020197909.tif 000002
【特許請求の範囲】
【請求項１】
取得したファイルを検査することによって当該ファイルが安全であるか否かを判別する検査手段と、
第一のファイルを前記検査手段が検査した結果、当該第一のファイルが安全でないと判別された場合に、当該第一のファイルに関連する第二のファイルを取得する取得手段と、
前記第一のファイルの中の不具合のある不具合部分を、前記第二のファイルの中の、当該不具合部分に対応する対応部分に置き換えることによって、代替ファイルを生成する生成手段と、
を有することを特徴とする情報処理装置。
【請求項２】
前記代替ファイルに基づいてコンテンツを再生する再生手段、を有する、
請求項１に記載の情報処理装置。
【請求項３】
前記再生手段は、前記代替ファイルに基づいて前記コンテンツとして画像を印刷する、
請求項２に記載の情報処理装置。
【請求項４】
前記生成手段は、前記第二のファイルを前記検査手段が検査した結果、当該第二のファイルが安全であると判別された場合に、前記代替ファイルを生成する、
請求項１ないし請求項３のいずれかに記載の情報処理装置。
【請求項５】
前記生成手段は、前記第二のファイルを前記検査手段が検査した結果、前記対応部分が安全であると判別された場合に、前記代替ファイルを生成する、
請求項１ないし請求項３のいずれかに記載の情報処理装置。
【請求項６】
前記生成手段は、前記第二のファイルの候補が複数ある場合は、当該複数の候補のうちのバージョンが最も新しいものを当該第二のファイルとして使用して前記代替ファイルを生成する、
請求項１ないし請求項５のいずれかに記載の情報処理装置。
【請求項７】
前記生成手段は、前記第二のファイルの候補が複数ある場合は、当該複数の候補のうちの、前記対応部分の直前または直後が前記不具合部分の直前または直後に最も近いものを、当該第二のファイルとして使用して前記代替ファイルを生成する、
請求項１ないし請求項５のいずれかに記載の情報処理装置。
【請求項８】
前記生成手段は、前記第二のファイルの候補が複数ある場合は、当該複数の候補のうちの、前記第一のファイルのバックアップとして生成されたものを、当該第二のファイルとして使用して前記代替ファイルを生成する、
請求項１ないし請求項５のいずれかに記載の情報処理装置。
【請求項９】
前記取得手段は、複数の装置のうちのウィルスに感染している可能性が最も低い装置から前記第二のファイルを取得する、
請求項１ないし請求項８のいずれかに記載の情報処理装置。
【請求項１０】
前記取得手段は、前記第一のファイルの作成者または送信者の属性に応じた装置から前記第二のファイルを取得する、
請求項１ないし請求項８のいずれかに記載の情報処理装置。
【請求項１１】
前記不具合部分を他のデータに置き換えることによって第三のファイルを生成する第二の生成手段と、
前記第三のファイルに基づいて一時的なコンテンツをディスプレイに表示させる表示手段と、
を有する、
請求項１ないし請求項１０のいずれかに記載の情報処理装置。
【請求項１２】
前記一時的なコンテンツは、画像であって、
前記他のデータは、ダミーの画像のデータである、
請求項１１に記載の情報処理装置。
【請求項１３】
前記他のデータは、前記不具合部分によって本来再生されるオブジェクトの周辺のオブジェクトのデータに基づいて補完されたものである、
請求項１１に記載の情報処理装置。
【請求項１４】
前記表示手段は、前記生成手段によって前記代替ファイルが生成された後、前記一時的なコンテンツを表示させるのを終了する、
請求項１１ないし請求項１３のいずれかに記載の情報処理装置。
【請求項１５】
前記生成手段は、前記第一のファイルのヘッダの直後からの、前記不具合部分の位置に基づいて、前記第二のファイルにおける、前記対応部分の位置を特定し、当該特定した位置に基づいて当該対応部分を抽出し前記代替ファイルを生成する、
請求項１ないし請求項１４のいずれかに記載の情報処理装置。
【請求項１６】
受信したファイルを検査することによって当該ファイルが安全であるか否かを判別し、
第一のファイルを検査した結果、当該第一のファイルが安全でないと判別された場合に、当該第一のファイルに関連する第二のファイルを他の装置から取得し、
前記第一のファイルの中の不具合のある不具合部分を、前記第二のファイルの中の、当該不具合部分に対応する対応部分に置き換えることによって、代替ファイルを生成する、
ことを特徴とするファイル不具合対処方法。
【請求項１７】
通信機能を有するコンピュータに用いられるコンピュータプログラムであって、
前記コンピュータに、
受信したファイルを検査することによって当該ファイルが安全であるか否かを判別する処理を実行させ、
第一のファイルを検査した結果、当該第一のファイルが安全でないと判別された場合に、当該第一のファイルに関連する第二のファイルを他の装置から取得する処理を実行させ、
前記第一のファイルの中の不具合のある不具合部分を、前記第二のファイルの中の、当該不具合部分に対応する対応部分に置き換えることによって、代替ファイルを生成する処理を実行させる、
ことを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータウィルスに感染するなど不具合のあるファイルに対処する技術に関する。
【背景技術】
【０００２】
コンピュータウィルス（以下、単に「ウィルス」と記載する。）が蔓延し、ウィルスによる悪影響がますます深刻化している。
【０００３】
従来、ウィルスに感染したと認められたファイルを削除しまたは隔離することによって、さらなる拡散の防止を図っている。もしも必要なファイルが感染してしまった場合は、感染前のファイルを入手しなければならない。
【０００４】
さらに、ウィルスの対策の方法として、次のような方法が提案されている。秘密分散法により、ファイルを複数の分散ファイルに分割し、各分散ファイルを異なる記憶手段に記憶させる。ファイルを利用する場合に、各分散ファイルを取得し、分割した分散ファイルから元のファイルを生成し、最新のウイルス定義ファイルを取得したウイルス対策ソフトによりファイルをチェックし、ウイルスに感染してる場合に駆除処理を行う（特許文献１）。
【０００５】
特許文献２に記載される画像形成装置は、コンピュータウィルスが検出されたデータが修復又は削除された場合に、そのデータが自装置の動作上必要なデータかどうかを判断する判断手段と、データが自装置の動作上必要なデータと判断された場合に、そのデータを復旧する復旧手段とを有する。
【０００６】
特許文献３に記載される情報処理装置は、電子メールを受信する受信部と、電子メールを表示する表示部と、ユーザからの電子メールの表示指示を受ける表示指示受部と、電子メールに対してセキュリティチェックを施すセキュリティチェック部と、電子メールの表示指示を受けた場合に、電子メールがセキュリティチェック済であったときは電子メールを表示画面に表示させ、電子メールのセキュリティチェックが未了であったときは代替画像を表示画面に表示させるとともにセキュリティチェック部に電子メールのセキュリティチェックを実行させ、セキュリティチェック終了後に電子メールを表示画面に表示させる表示制御部とを備える。
【０００７】
特許文献４に記載される方法によると、電子ファイルにおけるコンテンツデータの一部分を識別し、コンテンツデータの各部分が、所定の目的を有するパッシブ・コンテンツデータまたは関連する機能を有するアクティブ・コンテンツデータであるかどうかを決定することによって、電子ファイルを処理する。一部分がパッシブ・コンテンツデータであるならば、そのパッシブ・コンテンツデータの一部分が再生されるべきかどうかについて決定がなされる。一部分がアクティブ・コンテンツデータであるならば、その一部分は、そのアクティブ・コンテンツデータの一部分が再生されるべきかどうかを決定するために解析される。次に、再生されるべきと決定されたコンテンツデータの一部分から、再生される電子ファイルが創成される。
【０００８】
特許文献５に記載される方法によると、電子メールに添付されるファイルやURLを画像化することで、当該ファイルを開くことなく内容を確認することを可能にするとともに、電子メールに記載されているURLのWebサイト閲覧することなく内容を確認する。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２０１８−１３６９０４号公報
【特許文献２】特開２００８−４６８２６号公報
【特許文献３】特開２０１０−７２８１４号公報
【特許文献４】特開２０１４−１９４８２２号公報
【特許文献５】特開２０１３−１３０９８０号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
従来、使いたいファイルがウィルスに感染している場合は、ユーザは、ウィルスに感染していない同一のファイルを探さなければならない。しかし、この作業は、ユーザにとって大きな負担である。しかも、同一のファイルが見つかるまで、所望する処理（例えば、ジョブ）を実行させることができない。
【００１１】
本発明は、このような問題点に鑑み、使いたいファイルがウィルスに感染している場合において、そのファイルの代替をユーザにとって従来よりも容易に得られるようにすることを、目的とする。
【課題を解決するための手段】
【００１２】
本発明の一形態に係る情報処理装置は、取得したファイルを検査することによって当該ファイルが安全であるか否かを判別する検査手段と、第一のファイルを前記検査手段が検査した結果、当該第一のファイルが安全でないと判別された場合に、当該第一のファイルに関連する第二のファイルを取得する取得手段と、前記第一のファイルの中の不具合のある不具合部分を、前記第二のファイルの中の、当該不具合部分に対応する対応部分に置き換えることによって、置換ファイルを生成する生成手段と、を有する。
【００１３】
好ましくは、前記置換ファイルに基づいてコンテンツを再生する再生手段、をさらに有する。前記再生手段は、例えば、前記置換ファイルに基づいて前記コンテンツとして画像を印刷する。
【００１４】
さらに好ましくは、前記生成手段は、前記第二のファイルを前記検査手段が検査した結果、当該第二のファイルが安全であると判別された場合に、前記置換ファイルを生成する。または、前記第二のファイルを前記検査手段が検査した結果、前記対応部分が安全であると判別された場合に、前記置換ファイルを生成する。
【発明の効果】
【００１５】
本発明によると、ユーザは、使いたいファイルがウィルスに感染している場合にそのファイルの代替を従来よりも容易に得ることができる。
【図面の簡単な説明】
【００１６】
【図１】画像処理システムの全体的な構成の例を示す図である。
【図２】情報処理装置のハードウェア構成の例を示す図である。
【図３】情報処理装置の機能的構成の例を示す図である。
【図４】一時ファイルを生成する方法の第一の例を説明するための図である。
【図５】一時ファイルを生成する第二の方法の例を説明するための図である。
【図６】プレビューの第一の例を示す図である。
【図７】プレビューの第二の例を示す図である。
【図８】代替ファイルを生成する第一の方法の例を説明するための図である。
【図９】代替ファイルを生成する第二の方法の例を説明するための図である。
【図１０】代替ファイルを生成する第三の方法の例を説明するための図である。
【図１１】ファイルに基づいてジョブを実行する際の全体的な処理の流れの例を説明するフローチャートである。
【図１２】感染ファイルと関連ファイルとの比較の例を示す図である。
【図１３】ファイル属性テーブルの例を示す図である。
【図１４】代替ファイルを生成する方法の変形例を説明するための図である。
【発明を実施するための形態】
【００１７】
図１は、画像処理システム４の全体的な構成の例を示す図である。図２は、情報処理装置１のハードウェア構成の例を示す図である。
【００１８】
画像処理システム４は、図１に示すように、情報処理装置１、サーバ２、端末装置３１、画像形成装置３２、計測センサ３３、デジタルカメラ３４、ＵＳＢメモリ３５、および通信回線４７などによって構成される。画像処理システム４は、画像に関する処理を行うシステムであって、画像をシートに印刷したり、シートに記されている画像を電子化して保存しまたは送信したりする。
【００１９】
情報処理装置１、サーバ２、および端末装置３１は互いに、通信回線４７を介して通信を行うことができる。通信回線４７として、インターネット、イーサネット回線、または無線ＬＡＮ（Local Area Network）などが用いられる。なお、「イーサネット」は、登録商標である。
【００２０】
情報処理装置１は、情報を処理する機器である。以下、情報処理装置１として画像形成装置が用いられる場合を例に説明する。画像形成装置は、一般に「ＭＦＰ（Multi Function Peripheral）」または「複合機」などと呼ばれる装置であって、コピー、ネットワークプリント、ファクシミリ、スキャン、およびドキュメントサーバなどの機能を集約した装置である。
【００２１】
ネットワークプリント機能は、サーバ２または端末装置３１から画像ファイルを受信し画像をシートに印刷する機能である。
【００２２】
情報処理装置１は、図２に示すように、ＣＰＵ（Central Processing Unit）１０ａ、ＲＡＭ（Random Access Memory）１０ｂ、ＲＯＭ（Read Only Memory）１０ｃ、補助記憶装置１０ｄ、ネットワークインタフェース１０ｅ、モデム１０ｆ、ＵＳＢ（Universal Serial Bus）ボード１０ｇ、タッチパネルディスプレイ１０ｈ、操作キーパネル１０ｉ、スキャンユニット１０ｊ、プリントユニット１０ｋ、およびフィニッシャ１０ｍなどによって構成される。
【００２３】
ネットワークインタフェース１０ｅは、ＴＣＰ／ＩＰ（Transmission Control Protocol/Internet Protocol）などのプロトコルでサーバ２および端末装置３１などと通信する。ネットワークインタフェース１０ｅとして、ＮＩＣ（Network Interface Card）または無線ＬＡＮボードなどが用いられる。
【００２４】
モデム１０ｆは、ファクシミリ端末との間でＧ３などのプロトコルで画像データをやり取りする。
【００２５】
ＵＳＢボード１０ｇは、ＵＳＢの規格に基づいて計測センサ３３、デジタルカメラ３４、およびＵＳＢメモリ３５などの周辺機器と通信する。なお、ＵＳＢボード１０ｇの代わりにネットワークインタフェース１０ｅがデジタルカメラ３４およびＵＳＢメモリ３５と通信してもよい。
【００２６】
タッチパネルディスプレイ１０ｈは、ユーザに対するメッセージを示す画面、ユーザがコマンドまたは情報を入力するための画面、およびＣＰＵ１０ａが実行した処理の結果を示す画面などを表示する。また、タッチパネルディスプレイ１０ｈは、タッチされた位置を示す信号をＣＰＵ１０ａへ送る。
【００２７】
操作キーパネル１０ｉは、いわゆるハードウェアキーボードであって、テンキー、スタートキー、ストップキー、およびファンクションキーなどによって構成される。
【００２８】
スキャンユニット１０ｊは、シートに記されている画像を読み取って画像データを生成する。
【００２９】
プリントユニット１０ｋは、スキャンユニット１０ｊによって読み取られた画像のほか、ネットワークインタフェース１０ｅ、モデム１０ｆ、またはＵＳＢボード１０ｇによって他の装置から受信した画像データに示される画像をシートに印刷する。
【００３０】
フィニッシャ１０ｍは、プリントユニット１０ｋによって画像が印刷されたシートに対して、必要に応じて後処理を施す。後処理は、ステープルで綴じる処理、パンチ穴を開ける処理、または折り曲げる処理などである。
【００３１】
ＲＯＭ１０ｃまたは補助記憶装置１０ｄには、コピーおよびネットワークプリントなど上述の各機能を実現するための種々のプログラムが記憶されている。これらのプログラムは、必要に応じてＲＡＭ１０ｂにロードされ、ＣＰＵ１０ａによって実行される。補助記憶装置１０ｄとして、ＨＤＤ（Hard Disk Drive）またはＳＳＤ（Solid State Drive）などが用いられる。
【００３２】
これらのプログラムの１つとして、ウィルス対策プログラム１０Ｐ（図３参照）が記憶されている。ウィルス対策プログラム１０Ｐによると、ファイルがコンピュータウィルスに感染しているか否かを検査し、感染している場合にそのファイルを安全な状態に修復することができる。以下、コンピュータウィルスを単に「ウィルス」と記載する。
【００３３】
サーバ２は、種々のファイルを記憶し、情報処理装置１またはサーバ２へファイルを提供する。一部のファイルは、バックアップ用として記憶されている。サーバ２として、ＮＡＳ（Network Attached Storage）、クラウドサーバ、またはサーバ機などが用いられる。
【００３４】
端末装置３１は、情報処理装置１またはサーバ２の機能を使用するためのクライアントである。端末装置３１として、パーソナルコンピュータ、タブレットコンピュータ、またはスマートフォンなどが用いられる。
【００３５】
図３は、情報処理装置１の機能的構成の例を示す図である。図４は、一時ファイル５２を生成する方法の第一の例を説明するための図である。図５は、一時ファイル５２を生成する第二の方法の例を説明するための図である。図６は、プレビューの第一の例を示す図である。図７は、プレビューの第二の例を示す図である。図８は、代替ファイル５４を生成する第一の方法の例を説明するための図である。図９は、代替ファイル５４を生成する第二の方法の例を説明するための図である。図１０は、代替ファイル５４を生成する第三の方法の例を説明するための図である。
【００３６】
次に、ウィルス対策プログラム１０Ｐによるウィルスの対策の処理を、図３〜図１０を参照しながら説明する。
【００３７】
ウィルス対策プログラム１０Ｐは、図３に示すように、ウィルススキャン部１０１、一時隔離部１０２、感染部分補完部１０３、プレビュー表示部１０４、関連ファイル要求部１０５、感染部分置換部１０６、およびジョブ実行部１０７などが情報処理装置１に実現される。
【００３８】
ウィルススキャン部１０１は、他の装置からファイル５を受信するごとに、ファイル５がウィルスに感染しているか否かを検査する。また、ファイル５がウィルスに感染している場合は、ファイル５の中の感染している部分を特定する。以下、ウィルスに感染しているファイル５を「感染ファイル５１」と記載し、感染ファイル５１を構成する部分のうちのウィルスに感染している部分を「感染部分データ５１ａ」と記載する。
【００３９】
一時隔離部１０２は、隔離用の記憶領域であって、感染ファイル５１を記憶する。感染ファイル５１は、感染部分補完部１０３または感染部分置換部１０６による処理のために一時隔離部１０２から読み出されることがあるが、原則としてそれ以外の処理のためには読み出されない。
【００４０】
感染部分補完部１０３は、感染ファイル５１から感染部分データ５１ａを除去し他のデータを補完することによって一時ファイル５２を生成する。例えば、感染ファイル５１が、イラスト６１を印刷するためのものである場合は、図４に示すような方法で一時ファイル５２を生成する。
【００４１】
感染部分補完部１０３は、感染部分データ５１ａを感染ファイル５１から削除する。すると、感染部分データ５１ａによって本来再現される部分がイラスト６１から欠落する。以下、この部分を「感染部分画像６１ａ」と記載し、感染部分画像６１ａ以外の部分を「周囲画像６１ｂ」と記載する。画像６１の一例は、デジタルカメラ３４によって撮影されたものである。
【００４２】
感染部分補完部１０３は、欠落した部分を補完する補完画像６１ｃの画像データ５１ｃを周囲画像６１ｂの画像データ５１ｂに基づいて生成する。画像データ５１ｃは、公知の画像補完技術によって生成すればよい。
【００４３】
そして、感染部分補完部１０３は、感染ファイル５１の中の感染部分データ５１ａを画像データ５１ｃに置き換えることによって一時ファイル５２を生成する。
【００４４】
なお、ダミー用の画像の画像データを画像データ５１ｃとして予め用意しておき、感染部分データ５１ａをこれに置き換えてもよい。ダミー用の画像は、例えば、黒色、灰色、または白色の単色の画像である。
【００４５】
または、感染ファイル５１が、時刻ごとの値およびその変化を表わすグラフ６３を再現するためのものである場合は、図５に示すような方法で一時ファイル５２を生成する。なお、時間ごとの値の一例は、計測センサ３３によって計測された距離などの値である。
【００４６】
感染部分補完部１０３は、ウィルスに感染している部分の感染部分データ５１ｄを感染ファイル５１から削除する。すると、感染部分データ５１ｄによって本来再現される部分がグラフ６３から欠落する。以下、この画像を「感染部分６３ｄ」と記載する。また、感染部分６３ｄ以外の部分を「周囲部分６３ｅ」と記載する。
【００４７】
感染部分補完部１０３は、欠落した部分を補完する値（以下、「補完値」と記載する。）を周囲部分６３ｅの値に基づいて算出し、その補完値のグラフ６３ｆの補完データ５１ｆを生成する。補完値は、線形補間または最近傍補完などの公知の方法によって算出することができる。
【００４８】
そして、感染部分補完部１０３は、感染ファイル５１の中の感染部分データ５１ｄを補完データ５１ｆに置き換えることによって一時ファイル５２を生成する。
【００４９】
このように、一時ファイル５２は、感染ファイル５１の中の感染部分データ５１ａを、感染部分データ５１ａによって本来再生されるオブジェクト（画像）の周辺の画像のデータで補完したものである。
【００５０】
プレビュー表示部１０４は、一時ファイル５２に示される画像をプレビューとしてタッチパネルディスプレイ１０ｈに表示させる。例えば、図４で説明した方法で一時ファイル５２が生成された場合は、図６のようにイラスト６２をプレビューとして表示させる。または、図５で説明した方法で一時ファイル５２が生成された場合は、図７のようにグラフ６４をプレビューとして表示させる。このように一時ファイル５２によると、感染ファイル５１によって本来再現される画像に類似した画像を再現することができる。
【００５１】
なお、プレビュー表示部１０４は、後述する代替ファイル５４が生成されたら直ちにプレビューを表示させるのを終了してもよい。または、代替ファイル５４に基づいてジョブが開始されたら直ちにプレビューを表示させるのを終了してもよい。
【００５２】
関連ファイル要求部１０５は、感染部分補完部１０３およびプレビュー表示部１０４による処理と前後してまたは並行して、関連ファイル５３をサーバ２へ要求して取得する。関連ファイル５３は、感染ファイル５１に関連するファイル５であって、感染ファイル５１にできるだけ類似していることが望ましい。サーバ２は、関連ファイル５３を情報処理装置１へ提供する。これらの処理は、例えば次のように実行される。
【００５３】
関連ファイル要求部１０５は、関連ファイル５３として、ファイル名が感染ファイル５１と同じであるファイル５をサーバ２へ要求する。この場合は、要求の際に感染ファイル５１のファイル名を情報処理装置１へ通知する。
【００５４】
すると、サーバ２は、通知されたファイル名のファイル５を所定の記憶領域から読み出し、関連ファイル５３として情報処理装置１へ送信する。
【００５５】
または、関連ファイル要求部１０５は、関連ファイル５３として、感染ファイル５１の旧版であるファイル５をサーバ２へ要求する。この場合は、要求の際に感染ファイル５１のファイル名およびバージョンを情報処理装置１へ通知する。
【００５６】
すると、サーバ２は、通知されたファイル名が付されかつ通知されたバージョンよりも古いバージョンのファイル５を所定の記憶領域から読み出し、関連ファイル５３として情報処理装置１へ送信する。
【００５７】
関連ファイル５３がサーバ２から送信されてくると、ウィルスに感染しているか否かがウィルススキャン部１０１によって検査される。
【００５８】
感染部分置換部１０６は、関連ファイル５３がウィルスに感染していないとウィルススキャン部１０１によって判別された場合に、感染ファイル５１および関連ファイル５３を用いて代替ファイル５４を次のように生成する。なお、本実施形態において「論理アドレス」とは、ファイルの先頭を基準（０番地）とするアドレスを意味する。
【００５９】
感染ファイル５１も関連ファイル５３もヘッダを有する場合は、感染部分置換部１０６は、図８（ａ）に示す、感染ファイル５１のデータ領域の先頭の論理アドレスＲ１１から感染部分データ５１ａの先頭の論理アドレスＲ１２までのオフセットＬａを算出する。つまり、Ｒ１２−Ｒ１１、をオフセットＬａとして算出する。さらに、感染部分データ５１ａのサイズＬｂを特定する。
【００６０】
感染部分置換部１０６は、関連ファイル５３の中の代替用部分データ５３ａを特定する。代替用部分データ５３ａは、感染部分データ５１ａの代わりに用いることができるデータである。代替用部分データ５３ａの先頭の論理アドレスＲ３２は、図８（ｂ）に示すように、関連ファイル５３のデータ領域の先頭の論理アドレスＲ３１からオフセットＬａだけ後ろの論理アドレスである。つまり、論理アドレスＲ３２は、Ｒ３１＋Ｌａ、である。また、代替用部分データ５３ａのサイズは、感染部分データ５１ａのサイズと同じであり、サイズＬｂである。
【００６１】
そして、感染部分置換部１０６は、代替用部分データ５３ａを関連ファイル５３から抽出し、感染ファイル５１の感染部分データ５１ａに上書きする。つまり、感染ファイル５１の感染部分データ５１ａを代替用部分データ５３ａに置き換える。これにより、図８（ｃ）に示すように、代替ファイル５４が生成される。
【００６２】
または、感染ファイル５１も関連ファイル５３もヘッダを有しない場合は、感染部分置換部１０６は、図９（ａ）に示す、感染ファイル５１の先頭から感染部分データ５１ａの先頭の論理アドレスＲ１４までのオフセットＬｃを算出する。さらに、感染部分データ５１ａのサイズＬｄを特定する。
【００６３】
感染部分置換部１０６は、関連ファイル５３の中の代替用部分データ５３ａを特定する。代替用部分データ５３ａの先頭の論理アドレスＲ３４は、図９（ｂ）に示すように、関連ファイル５３の先頭からオフセットＬｃだけ後ろの論理アドレスである。また、代替用部分データ５３ａのサイズは、感染部分データ５１ａのサイズと同じであり、サイズＬｄである。
【００６４】
そして、感染部分置換部１０６は、代替用部分データ５３ａを関連ファイル５３から抽出し、感染ファイル５１の感染部分データ５１ａに上書きする。これにより、図９（ｃ）に示すように、代替ファイル５４が生成される。
【００６５】
または、感染ファイル５１がヘッダを有するが関連ファイル５３がヘッダを有しない場合は、感染部分置換部１０６は、図１０（ａ）に示す、感染ファイル５１のデータ領域の先頭の論理アドレスＲ１７から感染部分データ５１ａの先頭の論理アドレスＲ１８までのオフセットＬａを算出する。つまり、Ｒ１８−Ｒ１７、をオフセットＬｅとして算出する。さらに、感染部分データ５１ａのサイズＬｆを特定する。
【００６６】
感染部分置換部１０６は、関連ファイル５３の中の代替用部分データ５３ａを特定する。代替用部分データ５３ａの先頭の論理アドレスＲ３７は、図１０（ｂ）に示すように、関連ファイル５３の先頭からオフセットＬｅだけ後ろの論理アドレスである。また、代替用部分データ５３ａのサイズは、感染部分データ５１ａのサイズと同じであり、サイズＬｆである。
【００６７】
そして、感染部分置換部１０６は、代替用部分データ５３ａを関連ファイル５３から抽出し、感染ファイル５１の感染部分データ５１ａに上書きする。これにより、図１０（ｃ）に示すように、代替ファイル５４が生成される。
【００６８】
ジョブ実行部１０７は、感染部分置換部１０６によって代替ファイル５４が生成されると、代替ファイル５４に基づいてジョブを実行する。例えば、代替ファイル５４に含まれる画像データに基づいて画像が印刷されるようにプリントユニット１０ｋを制御する。
【００６９】
ジョブが実行し終わったら、代替ファイル５４の基の感染ファイル５１が一時隔離部１０２から削除される。または、ジョブが実行し終わるのを待つことなく、代替ファイル５４が生成された時点で削除されるようにしてもよい。
【００７０】
ウィルススキャン部１０１による検査の結果、ファイル５がウィルスに感染していないと判別された場合は、ジョブ実行部１０７は、そのファイル５に基づいてジョブを実行する。
【００７１】
図１１は、ファイル５に基づいてジョブを実行する際の全体的な処理の流れの例を説明するフローチャートである。
【００７２】
次に、ファイル５を受信してからジョブを実行するまでの全体的な処理の流れを、フローチャートを参照しながら説明する。
【００７３】
情報処理装置１は、ウィルス対策プログラム１０Ｐに基づいて、図１１に示す手順で処理を実行する。
【００７４】
情報処理装置１は、ファイル５を他の装置から受信すると（図１１の＃７０１）、ファイル５がウィルスに感染しているか否かを検査する（＃７０２）。
【００７５】
その結果、ウィルスに感染していないと判別した場合は（＃７０３でＮｏ）、情報処理装置１は、受信したファイル５を用いてジョブを実行する（＃７０４）。
【００７６】
一方、ウィルスに感染していると判別した場合は（＃７０３でＹｅｓ）、情報処理装置１は、ファイル５を感染ファイル５１として隔離する（＃７０５）。
【００７７】
さらに、情報処理装置１は、図４または図５に例示したように感染ファイル５１から感染部分データ５１ａを除去し他のデータ（例えば、画像データ５１ｃまたは補完データ５１ｆ）を補完することによって一時ファイル５２を生成する（＃７０６）。そして、図６または図７に例示したように、一時ファイル５２に基づいてプレビューを表示する（＃７０７）。
【００７８】
ステップ＃７０６〜＃７０７の処理と前後してまたは並行して、情報処理装置１は、感染ファイル５１の代替のファイル５つまり関連ファイル５３をサーバ２へ要求する（＃７０８）。関連ファイル５３を受信すると（＃７０９）、関連ファイル５３がウィルスに感染しているか否かを検査する（＃７１０）。
【００７９】
その結果、ウィルスに感染していないと判別した場合は（＃７１１でＮｏ）、情報処理装置１は、図８〜図１０に例示した方法で感染ファイル５１の感染部分データ５１ａを関連ファイル５３の代替用部分データ５３ａに置き換えることによって代替ファイル５４を生成する（＃７１２）。
【００８０】
そして、情報処理装置１は、代替ファイル５４に基づいてジョブを実行する（＃７１３）。
【００８１】
関連ファイル５３がウィルスに感染していると判別した場合は（＃７１１でＹｅｓ）、情報処理装置１は、ジョブを中止する。または、代替ファイル５４を用いてジョブを実行してもよい。関連ファイル５３が得られない場合も同様に、代替ファイル５４を用いてジョブを実行してもよい。
【００８２】
本実施形態によると、ファイル５がウィルスに感染している場合に、ファイル５の代替すなわち代替ファイル５４をユーザにとって従来よりも簡単に得ることができる。
【００８３】
図１２は、感染ファイル５１と関連ファイル５３１〜５３３との比較の例を示す図である。図１３は、ファイル属性テーブル６Ｔの例を示す図である。図１４は、代替ファイル５４を生成する方法の変形例を説明するための図である。
【００８４】
感染ファイル５１の関連ファイル５３が複数存在する場合がある。このような場合は、感染部分置換部１０６は、これらの関連ファイル５３のうちのバージョンが最も新しいものを用いて代替ファイル５４を生成すればよい。または、感染部分データ５１ａの直前と各関連ファイル５３の代替用部分データ５３ａの直前とを比較し、相関関係（例えば、一致の度合）が最も高い関連ファイル５３を用いて代替ファイル５４を生成してもよい。
【００８５】
例えば、図１２に示すように、関連ファイル５３として関連ファイル５３１、５３２、および５３３が存在し、感染部分データ５１ａの直前とそれぞれの代替用部分データ５３ａの直前の一致の度合がそれぞれ「９０％」、「９５％」、「８０％」である場合は、感染部分置換部１０６は、関連ファイル５３２を用いて代替ファイル５４を生成する。
【００８６】
または、直前同士の相関関係ではなく直後同士の相関関係が最も高い関連ファイル５３を用いて代替ファイル５４を生成してもよい。または、直前同士の相関関係および直後同士の相関関係の和が最も大きい関連ファイル５３を用いて代替ファイル５４を生成してもよい。
【００８７】
または、感染部分置換部１０６は、感染ファイル５１のバックアップ用として保存されている関連ファイル５３を用いて代替ファイル５４を生成してもよい。
【００８８】
本実施形態では、感染部分置換部１０６は、関連ファイル５３がウィルスに感染している場合は、ウィルスに感染している部分に関わらず、代替ファイル５４を生成するのを中止した。しかし、ウィルスに感染している部分が代替用部分データ５３ａでなければ、関連ファイル５３から代替用部分データ５３ａを抽出し、代替ファイル５４を生成してもよい。
【００８９】
本実施形態では、感染部分置換部１０６は、関連ファイル５３がウィルスに感染していない場合に代替ファイル５４を生成した。しかし、代替ファイル５４を生成せず、関連ファイル５３がそのまま感染ファイル５１の代わりにジョブのために使用されるようにしてもよい。
【００９０】
本実施形態では、関連ファイル要求部１０５は、サーバ２に対して関連ファイル５３を要求したが、要求先を条件に応じて決定してもよい。例えば、ファイルサーバの機能を有する装置が画像処理システム４に複数台備わっている場合は、これらの装置のうちのウィルスに感染している可能性が最も低い装置に対して関連ファイル５３を要求し、この装置から関連ファイル５３を受信してもよい。なお、システム全体（ストレージ、メモリ等）のウィルス検査およびセキュリティ検査を実行した時期が現在に近い装置ほど、感染の可能性が低いと判別すればよい。
【００９１】
または、関連ファイル要求部１０５は、感染ファイル５１を作成し、編集し、または送信したユーザの履歴（例えば、編集履歴、保存履歴、または通信履歴）を取得し、このユーザがこの感染ファイル５１に類似しまたは関連する他のファイル５を保存していそうな装置を推定する。その結果、複数台の装置が推定されてもよい。そして、推定した各装置に対して関連ファイル５３を要求する。
【００９２】
ウィルススキャン部１０１によって感染ファイル５１の複数の部分からウィルスが検出される場合がある。つまり、このような場合は、感染部分補完部１０３は、複数の部分それぞれについて画像データ５１ｃを生成し、複数の部分それぞれをそれぞれの画像データ５１ｃと置き換えることによって一時ファイル５２を生成する。また、感染部分置換部１０６は、複数の部分それぞれについて代替用部分データ５３ａを関連ファイル５３から抽出し、複数の部分それぞれをそれぞれの代替用部分データ５３ａと置き換えることによって関連ファイル５３を生成する。関連ファイル５３が複数ある場合は、ウィルスに感染している部分ごとに好適な関連ファイル５３を選出し使用すればよい。
【００９３】
本実施形態では、感染部分置換部１０６は、図８〜図１０に示した方法で代替ファイル５４を生成したが、感染ファイル５１および関連ファイル５３のタイプに応じた方法で、例えば次のように代替ファイル５４を生成してもよい。
【００９４】
図１３のようなファイル属性テーブル６Ｔを予め補助記憶装置１０ｄなどに記憶させておく。ファイル属性テーブル６Ｔには、ファイルの種類ごとに、次の項目の情報を示す属性データ６Ｕが格納されている。
【００９５】
「種類名」は、その種類の名称である。「種別」は、その種類のファイルの用途または性質である。「拡張子」は、その種類のファイルのファイル名に付される拡張子である。「ヘッダ有無」は、その種類のファイルがヘッダを有するか否かである。「圧縮有無」は、その種類のファイルのデータ領域が圧縮されているか否かである。「ヘッダフォーマット情報」は、その種類のファイルのヘッダのフォーマットを示すデータ（以下、「フォーマット定義データ」と記載する。）のファイル名である。
【００９６】
フォーマット定義データは、補助記憶装置１０ｄなどの所定のディレクトリに予め記憶されている。フォーマット定義データには、その種類のファイルのヘッダのフォーマットについて示されている。具体的には、ヘッダに記載される定義を示している。この定義に従うと、そのファイルのデータ領域の各部分の論理アドレスおよび各部分の用途を特定することができる。
【００９７】
感染部分置換部１０６は、感染ファイル５１および関連ファイル５３それぞれの種類の属性データ６Ｕとその属性データ６Ｕに示されるフォーマット定義データとに基づいて、感染ファイル５１および関連ファイル５３それぞれのデータ領域の各部分の論理アドレスおよび各部分の用途を特定する。
【００９８】
例えば、感染ファイル５１の種類および関連ファイル５３の種類がともにマイクロソフト社のエクセルファイルである場合は、感染部分置換部１０６は、図１４のように、各部分の論理アドレスおよび各部分が表わす情報の用途（シートまたはマクロ）を特定する。
【００９９】
さらに、感染部分置換部１０６は、感染ファイル５１の感染部分データ５１ａと用途が同じである代替用部分データ５３ａを抽出する。例えば、１番目のマクロ（macro1）が感染部分データ５１ａである場合は、関連ファイル５３の中の１番目のマクロ（macro1）を代替用部分データ５３ａとして抽出する。
【０１００】
そして、感染部分置換部１０６は、感染部分データ５１ａを、抽出した代替用部分データ５３ａに置き換えることによって、代替ファイル５４を生成する。
【０１０１】
本実施形態では、ファイル５が、画像を再現するためのファイルである場合を例に説明したが、他の用途のためのファイルである場合も、情報処理装置１は、一時ファイル５２および代替ファイル５４を生成することができる。例えば、ファイル５が音楽、動画像、またはマルチメディアコンテンツなどを再生するためのファイルであってもよい。
【０１０２】
本実施形態では、情報処理装置１は、ファイル５がウィルスに感染している場合に、一時ファイル５２を生成してプレビューを表示し、代替ファイル５４を生成してジョブを実行した。ファイル５がウィルスに感染していないがファイル５が改竄されている場合も同様に、情報処理装置１は、これらの処理を行ってもよい。このような場合は、改竄されている部分が感染部分データ５１ａであるものとみなしてこれらの処理を行えばよい。つまり、ファイル５に不具合があった場合にこれらの処理を行えばよい。
【０１０３】
本実施形態では、情報処理装置１が画像形成装置である場合を例に説明したが、パーソナルコンピュータ、スマートフォン、タブレットコンピュータ、サーバなど他の装置であってもよい。
【０１０４】
その他、画像処理システム４、情報処理装置１、サーバ２の全体または各部の構成、処理の内容、処理の順序、データの構成などは、本発明の趣旨に沿って適宜変更することができる。
【符号の説明】
【０１０５】
１  情報処理装置
１０１  ウィルススキャン部（検査手段）
１０３  感染部分補完部（第二の生成手段）
１０４  プレビュー表示部（表示手段）
１０５  関連ファイル要求部（取得手段）
１０６  感染部分置換部（生成手段）
１０７  ジョブ実行部（再生手段）
１０ｈ  タッチパネルディスプレイ（ディスプレイ）
２  サーバ
５  ファイル
５１  感染ファイル（第一のファイル）
５１ａ  感染部分データ（不具合部分）
５１ｃ  画像データ（他のデータ）
５１ｆ  補完データ（他のデータ）
５２  一時ファイル（第三のファイル）
５３  関連ファイル（第二のファイル）
５３ａ  代替用部分データ（対応部分）
５４  代替ファイル
【図１】
2020197909.tif 000003
【図２】
2020197909.tif 000004
【図３】
2020197909.tif 000005
【図４】
2020197909.tif 000006
【図５】
2020197909.tif 000007
【図６】
2020197909.tif 000008
【図７】
2020197909.tif 000009
【図８】
2020197909.tif 000010
【図９】
2020197909.tif 000011
【図１０】
2020197909.tif 000012
【図１１】
2020197909.tif 000013
【図１２】
2020197909.tif 000014
【図１３】
2020197909.tif 000015
【図１４】
2020197909.tif 000016