JP2004206620A - Printing system and its control method - Google Patents

Printing system and its control method Download PDF

Info

Publication number
JP2004206620A
JP2004206620A JP2002377963A JP2002377963A JP2004206620A JP 2004206620 A JP2004206620 A JP 2004206620A JP 2002377963 A JP2002377963 A JP 2002377963A JP 2002377963 A JP2002377963 A JP 2002377963A JP 2004206620 A JP2004206620 A JP 2004206620A
Authority
JP
Japan
Prior art keywords
printer
public key
print
position information
client
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
Application number
JP2002377963A
Other languages
Japanese (ja)
Inventor
Toshihiro Shima
敏 博 島
Kazuto Gassho
掌 和 人 合
Teruhito Kojima
嶋 輝 人 小
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2002377963A priority Critical patent/JP2004206620A/en
Publication of JP2004206620A publication Critical patent/JP2004206620A/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Accessory Devices And Overall Control Thereof (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To restrict positions which can be used by a printer 30. <P>SOLUTION: A service provider 15 determines whether or not a person who requests generation of a public key is the person having legitimate authority regarding generation of the public key. When the service provider 15 determines the person to have the legitimate authority, the printer 30 generates and stores the public key by public key cryptography by using a path phrase at least including printer positional information at the point of time. Then, the printer 30 transmits the public key to a printing client 20 according to a request from the printing client 20. When the printing client 20 transmits printing data D05 to the printer 30, encrypts the printing data D05 by using the acquired public key and transmits it as data D10 for printing transmission. The printer 30 receiving the data D10 for printing transmission generates a private key by the public key cryptography by using the path phrase at least including the printer positional information at the point of time. Then, the received data D10 for printing transmission is decoded by using the private key. <P>COPYRIGHT: (C)2004,JPO&NCIPI

Description

【0001】
【発明の属する技術分野】
本発明は、印刷システム及びその制御方法に関し、特に、プリンタが正常な印刷をできる場所を制限した印刷システム及びその制御方法に関する。
【0002】
【従来の技術】
近年、プリンタを用いたビジネスモデルとして、プリンタメーカがユーザにプリンタを無償で貸し出し、ユーザがこのプリンタを用いて印刷した枚数だけ、そのプリンタメーカに使用料を支払うという形態が、注目されてきている。このようなビジネスモデルにおいては、印刷枚数に応じた課金の他に、使用期間に応じた課金や、使用インク量に応じた課金などが考えられる。
【0003】
【特許文献1】
特開平11−331144号公報
【0004】
【発明が解決しようとする課題】
しかしながら、このようなビジネスモデルでは、プリンタメーカから貸し出されたプリンタを、ユーザが無断で転売したり、他人に貸し出したりしてしまうと、プリンタメーカがプリンタの使用に応じた課金をすることができなくなってしまう。このため、プリンタメーカとしては、貸し出したプリンタが使用できる場所、つまり、正常な印刷ができる場所を、その貸し出したユーザの場所に限定したい。
【0005】
そこで本発明は、前記課題に鑑みてなされたものであり、予め認証された場所でしか、プリンタが正常に印刷することのできない印刷システム及びその制御方法を提供することを目的とする。
【0006】
【課題を解決するための手段】
上記課題を解決するため、本発明に係る印刷システムは、印刷クライアントと、この印刷クライアントからの要求に基づいて印刷を行うプリンタと、少なくとも前記印刷クライアントに接続されるサービスプロバイダとを有する印刷システムであって、前記プリンタは、プリンタの設置されている場所を特定するためのプリンタ位置情報を取得する、プリンタ位置情報取得手段を備えており、前記サービスプロバイダは、公開鍵の生成に関して正当な権限を有する者であるかどうかを判断する判断手段を備えており、前記プリンタは、前記サービスプロバイダの判断手段が、公開鍵の生成に関して正当な権限を有する者であると判断した場合に、前記プリンタ位置情報取得手段からプリンタ位置情報を取得し、これを第1プリンタ位置情報とするとともに、前記第1プリンタ位置情報を少なくとも含むパスフレーズを用いて、公開鍵を生成する、公開鍵生成手段を、さらに備えている、ことを特徴とする。
【0007】
この場合、前記プリンタは、前記公開鍵生成手段で生成した公開鍵を格納する、公開鍵第1格納手段をさらに備えるようにしてもよい。
【0008】
この場合、前記プリンタは、前記公開鍵第1格納手段から公開鍵を読み出して、前記印刷クライアントに送信する、公開鍵送信手段をさらに備えており、前記印刷クライアントは、前記プリンタから受信した公開鍵を格納する、公開鍵第2格納手段をさらに備えているようにしてもよい。
【0009】
この場合、前記印刷クライアントは、前記プリンタで印刷を行うための印刷データを生成する、印刷データ生成手段と、前記公開鍵第2格納手段から公開鍵を読み出して、この公開鍵で前記印刷データを暗号化し、この暗号化した印刷データを、前記プリンタに送信する、印刷データ送信手段と、を備えており、前記プリンタは、さらに、前記公開鍵で暗号化された印刷データを受信する、印刷データ受信手段と、前記印刷データを受信した際に、前記プリンタ位置情報取得手段からプリンタ位置情報を取得し、これを第2プリンタ位置情報とする、第2プリンタ位置情報取得手段と、前記第2プリンタ位置情報を少なくとも含むパスフレーズを用いて、秘密鍵を生成する、秘密鍵生成手段と、前記秘密鍵を用いて、前記印刷データ受信手段で受信した前記印刷データを復号する、復号手段と、を備えるようにしてもよい。
【0010】
この場合、前記印刷クライアントは、操作者に認証情報を要求する、認証情報要求手段をさらに備えており、前記サービスプロバイダの前記判断手段は、入力された認証情報を取得して、これが登録されている認証情報と一致するかどうかを判断し、両者が一致した場合には、操作者が正当な権限を有する者であると判断するようにしてもよい。
【0011】
また、前記プリンタの前記公開鍵生成手段が公開鍵を生成する際に、秘密鍵が生成された場合でも、この秘密鍵は破棄するようにしてもよい。
【0012】
また、前記プリンタは、前記秘密鍵を用いて前記印刷データが復号できた場合には、前記印刷データに基づく印刷を実行し、前記秘密鍵を用いて前記印刷データが復号できなかった場合には、前記印刷データに基づく印刷を実行しない、選択印刷実行手段を、さらに備えるようにしてもよい。
【0013】
なお、本発明は印刷システムを制御するための制御方法として実現することもできる。さらには、そのように印刷システムを制御するためのプログラムやそのプログラムを記録した記録媒体として実現することもできる。
【0014】
【発明の実施の形態】
本実施形態に係る印刷システムは、サービスプロバイダが公開鍵生成の認証を行い、この認証が一致した場合には、プリンタは、プリンタが設置されている位置を表すプリンタ位置情報を少なくとも含むパスフレーズを用いて公開鍵を生成し、これを保持しておく。そして、プリンタは必要に応じて、この公開鍵を印刷クライアントに提供する。一方、サービスプロバイダでの認証が一致しなかった場合には、プリンタは公開鍵の生成は行わない。
【0015】
印刷クライアントが印刷データをこのプリンタに送信する際には、取得した公開鍵を用いて印刷データを暗号化して生成した印刷送信用データとして送信する。そして、この印刷送信用データを受信したプリンタでは、受信時に再度、その時点におけるプリンタ位置情報を少なくとも含むパスフレーズを用いて秘密鍵を生成し、この秘密鍵で印刷送信用データが復号できた場合にのみ印刷を実行するようにしたものである。より詳しくを、以下に説明する。
【0016】
まず、図1に基づいて、本実施形態に係る印刷システムの構成を説明する。図1は、本実施形態に係る印刷システムのハードウェア構成を示すブロック図である。
【0017】
この図1に示すように、本実施形態に係る印刷システムは、プリンタケーブル10を介して接続された印刷クライアント20とプリンタ30とを備えている。すなわち、プリンタ30は印刷クライアント20にローカル接続されている。但し、印刷クライアント20とプリンタ30との間は、無線やイーサネット(登録商標)等を用いたネットワークにより接続されるようにしてもよい。この場合には、1つのプリンタ30に複数の印刷クライアント20が接続されてもよい。
【0018】
また、印刷クライアント20は、インターネットやイーサネット(登録商標)等のネットワークNTに接続されている。また、このネットワークNTには、公開鍵の生成を要求した者が、公開鍵の生成に関して正当な権限のある者であるかどうかを判断するサービスプロバイダ15が接続されている。
【0019】
印刷クライアント20は、例えば、ホストコンピュータやパーソナルコンピュータと呼ばれる各種のコンピュータにより構成されている。本実施形態では、特に印刷クライアント20は、印刷データを公開鍵で暗号化した印刷送信用データを生成し、この印刷送信用データをプリンタケーブル10を介してプリンタ30に送信する。また、この印刷クライアント20は、コンピュータに限られるものではなく、例えば、撮影した画像を印刷する必要のあるデジタルカメラや、印刷画像データをコンテンツとして蓄積してあるコンテンツサーバ等でもよい。
【0020】
また本実施形態においては、サービスプロバイダ15は、公開鍵の生成を要求した者が、正当な権限を有する者であるかどうかを認証し、このサービスプロバイダ15で正当な権限を有すると認められた場合にのみ、プリンタ30は公開鍵暗号法により公開鍵を生成する。プリンタ30で生成された公開鍵は、プリンタ30で保持され、正当な印刷クライアント20からの要求により、この印刷クライアント20に送信され、格納される。
【0021】
印刷クライアント20では、印刷データをプリンタ30に送信する際には、この公開鍵で印刷データを暗号化して、印刷送信用データとしてプリンタ30に送信する。プリンタ30は、印刷送信用データを印刷クライアント20から受信し、この印刷送信用データを、少なくともその時点のプリンタ位置情報を含むパスフレーズを用いて生成した秘密鍵で、復号する。そして、印刷送信用データの復号ができた場合には、その印刷送信用データに基づく印刷を行い、印刷送信用データの復号ができなかった場合には、その印刷送信用データに基づく印刷は行わない。
【0022】
また、本実施形態においては、プリンタ30は、公開鍵で暗号化されていない印刷データでは、正常な印刷結果が得られないように構成されている。すなわち、暗号化されていない印刷データは、プリンタ30では、秘密鍵を用いて復号できない印刷送信用データとして扱われる。
【0023】
図2は、プリンタ30の内部構成を説明するためのブロック図である。この図2に示すように、プリンタ30は、CPU(Central Processing Unit)40と、RAM(Random Access Memory)42と、ROM(Read Only Memory)44と、EEPROM(Electrically Erasable Programmable ROM)45を備えており、これらは互いに内部バス46を介して接続されている。また、この内部バス46には、通信用のインターフェース48が接続されており、この通信用のインターフェース48を介して、上述したプリンタケーブル10にプリンタ30が接続されている。さらに、内部バス46には、インターフェース50が接続されており、このインターフェース50には印刷エンジン52が接続されている。本実施形態においては、EEPROM45は、書き換え可能な不揮発性記憶装置として機能する。
【0024】
また、内部バス46には、位置検出部54が接続されている。この位置検出部54は、プリンタ30が設置されている位置を特定する機能を有する。本実施形態においては、例えば、GPS(global positioning system)により構成されており、このプリンタ30が設置されている位置の緯度、経度、高度が特定できるようになっている。現時点におけるGPSの精度は、緯度、経度、高度において、それぞれ±10m程度であると言われている。
【0025】
但し、この位置検出部54は、GPSを用いた構成に限らず、例えば、PHS(Personal Handyphone System)などの移動体通信技術を利用して、プリンタ30の位置を特定するようにしてもよい。また、GPSとPHSとを併用し、室内でGPSの電波が正常に受信できない場合には、PHSの電波に基づいて、位置を特定するようにしてもよい。
【0026】
さらに、内部バス46には、インターフェース56を介して、ハードディスク58が接続されている。本実施形態においては、このハードディスク58は、書き換え可能な不揮発性記憶装置として機能する。
【0027】
図3は、印刷クライアント20の内部構成を説明するためのブロック図である。この図3に示すように、本実施形態に係る印刷クライアント20は、コンピュータ本体60とディスプレイ62とを備えて構成されている。
【0028】
コンピュータ本体60は、CPU64と、RAM66と、ROM68とを備えており、これらは互いに内部バス70を介して接続されている。また、この内部バス70には、通信用のインターフェース72、73が接続されており、通信用のインターフェース72を介して、上述したプリンタケーブル10に印刷クライアント20が接続されており、通信用のインターフェース73を介して、印刷クライアント20がネットワークNTに接続されている。
【0029】
さらに、内部バス70には、インターフェース74が接続されており、このインターフェース74には大容量記憶装置であるハードディスク76が接続されている。本実施形態においては、このハードディスク76は、書き換え可能な不揮発性記憶装置として機能する。また、内部バス70には、インターフェース78が接続されており、このインターフェース78から延びるケーブル80を介して、上述したディスプレイ62が接続されている。
【0030】
図4は、サービスプロバイダ15の内部構成を説明するためのブロック図である。この図4に示すように、本実施形態に係るサービスプロバイダ15は、コンピュータ本体100とディスプレイ102とを備えて構成されている。
【0031】
コンピュータ本体100は、CPU104と、RAM106と、ROM108とを備えており、これらは互いに内部バス110を介して接続されている。また、この内部バス110には、通信用のインターフェース112が接続されており、通信用のインターフェース72を介して、サービスプロバイダ15がネットワークNTに接続されている。
【0032】
さらに、内部バス110には、インターフェース114が接続されており、このインターフェース114には大容量記憶装置であるハードディスク116が接続されている。本実施形態においては、このハードディスク116は、書き換え可能な不揮発性記憶装置として機能する。また、内部バス110には、インターフェース118が接続されており、このインターフェース118から延びるケーブル120を介して、上述したディスプレイ102が接続されている。
【0033】
次に、本実施形態に係る印刷システムにおいて、印刷クライアント20がプリンタ30で印刷を行う場合の処理を、概略的に説明する。
【0034】
本実施形態においては、サービスプロバイダ15は、公開鍵の生成を要求する正当な権限のある者であるかどうかを認証する。本実施形態においては、正当な権限のある者であるかどうかは、印刷クライアント20から、操作者に公開鍵生成認証情報を入力させ、これをサービスプロバイダ15に送信して、サービスプロバイダ15が判断する。また、本実施形態においては、この公開鍵生成認証情報は、IDとパスワードの組み合わせから構成されている。
【0035】
認証が一致した場合には、サービスプロバイダ15は、印刷クライアント20に認証が一致した旨の認証結果情報を送信する。印刷クライアント20は、公開鍵生成要求と、この認証が一致した旨の認証結果情報をプリンタ30に送信する。これらを受信したプリンタ30は、その時点のプリンタ位置情報を少なくとも含むパスフレーズを用いて、公開鍵暗号法により公開鍵を生成する。そして、プリンタ30は、この生成した公開鍵を、EEPROM45に格納しておく。
【0036】
正当な権限のある印刷クライアント20が公開鍵を要求した場合には、プリンタ30はEEPROM45から公開鍵を読み出して、プリンタケーブル10を介して印刷クライアント20に送信する。
【0037】
印刷クライアント20は、受信した公開鍵をハードディスク74に格納する。次に、印刷クライアント20のユーザは、図5に示すように、印刷するべきデータである印刷データD05を作成し、印刷クライアント20に対してプリンタ30を指定して印刷を指示する。
【0038】
印刷クライアント20は、印刷データD05を、プリンタ30の公開鍵を用いて暗号化し、印刷送信用データD10を生成する。ここで、印刷データD05は、プリンタ30で印刷エンジン52を駆動した印刷を行うのに必要となる本来の印刷データを示している。なお、印刷送信用データD10は、この図5に示した印刷データD05以外のデータを含んでいてもよい。
【0039】
この印刷送信用データD10を受信したプリンタ30は、図2に示すように、この受信した印刷送信用データD10をRAM42に一旦格納する。そして、プリンタ30は、この暗号化された印刷送信用データD10を、秘密鍵を用いて復号する。すなわち、プリンタ30は、その時点におけるプリンタ位置情報を少なくとも含むパスフレーズを用いて、公開鍵暗号法により、秘密鍵を生成する。このように、印刷送信用データD10の復号を行おうとする度に、秘密鍵を生成することにより、このプリンタ30の設置場所が移動された場合には、移動前に生成された公開鍵で暗号化された印刷送信用データが、移動後のプリンタ30で復号できないようにしている。
【0040】
続いて、プリンタ30は、印刷送信用データD10が復号できたかどうかを判断する。印刷送信用データD10の復号ができた場合には、印刷送信用データD10を復号することにより取得した印刷データD05に基づいて印刷を行い、復号できなかった場合には、印刷は行わない。
【0041】
次に、上述した処理の内容について、フローチャートを用いて詳しく説明する。まず、公開鍵を生成する処理について説明する。
【0042】
図6は、印刷クライアント20で実行される公開鍵生成要求処理を説明するフローチャートである。この公開鍵生成要求処理は、印刷クライアント20のROM68又はハードディスク76に格納されている公開鍵生成要求プログラムをCPU64が読み込んで実行することにより実現される処理である。また、本実施形態においては、この公開鍵生成要求処理は、操作者(例えば、プリンタ30のメーカのメンテナンスをする者)が、印刷クライアント20を操作して、公開鍵生成要求処理を実行するように指示した場合に、起動され、実行される処理である。
【0043】
図6に示すように、公開鍵生成要求処理が実行された場合、印刷クライアント20はまず、操作者に、公開鍵生成認証情報を入力するように要求する(ステップS10)。本実施形態においては、操作者は、印刷クライアント20のキーボード等から、IDとパスワードを公開鍵生成認証情報として入力する。
【0044】
次に、印刷クライアント20は、公開鍵生成認証情報が入力されたかどうかを判断する(ステップS12)。この公開鍵生成認証情報が入力されていない場合(ステップS12:No)には、ステップS12の処理を繰り返して待機する。
【0045】
一方、公開鍵生成認証情報が入力された場合(ステップS12:Yes)には、印刷クライアント20は、ネットワークNTを介して、サービスプロバイダ15との接続を確立する(ステップS14)。データの送受信は、例えば、内容をSSLなどで暗号化処理をした上で、やりとりをする。このことは、相手のサービスプロバイダー15側も同じである。そして、印刷クライアント20は、公開鍵生成認証情報をサービスプロバイダ15に送信する(ステップS16)。
【0046】
次に、印刷クライアント20は、サービスプロバイダ15から認証結果情報を受信するので、公開鍵生成認証情報が一致したことを認証結果情報が示しているかどうかを判断する(ステップS18)。公開鍵生成認証情報が一致したことを認証結果情報が示している場合(ステップS18:Yes)には、印刷クライアント20は、プリンタ30に公開鍵生成要求を送信する(ステップS20)。続いて、印刷クライアント20は、プリンタ30に公開鍵生成認証情報が一致したことを示す認証結果情報を送信する(ステップS22)。
【0047】
次に、印刷クライアント20は、サービスプロバイダ15との接続を切断する(ステップS24)。一方、上述したステップS18において、公開鍵生成認証情報が一致しない認証結果情報を受信したと判断した場合(ステップS18:No)にも、このステップS24にジャンプして、サービスプロバイダ15との接続を切断する。
【0048】
これにより、本実施形態に係る公開鍵生成要求処理が終了する。
【0049】
図7は、サービスプロバイダ15で実行される認証処理を説明するフローチャートである。この認証処理は、サービスプロバイダ15のROM108又はハードディスク116に格納されている認証プログラムをCPU104が読み込んで実行することにより実現される処理である。また、本実施形態においては、この認証処理は、一定の時間間隔で定常的に実行されている処理である。
【0050】
図7に示すように、公開鍵生成処理においては、サービスプロバイダ15は、印刷クライアント20からの接続を待っている(ステップS50)。そして、印刷クライアント20に接続された場合には、サービスプロバイダ15は、その印刷クライアント20から公開鍵生成認証情報を受信したかどうかを判断する(ステップS52)。この公開鍵生成認証情報を受信していない場合(ステップS52:No)には、このステップS52の処理を繰り返して待機する。
【0051】
一方、公開鍵生成認証情報を受信した場合(ステップS52:Yes)には、サービスプロバイダ15は、その公開鍵生成認証情報が、予め登録されているものと一致するかどうかを判断する(ステップS54)。上述したように、本実施形態においては、公開鍵生成認証情報は、IDとパスワードとで構成されているので、このIDとパスワードが、ハードディスク116に予め登録されているIDとパスワードと一致するかどうかを判断する。
【0052】
公開鍵生成認証情報が一致しなかったと判断した場合(ステップS54:No)には、公開鍵生成認証情報が一致しなかった旨の認証結果情報を、印刷クライアント20に送信する(ステップS56)。そして、印刷クライアント20との接続を終了する(ステップS60)。
【0053】
これに対して、ステップS54で、公開鍵生成認証情報が一致したと判断した場合(ステップS54:Yes)には、公開鍵生成認証情報が一致した旨の認証結果情報を、印刷クライアント20に送信する(ステップS58)。そして、印刷クライアント20との接続を終了し(ステップS60)、上述したステップS50からを繰り返す。
【0054】
次に、図8に基づいて、印刷クライアント20の公開鍵生成要求処理に対応して、プリンタ30で実行される公開鍵生成処理について説明する。図8は、プリンタ30で実行される公開鍵生成処理を説明するフローチャートである。この公開鍵生成処理は、プリンタ30のROM44又はハードディスク58に格納されている公開鍵生成プログラムをCPU40が読み込んで実行することにより実現される処理である。本実施形態においては、この公開鍵生成処理は、一定の時間間隔で定常的に実行されている処理である。
【0055】
図8に示すように、プリンタ30は、印刷クライアント20から公開鍵生成要求を受信したかどうかを判断する(ステップS80)。この公開鍵生成要求を受信していない場合(ステップS80:No)には、このステップS80の処理を繰り返して待機する。
【0056】
一方、公開鍵生成要求を受信した場合(ステップS80:Yes)には、プリンタ30は、印刷クライアント20から、公開鍵生成認証情報が一致した旨の認証結果情報を受信したかどうかを判断する(ステップS82)。この認証結果情報を受信していない場合(ステップS82:No)には、このステップS82の処理を繰り返して待機する。
【0057】
一方、公開鍵生成認証情報が一致した旨の認証結果情報を受信した場合(ステップS82:Yes)には、機器固有情報を取得する(ステップS84)。ここで、機器固有情報とは、このプリンタ30に関して、固有に割り当てられている識別情報であり、例えば、プリンタ30の製造シリアルナンバー、MACアドレス等がある。
【0058】
次に、プリンタ30は、位置検出部54からその時点におけるプリンタ位置情報を取得する(ステップS86)。続いて、プリンタ30は、パスフレーズを生成する(ステップS88)。このパスフレーズの作成手法は種々のものが考えられるが、本実施形態においては、単純に機器固有情報の後ろにプリンタ位置情報をつなげることにより、パスフレーズを作成する。なお、パスフレーズは、これら機器固有情報及びプリンタ位置情報以外のデータを含んでいてもよい。
【0059】
次に、プリンタ30は、ステップS88で生成したパスフレーズを用いて、公開鍵暗号法により、公開鍵を生成する(ステップS90)。続いて、プリンタ30は、この生成した公開鍵をEEPROM45に格納して保持しておく(ステップS92)。図9は、EEPROM45の一部の領域に形成される公開鍵格納部EP10の構成を示す図である。この図9に示すように、公開鍵格納部EP10に、生成した公開鍵を格納して、保持する。なお、公開鍵を生成する際に、秘密鍵も生成された場合には、この秘密鍵は格納されずに破棄される。
【0060】
このステップS92の後、上述したステップS50の処理に戻る。これにより、本実施形態に係る公開鍵生成処理が終了する。
【0061】
次に、公開鍵を印刷クライアント20が取得する場合における、印刷クライアント20及びプリンタ30の処理について説明する。
【0062】
図10は、印刷クライアント20で実行される公開鍵要求処理を説明するフローチャートである。この公開鍵要求処理は、印刷クライアントのROM68又はハードディスク76に格納されている公開鍵要求プログラムをCPU64が読み込んで実行することにより実現される処理である。また、本実施形態においては、この公開鍵要求処理は、ユーザが印刷クライアント20に公開鍵を要求する処理を起動するように指示入力した場合に、起動され、実行される処理である。
【0063】
図10に示すように、この公開鍵要求処理においては、まず印刷クライアント20は、プリンタ30との接続を確立する(ステップS100)。続いて、印刷クライアント20は、プリンタ30へ認証情報を送信する(ステップS102)。本実施形態においては、この認証情報として、印刷クライアントを特定するための印刷クライアントIDと、パスワードとの組み合わせを用いている。したがって、印刷クライアント20は、印刷クライアントIDとパスワードとを、プリンタ30へ送信する。
【0064】
これに続いて、印刷クライアント20は、プリンタ30から認証が受け入れられたか否かを示す認証結果を受信するので、この認証結果に基づいて、プリンタ30で認証が認められたかどうかを判断する(ステップS104)。認証が認められなかった場合(ステップS104:No)には、上述したステップS102からを繰り返す。
【0065】
一方、認証が認められた場合(ステップS104:Yes)には、印刷クライアント20は、公開鍵取得要求をプリンタ30へ送信する(ステップS106)。そして、プリンタ30から公開鍵を受信したかどうかを判断する(ステップS108)。プリンタ30から公開鍵を受信していない場合(ステップS108:No)には、このステップS108を繰り返して待機する。
【0066】
一方、プリンタ30から公開鍵を受信した場合(ステップS108:Yes)には、この公開鍵を格納する(ステップS110)。本実施形態においては、印刷クライアント20は、ハードディスク76に公開鍵テーブルTB10を設けており、取得した公開鍵は、この公開鍵テーブルTB10に格納され保持される。
【0067】
図11は、この公開鍵テーブルTB10の構成の一例を示す図である。この図11に示すように、公開鍵テーブルTB10は、プリンタを特定するための情報を格納する項目TD10と、取得した公開鍵をプリンタに対応させて格納する項目TD11とを備えている。このように、公開鍵テーブルTB10は、複数のプリンタに関する公開鍵を、各プリンタ毎に保持することができるようになっている。また、このようにハードディスク78の公開鍵テーブルTB10に公開鍵を格納することにより、印刷クライアント20の電源がオフされて再び電源が投入された場合でも、それ以前に取得した公開鍵をそのままハードディスク78から読み出して使用することができるようになっている。
【0068】
図10に示すように、次に、印刷クライアント20は、プリンタ30との接続を切断する(ステップS112)。これにより、図10に示した公開鍵要求処理は終了する。
【0069】
次に、図12に基づいて、印刷クライアント20の公開鍵要求処理に対応して、プリンタ30で実行される公開鍵送信処理について説明する。この図12は、プリンタ30で実行される公開鍵送信処理を説明するフローチャートである。この公開鍵送信処理は、プリンタのROM44又はハードディスク58に格納されている公開鍵送信プログラムをCPU40が読み込んで実行することにより実現される処理である。本実施形態においては、この公開鍵送信処理は、一定の時間間隔で定常的に実行されている処理である。また、この公開鍵送信処理は、上述した公開鍵要求処理に対応した処理である。
【0070】
図12に示すように、プリンタ30は、印刷クライアント20からの接続を待っており、印刷クライアント20から接続を要求された場合に、印刷クライアント20と接続を確立する(ステップS120)。これは上述した印刷クライアント20側のステップS100に対応している。続いて、プリンタ30は、印刷クライアント20から認証情報を受信したかどうかを判断する(ステップS122)。認証情報を受信していない場合(ステップS122:No)には、このステップS122の処理を繰り返して待機する。
【0071】
一方、認証情報を印刷クライアント20から受信した場合(ステップS122:Yes)には、その認証情報がこのプリンタ30に予め登録してある認証情報と一致するかどうかを判断する(ステップS124)。具体的には、上述したように、印刷クライアント20から印刷クライアントIDとパスワードが認証情報として送信されてくるので、この印刷クライアントIDとパスワードが、このプリンタ30に予め登録されている印刷クライアントIDとパスワードと一致するかどうかを判断する。
【0072】
認証情報が一致しなかった場合(ステップS124:No)には、プリンタ30は印刷クライアント20に、認証が受け入れられなかった旨の認証結果を送信し(ステップS126)、後述するステップS136において、印刷クライアント20との接続を終了する(ステップS136)。一方、認証が一致した場合(ステップS124:Yes)には、プリンタ30は印刷クライアント20に、認証が受け入れられた旨の認証結果を送信する(ステップS128)。
【0073】
次に、プリンタ30は、印刷クライアント20から公開鍵取得要求を受信したかどうかを判断する(ステップS130)。この公開鍵取得要求を受信していない場合(ステップS130:No)には、このステップS130の処理を繰り返して待機する。
【0074】
公開鍵取得要求を受信した場合(ステップS130:Yes)には、プリンタ30は、EEPROM45の公開鍵格納部EP10から、公開鍵を読み出して取得する(ステップS132)。続いて、プリンタ30は、取得した公開鍵を、印刷クライアント20に送信する(ステップS134)。そして、印刷クライアント20との接続を終了し(ステップS136)、上述したステップS120に戻る。
【0075】
次に、印刷クライアント20が印刷を行いたいときに、その印刷要求をプリンタ30に送信する場合の印刷クライアント20及びプリンタ30の処理について、詳しく説明する。
【0076】
図13は、印刷クライアント20で実行される印刷要求処理を説明するフローチャートである。この印刷要求処理は、印刷クライアントのROM68又はハードディスク76に格納されている印刷要求プログラムをCPU64が読み込んで実行することにより実現される処理である。本実施形態においては、この印刷要求処理は、ユーザが印刷クライアントに印刷指示を入力した場合に、起動され、実行される処理である。
【0077】
この図13に示すように、印刷クライアント20は、ユーザの印刷要求に基づいて、印刷データD05を作成する(ステップS200)。この印刷データD05は、プリンタ30が通常のプリンタである場合に、印刷を実際に行うのに必要となるデータである。
【0078】
次に、印刷クライアント20は、公開鍵テーブルTB10から、プリンタ30の公開鍵を読み出す(ステップS202)。続いて、印刷クライアント20は、プリンタ30の公開鍵を用いて、印刷データD05を暗号化して、印刷送信用データD10を生成する(ステップS204)。なお、印刷送信用データD10は、印刷データ以外のデータを含んでいてもよい。
【0079】
次に、印刷クライアント20は、プリンタ30との接続を確立する(ステップS206)。なお、このプリンタ30との接続の確立は、印刷クライアント20とプリンタ30との間の接続仕様によっては、必要な処理ではない。続いて、印刷クライアント20は、この暗号化した印刷送信用データD10を、プリンタ30に送信する(ステップS208)。
【0080】
次に、印刷クライアント20は、プリンタ30から印刷結果情報を受信したかどうかを判断する(ステップS210)。印刷結果情報を受信していない場合(ステップS210:No)には、このステップS210の処理を繰り返して待機する。一方、印刷結果情報を受信した場合(ステップS210:Yes)には、その印刷結果情報が印刷完了通知であるかどうかを判断する(ステップS212)。
【0081】
この印刷結果情報が印刷完了通知である場合(ステップS212:Yes)には、プリンタ30で印刷が正常に終了したことを意味しているので、ユーザにプリンタ30で印刷が完了した旨を通知する(ステップS214)。一方、受信した印刷結果情報が印刷完了通知でない場合(ステップS212:No)には、その印刷結果情報が解読不能通知であるかどうかを判断する(ステップS216)。
【0082】
印刷結果情報が解読不能通知である場合(ステップS216:Yes)には、ユーザに、プリンタ30で印刷送信用データD10の復号ができなかったため、印刷が行われなかった旨を通知する(ステップS218)。一方、印刷結果情報が解読不能通知でない場合(ステップS216:No)には、その他の何らかのエラーであると考えられるので、ユーザに、そのエラーの種類に応じた通知を行う(ステップS220)。
【0083】
これらステップS214、ステップS218、及び、ステップS220の通知の後、印刷クライアント20は、プリンタ30との接続を切断する(ステップS222)。これにより、この印刷クライアント20における印刷要求処理は終了する。
【0084】
次に、図14に基づいて、印刷クライアント20の印刷要求処理に対応して、プリンタ30で実行される印刷実行処理について説明する。図14は、プリンタ30で実行される印刷実行処理を説明するフローチャートである。この印刷実行処理は、プリンタ30のROM44又はハードディスク58に格納されている印刷実行プログラムをCPU40が読み込んで実行することにより実現される処理である。本実施形態においては、この印刷実行処理は、一定の時間間隔で定常的に実行されている処理である。
【0085】
図14に示すように、プリンタ30は、印刷クライアント20からの接続を待っており、印刷クライアント20から接続を要求された場合には、プリンタ30は、プリンタケーブル10を介した印刷クライアント20と接続を確立する(ステップS250)。この処理も、印刷クライアント20とプリンタ30との間の接続仕様によっては、必ずしも必要な処理ではない。印刷クライアント20と接続が確立した後、プリンタ30は、印刷送信用データD10を受信したかどうかを判断する(ステップS252)。何ら印刷送信用データD10を受信していない場合(ステップS252:No)には、このステップS252の処理を繰り返して待機する。
【0086】
一方、印刷送信用データD10を受信した場合(ステップS252:Yes)には、プリンタ30は自らの機器固有情報を取得する(ステップS254)。続いて、プリンタ30は、位置検出部54から、その時点におけるプリンタ30のプリンタ位置情報を取得する(ステップS256)。このようにプリンタ位置情報を、その都度、位置検出部54から取得することとしているのは、秘密鍵を生成する時のプリンタ30の位置が、公開鍵を生成した時のプリンタ30の位置と異なる場合には、このプリンタ30で印刷ができないようにするためである。
【0087】
次に、プリンタ30は、機器固有情報とプリンタ位置情報とに基づいて、パスフレーズを作成する(ステップS258)。このパスフレーズの作成手法は、上述した公開鍵生成処理におけるステップS88と同じ手法である必要がある。なぜなら、パスフレーズが異なると、プリンタ30で生成した公開鍵で暗号化された印刷送信用データを復号できる秘密鍵が、生成できなくなってしまうからである。
【0088】
次に、プリンタ30は、生成したパスフレーズを用いて、公開鍵暗号法により秘密鍵を生成する(ステップS260)。このステップS260で使用するパスフレーズは、プリンタ30の設置位置が移動されていなければ、上述した公開鍵生成処理におけるステップS88で使用したパスフレーズと同じである。このため、ステップS90で生成した公開鍵に対応する秘密鍵が生成される。続いて、プリンタ30は、生成された秘密鍵を用いて、受信した印刷送信用データD10を復号して、印刷データD05を取得する(ステップS262)。
【0089】
次に、プリンタ30は、秘密鍵を用いて印刷送信用データD10の復号ができたかどうかを判断する(ステップS264)。復号ができた場合(ステップS264:Yes)には、得られた印刷データD05に基づいて、印刷エンジン52を駆動した印刷を実行する(ステップS266)。具体的には、印刷データD05の言語解釈を行い、印刷エンジン52に適合した印刷要求データを生成する。そして、この印刷要求データを印刷エンジン52に送信することにより、印刷エンジン52で印刷用紙等に印刷が行われる。
【0090】
この印刷が正常に完了した時点で、プリンタ30は、印刷が正常に終了した旨の印刷完了通知を、印刷結果情報として、印刷クライアント20に送信する(ステップS268)。
【0091】
これに対して、ステップS264において、印刷送信用データD10の復号ができなかったと判断した場合(ステップS264:No)には、解読不能通知を印刷結果情報として、印刷クライアント20に送信する(ステップS270)。
【0092】
これらステップS268又はステップS270の後、プリンタ30は、印刷クライアント20との接続を終了する(ステップS272)。そして、上述したステップS250の処理に戻る。
【0093】
以上のように、本実施形態に係る印刷システムによれば、プリンタ30の公開鍵は、サービスプロバイダ15で認証を受けた正当な権限を有する者が指示をした場合に限り、プリンタ30で生成することができ、これをプリンタ30が格納することができる。このため、プリンタ30が正常な印刷をできる設置位置を限定することができる。
【0094】
すなわち、サービスプロバイダ15は、公開鍵の生成を要求した者が、正当な権限を有する者であるかどうかを、公開鍵生成認証情報に基づいて判断する。そして、この公開鍵生成認証情報が一致するとサービスプロバイダ15が判断した場合に限り、プリンタ30は、少なくともその時点におけるプリンタ30のプリンタ位置情報を取得して、このプリンタ位置情報を含むパスフレーズを用いて、公開鍵を生成し、プリンタ30内に保持する。一方、正当な権限を有する者でないとサービスプロバイダ15が判断した場合には、プリンタ30は、公開鍵を生成しない。
【0095】
そして、プリンタ30は、ユーザからの要求に基づいて、この公開鍵を印刷クライアント20に送信する。印刷クライアント20は、プリンタ30から送信された公開鍵を、ハードディスク76に格納する。印刷クライアント20がプリンタ30に印刷データD05を送信する際には、この公開鍵を用いて暗号化した印刷送信用データD10として送信する。プリンタ30では、印刷送信用データD10を受信する都度、その時点におけるプリンタ位置情報を取得し、このプリンタ位置情報を含むパスフレーズを用いて秘密鍵を生成する。そして、プリンタ30は、この秘密鍵で印刷送信用データD10を復号し、復号できた場合は印刷を行い、復号できなかった場合には印刷を行わない。このため、プリンタ30において公開鍵を生成した際のプリンタ位置情報と、同じくプリンタ30において秘密鍵を生成する際のプリンタ位置情報が異なると、受信した印刷送信用データD10の復号が適正にできないこととなり、正常な印刷結果を得ることができない。これにより、プリンタ30が使用できる位置を、正当な権限を有する者が公開鍵の生成を指示した場所に限定することができる。
【0096】
また、正当な権限を有する操作者であれば、サービスプロバイダ15の認証を得て、何度でも公開鍵の生成をプリンタ30に指示することができるので、プリンタメーカ等の正当な理由でプリンタ30の設置場所を変更する場合でも、このプリンタ30を引き続き、使用することができる。すなわち、正当な権限を有する操作者が、プリンタ30の新たな設置場所で、再度、サービスプロバイダ15に認証を要求すれば、その場所のプリンタ位置情報に基づいて、新たな公開鍵がプリンタ30で生成される。このため、プリンタ30を有効に活用することができるようになる。
【0097】
なお本発明は上記実施形態に限定されずに種々に変形可能である。例えば、上述した実施形態においては、サービスプロバイダ15は、印刷クライアント20にネットワークNTを介して接続されると説明したが、他の印刷クライアントと接続されてもよい。また、サービスプロバイダ15は、印刷クライアント以外のコンピュータと接続されてもよい。また、プリンタ30も、直接ネットワークNTに接続されるようにしてもよい。
【0098】
また、上述した各実施形態においては、正当な権限を有する操作者であるかどうかを示す公開鍵生成認証情報をIDとパスワードの組み合わせで構成したが、公開鍵生成認証情報は、IDとパスワードの組み合わせに限るものではない。例えば、サービスプロバイダ15に、正当な権限を有する者の指紋を登録しておき、操作者の指紋を読み取ってサービスプロバイダ15に送信し、指紋が一致した場合に、正当な権限を有する者であると判断するようにしてもよい。
【0099】
また、使用できる位置を制限するデータ受信装置としてプリンタを例示して説明したが、本発明はプリンタに限定されるものではない。さらに、データ送信装置も、印刷クライアントに限定されるものではない。
【0100】
例えば、データ送受信システムにおけるデータ送信装置が画像撮影用のデジタルカメラであり、データ受信装置がデジタルカメラで撮影した画像データを蓄積するデータサーバであってもよい。この場合、デジタルカメラから送信されるデータはデータサーバで生成された公開鍵を用いて暗号化されており、このデータを受信したデータサーバでは、上述した手法により秘密鍵を生成し、このデータの復号を行うこととなる。そして、受信したデータの復号ができた場合には、そのデータを蓄積し、復号できなかった場合には、そのデータを蓄積しないこととなる。
【0101】
また、データ送受信システムにおけるデータ送信装置がパーソナルコンピュータであり、データ受信装置がそのパーソナルコンピュータから送信された画像データを投影するプロジェクタであってもよい。この場合、パーソナルコンピュータから送信されるデータはプロジェクタで生成された公開鍵を用いて暗号化されており、このデータを受信したプロジェクタでは、上述した手法により秘密鍵を生成し、このデータの復号を行うこととなる。そして、受信したデータの復号ができた場合には、そのデータを投影し、復号できなかった場合には、そのデータを投影しないこととなる。
【0102】
さらには、データ送受信システムにおけるデータ送信装置が音楽等のコンテンツサーバであり、データ受信装置がコンテンツサーバから送信された音楽等のコンテンツデータの再生装置であってもよい。この場合、コンテンツサーバから送信されるデータは再生装置で生成された公開鍵を用いて暗号化されており、このデータを受信した再生装置では、上述した手法により秘密鍵を生成し、このデータの復号を行うこととなる。そして、受信したデータの復号ができた場合には、そのデータを再生し、復号できなかった場合には、そのデータを再生しないこととなる。
【0103】
また、上述した実施形態では、プリンタ30の印刷媒体が印刷用紙である場合を例に説明したが、印刷媒体はこれに限るものではなく、例えば、OHPシート等の他の印刷媒体であっても本発明を適用することができる。
【0104】
さらに、上述の実施形態で説明した各処理については、これら各処理を実行するためのプログラムをフレキシブルディスク、CD−ROM(Compact Disc-Read Only Memory)、ROM、メモリカード等の記録媒体に記録して、記録媒体の形で頒布することが可能である。この場合、このプログラムが記録された記録媒体をサービスプロバイダ15、印刷クライアント20及び/又はプリンタ30に読み込ませ、実行させることにより、上述した実施形態を実現することができる。
【0105】
また、サービスプロバイダ15、印刷クライアント20及び/又はプリンタ30は、オペレーティングシステムや別のアプリケーションプログラム等の他のプログラムを備える場合がある。この場合、サービスプロバイダ15、印刷クライアント20及び/又はプリンタ30の備える他のプログラムを活用し、記録媒体にはサービスプロバイダ15、印刷クライアント20及び/又はプリンタ30が備えるプログラムの中から、上述した実施形態と同等の処理を実現するプログラムを呼び出すような命令を記録するようにしてもよい。
【0106】
さらに、このようなプログラムは、記録媒体の形ではなく、ネットワークを通じて搬送波として頒布することも可能である。ネットワーク上を搬送波の形で伝送されたプログラムは、サービスプロバイダ15、印刷クライアント20及び/又はプリンタ30に取り込まれて、このプログラムを実行することにより上述した実施形態を実現することができる。
【0107】
また、記録媒体にプログラムを記録する際や、ネットワーク上を搬送波として伝送される際に、プログラムの暗号化や圧縮化がなされている場合がある。この場合には、これら記録媒体や搬送波からプログラムを読み込んだサービスプロバイダ15、印刷クライアント20及び/又はプリンタ30は、そのプログラムの復号や伸張を行った上で、実行する必要がある。
【0108】
【発明の効果】
以上説明したように、本発明に係る印刷システムによれば、印刷クライアントと、この印刷クライアントからの要求に基づいて印刷を行うプリンタと、少なくとも前記印刷クライアントに接続されるサービスプロバイダとを有する印刷システムにおいて、プリンタが正常に印刷を行う位置を、プリンタが公開鍵を生成した時のプリンタの位置に制限することができる。
【図面の簡単な説明】
【図1】本発明の一実施形態に係る印刷システムの構成の一例を示す図。
【図2】本発明の一実施形態に係るプリンタのハードウェア構成の一例を示す図。
【図3】本発明の一実施形態に係る印刷クライアントの構成の一例を示す図。
【図4】本発明の一実施形態に係るサービスプロバイダの構成の一例を示す図。
【図5】本発明の一実施形態において、公開鍵と秘密鍵とを用いた、印刷データの暗号化と復号を説明するための概念図。
【図6】本発明の一実施形態に係る印刷クライアントが実行する公開鍵生成要求処理を説明するフローチャートを示す図。
【図7】本発明の一実施形態に係るサービスプロバイダが実行する認証処理を説明するフローチャートを示す図。
【図8】本発明の一実施形態に係るプリンタが実行する公開鍵生成処理を説明するフローチャートを示す図。
【図9】本発明の一実施形態に係るプリンタが備える公開鍵格納部の構成の一例を示す図。
【図10】本発明の一実施形態に係る印刷クライアントが実行する公開鍵要求処理を説明するフローチャートを示す図。
【図11】本発明の一実施形態に係る印刷クライアントが備える公開鍵テーブルの構成の一例を示す図。
【図12】本発明の一実施形態に係るプリンタが実行する公開鍵送信処理を説明するフローチャートを示す図。
【図13】本発明の一実施形態に係る印刷クライアントが実行する印刷要求処理を説明するフローチャートを示す図。
【図14】本発明の一実施形態に係るプリンタが実行する印刷実行処理を説明するフローチャートを示す図。
【符号の説明】
NT ネットワーク
10 ケーブル
15 サービスプロバイダ
20 印刷クライアント
30 プリンタ
40 CPU
42 RAM
44 ROM
46 内部バス
48、50、56 インターフェース
52 印刷エンジン
54 位置検出部
58 ハードディスク
60 コンピュータ本体
62 ディスプレイ
64 CPU
66 RAM
68 ROM
70 内部バス
72、73、74、78 インターフェース
76 ハードディスク
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a printing system and a control method thereof, and more particularly, to a printing system and a control method thereof in which a place where a printer can perform normal printing is limited.
[0002]
[Prior art]
In recent years, as a business model using a printer, a form in which a printer maker rents a printer to a user free of charge and the user pays a usage fee to the printer maker for the number of prints using the printer has been attracting attention. . In such a business model, besides charging based on the number of prints, charging based on the usage period, charging based on the amount of ink used, and the like can be considered.
[0003]
[Patent Document 1]
JP-A-11-331144
[0004]
[Problems to be solved by the invention]
However, in such a business model, if a user rents a printer lent from a printer maker without permission or rents it to another person, the printer maker can charge for the use of the printer. Will be gone. For this reason, the printer manufacturer wants to limit the place where the lent printer can be used, that is, the place where normal printing can be performed, to the place of the lent user.
[0005]
The present invention has been made in view of the above problems, and an object of the present invention is to provide a printing system and a control method thereof, in which a printer can perform normal printing only in a place that has been authenticated in advance.
[0006]
[Means for Solving the Problems]
In order to solve the above problems, a printing system according to the present invention is a printing system including a printing client, a printer that performs printing based on a request from the printing client, and at least a service provider connected to the printing client. The printer includes printer position information obtaining means for obtaining printer position information for specifying a location where the printer is installed, and the service provider has a right to generate a public key. A determination unit that determines whether or not the printer has the right to perform the determination of the service location. Printer position information is acquired from the information acquisition means, and this is referred to as first printer position information Rutotomoni, using a passphrase comprising at least the first printer position information to generate a public key, the public key generation means, and further, it is characterized.
[0007]
In this case, the printer may further include a first public key storage unit that stores the public key generated by the public key generation unit.
[0008]
In this case, the printer further includes a public key transmitting unit that reads a public key from the public key first storage unit and transmits the public key to the print client, wherein the print client receives the public key received from the printer. May be further provided.
[0009]
In this case, the print client reads out a public key from the print data generating unit and the public key second storage unit, which generates print data for printing by the printer, and converts the print data with the public key. Print data transmitting means for transmitting the encrypted print data to the printer, wherein the printer further receives the print data encrypted with the public key. Receiving means, printer position information acquiring means for acquiring printer position information from the printer position information acquiring means when the print data is received, and using the acquired printer position information as second printer position information; Secret key generation means for generating a secret key using a passphrase including at least position information, and the print data receiving means using the secret key It decodes the received the print data, and decoding means, may be provided with a.
[0010]
In this case, the print client further includes an authentication information requesting unit for requesting authentication information from the operator, and the determination unit of the service provider acquires the input authentication information and registers the obtained authentication information. It may be determined whether or not the authentication information matches the existing authentication information. If the two match, the operator may be determined to be a person who has valid authority.
[0011]
Further, when the public key generation means of the printer generates a public key, even if a secret key is generated, the secret key may be destroyed.
[0012]
Further, the printer executes printing based on the print data when the print data can be decrypted using the secret key, and executes the printing based on the print data when the print data cannot be decrypted using the secret key. Further, a selective print execution unit that does not execute printing based on the print data may be further provided.
[0013]
Note that the present invention can also be realized as a control method for controlling a printing system. Further, it can be realized as a program for controlling the printing system and a recording medium on which the program is recorded.
[0014]
BEST MODE FOR CARRYING OUT THE INVENTION
In the printing system according to the present embodiment, the service provider performs authentication for generating a public key, and if the authentications match, the printer sends a passphrase including at least printer location information indicating the location where the printer is installed. A public key is generated using the public key, and this is held. Then, the printer provides the public key to the print client as needed. On the other hand, if the authentications at the service provider do not match, the printer does not generate a public key.
[0015]
When the print client transmits the print data to the printer, the print client encrypts the print data using the obtained public key and transmits the encrypted print data as print transmission data. When the printer that has received the print transmission data generates a secret key using the passphrase including at least the printer position information at the time of reception at the time of reception, the print transmission data can be decrypted with the secret key. The printing is executed only for the printer. This will be described in more detail below.
[0016]
First, a configuration of a printing system according to the present embodiment will be described with reference to FIG. FIG. 1 is a block diagram illustrating a hardware configuration of a printing system according to the present embodiment.
[0017]
As shown in FIG. 1, the printing system according to the present embodiment includes a print client 20 and a printer 30 connected via a printer cable 10. That is, the printer 30 is locally connected to the print client 20. However, the print client 20 and the printer 30 may be connected by a network using wireless or Ethernet (registered trademark). In this case, a plurality of print clients 20 may be connected to one printer 30.
[0018]
Further, the print client 20 is connected to a network NT such as the Internet or Ethernet (registered trademark). The network NT is connected to a service provider 15 that determines whether or not a person who has requested generation of a public key is a person who has valid authority for generating a public key.
[0019]
The print client 20 is configured by, for example, various computers called host computers and personal computers. In the present embodiment, in particular, the print client 20 generates print transmission data obtained by encrypting print data with a public key, and transmits the print transmission data to the printer 30 via the printer cable 10. The print client 20 is not limited to a computer, but may be, for example, a digital camera that needs to print a captured image, or a content server that stores print image data as content.
[0020]
Further, in the present embodiment, the service provider 15 authenticates whether the person who has requested the generation of the public key is a person having the right authority, and it is recognized that the service provider 15 has the right authority. Only in this case, the printer 30 generates a public key by public key cryptography. The public key generated by the printer 30 is held by the printer 30, transmitted to the print client 20 in response to a request from a valid print client 20, and stored therein.
[0021]
When transmitting the print data to the printer 30, the print client 20 encrypts the print data with the public key and transmits the encrypted print data to the printer 30 as print transmission data. The printer 30 receives the print transmission data from the print client 20, and decrypts the print transmission data with a secret key generated using a passphrase including at least the printer position information at that time. If the print transmission data can be decrypted, printing based on the print transmission data is performed. If the print transmission data cannot be decrypted, printing based on the print transmission data is performed. Absent.
[0022]
Further, in the present embodiment, the printer 30 is configured so that a normal print result cannot be obtained with print data not encrypted with the public key. That is, the unencrypted print data is handled by the printer 30 as print transmission data that cannot be decrypted using the secret key.
[0023]
FIG. 2 is a block diagram for explaining the internal configuration of the printer 30. As shown in FIG. 2, the printer 30 includes a CPU (Central Processing Unit) 40, a RAM (Random Access Memory) 42, a ROM (Read Only Memory) 44, and an EEPROM (Electrically Erasable Programmable ROM) 45. These are connected to each other via an internal bus 46. Further, a communication interface 48 is connected to the internal bus 46, and the printer 30 is connected to the printer cable 10 via the communication interface 48. Further, an interface 50 is connected to the internal bus 46, and a print engine 52 is connected to the interface 50. In the present embodiment, the EEPROM 45 functions as a rewritable nonvolatile storage device.
[0024]
Further, a position detection unit 54 is connected to the internal bus 46. The position detecting section 54 has a function of specifying the position where the printer 30 is installed. In the present embodiment, the printer 30 is configured by, for example, a GPS (global positioning system), and the latitude, longitude, and altitude of the position where the printer 30 is installed can be specified. It is said that the GPS accuracy at the present time is about ± 10 m in latitude, longitude and altitude.
[0025]
However, the position detecting unit 54 is not limited to the configuration using the GPS, and may specify the position of the printer 30 using a mobile communication technology such as a PHS (Personal Handyphone System). Further, when GPS and PHS are used in combination and a GPS radio wave cannot be normally received indoors, the position may be specified based on the PHS radio wave.
[0026]
Further, a hard disk 58 is connected to the internal bus 46 via an interface 56. In the present embodiment, the hard disk 58 functions as a rewritable nonvolatile storage device.
[0027]
FIG. 3 is a block diagram for explaining the internal configuration of the print client 20. As shown in FIG. 3, the print client 20 according to the present embodiment includes a computer main body 60 and a display 62.
[0028]
The computer main body 60 includes a CPU 64, a RAM 66, and a ROM 68, which are connected to each other via an internal bus 70. Further, communication interfaces 72 and 73 are connected to the internal bus 70, and the print client 20 is connected to the above-described printer cable 10 via the communication interface 72. The print client 20 is connected to the network NT via 73.
[0029]
Further, an interface 74 is connected to the internal bus 70, and a hard disk 76 as a mass storage device is connected to the interface 74. In the present embodiment, the hard disk 76 functions as a rewritable nonvolatile storage device. An interface 78 is connected to the internal bus 70, and the above-described display 62 is connected to the internal bus 70 via a cable 80 extending from the interface 78.
[0030]
FIG. 4 is a block diagram for explaining the internal configuration of the service provider 15. As shown in FIG. 4, the service provider 15 according to the present embodiment includes a computer main body 100 and a display 102.
[0031]
The computer main body 100 includes a CPU 104, a RAM 106, and a ROM 108, which are connected to each other via an internal bus 110. A communication interface 112 is connected to the internal bus 110, and the service provider 15 is connected to the network NT via the communication interface 72.
[0032]
Further, an interface 114 is connected to the internal bus 110, and a hard disk 116 as a mass storage device is connected to the interface 114. In the present embodiment, the hard disk 116 functions as a rewritable nonvolatile storage device. Further, an interface 118 is connected to the internal bus 110, and the above-described display 102 is connected to the internal bus 110 via a cable 120 extending from the interface 118.
[0033]
Next, in the printing system according to the present embodiment, processing when the print client 20 performs printing with the printer 30 will be schematically described.
[0034]
In the present embodiment, the service provider 15 authenticates whether or not the user has a legitimate authority to request generation of a public key. In the present embodiment, the print client 20 allows the operator to input the public key generation authentication information, transmits the public key generation authentication information to the service provider 15, and determines whether or not the user has the right authority. I do. In the present embodiment, the public key generation authentication information is composed of a combination of an ID and a password.
[0035]
If the authentications match, the service provider 15 sends the print client 20 authentication result information indicating that the authentications match. The print client 20 transmits to the printer 30 a public key generation request and authentication result information indicating that the authentications match. The printer 30 having received these generates a public key by a public key cryptography using a passphrase including at least the printer position information at that time. Then, the printer 30 stores the generated public key in the EEPROM 45.
[0036]
When the print client 20 having valid authority requests the public key, the printer 30 reads the public key from the EEPROM 45 and transmits the read public key to the print client 20 via the printer cable 10.
[0037]
The print client 20 stores the received public key in the hard disk 74. Next, as shown in FIG. 5, the user of the print client 20 creates print data D05, which is data to be printed, and designates the printer 30 to the print client 20 to instruct printing.
[0038]
The print client 20 encrypts the print data D05 using the public key of the printer 30, and generates print transmission data D10. Here, the print data D05 indicates the original print data necessary for performing printing by driving the print engine 52 by the printer 30. The print transmission data D10 may include data other than the print data D05 shown in FIG.
[0039]
The printer 30 that has received the print transmission data D10 temporarily stores the received print transmission data D10 in the RAM 42 as shown in FIG. Then, the printer 30 decrypts the encrypted print transmission data D10 using the secret key. That is, the printer 30 generates a secret key by public key cryptography using a passphrase including at least the printer position information at that time. In this manner, by generating a secret key every time the print transmission data D10 is to be decrypted, if the installation location of the printer 30 is moved, the secret key is generated using the public key generated before the movement. The converted print transmission data cannot be decrypted by the moved printer 30.
[0040]
Subsequently, the printer 30 determines whether the print transmission data D10 has been successfully decrypted. If the print transmission data D10 has been successfully decoded, printing is performed based on the print data D05 obtained by decoding the print transmission data D10, and if not, no printing is performed.
[0041]
Next, the contents of the above-described processing will be described in detail with reference to a flowchart. First, a process for generating a public key will be described.
[0042]
FIG. 6 is a flowchart illustrating a public key generation request process performed by the print client 20. The public key generation request processing is realized by the CPU 64 reading and executing a public key generation request program stored in the ROM 68 or the hard disk 76 of the print client 20. Further, in the present embodiment, the public key generation request processing is such that an operator (for example, a person who maintains the maker of the printer 30) operates the print client 20 to execute the public key generation request processing. Is started and executed.
[0043]
As shown in FIG. 6, when the public key generation request processing is executed, the print client 20 first requests the operator to input the public key generation authentication information (step S10). In the present embodiment, the operator inputs an ID and a password as public key generation authentication information from a keyboard or the like of the print client 20.
[0044]
Next, the print client 20 determines whether the public key generation authentication information has been input (step S12). If the public key generation authentication information has not been input (step S12: No), the process of step S12 is repeated to wait.
[0045]
On the other hand, when the public key generation authentication information is input (step S12: Yes), the print client 20 establishes a connection with the service provider 15 via the network NT (step S14). For data transmission / reception, for example, contents are encrypted by SSL or the like, and then exchanged. The same applies to the service provider 15 of the other party. Then, the print client 20 transmits the public key generation authentication information to the service provider 15 (Step S16).
[0046]
Next, since the print client 20 receives the authentication result information from the service provider 15, the print client 20 determines whether the authentication result information indicates that the public key generation authentication information matches (step S18). If the authentication result information indicates that the public key generation authentication information matches (step S18: Yes), the print client 20 transmits a public key generation request to the printer 30 (step S20). Subsequently, the print client 20 transmits authentication result information indicating that the public key generation authentication information matches the printer 30 (step S22).
[0047]
Next, the print client 20 disconnects the connection with the service provider 15 (step S24). On the other hand, if it is determined in step S18 that the authentication result information that the public key generation authentication information does not match is received (step S18: No), the process jumps to step S24 to establish a connection with the service provider 15. Disconnect.
[0048]
Thereby, the public key generation request processing according to the present embodiment ends.
[0049]
FIG. 7 is a flowchart illustrating an authentication process performed by the service provider 15. This authentication processing is realized by the CPU 104 reading and executing an authentication program stored in the ROM 108 or the hard disk 116 of the service provider 15. In the present embodiment, the authentication process is a process that is constantly executed at regular time intervals.
[0050]
As shown in FIG. 7, in the public key generation processing, the service provider 15 is waiting for a connection from the print client 20 (step S50). Then, when connected to the print client 20, the service provider 15 determines whether public key generation authentication information has been received from the print client 20 (step S52). If the public key generation authentication information has not been received (step S52: No), the process of step S52 is repeated to wait.
[0051]
On the other hand, if the public key generation authentication information has been received (step S52: Yes), the service provider 15 determines whether the public key generation authentication information matches information registered in advance (step S54). ). As described above, in the present embodiment, the public key generation authentication information is composed of an ID and a password, so that the ID and the password match the ID and the password registered in the hard disk 116 in advance. Judge whether or not.
[0052]
If it is determined that the public key generation authentication information does not match (step S54: No), authentication result information indicating that the public key generation authentication information does not match is transmitted to the print client 20 (step S56). Then, the connection with the print client 20 is terminated (step S60).
[0053]
On the other hand, when it is determined in step S54 that the public key generation authentication information matches (step S54: Yes), authentication result information indicating that the public key generation authentication information matches is transmitted to the print client 20. (Step S58). Then, the connection with the print client 20 is terminated (step S60), and the steps from step S50 are repeated.
[0054]
Next, a public key generation process executed by the printer 30 in response to a public key generation request process of the print client 20 will be described with reference to FIG. FIG. 8 is a flowchart illustrating a public key generation process performed by the printer 30. This public key generation process is realized by the CPU 40 reading and executing a public key generation program stored in the ROM 44 or the hard disk 58 of the printer 30. In the present embodiment, the public key generation process is a process that is constantly executed at a fixed time interval.
[0055]
As shown in FIG. 8, the printer 30 determines whether a public key generation request has been received from the print client 20 (step S80). If the public key generation request has not been received (step S80: No), the process of step S80 is repeated and the process stands by.
[0056]
On the other hand, when the public key generation request has been received (step S80: Yes), the printer 30 determines whether or not authentication result information indicating that the public key generation authentication information matches from the print client 20 has been received (step S80). Step S82). If the authentication result information has not been received (step S82: No), the process of step S82 is repeated to wait.
[0057]
On the other hand, if the authentication result information indicating that the public key generation authentication information matches (step S82: Yes), device-specific information is acquired (step S84). Here, the device-specific information is identification information uniquely assigned to the printer 30, and includes, for example, a manufacturing serial number and a MAC address of the printer 30.
[0058]
Next, the printer 30 acquires the printer position information at that time from the position detection unit 54 (Step S86). Subsequently, the printer 30 generates a passphrase (Step S88). Although various passphrase creation methods are conceivable, in the present embodiment, the passphrase is created simply by connecting the printer position information to the device-specific information. Note that the passphrase may include data other than the device-specific information and the printer position information.
[0059]
Next, the printer 30 generates a public key by public key cryptography using the passphrase generated in step S88 (step S90). Subsequently, the printer 30 stores the generated public key in the EEPROM 45 (step S92). FIG. 9 is a diagram showing a configuration of the public key storage unit EP10 formed in a partial area of the EEPROM 45. As shown in FIG. 9, the generated public key is stored and held in the public key storage unit EP10. If a private key is also generated when a public key is generated, the private key is discarded without being stored.
[0060]
After step S92, the process returns to step S50. Thus, the public key generation processing according to the present embodiment ends.
[0061]
Next, processing of the print client 20 and the printer 30 when the print client 20 acquires the public key will be described.
[0062]
FIG. 10 is a flowchart illustrating a public key request process performed by the print client 20. This public key request process is a process realized by the CPU 64 reading and executing a public key request program stored in the ROM 68 or the hard disk 76 of the print client. In the present embodiment, the public key request process is started and executed when the user inputs an instruction to the print client 20 to start a process for requesting a public key.
[0063]
As shown in FIG. 10, in the public key request process, first, the print client 20 establishes a connection with the printer 30 (step S100). Subsequently, the print client 20 transmits the authentication information to the printer 30 (Step S102). In the present embodiment, a combination of a print client ID for specifying a print client and a password is used as the authentication information. Therefore, the print client 20 transmits the print client ID and the password to the printer 30.
[0064]
Subsequently, the print client 20 receives the authentication result indicating whether or not the authentication has been accepted from the printer 30, and determines whether or not the printer 30 has been authenticated based on the authentication result (step S104). If the authentication has not been approved (step S104: No), the above steps from step S102 are repeated.
[0065]
On the other hand, if the authentication is approved (step S104: Yes), the print client 20 transmits a public key acquisition request to the printer 30 (step S106). Then, it is determined whether a public key has been received from the printer 30 (step S108). If the public key has not been received from the printer 30 (step S108: No), this step S108 is repeated to wait.
[0066]
On the other hand, when the public key has been received from the printer 30 (step S108: Yes), the public key is stored (step S110). In the present embodiment, the print client 20 has a public key table TB10 provided on the hard disk 76, and the acquired public key is stored and held in the public key table TB10.
[0067]
FIG. 11 is a diagram showing an example of the configuration of the public key table TB10. As shown in FIG. 11, the public key table TB10 includes an item TD10 for storing information for specifying a printer, and an item TD11 for storing the obtained public key in association with the printer. As described above, the public key table TB10 can hold public keys for a plurality of printers for each printer. In addition, by storing the public key in the public key table TB10 of the hard disk 78 in this manner, even if the power of the print client 20 is turned off and then turned on again, the public key obtained before that is directly stored in the hard disk 78. And can be used by reading them out.
[0068]
Next, as shown in FIG. 10, the print client 20 disconnects the connection with the printer 30 (step S112). Thus, the public key request process shown in FIG. 10 ends.
[0069]
Next, a public key transmission process executed by the printer 30 in response to the public key request process of the print client 20 will be described with reference to FIG. FIG. 12 is a flowchart illustrating a public key transmission process performed by the printer 30. This public key transmission processing is realized by the CPU 40 reading and executing a public key transmission program stored in the ROM 44 or the hard disk 58 of the printer. In the present embodiment, this public key transmission process is a process that is constantly executed at fixed time intervals. This public key transmission process is a process corresponding to the above-described public key request process.
[0070]
As shown in FIG. 12, the printer 30 is waiting for a connection from the print client 20, and establishes a connection with the print client 20 when a connection is requested from the print client 20 (step S120). This corresponds to step S100 on the print client 20 side described above. Subsequently, the printer 30 determines whether authentication information has been received from the print client 20 (step S122). If the authentication information has not been received (step S122: No), the process of step S122 is repeated to wait.
[0071]
On the other hand, when the authentication information has been received from the print client 20 (step S122: Yes), it is determined whether the authentication information matches the authentication information registered in the printer 30 in advance (step S124). Specifically, as described above, since the print client ID and the password are transmitted as authentication information from the print client 20, the print client ID and the password are registered with the print client ID registered in the printer 30 in advance. Determine if it matches the password.
[0072]
If the authentication information does not match (step S124: No), the printer 30 transmits an authentication result indicating that the authentication has not been accepted to the print client 20 (step S126). The connection with the client 20 is terminated (step S136). On the other hand, if the authentications match (step S124: Yes), the printer 30 transmits an authentication result indicating that the authentication has been accepted to the print client 20 (step S128).
[0073]
Next, the printer 30 determines whether a public key acquisition request has been received from the print client 20 (step S130). If the public key acquisition request has not been received (step S130: No), the process of step S130 is repeated to wait.
[0074]
If a public key acquisition request has been received (step S130: Yes), the printer 30 reads and acquires a public key from the public key storage unit EP10 of the EEPROM 45 (step S132). Subsequently, the printer 30 transmits the obtained public key to the print client 20 (Step S134). Then, the connection with the print client 20 is terminated (step S136), and the process returns to step S120.
[0075]
Next, the processing of the print client 20 and the printer 30 when transmitting the print request to the printer 30 when the print client 20 wants to perform printing will be described in detail.
[0076]
FIG. 13 is a flowchart illustrating a print request process executed by the print client 20. This print request processing is realized by the CPU 64 reading and executing a print request program stored in the ROM 68 or the hard disk 76 of the print client. In the present embodiment, the print request processing is started and executed when the user inputs a print instruction to the print client.
[0077]
As shown in FIG. 13, the print client 20 creates print data D05 based on a print request from the user (step S200). The print data D05 is data necessary for actually performing printing when the printer 30 is a normal printer.
[0078]
Next, the print client 20 reads the public key of the printer 30 from the public key table TB10 (Step S202). Subsequently, the print client 20 encrypts the print data D05 using the public key of the printer 30, and generates print transmission data D10 (step S204). The print transmission data D10 may include data other than the print data.
[0079]
Next, the print client 20 establishes a connection with the printer 30 (Step S206). The establishment of the connection with the printer 30 is not a necessary process depending on the connection specification between the print client 20 and the printer 30. Subsequently, the print client 20 transmits the encrypted print transmission data D10 to the printer 30 (Step S208).
[0080]
Next, the print client 20 determines whether or not print result information has been received from the printer 30 (step S210). If the print result information has not been received (step S210: No), the process of step S210 is repeated to wait. On the other hand, if the print result information has been received (step S210: Yes), it is determined whether the print result information is a print completion notification (step S212).
[0081]
If the print result information is a print completion notification (step S212: Yes), it means that the printing has been normally completed by the printer 30, and the user is notified that the printing has been completed by the printer 30. (Step S214). On the other hand, if the received print result information is not a print completion notification (step S212: No), it is determined whether or not the print result information is a decipherable notification (step S216).
[0082]
If the print result information is a non-decipherable notification (step S216: Yes), the user is notified that printing was not performed because the print transmission data D10 could not be decoded by the printer 30 (step S218). ). On the other hand, if the print result information is not the incomprehensible notification (step S216: No), it is considered to be some other error, and the user is notified according to the type of the error (step S220).
[0083]
After the notification of step S214, step S218, and step S220, the print client 20 disconnects the connection with the printer 30 (step S222). Thus, the print request processing in the print client 20 ends.
[0084]
Next, a print execution process executed by the printer 30 in response to a print request process of the print client 20 will be described with reference to FIG. FIG. 14 is a flowchart illustrating a print execution process performed by the printer 30. The print execution process is realized by the CPU 40 reading and executing a print execution program stored in the ROM 44 or the hard disk 58 of the printer 30. In the present embodiment, the print execution process is a process that is constantly executed at fixed time intervals.
[0085]
As shown in FIG. 14, the printer 30 is waiting for a connection from the print client 20, and when a connection is requested from the print client 20, the printer 30 connects to the print client 20 via the printer cable 10. Is established (step S250). This process is not always necessary depending on the connection specifications between the print client 20 and the printer 30. After the connection with the print client 20 is established, the printer 30 determines whether or not the print transmission data D10 has been received (step S252). If no print transmission data D10 has been received (step S252: No), the process of step S252 is repeated to wait.
[0086]
On the other hand, when the print transmission data D10 has been received (step S252: Yes), the printer 30 acquires its own device-specific information (step S254). Subsequently, the printer 30 acquires the printer position information of the printer 30 at that time from the position detection unit 54 (Step S256). The reason that the printer position information is acquired from the position detection unit 54 each time is that the position of the printer 30 when the private key is generated is different from the position of the printer 30 when the public key is generated. In this case, printing is not performed by the printer 30.
[0087]
Next, the printer 30 creates a passphrase based on the device-specific information and the printer position information (step S258). This passphrase creation method needs to be the same method as in step S88 in the above-described public key generation processing. This is because, if the passphrases are different, a secret key that can decrypt the print transmission data encrypted with the public key generated by the printer 30 cannot be generated.
[0088]
Next, using the generated passphrase, the printer 30 generates a secret key by public key cryptography (step S260). The passphrase used in step S260 is the same as the passphrase used in step S88 in the above-described public key generation process unless the installation position of the printer 30 has been moved. Therefore, a secret key corresponding to the public key generated in step S90 is generated. Subsequently, the printer 30 decrypts the received print transmission data D10 using the generated secret key to obtain the print data D05 (step S262).
[0089]
Next, the printer 30 determines whether the print transmission data D10 has been successfully decrypted using the secret key (step S264). If the decryption has succeeded (step S264: Yes), the printing that drives the print engine 52 is executed based on the obtained print data D05 (step S266). Specifically, the language interpretation of the print data D05 is performed, and print request data suitable for the print engine 52 is generated. By transmitting the print request data to the print engine 52, the print engine 52 performs printing on a print sheet or the like.
[0090]
When the printing is completed normally, the printer 30 transmits a print completion notification to the effect that the printing has been completed to the print client 20 as print result information (step S268).
[0091]
On the other hand, if it is determined in step S264 that the print transmission data D10 could not be decrypted (step S264: No), a decipherable notification is transmitted to the print client 20 as print result information (step S270). ).
[0092]
After step S268 or step S270, the printer 30 terminates the connection with the print client 20 (step S272). Then, the process returns to step S250.
[0093]
As described above, according to the printing system of the present embodiment, the public key of the printer 30 is generated by the printer 30 only when the authorized person who has been authenticated by the service provider 15 gives an instruction. Which can be stored by the printer 30. For this reason, the installation position where the printer 30 can perform normal printing can be limited.
[0094]
That is, the service provider 15 determines whether or not the person who has requested the generation of the public key is a person having valid authority based on the public key generation authentication information. Only when the service provider 15 determines that the public key generation authentication information matches, the printer 30 acquires at least the printer position information of the printer 30 at that time and uses the passphrase including the printer position information. Then, a public key is generated and held in the printer 30. On the other hand, if the service provider 15 determines that the user does not have the right, the printer 30 does not generate a public key.
[0095]
Then, the printer 30 transmits the public key to the print client 20 based on a request from the user. The print client 20 stores the public key transmitted from the printer 30 on the hard disk 76. When transmitting the print data D05 to the printer 30, the print client 20 transmits the print data D05 as print transmission data D10 encrypted using the public key. Each time the printer 30 receives the print transmission data D10, the printer 30 acquires the printer position information at that time, and generates a secret key using a passphrase including the printer position information. Then, the printer 30 decrypts the print transmission data D10 using the secret key. If the decryption is successful, the printer 30 performs printing. If the decryption is not successful, the printer 30 does not perform printing. Therefore, if the printer position information when the public key is generated in the printer 30 and the printer position information when the private key is generated in the printer 30 are different, the received print transmission data D10 cannot be properly decrypted. And a normal print result cannot be obtained. As a result, the position where the printer 30 can be used can be limited to a position where a person having valid authority instructs the generation of the public key.
[0096]
In addition, an operator having valid authority can obtain the authentication of the service provider 15 and instruct the printer 30 to generate the public key as many times as possible. This printer 30 can be used continuously even when the installation location of the printer 30 is changed. That is, if an operator having valid authority requests the service provider 15 again for authentication at a new installation location of the printer 30, a new public key is transmitted to the printer 30 based on the printer position information of the location. Generated. Therefore, the printer 30 can be effectively used.
[0097]
Note that the present invention is not limited to the above embodiment, and can be variously modified. For example, in the embodiment described above, the service provider 15 is described as being connected to the print client 20 via the network NT, but may be connected to another print client. Further, the service provider 15 may be connected to a computer other than the print client. Further, the printer 30 may be directly connected to the network NT.
[0098]
Further, in each of the above-described embodiments, the public key generation authentication information indicating whether or not the operator has valid authority is configured by a combination of an ID and a password. It is not limited to the combination. For example, the fingerprint of a person having the right authority is registered in the service provider 15, the fingerprint of the operator is read and transmitted to the service provider 15, and when the fingerprints match, the person has the right authority. May be determined.
[0099]
Also, a printer has been described as an example of a data receiving device that restricts usable positions, but the present invention is not limited to a printer. Further, the data transmission device is not limited to the print client.
[0100]
For example, the data transmission device in the data transmission / reception system may be a digital camera for capturing images, and the data reception device may be a data server that stores image data captured by the digital camera. In this case, the data transmitted from the digital camera is encrypted using a public key generated by the data server, and the data server receiving the data generates a secret key by the above-described method and generates a secret key. Decryption will be performed. Then, if the received data can be decoded, the data is stored, and if not, the data is not stored.
[0101]
Further, the data transmission device in the data transmission / reception system may be a personal computer, and the data reception device may be a projector that projects image data transmitted from the personal computer. In this case, the data transmitted from the personal computer is encrypted using the public key generated by the projector, and the projector receiving this data generates a secret key by the above-described method, and decrypts the data. Will do. Then, when the received data can be decoded, the data is projected, and when the received data cannot be decoded, the data is not projected.
[0102]
Further, the data transmission device in the data transmission / reception system may be a content server such as music, and the data reception device may be a device for reproducing content data such as music transmitted from the content server. In this case, the data transmitted from the content server is encrypted using the public key generated by the playback device, and the playback device receiving this data generates the secret key by the above-described method, and Decryption will be performed. Then, if the received data can be decoded, the data is reproduced, and if not, the data is not reproduced.
[0103]
Further, in the above-described embodiment, the case where the print medium of the printer 30 is a print sheet has been described as an example, but the print medium is not limited to this, and for example, another print medium such as an OHP sheet may be used. The present invention can be applied.
[0104]
Further, for each process described in the above embodiment, a program for executing each process is recorded on a recording medium such as a flexible disk, a CD-ROM (Compact Disc-Read Only Memory), a ROM, and a memory card. Thus, it can be distributed in the form of a recording medium. In this case, the above-described embodiment can be realized by causing the service provider 15, the print client 20, and / or the printer 30 to read and execute the recording medium on which the program is recorded.
[0105]
In addition, the service provider 15, the print client 20, and / or the printer 30 may include another program such as an operating system or another application program. In this case, the program provided by the service provider 15, the print client 20, and / or the printer 30 is used as the recording medium by utilizing other programs provided in the service provider 15, the print client 20, and / or the printer 30. An instruction for calling a program for realizing the same processing as the mode may be recorded.
[0106]
Further, such a program can be distributed not as a recording medium but as a carrier wave through a network. The program transmitted in the form of a carrier wave over the network is taken into the service provider 15, the print client 20, and / or the printer 30, and the above-described embodiment can be realized by executing the program.
[0107]
Further, when a program is recorded on a recording medium or transmitted as a carrier over a network, the program may be encrypted or compressed. In this case, the service provider 15, the print client 20, and / or the printer 30, which read the program from the recording medium or the carrier wave, need to execute the program after decoding and decompressing the program.
[0108]
【The invention's effect】
As described above, according to the printing system of the present invention, a printing system including a printing client, a printer that performs printing based on a request from the printing client, and at least a service provider connected to the printing client In, the position where the printer performs normal printing can be limited to the position of the printer when the printer generates the public key.
[Brief description of the drawings]
FIG. 1 is a diagram showing an example of a configuration of a printing system according to an embodiment of the present invention.
FIG. 2 is a diagram showing an example of a hardware configuration of a printer according to an embodiment of the present invention.
FIG. 3 is a diagram showing an example of a configuration of a print client according to an embodiment of the present invention.
FIG. 4 is a diagram showing an example of a configuration of a service provider according to an embodiment of the present invention.
FIG. 5 is a conceptual diagram illustrating encryption and decryption of print data using a public key and a secret key in one embodiment of the present invention.
FIG. 6 is a flowchart illustrating a public key generation request process executed by the print client according to the embodiment of the present invention.
FIG. 7 is a view showing a flowchart illustrating an authentication process executed by the service provider according to the embodiment of the present invention.
FIG. 8 is a flowchart illustrating a public key generation process performed by the printer according to the embodiment of the present invention.
FIG. 9 is a view showing an example of a configuration of a public key storage unit provided in the printer according to the embodiment of the present invention.
FIG. 10 is a flowchart illustrating a public key request process executed by the print client according to the embodiment of the present invention.
FIG. 11 is a view showing an example of the configuration of a public key table provided in a print client according to an embodiment of the present invention.
FIG. 12 is a flowchart illustrating a public key transmission process executed by the printer according to the embodiment of the present invention.
FIG. 13 is a flowchart illustrating a print request process executed by the print client according to the embodiment of the present invention.
FIG. 14 is a flowchart illustrating a print execution process executed by the printer according to the embodiment of the present invention.
[Explanation of symbols]
NT Network
10 Cable
15 Service Provider
20 Print Client
30 Printer
40 CPU
42 RAM
44 ROM
46 Internal bus
48, 50, 56 interface
52 Print Engine
54 Position detector
58 Hard Disk
60 Computer body
62 Display
64 CPU
66 RAM
68 ROM
70 Internal bus
72, 73, 74, 78 interface
76 Hard Disk

