JP2009160832A - プリンタ、複合機、および、印刷制御方法 - Google Patents
プリンタ、複合機、および、印刷制御方法 Download PDFInfo
- Publication number
- JP2009160832A JP2009160832A JP2008001003A JP2008001003A JP2009160832A JP 2009160832 A JP2009160832 A JP 2009160832A JP 2008001003 A JP2008001003 A JP 2008001003A JP 2008001003 A JP2008001003 A JP 2008001003A JP 2009160832 A JP2009160832 A JP 2009160832A
- Authority
- JP
- Japan
- Prior art keywords
- print data
- portable memory
- key
- printer
- data
- 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.)
- Withdrawn
Links
Images
Landscapes
- Accessory Devices And Overall Control Thereof (AREA)
- Record Information Processing For Printing (AREA)
- Facsimiles In General (AREA)
- Storing Facsimile Image Data (AREA)
- Facsimile Transmission Control (AREA)
Abstract
【課題】可搬型のメモリに蓄積する印刷データを、他の記憶媒体に複製して印刷を行うことを防止する技術を提供する。
【解決手段】本出願の複合機(プリンタ)100は、接続された可搬性メモリ150に印刷データを保存する機能を有する。複合機(プリンタ)100は、印刷データの入力を受け付ける印刷データ受付手段と、可搬性メモリ150から、可搬性メモリ150が保持しているデバイスIDを取得するデバイスID取得手段と、印刷データに付与する電子署名の作成に使用する鍵を生成する鍵生成手段と、印刷データを可搬性メモリ150に保存する場合に、一方向性関数を用いて、デバイスIDと、印刷データと、を合成した合成データのMAC値を算出するMAC値算出手段と、算出したMAC値を、鍵を用いて署名して、印刷データとともに、可搬性メモリ150に保存する保存手段と、を備える。
【選択図】図5
【解決手段】本出願の複合機(プリンタ)100は、接続された可搬性メモリ150に印刷データを保存する機能を有する。複合機(プリンタ)100は、印刷データの入力を受け付ける印刷データ受付手段と、可搬性メモリ150から、可搬性メモリ150が保持しているデバイスIDを取得するデバイスID取得手段と、印刷データに付与する電子署名の作成に使用する鍵を生成する鍵生成手段と、印刷データを可搬性メモリ150に保存する場合に、一方向性関数を用いて、デバイスIDと、印刷データと、を合成した合成データのMAC値を算出するMAC値算出手段と、算出したMAC値を、鍵を用いて署名して、印刷データとともに、可搬性メモリ150に保存する保存手段と、を備える。
【選択図】図5
Description
本発明は、プリンタ、複合機、および、印刷制御方法に関する。
近年のプリンタや複合機には、印刷データをメモリに一時的に記憶し、複数部印刷したり、ユーザごとのフォルダに保存したりする機能を有するものもある。このような機能を有するプリンタや複合機において、印刷データを記憶する記憶媒体には、ハードディスクなどが主に使用されている。しかし、近年のフラッシュメモリの大容量化にともない、印刷データを記憶する記憶媒体に、コンパクトフラッシュなどの可搬型のメモリ(メモリカード)も使用されるようになってきている。
しかし、その性質上、可搬型のメモリの持ち出しは容易であり、電子データである印刷データの複製も容易であるため、可搬形のメモリに蓄積した印刷データは不正に利用されやすいといった問題がある。
そこで、上記の問題を改善する画像形成装置が開発されるようになってきている。例えば、特許文献1には、画像形成装置で生成した画像データと、画像形成装置に固有の電子署名(或いは、ユーザに入力された暗証番号に固有の電子署名)と、をともにメモリカードに保存することにより、画像データの改ざんを防止することについて記載されている。
特開2002−10044号
しかしながら、最初にメモリカードに保存した画像データ及び電子署名を、他の記憶媒体に複製して印刷を行うことは可能であるため、セキュリティ強度は十分ではない。
本発明は、可搬型のメモリに蓄積する印刷データを、他の記憶媒体に複製して印刷を行うことを防止する技術を提供することを目的とする。
上記課題を解決するための本願発明のプリンタは、接続された可搬性メモリに印刷データを保存する機能を有するプリンタであって、印刷データの入力を受け付ける印刷データ受付手段と、前記可搬性メモリから、前記可搬性メモリが保持しているデバイスコードを取得するデバイスコード取得手段と、前記印刷データに付与する電子署名の作成に使用する鍵を生成する鍵生成手段と、前記印刷データを前記可搬性メモリに保存する場合に、一方向性関数を用いて、前記デバイスコードと、前記印刷データと、を合成した合成データのメッセージダイジェスト値を算出するダイジェスト算出手段と、算出した前記メッセージダイジェスト値を、前記鍵を用いて署名して、前記印刷データとともに、前記可搬性メモリに保存する保存手段と、を備える。
本発明のプリンタによれば、可搬型のメモリに蓄積する印刷データを、他の記憶媒体に複製して印刷を行うことを防止することができる。
以下、本発明の実施形態の一例を図面を参照して説明する。
図1は、本発明の一実施形態が適用された印刷システム10のハードウェア構成の概要を説明するためのブロック図である。
図示するように、印刷システム10は、印刷機能を有する複合機100と、複合機100のホストコンピュータである情報処理装置200と、を備えている。
複合機100は、図示するように、CPU(Central Processing Unit)101と、メモリ制御ASIC(Application Specific Integrated Circuit)102と、揮発性メモリ103と、不揮発性メモリ104と、画像処理ASIC105と、印刷制御部106と、ビデオインタフェース107と、印刷エンジン108と、スキャナASIC109と、スキャナ装置110と、I/O(Input/Output)制御ASIC111と、各種外部インタフェース112と、を備えている。また、可搬性メモリ150は、複合機100に接続可能である。
CPU101は、各種プログラムを実行して、複合機100全体を制御する。例えば、CPU101は、印刷処理を行うための命令を各ユニットに送信する。また、CPU101は、印刷データを可搬性メモリ150に蓄積する際に、可搬性メモリ150に固有の識別コード(デバイスID)に基づいたMAC(Message Authentication Code)値を生成する処理(以下では、「MAC処理」という)を行う。そして、生成したMAC値と、印刷データとを、可搬性メモリ150に対応付けて蓄積する。また、CPU101は、可搬性メモリ150に蓄積されている印刷データを印刷する際には、可搬性メモリ150に蓄積されているMAC値を検証し、適正なMAC値であることが確認できた場合にのみ印刷処理を各ユニットに実行させる。
メモリ制御ASIC102は、複合機100に接続されているメモリを制御する。例えば、メモリ制御ASIC102は、データおよびプログラム等を一時的に記憶する揮発性メモリ103と、各種プログラムを格納している不揮発性メモリ104を制御する。また、メモリ制御ASIC102は、所定の装着位置(図示せず)に装着されている可搬性メモリ150を、I/O制御ASIC111を介して制御する。
ここで、揮発性メモリ103は、電源を切断すると記憶内容を失う半導体メモリであり、例えば、RAM(Random Access Memory)、DRAM(Dynamic Random Access Memory)、SDRAM(Synchronous Dynamic Random Access Memory)等を含む。
また、不揮発性メモリ104は、電源を切断しても記憶内容を保持する半導体メモリであり、例えば、ROM(Read Only Memory)等を含む。
また、可搬性メモリ150は、複合機100の装着コネクタ(図示せず)から取り外して持ち運ぶことが可能な小型のメモリであり、フラッシュメモリを採用している各種メモリカードを含む。例えば、可搬性メモリ150は、コンパクトフラッシュカード、SD(Secure Digital)メモリカード、USB(Universal Serial Bus)メモリ、等を含む。可搬性メモリ150を使用することにより、印刷時における印刷データの記憶容量を増加させることができる。例えば、可搬性メモリ150は、複数部印刷、認証印刷、電子ソート印刷、等を行うときに使用される。また、可搬性メモリ150には、可搬性メモリ150に固有の識別コード(デバイスID)が付与されている。例えば、デバイスIDには、可搬性メモリ150の機種(モデル)を特定する識別コード(機種ID)や、可搬性メモリ150を製造したメーカーを特定する識別コード(メーカーID)、などが含まれる。
画像処理ASIC105は、印刷時において、印刷対象のデータ(例えば、画像データ)を印刷データに変換する処理を行う回路(群)である。例えば、画像処理ASIC105は、印刷対象のデータに対して、色変換、圧縮、伸張、2値化、といった処理を施し、印刷データを生成する。画像処理ASIC105は、生成した印刷データを、印刷制御部106或いはビデオデータインタフェース107に供給する。
印刷制御部106は、印刷エンジン108を制御する。具体的には、印刷制御部106は、画像処理ASIC105から供給された印刷データに基づくプリントイメージデータを生成し、生成したプリントイメージデータを印刷エンジン108に送信して印刷させる。
ビデオデータインタフェース107は、印刷エンジン108に、ビデオデータを送信して印刷させる。具体的には、ビデオデータインタフェース107は、画像処理ASIC105から供給された印刷データを1ページ単位でビデオデータに展開し、展開したビデオデータを制御コマンドとともに印刷エンジン108に送信して印刷させる。
印刷エンジン108は、トナーカートリッジ、感光体ドラム、レーザ光照射機構、紙送り機構、印刷媒体の給排紙処理を行う給排紙機構等からなり、印刷制御部106或いはビデオインタフェース107からの指示にしたがって印刷を実行する。
スキャナASIC109は、スキャナ装置110を制御する回路(群)である。スキャナASIC109は、スキャナ装置110が生成した画像データを、メモリ制御ASIC102に供給する。
スキャナ装置110は、スキャナASIC109からの指示に基づいて、写真やイラスト等の原稿を、光学的にデジタルデータに変換して画像データを生成する。スキャナ装置110は、生成した画像データを、スキャナASIC109に供給する。なお、コピー機能を有する複合機100は、スキャナ装置110が生成した画像データを、印刷エンジン108に印刷させて、原稿をコピーすることができる。
IO制御ASIC111は、各種IO装置を制御する回路(群)である。例えば、可搬性メモリ150、各種外部インタフェース112、等とのデータの送受信を制御する。具体的には、IO制御ASIC111は、可搬性メモリ150が接続されたときに、接続されたことを示す信号をCPU101に供給する。また、可搬性メモリ150が抜かれたときには、抜かれたことを示す信号をCPU101に供給する。また、IO制御ASIC111は、接続されている可搬性メモリ150に対して、印刷データ、MAC値といった各種データの読み出し処理や書き込み処理を行う。また、IO制御ASIC111は、各種外部インタフェース112を介して情報処理装置200から受信した印刷対象のデータ(画像データ、印刷データを含む)を、揮発性メモリ103にDMA(Direct Memory Access)転送することができる。
各種外部インタフェース112は、情報処理装置200や各種デバイスとデータの送受信を行うためのインタフェースである。各種デバイスには、例えば、入力装置(スイッチ類、ボタン類、パネル、等)、出力装置(ディスプレイ、パネル、等)、USBデバイス、パラレル通信を行うデバイス、ネットワーク経由で通信を行うデバイス、が含まれる。
本実施形態が適用された複合機100は、以上のような構成からなる。ただし、複合機100の構成はこれに限定されない。例えば、複合機100は、スキャナASIC109、スキャナ装置110、などを有さないプリンタであってもよい。また、複合機100は、コピー機能、FAX機能、ネットワークプリント機能、等の各種機能を有してもよい。
情報処理装置200は、任意のアプリケーションを用いて生成した印刷対象のデータを、所定のケーブル(例えば、USBケーブル、LANケーブル、FAX回線、等)を介して、複合機100に送信することができる。このような情報処理装置200は、例えば、一般的なコンピュータや、デジタルカメラ、スキャナ装置等の画像形成装置でよい。また、情報処理装置200は、複数台の情報処理装置200から構成されてもよい。
次に、上記印刷システム10により複合機100および情報処理装置200に実現される機能構成について説明する。
図2は、印刷システム10の機能構成の一例を示すブロック図である。図示するように、情報処理装置200上には、オペレーティングシステム部210と、アプリケーション部220と、プリンタドライバ部230と、が構築される。
オペレーティングシステム部210は、情報処理装置200のシステム管理と、基本的なユーザ操作環境を提供する、いわゆる、情報処理装置200の基本ソフトウェアである。
アプリケーション部220は、ロゴマーク、罫線パターン等のフォームや、印刷対象のドキュメント(画像データ、等)を、作成、編集する処理を行う。アプリケーション部220は、情報処理装置200が備えるRAM(図示せず)にロードされたアプリケーションプログラムを、CPU(図示せず)が実行することにより情報処理装置200上に構築される。
プリンタドライバ部230は、複合機100を制御して印刷を実行させるための処理を行う。具体的には、ユーザからの印刷指示を受け付けると、アプリケーション部220が生成したドキュメントの描画データを読み込んで、印刷設定にしたがって複合機100が解釈できる形式の印刷データに変換し、複合機100に送信する。ここで、描画データは、オペレーティングシステム部210で定義されている仕様で記述されたデータであり、印刷データは、例えば、ページ記述言語で記述され、複合機100を制御するコマンド群から構成されている。
また、プリンタドライバ部230は、アプリケーション部220が生成したドキュメントの複数部印刷、認証印刷、電子ソート印刷、等を、複合機100に実行させることができる。
このため、プリンタドライバ部230は、各種印刷指示、印刷設定等をユーザから受け付けるユーザインタフェース部231と、印刷データの生成、管理、送信等を処理する印刷処理部232と、を備えている。
プリンタドライバ部230は、情報処理装置200のRAM(図示せず)にロードされたプリンタドライバプログラムを、CPUが実行することにより情報処理装置200上に構築される。このようなプリンタドライバプログラムは、複合機100のメーカー等により開発され、例えば、CD−ROM等の可搬性の記録媒体に記録することで流通させることができる。そして、この記録媒体を、メディア読取装置(図示せず)で読み取ることにより、情報処理装置200にインストールすることができる。また、インターネット等のコンピュータネットワークを介してインストールすることもできる。
一方、複合機100上には、印刷機能部110と、印刷実行部120と、が構築される。印刷機能部110及び印刷実行部120は、CPU101が所定のプログラムを実行することにより、又は、図1に示した構成要素が動作することにより、ソフトウェア的、ハードウェア的に構築される。
印刷機能部110は、情報処理装置200から送信された印刷データを解釈して、印刷データに基づく印刷を複合機100で実行するための制御を行う。具体的には、印刷データに基づくプリントイメージデータを生成し、このプリントイメージデータを印刷するように印刷実行部120に指示を送る。
また、印刷機能部110は、複数部印刷、認証印刷、電子ソート印刷、等の印刷指示がされた場合に、情報処理装置200から送信された印刷データ、又は、複合機100において生成した印刷データを、可搬性メモリ150に蓄積する処理を行う。さらに、印刷機能部110は、印刷データを可搬性メモリ150に蓄積する場合には、印刷データの不正利用(例えば、改ざん、複製、など)を防止するための処理を行う。
このため、印刷機能部110は、印刷データに基づく印刷を複合機200で実行するための基本的な制御を行う主制御部111と、印刷データを可搬性メモリ150に蓄積する場合に、印刷データの不正利用を防止するための認証コード(例えば、MAC値)を生成する認証コード生成処理部112と、認証コード生成処理部112が生成した認証コードに基づいて印刷データの正当性などについて検証するための認証処理を行う認証処理部113と、を備えている。
印刷実行部120は、印刷機能部110の指示にしたがって、印刷用紙等の印刷媒体に対して、印刷エンジン108による印刷を実行する。
次に、上記構成からなる印刷システム10における複合機100の特徴的な動作について説明する。図3は、印刷データを可搬性メモリ150に書き込む場合において、複合機100が行う書き込み処理を示すフローチャートである。
まず、印刷機能部110の主制御部111は、可搬性メモリ150に蓄積する対象の印刷データが、複合機100に入力されたか否か判別する(ステップS101)。
具体的には、主制御部111は、情報処理装置200のプリンタドライバ部230から、特定の印刷指示(複数部印刷、認証印刷、電子ソート印刷、等)とともに送信された印刷データを受け付けた場合に、可搬性メモリ150に蓄積する対象の印刷データが入力されたと判定する。ここで、情報処理装置200から送信された印刷指示は、各種外部I/F112、I/O制御ASIC111、メモリ制御ASIC102を経由して、CPU101に通知される。また、情報処理装置200から送信された印刷データは、各種外部I/F112、I/O制御ASIC111、メモリ制御ASIC102を経由して、揮発性メモリ103に格納される。
一方、プリンタドライバ部230から、他の印刷指示とともに送信された印刷データを受け付けた場合には、可搬性メモリ150に蓄積する対象の印刷データは入力されていないと判定する。
ステップS101において、主制御部111は、可搬性メモリ150に蓄積する対象の印刷データが入力されるまで待機し(ステップS101;No)、可搬性メモリ150に蓄積する対象の印刷データが入力されときに(ステップS101;Yes)、書き込み処理を開始する。
書き込み処理を開始後、主制御部111は、ステップS101で揮発性メモリ103に格納された印刷データにタイムスタンプを付加する(ステップS102)。具体的には、主制御部111は、印刷データが揮発性メモリ103に格納された時刻を、例えば、リアルタイムクロック(図示せず)から取得して、取得した時刻をタイムスタンプとして印刷データに付加する。
続いて、主制御部111は、ステップS101で受け付けた印刷指示に、認証範囲を指定するコマンドが含まれているか否か判別する(ステップS103)。
ここで、認証範囲とは、印刷データの印刷を許可する装置の範囲をいう。例えば、認証範囲を指定することによって、可搬性メモリ150に印刷データを蓄積した複合機(自装置)100のみに、その印刷データの印刷を許可するようにすることや、可搬性メモリ150に印刷データを蓄積した複合機100と同機種の装置のみに、その印刷データの印刷を許可するようにすることや、可搬性メモリ150に印刷データを蓄積した複合機100と同メーカーにより製造された装置のみに、その印刷データの印刷を許可するようにすることができる。
ステップS103において、主制御部111は、認証範囲を指定するコマンドが含まれていないと判定した場合には(ステップS103;No)、予め定められている設定にしたがって、認証範囲を指定する(ステップS104)。具体的には、主制御部111は、
図4に示すような、不揮発性メモリ104に予め記憶されている認証範囲指定テーブル300を参照して、認証範囲を指定する。
図4に示すような、不揮発性メモリ104に予め記憶されている認証範囲指定テーブル300を参照して、認証範囲を指定する。
図4は、認証範囲指定テーブル300の概略データ構造を示す図である。認証範囲指定テーブル300は、認証範囲ごとのレコード340からなる。各レコード340には、認証範囲特定データ310と、鍵の種類320と、選択データ330と、が対応付けて格納されている。
認証範囲特定データ310は、認証範囲を特定するデータであり、例えば、「可搬性メモリ150に印刷データを蓄積した複合機(自装置)100のみに、その印刷データの印刷を許可する」ことを示すデータや、「可搬性メモリ150に印刷データを蓄積した複合機100と同機種の装置のみに、その印刷データの印刷を許可する」ことを示すデータや、「可搬性メモリ150に印刷データを蓄積した複合機100と同メーカーにより製造された装置のみに、その印刷データの印刷を許可する」ことを示すデータである。
鍵の種類320は、認証範囲特定データ310に対応して、上述したMAC処理を行う際に生成する鍵の種類を示すデータであり、例えば、「自装置固有の鍵」、「機種共通の鍵」、「メーカー共通の鍵」といった鍵の種類を示すデータである。
選択データ330は、認証範囲指定テーブル300に格納されている認証範囲特定データ310のうち、いずれの認証範囲特定データ310を選択するかを示すデータであり、例えば、選択することを示すデータ「1」、選択しないことを示すデータ「0」である。
ステップS104において、主制御部111は、選択データ330が選択することを示すデータ「1」を格納しているレコード340を特定し、特定したレコード340に格納されている鍵の種類320の鍵を生成する指示を、認証コード生成処理部112に通知する。
一方、ステップS103において、主制御部111は、認証範囲を指定するコマンドが含まれていると判定した場合には(ステップS103;Yes)、コマンドにしたがって、認証範囲を指定する(ステップS105)。具体的には、主制御部111は、コマンドにより指定された認証範囲(認証範囲特定データ310)を格納するレコード340を、認証範囲指定テーブル300から検索し、検索したレコード340の選択データ330を「1」にする。そして、同レコード340に格納されている鍵の種類320の鍵を生成する指示を、認証コード生成処理部112に通知する。
ステップS104又はステップS105において、鍵を生成する指示を通知された認証コード生成処理部112は、可搬性メモリ150のデバイスIDを取得する(ステップS106)とともに、指定された認証範囲に応じた鍵を生成する(ステップS107)。具体的には、認証コード生成処理部112は、所定の装着位置に接続されている可搬性メモリ150から、デバイスIDを、I/O制御ASIC111、メモリ制御ASIC102を経由して、揮発性メモリ103に格納する。そして、認証コード生成処理部112は、ステップS104又はステップS105において通知された鍵の種類320に応じた鍵を生成し、揮発性メモリ103に格納する。
図5(A)は、ステップS106、ステップS107において、デバイスIDを可搬性メモリ150から取得し、鍵を生成する処理の概念図である。図示するように、複合機100の揮発性メモリ103には、ステップS101で入力された印刷データ、ステップS102で印刷データに付加したタイムスタンプが格納されている。さらに、揮発性メモリ103には、ステップS107で生成した鍵も格納されている。そして、ステップS106で、複合機100に接続された可搬性メモリ150から取得したデバイスIDは、揮発性メモリ103に格納される。
続いて、認証コード生成処理部112は、MAC処理を行う(ステップS108)。具体的には、認証コード生成処理部112は、揮発性メモリ103に格納されている印刷データ、タイムスタンプ、デバイスIDを合成したデータ、及び、鍵を、一方向性の関数(例えば、ハッシュ関数)に入力して、MAC値(ハッシュ値)を求める。ここで、一方向性の関数とは、合成したデータからMAC値を求めた場合に、そのMAC値から印刷データ(合成したデータ)を求めることが非常に困難な関数をいう。
図5(B)は、ステップS108におけるMAC処理の概念図である。ステップS108におけるMAC処理により生成したMAC値は、一時的に揮発性メモリ103に格納される。
そして、認証コード生成処理部112は、タイムスタンプが付加された印刷データと、ステップS108で生成したMAC値と、を対応付けて、可搬性メモリ150に蓄積する(ステップS109)。なお、複数の印刷データを可搬性メモリ150に蓄積する場合には、それぞれの印刷データに対応するMAC値を、可搬性メモリ150に記憶するようにする。
図5(C)は、ステップS109における、印刷データを可搬性メモリ150に蓄積する処理の概念図である。ステップS109における処理の後には、可搬性メモリ150には、デバイスID、印刷データ、タイムスタンプ、MAC値が格納されている。
その後、主制御部111は、書き込み処理を終了する。
以上の書き込み処理を、印刷機能部110が行うことにより、可搬性メモリ150に蓄積する印刷データの不正使用を防ぐことができる。
次に、図6は、上記の書き込み処理により、可搬性メモリ150に蓄積された印刷データを印刷する場合において、複合機100が行う読み込み処理を示すフローチャートである。
可搬性メモリ150に蓄積されている印刷データを印刷するタイミングで、読み込み処理を開始する。ここで、印刷データを印刷するタイミングとは、例えば、複数部印刷においては、1部目の印刷が終了して、2部目の印刷を開始するタイミングなどである。
読み込み処理を開始後、印刷機能部110の主制御部111は、可搬性メモリ150が所定の装着位置に接続されているか否か判別する(ステップS201)。主制御部111は、可搬性メモリ150が接続されていなければ(ステップS201;No)、接続されるまで待機する。一方、可搬性メモリ150が接続されている(又は、接続された)ことを検出した場合(ステップS201;Yes)、処理をステップS202に移行する。
ステップS202では、認証処理部113は、可搬性メモリ150から、デバイスIDと、タイムスタンプが付加された印刷データと、印刷データに対応付けられているMAC値(受信MAC値)と、を取得する(ステップS202)。
図7(A)は、ステップS202における処理の概念図である。ステップS202における処理により取得した全てのデータは、一時的に揮発性メモリ103に格納される。
続いて、認証処理部113は、認証範囲指定テーブル300を参照して、設定されている認証範囲に応じた鍵を生成する(ステップS203)。具体的には、認証処理部113は、認証範囲指定テーブル300にアクセスして、選択データ330が選択することを示すデータ「1」を格納しているレコード340を特定し、特定したレコード340に格納されている鍵の種類320の鍵を生成する。
次に、認証処理部113は、MAC処理を行う(ステップS204)。具体的には、認証処理部113は、ステップS202で可搬性メモリ150から取得したデバイスID、印刷データ、タイムスタンプ、及び、ステップS203で生成した鍵を、一方向性の関数(例えば、ハッシュ関数)に入力して、MAC値(生成MAC値)を求める。
図7(B)は、ステップS204におけるMAC処理の概念図である。ステップS204におけるMAC処理により生成したMAC値(生成MAC値)は、一時的に揮発性メモリ103に格納される。
続いて、認証処理部113は、ステップS204で生成したMAC値(生成MAC値)と、ステップS202で可搬性メモリ150から取得したMAC値(受信MAC値)と、を比較する(ステップS205)。
認証処理部113は、ステップS205において両MAC値(生成MAC値と受信MAC値)を比較した結果、両MAC値が一致すると判定した場合(ステップS206;Yes)、印刷対象の印刷データを印刷実行部120に通知する。このとき、印刷実行部120は、印刷データの印刷を実行する(ステップS207)。
一方、認証処理部113は、両MAC値が一致しないと判定した場合(ステップS206;No)、ステップS202で可搬性メモリ150から取得した印刷データを、揮発性メモリ103から破棄(削除)する(ステップS208)。
ステップS207又はステップS208の処理後、主制御部111は、読み込み処理を終了する。
以上の読み込み処理を、印刷機能部110が行うことにより、可搬性メモリ150に蓄積されている印刷データを不正に読み出して、印刷することを防ぐことができる。
以上、本発明の実施形態の一例について説明した。上記実施形態によれば、本発明の複合機100は、可搬性メモリ150に蓄積する印刷データの不正利用を防ぐことができる。
例えば、認証コード生成処理部112は、ステップS107で生成した鍵に基づいてMAC値を生成するため、鍵の認証範囲が「自装置のみ読み出し可能」であれば、印刷を許可する装置を、印刷データを可搬性メモリ150に書き込んだ複合機100のみに限定することができる(認証可能になる)。また、鍵の認証範囲に応じて、可搬性メモリ150に蓄積された印刷データの印刷を許可する装置(認証の範囲)を変更することができる。
さらに、認証コード生成処理部112は、可搬性メモリ150に固有のデバイスIDに基づいてMAC値を生成するため、最初に印刷データを蓄積した可搬性メモリ150以外の(可搬性)メモリに印刷データを複製したとしても、印刷できない。すなわち、可搬性メモリ150のすり替えを防止することができる。
さらに、認証コード生成処理部112は、可搬性メモリ150に印刷データを蓄積する場合には、MAC値(メッセージ認証コード)を印刷データに対応付けて蓄積するため、印刷データの改ざんを防ぐことができる。
さらに、認証コード生成処理部112は、タイムスタンプが付加された印刷データに基づいてMAC値を生成するため、MAC値のリプレイ(使いまわし)を防止することができる。
また、ディジタル署名を利用する場合と比較して、MAC処理は高速に行えるため、印刷データの書き込み、読み出しの処理を高速に行える。
なお、本発明は、上記実施形態に限定されず、種々の変形、応用が可能である。
例えば、上記実施形態では、書き込み処理のステップS107において、指定された認証範囲に応じた鍵を生成し、生成した鍵の種類に応じて、可搬性メモリ150に蓄積された印刷データの印刷を許可する装置(認証の範囲)を変更することができる。しかし、これに限定されず、例えば、デバイスIDの種類に応じて、印刷を許可する可搬性メモリ150(認証の範囲)を変更するようにしてもよい。
この場合、書き込み処理では、ステップS106において、認証コード生成処理部112は、可搬性メモリ150からデバイスIDを取得し、取得したデバイスIDの種類に応じて、可搬性メモリ150の認証範囲を指定する。具体的には、主制御部111は、図8に示すような、不揮発性メモリ104に予め記憶されているデバイスIDによる認証範囲指定テーブル400を参照して、可搬性メモリ150の認証範囲を指定する。
図8は、デバイスIDによる認証範囲指定テーブル400の概略データ構造を示す図である。デバイスIDによる認証範囲指定テーブル400は、認証範囲ごとのレコード440からなる。各レコード440には、認証範囲特定データ410と、デバイスIDの種類420と、選択データ430と、が対応付けて格納されている。
認証範囲特定データ410は、可搬性メモリ150の認証範囲を特定するデータであり、例えば、「書き込みをした可搬性メモリ150に蓄積されている印刷データのみ印刷を許可する」ことを示すデータや、「書き込みをした可搬性メモリ150と同機種の可搬性メモリ150に蓄積されている印刷データのみ印刷を許可する」ことを示すデータや、「書き込みをした可搬性メモリ150と同じメーカーにより製造された可搬性メモリ150に蓄積されている印刷データのみ印刷を許可する」ことを示すデータである。
デバイスIDの種類420は、デバイスIDの種類を示すデータであり、例えば、「可搬性メモリ固有のデバイスID」、「可搬性メモリの機種共通のデバイスID」、「可搬性メモリのメーカー共通のデバイスID」を示すデータである。
選択データ430は、デバイスIDによる認証範囲指定テーブル400に格納されている認証範囲特定データ410のうち、いずれの認証範囲特定データ410を選択するかを示すデータであり、例えば、鍵による認証範囲指定テーブル300の選択データ330と同様のデータである。
ステップS106において、主制御部111は、可搬性メモリ150から取得したデバイスIDに対応するデバイスIDの種類420を格納しているレコード440を特定し、特定したレコード440に格納されている選択データ430を「1」にする。
そして、読み込み処理時においては、ステップS204では、認証処理部113は、MAC処理の実行に先だって、デバイスIDによる認証範囲指定テーブル400にアクセスして、選択データ430が選択することを示すデータ「1」を格納しているレコード440を特定し、特定したレコード440に格納されている認証範囲特定データ410を抽出する。続いて、認証処理部113は、接続されている可搬性メモリ150が、抽出した認証範囲特定データ410で印刷を許可されている可搬性メモリに該当するか否かを判別する。ここで、印刷を許可されている可搬性メモリに該当すると判定した場合には、MAC処理を実行し、該当しないと判定した場合には、MAC処理を実行せずに、処理をステップS207に移行する。
以上のような書き込み処理、読み込み処理を印刷機能部110が行うことにより、デバイスIDに応じて、印刷を許可する可搬性メモリ150の認証範囲を変更することができる。
また、上記実施形態では、可搬性メモリ150に蓄積する印刷データは、情報処理装置200から複合機100に送信された印刷データである。しかし、これに限定されず、例えば、複合機100に備わるスキャナ装置110で生成された画像データを、画像処理ASIC105が変換した後の印刷データであってもよい。この場合、図3に示す書き込み処理のステップS101において、書き込み処理を開始するタイミングは、画像処理ASIC105が印刷データを生成したときである。
10・・・印刷システム、100・・・複合機、101・・・CPU、102・・・メモリ制御ASIC、103・・・揮発性メモリ、104・・・不揮発性メモリ、110・・・印刷機能部、111・・・主制御部、112・・・認証コード生成処理部、113・・・認証処理部、120・・・印刷実行部、150・・・可搬性メモリ、200・・・情報処理装置、230・・・プリンタドライバ部、300・・・鍵による認証範囲指定テーブル、310(410)・・・認証範囲特定データ、320・・・鍵の種類、330(430)・・・選択データ、400・・・デバイスIDによる認証範囲指定テーブル、420・・・デバイスIDの種類。
Claims (10)
- 接続された可搬性メモリに印刷データを保存する機能を有するプリンタであって、
印刷データの入力を受け付ける印刷データ受付手段と、
前記可搬性メモリから、前記可搬性メモリが保持しているデバイスコードを取得するデバイスコード取得手段と、
前記印刷データに付与する電子署名の作成に使用する鍵を生成する鍵生成手段と、
前記印刷データを前記可搬性メモリに保存する場合に、一方向性関数を用いて、前記デバイスコードと、前記印刷データと、を合成した合成データのメッセージダイジェスト値を算出するダイジェスト算出手段と、
算出した前記メッセージダイジェスト値を、前記鍵を用いて署名して、前記印刷データとともに、前記可搬性メモリに保存する保存手段と、
を備えることを特徴とするプリンタ。 - 請求項1に記載のプリンタであって、
前記印刷データの入力を受け付けた場合に、受け付けた時刻に基づいたタイムスタンプを作成するタイムスタンプ作成手段、を備え、
前記ダイジェスト算出手段は、
前記印刷データを前記可搬性メモリに保存する場合に、一方向性関数を用いて、前記デバイスコードと、前記タイムスタンプを付加した前記印刷データと、を合成した合成データのメッセージダイジェスト値を算出する、
ことを特徴とするプリンタ。 - 請求項1又は2に記載のプリンタであって、
前記鍵生成手段が生成する鍵は、当該プリンタに固有の鍵である、
ことを特徴とするプリンタ。 - 請求項1又は2に記載のプリンタであって、
前記鍵生成手段が生成する鍵は、当該プリンタに固有の鍵、当該プリンタの機種に固有の鍵、または、当該プリンタの製造会社に固有の鍵、のいずれかであり、
前記鍵の種類に応じて前記印刷データの認証範囲を変更する認証範囲変更手段、を備える、
ことを特徴とするプリンタ。 - 請求項4に記載のプリンタであって、
前記認証範囲変更手段は、
前記鍵が当該プリンタに固有の鍵である場合には、前記認証範囲を、当該プリンタに限定し、
前記鍵が当該プリンタの機種に固有の鍵である場合には、前記認証範囲を、当該プリンタの機種と同一の機種のプリンタに限定し、
前記鍵が当該プリンタの製造会社に固有の鍵である場合には、前記認証範囲を、当該プリンタの製造会社が製造したプリンタに限定する、
ことを特徴とするプリンタ。 - 請求項1又は2に記載のプリンタであって、
前記可搬性メモリが保持しているデバイスコードは、当該可搬性メモリに固有のデバイスコードである、
ことを特徴とするプリンタ。 - 請求項1又は2に記載のプリンタであって、
前記可搬性メモリが保持しているデバイスコードは、当該可搬性メモリに固有のデバイスコード、当該可搬性メモリの機種に固有のデバイスコード、または、当該可搬性メモリの製造会社に固有のデバイスコード、のいずれかであり、
前記デバイスコードの種類に応じて前記印刷データの認証範囲を変更する認証範囲変更手段、を備える、
ことを特徴とするプリンタ。 - 請求項1乃至7のいずれか1項に記載のプリンタであって、
前記可搬性メモリに保存されている印刷データを印刷する場合に、前記可搬性メモリから、前記可搬性メモリが保持しているデバイスコードと、前記印刷データと、前記鍵を用いて署名された前記メッセージダイジェスト値である受信データと、を取得するデータ取得手段と、
認証用鍵を生成する認証用鍵生成手段と、
前記一方向性関数を用いて、前記デバイスコードと、前記印刷データと、を合成した合成データの認証用メッセージダイジェスト値を算出する認証用ダイジェスト算出手段と、
前記認証用メッセージダイジェスト値を、前記認証用鍵を用いて署名した生成データと、前記データ取得手段が取得した前記受信データと、を比較する比較手段と、
前記比較手段による比較により、前記生成データと前記受信データとが一致する場合には、前記データ取得手段が取得した前記印刷データを印刷し、一致しない場合には、前記印刷データを削除する印刷実行手段と、
を備えることを特徴とするプリンタ。 - 接続された可搬性メモリに印刷データを保存する機能を有する複合機であって、
印刷データを生成する印刷データ生成手段と、
前記可搬性メモリから、前記可搬性メモリが保持しているデバイスコードを取得するデバイスコード取得手段と、
前記印刷データに付与する電子署名の作成に使用する鍵を生成する鍵生成手段と、
前記印刷データを前記可搬性メモリに保存する場合に、一方向性関数を用いて、前記デバイスコードと前記印刷データを合成した合成データのメッセージダイジェスト値を算出するダイジェスト算出手段と、
算出した前記メッセージダイジェスト値を、前記鍵を用いて署名して、前記印刷データとともに、前記可搬性メモリに保存する保存手段と、
を備えることを特徴とする複合機。 - 接続された可搬性メモリに印刷データを保存する機能を有するプリンタにおける印刷制御方法であって、
前記プリンタは、制御部を備え、
前記制御部が、
印刷データを生成する印刷データ生成ステップと、
前記可搬性メモリから、前記可搬性メモリが保持しているデバイスコードを取得するデバイスコード取得ステップと、
前記印刷データに付与する電子署名の作成に使用する鍵を生成する鍵生成ステップと、
前記印刷データを前記可搬性メモリに保存する場合に、一方向性関数を用いて、前記デバイスコードと前記印刷データを合成した合成データのメッセージダイジェスト値を算出するダイジェスト算出ステップと、
算出した前記メッセージダイジェスト値を、前記鍵を用いて署名して、前記印刷データとともに、前記可搬性メモリに保存する保存ステップと、
を行うことを特徴とする印刷制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008001003A JP2009160832A (ja) | 2008-01-08 | 2008-01-08 | プリンタ、複合機、および、印刷制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008001003A JP2009160832A (ja) | 2008-01-08 | 2008-01-08 | プリンタ、複合機、および、印刷制御方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009160832A true JP2009160832A (ja) | 2009-07-23 |
Family
ID=40963996
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008001003A Withdrawn JP2009160832A (ja) | 2008-01-08 | 2008-01-08 | プリンタ、複合機、および、印刷制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2009160832A (ja) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011139166A (ja) * | 2009-12-25 | 2011-07-14 | Canon Inc | 画像処理装置及びその制御方法 |
US11523028B2 (en) | 2019-05-31 | 2022-12-06 | Brother Kogyo Kabushiki Kaisha | Image forming apparatus, method of storing image forming data, and to perform process of enabling and disabling of storing function to store image data in USB memory |
US11567708B2 (en) | 2021-01-05 | 2023-01-31 | Brother Kogyo Kabushiki Kaisha | Image forming apparatus having one or more ports to which portable memory is attachable |
US11698762B2 (en) | 2021-01-05 | 2023-07-11 | Brother Kogyo Kabushiki Kaisha | Image forming apparatus having a plurality of ports to which portable memory is attachable, and computer-readable medium and method for the same |
US11722619B2 (en) | 2021-01-05 | 2023-08-08 | Brother Kogyo Kabushiki Kaisha | Image forming apparatus having port to which portable memory is attachable |
US11989464B2 (en) | 2021-01-05 | 2024-05-21 | Brother Kogyo Kabushiki Kaisha | Image forming apparatus having a plurality of ports to which portable memory is attachable, and computer-readable medium and method for the same |
-
2008
- 2008-01-08 JP JP2008001003A patent/JP2009160832A/ja not_active Withdrawn
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011139166A (ja) * | 2009-12-25 | 2011-07-14 | Canon Inc | 画像処理装置及びその制御方法 |
US11523028B2 (en) | 2019-05-31 | 2022-12-06 | Brother Kogyo Kabushiki Kaisha | Image forming apparatus, method of storing image forming data, and to perform process of enabling and disabling of storing function to store image data in USB memory |
US12010284B2 (en) | 2019-05-31 | 2024-06-11 | Brother Kogyo Kabushiki Kaisha | Image forming apparatus, method of storing image forming data in USB memory when a particular storing function is enabled, and non-transitory computer-readable recording medium therefor |
US11567708B2 (en) | 2021-01-05 | 2023-01-31 | Brother Kogyo Kabushiki Kaisha | Image forming apparatus having one or more ports to which portable memory is attachable |
US11698762B2 (en) | 2021-01-05 | 2023-07-11 | Brother Kogyo Kabushiki Kaisha | Image forming apparatus having a plurality of ports to which portable memory is attachable, and computer-readable medium and method for the same |
US11722619B2 (en) | 2021-01-05 | 2023-08-08 | Brother Kogyo Kabushiki Kaisha | Image forming apparatus having port to which portable memory is attachable |
US11989464B2 (en) | 2021-01-05 | 2024-05-21 | Brother Kogyo Kabushiki Kaisha | Image forming apparatus having a plurality of ports to which portable memory is attachable, and computer-readable medium and method for the same |
US12008273B2 (en) | 2021-01-05 | 2024-06-11 | Brother Kogyo Kabushiki Kaisha | Image forming apparatus having one or more ports to which portable memory is attachable |
US12058295B2 (en) | 2021-01-05 | 2024-08-06 | Brother Kogyo Kabushiki Kaisha | Image forming apparatus having port to which portable memory is attachable |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2016107401A1 (zh) | 一种图像形成控制系统及图像形成控制方法 | |
JP2009160832A (ja) | プリンタ、複合機、および、印刷制御方法 | |
JP7170482B2 (ja) | 情報処理装置及びその制御方法、並びにプログラム | |
US20120229823A1 (en) | Output apparatus, system, control method, and storage medium storing a program | |
JP2008257338A (ja) | 情報処理装置、機能制限方法、記憶媒体及びプログラム | |
JP2020177539A (ja) | 情報処理装置、及びその制御方法 | |
JP2005033277A (ja) | 画像形成装置 | |
JP6918532B2 (ja) | 符号化画像生成装置及び方法、画像形成システム及び方法 | |
KR101700481B1 (ko) | 정보 처리 장치, 정보 처리 방법, 및 정보 처리 시스템 | |
JP2007158613A (ja) | 画像処理装置及びその制御方法、並びに制御プログラム | |
JP2007331355A5 (ja) | ||
JP4965996B2 (ja) | 画像処理装置、画像処理方法、画像処理プログラム並びに記憶媒体 | |
JP4029281B2 (ja) | 画像処理装置、画像処理方法、及び画像処理プログラム | |
JP2010170235A (ja) | 画像形成システムおよびサーバ装置 | |
JP4455358B2 (ja) | 画像処理装置およびその方法 | |
US20070216913A1 (en) | Image forming system, image forming apparatus, and image forming method | |
JP6834761B2 (ja) | 画像ログ保存システム、画像ログ保存方法、画像形成装置及びプログラム | |
JP2010271824A (ja) | 印刷制御システム、画像形成装置、印刷管理サーバ、印刷制御方法、画像形成装置の処理方法、印刷管理サーバの処理方法、およびプログラム。 | |
JP2009070106A (ja) | 画像形成装置、データの処理方法並びにデータの処理プログラム | |
JP2005144900A5 (ja) | ||
JP2020187649A (ja) | 情報処理装置、制御方法、およびプログラム | |
JP2006256041A (ja) | 画像形成装置及び画像形成方法 | |
JP2009152730A (ja) | 文書管理装置およびプログラム | |
US20150146219A1 (en) | Portable terminal capable of displaying image, control method therefor, and storage medium storing control program therefor | |
JP5962314B2 (ja) | 画像形成システム、管理装置、画像形成装置、及び制御プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20101202 |
|
A761 | Written withdrawal of application |
Free format text: JAPANESE INTERMEDIATE CODE: A761 Effective date: 20120309 |