(57)【要約】【課題】ファイル出力前のファイル保存期間中におけるファイルの改ざんを検出することができる改ざん検出装置を提供することである。【解決手段】改ざん検出装置は、入力手段と、記憶手段と、出力手段、改ざん検出手段とを備える。前記改ざん検出手段は、前記ファイルの入力に対応して、改ざん検出用データ生成処理に基づき、前記ファイルから、一意に定まる第１の改ざん検出用データを生成し、前記記憶手段に前記ファイル及び前記第１の改ざん検出用データを記憶し、前記ファイルの出力要求に対応して、前記改ざん検出用データ生成処理に基づき、前記記憶手段に記憶された前記ファイルから、一意に定まる第２の改ざん検出用データを生成し、前記第１の改ざん検出用データと前記第２の改ざん検出用データとを比較し、比較結果に基づき前記ファイルの改ざんを検出する。【選択図】図４
2011254475.tif 000002
【特許請求の範囲】
【請求項１】
ファイルを入力する入力手段と、
前記ファイルを記憶する記憶手段と、
前記ファイルを出力する出力手段と、
前記ファイルの入力に対応して、改ざん検出用データ生成処理に基づき、前記ファイルから、一意に定まる第１の改ざん検出用データを生成し、前記記憶手段に前記ファイル及び前記第１の改ざん検出用データを記憶し、前記ファイルの出力要求に対応して、前記改ざん検出用データ生成処理に基づき、前記記憶手段に記憶された前記ファイルから、一意に定まる第２の改ざん検出用データを生成し、前記第１の改ざん検出用データと前記第２の改ざん検出用データとを比較し、比較結果に基づき前記ファイルの改ざんを検出する改ざん検出手段と、
を備える改ざん検出装置。
【請求項２】
前記出力手段は、前記ファイルの改ざん検出に応じて、前記ファイルの出力を制限する請求項１記載の改ざん検出装置。
【請求項３】
前記出力手段は、前記ファイルの改ざん検出に応じて、改ざん検出情報及び前記ファイルの印刷を指示する請求項１記載の改ざん検出装置。
【請求項４】
前記ファイルの改ざん検出に応じて、改ざん検出情報を表示する表示手段を備える請求項１記載の改ざん検出装置。
【請求項５】
前記改ざん検出手段は、ハッシュ関数に基づき、前記ファイルから、前記第１の改ざん検出用データとしての第１のハッシュ値を生成し、また、前記ハッシュ関数に基づき、前記記憶手段に記憶された前記ファイルから、前記第２の改ざん検出用データとしての第２のハッシュ値を生成し、前記第１のハッシュ値と前記第２のハッシュ値とを比較し、比較結果に基づき前記ファイルの改ざんを検出する請求項１記載の改ざん検出装置。
【請求項６】
前記改ざん検出手段は、前記ファイルを入力してから所定時間経過後に前記ファイルを出力する場合には前記第１の改ざん検出用データを生成し、前記ファイルを受信してから所定時間経過後の前記ファイルの出力要求に対応して前記第２の改ざん検出用データを生成し、前記第１の改ざん検出用データと前記第２の改ざん検出用データとを比較し、比較結果に基づき前記ファイルの改ざんを検出し、
前記出力手段は、前記ファイルの改ざん未検出に応じて、前記ファイルの出力を指示し、前記ファイルの改ざん検出に応じて、前記ファイルの出力を制限する請求項５記載の改ざん検出装置。
【請求項７】
前記改ざん検出手段は、前記ファイルを入力してから所定時間経過前に前記ファイルを出力する場合には前記第１及び第２の改ざん検出用データの生成を省略し、
前記出力手段は、前記ファイルの出力を指示する請求項６記載の改ざん検出装置。
【請求項８】
前記改ざん検出手段は、前記ファイルの入力時における前記ファイルの印刷不能状態の検出に対応して前記第１の改ざん検出用データを生成し、前記ファイルの印刷可能状態の検出及び前記ファイルの出力要求に対応して前記第２の改ざん検出用データを生成し、前記第１の改ざん検出用データと前記第２の改ざん検出用データとを比較し、比較結果に基づき前記ファイルの改ざんを検出し、
前記出力手段は、前記ファイルの改ざん未検出に応じて、前記ファイルの印刷を指示し、前記ファイルの改ざん検出に応じて、前記ファイルの印刷を制限する請求項１記載の改ざん検出装置。
【請求項９】
前記入力手段は、送信予約ファイルとしての前記ファイルを入力し、
前記出力手段は、所定のタイミングで前記記憶手段に記憶された前記ファイルを送信する請求項１記載の改ざん検出装置。
【請求項１０】
前記出力手段は、前記ファイルの改ざん検出に応じて、前記ファイルの送信を制限する請求項９記載の改ざん検出装置。
【請求項１１】
前記改ざん検出手段は、ハッシュ関数に基づき、前記ファイルから、前記第１の改ざん検出用データとしての第１のハッシュ値を生成し、また、前記ハッシュ関数に基づき、前記記憶手段に記憶された前記ファイルから、前記第２の改ざん検出用データとしての第２のハッシュ値を生成し、前記第１のハッシュ値と前記第２のハッシュ値とを比較し、比較結果に基づき前記ファイルの改ざんを検出する請求項１０記載の改ざん検出装置。
【請求項１２】
ファイルの入力に対応して、改ざん検出用データ生成処理に基づき、前記ファイルから、一意に定まる第１の改ざん検出用データを生成し、
前記ファイル及び前記第１の改ざん検出用データを記憶し、
前記ファイルの出力要求に対応して、前記改ざん検出用データ生成処理に基づき、前記記憶された前記ファイルから、一意に定まる第２の改ざん検出用データを生成し、
前記第１の改ざん検出用データと前記第２の改ざん検出用データとを比較し、比較結果に基づき前記ファイルの改ざんを検出する改ざん検出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、改ざん検出装置及び改ざん検出方法に関する。
【背景技術】
【０００２】
通信回線を介したファイルの送受信において、回線エラー等を検出する技術が知られている。また、通信回線を介したファイルの送受信において、送信前のファイルと受信後のファイルの差分からファイルの改ざん等を検出する技術が知られている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−１７８２６３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記したようにファイル送受信中におけるファイルの改ざんについては、上記したファイル改ざん検出技術を適用しファイルの改ざんを検出することができる。しかしながら、ファイルが改ざんされる可能性のある場面は、上記に限らない。例えば、ファイル送信前（出力前）のファイル保存期間中にファイルが改ざんされる可能性もある。上記したファイル改ざん検出技術では、このようなファイル保存期間中におけるファイルの改ざんを検出することは難しい。
【０００５】
本発明が解決しようとする課題は、ファイル出力前のファイル保存期間中におけるファイルの改ざんを検出することができる改ざん検出装置及び改ざん検出方法を提供することである。
【課題を解決するための手段】
【０００６】
実施形態の改ざん検出装置は、入力手段と、記憶手段と、出力手段、改ざん検出手段とを備える。前記入力手段は、ファイルを入力する。前記記憶手段は、前記ファイルを記憶する。前記出力手段は、前記ファイルを出力する。前記改ざん検出手段は、前記ファイルの入力に対応して、改ざん検出用データ生成処理に基づき、前記ファイルから、一意に定まる第１の改ざん検出用データを生成し、前記記憶手段に前記ファイル及び前記第１の改ざん検出用データを記憶し、前記ファイルの出力要求に対応して、前記改ざん検出用データ生成処理に基づき、前記記憶手段に記憶された前記ファイルから、一意に定まる第２の改ざん検出用データを生成し、前記第１の改ざん検出用データと前記第２の改ざん検出用データとを比較し、比較結果に基づき前記ファイルの改ざんを検出する。
【図面の簡単な説明】
【０００７】
【図１】第１の実施形態に係るファイル送信装置（改ざん検出装置）の概略構成の一例を示すブロック図である。
【図２】第１の実施形態に係るファイル受信装置（改ざん検出装置）の概略構成の一例を示すブロック図である。
【図３】第１の実施形態に係るファイル送信予約処理の一例を示すフローチャートである。
【図４】第１の実施形態に係るファイル送信処理の一例を示すフローチャートである。
【図５】送信前のハッシュ値の登録の一例を示す図である。
【図６】第１の実施形態に係るファイル受信処理の一例を示すフローチャートである。
【図７】第１の実施形態に係るファイル出力処理の一例を示すフローチャートである。
【図８】出力前のハッシュ値の登録の一例を示す図である。
【図９】第２の実施形態に係るファイル転送システムの概略構成の一例を示す図である。
【図１０】第２の実施形態に係る外部通信準備処理の一例を示すフローチャートである。
【発明を実施するための形態】
【０００８】
（第１の実施形態）
以下、図面を参照して、第１の実施形態について説明する。
【０００９】
図１は、第１の実施形態に係るファイル送信装置（改ざん検出装置）の概略構成の一例を示すブロック図である。図１に示すように、ファイル送信装置は、主制御部１１、信号入出力端子１２、ファイル送信部１３、ファイル記憶部１４、呼制御部１５、付加情報設定及び記憶部１６、案内部１７を備える。
【００１０】
図２は、第１の実施形態に係るファイル受信装置（改ざん検出装置）の概略構成の一例を示すブロック図である。図２に示すように、ファイル受信装置は、主制御部２１、信号入出力端子２２、ファイル受信部２３、ファイル記憶部２４、呼制御部２５、付加情報設定及び記憶部２６、案内部２７、プリンタ２８、パーソナルコンピュータ２９を備える。
【００１１】
図３及び図４を参照して、ファイル送信予約処理及びファイル送信処理の一例について説明する。図３は、ファイル送信予約処理の一例を示すフローチャートである。図４は、ファイル送信処理の一例を示すフローチャートである。
【００１２】
ファイル送信装置の主制御部１１は、入力ファイルと出力ファイル（送信ファイル）の完全性を確保するため、出力（例えば送信）の時点で、出力ファイルが改ざんされていないか否かを検出する。例えば、ファイル送信装置の信号入出力端子１２は、送信予約ファイル及び処理指定（例えば印刷、保存、又は印刷と保存）を受信（入力）し、付加情報設定及び記憶部１６は、送信予約ファイル及び処理指定を受信（入力）に対応して、改ざん検出用データ生成処理に基づき、送信予約ファイルから、一意に定まる第１の改ざん検出用データを生成し、第１の改ざん検出用データを記憶する。さらに、ファイル記憶部１４は、送信予約ファイル及び処理指定を記憶する。
【００１３】
ここで、改ざん検出用データ生成処理の一例について説明する。例えば、付加情報設定及び記憶部１６は、送信予約ファイルの受信（入力）に対応して、ハッシュ関数に基づき、送信予約ファイルの全部又は一部から、一意に定まる第１の改ざん検出用データとしての第１のハッシュ値を生成し（ＡＣＴ１１１）、第１の改ざん検出用データを送信側ログとして記憶する（図５）。さらに、ファイル記憶部１４は、送信予約ファイルを記憶する（ＡＣＴ１１２）。ハッシュ関数は一方向性関数であり、ハッシュ関数に基づくハッシュ値生成のアルゴリズムを利用することにより、対象データ（任意のデータサイズ）から、一定のビット列（例えば２５６ビット）のハッシュ値を得ることができる。ハッシュ関数としては、例えばｍｄ５（Message Digest Algorithm 5）又はＳＨＡ（Secure Hash Algorithm）−１がある。
【００１４】
上記した送信予約ファイルの一部とは、例えば、送信予約ファイルのヘッダデータ等である。送信予約ファイルの全部から第１のハッシュ値を生成する場合には、ハッシュ値生成処理の負荷は比較的重く、送信予約ファイルの一部から第１のハッシュ値を生成する場合、ハッシュ値生成処理の負荷は比較的軽い。従って、ハッシュ値生成処理の負荷を軽減したい場合には、送信予約ファイルの一部から第１のハッシュ値を生成する。
【００１５】
上記した送信予約ファイルの一部とは、例えば、送信予約ファイルのヘッダデータ等である。送信予約ファイルの全部から第１のハッシュ値を生成する場合には、ハッシュ値生成処理の負荷は比較的重く、送信予約ファイルの一部から第１のハッシュ値を生成する場合、ハッシュ値生成処理の負荷は比較的軽い。従って、ハッシュ値生成処理の負荷を軽減したい場合には、送信予約ファイルの一部から第１のハッシュ値を生成する。
【００１６】
或いは、ファイル送信装置は、ハッシュ関数以外の手段を利用し、第１の改ざん検出用データを生成してもよい。例えば、ファイル送信装置は、ＣＲＣの技術を利用し、第１の改ざん検出用データを生成してもよい。
【００１７】
なお、ファイル送信装置の付加情報設定及び記憶部１６が、第１の改ざん検出用データを記憶するのではなく、ファイル送信装置と異なるハードウェアが、第１の改ざん検出用データを記憶し、第１の改ざん検出用データのセキュリティを高めるようにしてもよい。
【００１８】
ファイル送信装置の主制御部１１は、所定のタイミング（例えば指定された送信時間）で、記憶された送信予約ファイル及び処理指定を読み出し、ファイル送信部１３は、この送信予約ファイル及び処理指定を送信する。
【００１９】
送信予約ファイルの読み出し（又は送信）の際に、ファイル送信装置の主制御部１１は、記憶された送信予約ファイルが改ざんされていないか否かを検出し、改ざん検出結果に応じて、送信予約ファイルの送信を制限する。例えば、付加情報設定及び記憶部１６は、前記改ざん検出用データ生成処理に基づき、記憶された送信予約ファイルの全部又は一部から、一意に定まる第２の改ざん検出用データを生成する。つまり、付加情報設定及び記憶部１６は、前記ハッシュ関数に基づき、記憶された送信予約ファイルから、一意に定まる第２の改ざん検出用データとしての第２のハッシュ値を生成する（ＡＣＴ１２１）。
【００２０】
主制御部１１は、第１の改ざん検出用データ（第１のハッシュ値）と第２の改ざん検出用データ（第２のハッシュ値）とを比較し、記憶された送信予約ファイルが改ざんされていないか否かを検出する。なお、第１の改ざん検出用データ（第１のハッシュ値）が、送信予約ファイルの全部から生成されたデータであれば、第２の改ざん検出用データ（第２のハッシュ値）も、記憶された送信予約ファイルの全部から生成されたデータとする。第１の改ざん検出用データ（第１のハッシュ値）が、送信予約ファイルの一部（例えばヘッダーデータ）から生成されたデータであれば、第２の改ざん検出用データ（第２のハッシュ値）も、記憶された送信予約ファイルの一部（例えばヘッダーデータ）から生成されたデータとする。
【００２１】
主制御部１１は、第１の改ざん検出用データ（第１のハッシュ値）と第２の改ざん検出用データ（第２のハッシュ値）とが一致すれば（ＡＣＴ１２２、ＹＥＳ）、記憶された送信予約ファイルが改ざんされていないと判定し、一致しなければ（ＡＣＴ１２２、ＮＯ）、記憶された送信予約ファイルが改ざんされていると判定する（又は改ざんされている可能性が高いと判定する）。
【００２２】
例えば、ファイル送信装置の主制御部１１が、記憶された送信予約ファイルの改ざんを検出した場合（ＡＣＴ１２２、ＮＯ）、案内部１７は、警告情報（改ざん検出情報）を表示し、主制御部１１は、送信予約ファイルの送信の中止を指示する（ＡＣＴ１２４）。例えば、警告情報は、送信予約ファイルが改ざんされていることを示す改ざん検出情報（或いは送信予約ファイルが改ざんされた可能性が高いことを示す改ざん検出情報）である。
【００２３】
或いは、主制御部１１は、記憶された送信予約ファイルの改ざんを検出した場合（ＡＣＴ１２２、ＮＯ）、記憶された送信予約ファイルを読み出し、指定された送信先（ファイル受信装置）に対する警告情報及び送信予約ファイルの送信を指示する（ＡＣＴ１２４）。ファイル送信部１３は、指定された送信先（ファイル受信装置）に対して、警告情報とともに送信予約ファイル及び処理指定を送信する。
【００２４】
或いは、主制御部１１は、記憶された送信予約ファイルの改ざんを検出した場合（ＡＣＴ１２２、ＮＯ）、記憶された送信予約ファイルを読み出し、指定されたメールアドレスに対する警告情報、及び指定された送信先（ファイル受信装置）に対する送信予約ファイルの送信を指示する（ＡＣＴ１２４）。ファイル送信部１３は、指定されたメールアドレスに対して警告情報を送信し、指定された送信先（ファイル受信装置）に対して、送信予約ファイル及び処理指定を送信する。
【００２５】
また、ファイル送信装置の主制御部１１が、記憶された送信予約ファイルの改ざんを検出しなかった場合（ＡＣＴ１２２、ＮＯ）、案内部１７は、送信予約ファイルの改ざん無検出（或いは送信予約ファイルが改ざんされた可能性は低いことを示す情報）を表示し、主制御部１１は、記憶された送信予約ファイル及び処理指定を読み出し、送信予約ファイル及び処理指定の送信を指示する。ファイル送信部１３は、指定された送信先（ファイル受信装置）に対して、送信予約ファイル及び処理指定を送信する（ＡＣＴ１２３）。或いは、ファイル送信部１３は、指定された送信先（ファイル受信装置）に対して、第１の改ざん検出用データ（第１のハッシュ値）又は第２の改ざん検出用データ（第２のハッシュ値）、送信予約ファイル、及び処理指定を送信する（ＡＣＴ１２３）。
【００２６】
なお、送信予約ファイルを入力してから所定時間経過前にこの送信予約ファイルを送信する場合、主制御部１１は、第１及び第２の改ざん検出用データの生成を省略し、改ざん検出処理も省略し、送信予約ファイルの送信を指示することができる。これにより、ファイル送信部１３は、改ざん検出を省略した状態で、送信予約ファイルを送信することができる。つまり、ファイル送信装置は、改ざんされる可能性が低いケースにおいて、改ざん検出処理を省略し、改ざん検出処理の負荷を自動的に軽減することができる。
【００２７】
言い換えれば、送信予約ファイルを入力してから所定時間経過後にこの送信予約ファイルを送信する場合、主制御部１１は、第１及び第２の改ざん検出用データを生成し、改ざん検出処理を実行する。
【００２８】
図６は、ファイル受信処理の一例を示すフローチャートである。図７は、ファイル出力処理の一例を示すフローチャートである。
【００２９】
ファイル受信装置の主制御部２１は、入力ファイル（受信ファイル）と出力ファイルの完全性を確保するため、出力（例えば印刷）の時点で、出力ファイルが改ざんされていないか否かを検出する。例えば、ファイル受信装置のファイル受信部２３は、ファイル送信装置から送信されたファイル及び処理指定を受信（入力）し、付加情報設定及び記憶部２６は、ファイル及び処理指定の受信（入力）に対応して、改ざん検出用データ生成処理に基づき、受信ファイルから、一意に定まる第３の改ざん検出用データを生成し、第３の改ざん検出用データを記憶する。また、主制御部２１は、受信した処理指定を解析し、処理指定に応じた処理の実行を制御する。例えば、主制御部２１は、処理指定が保存を示す場合には、受信ファイルの保存を指定し、ファイル記憶部１４は、受信ファイルを記憶する。また、主制御部２１は、処理指定が印刷を示し、且つプリンタ２８による印刷が実行できない状態である場合には、受信ファイルの保存及び所定時間経過後の印刷を指定し、ファイル記憶部１４は、受信ファイルを記憶する。
【００３０】
ここで、改ざん検出用データ生成処理の一例について説明する。例えば、付加情報設定及び記憶部２６は、送信予約ファイルの受信（入力）に対応して、ハッシュ関数に基づき、受信ファイルの全部又は一部から、一意に定まる第３の改ざん検出用データとしての第３のハッシュ値を生成し（ＡＣＴ２１１）、第３の改ざん検出用データを記憶する（図８）。さらに、ファイル記憶部１４は、受信ファイルを記憶する（ＡＣＴ２１２）。ハッシュ関数等の詳細については上記説明した通りである。
【００３１】
上記した受信ファイルの一部とは、例えば、受信ファイルのヘッダデータ等である。受信ファイルの全部から第３のハッシュ値を生成する場合には、ハッシュ値生成処理の負荷は比較的重く、受信ファイルの一部から第３のハッシュ値を生成する場合、ハッシュ値生成処理の負荷は比較的軽い。従って、ハッシュ値生成処理の負荷を軽減したい場合には、受信ファイルの一部から第３のハッシュ値を生成する。
【００３２】
なお、ファイル送信装置が、第１の改ざん検出用データ（第１のハッシュ値）又は第２の改ざん検出用データ（第２のハッシュ値）とともにファイルを送信している場合、ファイル受信部２３は、第１の改ざん検出用データ（第１のハッシュ値）又は第２の改ざん検出用データ（第２のハッシュ値）とともにファイル及び処理指定を受信（入力）し、付加情報設定及び記憶部２６は、第１の改ざん検出用データ（第１のハッシュ値）又は第２の改ざん検出用データ（第２のハッシュ値）、及び第３の改ざん検出用データ（第３のハッシュ値）を記憶する。
【００３３】
また、ファイル受信装置の付加情報設定及び記憶部２６が、第１及び第３の改ざん検出用データ（又は第２及び第３の改ざん検出用データ）を記憶するのではなく、ファイル受信装置と異なるハードウェアが、第１及び第３の改ざん検出用データ（又は第２及び第３の改ざん検出用データ）を記憶し、第１及び第３の改ざん検出用データ（又は第２及び第３の改ざん検出用データ）のセキュリティを高めるようにしてもよい。
【００３４】
ファイル受信装置の主制御部２１は、所定のタイミング（例えばファイルを受信してから所定時間経過後のタイミング、又は印刷可能状態の検出タイミング、又はユーザからの印刷指定の検出タイミング）で、記憶された受信ファイルを読み出し、信号入出力端子２２は、この受信ファイルを出力する。例えば、信号入出力端子２２は、この受信ファイルをプリンタ２８へ出力し、プリンタ２８は、この受信ファイルに基づく画像を印刷する。
【００３５】
受信ファイルの読み出し（出力）の際に、ファイル受信装置の主制御部２１は、記憶された受信ファイルが改ざんされていないか否かを検出し、改ざん検出結果に応じて、受信ファイルの出力を制限する。例えば、付加情報設定及び記憶部２６は、前記改ざん検出用データ生成処理に基づき、記憶された受信ファイルの全部又は一部から、一意に定まる第４の改ざん検出用データを生成する。つまり、付加情報設定及び記憶部２６は、前記ハッシュ関数に基づき、記憶された受信ファイルから、一意に定まる第４の改ざん検出用データとしての第４のハッシュ値を生成する（ＡＣＴ２２１）。
【００３６】
主制御部２１は、第３の改ざん検出用データ（第３のハッシュ値）と第４の改ざん検出用データ（第４のハッシュ値）とを比較し、記憶された受信ファイルが改ざんされていないか否かを検出する。なお、第３の改ざん検出用データ（第３のハッシュ値）が、送信予約ファイルの全部から生成されたデータであれば、第４の改ざん検出用データ（第４のハッシュ値）も、記憶された送信予約ファイルの全部から生成されたデータとする。第３の改ざん検出用データ（第３のハッシュ値）が、送信予約ファイルの一部（例えばヘッダーデータ）から生成されたデータであれば、第４の改ざん検出用データ（第４のハッシュ値）も、記憶された送信予約ファイルの一部（例えばヘッダーデータ）から生成されたデータとする。
【００３７】
主制御部１１は、第３の改ざん検出用データ（第３のハッシュ値）と第４の改ざん検出用データ（第４のハッシュ値）とが一致すれば（ＡＣＴ２２２、ＹＥＳ）、記憶された受信ファイルが改ざんされていないと判定し、一致しなければ（ＡＣＴ２２２、ＮＯ）、記憶された受信ファイルが改ざんされていると判定する（又は改ざんされている可能性が高いと判定する）。
【００３８】
例えば、ファイル受信装置の主制御部２１が、記憶された受信ファイルの改ざんを検出した場合（ＡＣＴ２２２、ＮＯ）、案内部２７は、警告情報を表示し、主制御部２１は、受信ファイルの読み出し及び出力の中止を指示する（ＡＣＴ２２４）。例えば、警告情報は、受信ファイルが改ざんされていることを示す改ざん検出情報（或いは受信ファイルが改ざんされた可能性が高いことを示す改ざん検出情報）である。
【００３９】
或いは、主制御部２１は、記憶された受信ファイルの改ざんを検出した場合（ＡＣＴ２２２、ＮＯ）、記憶された受信ファイルを読み出し、警告情報及び受信ファイルの出力を指示する（ＡＣＴ２２４）。信号入出力端子２２は、プリンタ２８に対して、警告情報とともに受信ファイルを送信する。プリンタ２８は、警告情報及び受信ファイルに基づく画像を印刷する。これにより、ヘッダー等に警告情報を含む印刷画像が出力される。
【００４０】
或いは、主制御部２１は、記憶された受信ファイルの改ざんを検出した場合（ＡＣＴ２２２、ＮＯ）、記憶された受信ファイルを読み出し、指定されたメールアドレスに対する警告情報の送信を指示し、受信ファイルの出力を指示する（ＡＣＴ２２４）。信号入出力端子２２は、プリンタ２８に対して、受信ファイルを送信する。プリンタ２８は、受信ファイルに基づく画像を印刷する。
【００４１】
上記説明では、第３及び第４の改ざん検出用データに基づく改ざん検出について説明したが、ファイル受信装置が、ファイル送信装置から第１又は第２の改ざん検出用データを受信している場合には、第１、第３、第４の改ざん検出用データ（又は第２、第３、第４の改ざん検出用データ）に基づく改ざん検出が可能となる。
【００４２】
例えば、第１、第３、第４の改ざん検出用データ（又は第２、第３、第４の改ざん検出用データ）が一致する場合には、主制御部２１は、ファイル送信前からファイル出力前まで全ての期間にわたりファイルが改ざんされていないと判定できる。
【００４３】
また、第１及び第３の改ざん検出用データが一致し、第４の改ざん検出用データが第１及び第３の改ざん検出用データと一致しない場合には、主制御部２１は、ファイル送信前からファイル受信時までファイルが改ざんされていないが、ファイル受信後からファイル出力前までの間にファイルが改ざんされたと判定し、改ざん情報の記録を指示し、付加情報設定及び記憶部２６が、改ざん情報を記憶する。
【００４４】
また、第３及び第４の改ざん検出用データが一致し、第１の改ざん検出用データが第３及び第４の改ざん検出用データと一致しない場合には、主制御部２１は、ファイル受信時にはファイルが改ざんされていたと判定し、改ざん情報の記録を指示し、付加情報設定及び記憶部２６が、改ざん情報を記憶する。
【００４５】
また、ファイル受信部２３が、第１及び第３の改ざん検出用データの何れのデータも受信しない場合に、主制御部２１は、ファイル送信装置とファイル受信装置との通信中にデータの改ざん、改変等が発生したものと判定する。
【００４６】
なお、ファイルを受信してから所定時間経過前にこの受信ファイルを出力（印刷）する場合、又は前記ファイルの入力時における前記ファイルの印刷可能状態を検出した場合、主制御部１１は、第３及び第４の改ざん検出用データの生成を省略し、改ざん検出処理も省略し、受信ファイルの出力（印刷）を指示することができる。これにより、信号入出力端子２２は、改ざん検出を省略した状態で、受信ファイルを出力（印刷）することができる。つまり、ファイル受信装置は、改ざんされる可能性が低いケースにおいて、改ざん検出処理を省略し、改ざん検出処理の負荷を自動的に軽減することができる。
【００４７】
言い換えれば、ファイルを受信してから所定時間経過後にこの受信ファイルを出力（印刷）する場合、又はファイルの入力時におけるファイルの印刷不能状態を検出した場合、主制御部１１は、第３の改ざん検出用データを生成する。そして、ファイルを受信してから所定時間経過後のファイル出力要求に対応して、又はファイルの印刷可能状態の検出且つファイルの出力要求に対応して、主制御部１１は、第４の改ざん検出用データを生成し、第３の改ざん検出用データと第４の改ざん検出用データとを比較し、比較結果に基づき受信ファイルの改ざん未検出に応じて、受信ファイルの送信を指示する。
【００４８】
以下、第１の実施形態についてまとめる。
【００４９】
第１の実施形態のファイル送信装置は、ファイルの送信予約後からファイルの送信までの間のファイルの改ざんを検出することができる。さらに、ファイル送信装置は、ファイルの改ざんを検出した場合、ファイルの送信を制限することができる。例えば、ファイル送信装置は、ファイルの改ざんを検出した場合、ファイルの送信を中止することができる。或いは、ファイル送信装置は、ファイルの改ざんを検出した場合、警告情報とファイルを送信することができる。
【００５０】
また、第１の実施形態のファイル受信装置は、ファイルの受信後からファイルの読み出し（出力）までの間のファイルの改ざんを検出することができる。さらに、ファイル受信装置は、ファイルの改ざんを検出した場合、ファイルの出力を制限することができる。例えば、ファイル受信装置は、ファイルの改ざんを検出した場合、ファイルの出力（印刷）を中止することができる。或いは、ファイル送信装置は、ファイルの改ざんを検出した場合、警告情報とファイルとを出力（印刷）することができる。
【００５１】
（第２の実施形態）
以下、図面を参照して、第２の実施形態について説明する。
【００５２】
図９は、第２の実施形態に係るファイル転送システムの概略構成の一例を示す図である。図９に示すように、ファイル転送システムは、コントローラ１０１、パーソナルコンピュータ１０２、画像形成装置１０３、ＳＩＰ(Session Initiation Protocol)サーバ１０４、電話器１０５を備えている。コントローラ１０１は、例えばパーソナルコンピュータである。コントローラ１０１、パーソナルコンピュータ１０２、画像形成装置１０３は、ＬＡＮ１０６を介して、ＳＩＰサーバ１０４と接続されている。また、電話器１０５は、電話線１０７を介して、ＳＩＰサーバ１０４と接続されている。
【００５３】
上記コントローラ１０１は、例えば、ファイル転送機能を備えたプログラム（ソフトウェア）１０１ａを実装（記憶）し、このプログラム１０１ａに基づき動作する。このプログラム１０１ａは、コントローラ上に不正なＭＡＣアドレスが存在すると判断した時には、正常に動作しない。
【００５４】
例えば、このプログラム１０１ａをＡ社製のハードウェア（例えばコントローラ１０１）に実装（インストール）することを想定する。つまり、このプログラム１０１ａをＡ社製のハードウェア以外で動作させたくないケースを想定する。
【００５５】
このプログラム１０１ａは、本プログラム１０１ａをインストールしたハードウェアのＭＡＣアドレスを検出し、予め判明するＡ社製のハードウェアのＭＡＣアドレス（登録ＭＡＣアドレス）と検出したＭＡＣアドレスとを比較し、Ａ社製のハードウェアにインストールされているか否かを検証する。
【００５６】
このプログラム１０１ａは、Ａ社製のハードウェアのＭＡＣアドレスと検出したＭＡＣアドレスとが一致すれば、Ａ社製のハードウェアにインストールされていると判定し、動作を許可する（例えば外部機器との通信を許可する）。
【００５７】
このプログラム１０１ａは、Ａ社製のハードウェアのＭＡＣアドレスと検出したＭＡＣアドレスとが一致しなければ、Ａ社製のハードウェアにインストールされていないと判定し、動作を許可しない（例えば外部機器との通信を許可しない）。
【００５８】
以上により、特定のハードウェアで動作するプログラムを提供することが可能となる。これにより、不正に上記プログラム１０１ａが入手されても、正規のハードウェア（上記のケースではＡ社製のハードウェア）でなければ、不正に入手されたプログラム１０１ａを利用することはできない。つまり、不正に入手された上記プログラム１０１ａの不正使用を防止することができる。
【００５９】
上記コントローラ１０１は、例えば、ファイル転送装置である。上記コントローラ１０１にインストールされたプログラム１０１ａは、外部との通信を可能とするため、ＮＩＣ上のＭＡＣアドレスを検出し、検出ＭＡＣアドレスの正当性を確認する。上記プログラム１０１ａが、検出ＭＡＣアドレスは未登録のＭＡＣアドレスであると判断した場合、検出ＭＡＣアドレスを不正と判断し、コントローラ１０１はＳＩＰリクエストに関するプログラム１０１ａの実行を中止する。これによりＳＩＰは未登録となりファイルの送受信は許可されなくなる。
【００６０】
図１０を参照して、上記についてさらに詳しく説明する。コントローラ１０１は、通常、起動後（ＡＣＴ３０１）に外部との通信を可能とするため、ＳＩＰサーバ１０４からＳＩＰレジストを行う。この時、コントローラ１０１にインストールされたプログラム１０１ａは、ＭＡＣアドレスを検出し、検出ＭＡＣアドレスが許可されていないＭＡＣアドレスである場合(未登録ＭＡＣアドレスである場合)には（ＡＣＴ３０２、ＮＯ）、ＳＩＰサーバ１０４に対してＳＩＰリクエスト処理を行わない。そして、コントローラ１０１は、サービスマンコールとして『未許可のＭＡＣアドレスです。』又は『不正なハードウェアです。』等のメッセージをユーザに表示する（ＡＣＴ３０３）。
【００６１】
上記処理によって、登録された正規のハードウェア（登録のＭＡＣアドレスを有するハードウェア）に上記プログラム１０１ａをインストールした場合に、上記プログラム１０１ａは動作するが、未登録の非正規のハードウェア（未登録のＭＡＣアドレスを有するハードウェア）に上記プログラム１０１ａをインストールしても、上記プログラム１０１ａは動作しない。つまり、未登録の非正規のハードウェアに上記プログラム１０１ａをインストールしても、未登録の非正規のハードウェアは、外部と正常に通信することはできない。
【００６２】
コントローラ１０１にインストールされたプログラム１０１ａは、検出ＭＡＣアドレスが許可されたＭＡＣアドレスである場合(登録ＭＡＣアドレスである場合)には（ＡＣＴ３０２、ＹＥＳ）、ＳＩＰサーバ１０４に対してレジストのリクエストを開始し（ＡＣＴ３０４）、レジストを完了し（ＡＣＴ３０５）、外部通信準備を完了する（ＡＣＴ３０６）。
【００６３】
以下、第２の実施形態についてまとめる。
【００６４】
（１）例えば、第２の実施形態のプログラムは、下記の通りである。
【００６５】
ネットワーク接続機器（本プログラムをインストールした機器）のＭＡＣアドレスを検出する手順と、
検出ＭＡＣアドレスの正当性を検出する手順と、
検出ＭＡＣアドレスの正当性が検出されたことを条件として動作を許可する手順と、をコンピュータに実行させるためのプログラム。
【００６６】
（２）例えば、第２の実施形態のプログラムは、下記の通りである。
【００６７】
ネットワーク接続機器（本プログラムをインストールした機器）のＭＡＣアドレスを検出する手順と、
登録ＭＡＣアドレスと検出ＭＡＣアドレスとを比較して検出したＭＡＣアドレスの正当性を検出する手順と、
検出ＭＡＣアドレスの正当性が検出されたことを条件として動作を許可する手順と、をコンピュータに実行させるためのプログラム。
【００６８】
（３）例えば、第２の実施形態のプログラムは、下記の通りである。
【００６９】
ネットワーク接続機器（本プログラムをインストールした機器）のＭＡＣアドレスを検出する手順と、
登録ＭＡＣアドレスと検出ＭＡＣアドレスとを比較して検出したＭＡＣアドレスの正当性を検出する手順と、
検出ＭＡＣアドレスの正当性が検出されたことを条件として外部機器との通信を許可する手順と、をコンピュータに実行させるためのプログラム。
【００７０】
（４）例えば、第２の実施形態の制御方法は、下記の通りである。
【００７１】
ネットワーク接続機器（本プログラムをインストールした機器）のＭＡＣアドレスを検出し、
検出ＭＡＣアドレスの正当性を検出し、
検出ＭＡＣアドレスの正当性が検出されたことを条件として動作を許可する制御方法。
【００７２】
（５）例えば、第２の実施形態の制御方法は、下記の通りである。
【００７３】
ネットワーク接続機器（本プログラムをインストールした機器）のＭＡＣアドレスを検出し、
登録ＭＡＣアドレスと検出ＭＡＣアドレスとを比較して検出したＭＡＣアドレスの正当性を検出し、
検出ＭＡＣアドレスの正当性が検出されたことを条件として動作を許可する制御方法。
【００７４】
（６）例えば、第２の実施形態のプログラムは、下記の通りである。
【００７５】
ネットワーク接続機器（本プログラムをインストールした機器）のＭＡＣアドレスを検出し、
登録ＭＡＣアドレスと検出ＭＡＣアドレスとを比較して検出したＭＡＣアドレスの正当性を検出し、
検出ＭＡＣアドレスの正当性が検出されたことを条件として外部機器との通信を許可する制御方法。
【００７６】
（７）例えば、第２の実施形態のコントローラは、下記の通りである。
【００７７】
上記（１）、（２）、（３）の何れかのプログラムをインストールしたコントローラ。
【００７８】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
【符号の説明】
【００７９】
１１…主制御部、１２…信号入出力端子、１３…ファイル送信部、１４…ファイル記憶部、１５…呼制御部、１６…付加情報設定及び記憶部、１７…案内部、２１…主制御部、２２…信号入出力端子、２３…ファイル受信部、２４…ファイル記憶部、２５…呼制御部、２６…付加情報設定及び記憶部、２７…案内部、２８…プリンタ、２９…パーソナルコンピュータ
【図１】
2011254475.tif 000003
【図２】
2011254475.tif 000004
【図３】
2011254475.tif 000005
【図４】
2011254475.tif 000006
【図５】
2011254475.tif 000007
【図６】
2011254475.tif 000008
【図７】
2011254475.tif 000009
【図８】
2011254475.tif 000010
【図９】
2011254475.tif 000011
【図１０】
2011254475.tif 000012