Claims (8)

印刷クライアントと、この印刷クライアントからの要求に基づいて印刷を行うプリンタと、少なくとも前記印刷クライアントに接続されるサービスプロバイダとを有する印刷システムであって、
前記プリンタは、プリンタの設置されている場所を特定するためのプリンタ位置情報を取得する、プリンタ位置情報取得手段を備えており、
前記サービスプロバイダは、公開鍵の生成に関して正当な権限を有する者であるかどうかを判断する判断手段を備えており、
前記プリンタは、前記サービスプロバイダの判断手段が、公開鍵の生成に関して正当な権限を有する者であると判断した場合に、前記プリンタ位置情報取得手段からプリンタ位置情報を取得し、これを第1プリンタ位置情報とするとともに、前記第1プリンタ位置情報を少なくとも含むパスフレーズを用いて、公開鍵を生成する、公開鍵生成手段を、さらに備えている、
ことを特徴とする印刷システム。
A print system comprising: a print client; a printer that performs printing based on a request from the print client; and a service provider connected to at least the print client.
The printer includes a printer position information acquisition unit that acquires printer position information for specifying a place where the printer is installed,
The service provider includes a determination unit configured to determine whether or not the user has a legitimate authority regarding generation of a public key,
The printer obtains printer position information from the printer position information obtaining means when the determination means of the service provider determines that the person has a right to generate a public key, and transfers the printer position information to the first printer. Public key generation means for generating a public key using a passphrase including at least the first printer position information as the position information,
A printing system, characterized in that:
前記プリンタは、前記公開鍵生成手段で生成した公開鍵を格納する、公開鍵第1格納手段をさらに備えることを特徴とする請求項1に記載の印刷システム。The printing system according to claim 1, wherein the printer further includes a first public key storage unit that stores the public key generated by the public key generation unit. 前記プリンタは、前記公開鍵第1格納手段から公開鍵を読み出して、前記印刷クライアントに送信する、公開鍵送信手段をさらに備えており、
前記印刷クライアントは、前記プリンタから受信した公開鍵を格納する、公開鍵第2格納手段をさらに備えている、
ことを特徴とする請求項2に記載の印刷システム。
The printer further includes a public key transmitting unit that reads a public key from the public key first storage unit and transmits the public key to the print client.
The print client further includes a public key second storage unit that stores a public key received from the printer.
3. The printing system according to claim 2, wherein:
前記印刷クライアントは、
前記プリンタで印刷を行うための印刷データを生成する、印刷データ生成手段と、
前記公開鍵第2格納手段から公開鍵を読み出して、この公開鍵で前記印刷データを暗号化し、この暗号化した印刷データを、前記プリンタに送信する、印刷データ送信手段と、
を備えており、
前記プリンタは、さらに、
前記公開鍵で暗号化された印刷データを受信する、印刷データ受信手段と、
前記印刷データを受信した際に、前記プリンタ位置情報取得手段からプリンタ位置情報を取得し、これを第2プリンタ位置情報とする、第2プリンタ位置情報取得手段と、
前記第2プリンタ位置情報を少なくとも含むパスフレーズを用いて、秘密鍵を生成する、秘密鍵生成手段と、
前記秘密鍵を用いて、前記印刷データ受信手段で受信した前記印刷データを復号する、復号手段と、
を備えることを特徴とする請求項3に記載の印刷システム。
The print client,
Print data generating means for generating print data for printing by the printer,
A print data transmitting unit that reads a public key from the public key second storage unit, encrypts the print data with the public key, and transmits the encrypted print data to the printer;
With
The printer further comprises:
Receiving print data encrypted with the public key, print data receiving means,
A second printer position information acquisition unit that acquires printer position information from the printer position information acquisition unit when the print data is received, and uses the acquired printer position information as second printer position information;
Secret key generation means for generating a secret key using a passphrase including at least the second printer position information;
Using the secret key, decrypt the print data received by the print data receiving means, decryption means,
The printing system according to claim 3, further comprising:
前記印刷クライアントは、操作者に認証情報を要求する、認証情報要求手段をさらに備えており、
前記サービスプロバイダの前記判断手段は、入力された認証情報を取得して、これが登録されている認証情報と一致するかどうかを判断し、両者が一致した場合には、操作者が正当な権限を有する者であると判断する、
ことを特徴とする請求項4に記載の印刷システム。
The print client further includes an authentication information requesting unit for requesting authentication information from an operator,
The determination means of the service provider obtains the input authentication information and determines whether or not the input authentication information matches the registered authentication information. Judge that he has
The printing system according to claim 4, wherein:
前記プリンタの前記公開鍵生成手段が公開鍵を生成する際に、秘密鍵が生成された場合でも、この秘密鍵は破棄する、ことを特徴とする請求項1乃至請求項5のいずれかに記載の印刷システム。6. The private key is discarded even when a private key is generated when the public key generating means of the printer generates a public key. Printing system. 前記プリンタは、前記秘密鍵を用いて前記印刷データが復号できた場合には、前記印刷データに基づく印刷を実行し、前記秘密鍵を用いて前記印刷データが復号できなかった場合には、前記印刷データに基づく印刷を実行しない、選択印刷実行手段を、さらに備えることを特徴とする請求項1乃至請求項6のいずれかに記載の印刷システム。The printer executes printing based on the print data when the print data can be decrypted using the secret key, and executes the printing based on the print data when the print data cannot be decrypted using the secret key. The printing system according to any one of claims 1 to 6, further comprising a selective print execution unit that does not execute printing based on the print data. 印刷クライアントと、この印刷クライアントからの要求に基づいて印刷を行うプリンタと、少なくとも前記印刷クライアントに接続されるサービスプロバイダとを有する印刷システムの制御方法であって、
公開鍵の生成を要求した者が、公開鍵の生成に関して正当な権限を有する者であるかどうかを、前記サービスプロバイダが判断する工程と、
公開鍵の生成を要求した者が、公開鍵の生成に関して正当な権限を有する者であると前記サービスプロバイダが判断した場合に、プリンタ位置情報取得手段から、当該プリンタの設置されている場所を特定するためのプリンタ位置情報を取得し、これを第1プリンタ位置情報とするとともに、前記第1プリンタ位置情報を少なくとも含むパスフレーズを用いて、公開鍵を生成する工程と、
を備えることを特徴とする印刷システムの制御方法。
A method for controlling a printing system, comprising: a print client, a printer that performs printing based on a request from the print client, and at least a service provider connected to the print client,
The service provider determining whether the person who has requested the generation of the public key is a person who has valid authority with respect to the generation of the public key,
When the service provider determines that the person who has requested the generation of the public key is a person who has valid authority regarding the generation of the public key, the location where the printer is installed is specified from the printer position information obtaining means. Acquiring printer position information for use as the first printer position information, and generating a public key using a passphrase including at least the first printer position information;
A method for controlling a printing system, comprising:
JP2002377963A 2002-12-26 2002-12-26 Printing system and its control method Withdrawn JP2004206620A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002377963A JP2004206620A (en) 2002-12-26 2002-12-26 Printing system and its control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002377963A JP2004206620A (en) 2002-12-26 2002-12-26 Printing system and its control method

