(57)【要約】【課題】プリンタ３０が使用できる位置に制限をかける。【解決手段】サービスプロバイダ１５は、公開鍵の生成を要求した者が、公開鍵の生成に関して正当な権限を有する者であるかどうかを判断する。サービスプロバイダ１５が、正当な権限を有すると判断した場合には、プリンタ３０は、少なくともその時点のプリンタ位置情報を含むパスフレーズを用いて、公開鍵暗号法により、公開鍵を生成し格納する。そして、プリンタ３０は、印刷クライアント２０からの要求に応じて、この公開鍵を印刷クライアント２０に送信する。印刷クライアント２０がプリンタ３０に印刷データＤ０５を送信する場合には、印刷データＤ０５を取得した公開鍵を用いて暗号化して、印刷送信用データＤ１０として送信する。この印刷送信用データＤ１０を受信したプリンタ３０は、少なくともその時点のプリンタ位置情報を含むパスフレーズを用いて、公開鍵暗号法により、秘密鍵を生成する。そして、この秘密鍵を用いて、受信した印刷送信用データＤ１０を復号する。【選択図】  図１
2004206620.tif 000002
【特許請求の範囲】
【請求項１】
印刷クライアントと、この印刷クライアントからの要求に基づいて印刷を行うプリンタと、少なくとも前記印刷クライアントに接続されるサービスプロバイダとを有する印刷システムであって、
前記プリンタは、プリンタの設置されている場所を特定するためのプリンタ位置情報を取得する、プリンタ位置情報取得手段を備えており、
前記サービスプロバイダは、公開鍵の生成に関して正当な権限を有する者であるかどうかを判断する判断手段を備えており、
前記プリンタは、前記サービスプロバイダの判断手段が、公開鍵の生成に関して正当な権限を有する者であると判断した場合に、前記プリンタ位置情報取得手段からプリンタ位置情報を取得し、これを第１プリンタ位置情報とするとともに、前記第１プリンタ位置情報を少なくとも含むパスフレーズを用いて、公開鍵を生成する、公開鍵生成手段を、さらに備えている、
ことを特徴とする印刷システム。
【請求項２】
前記プリンタは、前記公開鍵生成手段で生成した公開鍵を格納する、公開鍵第１格納手段をさらに備えることを特徴とする請求項１に記載の印刷システム。
【請求項３】
前記プリンタは、前記公開鍵第１格納手段から公開鍵を読み出して、前記印刷クライアントに送信する、公開鍵送信手段をさらに備えており、
前記印刷クライアントは、前記プリンタから受信した公開鍵を格納する、公開鍵第２格納手段をさらに備えている、
ことを特徴とする請求項２に記載の印刷システム。
【請求項４】
前記印刷クライアントは、
前記プリンタで印刷を行うための印刷データを生成する、印刷データ生成手段と、
前記公開鍵第２格納手段から公開鍵を読み出して、この公開鍵で前記印刷データを暗号化し、この暗号化した印刷データを、前記プリンタに送信する、印刷データ送信手段と、
を備えており、
前記プリンタは、さらに、
前記公開鍵で暗号化された印刷データを受信する、印刷データ受信手段と、
前記印刷データを受信した際に、前記プリンタ位置情報取得手段からプリンタ位置情報を取得し、これを第２プリンタ位置情報とする、第２プリンタ位置情報取得手段と、
前記第２プリンタ位置情報を少なくとも含むパスフレーズを用いて、秘密鍵を生成する、秘密鍵生成手段と、
前記秘密鍵を用いて、前記印刷データ受信手段で受信した前記印刷データを復号する、復号手段と、
を備えることを特徴とする請求項３に記載の印刷システム。
【請求項５】
前記印刷クライアントは、操作者に認証情報を要求する、認証情報要求手段をさらに備えており、
前記サービスプロバイダの前記判断手段は、入力された認証情報を取得して、これが登録されている認証情報と一致するかどうかを判断し、両者が一致した場合には、操作者が正当な権限を有する者であると判断する、
ことを特徴とする請求項４に記載の印刷システム。
【請求項６】
前記プリンタの前記公開鍵生成手段が公開鍵を生成する際に、秘密鍵が生成された場合でも、この秘密鍵は破棄する、ことを特徴とする請求項１乃至請求項５のいずれかに記載の印刷システム。
【請求項７】
前記プリンタは、前記秘密鍵を用いて前記印刷データが復号できた場合には、前記印刷データに基づく印刷を実行し、前記秘密鍵を用いて前記印刷データが復号できなかった場合には、前記印刷データに基づく印刷を実行しない、選択印刷実行手段を、さらに備えることを特徴とする請求項１乃至請求項６のいずれかに記載の印刷システム。
【請求項８】
印刷クライアントと、この印刷クライアントからの要求に基づいて印刷を行うプリンタと、少なくとも前記印刷クライアントに接続されるサービスプロバイダとを有する印刷システムの制御方法であって、
公開鍵の生成を要求した者が、公開鍵の生成に関して正当な権限を有する者であるかどうかを、前記サービスプロバイダが判断する工程と、
公開鍵の生成を要求した者が、公開鍵の生成に関して正当な権限を有する者であると前記サービスプロバイダが判断した場合に、プリンタ位置情報取得手段から、当該プリンタの設置されている場所を特定するためのプリンタ位置情報を取得し、これを第１プリンタ位置情報とするとともに、前記第１プリンタ位置情報を少なくとも含むパスフレーズを用いて、公開鍵を生成する工程と、
を備えることを特徴とする印刷システムの制御方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、印刷システム及びその制御方法に関し、特に、プリンタが正常な印刷をできる場所を制限した印刷システム及びその制御方法に関する。
【０００２】
【従来の技術】
近年、プリンタを用いたビジネスモデルとして、プリンタメーカがユーザにプリンタを無償で貸し出し、ユーザがこのプリンタを用いて印刷した枚数だけ、そのプリンタメーカに使用料を支払うという形態が、注目されてきている。このようなビジネスモデルにおいては、印刷枚数に応じた課金の他に、使用期間に応じた課金や、使用インク量に応じた課金などが考えられる。
【０００３】
【特許文献１】
特開平１１−３３１１４４号公報
【０００４】
【発明が解決しようとする課題】
しかしながら、このようなビジネスモデルでは、プリンタメーカから貸し出されたプリンタを、ユーザが無断で転売したり、他人に貸し出したりしてしまうと、プリンタメーカがプリンタの使用に応じた課金をすることができなくなってしまう。このため、プリンタメーカとしては、貸し出したプリンタが使用できる場所、つまり、正常な印刷ができる場所を、その貸し出したユーザの場所に限定したい。
【０００５】
そこで本発明は、前記課題に鑑みてなされたものであり、予め認証された場所でしか、プリンタが正常に印刷することのできない印刷システム及びその制御方法を提供することを目的とする。
【０００６】
【課題を解決するための手段】
上記課題を解決するため、本発明に係る印刷システムは、印刷クライアントと、この印刷クライアントからの要求に基づいて印刷を行うプリンタと、少なくとも前記印刷クライアントに接続されるサービスプロバイダとを有する印刷システムであって、前記プリンタは、プリンタの設置されている場所を特定するためのプリンタ位置情報を取得する、プリンタ位置情報取得手段を備えており、前記サービスプロバイダは、公開鍵の生成に関して正当な権限を有する者であるかどうかを判断する判断手段を備えており、前記プリンタは、前記サービスプロバイダの判断手段が、公開鍵の生成に関して正当な権限を有する者であると判断した場合に、前記プリンタ位置情報取得手段からプリンタ位置情報を取得し、これを第１プリンタ位置情報とするとともに、前記第１プリンタ位置情報を少なくとも含むパスフレーズを用いて、公開鍵を生成する、公開鍵生成手段を、さらに備えている、ことを特徴とする。
【０００７】
この場合、前記プリンタは、前記公開鍵生成手段で生成した公開鍵を格納する、公開鍵第１格納手段をさらに備えるようにしてもよい。
【０００８】
この場合、前記プリンタは、前記公開鍵第１格納手段から公開鍵を読み出して、前記印刷クライアントに送信する、公開鍵送信手段をさらに備えており、前記印刷クライアントは、前記プリンタから受信した公開鍵を格納する、公開鍵第２格納手段をさらに備えているようにしてもよい。
【０００９】
この場合、前記印刷クライアントは、前記プリンタで印刷を行うための印刷データを生成する、印刷データ生成手段と、前記公開鍵第２格納手段から公開鍵を読み出して、この公開鍵で前記印刷データを暗号化し、この暗号化した印刷データを、前記プリンタに送信する、印刷データ送信手段と、を備えており、前記プリンタは、さらに、前記公開鍵で暗号化された印刷データを受信する、印刷データ受信手段と、前記印刷データを受信した際に、前記プリンタ位置情報取得手段からプリンタ位置情報を取得し、これを第２プリンタ位置情報とする、第２プリンタ位置情報取得手段と、前記第２プリンタ位置情報を少なくとも含むパスフレーズを用いて、秘密鍵を生成する、秘密鍵生成手段と、前記秘密鍵を用いて、前記印刷データ受信手段で受信した前記印刷データを復号する、復号手段と、を備えるようにしてもよい。
【００１０】
この場合、前記印刷クライアントは、操作者に認証情報を要求する、認証情報要求手段をさらに備えており、前記サービスプロバイダの前記判断手段は、入力された認証情報を取得して、これが登録されている認証情報と一致するかどうかを判断し、両者が一致した場合には、操作者が正当な権限を有する者であると判断するようにしてもよい。
【００１１】
また、前記プリンタの前記公開鍵生成手段が公開鍵を生成する際に、秘密鍵が生成された場合でも、この秘密鍵は破棄するようにしてもよい。
【００１２】
また、前記プリンタは、前記秘密鍵を用いて前記印刷データが復号できた場合には、前記印刷データに基づく印刷を実行し、前記秘密鍵を用いて前記印刷データが復号できなかった場合には、前記印刷データに基づく印刷を実行しない、選択印刷実行手段を、さらに備えるようにしてもよい。
【００１３】
なお、本発明は印刷システムを制御するための制御方法として実現することもできる。さらには、そのように印刷システムを制御するためのプログラムやそのプログラムを記録した記録媒体として実現することもできる。
【００１４】
【発明の実施の形態】
本実施形態に係る印刷システムは、サービスプロバイダが公開鍵生成の認証を行い、この認証が一致した場合には、プリンタは、プリンタが設置されている位置を表すプリンタ位置情報を少なくとも含むパスフレーズを用いて公開鍵を生成し、これを保持しておく。そして、プリンタは必要に応じて、この公開鍵を印刷クライアントに提供する。一方、サービスプロバイダでの認証が一致しなかった場合には、プリンタは公開鍵の生成は行わない。
【００１５】
印刷クライアントが印刷データをこのプリンタに送信する際には、取得した公開鍵を用いて印刷データを暗号化して生成した印刷送信用データとして送信する。そして、この印刷送信用データを受信したプリンタでは、受信時に再度、その時点におけるプリンタ位置情報を少なくとも含むパスフレーズを用いて秘密鍵を生成し、この秘密鍵で印刷送信用データが復号できた場合にのみ印刷を実行するようにしたものである。より詳しくを、以下に説明する。
【００１６】
まず、図１に基づいて、本実施形態に係る印刷システムの構成を説明する。図１は、本実施形態に係る印刷システムのハードウェア構成を示すブロック図である。
【００１７】
この図１に示すように、本実施形態に係る印刷システムは、プリンタケーブル１０を介して接続された印刷クライアント２０とプリンタ３０とを備えている。すなわち、プリンタ３０は印刷クライアント２０にローカル接続されている。但し、印刷クライアント２０とプリンタ３０との間は、無線やイーサネット（登録商標）等を用いたネットワークにより接続されるようにしてもよい。この場合には、１つのプリンタ３０に複数の印刷クライアント２０が接続されてもよい。
【００１８】
また、印刷クライアント２０は、インターネットやイーサネット（登録商標）等のネットワークＮＴに接続されている。また、このネットワークＮＴには、公開鍵の生成を要求した者が、公開鍵の生成に関して正当な権限のある者であるかどうかを判断するサービスプロバイダ１５が接続されている。
【００１９】
印刷クライアント２０は、例えば、ホストコンピュータやパーソナルコンピュータと呼ばれる各種のコンピュータにより構成されている。本実施形態では、特に印刷クライアント２０は、印刷データを公開鍵で暗号化した印刷送信用データを生成し、この印刷送信用データをプリンタケーブル１０を介してプリンタ３０に送信する。また、この印刷クライアント２０は、コンピュータに限られるものではなく、例えば、撮影した画像を印刷する必要のあるデジタルカメラや、印刷画像データをコンテンツとして蓄積してあるコンテンツサーバ等でもよい。
【００２０】
また本実施形態においては、サービスプロバイダ１５は、公開鍵の生成を要求した者が、正当な権限を有する者であるかどうかを認証し、このサービスプロバイダ１５で正当な権限を有すると認められた場合にのみ、プリンタ３０は公開鍵暗号法により公開鍵を生成する。プリンタ３０で生成された公開鍵は、プリンタ３０で保持され、正当な印刷クライアント２０からの要求により、この印刷クライアント２０に送信され、格納される。
【００２１】
印刷クライアント２０では、印刷データをプリンタ３０に送信する際には、この公開鍵で印刷データを暗号化して、印刷送信用データとしてプリンタ３０に送信する。プリンタ３０は、印刷送信用データを印刷クライアント２０から受信し、この印刷送信用データを、少なくともその時点のプリンタ位置情報を含むパスフレーズを用いて生成した秘密鍵で、復号する。そして、印刷送信用データの復号ができた場合には、その印刷送信用データに基づく印刷を行い、印刷送信用データの復号ができなかった場合には、その印刷送信用データに基づく印刷は行わない。
【００２２】
また、本実施形態においては、プリンタ３０は、公開鍵で暗号化されていない印刷データでは、正常な印刷結果が得られないように構成されている。すなわち、暗号化されていない印刷データは、プリンタ３０では、秘密鍵を用いて復号できない印刷送信用データとして扱われる。
【００２３】
図２は、プリンタ３０の内部構成を説明するためのブロック図である。この図２に示すように、プリンタ３０は、ＣＰＵ（Central Processing Unit）４０と、ＲＡＭ（Random Access Memory）４２と、ＲＯＭ（Read Only Memory）４４と、ＥＥＰＲＯＭ（Electrically Erasable Programmable ROM）４５を備えており、これらは互いに内部バス４６を介して接続されている。また、この内部バス４６には、通信用のインターフェース４８が接続されており、この通信用のインターフェース４８を介して、上述したプリンタケーブル１０にプリンタ３０が接続されている。さらに、内部バス４６には、インターフェース５０が接続されており、このインターフェース５０には印刷エンジン５２が接続されている。本実施形態においては、ＥＥＰＲＯＭ４５は、書き換え可能な不揮発性記憶装置として機能する。
【００２４】
また、内部バス４６には、位置検出部５４が接続されている。この位置検出部５４は、プリンタ３０が設置されている位置を特定する機能を有する。本実施形態においては、例えば、ＧＰＳ（global positioning system）により構成されており、このプリンタ３０が設置されている位置の緯度、経度、高度が特定できるようになっている。現時点におけるＧＰＳの精度は、緯度、経度、高度において、それぞれ±１０ｍ程度であると言われている。
【００２５】
但し、この位置検出部５４は、ＧＰＳを用いた構成に限らず、例えば、ＰＨＳ（Personal Handyphone System）などの移動体通信技術を利用して、プリンタ３０の位置を特定するようにしてもよい。また、ＧＰＳとＰＨＳとを併用し、室内でＧＰＳの電波が正常に受信できない場合には、ＰＨＳの電波に基づいて、位置を特定するようにしてもよい。
【００２６】
さらに、内部バス４６には、インターフェース５６を介して、ハードディスク５８が接続されている。本実施形態においては、このハードディスク５８は、書き換え可能な不揮発性記憶装置として機能する。
【００２７】
図３は、印刷クライアント２０の内部構成を説明するためのブロック図である。この図３に示すように、本実施形態に係る印刷クライアント２０は、コンピュータ本体６０とディスプレイ６２とを備えて構成されている。
【００２８】
コンピュータ本体６０は、ＣＰＵ６４と、ＲＡＭ６６と、ＲＯＭ６８とを備えており、これらは互いに内部バス７０を介して接続されている。また、この内部バス７０には、通信用のインターフェース７２、７３が接続されており、通信用のインターフェース７２を介して、上述したプリンタケーブル１０に印刷クライアント２０が接続されており、通信用のインターフェース７３を介して、印刷クライアント２０がネットワークＮＴに接続されている。
【００２９】
さらに、内部バス７０には、インターフェース７４が接続されており、このインターフェース７４には大容量記憶装置であるハードディスク７６が接続されている。本実施形態においては、このハードディスク７６は、書き換え可能な不揮発性記憶装置として機能する。また、内部バス７０には、インターフェース７８が接続されており、このインターフェース７８から延びるケーブル８０を介して、上述したディスプレイ６２が接続されている。
【００３０】
図４は、サービスプロバイダ１５の内部構成を説明するためのブロック図である。この図４に示すように、本実施形態に係るサービスプロバイダ１５は、コンピュータ本体１００とディスプレイ１０２とを備えて構成されている。
【００３１】
コンピュータ本体１００は、ＣＰＵ１０４と、ＲＡＭ１０６と、ＲＯＭ１０８とを備えており、これらは互いに内部バス１１０を介して接続されている。また、この内部バス１１０には、通信用のインターフェース１１２が接続されており、通信用のインターフェース７２を介して、サービスプロバイダ１５がネットワークＮＴに接続されている。
【００３２】
さらに、内部バス１１０には、インターフェース１１４が接続されており、このインターフェース１１４には大容量記憶装置であるハードディスク１１６が接続されている。本実施形態においては、このハードディスク１１６は、書き換え可能な不揮発性記憶装置として機能する。また、内部バス１１０には、インターフェース１１８が接続されており、このインターフェース１１８から延びるケーブル１２０を介して、上述したディスプレイ１０２が接続されている。
【００３３】
次に、本実施形態に係る印刷システムにおいて、印刷クライアント２０がプリンタ３０で印刷を行う場合の処理を、概略的に説明する。
【００３４】
本実施形態においては、サービスプロバイダ１５は、公開鍵の生成を要求する正当な権限のある者であるかどうかを認証する。本実施形態においては、正当な権限のある者であるかどうかは、印刷クライアント２０から、操作者に公開鍵生成認証情報を入力させ、これをサービスプロバイダ１５に送信して、サービスプロバイダ１５が判断する。また、本実施形態においては、この公開鍵生成認証情報は、ＩＤとパスワードの組み合わせから構成されている。
【００３５】
認証が一致した場合には、サービスプロバイダ１５は、印刷クライアント２０に認証が一致した旨の認証結果情報を送信する。印刷クライアント２０は、公開鍵生成要求と、この認証が一致した旨の認証結果情報をプリンタ３０に送信する。これらを受信したプリンタ３０は、その時点のプリンタ位置情報を少なくとも含むパスフレーズを用いて、公開鍵暗号法により公開鍵を生成する。そして、プリンタ３０は、この生成した公開鍵を、ＥＥＰＲＯＭ４５に格納しておく。
【００３６】
正当な権限のある印刷クライアント２０が公開鍵を要求した場合には、プリンタ３０はＥＥＰＲＯＭ４５から公開鍵を読み出して、プリンタケーブル１０を介して印刷クライアント２０に送信する。
【００３７】
印刷クライアント２０は、受信した公開鍵をハードディスク７４に格納する。次に、印刷クライアント２０のユーザは、図５に示すように、印刷するべきデータである印刷データＤ０５を作成し、印刷クライアント２０に対してプリンタ３０を指定して印刷を指示する。
【００３８】
印刷クライアント２０は、印刷データＤ０５を、プリンタ３０の公開鍵を用いて暗号化し、印刷送信用データＤ１０を生成する。ここで、印刷データＤ０５は、プリンタ３０で印刷エンジン５２を駆動した印刷を行うのに必要となる本来の印刷データを示している。なお、印刷送信用データＤ１０は、この図５に示した印刷データＤ０５以外のデータを含んでいてもよい。
【００３９】
この印刷送信用データＤ１０を受信したプリンタ３０は、図２に示すように、この受信した印刷送信用データＤ１０をＲＡＭ４２に一旦格納する。そして、プリンタ３０は、この暗号化された印刷送信用データＤ１０を、秘密鍵を用いて復号する。すなわち、プリンタ３０は、その時点におけるプリンタ位置情報を少なくとも含むパスフレーズを用いて、公開鍵暗号法により、秘密鍵を生成する。このように、印刷送信用データＤ１０の復号を行おうとする度に、秘密鍵を生成することにより、このプリンタ３０の設置場所が移動された場合には、移動前に生成された公開鍵で暗号化された印刷送信用データが、移動後のプリンタ３０で復号できないようにしている。
【００４０】
続いて、プリンタ３０は、印刷送信用データＤ１０が復号できたかどうかを判断する。印刷送信用データＤ１０の復号ができた場合には、印刷送信用データＤ１０を復号することにより取得した印刷データＤ０５に基づいて印刷を行い、復号できなかった場合には、印刷は行わない。
【００４１】
次に、上述した処理の内容について、フローチャートを用いて詳しく説明する。まず、公開鍵を生成する処理について説明する。
【００４２】
図６は、印刷クライアント２０で実行される公開鍵生成要求処理を説明するフローチャートである。この公開鍵生成要求処理は、印刷クライアント２０のＲＯＭ６８又はハードディスク７６に格納されている公開鍵生成要求プログラムをＣＰＵ６４が読み込んで実行することにより実現される処理である。また、本実施形態においては、この公開鍵生成要求処理は、操作者（例えば、プリンタ３０のメーカのメンテナンスをする者）が、印刷クライアント２０を操作して、公開鍵生成要求処理を実行するように指示した場合に、起動され、実行される処理である。
【００４３】
図６に示すように、公開鍵生成要求処理が実行された場合、印刷クライアント２０はまず、操作者に、公開鍵生成認証情報を入力するように要求する（ステップＳ１０）。本実施形態においては、操作者は、印刷クライアント２０のキーボード等から、ＩＤとパスワードを公開鍵生成認証情報として入力する。
【００４４】
次に、印刷クライアント２０は、公開鍵生成認証情報が入力されたかどうかを判断する（ステップＳ１２）。この公開鍵生成認証情報が入力されていない場合（ステップＳ１２：Ｎｏ）には、ステップＳ１２の処理を繰り返して待機する。
【００４５】
一方、公開鍵生成認証情報が入力された場合（ステップＳ１２：Ｙｅｓ）には、印刷クライアント２０は、ネットワークＮＴを介して、サービスプロバイダ１５との接続を確立する（ステップＳ１４）。データの送受信は、例えば、内容をＳＳＬなどで暗号化処理をした上で、やりとりをする。このことは、相手のサービスプロバイダー１５側も同じである。そして、印刷クライアント２０は、公開鍵生成認証情報をサービスプロバイダ１５に送信する（ステップＳ１６）。
【００４６】
次に、印刷クライアント２０は、サービスプロバイダ１５から認証結果情報を受信するので、公開鍵生成認証情報が一致したことを認証結果情報が示しているかどうかを判断する（ステップＳ１８）。公開鍵生成認証情報が一致したことを認証結果情報が示している場合（ステップＳ１８：Ｙｅｓ）には、印刷クライアント２０は、プリンタ３０に公開鍵生成要求を送信する（ステップＳ２０）。続いて、印刷クライアント２０は、プリンタ３０に公開鍵生成認証情報が一致したことを示す認証結果情報を送信する（ステップＳ２２）。
【００４７】
次に、印刷クライアント２０は、サービスプロバイダ１５との接続を切断する（ステップＳ２４）。一方、上述したステップＳ１８において、公開鍵生成認証情報が一致しない認証結果情報を受信したと判断した場合（ステップＳ１８：Ｎｏ）にも、このステップＳ２４にジャンプして、サービスプロバイダ１５との接続を切断する。
【００４８】
これにより、本実施形態に係る公開鍵生成要求処理が終了する。
【００４９】
図７は、サービスプロバイダ１５で実行される認証処理を説明するフローチャートである。この認証処理は、サービスプロバイダ１５のＲＯＭ１０８又はハードディスク１１６に格納されている認証プログラムをＣＰＵ１０４が読み込んで実行することにより実現される処理である。また、本実施形態においては、この認証処理は、一定の時間間隔で定常的に実行されている処理である。
【００５０】
図７に示すように、公開鍵生成処理においては、サービスプロバイダ１５は、印刷クライアント２０からの接続を待っている（ステップＳ５０）。そして、印刷クライアント２０に接続された場合には、サービスプロバイダ１５は、その印刷クライアント２０から公開鍵生成認証情報を受信したかどうかを判断する（ステップＳ５２）。この公開鍵生成認証情報を受信していない場合（ステップＳ５２：Ｎｏ）には、このステップＳ５２の処理を繰り返して待機する。
【００５１】
一方、公開鍵生成認証情報を受信した場合（ステップＳ５２：Ｙｅｓ）には、サービスプロバイダ１５は、その公開鍵生成認証情報が、予め登録されているものと一致するかどうかを判断する（ステップＳ５４）。上述したように、本実施形態においては、公開鍵生成認証情報は、ＩＤとパスワードとで構成されているので、このＩＤとパスワードが、ハードディスク１１６に予め登録されているＩＤとパスワードと一致するかどうかを判断する。
【００５２】
公開鍵生成認証情報が一致しなかったと判断した場合（ステップＳ５４：Ｎｏ）には、公開鍵生成認証情報が一致しなかった旨の認証結果情報を、印刷クライアント２０に送信する（ステップＳ５６）。そして、印刷クライアント２０との接続を終了する（ステップＳ６０）。
【００５３】
これに対して、ステップＳ５４で、公開鍵生成認証情報が一致したと判断した場合（ステップＳ５４：Ｙｅｓ）には、公開鍵生成認証情報が一致した旨の認証結果情報を、印刷クライアント２０に送信する（ステップＳ５８）。そして、印刷クライアント２０との接続を終了し（ステップＳ６０）、上述したステップＳ５０からを繰り返す。
【００５４】
次に、図８に基づいて、印刷クライアント２０の公開鍵生成要求処理に対応して、プリンタ３０で実行される公開鍵生成処理について説明する。図８は、プリンタ３０で実行される公開鍵生成処理を説明するフローチャートである。この公開鍵生成処理は、プリンタ３０のＲＯＭ４４又はハードディスク５８に格納されている公開鍵生成プログラムをＣＰＵ４０が読み込んで実行することにより実現される処理である。本実施形態においては、この公開鍵生成処理は、一定の時間間隔で定常的に実行されている処理である。
【００５５】
図８に示すように、プリンタ３０は、印刷クライアント２０から公開鍵生成要求を受信したかどうかを判断する（ステップＳ８０）。この公開鍵生成要求を受信していない場合（ステップＳ８０：Ｎｏ）には、このステップＳ８０の処理を繰り返して待機する。
【００５６】
一方、公開鍵生成要求を受信した場合（ステップＳ８０：Ｙｅｓ）には、プリンタ３０は、印刷クライアント２０から、公開鍵生成認証情報が一致した旨の認証結果情報を受信したかどうかを判断する（ステップＳ８２）。この認証結果情報を受信していない場合（ステップＳ８２：Ｎｏ）には、このステップＳ８２の処理を繰り返して待機する。
【００５７】
一方、公開鍵生成認証情報が一致した旨の認証結果情報を受信した場合（ステップＳ８２：Ｙｅｓ）には、機器固有情報を取得する（ステップＳ８４）。ここで、機器固有情報とは、このプリンタ３０に関して、固有に割り当てられている識別情報であり、例えば、プリンタ３０の製造シリアルナンバー、ＭＡＣアドレス等がある。
【００５８】
次に、プリンタ３０は、位置検出部５４からその時点におけるプリンタ位置情報を取得する（ステップＳ８６）。続いて、プリンタ３０は、パスフレーズを生成する（ステップＳ８８）。このパスフレーズの作成手法は種々のものが考えられるが、本実施形態においては、単純に機器固有情報の後ろにプリンタ位置情報をつなげることにより、パスフレーズを作成する。なお、パスフレーズは、これら機器固有情報及びプリンタ位置情報以外のデータを含んでいてもよい。
【００５９】
次に、プリンタ３０は、ステップＳ８８で生成したパスフレーズを用いて、公開鍵暗号法により、公開鍵を生成する（ステップＳ９０）。続いて、プリンタ３０は、この生成した公開鍵をＥＥＰＲＯＭ４５に格納して保持しておく（ステップＳ９２）。図９は、ＥＥＰＲＯＭ４５の一部の領域に形成される公開鍵格納部ＥＰ１０の構成を示す図である。この図９に示すように、公開鍵格納部ＥＰ１０に、生成した公開鍵を格納して、保持する。なお、公開鍵を生成する際に、秘密鍵も生成された場合には、この秘密鍵は格納されずに破棄される。
【００６０】
このステップＳ９２の後、上述したステップＳ５０の処理に戻る。これにより、本実施形態に係る公開鍵生成処理が終了する。
【００６１】
次に、公開鍵を印刷クライアント２０が取得する場合における、印刷クライアント２０及びプリンタ３０の処理について説明する。
【００６２】
図１０は、印刷クライアント２０で実行される公開鍵要求処理を説明するフローチャートである。この公開鍵要求処理は、印刷クライアントのＲＯＭ６８又はハードディスク７６に格納されている公開鍵要求プログラムをＣＰＵ６４が読み込んで実行することにより実現される処理である。また、本実施形態においては、この公開鍵要求処理は、ユーザが印刷クライアント２０に公開鍵を要求する処理を起動するように指示入力した場合に、起動され、実行される処理である。
【００６３】
図１０に示すように、この公開鍵要求処理においては、まず印刷クライアント２０は、プリンタ３０との接続を確立する（ステップＳ１００）。続いて、印刷クライアント２０は、プリンタ３０へ認証情報を送信する（ステップＳ１０２）。本実施形態においては、この認証情報として、印刷クライアントを特定するための印刷クライアントＩＤと、パスワードとの組み合わせを用いている。したがって、印刷クライアント２０は、印刷クライアントＩＤとパスワードとを、プリンタ３０へ送信する。
【００６４】
これに続いて、印刷クライアント２０は、プリンタ３０から認証が受け入れられたか否かを示す認証結果を受信するので、この認証結果に基づいて、プリンタ３０で認証が認められたかどうかを判断する（ステップＳ１０４）。認証が認められなかった場合（ステップＳ１０４：Ｎｏ）には、上述したステップＳ１０２からを繰り返す。
【００６５】
一方、認証が認められた場合（ステップＳ１０４：Ｙｅｓ）には、印刷クライアント２０は、公開鍵取得要求をプリンタ３０へ送信する（ステップＳ１０６）。そして、プリンタ３０から公開鍵を受信したかどうかを判断する（ステップＳ１０８）。プリンタ３０から公開鍵を受信していない場合（ステップＳ１０８：Ｎｏ）には、このステップＳ１０８を繰り返して待機する。
【００６６】
一方、プリンタ３０から公開鍵を受信した場合（ステップＳ１０８：Ｙｅｓ）には、この公開鍵を格納する（ステップＳ１１０）。本実施形態においては、印刷クライアント２０は、ハードディスク７６に公開鍵テーブルＴＢ１０を設けており、取得した公開鍵は、この公開鍵テーブルＴＢ１０に格納され保持される。
【００６７】
図１１は、この公開鍵テーブルＴＢ１０の構成の一例を示す図である。この図１１に示すように、公開鍵テーブルＴＢ１０は、プリンタを特定するための情報を格納する項目ＴＤ１０と、取得した公開鍵をプリンタに対応させて格納する項目ＴＤ１１とを備えている。このように、公開鍵テーブルＴＢ１０は、複数のプリンタに関する公開鍵を、各プリンタ毎に保持することができるようになっている。また、このようにハードディスク７８の公開鍵テーブルＴＢ１０に公開鍵を格納することにより、印刷クライアント２０の電源がオフされて再び電源が投入された場合でも、それ以前に取得した公開鍵をそのままハードディスク７８から読み出して使用することができるようになっている。
【００６８】
図１０に示すように、次に、印刷クライアント２０は、プリンタ３０との接続を切断する（ステップＳ１１２）。これにより、図１０に示した公開鍵要求処理は終了する。
【００６９】
次に、図１２に基づいて、印刷クライアント２０の公開鍵要求処理に対応して、プリンタ３０で実行される公開鍵送信処理について説明する。この図１２は、プリンタ３０で実行される公開鍵送信処理を説明するフローチャートである。この公開鍵送信処理は、プリンタのＲＯＭ４４又はハードディスク５８に格納されている公開鍵送信プログラムをＣＰＵ４０が読み込んで実行することにより実現される処理である。本実施形態においては、この公開鍵送信処理は、一定の時間間隔で定常的に実行されている処理である。また、この公開鍵送信処理は、上述した公開鍵要求処理に対応した処理である。
【００７０】
図１２に示すように、プリンタ３０は、印刷クライアント２０からの接続を待っており、印刷クライアント２０から接続を要求された場合に、印刷クライアント２０と接続を確立する（ステップＳ１２０）。これは上述した印刷クライアント２０側のステップＳ１００に対応している。続いて、プリンタ３０は、印刷クライアント２０から認証情報を受信したかどうかを判断する（ステップＳ１２２）。認証情報を受信していない場合（ステップＳ１２２：Ｎｏ）には、このステップＳ１２２の処理を繰り返して待機する。
【００７１】
一方、認証情報を印刷クライアント２０から受信した場合（ステップＳ１２２：Ｙｅｓ）には、その認証情報がこのプリンタ３０に予め登録してある認証情報と一致するかどうかを判断する（ステップＳ１２４）。具体的には、上述したように、印刷クライアント２０から印刷クライアントＩＤとパスワードが認証情報として送信されてくるので、この印刷クライアントＩＤとパスワードが、このプリンタ３０に予め登録されている印刷クライアントＩＤとパスワードと一致するかどうかを判断する。
【００７２】
認証情報が一致しなかった場合（ステップＳ１２４：Ｎｏ）には、プリンタ３０は印刷クライアント２０に、認証が受け入れられなかった旨の認証結果を送信し（ステップＳ１２６）、後述するステップＳ１３６において、印刷クライアント２０との接続を終了する（ステップＳ１３６）。一方、認証が一致した場合（ステップＳ１２４：Ｙｅｓ）には、プリンタ３０は印刷クライアント２０に、認証が受け入れられた旨の認証結果を送信する（ステップＳ１２８）。
【００７３】
次に、プリンタ３０は、印刷クライアント２０から公開鍵取得要求を受信したかどうかを判断する（ステップＳ１３０）。この公開鍵取得要求を受信していない場合（ステップＳ１３０：Ｎｏ）には、このステップＳ１３０の処理を繰り返して待機する。
【００７４】
公開鍵取得要求を受信した場合（ステップＳ１３０：Ｙｅｓ）には、プリンタ３０は、ＥＥＰＲＯＭ４５の公開鍵格納部ＥＰ１０から、公開鍵を読み出して取得する（ステップＳ１３２）。続いて、プリンタ３０は、取得した公開鍵を、印刷クライアント２０に送信する（ステップＳ１３４）。そして、印刷クライアント２０との接続を終了し（ステップＳ１３６）、上述したステップＳ１２０に戻る。
【００７５】
次に、印刷クライアント２０が印刷を行いたいときに、その印刷要求をプリンタ３０に送信する場合の印刷クライアント２０及びプリンタ３０の処理について、詳しく説明する。
【００７６】
図１３は、印刷クライアント２０で実行される印刷要求処理を説明するフローチャートである。この印刷要求処理は、印刷クライアントのＲＯＭ６８又はハードディスク７６に格納されている印刷要求プログラムをＣＰＵ６４が読み込んで実行することにより実現される処理である。本実施形態においては、この印刷要求処理は、ユーザが印刷クライアントに印刷指示を入力した場合に、起動され、実行される処理である。
【００７７】
この図１３に示すように、印刷クライアント２０は、ユーザの印刷要求に基づいて、印刷データＤ０５を作成する（ステップＳ２００）。この印刷データＤ０５は、プリンタ３０が通常のプリンタである場合に、印刷を実際に行うのに必要となるデータである。
【００７８】
次に、印刷クライアント２０は、公開鍵テーブルＴＢ１０から、プリンタ３０の公開鍵を読み出す（ステップＳ２０２）。続いて、印刷クライアント２０は、プリンタ３０の公開鍵を用いて、印刷データＤ０５を暗号化して、印刷送信用データＤ１０を生成する（ステップＳ２０４）。なお、印刷送信用データＤ１０は、印刷データ以外のデータを含んでいてもよい。
【００７９】
次に、印刷クライアント２０は、プリンタ３０との接続を確立する（ステップＳ２０６）。なお、このプリンタ３０との接続の確立は、印刷クライアント２０とプリンタ３０との間の接続仕様によっては、必要な処理ではない。続いて、印刷クライアント２０は、この暗号化した印刷送信用データＤ１０を、プリンタ３０に送信する（ステップＳ２０８）。
【００８０】
次に、印刷クライアント２０は、プリンタ３０から印刷結果情報を受信したかどうかを判断する（ステップＳ２１０）。印刷結果情報を受信していない場合（ステップＳ２１０：Ｎｏ）には、このステップＳ２１０の処理を繰り返して待機する。一方、印刷結果情報を受信した場合（ステップＳ２１０：Ｙｅｓ）には、その印刷結果情報が印刷完了通知であるかどうかを判断する（ステップＳ２１２）。
【００８１】
この印刷結果情報が印刷完了通知である場合（ステップＳ２１２：Ｙｅｓ）には、プリンタ３０で印刷が正常に終了したことを意味しているので、ユーザにプリンタ３０で印刷が完了した旨を通知する（ステップＳ２１４）。一方、受信した印刷結果情報が印刷完了通知でない場合（ステップＳ２１２：Ｎｏ）には、その印刷結果情報が解読不能通知であるかどうかを判断する（ステップＳ２１６）。
【００８２】
印刷結果情報が解読不能通知である場合（ステップＳ２１６：Ｙｅｓ）には、ユーザに、プリンタ３０で印刷送信用データＤ１０の復号ができなかったため、印刷が行われなかった旨を通知する（ステップＳ２１８）。一方、印刷結果情報が解読不能通知でない場合（ステップＳ２１６：Ｎｏ）には、その他の何らかのエラーであると考えられるので、ユーザに、そのエラーの種類に応じた通知を行う（ステップＳ２２０）。
【００８３】
これらステップＳ２１４、ステップＳ２１８、及び、ステップＳ２２０の通知の後、印刷クライアント２０は、プリンタ３０との接続を切断する（ステップＳ２２２）。これにより、この印刷クライアント２０における印刷要求処理は終了する。
【００８４】
次に、図１４に基づいて、印刷クライアント２０の印刷要求処理に対応して、プリンタ３０で実行される印刷実行処理について説明する。図１４は、プリンタ３０で実行される印刷実行処理を説明するフローチャートである。この印刷実行処理は、プリンタ３０のＲＯＭ４４又はハードディスク５８に格納されている印刷実行プログラムをＣＰＵ４０が読み込んで実行することにより実現される処理である。本実施形態においては、この印刷実行処理は、一定の時間間隔で定常的に実行されている処理である。
【００８５】
図１４に示すように、プリンタ３０は、印刷クライアント２０からの接続を待っており、印刷クライアント２０から接続を要求された場合には、プリンタ３０は、プリンタケーブル１０を介した印刷クライアント２０と接続を確立する（ステップＳ２５０）。この処理も、印刷クライアント２０とプリンタ３０との間の接続仕様によっては、必ずしも必要な処理ではない。印刷クライアント２０と接続が確立した後、プリンタ３０は、印刷送信用データＤ１０を受信したかどうかを判断する（ステップＳ２５２）。何ら印刷送信用データＤ１０を受信していない場合（ステップＳ２５２：Ｎｏ）には、このステップＳ２５２の処理を繰り返して待機する。
【００８６】
一方、印刷送信用データＤ１０を受信した場合（ステップＳ２５２：Ｙｅｓ）には、プリンタ３０は自らの機器固有情報を取得する（ステップＳ２５４）。続いて、プリンタ３０は、位置検出部５４から、その時点におけるプリンタ３０のプリンタ位置情報を取得する（ステップＳ２５６）。このようにプリンタ位置情報を、その都度、位置検出部５４から取得することとしているのは、秘密鍵を生成する時のプリンタ３０の位置が、公開鍵を生成した時のプリンタ３０の位置と異なる場合には、このプリンタ３０で印刷ができないようにするためである。
【００８７】
次に、プリンタ３０は、機器固有情報とプリンタ位置情報とに基づいて、パスフレーズを作成する（ステップＳ２５８）。このパスフレーズの作成手法は、上述した公開鍵生成処理におけるステップＳ８８と同じ手法である必要がある。なぜなら、パスフレーズが異なると、プリンタ３０で生成した公開鍵で暗号化された印刷送信用データを復号できる秘密鍵が、生成できなくなってしまうからである。
【００８８】
次に、プリンタ３０は、生成したパスフレーズを用いて、公開鍵暗号法により秘密鍵を生成する（ステップＳ２６０）。このステップＳ２６０で使用するパスフレーズは、プリンタ３０の設置位置が移動されていなければ、上述した公開鍵生成処理におけるステップＳ８８で使用したパスフレーズと同じである。このため、ステップＳ９０で生成した公開鍵に対応する秘密鍵が生成される。続いて、プリンタ３０は、生成された秘密鍵を用いて、受信した印刷送信用データＤ１０を復号して、印刷データＤ０５を取得する（ステップＳ２６２）。
【００８９】
次に、プリンタ３０は、秘密鍵を用いて印刷送信用データＤ１０の復号ができたかどうかを判断する（ステップＳ２６４）。復号ができた場合（ステップＳ２６４：Ｙｅｓ）には、得られた印刷データＤ０５に基づいて、印刷エンジン５２を駆動した印刷を実行する（ステップＳ２６６）。具体的には、印刷データＤ０５の言語解釈を行い、印刷エンジン５２に適合した印刷要求データを生成する。そして、この印刷要求データを印刷エンジン５２に送信することにより、印刷エンジン５２で印刷用紙等に印刷が行われる。
【００９０】
この印刷が正常に完了した時点で、プリンタ３０は、印刷が正常に終了した旨の印刷完了通知を、印刷結果情報として、印刷クライアント２０に送信する（ステップＳ２６８）。
【００９１】
これに対して、ステップＳ２６４において、印刷送信用データＤ１０の復号ができなかったと判断した場合（ステップＳ２６４：Ｎｏ）には、解読不能通知を印刷結果情報として、印刷クライアント２０に送信する（ステップＳ２７０）。
【００９２】
これらステップＳ２６８又はステップＳ２７０の後、プリンタ３０は、印刷クライアント２０との接続を終了する（ステップＳ２７２）。そして、上述したステップＳ２５０の処理に戻る。
【００９３】
以上のように、本実施形態に係る印刷システムによれば、プリンタ３０の公開鍵は、サービスプロバイダ１５で認証を受けた正当な権限を有する者が指示をした場合に限り、プリンタ３０で生成することができ、これをプリンタ３０が格納することができる。このため、プリンタ３０が正常な印刷をできる設置位置を限定することができる。
【００９４】
すなわち、サービスプロバイダ１５は、公開鍵の生成を要求した者が、正当な権限を有する者であるかどうかを、公開鍵生成認証情報に基づいて判断する。そして、この公開鍵生成認証情報が一致するとサービスプロバイダ１５が判断した場合に限り、プリンタ３０は、少なくともその時点におけるプリンタ３０のプリンタ位置情報を取得して、このプリンタ位置情報を含むパスフレーズを用いて、公開鍵を生成し、プリンタ３０内に保持する。一方、正当な権限を有する者でないとサービスプロバイダ１５が判断した場合には、プリンタ３０は、公開鍵を生成しない。
【００９５】
そして、プリンタ３０は、ユーザからの要求に基づいて、この公開鍵を印刷クライアント２０に送信する。印刷クライアント２０は、プリンタ３０から送信された公開鍵を、ハードディスク７６に格納する。印刷クライアント２０がプリンタ３０に印刷データＤ０５を送信する際には、この公開鍵を用いて暗号化した印刷送信用データＤ１０として送信する。プリンタ３０では、印刷送信用データＤ１０を受信する都度、その時点におけるプリンタ位置情報を取得し、このプリンタ位置情報を含むパスフレーズを用いて秘密鍵を生成する。そして、プリンタ３０は、この秘密鍵で印刷送信用データＤ１０を復号し、復号できた場合は印刷を行い、復号できなかった場合には印刷を行わない。このため、プリンタ３０において公開鍵を生成した際のプリンタ位置情報と、同じくプリンタ３０において秘密鍵を生成する際のプリンタ位置情報が異なると、受信した印刷送信用データＤ１０の復号が適正にできないこととなり、正常な印刷結果を得ることができない。これにより、プリンタ３０が使用できる位置を、正当な権限を有する者が公開鍵の生成を指示した場所に限定することができる。
【００９６】
また、正当な権限を有する操作者であれば、サービスプロバイダ１５の認証を得て、何度でも公開鍵の生成をプリンタ３０に指示することができるので、プリンタメーカ等の正当な理由でプリンタ３０の設置場所を変更する場合でも、このプリンタ３０を引き続き、使用することができる。すなわち、正当な権限を有する操作者が、プリンタ３０の新たな設置場所で、再度、サービスプロバイダ１５に認証を要求すれば、その場所のプリンタ位置情報に基づいて、新たな公開鍵がプリンタ３０で生成される。このため、プリンタ３０を有効に活用することができるようになる。
【００９７】
なお本発明は上記実施形態に限定されずに種々に変形可能である。例えば、上述した実施形態においては、サービスプロバイダ１５は、印刷クライアント２０にネットワークＮＴを介して接続されると説明したが、他の印刷クライアントと接続されてもよい。また、サービスプロバイダ１５は、印刷クライアント以外のコンピュータと接続されてもよい。また、プリンタ３０も、直接ネットワークＮＴに接続されるようにしてもよい。
【００９８】
また、上述した各実施形態においては、正当な権限を有する操作者であるかどうかを示す公開鍵生成認証情報をＩＤとパスワードの組み合わせで構成したが、公開鍵生成認証情報は、ＩＤとパスワードの組み合わせに限るものではない。例えば、サービスプロバイダ１５に、正当な権限を有する者の指紋を登録しておき、操作者の指紋を読み取ってサービスプロバイダ１５に送信し、指紋が一致した場合に、正当な権限を有する者であると判断するようにしてもよい。
【００９９】
また、使用できる位置を制限するデータ受信装置としてプリンタを例示して説明したが、本発明はプリンタに限定されるものではない。さらに、データ送信装置も、印刷クライアントに限定されるものではない。
【０１００】
例えば、データ送受信システムにおけるデータ送信装置が画像撮影用のデジタルカメラであり、データ受信装置がデジタルカメラで撮影した画像データを蓄積するデータサーバであってもよい。この場合、デジタルカメラから送信されるデータはデータサーバで生成された公開鍵を用いて暗号化されており、このデータを受信したデータサーバでは、上述した手法により秘密鍵を生成し、このデータの復号を行うこととなる。そして、受信したデータの復号ができた場合には、そのデータを蓄積し、復号できなかった場合には、そのデータを蓄積しないこととなる。
【０１０１】
また、データ送受信システムにおけるデータ送信装置がパーソナルコンピュータであり、データ受信装置がそのパーソナルコンピュータから送信された画像データを投影するプロジェクタであってもよい。この場合、パーソナルコンピュータから送信されるデータはプロジェクタで生成された公開鍵を用いて暗号化されており、このデータを受信したプロジェクタでは、上述した手法により秘密鍵を生成し、このデータの復号を行うこととなる。そして、受信したデータの復号ができた場合には、そのデータを投影し、復号できなかった場合には、そのデータを投影しないこととなる。
【０１０２】
さらには、データ送受信システムにおけるデータ送信装置が音楽等のコンテンツサーバであり、データ受信装置がコンテンツサーバから送信された音楽等のコンテンツデータの再生装置であってもよい。この場合、コンテンツサーバから送信されるデータは再生装置で生成された公開鍵を用いて暗号化されており、このデータを受信した再生装置では、上述した手法により秘密鍵を生成し、このデータの復号を行うこととなる。そして、受信したデータの復号ができた場合には、そのデータを再生し、復号できなかった場合には、そのデータを再生しないこととなる。
【０１０３】
また、上述した実施形態では、プリンタ３０の印刷媒体が印刷用紙である場合を例に説明したが、印刷媒体はこれに限るものではなく、例えば、ＯＨＰシート等の他の印刷媒体であっても本発明を適用することができる。
【０１０４】
さらに、上述の実施形態で説明した各処理については、これら各処理を実行するためのプログラムをフレキシブルディスク、ＣＤ−ＲＯＭ（Compact Disc-Read Only Memory）、ＲＯＭ、メモリカード等の記録媒体に記録して、記録媒体の形で頒布することが可能である。この場合、このプログラムが記録された記録媒体をサービスプロバイダ１５、印刷クライアント２０及び／又はプリンタ３０に読み込ませ、実行させることにより、上述した実施形態を実現することができる。
【０１０５】
また、サービスプロバイダ１５、印刷クライアント２０及び／又はプリンタ３０は、オペレーティングシステムや別のアプリケーションプログラム等の他のプログラムを備える場合がある。この場合、サービスプロバイダ１５、印刷クライアント２０及び／又はプリンタ３０の備える他のプログラムを活用し、記録媒体にはサービスプロバイダ１５、印刷クライアント２０及び／又はプリンタ３０が備えるプログラムの中から、上述した実施形態と同等の処理を実現するプログラムを呼び出すような命令を記録するようにしてもよい。
【０１０６】
さらに、このようなプログラムは、記録媒体の形ではなく、ネットワークを通じて搬送波として頒布することも可能である。ネットワーク上を搬送波の形で伝送されたプログラムは、サービスプロバイダ１５、印刷クライアント２０及び／又はプリンタ３０に取り込まれて、このプログラムを実行することにより上述した実施形態を実現することができる。
【０１０７】
また、記録媒体にプログラムを記録する際や、ネットワーク上を搬送波として伝送される際に、プログラムの暗号化や圧縮化がなされている場合がある。この場合には、これら記録媒体や搬送波からプログラムを読み込んだサービスプロバイダ１５、印刷クライアント２０及び／又はプリンタ３０は、そのプログラムの復号や伸張を行った上で、実行する必要がある。
【０１０８】
【発明の効果】
以上説明したように、本発明に係る印刷システムによれば、印刷クライアントと、この印刷クライアントからの要求に基づいて印刷を行うプリンタと、少なくとも前記印刷クライアントに接続されるサービスプロバイダとを有する印刷システムにおいて、プリンタが正常に印刷を行う位置を、プリンタが公開鍵を生成した時のプリンタの位置に制限することができる。
【図面の簡単な説明】
【図１】本発明の一実施形態に係る印刷システムの構成の一例を示す図。
【図２】本発明の一実施形態に係るプリンタのハードウェア構成の一例を示す図。
【図３】本発明の一実施形態に係る印刷クライアントの構成の一例を示す図。
【図４】本発明の一実施形態に係るサービスプロバイダの構成の一例を示す図。
【図５】本発明の一実施形態において、公開鍵と秘密鍵とを用いた、印刷データの暗号化と復号を説明するための概念図。
【図６】本発明の一実施形態に係る印刷クライアントが実行する公開鍵生成要求処理を説明するフローチャートを示す図。
【図７】本発明の一実施形態に係るサービスプロバイダが実行する認証処理を説明するフローチャートを示す図。
【図８】本発明の一実施形態に係るプリンタが実行する公開鍵生成処理を説明するフローチャートを示す図。
【図９】本発明の一実施形態に係るプリンタが備える公開鍵格納部の構成の一例を示す図。
【図１０】本発明の一実施形態に係る印刷クライアントが実行する公開鍵要求処理を説明するフローチャートを示す図。
【図１１】本発明の一実施形態に係る印刷クライアントが備える公開鍵テーブルの構成の一例を示す図。
【図１２】本発明の一実施形態に係るプリンタが実行する公開鍵送信処理を説明するフローチャートを示す図。
【図１３】本発明の一実施形態に係る印刷クライアントが実行する印刷要求処理を説明するフローチャートを示す図。
【図１４】本発明の一実施形態に係るプリンタが実行する印刷実行処理を説明するフローチャートを示す図。
【符号の説明】
ＮＴ  ネットワーク
１０  ケーブル
１５  サービスプロバイダ
２０  印刷クライアント
３０  プリンタ
４０  ＣＰＵ
４２  ＲＡＭ
４４  ＲＯＭ
４６  内部バス
４８、５０、５６  インターフェース
５２  印刷エンジン
５４  位置検出部
５８  ハードディスク
６０  コンピュータ本体
６２  ディスプレイ
６４  ＣＰＵ
６６  ＲＡＭ
６８  ＲＯＭ
７０  内部バス
７２、７３、７４、７８  インターフェース
７６  ハードディスク
【図１】
2004206620.tif 000003
【図２】
2004206620.tif 000004
【図３】
2004206620.tif 000005
【図４】
2004206620.tif 000006
【図５】
2004206620.tif 000007
【図６】
2004206620.tif 000008
【図７】
2004206620.tif 000009
【図８】
2004206620.tif 000010
【図９】
2004206620.tif 000011
【図１０】
2004206620.tif 000012
【図１１】
2004206620.tif 000013
【図１２】
2004206620.tif 000014
【図１３】
2004206620.tif 000015
【図１４】
2004206620.tif 000016