(57)【要約】印刷クライアントは、プリンタからそのプリンタ位置情報を予め取得しておく。そして例えば、印刷クライアントがプリンタに印刷データを送信しようとする場合には、この印刷データにプリンタのプリンタ位置情報を付加した印刷送信用データを生成して送信する。この印刷送信用データを受信したプリンタでは、印刷送信用データに含まれているプリンタ位置情報が、その時点のプリンタ位置情報と一致した場合にのみ、印刷データの印刷を実行する。これにより、印刷クライアントからプリンタにネットワークを介して送信する印刷送信用データのセキュリティを確保する。
2003107171.tif 000002
【特許請求の範囲】
【請求項１】
印刷送信用データの処理を行うプリンタであって、
印刷送信用データを受信する、印刷送信用データ受信部と、
前記印刷送信用データ受信部が前記印刷送信用データを受信した時点で、当該プリンタの設置されている場所を特定するためのプリンタ位置情報を取得し、これを第１プリンタ位置情報とする、第１プリンタ位置取得部と、
前記印刷送信用データが、前記第１プリンタ位置情報に合致したものであるかどうかを判断する、判断部と、
前記判断部で前記印刷送信用データが前記第１プリンタ位置情報に合致したと判断した場合には、前記印刷送信用データに基づく印刷を実行し、前記判断部で前記印刷送信用データが前記第１プリンタ位置情報に合致しないと判断した場合には、前記印刷送信用データに基づく印刷を制限する、印刷実行部と、
を備えることを特徴とするプリンタ。
【請求項２】
前記印刷実行部は、前記判断部で前記印刷送信用データが前記第１プリンタ位置情報に合致しないと判断した場合には、前記印刷送信用データに基づく印刷を実行しない、ことを特徴とする請求項１に記載のプリンタ。
【請求項３】
印刷クライアントから送信された位置情報取得要求を受信する、位置情報取得要求受信部と、
前記位置情報取得要求受信部が前記位置情報取得要求を受信した時点で、当該プリンタの設置されている場所を特定するためのプリンタ位置情報を取得し、これを第２プリンタ位置情報とする、第２プリンタ位置取得部と、
前記第２プリンタ位置情報を、前記位置情報取得要求を送信した前記印刷クライアントに送信する、プリンタ位置情報送信部と、
をさらに備えることを特徴とする請求項２に記載のプリンタ。
【請求項４】
前記印刷送信用データ受信部で受信する前記印刷送信用データには、前記第２プリンタ位置情報が含まれており、
前記判断部は、前記印刷送信用データに含まれている前記第２プリンタ位置情報と、前記第１プリンタ位置取得部で取得した前記第１プリンタ位置情報とが、一致するかどうかを判断し、両者が一致した場合には前記印刷送信用データが前記第１プリンタ位置情報と合致したと判断し、両者が一致しない場合には前記印刷送信用データが前記第１プリンタ位置情報と合致しなかったと判断する、ことを特徴とする請求項３に記載のプリンタ。
【請求項５】
前記印刷送信用データ受信部で受信する前記印刷送信用データには、前記第２プリンタ位置情報が含まれており、
前記判断部は、前記印刷送信用データに含まれている前記第２プリンタ位置情報と、前記第１プリンタ位置取得部で取得した前記第１プリンタ位置情報との差が、所定範囲内であるかどうかを判断し、両者の差が前記所定範囲内にある場合には前記印刷送信用データが前記第１プリンタ位置情報と合致したと判断し、両者の差が前記所定範囲内にない場合には前記印刷送信用データが前記第１プリンタ位置情報と合致しなかったと判断する、ことを特徴とする請求項３に記載のプリンタ。
【請求項６】
印刷クライアントから認証情報を受信する、認証情報受信部と、
前記認証情報受信部で受信した前記認証情報が、予め登録されている認証情報と一致するかどうかを判断する、認証情報判断部と、
をさらに備えるとともに、
前記プリンタ位置情報送信部は、前記認証情報判断部で認証情報が一致した場合にのみ、前記第２プリンタ位置情報を前記印刷クライアントに送信する、ことを特徴とする請求項３に記載のプリンタ。
【請求項７】
印刷クライアントから送信された公開鍵取得要求を受信する、公開鍵取得要求受信部と、
前記公開鍵取得要求受信部が前記公開鍵取得要求を受信した時点で、当該プリンタのプリンタ位置情報を取得し、これを第２プリンタ位置情報とする、第２プリンタ位置取得部と、
前記第２プリンタ位置情報を少なくとも含む第１パスフレーズを用いて公開鍵を生成する、公開鍵生成部と、
前記公開鍵生成部により生成された公開鍵を、前記公開鍵取得要求を送信した前記印刷クライアントに送信する、公開鍵送信部と、
をさらに備えることを特徴とする請求項２に記載のプリンタ。
【請求項８】
前記判断部は、前記第１プリンタ位置取得部で取得した前記第１プリンタ位置情報を少なくとも含む第２パスフレーズを用いて秘密鍵を生成し、この秘密鍵で前記印刷送信用データが復号できた場合には、前記印刷送信用データが前記第１プリンタ位置情報と合致したと判断し、復号できなかった場合には前記印刷送信用データが前記第１プリンタ位置情報と合致しなかったと判断する、ことを特徴とする請求項７に記載のプリンタ。
【請求項９】
前記印刷クライアントから認証情報を受信する、認証情報受信部と、
前記認証情報受信部で受信した認証情報が、予め登録されている認証情報と一致するかどうかを判断する、認証情報判断部と、
をさらに備えるとともに、
前記公開鍵送信部は、前記認証情報判断部で認証情報が一致した場合にのみ、前記公開鍵を前記印刷クライアントに送信する、ことを特徴とする請求項８に記載のプリンタ。
【請求項１０】
当該プリンタに関する固有の情報である機器固有情報を取得する、機器固有情報取得部をさらに備えており、
前記判断部で用いる前記第２パスフレーズは、少なくとも前記第１プリンタ位置情報と前記機器固有情報とを含んでおり、
前記公開鍵生成部で用いる前記第１パスフレーズは、少なくとも前記第２プリンタ位置情報と前記機器固有情報とを含んでいる、
ことを特徴とする請求項９に記載のプリンタ。
【請求項１１】
前記第１プリンタ位置取得部及び第２プリンタ位置検出部は、前記プリンタ位置情報を取得する際には、複数の位置検出部の中から、その時点で位置検出が可能になっている１つの位置検出部から、前記プリンタ位置情報を取得する、ことを特徴とする請求項１に記載のプリンタ。
【請求項１２】
印刷送信用データの処理を行うプリンタの制御方法であって、
印刷送信用データを受信するステップと、
前記印刷送信用データを受信した時点で、当該プリンタの設置されている場所を特定するためのプリンタ位置情報を取得し、これを第１プリンタ位置情報とするステップと、
前記印刷送信用データが、前記第１プリンタ位置情報に合致したものであるかどうかを判断するステップと、
前記印刷送信用データが前記第１プリンタ位置情報に合致したと判断した場合に、前記印刷送信用データに基づく印刷を実行するステップと、
前記印刷送信用データが前記第１プリンタ位置情報に合致しないと判断した場合に、前記印刷送信用データに基づく印刷を制限するステップと、
を備えることを特徴とするプリンタの制御方法。
【請求項１３】
前記印刷を制限するステップでは、前記印刷送信用データが前記第１プリンタ位置情報に合致しないと判断した場合には、前記印刷送信用データに基づく印刷を実行しない、ことを特徴とする請求項１２に記載のプリンタの制御方法。
【請求項１４】
印刷クライアントから送信された位置情報取得要求を受信するステップと、
前記位置情報取得要求を受信した時点で、当該プリンタの設置されている場所を特定するためのプリンタ位置情報を取得し、これを第２プリンタ位置情報とするステップと、
前記第２プリンタ位置情報を、前記位置情報取得要求を送信した前記印刷クライアントに送信するステップと、
をさらに備えることを特徴とする請求項１３に記載のプリンタの制御方法。
【請求項１５】
受信する前記印刷送信用データには、前記第２プリンタ位置情報が含まれており、
前記印刷送信用データを判断するステップでは、前記印刷送信用データに含まれている前記第２プリンタ位置情報と、前記第１プリンタ位置情報とが、一致するかどうかを判断し、両者が一致した場合には前記印刷送信用データが前記第１プリンタ位置情報と合致したと判断し、両者が一致しない場合には前記印刷送信用データが前記第１プリンタ位置情報と合致しなかったと判断する、ことを特徴とする請求項１４に記載のプリンタの制御方法。
【請求項１６】
前記印刷送信用データ受信部で受信する前記印刷送信用データには、前記第２プリンタ位置情報が含まれており、
前記印刷送信用データを判断するステップでは、前記印刷送信用データに含まれている前記第２プリンタ位置情報と、前記第１プリンタ位置情報との差が、所定範囲内であるかどうかを判断し、両者の差が前記所定範囲内にある場合には前記印刷送信用データが前記第１プリンタ位置情報と合致したと判断し、両者の差が前記所定範囲内にない場合には前記印刷送信用データが前記第１プリンタ位置情報と合致しなかったと判断する、ことを特徴とする請求項１４に記載のプリンタの制御方法。
【請求項１７】
印刷クライアントから認証情報を受信するステップと、
前記受信した前記認証情報が、予め登録されている認証情報と一致するかどうかを判断するステップと、
をさらに備えるとともに、
前記第２プリンタ位置情報を送信するステップでは、前記認証情報が一致した場合にのみ、前記第２プリンタ位置情報を前記印刷クライアントに送信する、ことを特徴とする請求項１４に記載のプリンタの制御方法。
【請求項１８】
印刷クライアントから送信された公開鍵取得要求を受信するステップと、
前記公開鍵取得要求を受信した時点で、当該プリンタのプリンタ位置情報を取得し、これを第２プリンタ位置情報とするステップと、
前記第２プリンタ位置情報を少なくとも含む第１パスフレーズを用いて公開鍵を生成するステップと、
前記公開鍵を、前記公開鍵取得要求を送信した前記印刷クライアントに送信するステップと、
をさらに備えることを特徴とする請求項１３に記載のプリンタの制御方法。
【請求項１９】
前記印刷送信用データを判断するステップでは、前記第１プリンタ位置情報を少なくとも含む第２パスフレーズを用いて秘密鍵を生成し、この秘密鍵で前記印刷送信用データが復号できた場合には、前記印刷送信用データが前記第１プリンタ位置情報と合致したと判断し、復号できなかった場合には前記印刷送信用データが前記第１プリンタ位置情報と合致しなかったと判断する、ことを特徴とする請求項１８に記載のプリンタの制御方法。
【請求項２０】
前記印刷クライアントから認証情報を受信するステップと、
前記受信した認証情報が、予め登録されている認証情報と一致するかどうかを判断するステップと、
をさらに備えるとともに、
前記公開鍵を送信するステップでは、前記認証情報が一致した場合にのみ、前記公開鍵を前記印刷クライアントに送信する、ことを特徴とする請求項１９に記載のプリンタの制御方法。
【請求項２１】
当該プリンタに関する固有の情報である機器固有情報を取得するステップをさらに備えており、
前記第２パスフレーズは、少なくとも前記第１プリンタ位置情報と前記機器固有情報とを含んでおり、
前記第１パスフレーズは、少なくとも前記第２プリンタ位置情報と前記機器固有情報とを含んでいる、
ことを特徴とする請求項２０に記載のプリンタの制御方法。
【請求項２２】
前記プリンタ位置情報を取得するステップでは、複数の位置検出部の中から、その時点で位置検出が可能になっている１つの位置検出部から、前記プリンタ位置情報を取得する、ことを特徴とする請求項１２に記載のプリンタの制御方法。
【請求項２３】
少なくとも１台のプリンタと、前記プリンタにネットワークを介して接続される少なくとも１台の印刷クライアントとを有する、印刷システムであって、
前記印刷クライアントは、
前記プリンタが設置されている場所を特定するためのプリンタ位置情報である第１プリンタ位置情報を保持する、プリンタ位置情報保持部と、
前記プリンタ位置情報保持部から前記第１プリンタ位置情報を読み出す、プリンタ位置情報読み出し部と、
前記プリンタ位置情報読み出し部で読み出した前記第１プリンタ位置情報を、印刷データに付加して、印刷送信用データを生成する、印刷送信用データ生成部と、
前記印刷送信用データ生成部で生成した前記印刷送信用データを、前記ネットワークを介して前記プリンタに送信する、印刷送信用データ送信部と、
を備えており、
前記プリンタは、
前記印刷クライアントが送信した前記印刷送信用データを受信する、印刷送信用データ受信部と、
前記印刷送信用データを受信した時点で、当該プリンタが設置されている場所を特定するためのプリンタ位置情報である第２プリンタ位置情報を取得する、第１プリンタ位置取得部と、
前記印刷送信用データに含まれている第１プリンタ位置情報と、前記第１プリンタ位置取得部で取得した第２プリンタ位置情報とが、合致するかどうかを判断し、両者が合致した場合には前記印刷送信用データに基づく印刷を実行し、両者が合致しない場合には前記印刷送信用データに基づく印刷を制限する、印刷実行部と、
を備えることを特徴とする印刷システム。
【請求項２４】
前記印刷実行部は、前記印刷送信用データに含まれている第１プリンタ位置情報と、前記第１プリンタ位置取得部で取得した第２プリンタ位置情報とが両者が合致しない場合には、前記印刷送信用データに基づく印刷を実行しない、ことを特徴とする請求項２３に記載の印刷システム。
【請求項２５】
前記印刷実行部は、前記印刷送信用データに含まれている前記第１プリンタ位置情報と、前記第１プリンタ位置取得部で取得した前記第２プリンタ位置情報とが一致しなくとも、両者の差が所定範囲内にある場合には、前記第１プリンタ位置情報と前記第２プリンタ位置情報とが合致したと判断する、ことを特徴とする請求項２４に記載の印刷システム。
【請求項２６】
前記印刷クライアントは、前記プリンタから前記第１プリンタ位置情報を取得するために位置情報取得要求を前記プリンタに送信する、位置情報取得要求送信部を、さらに備えており、
前記プリンタは、
前記印刷クライアントから送信された位置情報取得要求を受信する、位置情報取得要求受信部と、
前記位置情報取得要求受信部が前記位置情報取得要求を受信した時点で、前記プリンタが設置されている場所を特定するためのプリンタ位置情報を取得し、これを前記第１プリンタ位置情報とする、第２プリンタ位置取得部と、
前記第２プリンタ位置取得部で取得した前記第１プリンタ位置情報を、前記位置情報取得要求を送信した前記印刷クライアントに送信する、プリンタ位置情報送信部と、
をさらに備えることを特徴とする請求項２４に記載の印刷システム。
【請求項２７】
前記印刷クライアントは、前記プリンタから前記第１プリンタ位置情報を取得しようとする際に、前記プリンタに認証情報を送信する、認証情報送信部をさらに備えており、
前記プリンタは、
前記印刷クライアントから送信された前記認証情報を受信する、認証情報受信部と、
前記認証情報受信部で受信した前記認証情報が、予め当該プリンタに登録されている認証情報と一致するかどうかを判断する、認証情報判断部と、
をさらに備えるとともに、
前記プリンタ位置情報送信部は、前記認証情報判断部で認証情報が一致した場合にのみ、前記第１プリンタ位置情報を前記印刷クライアントに送信する、ことを特徴とする請求項２６に記載の印刷システム。
【請求項２８】
前記第１プリンタ位置取得部は、前記プリンタ位置情報を取得する際には、複数の位置検出部の中から、その時点で位置検出が可能になっている１つの位置検出部から、前記プリンタ位置情報を取得する、ことを特徴とする請求項２３に記載の印刷システム。
【請求項２９】
少なくとも１台のプリンタと、前記プリンタにネットワークを介して接続される少なくとも１台の印刷クライアントとを有する、印刷システムであって、
前記印刷クライアントは、
前記プリンタから取得した暗号用の公開鍵を保持する、公開鍵保持部と、
前記公開鍵保持部から前記公開鍵を読み出す、公開鍵読み出し部と、
前記公開鍵読み出し部で読み出した前記公開鍵を用いて、印刷データを暗号化して、印刷送信用データを生成する印刷送信用データ生成部と、
前記印刷送信用データ生成部で生成した前記印刷送信用データを、前記ネットワークを介して前記プリンタに送信する、印刷送信用データ送信部と、
を備えており、
前記プリンタは、
前記印刷クライアントが送信した前記印刷送信用データを受信する、印刷送信用データ受信部と、
前記印刷送信用データを受信した時点で、当該プリンタが設置されている場所を特定するためのプリンタ位置情報を取得し、これを第１プリンタ位置情報とする、第１プリンタ位置取得部と、
前記第１プリンタ位置取得部で取得した前記第１プリンタ位置情報を少なくとも含む第１パスフレーズを用いて秘密鍵を生成し、この秘密鍵で前記印刷送信用データが復号できた場合には、前記印刷送信用データに基づく印刷を実行し、復号できなかった場合には前記印刷送信用データに基づく印刷を実行しない、印刷実行部と、
を備えることを特徴とする印刷システム。
【請求項３０】
前記印刷クライアントは、前記プリンタから公開鍵を取得するために公開鍵取得要求を前記プリンタに送信する、公開鍵取得要求送信部を、さらに備えており、
前記プリンタは、
前記印刷クライアントから送信された前記公開鍵取得要求を受信する、公開鍵取得要求受信部と、
前記公開鍵取得要求受信部が、前記公開鍵取得要求を受信した時点で、プリンタ位置情報を取得し、これを第２プリンタ位置情報とする、第２プリンタ位置取得部と、
前記第２プリンタ位置取得部で取得した前記第２プリンタ位置情報を少なくとも含む第２パスフレーズを用いて公開鍵を生成する、公開鍵生成部と、
前記公開鍵生成部により生成された公開鍵を、前記公開鍵取得要求を送信した前記印刷クライアントに送信する、公開鍵送信部と、
をさらに備えることを特徴とする請求項２９に記載の印刷システム。
【請求項３１】
前記印刷クライアントは、前記プリンタから公開鍵を取得しようとする際に、前記プリンタに認証情報を送信する、認証情報送信部をさらに備えており、
前記プリンタは、
前記印刷クライアントから送信された前記認証情報を受信する、認証情報受信部と、
前記認証情報受信部で受信した認証情報が、当該プリンタに予め登録されている認証情報と一致するかどうかを判断する、認証情報判断部と、
をさらに備えるとともに、
前記公開鍵送信部は、前記認証情報判断部で認証情報が一致した場合にのみ、前記公開鍵を前記印刷クライアントに送信する、ことを特徴とする請求項３０に記載の印刷システム。
【請求項３２】
前記プリンタは、当該プリンタに関する固有の情報である機器固有情報を取得する、機器固有情報取得部をさらに備えており、
前記第１パスフレーズは、少なくとも前記第１プリンタ位置情報と前記機器固有情報とを含んでおり、
前記第２パスフレーズは、少なくとも前記第２プリンタ位置情報と前記機器固有情報とを含んでいる、
ことを特徴とする請求項３１に記載の印刷システム。
【請求項３３】
前記第１プリンタ位置取得部は、前記プリンタ位置情報を取得する際には、複数の位置検出部の中から、その時点で位置検出が可能になっている１つの位置検出部から、前記プリンタ位置情報を取得する、ことを特徴とする請求項２９に記載の印刷システム。
【請求項３４】
少なくとも１台のプリンタと、前記プリンタにネットワークを介して接続される少なくとも１台の印刷クライアントとを有する、印刷システムの制御方法であって、
前記印刷クライアントにおいて、前記プリンタが設置されている場所を特定するためのプリンタ位置情報である第１プリンタ位置情報を保持しているプリンタ位置情報保持部から、前記第１プリンタ位置情報を読み出すステップと、
前記読み出した前記第１プリンタ位置情報を、印刷データに付加して、印刷送信用データを生成するステップと、
前記生成した前記印刷送信用データを、前記ネットワークを介して前記印刷クライアントから前記プリンタに送信するステップと、
前記プリンタにおいて、前記印刷クライアントが送信した前記印刷送信用データを受信するステップと、
前記印刷送信用データを受信した時点で、当該プリンタが設置されている場所を特定するためのプリンタ位置情報である第２プリンタ位置情報を取得するステップと、
前記印刷送信用データに含まれている第１プリンタ位置情報と、前記第１プリンタ位置取得部で取得した第２プリンタ位置情報とが、合致するかどうかを判断するステップと、
前記印刷送信用データが前記第１プリンタ位置情報と合致したと判断した場合に、前記印刷送信用データに基づく印刷を実行するステップと、
前記印刷送信用データが前記第１プリンタ位置情報と合致しないと判断した場合に、前記印刷送信用データに基づく印刷を制限するステップと、
を備えることを特徴とする印刷システムの制御方法。
【請求項３５】
前記印刷を制限するステップでは、前記印刷送信用データに含まれている第１プリンタ位置情報と、前記第１プリンタ位置取得部で取得した第２プリンタ位置情報とが両者が合致しない場合には、前記印刷送信用データに基づく印刷を実行しない、ことを特徴とする請求項３４に記載の印刷システムの制御方法。
【請求項３６】
前記合致するかどうかを判断するステップでは、前記印刷送信用データに含まれている前記第１プリンタ位置情報と、前記第１プリンタ位置取得部で取得した前記第２プリンタ位置情報とが一致しなくとも、両者の差が所定範囲内にある場合には、前記第１プリンタ位置情報と前記第２プリンタ位置情報とが合致したと判断する、ことを特徴とする請求項３５に記載の印刷システムの制御方法。
【請求項３７】
前記プリンタから前記第１プリンタ位置情報を取得するために、位置情報取得要求を前記印刷クライアントから前記プリンタに送信するステップと、
前記プリンタにおいて、前記印刷クライアントから送信された位置情報取得要求を受信するステップと、
前記位置情報取得要求を受信した時点で、前記プリンタが設置されている場所を特定するためのプリンタ位置情報を取得し、これを前記第１プリンタ位置情報とするステップと、
前記第１プリンタ位置情報を、前記位置情報取得要求を送信した前記印刷クライアントに送信するステップと、
をさらに備えることを特徴とする請求項３５に記載の印刷システムの制御方法。
【請求項３８】
前記プリンタから前記第１プリンタ位置情報を取得しようとする際に、前記印刷クライアントから前記プリンタに認証情報を送信するステップと、
前記プリンタにおいて、前記印刷クライアントから送信された前記認証情報を受信するステップと、
前記認証情報受信部で受信した前記認証情報が、予め当該プリンタに登録されている認証情報と一致するかどうかを判断するステップと、
をさらに備えるとともに、
前記プリンタ位置情報を送信するステップでは、前記認証情報が一致した場合にのみ、前記第１プリンタ位置情報を前記印刷クライアントに送信する、ことを特徴とする請求項３７に記載の印刷システムの制御方法。
【請求項３９】
前記プリンタ位置情報を取得する際には、複数の位置検出部の中から、その時点で位置検出が可能になっている１つの位置検出部から、前記プリンタ位置情報を取得する、ことを特徴とする請求項３４に記載の印刷システムの制御方法。
【請求項４０】
少なくとも１台のプリンタと、前記プリンタにネットワークを介して接続される少なくとも１台の印刷クライアントとを有する、印刷システムの制御方法であって、
前記印刷クライアントにおいて、前記プリンタから取得した暗号用の公開鍵を保持する公開鍵保持部から、前記公開鍵を読み出すステップと、
前記読み出した前記公開鍵を用いて、印刷データを暗号化して、印刷送信用データを生成するステップと、
前記生成した前記印刷送信用データを、前記ネットワークを介して前記プリンタに送信するステップと、
前記プリンタにおいて、前記印刷クライアントが送信した前記印刷送信用データを受信するステップと、
前記印刷送信用データを受信した時点で、当該プリンタが設置されている場所を特定するためのプリンタ位置情報を取得し、これを第１プリンタ位置情報とするステップと、
前記第１プリンタ位置情報を少なくとも含む第１パスフレーズを用いて秘密鍵を生成し、この秘密鍵で前記印刷送信用データが復号できた場合には、前記印刷送信用データに基づく印刷を実行し、復号できなかった場合には前記印刷送信用データに基づく印刷を実行しないステップと、
を備えることを特徴とする印刷システムの制御方法。
【請求項４１】
前記プリンタから公開鍵を取得するために、公開鍵取得要求を前記印刷クライアントから前記プリンタに送信するステップと、
前記プリンタにおいて、前記印刷クライアントから送信された前記公開鍵取得要求を受信するステップと、
前記公開鍵取得要求を受信した時点で、プリンタ位置情報を取得し、これを第２プリンタ位置情報とするステップと、
前記第２プリンタ位置情報を少なくとも含む第２パスフレーズを用いて公開鍵を生成するステップと、
前記公開鍵を、前記公開鍵取得要求を送信した前記印刷クライアントに送信するステップと、
をさらに備えることを特徴とする請求項４０に記載の印刷システムの制御方法。
【請求項４２】
前記プリンタから公開鍵を取得しようとする際に、前記印刷クライアントから前記プリンタに認証情報を送信するステップと、
前記プリンタにおいて、前記印刷クライアントから送信された前記認証情報を受信するステップと、
前記受信した認証情報が、当該プリンタに予め登録されている認証情報と一致するかどうかを判断するステップと、
をさらに備えるとともに、
前記公開鍵を送信するステップでは、前記認証情報が一致した場合にのみ、前記公開鍵を前記印刷クライアントに送信する、ことを特徴とする請求項４１に記載の印刷システムの制御方法。
【請求項４３】
前記プリンタにおいて、当該プリンタに関する固有の情報である機器固有情報を取得するステップをさらに備えており、
前記第１パスフレーズは、少なくとも前記第１プリンタ位置情報と前記機器固有情報とを含んでおり、
前記第２パスフレーズは、少なくとも前記第２プリンタ位置情報と前記機器固有情報とを含んでいる、
ことを特徴とする請求項４２に記載の印刷システムの制御方法。
【請求項４４】
前記プリンタ位置情報を取得する際には、複数の位置検出部の中から、その時点で位置検出が可能になっている１つの位置検出部から、前記プリンタ位置情報を取得する、ことを特徴とする請求項４０に記載の印刷システムの制御方法。
【請求項４５】
印刷送信用データの処理を行うプリンタであって、
印刷送信用データを受信する、印刷送信用データ受信部と、
前記印刷送信用データ受信部が前記印刷送信用データを受信した時点で、当該プリンタの設置されている場所を特定するためのプリンタ位置情報を取得する、プリンタ位置取得部と、
前記プリンタ位置情報を少なくとも含むパスフレーズを用いて秘密鍵を生成する、秘密鍵生成部と、
前記印刷送信用データ受信部で受信した前記印刷送信用データを、前記秘密鍵を用いて復号し、復号することにより得られた印刷データに基づいて印刷を実行する、印刷実行部と、
を備えることを特徴とするプリンタ。
【請求項４６】
データを処理するデータ受信装置であって、
送信されたきたデータを受信する、データ受信部と、
当該データ受信装置が設置されている場所を特定するための装置位置情報を取得する、装置位置取得部と、
前記データが、前記装置位置取得部で取得した装置位置情報に合致したものであるかどうかを判断する、判断部と、
前記判断部で前記データが前記装置位置情報に合致したと判断した場合には、前記データに基づく処理を実行し、前記判断部で前記データが前記装置位置情報に合致しないと判断した場合には、前記データに基づく処理を制限する、処理部と、
を備えることを特徴とするデータ受信装置。
【請求項４７】
少なくとも１台のデータ受信装置と、前記データ受信装置にネットワークを介して接続される少なくとも１台のデータ送信装置とを有する、データ送受信システムであって、
前記データ送信装置は、
前記データ受信装置が設置されている場所を特定するための第１装置位置情報を保持する、装置位置情報保持部と、
前記装置位置情報保持部から前記第１装置位置情報を読み出す、装置位置情報読み出し部と、
前記装置位置情報読み出し部で読み出した前記第１装置位置情報を、データに付加して、送信用データを生成する、送信用データ生成部と、
前記送信用データ生成部で生成した前記送信用データを、前記ネットワークを介して前記データ受信装置に送信する、送信用データ送信部と、
を備えており、
前記データ受信装置は、
前記データ送信装置が送信した前記送信用データを受信する、送信用データ受信部と、
前記送信用データを受信した時点で、当該データ受信装置が設置されている場所を特定するための第２装置位置情報を取得する、装置位置取得部と、
前記送信用データに含まれている第１装置位置情報と、前記装置位置取得部で取得した第２装置位置情報とが、一致するかどうかを判断し、両者が一致した場合には前記送信用データに基づく処理を実行し、両者が一致しない場合には前記送信用データに基づく処理を制限する、処理実行部と、
を備えることを特徴とするデータ送受信システム。
【請求項４８】
少なくとも１台のデータ受信装置と、前記データ受信装置にネットワークを介して接続される少なくとも１台のデータ送信装置とを有する、データ送受信システムであって、
前記データ送信システムは、
前記データ送信装置から取得した暗号用の公開鍵を保持する、公開鍵保持部と、
前記公開鍵保持部から前記公開鍵を読み出す、公開鍵読み出し部と、
前記公開鍵読み出し部で読み出した前記公開鍵を用いて、データを暗号化して、送信用データを生成する送信用データ生成部と、
前記送信用データ生成部で生成した前記送信用データを、前記ネットワークを介して前記データ受信装置に送信する、送信用データ送信部と、
を備えており、
前記データ受信装置は、
前記データ送信装置が送信した前記送信用データを受信する、送信用データ受信部と、
前記送信用データを受信した時点で、当該データ受信装置が設置されている場所を特定するための装置位置情報を取得する、装置位置取得部と、
前記装置位置取得部で取得した装置位置情報を少なくとも含むパスフレーズを用いて秘密鍵を生成し、この秘密鍵で前記送信用データが復号できた場合には、前記送信用データに基づく処理を実行し、復号できなかった場合には前記送信用データに基づく処理を実行しない、処理実行部と、
を備えることを特徴とするデータ送受信システム。
【請求項４９】
印刷送信用データを処理するサーバであって、
印刷送信用データを受信する、印刷送信用データ受信部と、
当該サーバの設置されている場所を特定するためのサーバ位置情報を取得し、これを第１サーバ位置情報とする、第１サーバ位置取得部と、
前記印刷送信用データが、前記第１サーバ位置取得部で取得した前記第１サーバ位置情報に合致したものであるかどうかを判断する、判断部と、
前記判断部で前記印刷送信用データが前記第１サーバ位置情報に合致したと判断した場合には、前記印刷送信用データをスプーリングし、前記判断部で前記印刷送信用データが前記第１サーバ位置情報に合致しないと判断した場合には、前記印刷送信用データをスプーリングしない、選択スプーリング部と、
を備えることを特徴とするサーバ。
【請求項５０】
印刷送信用データを処理するサーバであって、
印刷送信用データを受信する、印刷送信用データ受信部と、
当該サーバの設置されている場所を特定するためのサーバ位置情報を取得し、これを第１サーバ位置情報とする、第１サーバ位置取得部と、
前記印刷送信用データが、前記第１サーバ位置取得部で取得した前記第１サーバ位置情報に合致したものであるかどうかを判断する、判断部と、
前記判断部で前記印刷送信用データが前記第１サーバ位置情報に合致したと判断した場合には、前記印刷送信用データから得られた印刷データをプリンタに転送し、前記判断部で前記印刷送信用データが前記第１サーバ位置情報に合致しないと判断した場合には、前記印刷データをプリンタに転送しない、転送部と、
を備えることを特徴とするサーバ。
【請求項５１】
少なくとも１台のプリンタと、前記プリンタに接続される少なくとも１台のサーバと、前記サーバにネットワークを介して接続される少なくとも１台の印刷クライアントと、を有する、印刷システムであって、
前記印刷クライアントは、
前記サーバから取得した前記プリンタの暗号用の公開鍵を保持する、公開鍵保持部と、
前記公開鍵保持部から印刷をしようとしているプリンタの前記公開鍵を読み出す、公開鍵読み出し部と、
前記公開鍵読み出し部で読み出した前記公開鍵を用いて、印刷データを暗号化して、印刷送信用データを生成する印刷送信用データ生成部と、
前記印刷送信用データ生成部で生成した前記印刷送信用データを、前記ネットワークを介して前記サーバに送信する、印刷送信用データ送信部と、
を備えており、
前記サーバは、
前記印刷クライアントが送信した前記印刷送信用データを受信する、印刷送信用データ受信部と、
前記印刷送信用データを受信した時点で、前記サーバが設置されている場所を特定するためのサーバ位置情報を取得し、これを第１サーバ位置情報とする、第１サーバ位置取得部と、
前記第１サーバ位置取得部で取得した前記第１サーバ位置情報を少なくとも含む第１パスフレーズを用いて秘密鍵を生成し、この秘密鍵で前記印刷送信用データが復号できた場合には、前記印刷送信用データを復号することにより得られた印刷データをスプーリングし、復号できなかった場合にはスプーリングをしない、選択スプーリング部と、
を備えることを特徴とする印刷システム。
【請求項５２】
少なくとも１台のプリンタと、前記プリンタに接続される少なくとも１台のサーバと、前記サーバにネットワークを介して接続される少なくとも１台の印刷クライアントと、を有する、印刷システムであって、
前記印刷クライアントは、
前記サーバから取得した前記サーバの暗号用の公開鍵を保持する、公開鍵保持部と、
前記公開鍵保持部から前記サーバの前記公開鍵を読み出す、公開鍵読み出し部と、
前記公開鍵読み出し部で読み出した前記公開鍵を用いて、印刷データを暗号化して、印刷送信用データを生成する印刷送信用データ生成部と、
前記印刷送信用データ生成部で生成した前記印刷送信用データを、前記ネットワークを介して前記サーバに送信する、印刷送信用データ送信部と、
を備えており、
前記サーバは、
前記印刷クライアントが送信した前記印刷送信用データを受信する、印刷送信用データ受信部と、
前記印刷送信用データを受信した時点で、前記サーバが設置されている場所を特定するためのサーバ位置情報を取得し、これを第１サーバ位置情報とする、第１サーバ位置取得部と、
前記第１サーバ位置取得部で取得した前記第１サーバ位置情報を少なくとも含む第１パスフレーズを用いて秘密鍵を生成し、この秘密鍵で前記印刷送信用データが復号できた場合には、前記印刷送信用データを復号することにより得られた印刷データをスプーリングし、復号できなかった場合にはスプーリングをしない、選択スプーリング部と、
を備えることを特徴とする印刷システム。
【請求項５３】
印刷送信用データを処理するプリンタであって、
印刷送信用データを受信する、印刷送信用データ受信部と、
設置されている場所を特定するためのプリンタ位置情報を、当該プリンタの外部に設けられた外部装置から取得し、これを第１プリンタ位置情報とする、第１プリンタ位置取得部と、
前記印刷送信用データが、前記第１プリンタ位置取得部で取得した第１プリンタ位置情報に合致したものであるかどうかを判断する、判断部と、
前記判断部で前記印刷送信用データが前記プリンタ位置情報に合致したと判断した場合には、前記印刷送信用データに基づく印刷を実行し、前記判断部で前記印刷送信用データが前記プリンタ位置情報に合致しないと判断した場合には、前記印刷送信用データに基づく印刷を制限する、印刷実行部と、
を備えることを特徴とするプリンタ。
【請求項５４】
送信用データを処理するサーバであって、
送信用データを受信する、送信用データ受信部と、
当該サーバの設置されている場所を特定するためのサーバ位置情報を取得し、これを第１サーバ位置情報とする、第１サーバ位置取得部と、
前記送信用データが、前記第１サーバ位置取得部で取得した前記第１サーバ位置情報に合致したものであるかどうかを判断する、判断部と、
前記判断部で前記送信用データが前記第１サーバ位置情報に合致したと判断した場合には、前記送信用データをスプーリングし、前記判断部で前記送信用データが前記第１サーバ位置情報に合致しないと判断した場合には、前記送信用データをスプーリングしない、選択スプーリング部と、
を備えることを特徴とするサーバ。
【請求項５５】
送信用データを処理するサーバであって、
送信用データを受信する、送信用データ受信部と、
当該サーバの設置されている場所を特定するためのサーバ位置情報を取得し、これを第１サーバ位置情報とする、第１サーバ位置取得部と、
前記送信用データが、前記第１サーバ位置取得部で取得した前記第１サーバ位置情報に合致したものであるかどうかを判断する、判断部と、
前記判断部で前記送信用データが前記第１サーバ位置情報に合致したと判断した場合には、前記送信用データから得られたデータをデータ受信装置に転送し、前記判断部で前記送信用データが前記第１サーバ位置情報に合致しないと判断した場合には、前記データをデータ受信装置に転送しない、転送部と、
を備えることを特徴とするサーバ。
【請求項５６】
少なくとも１台のデータ受信装置と、前記データ受信装置に接続される少なくとも１台のサーバと、前記サーバにネットワークを介して接続される少なくとも１台のデータ送信装置と、を有する、データ送受信システムであって、
前記データ送信装置は、
前記サーバから取得した前記データ受信装置の暗号用の公開鍵を保持する、公開鍵保持部と、
前記公開鍵保持部から処理を依頼しようとしているデータ受信装置の前記公開鍵を読み出す、公開鍵読み出し部と、
前記公開鍵読み出し部で読み出した前記公開鍵を用いて、処理データを暗号化して、送信用データを生成する送信用データ生成部と、
前記送信用データ生成部で生成した前記送信用データを、前記ネットワークを介して前記サーバに送信する、送信用データ送信部と、
を備えており、
前記サーバは、
前記データ送信装置が送信した前記送信用データを受信する、送信用データ受信部と、
前記送信用データを受信した時点で、前記サーバが設置されている場所を特定するためのサーバ位置情報を取得し、これを第１サーバ位置情報とする、第１サーバ位置取得部と、
前記第１サーバ位置取得部で取得した前記第１サーバ位置情報を少なくとも含む第１パスフレーズを用いて秘密鍵を生成し、この秘密鍵で前記送信用データが復号できた場合には、前記送信用データを復号することにより得られた処理データをスプーリングし、復号できなかった場合にはスプーリングをしない、選択スプーリング部と、
を備えることを特徴とするデータ送受信システム。
【請求項５７】
少なくとも１台のデータ受信装置と、前記データ受信装置に接続される少なくとも１台のサーバと、前記サーバにネットワークを介して接続される少なくとも１台のデータ送信装置と、を有する、データ送受信システムであって、
前記データ送信装置は、
前記サーバから取得した前記サーバの暗号用の公開鍵を保持する、公開鍵保持部と、
前記公開鍵保持部から前記サーバの前記公開鍵を読み出す、公開鍵読み出し部と、
前記公開鍵読み出し部で読み出した前記公開鍵を用いて、処理データを暗号化して、送信用データを生成する送信用データ生成部と、
前記送信用データ生成部で生成した前記送信用データを、前記ネットワークを介して前記サーバに送信する、送信用データ送信部と、
を備えており、
前記サーバは、
前記データ送信装置が送信した前記送信用データを受信する、送信用データ受信部と、
前記送信用データを受信した時点で、前記サーバが設置されている場所を特定するためのサーバ位置情報を取得し、これを第１サーバ位置情報とする、第１サーバ位置取得部と、
前記第１サーバ位置取得部で取得した前記第１サーバ位置情報を少なくとも含む第１パスフレーズを用いて秘密鍵を生成し、この秘密鍵で前記送信用データが復号できた場合には、前記送信用データを復号することにより得られた処理データをスプーリングし、復号できなかった場合にはスプーリングをしない、選択スプーリング部と、
を備えることを特徴とするデータ送受信システム。
【発明の詳細な説明】
技  術  分  野
本発明は、プリンタ、サーバ及び印刷システム、並びに、データ受信装置及びデータ送受信システムに関し、特に、プリンタ、サーバ及びデータ受信装置に送信されるデータのセキュリティを確保したプリンタ、サーバ及び印刷システム、並びに、データ受信装置及びデータ送受信システムに関する。
背  景  技  術
今日、ネットワークを用いてプリンタを共有する印刷システムが、盛んに使用されるようになってきている。すなわち、１つのネットワークに、印刷クライアントとしてコンピュータを複数接続するとともに、例えば１台のプリンタをこのネットワークに接続することにより、複数の印刷クライアントからの印刷データを１台のプリンタが受け付けて、印刷を行うことができるようになってきている。
このようなネットワークを用いた印刷システムにおいては、様々なユーザが、各印刷クライアントから印刷データをプリンタに送信し、印刷を行うことができる。
しかしながら、印刷クライアントから送信された印刷データを、プリンタが無条件に印刷してしまうこととすると、ユーザが意図した場所に設置されていないプリンタであってもそのまま印刷がなされてしまうこととなる。特に、以前使用されていた場所から別な場所に移動されたプリンタの場合、ネットワーク上のアドレスであるＩＰアドレス等は変更されていないこともあることから、移動後の場所にあるプリンタで、送信した印刷データの印刷が行われてしまうこととなる。このような事態は、印刷データのセキュリティを確保したいユーザにとっては、望ましくない。
さらには、印刷クライアントから送信された印刷データを、プリンタが無条件で印刷してしまうこととすると、本来そのプリンタで印刷する権限のない印刷クライアントからの印刷データまで、プリンタが印刷をしてしまうこととなる。この場合、そのプリンタで印刷できる印刷クライアントを制限できないこととなり、やはり好ましくない。特に、不正な意図をもって大量の印刷データを送信するユーザも存在し得ることを考えると、何らかの印刷制限を設ける必要がある。
また例えば、会社のある部署で使用していたプリンタを別の部署に移動させて、さらに使用する場合もある。このような場合、これまでそのプリンタで印刷する権限を有していた印刷クライアントであっても、プリンタの移動をした後には、このプリンタで印刷する権限を与えたくないことがある。このような状況において、印刷クライアントからの印刷データを、プリンタ側で印刷しないようにする技術の必要性が認められる。
さらには、ネットワーク上の経路情報を操作して、別の位置に同じプリンタを設置し、同じネットワークアドレスを使用することにより、別のプリンタがあたかも真正なプリンタになりすますことも想定できる。
また、プリンタ自体を認証するための証明書を組み込んだプリンタも存在するが、このようなプリンタを廃棄する場合には、このプリンタに組み込まれている証明書を確実に削除する必要がある。しかし、プリンタの設置場所を変更するだけで、プリンタの印刷ができなくなるのであれば、プリンタの破棄をより安全に行うことが可能になる。
発  明  の  開  示
そこで本発明は、前記課題に鑑みてなされたものであり、プリンタの設置されている位置情報に基づいて、印刷できる印刷データを制限することにより、印刷データ及びプリンタのセキュリティを確保した印刷システムを提供することを目的とする。また、データ受信装置の設置されている位置情報に基づいて、処理できるデータを制限することにより、送信するデータ及びデータ受信装置のセキュリティを確保したデータ送受信システムを提供することを目的とする。
上記及び他の目的を達成するため、本発明に係る印刷送信用データの処理を行うプリンタは、
印刷送信用データを受信する、印刷送信用データ受信部と、
前記印刷送信用データ受信部が前記印刷送信用データを受信した時点で、当該プリンタの設置されている場所を特定するためのプリンタ位置情報を取得し、これを第１プリンタ位置情報とする、第１プリンタ位置取得部と、
前記印刷送信用データが、前記第１プリンタ位置情報に合致したものであるかどうかを判断する、判断部と、
前記判断部で前記印刷送信用データが前記第１プリンタ位置情報に合致したと判断した場合には、前記印刷送信用データに基づく印刷を実行し、前記判断部で前記印刷送信用データが前記第１プリンタ位置情報に合致しないと判断した場合には、前記印刷送信用データに基づく印刷を制限する、印刷実行部と、
を備える。
本発明の他の見地によれば、印刷送信用データの処理を行うプリンタの制御方法は、
印刷送信用データを受信するステップと、
前記印刷送信用データを受信した時点で、当該プリンタの設置されている場所を特定するためのプリンタ位置情報を取得し、これを第１プリンタ位置情報とするステップと、
前記印刷送信用データが、前記第１プリンタ位置情報に合致したものであるかどうかを判断するステップと、
前記印刷送信用データが前記第１プリンタ位置情報に合致したと判断した場合に、前記印刷送信用データに基づく印刷を実行するステップと、
前記印刷送信用データが前記第１プリンタ位置情報に合致しないと判断した場合に、前記印刷送信用データに基づく印刷を制限するステップと、
を備える。
本発明の他の見地によれば、少なくとも１台のプリンタと、前記プリンタにネットワークを介して接続される少なくとも１台の印刷クライアントとを有する、印刷システムは、
前記印刷クライアントは、
前記プリンタが設置されている場所を特定するためのプリンタ位置情報である第１プリンタ位置情報を保持する、プリンタ位置情報保持部と、
前記プリンタ位置情報保持部から前記第１プリンタ位置情報を読み出す、プリンタ位置情報読み出し部と、
前記プリンタ位置情報読み出し部で読み出した前記第１プリンタ位置情報を、印刷データに付加して、印刷送信用データを生成する、印刷送信用データ生成部と、
前記印刷送信用データ生成部で生成した前記印刷送信用データを、前記ネットワークを介して前記プリンタに送信する、印刷送信用データ送信部と、
を備えており、
前記プリンタは、
前記印刷クライアントが送信した前記印刷送信用データを受信する、印刷送信用データ受信部と、
前記印刷送信用データを受信した時点で、当該プリンタが設置されている場所を特定するためのプリンタ位置情報である第２プリンタ位置情報を取得する、第１プリンタ位置取得部と、
前記印刷送信用データに含まれている第１プリンタ位置情報と、前記第１プリンタ位置取得部で取得した第２プリンタ位置情報とが、合致するかどうかを判断し、両者が合致した場合には前記印刷送信用データに基づく印刷を実行し、両者が合致しない場合には前記印刷送信用データに基づく印刷を制限する、印刷実行部と、
を備える。
本発明の他の見地によれば、少なくとも１台のプリンタと、前記プリンタにネットワークを介して接続される少なくとも１台の印刷クライアントとを有する、印刷システムは、
前記印刷クライアントは、
前記プリンタから取得した暗号用の公開鍵を保持する、公開鍵保持部と、
前記公開鍵保持部から前記公開鍵を読み出す、公開鍵読み出し部と、
前記公開鍵読み出し部で読み出した前記公開鍵を用いて、印刷データを暗号化して、印刷送信用データを生成する印刷送信用データ生成部と、
前記印刷送信用データ生成部で生成した前記印刷送信用データを、前記ネットワークを介して前記プリンタに送信する、印刷送信用データ送信部と、
を備えており、
前記プリンタは、
前記印刷クライアントが送信した前記印刷送信用データを受信する、印刷送信用データ受信部と、
前記印刷送信用データを受信した時点で、当該プリンタが設置されている場所を特定するためのプリンタ位置情報を取得し、これを第１プリンタ位置情報とする、第１プリンタ位置取得部と、
前記第１プリンタ位置取得部で取得した前記第１プリンタ位置情報を少なくとも含む第１パスフレーズを用いて秘密鍵を生成し、この秘密鍵で前記印刷送信用データが復号できた場合には、前記印刷送信用データに基づく印刷を実行し、復号できなかった場合には前記印刷送信用データに基づく印刷を実行しない、印刷実行部と、
を備える。
本発明の他の見地によれば、少なくとも１台のプリンタと、前記プリンタにネットワークを介して接続される少なくとも１台の印刷クライアントとを有する、印刷システムの制御方法は、
前記印刷クライアントにおいて、前記プリンタが設置されている場所を特定するためのプリンタ位置情報である第１プリンタ位置情報を保持しているプリンタ位置情報保持部から、前記第１プリンタ位置情報を読み出すステップと、
前記読み出した前記第１プリンタ位置情報を、印刷データに付加して、印刷送信用データを生成するステップと、
前記生成した前記印刷送信用データを、前記ネットワークを介して前記印刷クライアントから前記プリンタに送信するステップと、
前記プリンタにおいて、前記印刷クライアントが送信した前記印刷送信用データを受信するステップと、
前記印刷送信用データを受信した時点で、当該プリンタが設置されている場所を特定するためのプリンタ位置情報である第２プリンタ位置情報を取得するステップと、
前記印刷送信用データに含まれている第１プリンタ位置情報と、前記第１プリンタ位置取得部で取得した第２プリンタ位置情報とが、合致するかどうかを判断するステップと、
前記印刷送信用データが前記第１プリンタ位置情報と合致したと判断した場合に、前記印刷送信用データに基づく印刷を実行するステップと、
前記印刷送信用データが前記第１プリンタ位置情報と合致しないと判断した場合に、前記印刷送信用データに基づく印刷を制限するステップと、
を備えることを特徴とする印刷システムの制御方法。
本発明の他の見地によれば、少なくとも１台のプリンタと、前記プリンタにネットワークを介して接続される少なくとも１台の印刷クライアントとを有する、印刷システムの制御方法は、
前記印刷クライアントにおいて、前記プリンタから取得した暗号用の公開鍵を保持する公開鍵保持部から、前記公開鍵を読み出すステップと、
前記読み出した前記公開鍵を用いて、印刷データを暗号化して、印刷送信用データを生成するステップと、
前記生成した前記印刷送信用データを、前記ネットワークを介して前記プリンタに送信するステップと、
前記プリンタにおいて、前記印刷クライアントが送信した前記印刷送信用データを受信するステップと、
前記印刷送信用データを受信した時点で、当該プリンタが設置されている場所を特定するためのプリンタ位置情報を取得し、これを第１プリンタ位置情報とするステップと、
前記第１プリンタ位置情報を少なくとも含む第１パスフレーズを用いて秘密鍵を生成し、この秘密鍵で前記印刷送信用データが復号できた場合には、前記印刷送信用データに基づく印刷を実行し、復号できなかった場合には前記印刷送信用データに基づく印刷を実行しないステップと、
を備える。
本発明の他の見地によれば、印刷送信用データの処理を行うプリンタは、
印刷送信用データを受信する、印刷送信用データ受信部と、
前記印刷送信用データ受信部が前記印刷送信用データを受信した時点で、当該プリンタの設置されている場所を特定するためのプリンタ位置情報を取得する、プリンタ位置取得部と、
前記プリンタ位置情報を少なくとも含むパスフレーズを用いて秘密鍵を生成する、秘密鍵生成部と、
前記印刷送信用データ受信部で受信した前記印刷送信用データを、前記秘密鍵を用いて復号し、復号することにより得られた印刷データに基づいて印刷を実行する、印刷実行部と、
を備える。
本発明の他の見地によれば、印刷送信用データの処理を行うプリンタの制御方法は、
印刷送信用データを受信するステップと、
前記印刷送信用データを受信した時点で、当該プリンタの設置されている場所を特定するためのプリンタ位置情報を取得するステップと、
前記プリンタ位置情報を少なくとも含むパスフレーズを用いて秘密鍵を生成するステップと、
前記受信した前記印刷送信用データを、前記秘密鍵を用いて復号し、復号することにより得られた印刷データに基づいて印刷を実行するステップと、
を備える。
本発明の他の見地によれば、データを処理するデータ受信装置は、
送信されてきたデータを受信する、データ受信部と、
当該データ受信装置が設置されている場所を特定するための装置位置情報を取得する、装置位置取得部と、
前記データが、前記装置位置取得部で取得した装置位置情報に合致したものであるかどうかを判断する、判断部と、
前記判断部で前記データが前記装置位置情報に合致したと判断した場合には、前記データに基づく処理を実行し、前記判断部で前記データが前記装置位置情報に合致しないと判断した場合には、前記データに基づく処理を制限する、処理部と、
を備える。
本発明の他の見地によれば、データを処理するデータ受信装置の制御方法は、
送信されてきたデータを受信するステップと、
当該データ受信装置が設置されている場所を特定するための装置位置情報を取得するステップと、
前記データが、前記装置位置取得部で取得した装置位置情報に合致したものであるかどうかを判断するステップと、
前記データが前記装置位置情報に合致したと判断した場合に、前記データに基づく処理を実行するステップと、
前記データが前記装置位置情報に合致しないと判断した場合に、前記データに基づく処理を制限するステップと、
を備える。
本発明の他の見地によれば、少なくとも１台のデータ受信装置と、前記データ受信装置にネットワークを介して接続される少なくとも１台のデータ送信装置とを有する、データ送受信システムは、
前記データ送信装置は、
前記データ受信装置が設置されている場所を特定するための第１装置位置情報を保持する、装置位置情報保持部と、
前記装置位置情報保持部から前記第１装置位置情報を読み出す、装置位置情報読み出し部と、
前記装置位置情報読み出し部で読み出した前記第１装置位置情報を、データに付加して、送信用データを生成する、送信用データ生成部と、
前記送信用データ生成部で生成した前記送信用データを、前記ネットワークを介して前記データ受信装置に送信する、送信用データ送信部と、
を備えており、
前記データ受信装置は、
前記データ送信装置が送信した前記送信用データを受信する、送信用データ受信部と、
前記送信用データを受信した時点で、当該データ受信装置が設置されている場所を特定するための第２装置位置情報を取得する、装置位置取得部と、
前記送信用データに含まれている第１装置位置情報と、前記装置位置取得部で取得した第２装置位置情報とが、一致するかどうかを判断し、両者が一致した場合には前記送信用データに基づく処理を実行し、両者が一致しない場合には前記送信用データに基づく処理を制限する、処理実行部と、
を備える。
本発明の他の見地によれば、少なくとも１台のデータ受信装置と、前記データ受信装置にネットワークを介して接続される少なくとも１台のデータ送信装置とを有する、データ送受信システムは、
前記データ送信システムは、
前記データ送信装置から取得した暗号用の公開鍵を保持する、公開鍵保持部と、
前記公開鍵保持部から前記公開鍵を読み出す、公開鍵読み出し部と、
前記公開鍵読み出し部で読み出した前記公開鍵を用いて、データを暗号化して、送信用データを生成する送信用データ生成部と、
前記送信用データ生成部で生成した前記送信用データを、前記ネットワークを介して前記データ受信装置に送信する、送信用データ送信部と、
を備えており、
前記データ受信装置は、
前記データ送信装置が送信した前記送信用データを受信する、送信用データ受信部と、
前記送信用データを受信した時点で、当該データ受信装置が設置されている場所を特定するための装置位置情報を取得する、装置位置取得部と、
前記装置位置取得部で取得した装置位置情報を少なくとも含むパスフレーズを用いて秘密鍵を生成し、この秘密鍵で前記送信用データが復号できた場合には、前記送信用データに基づく処理を実行し、復号できなかった場合には前記送信用データに基づく処理を実行しない、処理実行部と、
を備える。
本発明の他の見地によれば、少なくとも１台のデータ受信装置と、前記データ受信装置にネットワークを介して接続される少なくとも１台のデータ送信装置とを有する、データ送受信システムの制御方法は、
前記データ送信装置において、前記データ受信装置が設置されている場所を特定するための第１装置位置情報を保持する装置位置情報保持部から、前記第１装置位置情報を読み出すステップと、
前記読み出した前記第１装置位置情報を、データに付加して、送信用データを生成するステップと、
前記生成した前記送信用データを、前記ネットワークを介して前記データ受信装置に送信するステップと、
前記データ受信装置において、前記データ送信装置が送信した前記送信用データを受信するステップと、
前記送信用データを受信した時点で、当該データ受信装置が設置されている場所を特定するための第２装置位置情報を取得するステップと、
前記送信用データに含まれている第１装置位置情報と、前記第２装置位置情報とが、一致するかどうかを判断するステップと、
前記第１装置位置情報と前記第２装置位置情報とが一致すると判断した場合に、前記送信用データに基づく処理を実行するステップと、
前記第１装置位置情報と前記第２装置位置情報とが一致しないと判断した場合に、前記送信用データに基づく処理を制限するステップと、
を備える。
本発明の他の見地によれば、少なくとも１台のデータ受信装置と、前記データ受信装置にネットワークを介して接続される少なくとも１台のデータ送信装置とを有する、データ送受信システムの制御方法は、
前記データ送信システムにおいて、前記データ送信装置から取得した暗号用の公開鍵を保持する公開鍵保持部から、前記公開鍵を読み出すステップと、
前記読み出した前記公開鍵を用いて、データを暗号化して、送信用データを生成するステップと、
前記生成した前記送信用データを、前記ネットワークを介して前記データ受信装置に送信するステップと、
前記データ受信装置において、前記データ送信装置が送信した前記送信用データを受信するステップと、
前記送信用データを受信した時点で、当該データ受信装置が設置されている場所を特定するための装置位置情報を取得するステップと、
前記装置位置取得部で取得した装置位置情報を少なくとも含むパスフレーズを用いて秘密鍵を生成するステップと、
前記秘密鍵で前記送信用データが復号できた場合には、前記送信用データに基づく処理を実行し、復号できなかった場合には前記送信用データに基づく処理を実行しないステップと、
を備える。
本発明の他の見地によれば、印刷送信用データを処理するサーバは、
印刷送信用データを受信する、印刷送信用データ受信部と、
当該サーバの設置されている場所を特定するためのサーバ位置情報を取得し、これを第１サーバ位置情報とする、第１サーバ位置取得部と、
前記印刷送信用データが、前記第１サーバ位置取得部で取得した前記第１サーバ位置情報に合致したものであるかどうかを判断する、判断部と、
前記判断部で前記印刷送信用データが前記第１サーバ位置情報に合致したと判断した場合には、前記印刷送信用データをスプーリングし、前記判断部で前記印刷送信用データが前記第１サーバ位置情報に合致しないと判断した場合には、前記印刷送信用データをスプーリングしない、選択スプーリング部と、
を備える。
本発明の他の見地によれば、印刷送信用データを処理するサーバは、
印刷送信用データを受信する、印刷送信用データ受信部と、
当該サーバの設置されている場所を特定するためのサーバ位置情報を取得し、これを第１サーバ位置情報とする、第１サーバ位置取得部と、
前記印刷送信用データが、前記第１サーバ位置取得部で取得した前記第１サーバ位置情報に合致したものであるかどうかを判断する、判断部と、
前記判断部で前記印刷送信用データが前記第１サーバ位置情報に合致したと判断した場合には、前記印刷送信用データから得られた印刷データをプリンタに転送し、前記判断部で前記印刷送信用データが前記第１サーバ位置情報に合致しないと判断した場合には、前記印刷データをプリンタに転送しない、転送部と、
を備える。
本発明の他の見地によれば、印刷用データを処理するサーバの制御方法は、
印刷送信用データを受信するステップと、
当該サーバの設置されている場所を特定するためのサーバ位置情報を取得し、これを第１サーバ位置情報とするステップと、
前記印刷送信用データが、前記第１サーバ位置情報に合致したものであるかどうかを判断するステップと、
前記印刷送信用データが前記第１サーバ位置情報に合致したと判断した場合に、前記印刷送信用データをスプーリングし、前記印刷送信用データが前記第１サーバ位置情報に合致しないと判断した場合には、前記印刷送信用データをスプーリングしないステップと、
を備える。
本発明の他の見地によれば、印刷送信用データを処理するサーバの制御方法は、
印刷送信用データを受信するステップと、
当該サーバの設置されている場所を特定するためのサーバ位置情報を取得し、これを第１サーバ位置情報とするステップと、
前記印刷送信用データが、前記第１サーバ位置情報に合致したものであるかどうかを判断するステップと、
前記印刷送信用データが前記第１サーバ位置情報に合致したと判断した場合には、前記印刷送信用データから得られた印刷データをプリンタに転送し、前記印刷送信用データが前記第１サーバ位置情報に合致しないと判断した場合には、前記印刷データをプリンタに転送しないステップと、
を備える。
本発明の他の見地によれば、少なくとも１台のプリンタと、前記プリンタに接続される少なくとも１台のサーバと、前記サーバにネットワークを介して接続される少なくとも１台の印刷クライアントと、を有する、印刷システムは、
前記印刷クライアントは、
前記サーバから取得した前記プリンタの暗号用の公開鍵を保持する、公開鍵保持部と、
前記公開鍵保持部から印刷をしようとしているプリンタの前記公開鍵を読み出す、公開鍵読み出し部と、
前記公開鍵読み出し部で読み出した前記公開鍵を用いて、印刷データを暗号化して、印刷送信用データを生成する印刷送信用データ生成部と、
前記印刷送信用データ生成部で生成した前記印刷送信用データを、前記ネットワークを介して前記サーバに送信する、印刷送信用データ送信部と、
を備えており、
前記サーバは、
前記印刷クライアントが送信した前記印刷送信用データを受信する、印刷送信用データ受信部と、
前記印刷送信用データを受信した時点で、前記サーバが設置されている場所を特定するためのサーバ位置情報を取得し、これを第１サーバ位置情報とする、第１サーバ位置取得部と、
前記第１サーバ位置取得部で取得した前記第１サーバ位置情報を少なくとも含む第１パスフレーズを用いて秘密鍵を生成し、この秘密鍵で前記印刷送信用データが復号できた場合には、前記印刷送信用データを復号することにより得られた印刷データをスプーリングし、復号できなかった場合にはスプーリングをしない、選択スプーリング部と、
を備える。
本発明の他の見地によれば、少なくとも１台のプリンタと、前記プリンタに接続される少なくとも１台のサーバと、前記サーバにネットワークを介して接続される少なくとも１台の印刷クライアントと、を有する、印刷システムは、
前記印刷クライアントは、
前記サーバから取得した前記サーバの暗号用の公開鍵を保持する、公開鍵保持部と、
前記公開鍵保持部から前記サーバの前記公開鍵を読み出す、公開鍵読み出し部と、
前記公開鍵読み出し部で読み出した前記公開鍵を用いて、印刷データを暗号化して、印刷送信用データを生成する印刷送信用データ生成部と、
前記印刷送信用データ生成部で生成した前記印刷送信用データを、前記ネットワークを介して前記サーバに送信する、印刷送信用データ送信部と、
を備えており、
前記サーバは、
前記印刷クライアントが送信した前記印刷送信用データを受信する、印刷送信用データ受信部と、
前記印刷送信用データを受信した時点で、前記サーバが設置されている場所を特定するためのサーバ位置情報を取得し、これを第１サーバ位置情報とする、第１サーバ位置取得部と、
前記第１サーバ位置取得部で取得した前記第１サーバ位置情報を少なくとも含む第１パスフレーズを用いて秘密鍵を生成し、この秘密鍵で前記印刷送信用データが復号できた場合には、前記印刷送信用データを復号することにより得られた印刷データをスプーリングし、復号できなかった場合にはスプーリングをしない、選択スプーリング部と、
を備える。
本発明の他の見地によれば、少なくとも１台のプリンタと、前記プリンタに接続される少なくとも１台のサーバと、前記サーバにネットワークを介して接続される少なくとも１台の印刷クライアントと、を有する、印刷システムの制御方法は、
前記印刷クライアントにおいて、前記サーバから取得した前記プリンタの暗号用の公開鍵を保持する公開鍵保持部から、印刷をしようとしているプリンタの前記公開鍵を読み出すステップと、
前記読み出した前記公開鍵を用いて、印刷データを暗号化して、印刷送信用データを生成するステップと、
前記生成した前記印刷送信用データを、前記ネットワークを介して前記サーバに送信するステップと、
前記サーバにおいて、前記印刷クライアントが送信した前記印刷送信用データを受信するステップと、
前記印刷送信用データを受信した時点で、前記サーバが設置されている場所を特定するためのサーバ位置情報を取得し、これを第１サーバ位置情報とするステップと、
前記第１サーバ位置情報を少なくとも含む第１パスフレーズを用いて秘密鍵を生成するステップと、
前記秘密鍵で前記印刷送信用データが復号できた場合には、前記印刷送信用データを復号することにより得られた印刷データをスプーリングし、復号できなかった場合にはスプーリングをしないステップと、
を備える。
本発明の他の見地によれば、少なくとも１台のプリンタと、前記プリンタに接続される少なくとも１台のサーバと、前記サーバにネットワークを介して接続される少なくとも１台の印刷クライアントと、を有する、印刷システムの制御方法は、
前記印刷クライアントにおいて、前記サーバから取得した前記サーバの暗号用の公開鍵を保持する公開鍵保持部から、前記サーバの前記公開鍵を読み出すステップと、
前記読み出した前記公開鍵を用いて、印刷データを暗号化して、印刷送信用データを生成するステップと、
前記生成した前記印刷送信用データを、前記ネットワークを介して前記サーバに送信するステップと、
前記サーバにおいて、前記印刷クライアントが送信した前記印刷送信用データを受信するステップと、
前記印刷送信用データを受信した時点で、前記サーバが設置されている場所を特定するためのサーバ位置情報を取得し、これを第１サーバ位置情報とするステップと、
前記第１サーバ位置情報を少なくとも含む第１パスフレーズを用いて秘密鍵を生成するステップと、
前記秘密鍵で前記印刷送信用データが復号できた場合には、前記印刷送信用データを復号することにより得られた印刷データをスプーリングし、復号できなかった場合にはスプーリングをしないステップと、
を備える。
本発明の他の見地によれば、印刷送信用データを処理するプリンタは、
印刷送信用データを受信する、印刷送信用データ受信部と、
設置されている場所を特定するためのプリンタ位置情報を、当該プリンタの外部に設けられた外部装置から取得し、これを第１プリンタ位置情報とする、第１プリンタ位置取得部と、
前記印刷送信用データが、前記第１プリンタ位置取得部で取得した第１プリンタ位置情報に合致したものであるかどうかを判断する、判断部と、
前記判断部で前記印刷送信用データが前記プリンタ位置情報に合致したと判断した場合には、前記印刷送信用データに基づく印刷を実行し、前記判断部で前記印刷送信用データが前記プリンタ位置情報に合致しないと判断した場合には、前記印刷送信用データに基づく印刷を制限する、印刷実行部と、
を備える。
本発明の他の見地によれば、印刷送信用データを処理するプリンタの制御方法は、
印刷送信用データを受信するステップと、
設置されている場所を特定するためのプリンタ位置情報を、当該プリンタの外部に設けられた外部装置から取得し、これを第１プリンタ位置情報とするステップと、
前記印刷送信用データが、前記第１プリンタ位置情報に合致したものであるかどうかを判断するステップと、
前記印刷送信用データが前記プリンタ位置情報に合致したと判断した場合に、前記印刷送信用データに基づく印刷を実行するステップと、
前記印刷送信用データが前記プリンタ位置情報に合致しないと判断した場合に、前記印刷送信用データに基づく印刷を制限するステップと、
を備える。
本発明の他の見地によれば、送信用データを処理するサーバは、
送信用データを受信する、送信用データ受信部と、
当該サーバの設置されている場所を特定するためのサーバ位置情報を取得し、これを第１サーバ位置情報とする、第１サーバ位置取得部と、
前記送信用データが、前記第１サーバ位置取得部で取得した前記第１サーバ位置情報に合致したものであるかどうかを判断する、判断部と、
前記判断部で前記送信用データが前記第１サーバ位置情報に合致したと判断した場合には、前記送信用データをスプーリングし、前記判断部で前記送信用データが前記第１サーバ位置情報に合致しないと判断した場合には、前記送信用データをスプーリングしない、選択スプーリング部と、
を備える。
本発明の他の見地によれば、送信用データを処理するサーバは、
送信用データを受信する、送信用データ受信部と、
当該サーバの設置されている場所を特定するためのサーバ位置情報を取得し、これを第１サーバ位置情報とする、第１サーバ位置取得部と、
前記送信用データが、前記第１サーバ位置取得部で取得した前記第１サーバ位置情報に合致したものであるかどうかを判断する、判断部と、
前記判断部で前記送信用データが前記第１サーバ位置情報に合致したと判断した場合には、前記送信用データから得られたデータをデータ受信装置に転送し、前記判断部で前記送信用データが前記第１サーバ位置情報に合致しないと判断した場合には、前記データをデータ受信装置に転送しない、転送部と、
を備える。
本発明の他の見地によれば、送信用データを処理するサーバの制御方法は、
送信用データを受信するステップと、
当該サーバの設置されている場所を特定するためのサーバ位置情報を取得し、これを第１サーバ位置情報とするステップと、
前記送信用データが、前記取得した前記第１サーバ位置情報に合致したものであるかどうかを判断するステップと、
前記送信用データが前記第１サーバ位置情報に合致したと判断した場合に、前記送信用データをスプーリングし、前記送信用データが前記第１サーバ位置情報に合致しないと判断した場合には、前記送信用データをスプーリングしないステップと、
を備える。
本発明の他の見地によれば、送信用データを処理するサーバの制御方法は、
送信用データを受信するステップと、
当該サーバの設置されている場所を特定するためのサーバ位置情報を取得し、これを第１サーバ位置情報とするステップと、
前記送信用データが、前記取得した前記第１サーバ位置情報に合致したものであるかどうかを判断するステップと、
前記送信用データが前記第１サーバ位置情報に合致したと判断した場合に、前記送信用データから得られたデータをデータ受信装置に転送し、前記送信用データが前記第１サーバ位置情報に合致しないと判断した場合に、前記データをデータ受信装置に転送しないステップと、
を備える。
本発明の他の見地によれば、少なくとも１台のデータ受信装置と、前記データ受信装置に接続される少なくとも１台のサーバと、前記サーバにネットワークを介して接続される少なくとも１台のデータ送信装置と、を有する、データ送受信システムは、
前記データ送信装置は、
前記サーバから取得した前記データ受信装置の暗号用の公開鍵を保持する、公開鍵保持部と、
前記公開鍵保持部から処理を依頼しようとしているデータ受信装置の前記公開鍵を読み出す、公開鍵読み出し部と、
前記公開鍵読み出し部で読み出した前記公開鍵を用いて、処理データを暗号化して、送信用データを生成する送信用データ生成部と、
前記送信用データ生成部で生成した前記送信用データを、前記ネットワークを介して前記サーバに送信する、送信用データ送信部と、
を備えており、
前記サーバは、
前記データ送信装置が送信した前記送信用データを受信する、送信用データ受信部と、
前記送信用データを受信した時点で、前記サーバが設置されている場所を特定するためのサーバ位置情報を取得し、これを第１サーバ位置情報とする、第１サーバ位置取得部と、
前記第１サーバ位置取得部で取得した前記第１サーバ位置情報を少なくとも含む第１パスフレーズを用いて秘密鍵を生成し、この秘密鍵で前記送信用データが復号できた場合には、前記送信用データを復号することにより得られた処理データをスプーリングし、復号できなかった場合にはスプーリングをしない、選択スプーリング部と、
を備える。
本発明の他の見地によれば、少なくとも１台のデータ受信装置と、前記データ受信装置に接続される少なくとも１台のサーバと、前記サーバにネットワークを介して接続される少なくとも１台のデータ送信装置と、を有する、データ送受信システムは、
前記データ送信装置は、
前記サーバから取得した前記サーバの暗号用の公開鍵を保持する、公開鍵保持部と、
前記公開鍵保持部から前記サーバの前記公開鍵を読み出す、公開鍵読み出し部と、
前記公開鍵読み出し部で読み出した前記公開鍵を用いて、処理データを暗号化して、送信用データを生成する送信用データ生成部と、
前記送信用データ生成部で生成した前記送信用データを、前記ネットワークを介して前記サーバに送信する、送信用データ送信部と、
を備えており、
前記サーバは、
前記データ送信装置が送信した前記送信用データを受信する、送信用データ受信部と、
前記送信用データを受信した時点で、前記サーバが設置されている場所を特定するためのサーバ位置情報を取得し、これを第１サーバ位置情報とする、第１サーバ位置取得部と、
前記第１サーバ位置取得部で取得した前記第１サーバ位置情報を少なくとも含む第１パスフレーズを用いて秘密鍵を生成し、この秘密鍵で前記送信用データが復号できた場合には、前記送信用データを復号することにより得られた処理データをスプーリングし、復号できなかった場合にはスプーリングをしない、選択スプーリング部と、
を備える。
本発明の他の見地によれば、少なくとも１台のデータ受信装置と、前記データ受信装置に接続される少なくとも１台のサーバと、前記サーバにネットワークを介して接続される少なくとも１台のデータ送信装置と、を有する、データ送受信システムの制御方法は、
前記データ送信装置において、前記サーバから取得した前記データ受信装置の暗号用の公開鍵を保持する公開鍵保持部とから、処理を依頼しようとしているデータ受信装置の前記公開鍵を読み出すステップと、
前記読み出した前記公開鍵を用いて、処理データを暗号化して、送信用データを生成するステップと、
前記生成した前記送信用データを、前記ネットワークを介して前記サーバに送信するステップと、
前記サーバにおいて、前記データ送信装置が送信した前記送信用データを受信するステップと、
前記送信用データを受信した時点で、前記サーバが設置されている場所を特定するためのサーバ位置情報を取得し、これを第１サーバ位置情報とするステップと、
前記取得した前記第１サーバ位置情報を少なくとも含む第１パスフレーズを用いて秘密鍵を生成し、この秘密鍵で前記送信用データが復号できた場合には、前記送信用データを復号することにより得られた処理データをスプーリングし、復号できなかった場合にはスプーリングをしないステップと、
を備える。
本発明の他の見地によれば、少なくとも１台のデータ受信装置と、前記データ受信装置に接続される少なくとも１台のサーバと、前記サーバにネットワークを介して接続される少なくとも１台のデータ送信装置と、を有する、データ送受信システムの制御方法は、
前記データ送信装置において、前記サーバから取得した前記サーバの暗号用の公開鍵を保持する公開鍵保持部から、前記サーバの前記公開鍵を読み出すステップと、
前記読み出した前記公開鍵を用いて、処理データを暗号化して、送信用データを生成するステップと、
前記生成した前記送信用データを、前記ネットワークを介して前記サーバに送信するステップと、
前記サーバにおいて、前記データ送信装置が送信した前記送信用データを受信するステップと、
前記送信用データを受信した時点で、前記サーバが設置されている場所を特定するためのサーバ位置情報を取得し、これを第１サーバ位置情報とするステップと、
前記第１サーバ位置取得部で取得した前記第１サーバ位置情報を少なくとも含む第１パスフレーズを用いて秘密鍵を生成し、この秘密鍵で前記送信用データが復号できた場合には、前記送信用データを復号することにより得られた処理データをスプーリングし、復号できなかった場合にはスプーリングをしないステップと、
を備える。
好適な実施例
〔第１実施形態〕
本発明の第１実施形態に係る印刷システムは、プリンタが設置されている位置を表すプリンタ位置情報を予め印刷クライアントが取得しておき、印刷クライアントがこのプリンタに印刷データを送信する際には、このプリンタ位置情報も合わせて送信し、これを受信したプリンタでは、印刷データとともに送信されたプリンタ位置情報と、その時点における実際のプリンタ位置情報とが一致した場合にのみ、受信した印刷データの印刷を実行するようにしたものである。より詳しくを、以下に説明する。
まず、図１に基づいて、本実施形態に係る印刷システムの構成を説明する。図１は、本実施形態に係る印刷システムのハードウェア構成を示すブロック図である。
この図１に示すように、本実施形態に係る印刷システムは、ネットワーク１０に接続された印刷クライアント２０、２２と、同じくネットワーク１０に接続されたプリンタ３０、３２とを備えている。本実施形態においては、ネットワーク１０は、ＴＣＰ／ＩＰ（ｔｒａｎｓｍｉｓｓｉｏｎ  ｃｏｎｔｒｏｌ  ｐｒｏｔｏｃｏｌ／ｉｎｔｅｒｎｅｔ  ｐｒｏｔｏｃｏｌ）を用いたインターネットにより構成されている。但し、ネットワーク１０の態様は、インターネットに限るものではなく、例えば、イーサーネット（登録商標）等のＬＡＮや、インターネットとＬＡＮとの混在により構成されていてもよい。
印刷クライアント２０、２２は、例えば、ホストコンピュータやパーソナルコンピュータと呼ばれる各種のコンピュータにより構成されている。本実施形態では、特に印刷クライアント２０、２２は、印刷データを含んでいる印刷送信用データを生成し、この印刷送信用データをネットワーク１０を介してプリンタ３０及び／又はプリンタ３２に送信する。このネットワーク１０に接続される印刷クライアントの台数は任意であり、１台でもよく、複数台でもよい。また、この印刷クライアントは、コンピュータに限られるものではなく、例えば、撮影した画像を印刷する必要のあるデジタルカメラや、印刷画像データをコンテンツとして蓄積してあるコンテンツサーバ等でもよい。
また本実施形態においては、プリンタ３０、３２はいわゆるネットワークプリンタである。本実施形態においては、特にプリンタ３０、３２は、印刷送信用データを印刷クライアント２０及び／又は印刷クライアント２２から受信し、この印刷送信用データに含まれているプリンタ位置情報と、現在のプリンタ位置情報とが一致した場合にのみ、その印刷送信用データに含まれている印刷データの印刷を行う。
本実施形態においては、プリンタ３０、３２は、ネットワーク１０に直接接続されており、各プリンタ３０、３２は固有のネットワークアドレスを有している。したがって、印刷クライアント２０、２２は、このネットワークアドレスを指定することにより、印刷送信用データをプリンタ３０又はプリンタ３２に送信することができる。
但し、この図１においては、プリンタ３０、３２をネットワーク１０に直接接続しているが、プリンタサーバを介して接続するようにしてもよい。また、このネットワーク１０に接続されるプリンタの台数は任意であり、１台でもよく、複数台でもよい。
図２は、プリンタ３０の内部構成を説明するためのブロック図である。なお、プリンタ３２の内部構成もプリンタ３０と同様である。
この図２に示すように、プリンタ３０は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）４０と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）４２と、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）４４とを備えており、これらは互いに内部バス４６を介して接続されている。また、この内部バス４６には、通信用のインターフェース４８が接続されており、この通信用のインターフェース４８を介して、上述したネットワーク１０にプリンタ３０が接続されている。さらに、内部バス４６には、インターフェース５０が接続されており、このインターフェース５０には印刷エンジン５２が接続されている。
また、内部バス４６には、位置検出部５４が接続されている。この位置検出部５４は、プリンタ３０が設置されている位置を特定する機能を有する。本実施形態においては、例えば、ＧＰＳ（ｇｌｏｂａｌ  ｐｏｓｉｔｉｏｎｉｎｇ  ｓｙｓｔｅｍ）により構成されており、このプリンタ３０が設置されている位置の緯度、経度、高度が特定できるようになっている。現時点におけるＧＰＳの精度は、緯度、経度、高度において、それぞれ±１０ｍ程度であると言われている。
但し、この位置検出部５４は、ＧＰＳを用いた構成に限らず、例えば、無線ＬＡＮによりこのプリンタ３０がネットワーク１０に接続されている場合には、このプリンタ３０が収容されている無線基地局に基づいて、プリンタ３０の位置を特定するようにしてもよい。
また、例えば、ＰＨＳ（Ｐｅｒｓｏｎａｌ  Ｈａｎｄｙｐｈｏｎｅ  Ｓｙｓｔｅｍ）などの移動体通信技術を利用して、プリンタ３０の位置を特定するようにしてもよい（第６実施形態参照）。また、位置検出部５４は、ＧＰＳとＰＨＳとを併用して、室内でＧＰＳの電波が正常に受信できない場合には、ＰＨＳの電波に基づいて、位置を特定するようにしてもよい。
図３は、印刷クライアント２０の内部構成を説明するためのブロック図である。なお、本実施形態においては、印刷クライアント２２の内部構成も印刷クライアント２０と同様である。
この図３に示すように、本実施形態に係る印刷クライアント２０は、コンピュータ本体６０とディスプレイ６２とを備えて構成されている。
コンピュータ本体６０は、ＣＰＵ６４と、ＲＡＭ６６と、ＲＯＭ６８とを備えており、これらは互いに内部バス７０を介して接続されている。また、この内部バス７０には、通信用のインターフェース７２が接続されており、この通信用のインターフェース７２を介して、上述したネットワーク１０に印刷クライアント２０が接続されている。
さらに、内部バス７０には、インターフェース７４が接続されており、このインターフェース７４には大容量記憶装置であるハードディスク７６が接続されている。また、内部バス７０には、インターフェース７８が接続されており、このインターフェース７８から延びるケーブル８０を介して、上述したディスプレイ６２が接続されている。
次に、本実施形態に係る印刷システムにおいて、例えば、印刷クライアント２０がプリンタ３０で印刷を行う場合の処理を、概略的に説明する。
この場合、印刷クライアント２０は、予め、例えばプリンタ３０からこのプリンタ３０のプリンタ位置情報を取得しておく。本実施形態においては、このプリンタ位置情報の取得は、ネットワーク１０を介して行われる。すなわち、プリンタ３０は、プリンタ位置情報を要求してきた印刷クライアントが正当な権限を有しているかどうかを確認し、正当な権限を有する場合にのみ、プリンタ位置情報を通知する。但し、プリンタ３０のプリンタ位置情報は、必ずしもネットワーク１０を介して印刷クライアント２０に通知する必要はない。例えば、印刷クライアント２０のユーザが、正当な権限を有する者であれば、プリンタ３０の設置場所に出向いて、プリンタ３０を操作することができるのであるから、ユーザがプリンタ３０のコントロールパネルを操作して、プリンタ３０のプリンタ位置情報を取得するようにしてもよい。この場合、ユーザはプリンタ３０のプリンタ位置情報をメモ用紙などに記録して、印刷クライアント２０にマニュアルで入力することとなる。また、プリンタ３０のプリンタ位置情報をフレキシブルディスク等の記録媒体に記録し、これを印刷クライアント２０に読み込ませてもよい。
次に、印刷クライアント２０のユーザは、印刷するべきデータを作成し、印刷クライアント２０に対してプリンタ３０を指定して印刷を指示する。図４は、この際に印刷クライアント２０が生成する印刷送信用データＤ１０のデータフォーマットを説明する図である。
この図４に示すように、印刷クライアント２０は、印刷データＤ１４に、予め取得しておいたプリンタ位置情報Ｄ１２を付加して、印刷送信用データＤ１０を生成する。ここで、印刷データＤ１４は、プリンタ３０で印刷エンジン５２を駆動した印刷を行うのに必要となる本来の印刷データを示している。なお、印刷送信用データＤ１０は、この図４に示したプリンタ位置情報Ｄ１２及び印刷データＤ１４以外のデータを含んでいてもよい。
本実施形態においては、印刷クライアント２０は、印刷送信用データＤ１０全体を暗号化するが、必ずしも暗号化する必要はない。そして、印刷クライアント２０は、この印刷送信用データＤ１０を、ネットワーク１０を介してプリンタ３０に送信する。
この印刷送信用データＤ１０を受信したプリンタ３０は、図２に示すように、この受信した印刷送信用データＤ１０をＲＡＭ４２に一旦格納する。そして、プリンタ３０は、この暗号化された印刷送信用データＤ１０を復号して、印刷送信用データＤ１０に含まれているプリンタ位置情報Ｄ１２を取得する。また、プリンタ３０は、この時点におけるプリンタ３０のプリンタ位置情報を位置検出部５４から取得する。続いて、プリンタ３０は、印刷送信用データＤ１０に含まれていたプリンタ位置情報Ｄ１２と、この時点におけるプリンタ位置情報とが一致するかどうかを判断し、両者が一致する場合には、印刷送信用データＤ１０に含まれている印刷データＤ１４を、印刷エンジン５２に送信して印刷を行い、両者が一致しない場合には、印刷データＤ１４の印刷は行わない。
次に、プリンタ位置情報を印刷クライアント２０、２２が取得する場合における、印刷クライアント２０、２２及びプリンタ３０、３２の処理について、詳しく説明する。
図５は、印刷クライアント２０、２２で実行される位置情報要求処理を説明するフローチャートである。この位置情報要求処理は、印刷クライアントのＲＯＭ６８又はハードディスク７６に格納されている位置情報要求プログラムをＣＰＵ６４が読み込んで実行することにより実現される処理である。ここでは、印刷クライアント２０からプリンタ３０にプリンタ位置情報を要求する場合を想定して説明する。
図５に示すように、この位置情報要求処理においては、まず印刷クライアント２０は、プリンタ３０に接続する（ステップＳ１０）。具体的には、印刷クライアント２０は、プリンタ３０のネットワークアドレスを指定することにより、印刷クライアント２０とプリンタ３０との間の接続を確立する。
次に、印刷クライアント２０は、プリンタ３０へ認証情報を送信する（ステップＳ１２）。ここで認証情報とは、印刷クライアント２０、又は、印刷クライアント２０を操作しているユーザが、プリンタ３０を使用する権限を有しているかどうかを、プリンタ３０が判断するための情報である。本実施形態においては、この認証情報として、印刷クライアントを特定するためのクライアントＩＤと、パスワードとの組み合わせを用いている。したがって、印刷クライアント２０は、クライアントＩＤとパスワードとを、プリンタ３０へ送信する。
これに続いて、印刷クライアント２０は、プリンタ３０から認証が受け入れられたか否かを示す認証結果を受信するので、この認証結果に基づいて、プリンタ３０で認証が認められたかどうかを判断する（ステップＳ１４）。認証が認められなかった場合（ステップＳ１４：Ｎｏ）には、上述したステップＳ１２からを繰り返す。
一方、認証が認められた場合（ステップＳ１４：Ｙｅｓ）には、印刷クライアント２０は、位置情報取得要求をプリンタ３０へ送信する（ステップＳ１６）。そして、プリンタ３０からプリンタ位置情報を受信したかどうかを判断する（ステップＳ１８）。プリンタ３０からプリンタ位置情報を受信していない場合（ステップＳ１８：Ｎｏ）には、このステップＳ１８を繰り返して待機する。
一方、プリンタ３０からプリンタ位置情報を受信した場合（ステップＳ１８：Ｙｅｓ）には、このプリンタ位置情報を格納する（ステップＳ２０）。本実施形態においては、印刷クライアント２０は、ハードディスク７６にプリンタ位置情報テーブルＴＢ１０を設けており、取得したプリンタ位置情報は、このプリンタ位置情報テーブルＴＢ１０に格納されて保持される。
図６は、このプリンタ位置情報テーブルＴＢ１０の構成の一例を示す図である。この図６に示すように、プリンタ位置情報テーブルＴＢ１０は、プリンタを特定するための情報を格納する項目Ｄ１０と、取得したプリンタ位置情報をプリンタに対応させて格納する項目Ｄ１１とを備えている。
本実施形態においては、項目Ｄ１０には、プリンタを特定するための情報の一例として、そのプリンタのネットワークアドレスが格納されている。項目Ｄ１０は、プリンタ特定情報のうちの緯度を格納する項目Ｄ１２と、経度を格納する項目Ｄ１３と、高度を格納する項目Ｄ１４とを備えている。そして、このプリンタ位置情報テーブルＴＢ１０は、複数のプリンタに関するプリンタ位置情報を、各プリンタ毎に保持することができるようになっている。また、このようにハードディスク７８のプリンタ位置情報テーブルＴＢ１０にプリンタ位置情報を格納することにより、印刷クライアント２０の電源がオフされて再び電源が投入された場合でも、それ以前に取得したプリンタ位置情報をそのままハードディスク７８から読み出して使用することができるようになっている。
このプリンタ位置情報テーブルＴＢ１０に、取得したプリンタ位置情報を格納することにより、図５に示した位置情報要求処理は終了する。
次に、図７に基づいて、印刷クライアント２０、２２の位置情報要求処理に対応して、プリンタ３０、３２で実行される位置情報送信処理について説明する。この図７は、プリンタ３０、３２で実行される位置情報送信処理を説明するフローチャートである。この位置情報送信処理は、プリンタのＲＯＭ４４に格納されている位置情報送信プログラムをＣＰＵ４０が読み込んで実行することにより実現される処理である。ここでも上述と同様に、印刷クライアント２０からプリンタ３０にプリンタ位置情報を要求する場合を想定して説明する。
図７に示すように、まず、プリンタ３０は、印刷クライアント２０と接続を確立する（ステップＳ３０）。これは上述した印刷クライアント２０側のステップＳ１０に対応している。続いて、プリンタ３０は、印刷クライアント２０から認証情報を受信したかどうかを判断する（ステップＳ３２）。認証情報を受信していない場合（ステップＳ３２：Ｎｏ）には、このステップＳ３２の処理を繰り返して待機する。
一方、認証情報を印刷クライアント２０から受信した場合（ステップＳ３２：Ｙｅｓ）には、その認証情報がこのプリンタ３０に予め登録してある認証情報と一致するかどうかを判断する（ステップＳ３４）。具体的には、上述したように、印刷クライアント２０からクライアントＩＤとパスワードが認証情報として送信されてくるので、このクライアントＩＤとパスワードが、このプリンタ３０に予め登録されているクライアントＩＤとパスワードと一致するかどうかを判断する。
認証情報が一致しなかった場合（ステップＳ３４：Ｎｏ）には、プリンタ３０は印刷クライアント２０に、認証が受け入れられなかった旨の認証結果を送信し（ステップＳ３６）、ステップＳ３２の処理に戻る。一方、認証が一致した場合（ステップＳ３４：Ｙｅｓ）には、プリンタ３０は印刷クライアント２０に、認証が受け入れられた旨の認証結果を送信する（ステップＳ３８）。
なお、これらステップＳ３２からステップＳ３８の認証処理は、省くことも可能である。その場合、図５の位置情報要求処理におけるステップＳ１２及びステップＳ１４も省くことができる。
次に、プリンタ３０は、印刷クライアント２０から位置情報取得要求を受信したかどうかを判断する（ステップＳ４０）。この位置情報取得要求を受信していない場合（ステップＳ４０：Ｎｏ）には、このステップＳ４０の処理を繰り返して待機する。
一方、印刷クライアント２０から位置情報取得要求を受信した場合（ステップＳ４０：Ｙｅｓ）には、プリンタ３０は位置検出部５４から、その時点におけるプリンタ３０のプリンタ位置情報を取得する（ステップＳ４２）。このようにプリンタ位置情報をその都度、位置検出部５４から取得することとしているのは、プリンタ３０が別の場所に移動された場合には、その移動後の位置情報を印刷クライアント２０に通知することができるようにするためである。
次に、プリンタ３０は、このプリンタ位置情報を印刷クライアント２０に送信する（ステップＳ４４）。これにより、本実施形態に係る位置情報送信処理が終了する。
次に、印刷クライアント２０、２２が印刷を行いたいときに、その印刷要求をプリンタ３０、３２に送信する場合の印刷クライアント２０、２２及びプリンタ３０、３２の処理について、詳しく説明する。
図８は、印刷クライアント２０、２２で実行される印刷要求処理を説明するフローチャートである。この印刷要求処理は、印刷クライアントのＲＯＭ６８又はハードディスク７６に格納されている印刷要求プログラムをＣＰＵ６４が読み込んで実行することにより実現される処理である。ここでは、印刷クライアント２０からプリンタ３０に印刷を要求する場合を想定して説明する。
この図８に示すように、印刷クライアント２０は、ユーザの印刷要求に基づいて、印刷データＤ１４を作成する（ステップＳ５０）。この印刷データＤ１４は、プリンタ３０が通常のプリンタである場合に、印刷を実際に行うのに必要となるデータである。
次に、印刷クライアント２０は、ハードディスク７６のプリンタ位置情報テーブルＴＢ１０にあらかじめ登録してあった出力したいプリンタ３０のプリンタ位置情報を読み出す（ステップＳ５２）。続いて、印刷クライアント２０は、印刷データＤ１４に、この読み出したプリンタ位置情報Ｄ１２を加えて、印刷送信用データＤ１０を生成する（ステップＳ５４）。
次に、印刷クライアント２０は、この印刷送信用データＤ１０を暗号化する（ステップＳ５６）。そして、この暗号化した印刷送信用データＤ１０を、プリンタ３０に送信する（ステップＳ５８）。具体的には、プリンタ３０のネットワークアドレスを指定して、ネットワーク１０に印刷送信用データＤ１０を送出する。
次に、印刷クライアント２０は、プリンタ３０から印刷結果情報を受信したかどうかを判断する（ステップＳ６０）。印刷結果情報を受信していない場合（ステップＳ６０：Ｎｏ）には、このステップＳ６０の処理を繰り返して待機する。一方、印刷結果情報を受信した場合（ステップＳ６０：Ｙｅｓ）には、その印刷結果情報が印刷完了通知であるかどうかを判断する（ステップＳ６２）。
この印刷結果情報が印刷完了通知である場合（ステップＳ６２：Ｙｅｓ）には、プリンタ３０で印刷が正常に終了したことを意味しているので、ユーザにプリンタ３０で印刷が完了した旨を通知する（ステップＳ６４）。一方、受信した印刷結果情報が印刷完了通知でない場合（ステップＳ６２：Ｎｏ）には、その印刷結果情報が位置情報不一致通知であるかどうかを判断する（ステップＳ６６）。
印刷結果情報が位置情報不一致通知である場合（ステップＳ６６：Ｙｅｓ）には、印刷送信用データＤ１０のプリンタ位置情報Ｄ１２と、プリンタ３０における現在のプリンタ位置情報とが一致しなかったため、印刷が行われなかった旨をユーザに通知する（ステップＳ６８）。これにより、プリンタ３０が移動したことが分かり、プリンタ３０の盗難等を疑うことができる。一方、印刷結果情報が位置情報不一致通知でない場合（ステップＳ６６：Ｎｏ）には、その他の何らかのエラーであると考えられるので、ユーザに、そのエラーの種類に応じた通知を行う（ステップＳ７０）。
これらステップＳ６４、ステップＳ６８、及び、ステップＳ７０の通知により、この印刷クライアント２０における印刷要求処理は終了する。
次に、図９に基づいて、印刷クライアント２０、２２の印刷要求処理に対応して、プリンタ３０、３２で実行される印刷実行処理について説明する。図９は、プリンタ３０、３２で実行される印刷実行処理を説明するフローチャートである。この印刷実行処理は、プリンタ３０、３２のＲＯＭ４４に格納されている印刷実行プログラムをＣＰＵ４０が読み込んで実行することにより実現される処理である。ここでも上述と同様に、印刷クライアント２０からプリンタ３０に印刷を要求する場合を想定して説明する。
図９に示すように、プリンタ３０は、印刷送信用データＤ１０をネットワーク１０から受信したかどうかを判断する（ステップＳ８０）。何ら印刷送信用データＤ１０を受信していない場合（ステップＳ８０：Ｎｏ）には、このステップＳ８０の処理を繰り返して待機する。
一方、印刷送信用データＤ１０を受信した場合（ステップＳ８０：Ｙｅｓ）には、印刷送信用データＤ１０を復号化する（ステップＳ８２）。続いて、プリンタ３０は、この復号した印刷送信用データＤ１０に含まれているプリンタ位置情報Ｄ１２を取得する（ステップＳ８４）。
次に、プリンタ３０は、位置検出部５４から、その時点におけるプリンタ３０のプリンタ位置情報を取得する（ステップＳ８６）。このようにプリンタ位置情報を、その都度、位置検出部５４から取得することとしているのは、プリンタ３０が別の場所に移動された場合には、このプリンタ３０がユーザの意図しない場所に設置されている可能性があり、このような場合にはプリンタ３０で印刷が行われないようにするためである。
次に、プリンタ３０は、印刷送信用データＤ１０に含まれていたプリンタ位置情報Ｄ１２と、ステップＳ８６で取得したその時点におけるプリンタ３０のプリンタ位置情報とが、一致するかどうかを判断する（ステップＳ８８）。具体的には、プリンタ位置情報Ｄ１２の緯度、経度、高度と、ステップＳ８６で取得したプリンタ位置情報の緯度、経度、高度とが、それぞれ一致するかどうかを判断する。２つのプリンタ位置情報が一致した場合（ステップＳ８８：Ｙｅｓ）には、プリンタ３０は、印刷送信用データＤ１０に含まれている印刷データＤ１４を取得する（ステップＳ９０）。すなわち、本実施形態においては、印刷送信用データＤ１０に含まれていたプリンタ位置情報Ｄ１２と、ステップＳ８６で取得したプリンタ位置情報とが一致した場合には、印刷送信用データＤ１０がその時点におけるプリンタ位置情報と合致したと判断する。
次に、プリンタ３０は、この印刷データＤ１４に基づいて、印刷エンジン５２を駆動した印刷を実行する（ステップＳ９２）。具体的には、印刷データＤ１４の言語解釈を行い、印刷エンジン５２に適合した印刷要求データを生成する。そして、この印刷要求データを印刷エンジン５２に送信することにより、印刷エンジン５２で印刷用紙等に印刷が行われる。
この印刷が正常に完了した時点で、プリンタ３０は、印刷が正常に終了した旨の印刷完了通知を、印刷結果情報として、印刷クライアント２０に送信する（ステップＳ９４）。そして、上述したステップＳ８０の処理に戻る。
これに対して、ステップＳ８８において、印刷送信用データＤ１０に含まれていたプリンタ位置情報Ｄ１２と、ステップＳ８６で取得したプリンタ位置情報とが一致しなかった場合（ステップＳ８８：Ｎｏ）には、位置情報不一致通知を印刷結果情報として、印刷クライアント２０に送信する（ステップＳ９６）。すなわち、本実施形態においては、印刷送信用データＤ１０に含まれていたプリンタ位置情報Ｄ１２と、ステップＳ８６で取得したプリンタ位置情報とが一致しなかった場合には、印刷送信用データＤ１０がその時点におけるプリンタ位置情報と合致しなかったと判断する。そして、上述したステップＳ８０の処理に戻る。
以上のように、本実施形態に係る印刷システムによれば、印刷クライアント２０、２２は、送信した印刷送信用データＤ１０の印刷をできるプリンタを、プリンタ位置情報に基づいて限定することができるので、印刷クライアント２０、２２のユーザが意図していない位置にあるプリンタで印刷が行われしまうのを回避することができる。例えば、プリンタ３０が別の場所に移動されたが、ネットワーク１０内におけるプリンタ３０のネットワークアドレスは変更されていない場合に、印刷クライアント２０から誤って印刷送信用データＤ１０をこのプリンタ３０に送信してしまっても、プリンタ３０では印刷送信用データＤ１０に含まれているプリンタ位置情報Ｄ１２と、その時点におけるプリンタ位置情報とが一致しないので、印刷データＤ１４の印刷が実行されない。このため、印刷データのセキュリティを高めることができる。
一方、プリンタ３０、３２側においても、本来であればこのプリンタ３０、３２で印刷する権限のない者が、印刷データをこれらプリンタ３０、３２に送信して、大量の印刷をプリンタ３０、３２に実行させてしまうのを回避することができる。
なお、本実施形態に係る印刷システムは、次のような使用態様が考えられる。例えば、企業内に入室できる者が制限されている部屋があり、この部屋にプリンタ３０が設置されているとする。また、このプリンタ３０に印刷できる権限を有する者も、限られているものとする。この場合、このプリンタ３０に印刷できる権限のある者がプリンタ３０に送信した印刷送信用データＤ１０は、プリンタ３０がこの部屋にある場合にしか、印刷されない。プリンタ３０が何らかの理由により別の部屋に移動した場合、プリンタ３０では印刷送信用データＤ１０に基づく印刷は行われないこととなる。
また、例えば、ホテルの鍵付きの一室にプリンタ３０が設置されているものとし、この部屋に入れる者は限られているものとする。そして、ホテルに宿泊している１人の宿泊客に、別な場所から印刷クライアント２０で作成した書類を送りたいと考えている者がいたとする。この場合、書類を送ろうとしている者は、プリンタ３０に対して印刷クライアント２０から印刷送信用データＤ１０を送信することにより、鍵付きの部屋にあるプリンタ３０に印刷をさせることができる。つまり、あたかも設置場所が特定されたファックスのように、プリンタ３０を使用することができる。また、この場合、誤って別な場所にあるプリンタに、印刷データに基づく印刷をさせてしまう恐れを回避することができる。
また、印刷クライアント２０、２２で印刷データを含む印刷送信用データをファイルにセーブし、それを電子メールの添付ファイルとして送信したり、この印刷送信用データをＷｅｂサーバで公開し、ダウンロードした者に印刷してもらったりする場合も想定される。この場合、印刷データから印刷送信用データを生成する際に、複数のプリンタ位置情報を含ませて印刷送信用データを生成することにより、予め登録された複数の位置にあるプリンタだけで印刷できるようにすることができる。
〔第２実施形態〕
本発明の第２実施形態は、上述した第１実施形態を変形して、プリンタ３０、３２に位置検出部をそれぞれ複数設けて、１つの位置検出部が何らかの原因でプリンタの位置検出不能である場合に、他の位置検出部でプリンタの位置を検出するようにしたものである。以下、上述した第１実施形態と異なる部分のみを説明する。
図１０は、本実施形態に係るプリンタ３０のハードウェア構成を説明するブロック図であり、上述した図２に対応する図である。なお、プリンタ３２の内部構成もプリンタ３０と同様である。
この図１０に示すように、本実施形態に係るプリンタ３０においては、内部バス４６に第１位置検出部１００と第２位置検出部１０２とが接続されている。ここで、第１位置検出部１００と第２位置検出部１０２とは、異なる位置検出手法を採用しているものとする。例えば、本実施形態においては、第１位置検出部１００は、上述した第１実施形態と同様にＧＰＳによりプリンタ３０の位置を検出しており、第２位置検出部１０２はＰＨＳなどの移動体通信技術を利用して、プリンタ３０の位置を検出している。また、本実施形態においては、第１位置検出部１００と第２位置検出部１０２は、ともに、緯度、経度、高度からなるプリンタ位置情報を取得するものとする。
このように異なる位置検出手法を採用するのは、例えば、第１位置検出部１００においては、ＧＰＳの電波がプリンタ３０に届かないためその位置を検出することができない場合でも、第２位置検出部１０２においては、移動体通信用の電波がプリンタ３０に届いており、その位置を検出することができるような場合も想定されるからである。
次に、図１１に基づいて、印刷クライアント２０、２２の位置情報要求処理に対応して、プリンタ３０、３２で実行される位置情報送信処理について説明する。この図１１は、プリンタ３０、３２で実行される位置情報送信処理を説明するフローチャートであり、上述した図７のフローチャートに対応している。ここでも上述と同様に、プリンタ３０から印刷クライアント２０にプリンタ位置情報を送信する場合を想定して説明する。
図１１においては、ステップＳ３０からステップＳ４０までの処理は、上述した第１実施形態と同様であるが、それ以降の処理が異なる。すなわち、ステップＳ４０において、プリンタ３０が印刷クライアント２０から位置情報取得要求を受信した場合（ステップＳ４０：Ｙｅｓ）には、プリンタ３０は第１位置検出部１００からプリンタ位置情報を取得する（ステップＳ１００）。
次に、プリンタ３０は、この第１位置検出部１００からプリンタ位置情報を取得できたかどうかを判断する（ステップＳ１０２）。第１位置検出部１００からプリンタ位置情報を取得できた場合（ステップＳ１０２：Ｙｅｓ）には、このプリンタ位置情報を印刷クライアント２０に送信する（ステップＳ１０４）。これにより、この位置情報送信処理が終了する。
これに対して、第１位置検出部１００からプリンタ位置情報を取得できなかった場合（ステップＳ１０２：Ｎｏ）には、プリンタ３０は第２位置検出部１０２からプリンタ位置情報を取得する（ステップＳ１０６）。そして、この第２位置検出部１０２から取得したプリンタ位置情報を、印刷クライアント２０に送信する（ステップＳ１０８）。これにより、この位置情報送信処理が終了する。
次に、図１２に基づいて、印刷クライアント２０、２２の印刷要求処理に対応して、プリンタ３０、３２で実行される印刷実行処理について説明する。図１２は、プリンタ３０、３２で実行される印刷実行処理を説明するフローチャートであり、上述した図９のフローチャートに対応している。ここでも上述と同様に、印刷クライアント２０からの印刷要求をプリンタ３０が実行する場合を想定して説明する。
図１２に示すように、本実施形態に係る印刷実行処理は、ステップＳ８０からステップＳ８４までは上述した第１実施形態と同様である。但し、本実施形態においては、ステップＳ８４に続くステップＳ１１０で、プリンタ３０は、第１位置検出部１００からプリンタ位置情報を取得する（ステップＳ１１０）。
次に、プリンタ３０は、第１位置検出部１００からプリンタ位置情報を取得できたかどうかを判断する（ステップＳ１１２）。第１位置検出部１００からプリンタ位置情報を取得できた場合（ステップＳ１１２：Ｙｅｓ）には、このプリンタ位置情報を用いて、ステップＳ８８以降の処理を行う。このステップＳ８８以降の処理は、上述した第１実施形態と同様である。
一方、第１位置検出部１００からプリンタ位置情報を取得できなかった場合（ステップＳ１１２：Ｎｏ）には、第２位置検出部１０２からプリンタ位置情報を取得する（ステップＳ１１４）。そして、この第２位置検出部１０２から取得したプリンタ位置情報を用いて、ステップＳ８８以降の処理を行う。
以上のように、本実施形態に係る印刷システムによれば、上述した第１実施形態と同様に、プリンタ位置情報を活用することにより、印刷データのセキュリティを高めることができ、また、プリンタ自体のセキュリティも高めることができる。
さらに、本実施形態においては、プリンタ３０、３２のそれぞれに複数の位置検出部１００、１０２を設けたので、第１位置検出部１００からプリンタ位置情報を取得できない場合でも、第２位置検出部１０２からプリンタ位置情報を取得することができる。このため、プリンタ側におけるプリンタ位置情報取得に関する信頼性を、向上させることができる。
〔第３実施形態〕
上述した第１及び第２実施形態においては、プリンタ３０、３２における印刷実行処理のステップＳ８８で、印刷送信用データＤ１０に含まれているプリンタ位置情報Ｄ１２と、その時点で取得したプリンタ位置情報とが、完全に一致した場合にのみ、印刷を実行することとしていた。しかし、位置検出部の精度が高くなると、プリンタ３０、３２の設置位置がユーザの都合で１ｍや２ｍ移動しただけでもプリンタ位置情報が変更されてしまい、印刷クライアント２０、２２からの印刷送信用データＤ１０の印刷が実行されなくなってしまう。そうすると、ユーザにとって極めて使い勝手の悪い印刷システムになってしまう。そこで、本実施形態においては、２つのプリンタ位置情報との間に所定範囲の許容誤差を設けることにより、印刷送信用データＤ１０に含まれているプリンタ位置情報Ｄ１２と、印刷を実行しようとしている時点で取得したプリンタ位置情報とが僅かに違っていても、印刷送信用データＤ１０に含まれている印刷データＤ１４の印刷が行われるようにしたものである。以下、上述した第１及び第２実施形態と異なる部分のみを説明する。
図１３は、本実施形態に係るプリンタ３０、３２が実行する印刷実行処理を説明するためのフローチャートを、部分的に示している。ここでも上述と同様に、印刷クライアント２０から送信された印刷送信用データＤ１０を、プリンタ３０が実行する場合を想定して説明する。
図１３に示すステップＳ２００の処理は、第１実施形態における図９のステップＳ８６に続く処理であり、第２実施形態における図１２のステップＳ１１２又はステップＳ１１４に続く処理である。このステップＳ２００において、プリンタ３０は、受信した印刷送信用データＤ１０に含まれているプリンタ位置情報Ｄ１２の緯度と、この時点で取得したプリンタ位置情報の緯度との差が、例えば±１０ｍの範囲内であるかどうかを判断する（ステップＳ２００）。両者の緯度の差が±１０ｍを超える場合（ステップＳ２００：Ｎｏ）には、プリンタ位置情報が一致しなかったことになるので、印刷クライアント２０に位置情報不一致通知を送信する（ステップＳ９６、図９及び図１２参照）。
一方、両者の緯度の差が±１０ｍ以内である場合（ステップＳ２００：Ｙｅｓ）には、受信した印刷送信用データＤ１０に含まれているプリンタ位置情報Ｄ１２の経度と、この時点で取得したプリンタ位置情報の経度との差が、例えば±１０ｍの範囲内であるかどうかを判断する（ステップＳ２０２）。両者の経度の差が±１０ｍを超える場合（ステップＳ２０２：Ｎｏ）には、プリンタ位置情報が一致しなかったことになるので、印刷クライアント２０に位置情報不一致通知を送信する（ステップＳ９６、図９及び図１２参照）。
一方、両者の経度の差が±１０ｍ以内である場合（ステップＳ２０２：Ｙｅｓ）には、受信した印刷送信用データＤ１０に含まれているプリンタ位置情報Ｄ１２の高度と、この時点で取得したプリンタ位置情報の高度との差が、例えば±１０ｍの範囲内であるかどうかを判断する（ステップＳ２０４）。両者の高度の差が±１０ｍを超える場合（ステップＳ２０４：Ｎｏ）には、プリンタ位置情報が一致しなかったことになるので、印刷クライアント２０に位置情報不一致通知を送信する（ステップＳ９６、図９及び図１２参照）。
一方、両者の高度の差が±１０ｍ以内である場合（ステップＳ２０４：Ｙｅｓ）には、プリンタ位置情報が一致したことになるので、印刷送信用データＤ１０に含まれている印刷データＤ１４を取得し、印刷を実行する（ステップＳ９０、ステップＳ９２、図９及び図１２参照）。これ以外の処理は、上述した第１及び第２実施形態と同様である。
これらステップＳ２００乃至ステップＳ２０４の処理から分かるように、本実施形態においては、印刷送信用データＤ１０に含まれていたプリンタ位置情報Ｄ１２と、その時点で取得したプリンタ位置情報との差が、所定範囲内であるかどうかを判断し、両者の差が所定範囲内にある場合には、印刷送信用データＤ１０がその時点におけるプリンタ位置情報と合致したと判断する。一方、両者の差が所定範囲内にない場合には、印刷送信用データＤ１０がその時点におけるプリンタ位置情報と合致しなかったと判断することとなる。
以上のように、本実施形態に係る印刷システムによれば、第１実施形態又は第２実施形態において、プリンタ３０、３２が印刷実行処理を行う際に、受信した印刷送信用データＤ１０に含まれているプリンタ位置情報Ｄ１２と、その時点でのプリンタ位置情報との差が所定範囲内にあれば、印刷データＤ１４の印刷を行うこととしたので、印刷データＤ１４及びプリンタ３０、３２のセキュリティを確保しつつ、ユーザの使い勝手を向上させることができる。
すなわち、何らかの都合でプリンタ３０やプリンタ３２を多少移動させたとしても、印刷クライアント２０、２２がこれまで取得したプリンタ位置情報を用いて、プリンタ３０、３２に印刷を実行させることができる。このため、プリンタ３０、３２が多少移動しただけで、再度、印刷クライアント２０、２２がプリンタ３０、３２からプリンタ位置情報を取得し直す必要がなくなる。
〔第４実施形態〕
本発明の第４実施形態に係る印刷システムは、図１４Ａに示すように、プリンタが設置されている位置を表すプリンタ位置情報を少なくとも用いて公開鍵を生成し、これを印刷クライアントに取得させておき、印刷クライアントが印刷データＤ１６をこのプリンタに送信する際には、この取得した公開鍵を用いて印刷データＤ１６を暗号化して生成した印刷送信用データＤ１８として送信することとしたものである。そして、この印刷送信用データＤ１８を受信したプリンタでは、受信時に再度、その時点におけるプリンタ位置情報を少なくとも用いて秘密鍵を生成し、この秘密鍵で印刷送信用データＤ１８が復号できた場合にのみ印刷を実行するようにしたものである。より詳しくを、以下に説明する。
なお、本実施形態に係る印刷システムの構成は、上述した第１実施形態における図１と同様であり、プリンタ３０、３２の構成は、上述した図２と同様であり、印刷クライアント２０、２２の構成は、上述した図３と同様である。
まず、公開鍵を印刷クライアント２０、２２が取得する場合における、印刷クライアント２０、２２及びプリンタ３０、３２の処理について、詳しく説明する。
図１４Ｂは、印刷クライアント２０、２２で実行される公開鍵要求処理を説明するフローチャートである。この公開鍵要求処理は、印刷クライアントのＲＯＭ６８又はハードディスク７６に格納されている公開鍵要求プログラムをＣＰＵ６４が読み込んで実行することにより実現される処理である。ここでは、印刷クライアント２０からプリンタ３０に公開鍵を要求する場合を想定して説明する。
図１４Ｂに示すように、この公開鍵要求処理においては、まず印刷クライアント２０は、プリンタ３０に接続する（ステップＳ３００）。本実施形態においては、第１実施形態と同様に、印刷クライアント２０は、プリンタ３０のネットワークアドレスを指定することにより、印刷クライアント２０とプリンタ３０との間の接続を確立する。
次に、印刷クライアント２０は、プリンタ３０へ認証情報を送信する（ステップＳ３０２）。本実施形態においては、この認証情報として、印刷クライアントを特定するためのクライアントＩＤと、パスワードとの組み合わせを用いている。したがって、印刷クライアント２０は、クライアントＩＤとパスワードとを、プリンタ３０へ送信する。
これに続いて、印刷クライアント２０は、プリンタ３０から認証が受け入れられたか否かを示す認証結果を受信するので、この認証結果に基づいて、プリンタ３０で認証が認められたかどうかを判断する（ステップＳ３０４）。認証が認められなかった場合（ステップＳ３０４：Ｎｏ）には、上述したステップＳ３０２からを繰り返す。
一方、認証が認められた場合（ステップＳ３０４：Ｙｅｓ）には、印刷クライアント２０は、公開鍵取得要求をプリンタ３０へ送信する（ステップＳ３０６）。そして、プリンタ３０から公開鍵を受信したかどうかを判断する（ステップＳ３０８）。プリンタ３０から公開鍵を受信していない場合（ステップＳ３０８：Ｎｏ）には、このステップＳ３０８を繰り返して待機する。
一方、プリンタ３０から公開鍵を受信した場合（ステップＳ３０８：Ｙｅｓ）には、この公開鍵を格納する（ステップＳ３１０）。本実施形態においては、印刷クライアント２０は、ハードディスク７６に公開鍵テーブルＴＢ２０を設けており、取得したプリンタ位置情報は、この公開鍵テーブルＴＢ２０に格納され保持される。
図１５は、この公開鍵テーブルＴＢ２０の構成の一例を示す図である。この図１５に示すように、公開鍵テーブルＴＢ２０は、プリンタを特定するための情報を格納する項目Ｄ２０と、取得した公開鍵をプリンタに対応させて格納する項目Ｄ２１とを備えている。このように、公開鍵テーブルＴＢ２０は、複数のプリンタに関する公開鍵を、各プリンタ毎に保持することができるようになっている。また、このようにハードディスク７８の公開鍵テーブルＴＢ２０に公開鍵を格納することにより、印刷クライアント２０の電源がオフされて再び電源が投入された場合でも、それ以前に取得した公開鍵をそのままハードディスク７８から読み出して使用することができるようになっている。
この公開鍵テーブルＴＢ２０に、取得した公開鍵を格納することにより、図１４Ｂに示した公開鍵要求処理は終了する。
次に、図１６に基づいて、印刷クライアント２０、２２の公開鍵要求処理に対応して、プリンタ３０、３２で実行される公開鍵送信処理について説明する。この図１６は、プリンタ３０、３２で実行される公開鍵送信処理を説明するフローチャートである。この公開鍵送信処理は、プリンタのＲＯＭ４４に格納されている公開鍵送信プログラムをＣＰＵ４０が読み込んで実行することにより実現される処理である。ここでも上述と同様に、印刷クライアント２０からプリンタ３０に公開鍵が要求された場合を想定して説明する。
図１６に示すように、まず、プリンタ３０は、印刷クライアント２０と接続を確立する（ステップＳ３２０）。これは上述した印刷クライアント２０側のステップＳ３００に対応している。続いて、プリンタ３０は、印刷クライアント２０から認証情報を受信したかどうかを判断する（ステップＳ３２２）。認証情報を受信していない場合（ステップＳ３２２：Ｎｏ）には、このステップＳ３２２の処理を繰り返して待機する。
一方、認証情報を印刷クライアント２０から受信した場合（ステップＳ３２２：Ｙｅｓ）には、その認証情報がこのプリンタ３０に予め登録してある認証情報と一致するかどうかを判断する（ステップＳ３２４）。具体的には、上述したように、印刷クライアント２０からクライアントＩＤとパスワードが認証情報として送信されてくるので、このクライアントＩＤとパスワードが、このプリンタ３０に予め登録されているクライアントＩＤとパスワードと一致するかどうかを判断する。
認証情報が一致しなかった場合（ステップＳ３２４：Ｎｏ）には、プリンタ３０は印刷クライアント２０に、認証が受け入れられなかった旨の認証結果を送信し（ステップＳ３２６）、ステップＳ３２２の処理に戻る。一方、認証が一致した場合（ステップＳ３２４：Ｙｅｓ）には、プリンタ３０は印刷クライアント２０に、認証が受け入れられた旨の認証結果を送信する（ステップＳ３２８）。
次に、プリンタ３０は、印刷クライアント２０から公開鍵取得要求を受信したかどうかを判断する（ステップＳ３３０）。この公開鍵取得要求を受信していない場合（ステップＳ３３０：Ｎｏ）には、このステップＳ３３０の処理を繰り返して待機する。
一方、印刷クライアント２０から公開鍵取得要求を受信した場合（ステップＳ３３０：Ｙｅｓ）には、プリンタ３０は、このプリンタ３０の機器固有情報を取得する（ステップＳ３３２）。ここで、機器固有情報とは、このプリンタ３０に関して、固有に割り当てられている識別情報であり、例えば、プリンタ３０の製造シリアルナンバー、ＭＡＣアドレス等がある。
次に、プリンタ３０は、位置検出部５４から、その時点におけるプリンタ３０のプリンタ位置情報を取得する（ステップＳ３３４）。このようにプリンタ位置情報をその都度、位置検出部５４から取得することとしているのは、プリンタ３０が別の場所に移動された場合には、その移動後の位置情報を用いて公開鍵を生成するようにするためである。
次に、プリンタ３０は、機器固有情報とプリンタ位置情報とを用いてパスフレーズを作成する（ステップＳ３３６）。このパスフレーズの作成手法は種々のものが考えられるが、本実施形態においては、単純に機器固有情報の後ろにプリンタ位置情報をつなげることにより、パスフレーズを作成する。なお、パスフレーズは、これら機器固有情報及びプリンタ位置情報以外のデータを含んでいてもよい。
次に、プリンタ３０は、作成したパスフレーズを用いて、公開鍵暗号法により、公開鍵と秘密鍵とを生成する（ステップＳ３３８）。公開鍵暗号法では、使用するパスフレーズが同じであれば、再び、公開鍵と秘密鍵とを生成しても、同じものが生成されるという性質を有している。続いて、プリンタ３０は、この生成した公開鍵と秘密鍵のうち、公開鍵のみを印刷クライアント２０に送信する（ステップＳ３４０）。なお、秘密鍵は保存されることなく破棄される。これにより、本実施形態に係る公開鍵送信処理が終了する。
次に、印刷クライアント２０、２２が印刷を行いたいときに、その印刷要求をプリンタ３０、３２に送信する場合の印刷クライアント２０、２２及びプリンタ３０、３２の処理について、詳しく説明する。
図１７は、印刷クライアント２０、２２で実行される印刷要求処理を説明するフローチャートである。この印刷要求処理は、印刷クライアントのＲＯＭ６８又はハードディスク７６に格納されている印刷要求プログラムをＣＰＵ６４が読み込んで実行することにより実現される処理である。ここでは、印刷クライアント２０からプリンタ３０に印刷を要求する場合を想定して説明する。
この図１７に示すように、印刷クライアント２０は、ユーザの印刷要求に基づいて、印刷データを作成する（ステップＳ３５０）。この印刷データは、プリンタ３０が通常のプリンタである場合に、印刷を実際に行うのに必要となるデータである。
次に、印刷クライアント２０は、ハードディスク７６の公開鍵テーブルＴＢ２０から、プリンタ３０の公開鍵を読み出す（ステップＳ３５２）。続いて、印刷クライアント２０は、プリンタ３０の公開鍵を用いて、印刷データを暗号化して、印刷送信用データを生成する（ステップＳ３５４）。なお、印刷送信用データは、印刷データ以外のデータを含んでいてもよい。
次に、印刷クライアント２０は、この暗号化した印刷送信用データを、プリンタ３０に送信する（ステップＳ３５６）。具体的には、プリンタ３０のネットワークアドレスを指定して、ネットワーク１０に印刷送信用データを送出する。
次に、印刷クライアント２０は、プリンタ３０から印刷結果情報を受信したかどうかを判断する（ステップＳ３５８）。印刷結果情報を受信していない場合（ステップＳ３５８：Ｎｏ）には、このステップＳ３５８の処理を繰り返して待機する。一方、印刷結果情報を受信した場合（ステップＳ３５８：Ｙｅｓ）には、その印刷結果情報が印刷完了通知であるかどうかを判断する（ステップＳ３６０）。
この印刷結果情報が印刷完了通知である場合（ステップＳ３６０：Ｙｅｓ）には、プリンタ３０で印刷が正常に終了したことを意味しているので、ユーザにプリンタ３０で印刷が完了した旨を通知する（ステップＳ３６２）。一方、受信した印刷結果情報が印刷完了通知でない場合（ステップＳ３６０：Ｎｏ）には、その印刷結果情報が解読不能通知であるかどうかを判断する（ステップＳ３６４）。
印刷結果情報が解読不能通知である場合（ステップＳ３６４：Ｙｅｓ）には、ユーザに、プリンタ３０で印刷送信用データの復号ができなかったため、印刷が行われなかった旨を通知する（ステップＳ３６６）。一方、印刷結果情報が解読不能通知でない場合（ステップＳ３６４：Ｎｏ）には、その他の何らかのエラーであると考えられるので、ユーザに、そのエラーの種類に応じた通知を行う（ステップＳ３６８）。
これらステップＳ３６２、ステップＳ３６６、及び、ステップＳ３６８の通知により、この印刷クライアント２０における印刷要求処理は終了する。
次に、図１８に基づいて、印刷クライアント２０、２２の印刷要求処理に対応して、プリンタ３０、３２で実行される印刷実行処理について説明する。図１８は、プリンタ３０、３２で実行される印刷実行処理を説明するフローチャートである。この印刷実行処理は、プリンタ３０、３２のＲＯＭ４４に格納されている印刷実行プログラムをＣＰＵ４０が読み込んで実行することにより実現される処理である。ここでも上述と同様に、印刷クライアント２０からプリンタ３０に印刷が要求された場合を想定して説明する。
図１８に示すように、プリンタ３０は、印刷送信用データをネットワーク１０から受信したかどうかを判断する（ステップＳ３７０）。何ら印刷送信用データを受信していない場合（ステップＳ３７０：Ｎｏ）には、このステップＳ３７０の処理を繰り返して待機する。
一方、印刷送信用データを受信した場合（ステップＳ３７０：Ｙｅｓ）には、プリンタ３０は自らの機器固有情報を取得する（ステップＳ３７２）。続いて、プリンタ３０は、位置検出部５４から、その時点におけるプリンタ３０のプリンタ位置情報を取得する（ステップＳ３７４）。このようにプリンタ位置情報を、その都度、位置検出部５４から取得することとしているのは、プリンタ３０が別の場所に移動された場合には、このプリンタ３０がユーザの意図しない場所に設置されている可能性があり、このような場合にはプリンタ３０で印刷が行われないようにするためである。
次に、プリンタ３０は、機器固有情報とプリンタ位置情報とに基づいて、パスフレーズを作成する（ステップＳ３７６）。このパスフレーズの作成手法は、上述した公開鍵送信処理におけるステップＳ３３６と同じ手法である必要がある。なぜなら、パスフレーズが異なると、印刷クライアントに送信した公開鍵で暗号化された印刷送信用データを、秘密鍵で復号できなくなってしまうからである。
次に、プリンタ３０は、パスフレーズを用いて、公開鍵暗号法により公開鍵と秘密鍵とを生成する（ステップＳ３７８）。続いて、プリンタ３０は、生成された秘密鍵を用いて、受信した印刷送信用データを復号して、印刷データを取得する（ステップＳ３８０）。
次に、プリンタ３０は、秘密鍵を用いて印刷送信用データの復号ができたかどうかを判断する（ステップＳ３８２）。復号ができた場合（ステップＳ３８２：Ｙｅｓ）には、得られた印刷データに基づいて、印刷エンジン５２を駆動した印刷を実行する（ステップＳ３８４）。具体的には、印刷データの言語解釈を行い、印刷エンジン５２に適合した印刷要求データを生成する。そして、この印刷要求データを印刷エンジン５２に送信することにより、印刷エンジン５２で印刷用紙等に印刷が行われる。
このことから分かるように、本実施形態においては、位置検出部５４で検出したプリンタ位置情報を少なくとも含むパスフレーズを用いて秘密鍵を生成し、この秘密鍵で印刷送信用データが復号できた場合には、印刷送信用データがプリンタ位置情報と合致したと判断することとなる。
この印刷が正常に完了した時点で、プリンタ３０は、印刷が正常に終了した旨の印刷完了通知を、印刷結果情報として、印刷クライアント２０に送信する（ステップＳ３８６）。そして、上述したステップＳ３７０の処理に戻る。
これに対して、ステップＳ３８２において、印刷送信用データの復号ができなかったと判断した場合（ステップＳ３８２：Ｎｏ）には、解読不能通知を印刷結果情報として、印刷クライアント２０に送信する（ステップＳ３８８）。すなわち、本実施形態においては、位置検出部５４で検出したプリンタ位置情報を少なくとも含むパスフレーズを用いて秘密鍵を生成し、この秘密鍵で印刷送信用データが復号できなかった場合には、印刷送信用データがプリンタ位置情報と合致しなかった判断することとなる。そして、上述したステップＳ３７０の処理に戻る。
以上のように、本実施形態に係る印刷システムによれば、印刷クライアント２０、２２は、暗号化して送信した印刷送信用データの印刷をできるプリンタを、プリンタ位置情報に基づいて限定することができるので、印刷クライアント２０、２２のユーザが意図していない位置にあるプリンタで印刷が行われしまうのを回避することができる。例えば、プリンタ３０が別の場所に移動されたが、ネットワーク１０内におけるプリンタ３０のネットワークアドレスは変更されていない場合に、印刷クライアント２０から誤って印刷送信用データをこのプリンタ３０に送信してしまっても、プリンタ３０ではプリンタ位置情報が変更されているため、ステップＳ３７６で作成されるパスフレーズが移動前と異なったものになる。このため、このパスフレーズを用いて生成された秘密鍵を用いても、印刷送信用データの復号はできず、プリンタ３０では印刷が行われない。このため、印刷データのセキュリティを高めることができる。
一方、プリンタ３０、３２側においても、本来であればこのプリンタ３０、３２で印刷する権限のない者が、印刷データをこれらプリンタ３０、３２に送信して、大量の印刷をプリンタ３０、３２に実行させてしまうのを回避することができる。例えば、何らかの理由で、プリンタ３０のネットワークアドレスを第三者が知得して、このプリンタ３０に印刷送信用データを送信しようとしても、このプリンタ３０の公開鍵を取得することができない。もし、このユーザが異なる公開鍵で印刷データを暗号化して印刷送信用データを生成したり、暗号化しないで印刷送信用データを生成したりして、プリンタ３０に印刷送信用データを送信したとしても、印刷実行処理のステップＳ３８２で復号できないと判断されるので、プリンタ３０に印刷を実行させることができなくなる。このため、プリンタ３０自体のセキュリティを高めることができる。
また、本実施形態においては、パスフレーズに機器固有情報も含めることとしたので、何らかの理由により第三者が、プリンタ３０の位置を知得したとしても、プリンタ３０の機器固有情報が分からなければ、プリンタ３０で使用されているパスフレーズを特定することができない。このため、正当な権限なき第三者がプリンタ３０で印刷を実行する可能性を、極めて低いものとすることができる。
〔第５実施形態〕
本発明の第５実施形態は、上述した第４実施形態に、第２実施形態を組み合わせたものである。すなわち、本実施形態においては、プリンタ３０、３２のそれぞれに位置検出部を複数設けて、１つの位置検出部が何らかの原因でプリンタの位置検出不能である場合に、他の位置検出部でプリンタの位置を検出するようにしたものである。以下、上述した第４実施形態と異なる部分のみを説明する。
なお、本実施形態に係るプリンタ３０、３２のハードウェア構成は、図１０と同様である。
まず、図１９に基づいて、印刷クライアント２０、２２の公開鍵要求処理に対応して、プリンタ３０、３２で実行される公開鍵送信処理について説明する。この図１９は、プリンタ３０、３２で実行される公開鍵送信処理を説明するフローチャートであり、第４実施形態における図１６のフローチャートに対応している。ここでも上述と同様に、印刷クライアント２０からプリンタ３０に公開鍵を要求された場合を想定して説明する。
図１９においては、ステップＳ３２０からステップＳ３３２までの処理は、上述した第４実施形態と同様であるが、それ以降の処理が異なる。すなわち、ステップＳ３３２においてプリンタ３０が機器固有情報を取得した後に、プリンタ３０は、第１位置検出部１００からプリンタ位置情報を取得する（ステップＳ４００）。
次に、プリンタ３０は、この第１位置検出部１００からプリンタ位置情報を取得できたかどうかを判断する（ステップＳ４０２）。第１位置検出部１００からプリンタ位置情報を取得できた場合（ステップＳ４０２：Ｙｅｓ）には、ステップＳ３３２で取得した機器固有情報と、ステップＳ４００で取得したプリンタ位置情報とを用いて、パスフレーズを作成する（ステップＳ３３６）。
これに対して、第１位置検出部１００からプリンタ位置情報を取得できなかった場合（ステップＳ４０２：Ｎｏ）には、プリンタ３０は第２位置検出部１０２からプリンタ位置情報を取得する（ステップＳ１０４）。そして、ステップＳ３３２で取得した機器固有情報と、ステップＳ４０４で取得したプリンタ位置情報とを用いて、パスフレーズを作成する（ステップＳ３３６）。このステップＳ３３６以降の処理は、上述した第４実施形態と同様である。
次に、図２０に基づいて、印刷クライアント２０、２２の印刷要求処理に対応して、プリンタ３０、３２で実行される印刷実行処理について説明する。図２０は、プリンタ３０、３２で実行される印刷実行処理を説明するフローチャートであり、上述した第４実施形態における図１８のフローチャートに対応している。ここでも上述と同様に、印刷クライアント２０からの印刷要求に基づいてプリンタ３０が印刷をする場合を想定して説明する。
図２０に示すように、本実施形態に係る印刷実行処理は、ステップＳ３７０からステップＳ３７２までは上述した第４実施形態と同様である。但し、本実施形態においては、ステップＳ３７２に続くステップＳ４１０で、プリンタ３０は、第１位置検出部１００からプリンタ位置情報を取得する（ステップＳ４１０）。
次に、プリンタ３０は、第１位置検出部１００からプリンタ位置情報を取得できたかどうかを判断する（ステップＳ４１２）。第１位置検出部１００からプリンタ位置情報を取得できた場合（ステップＳ４１２：Ｙｅｓ）には、このプリンタ位置情報を用いて、ステップＳ３７６以降の処理を行う。このステップＳ３７６以降の処理は、上述した第４実施形態と同様である。
一方、第１位置検出部１００からプリンタ位置情報を取得できなかった場合（ステップＳ４１２：Ｎｏ）には、第２位置検出部１０２からプリンタ位置情報を取得する（ステップＳ４１４）。そして、この第２位置検出部１０２から取得したプリンタ位置情報を用いて、ステップＳ３７６以降の処理を行う。
以上のように、本実施形態に係る印刷システムによれば、上述した第４実施形態と同様に、プリンタ位置情報を少なくとも含むパスフレーズを用いて公開鍵と秘密鍵を生成し、公開鍵を各印刷クライアント２０、２２に通知しておく。そして、プリンタ３０が印刷送信用データを受信する度にもう一度その時点のプリンタ位置情報を少なくとも含むパスフレーズを用いて秘密鍵を生成し、この生成した秘密鍵を用いて印刷送信用データを復号することとしたので、印刷データのセキュリティを高めることができ、また、プリンタ自体のセキュリティも高めることができる。
さらに、本実施形態においては、プリンタ３０、３２にそれぞれ複数の位置検出部１００、１０２を設けたので、第１位置検出部１００からプリンタ位置情報を取得できない場合でも、第２位置検出部１０２からプリンタ位置情報を取得することができる。このため、プリンタ側におけるプリンタ位置情報取得に関する信頼性を、向上させることができる。
〔第６実施形態〕
本発明の第６実施形態は、上述した第１乃至第５実施形態において、プリンタ３０の位置検出部５４を、プリンタ３０に内蔵させるのではなく、外付けにしたものである。
図２１Ａは、本実施形態に係るプリンタ３０の構成を示すブロック図である。この図２１Ａに示すプリンタ３０においては、位置検出部５４は、プリンタ３０の外部に設けられており、インターフェース５６を介して、プリンタ３０に接続されている。例えば、位置検出部５４をＧＰＳ装置やＰＨＳ端末で構成し、このＧＰＳ装置やＰＨＳ端末をカードスロットを介して、プリンタ３０に挿入することにより、図２１Ａに示すような構成のプリンタ３０が実現される。この図２１Ａの例では、プリンタ３０と位置検出部５４との間は、ＵＳＢのような近距離の有線ケーブルで接続されている。
プリンタ３０は、通常は位置検出部５４を備えていないプリンタとして使われるが、上述した第１乃至第５実施形態において、位置検出部５４が必要になるときは、ユーザが位置検出部５４をプリンタ３０に装着して、このプリンタ３０を位置検出部５４付きのプリンタとして使用することとなる。つまり、本実施形態においては、位置検出部５４は着脱可能である。
プリンタ３０におけるこれ以外の点は、上述した第１乃至第５実施形態と同様である。
図２１Ｂは、第６実施形態の変形例を示す図である。この図２１Ｂの例では、プリンタ３０のインターフェース５６に無線の受信部５６Ｂを接続している。そして、例えば、ＧＰＳ搭載型の携帯端末で位置検出部５４を構成し、この位置検出部５４と受信部５６Ｂとの間を、ブルートゥース等の近距離の無線方式で接続している。そして、位置検出部５４で取得した位置情報を、近距離の無線方式でプリンタ３０に送信する。
本実施形態のようにプリンタ３０を構成すれば、高価な位置検出部５４をすべてのプリンタに内蔵させなくとも、必要なときにユーザが位置検出部５４をプリンタ３０に装着すれば良い。このため、プリンタ３０のコスト低減を図ることができる。また、プリンタ３０と位置検出部５４との間は、接続距離が限られている有線ケーブルや、ブルートゥース等で接続することとしたので、プリンタ３０と位置検出部５４との間の距離を所定範囲に制限することができる。
〔第７実施形態〕
本発明の第７実施形態は、上述した第４実施形態を変形して、プリントサーバを介してプリンタ３０、３２をネットワーク１０に接続し、このプリントサーバに位置検出部を設けるようにしたものである。
図２２は、本実施形態に係る印刷システムのハードウェア構成を示すブロック図であり、上述した図１に対応する図である。
この図２２に示すように、本実施形態に係る印刷システムにおいては、プリンタ３０、３２は、プリントサーバ２００を介して、ネットワーク１０に接続されている。このため、印刷クライアント２０、２２は、例えば、プリンタ３０で印刷を行おうとする場合には、印刷送信用データをネットワーク１０を介してプリントサーバ２００に送信することとなる。この印刷送信用データを受信したプリントサーバ２００は、印刷送信用データを復号することにより得られた印刷データをスプーリングして、プリンタ３０の空き状況に応じて、スプーリングしてある印刷データを、プリンタ３０に送信する。
図２３は、本実施形態に係るプリントサーバ２００の内部構成を示すブロック図である。この図２３に示すように、プリントサーバ２００は、ＣＰＵ２１０と、ＲＡＭ２１２と、ＲＯＭ２１４とを備えており、これらは互いに内部バス２１６を介して接続されている。また、この内部バス２１６には、通信用のインターフェース２１８が接続されており、この通信用のインターフェース２１８を介して、上述したネットワーク１０にプリントサーバ２００が接続されている。さらに、内部バス２１６には、インターフェース２２０が接続されており、このインターフェース２２０には、補助記憶装置としてハードディスク２２２が接続されている。
また、内部バス２１６には、位置検出部２２４が接続されている。この位置検出部２２４は、プリントサーバ２００が設置されている位置を特定する機能を有する。本実施形態においては、例えば、ＧＰＳ（ｇｌｏｂａｌ  ｐｏｓｉｔｉｏｎｉｎｇ  ｓｙｓｔｅｍ）により構成されており、このプリントサーバ２００が設置されている位置の緯度、経度、高度が特定できるようになっている。
但し、上述同様に、この位置検出部２２４は、ＧＰＳを用いた構成に限らず、例えば、無線ＬＡＮによりこのプリントサーバ２００がネットワーク１０に接続されている場合には、このプリントサーバ２００が収容されている無線基地局に基づいて、プリントサーバ２００の位置を特定するようにしてもよい。
また、例えば、ＰＨＳ（Ｐｅｒｓｏｎａｌ  Ｈａｎｄｙｐｈｏｎｅ  Ｓｙｓｔｅｍ）などの移動体通信技術を利用して、プリントサーバ２００の位置を特定するようにしてもよい。また、ＧＰＳとＰＨＳとを併用し、室内でＧＰＳの電波が正常に受信できない場合には、ＰＨＳの電波に基づいて、位置を特定するようにしてもよい。
さらに本実施形態においては、この内部バス２１６に、通信用のインターフェース２２４、２２６が接続されており、通信用のインターフェース２２４を介して、プリンタ３０にプリントサーバ２００が接続されており、通信用のインターフェース２２６を介して、プリンタ３２にプリントサーバ２００が接続されている。
なお、本実施形態における印刷クライアント２０、２２の構成は、上述した第１実施形態の図３と同様である。また、プリンタ３０、３２は、図２のプリンタから位置検出部５４を省いた通常のプリンタでよい。
図２４は、印刷クライアント２０、２２で実行される公開鍵要求処理を説明するフローチャートである。この公開鍵要求処理は、印刷クライアントのＲＯＭ６８又はハードディスク７６に格納されている公開鍵要求プログラムをＣＰＵ６４が読み込んで実行することにより実現される処理である。ここでは、印刷クライアント２０から、プリントサーバ２００にプリンタ３０の公開鍵を要求する場合を想定して説明する。
図２４に示すように、この公開鍵要求処理においては、まず印刷クライアント２０は、プリントサーバ２００に接続する（ステップＳ５００）。本実施形態においては、第１実施形態と同様に、印刷クライアント２０は、プリントサーバ２００のネットワークアドレスを指定することにより、印刷クライアント２０とプリントサーバ２００との間の接続を確立する。
次に、印刷クライアント２０は、プリントサーバ２００へ認証情報を送信する（ステップＳ５０２）。本実施形態においては、この認証情報として、印刷クライアントを特定するためのクライアントＩＤと、パスワードとの組み合わせを用いている。したがって、印刷クライアント２０は、クライアントＩＤとパスワードとを、プリントサーバ２００へ送信する。
これに続いて、印刷クライアント２０は、プリントサーバ２００から認証が受け入れられたか否かを示す認証結果を受信するので、この認証結果に基づいて、プリントサーバ２００で認証が認められたかどうかを判断する（ステップＳ５０４）。認証が認められなかった場合（ステップＳ５０４：Ｎｏ）には、上述したステップＳ５０２からを繰り返す。
一方、認証が認められた場合（ステップＳ５０４：Ｙｅｓ）には、印刷クライアント２０は、公開鍵取得要求をプリントサーバ２００へ送信する（ステップＳ５０６）。本実施形態においては、プリントサーバ２００に複数のプリンタが接続されていることもあるので、この公開鍵取得要求では、プリンタが接続されているプリントサーバ２００のポート番号を指定することにより、プリンタを指定する。そして、プリントサーバ２００から、要求したプリンタの公開鍵を受信したかどうかを判断する（ステップＳ５０８）。プリントサーバ２００から公開鍵を受信していない場合（ステップＳ５０８：Ｎｏ）には、このステップＳ５０８を繰り返して待機する。
一方、プリントサーバ２００から公開鍵を受信した場合（ステップＳ５０８：Ｙｅｓ）には、この公開鍵を格納する（ステップＳ５１０）。本実施形態においては、印刷クライアント２０は、ハードディスク７６に公開鍵テーブルＴＢ３０を設けており、取得したプリンタ位置情報は、この公開鍵テーブルＴＢ３０に格納され保持される。
図２５は、この公開鍵テーブルＴＢ３０の構成の一例を示す図である。この図２５に示すように、公開鍵テーブルＴＢ３０は、プリンタを特定するための情報を格納する項目Ｄ３０と、取得した公開鍵をプリンタに対応させて格納する項目Ｄ３１とを備えている。このように、公開鍵テーブルＴＢ３０は、複数のプリンタに関する公開鍵を、各プリンタ毎に保持することができるようになっている。また、このようにハードディスク７８の公開鍵テーブルＴＢ３０に公開鍵を格納することにより、印刷クライアント２０の電源がオフされて再び電源が投入された場合でも、それ以前に取得した公開鍵をそのままハードディスク７８から読み出して使用することができるようになっている。
上述した第４実施形態では、図１５に示したように、項目Ｄ２０にプリンタのＩＰアドレスを格納することにより、プリンタを特定する情報としたが、本実施形態では、図２５に示すように、プリントサーバ２００のＩＰアドレスとプリントサーバ２００のポート番号とを組み合わせることにより、プリンタを特定する情報としている。
この公開鍵テーブルＴＢ３０に、取得した公開鍵を格納することにより、図２４に示した公開鍵要求処理は終了する。
次に、図２６及び図２７に基づいて、印刷クライアント２０、２２の公開鍵要求処理に対応して、プリントサーバ２００で実行される公開鍵送信処理について説明する。この図２６及び図２７は、プリントサーバ２００で実行される公開鍵送信処理を説明するフローチャートである。この公開鍵送信処理は、プリントサーバ２００のＲＯＭ２１４に格納されている公開鍵送信プログラムをＣＰＵ２１０が読み込んで実行することにより実現される処理である。ここでも上述と同様に、印刷クライアント２０からプリントサーバ２００にプリンタ３０の公開鍵が要求された場合を想定して説明する。
図２６に示すように、まず、プリントサーバ２００は、印刷クライアント２０と接続を確立する（ステップＳ５２０）。これは上述した印刷クライアント２０側のステップＳ５００に対応している。続いて、プリントサーバ２００は、印刷クライアント２０から認証情報を受信したかどうかを判断する（ステップＳ５２２）。認証情報を受信していない場合（ステップＳ５２２：Ｎｏ）には、このステップＳ５２２の処理を繰り返して待機する。
一方、認証情報を印刷クライアント２０から受信した場合（ステップＳ５２２：Ｙｅｓ）には、その認証情報がこのプリントサーバ２００に予め登録してある認証情報と一致するかどうかを判断する（ステップＳ５２４）。具体的には、上述したように、印刷クライアント２０からクライアントＩＤとパスワードが認証情報として送信されてくるので、このクライアントＩＤとパスワードが、このプリントサーバ２００に予め登録されているクライアントＩＤとパスワードと一致するかどうかを判断する。
認証情報が一致しなかった場合（ステップＳ５２４：Ｎｏ）には、プリントサーバ２００は印刷クライアント２０に、認証が受け入れられなかった旨の認証結果を送信し（ステップＳ５２６）、ステップＳ５２２の処理に戻る。一方、認証が一致した場合（ステップＳ５２４：Ｙｅｓ）には、プリンタ３０は印刷クライアント２０に、認証が受け入れられた旨の認証結果を送信する（ステップＳ５２８）。
次に、プリントサーバ２００は、印刷クライアント２０から公開鍵取得要求を受信したかどうかを判断する（ステップＳ５３０）。この公開鍵取得要求を受信していない場合（ステップＳ５３０：Ｎｏ）には、このステップＳ５３０の処理を繰り返して待機する。
一方、印刷クライアント２０から公開鍵取得要求を受信した場合（ステップＳ５３０：Ｙｅｓ）には、プリントサーバ２００は、公開鍵を要求されたプリンタの機器固有情報を取得する（ステップＳ５３２）。具体的には、公開鍵取得要求で指定されたポートのプリンタに対して、機器固有情報を送信するように要求し、この送信された機器固有情報を受信することにより、プリンタの機器固有情報を取得する。なお、プリンタの機器固有情報は、プリントサーバ２００が予め取得して、ハードディスク２２２に格納しておくようにしてもよい。この場合には、ハードディスク２２２から該当するプリンタの機器固有情報を読み出すことにより、その機器固有情報を取得することができる。
次に、図２７に示すように、プリントサーバ２００は、このプリントサーバ２００の機器固有情報を取得する（ステップＳ５３３）。プリントサーバ２００の機器固有情報も、このプリントサーバ２００に関して、固有に割り当てられている識別情報であり、例えば、プリントサーバ２００の製造シリアルナンバー、ＭＡＣアドレス等がある。
次に、プリントサーバ２００は、位置検出部２２４から、その時点におけるプリントサーバ２００のサーバ位置情報を取得する（ステップＳ５３４）。このようにサーバ位置情報をその都度、位置検出部２２４から取得することとしているのは、プリントサーバ２００が別の場所に移動された場合には、その移動後の位置情報を用いて公開鍵を生成するようにするためである。
次に、プリントサーバ２００は、プリンタ３０の機器固有情報と、プリントサーバ２００の機器固有情報と、プリントサーバ２００のサーバ位置情報とを用いて、パスフレーズを作成する（ステップＳ５３６）。このパスフレーズの作成手法は種々のものが考えられるが、本実施形態においては、単純に、プリンタ３０の機器固有情報の後ろに、プリントサーバ２００の機器固有情報をつなげ、その後ろにプリントサーバ２００のサーバ位置情報をつなげることにより、パスフレーズを作成する。なお、パスフレーズは、これら機器固有情報及びサーバ位置情報以外のデータを含んでいてもよい。
次に、プリントサーバ２００は、作成したパスフレーズを用いて、公開鍵暗号法により、公開鍵と秘密鍵とを生成する（ステップＳ５３８）。公開鍵暗号法では、使用するパスフレーズが同じであれば、再び、公開鍵と秘密鍵とを生成しても、同じものが生成されるという性質を有している。続いて、プリントサーバ２００は、この生成した公開鍵と秘密鍵のうち、公開鍵のみを印刷クライアント２０に送信する（ステップＳ５４０）。なお、秘密鍵は保存されることなく破棄される。これにより、本実施形態に係る公開鍵送信処理が終了する。
なお、印刷クライアント２０、２２が印刷を行いたいときに、その印刷要求をプリントサーバ２００に送信する場合の印刷クライアント２０、２２の処理については、上述した第４実施形態と同様である。
次に、図２８及び図２９に基づいて、印刷クライアント２０、２２の印刷要求処理に対応して、プリントサーバ２００で実行される印刷スプーリング処理について説明する。図２８及び図２９は、プリントサーバ２００で実行される印刷スプーリング処理を説明するフローチャートである。この印刷スプーリング処理は、プリントサーバ２００のＲＯＭ２１４に格納されている印刷スプーリングプログラムをＣＰＵ４０が読み込んで実行することにより実現される処理である。ここでも上述と同様に、印刷クライアント２０からプリンタ３０に印刷が要求された場合を想定して説明する。
図２８に示すように、プリントサーバ２００は、印刷送信用データをネットワーク１０から受信したかどうかを判断する（ステップＳ５７０）。何ら印刷送信用データを受信していない場合（ステップＳ５７０：Ｎｏ）には、このステップＳ５７０の処理を繰り返して待機する。
一方、印刷送信用データを受信した場合（ステップＳ５７０：Ｙｅｓ）には、プリントサーバ２００は印刷を要求されたプリンタの機器固有情報を取得する（ステップＳ５７２）。プリンタの機器固有情報の取得の仕方は、上述したステップＳ５３２と同様である。
次に、プリントサーバ２００は、自らの機器固有情報を取得する（ステップＳ５７３）。続いて、プリントサーバ２００は、位置検出部２１４から、その時点におけるプリントサーバ２００のサーバ位置情報を取得する（ステップＳ５７４）。このようにサーバ位置情報を、その都度、位置検出部２１４から取得することとしているのは、プリントサーバ２００が別の場所に移動された場合には、このプリントサーバ２００がユーザの意図しない場所に設置されている可能性があり、このような場合にはプリントサーバ２００に接続されたプリンタで印刷が行われないようにするためである。
次に、図２９に示すように、プリントサーバ２００は、プリンタ３０の機器固有情報と、プリントサーバ２００の機器固有情報と、サーバ位置情報とに基づいて、パスフレーズを作成する（ステップＳ５７６）。このパスフレーズの作成手法は、上述した公開鍵送信処理におけるステップＳ５３６と同じ手法である必要がある。なぜなら、パスフレーズが異なると、印刷クライアントに送信した公開鍵で暗号化された印刷送信用データを、秘密鍵で復号できなくなってしまうからである。
次に、プリントサーバ２００は、パスフレーズを用いて、公開鍵暗号法により公開鍵と秘密鍵とを生成する（ステップＳ５７８）。続いて、プリントサーバ２００は、生成された秘密鍵を用いて、受信した印刷送信用データを復号して、印刷データを取得する（ステップＳ５８０）。
次に、プリントサーバ２００は、秘密鍵を用いて印刷送信用データの復号ができたかどうかを判断する（ステップＳ５８２）。復号ができた場合（ステップＳ５８２：Ｙｅｓ）には、スプーリング処理を行う（ステップＳ５８４）。具体的には、復号された印刷データをハードディスク２２２に一時格納し、プリンタ３０の空き状況に応じて、ハードディスク２２２から印刷データを読み出して、プリンタ３０に送信する。プリンタ３０では、送信された印刷データの言語解釈を行い、印刷エンジン５２に適合した印刷要求データを生成する。そして、この印刷要求データを印刷エンジン５２に送信することにより、印刷エンジン５２で印刷用紙等に印刷が行われる。
このことから分かるように、本実施形態においては、プリントサーバ２００の位置検出部２２４で検出したサーバ位置情報を少なくとも含むパスフレーズを用いて秘密鍵を生成し、この秘密鍵で印刷送信用データが復号できた場合には、印刷送信用データがサーバ位置情報と合致したと判断することとなる。
このスプーリング処理が正常に完了した時点で、プリントサーバ２００は、スプーリング処理が正常に終了した旨の印刷完了通知を、印刷結果情報として、印刷クライアント２０に送信する（ステップＳ５８６）。そして、上述したステップＳ５７０の処理に戻る。
これに対して、ステップＳ５８２において、印刷送信用データの復号ができなかったと判断した場合（ステップＳ５８２：Ｎｏ）には、解読不能通知を印刷結果情報として、印刷クライアント２０に送信する（ステップＳ５８８）。すなわち、本実施形態においては、プリントサーバ２００の位置検出部２２４で検出したサーバ位置情報を少なくとも含むパスフレーズを用いて秘密鍵を生成し、この秘密鍵で印刷送信用データが復号できなかった場合には、印刷送信用データがサーバ位置情報と合致しなかった判断することとなる。そして、上述したステップＳ５７０の処理に戻る。
以上のように、本実施形態に係る印刷システムによれば、印刷クライアント２０、２２は、暗号化して送信した印刷送信用データを復号できるプリントサーバを、サーバ位置情報に基づいて限定することができるので、印刷クライアント２０、２２のユーザが意図していない位置にあるプリントサーバで印刷送信用データの復号が行われしまうのを回避することができる。例えば、プリントサーバ２００が別の場所に移動されたが、ネットワーク１０内におけるプリントサーバ２００のネットワークアドレスは変更されていない場合に、印刷クライアント２０から誤って印刷送信用データをこのプリントサーバ２００に送信してしまっても、プリントサーバ２００ではサーバ位置情報が変更されているため、ステップＳ５７６で作成されるパスフレーズが移動前と異なったものになる。このため、このパスフレーズを用いて生成された秘密鍵を用いても、プリントサーバ２００では印刷送信用データの復号ができない。このため、印刷データのセキュリティを高めることができる。
一方、プリントサーバ２００側においても、本来であればこのプリントサーバ２００に接続されているプリンタで印刷する権限のない者が、印刷データをこのプリントサーバ２００に送信して、大量の印刷をプリンタに実行させてしまうのを回避することができる。例えば、何らかの理由で、プリントサーバ２００のネットワークアドレスを第三者が知得して、このプリントサーバ２００に印刷送信用データを送信しようとしても、このプリントサーバ２００の公開鍵を取得することができない。もし、このユーザが異なる公開鍵で印刷データを暗号化して印刷送信用データを生成したり、暗号化しないで印刷送信用データを生成したりして、プリントサーバ２００に印刷送信用データを送信したとしても、印刷スプーリング処理のステップＳ５８２で復号できないと判断されるので、このプリントサーバ２００に接続されているプリンタに印刷を実行させることができなくなる。このため、プリントサーバやプリンタのセキュリティを高めることができる。
また、本実施形態においては、パスフレーズにプリンタの機器固有情報とプリントサーバ２００の機器固有情報の双方を含めることとしたので、何らかの理由により第三者が、プリントサーバ２００の位置を知得したとしても、プリンタの機器固有情報とプリントサーバ２００の機器固有情報とが分からなければ、プリントサーバ２００で使用されているパスフレーズを特定することができない。このため、正当な権限なき第三者がプリントサーバ２００に接続されているプリンタで印刷を実行する可能性を、極めて低いものとすることができる。
〔第８実施形態〕
本発明の第８実施形態は、上述した第７実施形態を変形して、プリントサーバ２００は、このプリントサーバ２００に接続されているプリンタの機器固有情報を取得することなく、プリントサーバ２００の機器固有情報とサーバ位置情報とを用いてパスフレーズを生成するようにしたものである。
なお、本実施形態に係る印刷システムの全体構成、及び、プリントサーバ２００の内部構成は、上述した第７実施形態と同様である。
図３０は、印刷クライアント２０、２２で実行される公開鍵要求処理を説明するフローチャートであり、第７実施形態の図２４に対応する図である。この図３０に示すように、公開鍵取得要求を送信するステップＳ５０６の処理と、公開鍵を格納するステップＳ５１０の処理とが、上述した第７実施形態と異なる。
本実施形態においては、印刷クライアント２０、２２は、公開鍵取得要求をプリントサーバ２００へ送信する場合には、プリンタを特定する必要はない（ステップＳ５０６Ａ）。なぜなら、プリントサーバ２００が公開鍵、秘密鍵を生成する際に使用するパスフレーズには、プリンタの機器固有情報は含まれていないからである。
また、印刷クライアント２０、２２は、公開鍵をプリントサーバ２００から受信した場合には、この公開鍵を公開鍵テーブルＴＢ４０に格納する（ステップＳ５１０Ａ）。この公開鍵テーブルＴＢ４０の構成を、図３１に示す。
この図３１に示すように、本実施形態に係る公開鍵テーブルＴＢ４０は、プリントサーバを特定するための情報を格納する項目Ｄ４０と、取得した公開鍵をプリントサーバに対応させて格納する項目Ｄ４１とを備えている。すなわち、本実施形態では、プリントサーバ毎に公開鍵が異なるので、印刷クライアント２０、２２では、プリントサーバ毎に公開鍵を管理するのである。
図３２は、プリントサーバ２００で実行される公開鍵送信処理を説明するフローチャートである。本実施形態における公開鍵送信処理は、ステップＳ５３６以外は上述した第７実施形態と同様である。
図３２に示すように、本実施形態においては、プリントサーバ２００は、プリントサーバ２００の機器固有情報とサーバ位置情報とにより、パスフレーズを生成する（ステップＳ５３６Ａ）。すなわち、プリントサーバ２００の機器固有情報の後ろに、サーバ位置情報をつなげることにより、パスフレーズを生成する。これ以外の処理は、上述した第７実施形態と同様である。
なお、本実施形態においても、印刷クライアント２０、２２が印刷を行いたいときに、その印刷要求をプリントサーバ２００に送信する場合の印刷クライアント２０、２２の処理については、上述した第４実施形態と同様である。
図３３は、プリントサーバ２００で実行される印刷スプーリング処理を説明するフローチャートである。図３３に示すように、本実施形態においては、プリントサーバ２００は、プリントサーバ２００の機器固有情報とサーバ位置情報とにより、パスフレーズを生成する（ステップＳ５７６Ａ）。すなわち、ステップＳ５３６Ａと同様の手法により、パスフレーズを生成する。これ以外の処理は、上述した第７実施形態と同様である。
以上のように、本実施形態に係る印刷システムによれば、プリントサーバ毎に公開鍵を生成するようにしたので、印刷クライアント２０、２２側における公開鍵の管理が容易になる利点がある。
〔第９実施形態〕
第９実施形態は、上述した第７実施形態及び第８実施形態を変形して、プリントサーバ２００が、復号された印刷データをスプーリングすることなく、直接、プリンタに送信するようにしたものである。
図３４は、上述した第７実施形態の印刷スプーリング処理を変形した印刷実行処理を示す図であり、図２９に対応する図である。この図３４に示すように、本実施形態においては、印刷送信用データが復号できた場合（ステップＳ５８２：Ｙｅｓ）には、復号することにより得られた印刷データを、プリンタ３０に転送する（ステップＳ６００）。そして、この印刷データの転送が正常に完了した時点で、プリントサーバ２００は、印刷データの転送が正常に終了した旨を、印刷結果情報として、印刷クライアント２０に送信する（ステップＳ６０２）。そして、第７実施形態と同様に、ステップＳ５７０の処理に戻る。
図３５は、上述した第８実施形態の印刷スプーリング処理を変形した印刷実行処理を示す図であり、図３３に対応する図である。この図３５に示すように、本実施形態においては、印刷送信用データが復号できた場合（ステップＳ５８２：Ｙｅｓ）には、復号することにより得られた印刷データを、プリンタ３０に転送する（ステップＳ６１０）。そして、この印刷データの転送が正常に完了した時点で、プリントサーバ２００は、印刷データの転送が正常に終了した旨を、印刷結果情報として、印刷クライアント２０に送信する（ステップＳ６１２）。そして、第８実施形態と同様に、ステップＳ５７０の処理に戻る。
以上のように、スプーリング処理をしないタイプのプリントサーバ２００に対しても、上述した第７実施形態及び第８実施形態を適用することができる。
なお本発明は上記実施形態に限定されずに種々に変形可能である。例えば、上述した実施形態においては、セキュリティを確保すべきデータを送信するデータ送信装置として印刷クライアントを例示し、そのデータを受信するデータ受信装置としてプリンタを例示して、本発明を説明したが、データ送受信システムにおけるデータ送信装置とデータ受信装置の組み合わせは、上記実施形態に限定されるものではない。例えば、データ送受信システムにおけるデータ送信装置が画像撮影用のデジタルカメラであり、データ受信装置がデジタルカメラで撮影した画像データを蓄積するデータサーバであってもよい。この場合、デジタルカメラから送信された送信用データが、データサーバで受信され、データサーバでは、この送信用データがデータサーバにおけるその時点の装置位置情報と合致した場合には、その送信用データに含まれているデータを蓄積し、合致しない場合には、その送信用データに含まれているデータを蓄積しないこととなる。
また、データ送受信システムにおけるデータ送信装置がパーソナルコンピュータであり、データ受信装置がそのパーソナルコンピュータから送信された画像データを投影するプロジェクタであってもよい。この場合、パーソナルコンピュータから送信された送信用データが、プロジェクタで受信され、プロジェクタでは、この送信用データがプロジェクタにおけるその時点の装置位置情報と合致した場合には、その送信用データに含まれているデータを投影し、合致しない場合には、その送信用データに含まれているデータを投影しないこととなる。
さらには、データ送受信システムにおけるデータ送信装置が音楽等のコンテンツサーバであり、データ受信装置がコンテンツサーバから送信された音楽等のコンテンツデータの再生装置であってもよい。この場合、コンテンツサーバから送信された送信用データが、再生装置で受信され、再生装置では、この送信用データが再生装置におけるその時点の装置位置情報と合致した場合には、その送信用データに含まれているデータを再生し、合致しない場合には、その送信用データに含まれているデータを再生しないこととなる。
このことは、上述した第７実施形態及び第８実施形態でも同様であり、印刷送信用データ以外のデータをスプーリングするサーバに、本発明を適用するようにしてもよい。
また、上述した第２実施形態及び第５実施形態においては、プリンタ３０、３２は２つの位置検出部１００、１０２を備えていることとしたが、位置検出部の数は２つに限られるものではなく、複数であればよい。この場合、プリンタがプリンタ位置情報を取得する際には、これら複数の位置検出部のうち、その時点で位置検出が可能になっている位置検出部の１つから、プリンタ位置情報を取得するようにすればよい。
また、上述した実施形態では、プリンタ３０、３２の印刷媒体が印刷用紙である場合を例に説明したが、印刷媒体はこれに限るものではなく、例えば、ＯＨＰシート等の他の印刷媒体であっても本発明を適用することができる。
また、上述した実施形態では、パスフレーズに、プリンタ位置情報又はサーバ位置情報に加えて、プリンタの機器固有情報及び／又はプリントサーバの機器固有情報を用いることとしたが、プリンタの機器固有情報及びプリントサーバの機器固有情報を用いないようにしてもよい。この場合、例えば、パスフレーズをプリンタ位置情報又はサーバ位置情報のみから構成すればよい。
また、図３６及び図３７に示すように、上述した第７乃至第９実施形態においても、第６実施形態と同様に、位置検出部２２４を外付けにしてもよい。この場合、図３６の例においては、位置検出部２２４はインターフェース２２５を介して、着脱可能になる。また、図３７の例においては、位置検出部２２４は受信部５６Ｂを介して、プリントサーバ２００と通信可能になる。
また、上述した実施形態においては、印刷依頼を制限する例として、印刷を受け付けない場合を説明したが、印刷依頼の制限はこの態様に限定されるものではない。例えば、第１乃至第３実施形態において、プリンタ位置情報が合致した場合には、印刷依頼の場合は印刷枚数に制限がないが、プリンタ位置情報が合致しなかった場合は印刷枚数を例えば１０枚に制限するようにしてもよい。或いは、プリンタ位置情報が合致した場合はカラー印刷でもモノクロ印刷でも可能であるが、プリンタ位置情報が合致しなかった場合はモノクロ印刷に限定するようにしてもよい。また、プリンタ位置情報が合致しなかった場合は、予めプリンタに登録されているＩＰアドレスから送信された印刷データしか、印刷依頼を受け付けないようにしてもよい。
また、上述した第４乃至第９実施形態においては、受信した印刷送信用データが秘密鍵を用いて復号できた場合にのみ印刷を実行することとしたが、印刷送信用データの復号ができたかどうかに拘わらず、復号により得られたデータに基づいて印刷を実行してしまうようにしてもよい。このようにした場合、秘密鍵を用いて印刷送信用データの復号が適正にできなかった場合には、意味不明な印刷をプリンタは行うこととなり、ユーザにとっては意味のある印刷結果が得られないこととなる。
さらに、上述の実施形態で説明した各処理については、これら各処理を実行するためのプログラムをフレキシブルディスク、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ−Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＲＯＭ、メモリカード等の記録媒体に記録して、記録媒体の形で頒布することが可能である。この場合、このプログラムが記録された記録媒体を印刷クライアント２０、２２及び／又はプリンタ３０、３２に読み込ませ、実行させることにより、上述した実施形態を実現することができる。
また、印刷クライアント２０、２２及び／又はプリンタ３０、３２は、オペレーティングシステムや別のアプリケーションプログラム等の他のプログラムを備える場合がある。この場合、印刷クライアント２０、２２及び／又はプリンタ３０、３２の備える他のプログラムを活用し、記録媒体には印刷クライアント２０、２２及び／又はプリンタ３０、３２が備えるプログラムの中から、上述した実施形態と同等の処理を実現するプログラムを呼び出すような命令を記録するようにしてもよい。
さらに、このようなプログラムは、記録媒体の形ではなく、ネットワークを通じて搬送波として頒布することも可能である。ネットワーク上を搬送波の形で伝送されたプログラムは、印刷クライアント２０、２２及び／又はプリンタ３０、３２に取り込まれて、このプログラムを実行することにより上述した実施形態を実現することができる。
また、記録媒体にプログラムを記録する際や、ネットワーク上を搬送波として伝送される際に、プログラムの暗号化や圧縮化がなされている場合がある。この場合には、これら記録媒体や搬送波からプログラムを読み込んだ印刷クライアント２０、２２及び／又はプリンタ３０、３２は、そのプログラムの復号化や伸張化を行った上で、実行する必要がある。
【図面の簡単な説明】
図１は、本発明の各実施形態に係る印刷システムの構成の一例を示す図、
図２は、本発明の第１実施形態、第３実施形態、及び、第４実施形態に係るプリンタのハードウェア構成の一例を示す図、
図３は、本発明の各実施形態に係る印刷クライアントの構成の一例を示す図、
図４は、第１実施形態乃至第３実施形態において、印刷クライアントからプリンタに送信される印刷送信用データのフォーマットの一例を示す図、
図５は、第１実施形態乃至第３実施形態に係る印刷クライアントが実行する位置情報要求処理を説明するフローチャートを示す図、
図６は、第１実施形態乃至第３実施形態に係る印刷クライアントが備えるプリンタ位置情報テーブルの構成の一例を示す図、
図７は、第１実施形態及び第３実施形態に係るプリンタが実行する位置情報送信処理を説明するフローチャートを示す図、
図８は、第１実施形態乃至第３実施形態に係る印刷クライアントが実行する印刷要求処理を説明するフローチャートを示す図、
図９は、第１実施形態に係るプリンタが実行する印刷実行処理を説明するフローチャートを示す図、
図１０は、本発明に係る第２実施形態及び第５実施形態のプリンタのハードウェア構成の一例を示す図、
図１１は、第２実施形態及び第３実施形態に係るプリンタが実行する位置情報送信処理を説明するフローチャートを示す図、
図１２は、第２実施形態に係るプリンタが実行する印刷実行処理を説明するフローチャートを示す図、
図１３は、本発明の第３実施形態に係るプリンタが実行する印刷実行処理を説明するフローチャートを示す図、
図１４Ａは、本発明の第４乃至第９実施形態における印刷データの暗号化及び復号の概念を説明する図、
図１４Ｂは、本発明の第４実施形態及び第５実施形態に係る印刷クライアントが実行する公開鍵要求処理を説明するフローチャートを示す図、
図１５は、第４実施形態及び第５実施形態に係る印刷クライアントが備える公開鍵テーブルの構成の一例を示す図、
図１６は、第４実施形態に係るプリンタが実行する公開鍵送信処理を説明するフローチャートを示す図、
図１７は、本発明の第４実施形態及び第５実施形態に係る印刷クライアントが実行する印刷要求処理を説明するフローチャートを示す図、
図１８は、第４実施形態に係るプリンタが実行する印刷実行処理を説明するフローチャートを示す図、
図１９は、第５実施形態に係るプリンタが実行する公開鍵送信処理を説明するフローチャートを示す図、
図２０は、第５実施形態に係るプリンタが実行する印刷実行処理を説明するフローチャートを示す図、
図２１Ａは、位置検出部を有線ケーブルを介して外付けにしたプリントサーバの構成の一例を示す図（第６実施形態）、
図２１Ｂは、位置検出部を無線を介して外付けにしたプリントサーバの構成の一例を示す図（第６実施形態）、
図２２は、第７実施形態に係る印刷システムの構成の一例を示す図、
図２３は、第７実施形態に係るプリントサーバの構成の一例を示す図、
図２４は、第７実施形態に係る印刷クライアントが実行する公開鍵要求処理を説明するフローチャートを示す図、
図２５は、第７実施形態に係る印刷クライアントが備える公開鍵テーブルの構成の一例を示す図、
図２６は、第７実施形態に係るプリントサーバが実行する公開鍵送信処理を説明するフローチャートを示す図（その１）、
図２７は、第７実施形態に係るプリントサーバが実行する公開鍵送信処理を説明するフローチャートを示す図（その２）、
図２８は、第７実施形態に係るプリントサーバが実行する印刷スプーリング処理を説明するフローチャートを示す図（その１）、
図２９は、第７実施形態に係るプリントサーバが実行する印刷スプーリング処理を説明するフローチャートを示す図（その２）、
図３０は、第８実施形態に係る印刷クライアントが実行する公開鍵要求処理を説明するフローチャートを示す図、
図３１は、第８実施形態に係る印刷クライアントが備える公開鍵テーブルの構成の一例を示す図、
図３２は、第８実施形態に係るプリントサーバが実行する公開鍵送信処理を説明するフローチャートを示す図、
図３３は、第８実施形態に係るプリントサーバが実行する印刷スプーリング処理を説明するフローチャートを示す図、
図３４は、第９実施形態に係るプリントサーバが実行する印刷実行処理を説明するフローチャートを示す図（第７実施形態の変形）、
図３５は、第９実施形態に係るプリントサーバが実行する印刷実行処理を説明するフローチャートを示す図（第８実施形態の変形）、
図３６は、位置検出部を有線ケーブルを介して外付けにしたプリントサーバの構成の一例を示す図、
図３７は、位置検出部を無線を介して外付けにしたプリントサーバの構成の一例を示す図である。
【図１】
2003107171.tif 000003
【図２】
2003107171.tif 000004
【図３】
2003107171.tif 000005
【図４】
2003107171.tif 000006
【図５】
2003107171.tif 000007
【図６】
2003107171.tif 000008
【図７】
2003107171.tif 000009
【図８】
2003107171.tif 000010
【図９】
2003107171.tif 000011
【図１０】
2003107171.tif 000012
【図１１】
2003107171.tif 000013
【図１２】
2003107171.tif 000014
【図１３】
2003107171.tif 000015
2003107171.tif 000016
2003107171.tif 000017
【図１５】
2003107171.tif 000018
【図１６】
2003107171.tif 000019
【図１７】
2003107171.tif 000020
【図１８】
2003107171.tif 000021
【図１９】
2003107171.tif 000022
【図２０】
2003107171.tif 000023
2003107171.tif 000024
2003107171.tif 000025
【図２２】
2003107171.tif 000026
【図２３】
2003107171.tif 000027
【図２４】
2003107171.tif 000028
【図２５】
2003107171.tif 000029
【図２６】
2003107171.tif 000030
【図２７】
2003107171.tif 000031
【図２８】
2003107171.tif 000032
【図２９】
2003107171.tif 000033
【図３０】
2003107171.tif 000034
【図３１】
2003107171.tif 000035
【図３２】
2003107171.tif 000036
【図３３】
2003107171.tif 000037
【図３４】
2003107171.tif 000038
【図３５】
2003107171.tif 000039
【図３６】
2003107171.tif 000040
【図３７】
2003107171.tif 000041
【国際調査報告】
2003107171.tif 000042
2003107171.tif 000043
2003107171.tif 000044
2003107171.tif 000045