Publications (1)

Publication Number Publication Date
JP2004206620A true JP2004206620A (en) 2004-07-22

Family

ID=32814974

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002377963A Withdrawn JP2004206620A (en) 2002-12-26 2002-12-26 Printing system and its control method

Country Status (1)

Country Link
JP (1) JP2004206620A (en)

Similar Documents

Publication Publication Date Title
JP4026126B2 (en) Server computer and printing system
JP4349281B2 (en) Printer, server and printing system, and data receiving apparatus and data transmitting / receiving system
US20050200890A1 (en) Printer and print system
US7552324B2 (en) Printer and print system, and data receiving device and data transmitting and receiving system
US7506159B2 (en) Printer and print system
US20070283157A1 (en) System and method for enabling secure communications from a shared multifunction peripheral device
JP2007325274A (en) System and method for inter-process data communication
US20050152543A1 (en) Printer and print system
JP4006683B2 (en) Printer, print client, and printing system
JP2007082208A (en) System, method, and program for safely transmitting electronic document between domains in terms of security
JP3979192B2 (en) Printer, printing system, data receiving apparatus and data transmitting / receiving system
JP4572324B2 (en) Device identification information management system and device identification information management method
JP2012098894A (en) Printing system and print control method
JPH1173391A (en) Data communication system and its method
JP4395832B2 (en) Printer, print client and printing system
JP4345056B2 (en) Printer and printing system
JP4370564B2 (en) Printer, printing system, and encrypted data processing system based on position information
JP4337474B2 (en) Printer and printing system
JP4400180B2 (en) Printer and printing system
JP2006025236A (en) Content management and utilization method
JP2004206620A (en) Printing system and its control method
JP4269749B2 (en) Printer and printing system
JP2004206618A (en) Printing system and its control method
JP4337473B2 (en) Printer and printing system
JP4168394B2 (en) Printer and printing system

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20060307