(58)【調査した分野】(Int.Cl.,DB名)
前記画像出力手段は、前記権限情報取得手段が取得した権限情報で、印刷出力が許可されている場合にのみ、記印刷手段に前記復号手段が復号した画像データに基づく画像を前記印刷手段に供給して印刷出力させることが可能であることを特徴とする請求項3に記載の画像データ処理装置。
請求項1に記載の画像データ処理装置で出力された暗号化画像データに付加された付加データから、当該画像データ処理装置の公開鍵の識別子に対応する装置付加データを検出し、検出した装置付加データから、当該画像データ処理装置に係る秘密鍵を用いて第2の暗号鍵を取得する第2の暗号鍵取得手段と、
取得した第2の暗号鍵を用いて前記鍵格納データから第1の暗号鍵を取得する第1の暗号鍵取得手段と、
取得した第1の暗号鍵を用いて前記暗号化データを復号して画像データを得ることが可能な復号手段と、
前記復号手段が得た画像データを出力することが可能な出力手段と
を有することを特徴とする画像データ処理装置。
【発明を実施するための形態】
【0014】
(A)第1の実施形態
以下、本発明による画像データ処理装置及びプログラムの第1の実施形態を、図面を参照しながら詳述する。第1の実施形態では、本発明の画像データ処理装置をMFPに適用している。
【0015】
(A−1)第1の実施形態の構成
図1は、第1の実施形態のMFP600の機能的構成について示したブロック図である。また、
図2は、MFP600の外観斜視図である。
【0016】
MFP600は、
図1に示すように自動原稿搬送装置(Auto Document Feeder;以下「ADF」とも呼ぶ)610、画像読取部620、ユーザと当該MFP600との間で情報の入出力を行う操作パネル160、付帯機能(Email作成機能やネットワーク通信機能、ファイル出力機能等)を実現する実行モジュールを格納する付帯機能実行部90、及び印刷媒体収納部7を有している。
【0017】
また、MFP600は、印刷手段としての印刷部95も備えている。印刷部95は、制御部150の制御に応じて、印刷媒体収納部7に収納された媒体に印刷(画像形成)を行うことが可能となっている。
【0018】
さらに、MFP600には、制御部150、データ変換部140、画像データ格納部210、公開鍵格納部230、認証情報格納部250も備えられている。これらの主としてデータ処理や信号処理を行う構成要素については、例えば、プロセッサやメモリ等を有する情報処理装置上に、これらの構成要素に対応するプログラム(実施形態の画像データ処理プログラムを含む)をインストールして構築するようにしても良い。その場合でも、MFP600の機能的構成は
図2のように示すことができる。
【0019】
ユーザにMFP600を利用させる場合は、操作パネル160の操作キー161を介して必要な情報入力設定等を受付ける。また、操作パネル160は、ユーザに対して必要な情報を表示(ディスプレイ162による表示出力)する機能にも対応している。操作パネル160はユーザとMFP600の間で必要な情報のやり取りを仲介する。MFP600からユーザに対しては操作パネル160(タッチパネル)を用いて必要な情報を表示する。ユーザがMFP600に対して指示や値の指定をする場合は、操作パネル160タッチするか、パネルの指示に従ってパネル近傍に設置されている操作キー161を押下する。
【0020】
ADF610では、原稿給紙トレイ611上に原稿Mがセットされると、原稿給紙トレイ611上に配置されたスイッチ615においてこれを検知し、ユーザからの読取指示に従って前記セットされた複数枚の原稿Mを1枚ずつ自動的に画像読取部620に設定された所定の原稿読み取り位置まで搬送する。
【0021】
画像読取部620は、原稿読取位置に搬送されてきた原稿Mに光を照射する光源と、原稿Mで反射した光を受光する光電変換素子とを備え、原稿Mのサイズに応じた原稿画像を走査する。光電変換素子は、受光した光を電気信号である読取データに変換する。読み取りが終わった原稿Mは原稿排紙トレイ612上に排出される。
【0022】
画像読取部620は上述の
図1を用いて説明したとおり、原稿Mを読み取って読み取りデータを画像データ形式に変換し、画像データ格納部210に格納する。読み取りが終了すると制御部150に通知する。
【0023】
画像読取部620に含まれるADFスイッチ615は、ADF610に原稿Mがセットされたことを検知し制御部150に通知する。
【0024】
次に、制御部150及び制御部150の周辺の構成要素の概要について説明する。
【0025】
制御部150は公開鍵証明書選択部151、公開証明書設定部152、公開証明書登録部153、一時メモリ240、認証処理部260を備え、MFP600を構成する各モジュールを統合的に制御する。
【0026】
データ変換部140は、制御部150の制御に応じて、暗号化処理部141を用いたデータ変換(暗号化処理)を行うものである。具体的には、データ変換部140は、制御部150からの指示に従って画像データ格納部210から画像データを読み出し、制御部150から通知された公開鍵を用いて前記画像データを暗号化PDFファイルとして、制御部150に供給する。
【0027】
データ復号部142は、制御部150の制御に応じて、暗号復号処理部143を用いたデータ復号処理を行うものである。
【0028】
画像データ格納部210は、データ変換部140又は画像読取部620で生成されたデータを格納するものである。
【0029】
公開鍵格納部230は、例えば、ユーザ名ごとに対応する公開鍵及び公開鍵証明書を格納しており、制御部150に応じた公開鍵または公開鍵証明書を提供するものである。なお、この実施形態では、公開鍵格納部230は予めユーザ名ごとの公開鍵及び公開鍵証明書を格納しているものとするが、必要の都度認証局等の外部装置からネットワークN経由でアクセスして保持するようにしてもよい。
【0030】
認証情報格納部250は、ユーザIDとパスワードを対応付けて管理しており、制御部150の制御に応じて認証情報(例えば、ユーザ名に対応するパスワード)を提供するものである。
【0031】
公開鍵証明書選択部151は、読み込んだ画像データをPDF化する際に、暗号化の要否をユーザに確認する処理や、受取人の選択(受取人の公開鍵の選択)等を受け付けるものである。
【0032】
公開証明書設定部152は、ユーザの操作に応じて、公開鍵格納部230から公開鍵証明書を取得し一時メモリ240に格納するものである。
【0033】
1次メモリ240は、制御部150において、中間的な処理結果等を保持するためのメモリである。
【0034】
付帯機能実行部90は、付帯機能の実行等を担うモジュールとして、FAX実行部91、USBポート92、ネットワークインタフェース93、及びEmail作成部94を有している。
【0035】
FAX実行部91は、制御部150の要求に応じて、公衆電話網PNに接続して、ファクシミリを送受信する処理を行うものである。
【0036】
USBポート92は、外部記憶装置としてのUSBメモリUを接続することを可能とするUSBインタフェースであり、制御部150の制御に応じて接続されたUSBメモリUのデータ操作(例えば、ファイル追加等の操作)を行う。
【0037】
ネットワークインタフェース93は、MFP600をネットワークNに接続するためのインタフェースである。ネットワークインタフェース93は、制御部150の制御に応じてネットワークN上の図示しないファイルサーバ等に接続して、データ(ファイル)のアップロード処理等を行う。
【0038】
E−mail作成部94は、制御部150の制御に応じて、制御に応じたアドレス宛のE−mailを作成し、当該E−mailに供給されたデータ(ファイル)を添付して、送信(例えば、ネットワークN上の図示しないメールサーバに送信)する。
【0039】
(A−2)第1の実施形態の動作
次に、以上のような構成を有する第1の実施形態のMFP600の動作を説明する。
【0040】
まず、MFP600の全体の動作について、
図3のフローチャートを用いて説明した後、
図3の各ステップの処理の詳細について後述する。
【0041】
まず、ユーザの操作パネル160を用いた操作に応じて、制御部150の認証処理部260により認証処理(S100)が実行される。そして、認証処理が正常に完了した場合、制御部150は、ユーザからMFP600で実行する機能(以下、「ユーザ選択機能」と呼ぶ)の選択を受け付ける。
【0042】
そして、制御部150は、選択された機能(ユーザ選択機能)で、PDFファイルの暗号化が必要かどうかの判断を実施する(S600)。
【0043】
そして、制御部150は、ユーザ選択機能で、PDFファイルの暗号化が必要ないと判断した場合は、画像データを読み出す処理(S700)を実行し、平文のまま画像データをPDFファイルに変換する(S800)。
【0044】
制御部150は、上述のステップS600で、ユーザ選択機能で、PDFファイルの暗号化が必要と判断した場合は、公開鍵証明書選択部151に公開鍵証明書選択処理(S200)を実行させる。なお、上述のステップS200の公開鍵証明書選択処理では、公開鍵証明書選択部151により、受取人の公開鍵証明書及び公開鍵と、受取人の権限情報を関連付けて、1次メモリ240に保存される。なお、上述のステップS200の公開鍵証明書選択処理では、受取人は複数指定することが可能である。
【0045】
次に、制御部150は、画像読取部620を制御して、画像読取処理を実行させる(S300)。画像読取部620は、原稿Mをスキャンして得た画像データを画像データ格納部210に格納する。
【0046】
次に、制御部150は、データ変換部140に画像データの暗号化処理を実行させる(S400)。データ変換部140は、画像データ格納部210から画像データを読み込んで、暗号化PDFファイルの生成処理を行う。
【0047】
次に、制御部150は、操作パネル160に暗号化した画像データを表示して、ユーザに画像データの内容を確認させ(暗号化画像表示確認処理)、さらに、ユーザに当該画像データの処理実行を選択させる処理を行う(S1000)。
【0048】
そして、ステップS1000で、ユーザが当該画像データの処理実行を行う旨の選択操作が行われた場合には、制御部150は、当該処理を実行して(S500)処理を終了する。
【0049】
一方、ステップS1000で、ユーザが当該画像データの処理実行を拒否する旨の選択操作が行われた場合は、制御部150は、当該画像データの処理を実行せずに、PDFファイル等の生成データの消去(S1100)を行い、処理を終了する。
【0050】
次に、上述のステップS100の認証処理の詳細について
図4のフローチャートを用いて説明する。
【0051】
制御部150は、認証処理を開始すると、操作パネル160に、
図11に示す操作画面(認証画面)を表示し(S101)、ユーザにログイン名と、パスワードの入力を求める(S102)。
【0052】
図11に示すように、認証画面には、認証用のログイン名の入力を受付けるためのフィールドF12、及び、認証用のパスワードの入力を受付けるためのフィールドF13が配置されている。
【0053】
そして、認証画面によりユーザからログイン名及びパスワードの入力を受けると認証処理部260は、入力されたログイン名及びパスワードに基づいて認証処理(整合性の確認処理)を行う(S103)。具体的には、認証処理部260は、入力されたログイン名をキーに、認証情報格納部250から当該ログイン名に対応するパスワードを検索し、該当するパスワードが検出された場合、当該パスワードとユーザから入力されたパスワードとの比較を行う。そして、認証処理部260は、両者のパスワードが一致した場合、認証成功と判断し、ログインIDが検出されなかった場合や、パスワードが一致しなかった場合には認証失敗と判断する。
【0054】
そして、制御部150、認証処理部260による認証の成否を確認し(S104)、認証失敗の場合は上述のステップS101の処理に戻って動作し、認証が成功した場合は、操作パネル160に、
図12に示す機能選択画面を表示する(S105)。
【0055】
そして、制御部150、
図12に示す機能選択画面でユーザが選択した機能(ユーザ選択機能)を示す情報を、一時メモリ240に保存する(S106)。
【0056】
上述のステップS104で表示される機能選択画面には、
図12に示すように、機能選択画面の左側には縦にMFP600が対応する4つのメイン機能[COPY]、[SCAN]、[FAX]、[PRINT]のそれぞれに対応するボタンB1〜B4が配置されているものとする。そして、ここでは、
図12に示すように、メイン機能のうちSCANに対応するボタンB2が選択された状態(ハイライトした状態)に操作されているものとする。そして、
図12に示すように、機能選択画面(SCANの機能が選択された状態)では、4つのサブ機能[Scan to Network]、[scan to E−mail]、[Scan to USB]、[scan to Fax]のそれぞれに対応するボタンB21〜B24が配置されている。すなわち、機能選択画面では、ユーザにより、いずれかのメイン機能及びサブ機能が選択され、制御部150はユーザが選択した機能(ユーザ選択機能)を示す情報(メイン機能及びサブ機能を識別する情報)を、一時メモリ240に保存する。
【0057】
次に、上述のステップS200の公開鍵証明書選択処理の詳細について
図5のフローチャートを用いて説明する。
【0058】
まず、制御部150の公開鍵証明書選択部151は、一時メモリ240からユーザ選択機能の情報を取得し(S201)、このユーザ選択機能が、スキャン画像のPDF化処理を必要とするか否かを判断する(S202)。そして、公開鍵証明書選択部151は、スキャン画像のPDF化処理が必要と判断した場合には、後述するステップS203から動作し、スキャン画像のPDF化処理が必要ないと判断した場合は処理を終了する。例えばユーザ選択機能が[Scan to Fax]であれば、公開鍵証明書選択部151は、スキャン画像をPDF化する必要がないと判断する。一方、ユーザ選択機能が、[Scan to USB]である場合には、公開鍵証明書選択部151は、スキャン画像をPDF化する必要があると判断する。
【0059】
そして、上述のステップS202で、スキャン画像のPDF化処理を必要があると判断された場合には、公開鍵証明書選択部151は、ユーザに公開鍵暗号化処理が必要であるかを選択させ(S203)、公開鍵暗号化処理を行う必要がない旨が選択された場合には処理を終了し、公開鍵暗号化を行う旨が選択された場合には後述するステップS204の処理から動作する。ステップS203の処理は例えば、操作パネル160に「公開鍵暗号化処理を行うか否かを行いますか?」という画面と共に「はい」及び「いいえ」と表示したボタンを配置した画面を表示して、ユーザに公開鍵暗号化処理の要否を選択させるようにしてもよい。
【0060】
そして、上述のステップS203で、公開鍵暗号化を行う旨が選択された場合には、公開鍵証明書選択部151は、操作パネル160に、
図13に示す公開鍵証明書選択画面を表示する(S204)。公開鍵証明書選択部151は、この公開鍵証明書選択画面により、ユーザにPDF暗号化処理に用いる公開鍵証明書(公開鍵格納部230に格納された公開鍵証明書のいずれか)を選択させる。
【0061】
図13に示すように、公開鍵証明書選択画面では、各公開鍵に対応する識別子(
図13では、公開鍵証明書KA、KB、KC、KD)が表示されたボタンBKA、BKB、BKC、BKDが配置されている。公開鍵格納部230には、公開鍵証明書KA、KB、KC、KDのそれぞれに対応する公開鍵証明書が格納されている。そして、公開鍵証明書選択部151は、ボタンBKA、BKB、BKC、BKDのうち選択されたボタンに対応する公開鍵証明書及び公開鍵がユーザにより選択されたものと認識する。すなわち、公開鍵証明書選択画面で選択された公開鍵証明書の所有者は、当該PDFファイルの受取人となる。
【0062】
そして、公開鍵証明書選択部151は、選択された公開鍵証明書及び公開鍵を、公開鍵格納部230から取りだして1次メモリ240へ保存する(S205)、
次に、公開鍵証明書選択部151は、保存した公開鍵証明書に対応する当該PDFファイルに対する操作権限(印刷、変更、コピー等の操作の可否)を、ユーザに選択設定させるための権限選択画面(
図14参照)の表示(S206)を行う。
【0063】
図14では、当該公開鍵証明書に対して「印刷」の可否(許可又は不許可)を選択させる2つのボタンB211、B212と、当該公開鍵証明書に対して「変更」の可否を選択させる2つのボタンB221、B222と、当該公開鍵証明書に対して「コピー」の可否を選択させる2つのボタンB231、B232とが配置されている。
図14に示す権限選択画面では、選択された公開鍵証明書の所有者、すなわち暗号化PDFファイルの受取人に対する使用権限を選択することが可能となっている。そして、公開鍵証明書選択部151は、選択された使用権限の内容を使用権限情報として保持する。なお、この実施形態では、MFP600で設定する使用権限情報の項目は上述の3つであるが、使用権限情報を構成する項目の数や組み合わせは限定されないものである。
【0064】
そして、公開鍵証明書選択部151は、ユーザ選択に基づく使用権限情報を1次メモリ240へ保存する(S207)。
【0065】
そして、公開鍵証明書選択部151は、ユーザに続けてPDFファイルの暗号化に使用する公開鍵証明書の追加が必要であるかを確認し(S208)、必要な場合は、上述のステップS204の処理に戻って公開鍵証明書選択画面から動作する。ユーザが公開鍵証明書の追加を行わないと選択した場合は、公開鍵証明書選択部151は、公開鍵証明書選択処理を終了する。
【0066】
次に、上述のステップS300の画像読込処理の詳細について
図6のフローチャートを用いて説明する。
【0067】
ユーザが原稿給紙トレイ611に原稿Mをセットすると、制御部150はADFスイッチ615からON信号を受信し(S301)、さらに、ユーザの操作パネル160に対する読取開始指示(例えば、ユーザが読取開始を指示するための[start]ボタンを押下した場合)に伴う操作信号を受信すると(S302)、画像読取部620に対し原稿スキャン開始を指示する。
【0068】
そして、画像読取部620はADFトレイ611に載積された原稿Mを1枚スキャンし(S303)、読み取ったデータを画像データ化して画像データ格納部210に格納する(S304)。そして、ADFトレイ611の原稿Mがなくなることによりスイッチ615がOFFになると(S305−Y)、画像読取部620は、制御部150に対しスキャン終了を通知する(S306)。
【0069】
次に、上述のステップS400のデータ暗号化処理の詳細について
図7のフローチャートを用いて説明する。
【0070】
制御部150は、上述のステップS300の画像読込処理が終了(スキャン終了を受信)すると(S401)、現在日時をベースに加工してPDF暗号化鍵K1(共通鍵暗号方式の暗号鍵であり、復号処理にも利用可能)を作成し、1次メモリ240へ保存する(S402)。なお、PDF暗号化鍵K1の生成アルゴリズムについては限定されないものであり、種々の生成アルゴリズムを用いることができる。
【0071】
次に、制御部150は、作成したPDF暗号化鍵を、1次メモリ240から読み込んで、データ変換部140(暗号化処理部141)へ供給する(S403)。
【0072】
そして、データ変換部140(暗号化処理部141)は、画像データ格納部210から、上述のステップS300で格納された画像データの読み込みを行う(S404)。
【0073】
そして、データ変換部140は、上述のステップS402で取得した作成したPDF暗号化鍵K1を用いて、取得した画像データに基づく暗号化PDFファイルの生成を行う(S405)。
【0074】
次に、データ変換部140は、受取人(受取人の公開鍵証明書の識別子I)を受取人権限の種類毎に分類するグループ分けの処理を行う(S406)。
【0075】
そして、この実施形態では、受取人権限の種類としては、「印刷」、「変更」、「コピー」の3種類であり、それぞれ許可、不許可のいずれかが設定される。したがって、この実施形態のデータ変換部140では、最大9つのグループ分けが行われることになる。そして、データ変換部140は、ステップS406で分けたグループごと(受取人権限ごと)に後述するステップS407〜S415の処理を行う。
【0076】
そして、データ変換部140は、現在日時と、受取人権限情報をベースに、受取人権限毎の暗号化鍵K2(共通鍵暗号方式の暗号鍵であり、復号処理にも利用可能)を作成(S407)する。ここでは、データ変換部140は、上述のグループ分けをしたグループごとに受取人権限毎の暗号化鍵K2を生成することになる。なお、暗号化鍵K2の生成アルゴリズムについては限定されないものであり、種々の生成アルゴリズムを用いることができる。
【0077】
次に、データ変換部140は、上述のグループ(受取人権限)を一つ選択し、PDF暗号化鍵K1と、当該受取人権限の受取人権限情報Iを、連続データとして合成し(1つの連続したバイナリーデータとして合成し)、S407で作成した受取人権限毎の暗号化鍵K2にて暗号化した鍵格納データD1を生成する(S408)。
【0078】
そして、データ変換部140は、ステップS408で生成した受取人権限ごとの暗号化データを、PKCS#7(Public Key Cryptography Standards #7)形式データ(以下、「PKCS#7データD20」と呼ぶ)としてPDFファイルへ追加する処理を、後述するステップS410〜S412で実行する。PKCSとは、公開鍵暗号技術を標準化するための規格セットのことであり、PKCS#7とは、暗号化データや署名データを公開鍵証明書と共に格納できる形式のことである。PKCS#7の詳細については、「IETF RFC2315」等に詳細が記述されている。また、暗号化PDFファイルにPKCS#7形式のデータを添付する仕様については、アドビ・システムズ社の「PDFリファレンス」(3.5.3 Public−Key Security Handlers)に詳細が規定されている。そして、データ変換部140は、このPKCS#7データD20が、受取人権限毎(ステップS408で生成した暗号化データごと)に生成される。したがって、この実施形態では、1つPDFファイルに、最大9つのPKCS#7データD20が登録されることになる。
【0079】
ここで、上述のPKCS#7データD20の構成例について
図10(a)を用いて説明する。
【0080】
図10(a)に示すPKCS#7データD20を構成する鍵格納データD1は、上述のステップS408で生成した当該受取人権限に係る鍵格納データD1である。なお、鍵格納データD1は、例えば、20ByteのPDF暗号化鍵K1と、4Byteの受取人権限情報Iを合成して、当該受取人権限の暗号化鍵K2を用いて暗号化した暗号化データとなる。そして、
図10に示すように、データ変換部140で生成されるPKCS#7データD20には、当該受取人権限のグループに所属するN人の受取人ごとのユーザ付加データD2(D2−1〜D2−N)が含まれている。そして、ユーザ付加データD2のそれぞれには、当該受取人の公開鍵証明書の識別子のデータD21(D21−1〜D21−N)と、当該受取人権限の暗号化鍵K2を、当該受取人の公開鍵K3(K3−1〜K3−N)で暗号化したデータD22(D22−1〜D22−N)が含まれている。受取人の公開鍵証明書の識別子のデータD21は、暗号化PDFファイルの復号の際に受取人が、自身の公開鍵K3で暗号化されたデータD22を探す為に必要な情報となる。
【0081】
そして、データ変換部140は、当該受取人権限のPKCS#7データD20に挿入するN人の受取人ごとのユーザ付加データD2−1〜D2−Nを生成する処理(後述するステップS410〜S412の処理)を行う。
【0082】
まず、データ変換部140は、当該受取人権限のグループに所属する受取人を選択し、当該受取人権限の暗号化鍵K2を、選択した受取人の公開鍵K3により暗号化してデータD22を生成する(S410)。
【0083】
そして、データ変換部140は、選択した受取人に係るデータD22と、選択した受取人の公開鍵証明書の識別子のデータD21とを関連付けして、選択した受取人のユーザ付加データD2を生成し、当該受取人権限のPKCS#7データD20へ追加する(S411)。
【0084】
そして、データ変換部140は、当該受取人権限に所属する全ての受取人についてユーザ付加データD2を生成したか否か確認し(S412)、生成が完了していない場合は上述のステップS410に戻って次の受取人に係る処理を行う。
【0085】
そして、データ変換部140は、当該受取人権限のグループに所属する全ての受取人についてユーザ付加データD2の生成が完了すると、当該受取人権限の暗号化鍵K2を、当該MFP600の装置公開鍵K5を用いて暗号化したデータD32を生成する(S413)。
【0086】
そして、データ変換部140は、生成したデータD32と、装置公開鍵K5の公開鍵証明書の識別子を示すデータD31とを関連付けした装置付加データD3を生成して、当該受取人権限のPKCS#7データD20へ追加する(S414)する。
【0087】
そして、データ変換部140は、生成した当該受取人権限のPKCS#7データD20を、暗号化PDFファイルに追加する処理を行う(S415)。
【0088】
そして、データ変換部140は、PKCS#7データD20の生成処理が完了していない受取人権限の有無を確認し(S416)、未処理の受取人権限がある場合には上述のステップS407の処理に戻って、次の受取人権限の処理を行う。一方、未処理の受取人権限がない場合は、データ変換部140は、完成した暗号化PDFファイルのデータを制御部にひき渡して(S417)、処理を終了する。なお、データ変換部140により最終的に生成される暗号化PDFファイルのデータD100は、
図10(b)に示すように、暗号化PDF画像データ(暗号化されたPDF形式の画像データ)D10と、M個のPKCS#7データD20(20−1〜20−M)を含む付加データD20により構成される。
【0089】
次に、上述のステップS900で制御部150が行う暗号化画像表示確認処理の詳細について
図9のフローチャートを用いて説明する。
【0090】
まず、制御部150は、データ復号部142に、完成した暗号化PDFファイルと、当該MFP600の装置公開鍵K5に対応する装置秘密鍵K6を供給して、暗号化PDFファイルを複合させる処理を行う(S901)。
【0091】
上述のS414の処理により、暗号化PDFファイルには、装置付加データD3(暗号化鍵K2を装置公開鍵K5を用いて暗号化したデータD31を含む)が含まれているため、制御部150では、装置秘密鍵K6により暗号化PDFファイルを複合することが可能である。
【0092】
そして、制御部150は、暗号化PDFファイルを複合して得たPDFファイルの画像及び、機能実行の意思をユーザに質問するボタンを配置した機能実行確認画面(
図15参照)を操作パネル160に表示して(S902、S903)、ユーザの機能実行の意思を確認する。
【0093】
図15に示すように、機能実行確認画面には、暗号化PDFファイルの画像を表示するためのフィールドF2、及び、機能実行を受け付けるためのボタンB241と、機能実行をせず暗号化PDFファイルを破棄することを受け付けるためのボタンB242と、PDFファイルの次のページをフィールドF2に表示するためのボタンB243が配置されている。そして、制御部150は、機能実行を受け付けるためのボタンB241がユーザに選択(タッチ)されると、ユーザの機能実行の意思確認を完了し、ステップS500の選択機能実行処理に移行する。
【0094】
次に、上述のステップS500で制御部150が行う選択機能実行処理の詳細について
図8のフローチャートを用いて説明する。
制御部150は、選択機能実行処理(S500)に移行すると、まず、暗号化PDFファイルを取得し(S501)、さらに、一時メモリ240からユーザ選択機能情報を取得し(S502)、取得したユーザ選択機能情報に対応する付帯機能実行部90の機能モジュール(FAX実行部91、USBポート92、ネットワークインタフェース93、及びEmail作成部94のいずれか)に、PDF暗号化ファイルを転送する(S503)。
【0095】
例えば、ユーザ選択機能として、[Scan to USB]の機能が選択されているものとした場合、制御部150は、USBポート92にPDF暗号化ファイルのデータを転送することになる。
【0096】
そして、暗号化PDFファイルを受信した付帯機能実行部90の各モジュールは、それぞれの機能を実行する(S504)。例えば、ユーザ選択機能として、[Scan to USB]の機能が選択されているものとした場合、USBポート92に接続されたUSBメモリU(外部記憶デバイス)の所定のディレクトリ(例えば、ルートディレクトリ)に、暗号化PDFファイルが格納されることになる。
【0097】
そして、制御部150が一時メモリ240を初期化して(S505)処理を終了する。
【0098】
(A−3)第1の実施形態の効果
第1の実施形態によれば、以下のような効果を奏することができる。
【0099】
第1の実施形態のMFP600では、暗号化PDFファイルを生成する際に、暗号化PDFファイルに付加する付加データ20に、鍵格納データD1と装置付加データD3を含むことにより、PDF暗号化鍵K1を用いて、暗号化PDFファイルを復号することが可能となっている。
【0100】
一方、第1の実施形態のMFP600で生成した暗号化PDFファイルは、PDFで用いられている仕様(PKCS#7等)に従った構造で暗号化されているため、この暗号化PDFファイルを受け取ったユーザ(受取人)は、従来のPDFビューアや編集ツールを用いて、付与された権限の範囲内で処理を行うことが可能である。したがって、第1の実施形態では、暗号化PDFファイルの作成者の秘密鍵をMFP600に登録せずに、公開鍵に対応する秘密鍵を用いなければ復号することができないPDF暗号化ファイルの生成を行うことを可能としている。これにより、第1の実施形態のMFP600では、より安全にPDF暗号化ファイル生成を行うことを実現している。
【0101】
(B)第2の実施形態
以下、本発明による画像データ処理装置及びプログラムの第2の実施形態を、図面を参照しながら詳述する。第2の実施形態では、本発明の画像データ処理装置をMFPに適用している。
【0102】
(B−1)第2の実施形態の構成
第2の実施形態の機能的構成等についても上述の
図1、
図2を用いて示すことができる。
【0103】
以下では、第2の実施形態について、第1の実施形態との差異を説明する。第2の実施形態のMFP600では、自装置で生成した暗号化PDFファイル(上述の
図10に示す構造の暗号化PDFファイル)が、USBメモリU等から供給されると、当該暗号化PDFファイルについて、操作中のユーザの権限に応じた方式で出力処理が可能な点で、第1の実施形態と異なっている。第2の実施形態のMFP600が行う処理の詳細については、後述する動作説明において説明する。
【0104】
(B−2)第2の実施形態の動作
次に、以上のような構成を有する第1の実施形態のMFP600の動作を説明する。
【0105】
まず、MFP600の全体の動作について、
図17のフローチャートを用いて説明した後、
図17の各ステップの処理の詳細について後述する。
【0106】
まず、ユーザの操作パネル160を用いた操作に応じて、制御部150の認証処理部260により認証処理(S2100)を実行する。ステップS2100の認証処理は、第1の実施形態(上述の
図4)と同様のフローチャートにより示すことができるので詳細説明については省略する。ここでは、上述のステップS101〜S104でユーザによりユーザID及びパスワードの入力を受けて認証成功し、ステップS105の機能選択画面で「Print」機能が選択されたものとする。
【0107】
そして、制御部150は、ログインしたユーザ(以下、「認証者」とも呼ぶ)に関連付けされた公開鍵証明書の検索を行う(S3200)。そして、制御部150は、認証者の公開鍵証明書が公開鍵格納部230に格納されているかを確認する(S2200)。認証者の公開鍵証明書が検出できた場合には、制御部150は、後述するステップS2300の処理から動作し、格納されていない場合は、印刷不可を示す情報を操作パネル160に表示(S3100)して処理を終了する。
【0108】
そして、認証者の公開鍵証明書を検出すると、制御部150は、印刷ファイルの選択処理を行う(S2300)。印刷ファイルの選択処理は、例えば、USBポート92に接続されたUSBメモリUに格納された暗号化PDFファイルのファイル名を、上述の
図13と同様にリスト表示して、ユーザに選択させるようにしてもよい。そして、暗号化PDFファイルが選択されると、制御部150は、当該暗号化PDFファイルのデータを取得して、1次メモリ240に保存する。
【0109】
次に、制御部150は、1次メモリ240に保存された暗号化PDFファイルに付加されているデータから、当該MFP600に係る装置付加データD3の検索を行う(S2400)。
【0110】
上述のステップS2400の検索処理の詳細について
図17のフローチャートを用いて説明する。制御部150は、1次メモリ240に保存された暗号化PDFファイルに付加された付加データD20で、最初に検出されるPKCS#7データD20に、当該MFP600に係る装置付加データD3が含まれているか否かを検索する(S2401)。そして、制御部150は、当該MFP600に係る装置付加データD3が検出できた場合は、後述するステップS2500の処理に移行し、検出できなかった場合は、上述のステップS3100の処理(印刷付加を表示)に移行して処理を終了することになる。
【0111】
暗号化PDFファイル内には、複数のPKCS#7データD20が存在する場合があるが、ここでは、制御部150は、最初に検出したPKCS#7データD20から、当該MFP600に係る装置付加データD3の検出を行うものとする。なお、第1の実施形態で説明した通り、全てのPKCS#7データD20には、装置付加データD3が含まれているため、いずれか一つのPKCS#7データD20についてのみ検索を行えば十分となる。
【0112】
そして、当該MFP600に係る装置付加データD3を検出すると、制御部150は、認証者に係るユーザ付加データD2の検索を行う(S2600)。そして、制御部150は、認証者のユーザ付加データD2が検出できた場合は、後述するステップS2800の処理に移行し、検出できなかった場合は、上述のステップS3100の処理(印刷付加を表示)に移行して処理を終了することになる。
【0113】
上述のステップS2600のユーザ付加データD2の検索処理の詳細について
図18のフローチャートを用いて説明する。
【0114】
まず、制御部150は、暗号化PDFファイル(付加データD20)に含まれるPKCS#7データD20の数を確認する(S2601)。そして、制御部150は、全てのPKCS#7データD20について後述するステップS2602〜S2604の処理(認証者のユーザ付加データD2の検索処理)を行う。
【0115】
そして、制御部150は1つのPKCS#7データD20を選択して、当該PKCS#7データD20に、認証者のユーザ付加データD2(認証者の公開鍵証明書の識別子)が含まれているか否かを確認し(S2603)、認証者のユーザ付加データD2が含まれていることが確認できた場合には検索処理を終了し、認証者のユーザ付加データD2が含まれていなかった場合には後述するステップS2604の処理に移行する。そして、制御部150は、全てのPKCS#7データD20について検索処理を実行したか否かを確認し(S2604)、未処理のPKCS#7データD20が残っている場合には上述のステップS2602の処理に戻って次のPKCS#7データD20の処理を行い、未処理のPKCS#7データD20が残っていない場合には、検索処理を終了する。
【0116】
認証者のユーザ付加データD2を取得すると、制御部150は、当該暗号化PDFファイルに対する認証者の権限を確認する処理を行う(S2800)。
【0117】
上述のステップS2800の権限確認処理の詳細について
図19のフローチャートを用いて説明する。
【0118】
まず、制御部150は、認証者のユーザ付加データD2が含まれていたPKCS#7データD20を1次メモリ240に格納する(S2801)。
【0119】
次に、制御部150は、当該MFP600の装置秘密鍵K6を用いて、当該PKCS#7データD20内の装置付加データD3(暗号化データD32)を複合して(S2802)、受取人権限毎の暗号化鍵K2(20Byte)と、受取人権限情報I(4Byte)とを得る(S2803)。受取人権限情報I(4Byte)には、PDFの仕様に従い、権限に関する情報(印刷、変更、コピーのそれぞれに関する許可または不許可を示す情報)が記録されている。
【0120】
そして、暗号化鍵K2及び受取人権限情報Iを取得すると、制御部150は、取得した受取人権限情報Iの内容を参照して、認証者に「印刷」を実行する権限があるか否かを確認する(S2900)。制御部150は、認証者に「印刷」を実行する権限があることを確認した場合(「印刷」を許可する旨の情報が受取人権限情報Iに含まれていた場合)には、後述するステップS3000の動作に移行し、認証者に「印刷」を実行する権限がない場合には、上述のステップS3100の処理(印刷付加を表示)に移行して処理を終了することになる。
【0121】
そして、認証者に「印刷」を実行する権限があることを確認した場合には、制御部150は、暗号化PDFファイル印刷実行処理を行い(S3000)処理を終了する。
【0122】
上述のステップS3000の印刷実行処理の詳細について
図20のフローチャートを用いて説明する。制御部150は、上述のステップS2800(ステップS2803)で得た暗号化鍵K2を用いて、暗号化PDFファイルの復号処理を行い(S3001)、復号したPDFファイルの画像印刷を印刷部95に実行させる(S3002)。
【0123】
(B−3)第2の実施形態の効果
第2の実施形態によれば、第1の実施形態の効果に加えて、以下のような効果を奏することができる。
【0124】
第2の実施形態のMFP600では、各PKCS#7データに含まれる付加データD20(受取人の証明書識別子D21)に基づいて、認証者に付与されている権限を確認し、その権限の範囲内で印刷等の処理を行う。そのため、第2の実施形態では、MFP600に認証者の秘密鍵を登録しなくても、MFP600の秘密鍵だけで、認証者の権限を確認し、その権限の範囲内で印刷等の処理を行うことが可能である。したがって、第2の実施形態のMFP600では、より安全にPDF暗号化ファイルの処理を行うことを実現している。
【0125】
(C)他の実施形態
本発明は、上記の各実施形態に限定されるものではなく、以下に例示するような変形実施形態も挙げることができる。
【0126】
(C−1)上記の各実施形態では、本発明の画像データ処理装置をMFPに適用する例について説明したが、印刷部(画像形成部)を備えない装置(例えば、スキャナ)に本発明の画像データ処理装置を適用し、印刷処理以外の構成を実現するようにしても良い。
【0127】
また、本発明の画像データ処理装置は、原稿の画像を読取る画像読取部を備えずに外部から供給された画像データに基づいて暗号化PDFファイルを生成する装置に適用するようにしても良い。具体的には、例えば、外部にスキャナが接続されたPCに本発明の画像データ処理プログラムをインストールすることにより、本発明の画像データ処理装置を実現するようにしても良い。
【0128】
(C−2)上記の各実施形態では、上述の
図10に示すように、各PKCS#7データに挿入する装置付加データは暗号化PDFファイルを生成したMFPのみであるが、他の画像データ処理装置(例えば、MFP等)の公開鍵を用いた装置付加データを生成して挿入するようにしても良い。すなわち、PKCS#7データに挿入する装置付加データの数は限定されないものである。例えば、MFPを10台所有する会社で利用する場合には、各MFPで暗号化PDFファイルを生成する際に、全てのMFPに係る公開鍵を利用した装置付加データ(すなわち、10個の装置付加データ)を挿入すれば、受取人は社内のどのMFPでも印刷処理等を行うことが可能である。
【0129】
(C−3)上記の各実施形態では、MFPが生成する暗号化画像データはPDF形式であるものとして説明したが、上述の
図10と同様の構造を備える形式であれば、その他の仕様についてはPDFやPKCS#7に限定されないものである。
【0130】
(C−4)上記の各実施形態では、付加データを構成する全てのPKCS#7データに装置付加データが含まれているが、一部のPKCS#7データについてのみ装置付加データを挿入するようにしても良い。例えば、付加データの先頭のPKCS#7データにのみ装置付加データを挿入したり、全ての権限を有する受取人権限のPKCS#7データにのみ装置付加データを挿入するようにしても良い。
【0131】
(C−5)上記の各実施形態では、MFPは暗号化PDFファイルの生成処理及び出力処理(印刷出力等)を行うものとして説明したが、出力処理のみ行うことが可能なものとして構築するようにしても良い。例えば、本発明の画像データ処理装置を、第2の実施形態の
図16〜
図20に示す印刷出力処理のみが可能な装置として構築するようにしても良い。